@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.3.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
========================================================================== */
@import url("https://fonts.googleapis.com/css?family=Raleway:700,900&display=swap");
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700,900&display=swap&subset=japanese");
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.2.0/dist/css/yakuhanjp.min.css");
html {
  font-family: sans-serif;
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

/* Sections
========================================================================== */
body {
  margin: 0; }

article, aside, footer, header, nav, section {
  display: block; }

/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
========================================================================== */
figcaption, figure {
  display: block; }

figure {
  margin: 1em 40px; }

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible; }

main {
  display: block; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Links
========================================================================== */
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

a:active, a:hover {
  outline-width: 0; }

/* Text-level semantics
========================================================================== */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

b, strong {
  font-weight: inherit; }

b, strong {
  font-weight: bolder; }

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em; }

dfn {
  font-style: italic; }

mark {
  background-color: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

ul, li, ol, dt, dd {
  list-style: none; }

/* Embedded content
========================================================================== */
audio, video {
  display: inline-block; }

audio:not([controls]) {
  display: none;
  height: 0; }

img {
  border-style: none; }

svg:not(:root) {
  overflow: hidden; }

/* Forms
========================================================================== */
button, input, optgroup, select, textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button {
  overflow: visible; }

button, select {
  text-transform: none; }

button, html [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

input {
  overflow: visible; }

[type="checkbox"], [type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: table;
  max-width: 100%;
  padding: 0;
  color: inherit;
  white-space: normal; }

progress {
  display: inline-block;
  vertical-align: baseline; }

textarea {
  overflow: auto; }

/* Interactive
========================================================================== */
details {
  display: block; }

summary {
  display: list-item; }

menu {
  display: block; }

/* Scripting
========================================================================== */
canvas {
  display: inline-block; }

template {
  display: none; }

/* Hidden
========================================================================== */
[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 100%; }

*, *::before, *::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

.map_canvas img, .map_canvas embed, .map_canvas object, .mqa-display img, .mqa-display embed, .mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1; }

[data-whatinput='mouse'] button {
  outline: 0; }

pre {
  overflow: auto; }

/* 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; }

.fr {
  float: right; }

.imgR {
  float: right;
  margin-left: 20px; }

.fl {
  float: left; }

.imgL {
  float: left;
  margin-right: 20px; }

.imgC, .tC {
  text-align: center; }

.imgC {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.tR {
  text-align: right; }

.mt0 {
  margin-top: 0px !important; }

.mb0 {
  margin-bottom: 0px !important; }

.pt0 {
  padding-top: 0px !important; }

.pb0 {
  padding-bottom: 0px !important; }

.mt5 {
  margin-top: 5px !important; }

.mb5 {
  margin-bottom: 5px !important; }

.pt5 {
  padding-top: 5px !important; }

.pb5 {
  padding-bottom: 5px !important; }

.mt10 {
  margin-top: 10px !important; }

.mb10 {
  margin-bottom: 10px !important; }

.pt10 {
  padding-top: 10px !important; }

.pb10 {
  padding-bottom: 10px !important; }

.mt15 {
  margin-top: 15px !important; }

.mb15 {
  margin-bottom: 15px !important; }

.pt15 {
  padding-top: 15px !important; }

.pb15 {
  padding-bottom: 15px !important; }

.mt20 {
  margin-top: 20px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.pt20 {
  padding-top: 20px !important; }

.pb20 {
  padding-bottom: 20px !important; }

.mt25 {
  margin-top: 25px !important; }

.mb25 {
  margin-bottom: 25px !important; }

.pt25 {
  padding-top: 25px !important; }

.pb25 {
  padding-bottom: 25px !important; }

.mt30 {
  margin-top: 30px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.pt30 {
  padding-top: 30px !important; }

.pb30 {
  padding-bottom: 30px !important; }

.mt35 {
  margin-top: 35px !important; }

.mb35 {
  margin-bottom: 35px !important; }

.pt35 {
  padding-top: 35px !important; }

.pb35 {
  padding-bottom: 35px !important; }

.mt40 {
  margin-top: 40px !important; }

.mb40 {
  margin-bottom: 40px !important; }

.pt40 {
  padding-top: 40px !important; }

.pb40 {
  padding-bottom: 40px !important; }

.mt45 {
  margin-top: 45px !important; }

.mb45 {
  margin-bottom: 45px !important; }

.pt45 {
  padding-top: 45px !important; }

.pb45 {
  padding-bottom: 45px !important; }

.mt50 {
  margin-top: 50px !important; }

.mb50 {
  margin-bottom: 50px !important; }

.pt50 {
  padding-top: 50px !important; }

.pb50 {
  padding-bottom: 50px !important; }

.mr0 {
  margin-right: 0 !important; }

.pr0 {
  padding-right: 0 !important; }

.mt1em {
  margin-top: 1em; }

/* clearfix */
.clear-fix {
  zoom: 1; }
  .clear-fix:before, .clear-fix:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden; }
  .clear-fix:after {
    clear: both; }

.clear {
  clear: both; }

/* MW WP FORM */
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, th, td, address, li, dt, dd {
  font-weight: 400;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 1px; }

.contents h1, .contents h2, .contents h3, .contents h4, .contents h5, .contents h6, .contents input, .contents button, .contents textarea, .contents select, .contents p, .contents th, .contents td, .contents address, .contents li, .contents dt, .contents dd {
  line-height: 1.6; }
  @media screen and (min-width: 960px) {
    .contents h1, .contents h2, .contents h3, .contents h4, .contents h5, .contents h6, .contents input, .contents button, .contents textarea, .contents select, .contents p, .contents th, .contents td, .contents address, .contents li, .contents dt, .contents dd {
      font-size: 16px; } }
  @media screen and (max-width: 959px) {
    .contents h1, .contents h2, .contents h3, .contents h4, .contents h5, .contents h6, .contents input, .contents button, .contents textarea, .contents select, .contents p, .contents th, .contents td, .contents address, .contents li, .contents dt, .contents dd {
      font-size: 14px; } }

/* =========================================================
	element style
========================================================= */
html, body {
  height: 100%; }

body {
  color: #000000;
  font-family: YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

input, textarea, button {
  font-family: YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  -webkit-appearance: none; }

a {
  color: #000; }

@media screen and (min-width: 1024px) {
  a:hover {
    text-decoration: none; }
  a.hov {
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s; }
    a.hov:hover {
      opacity: 0.6; } }
img {
  max-width: 100%;
  height: auto; }

.img.bkw {
  background: white;
  border-radius: 3px;
  border: 1px solid #dfdfdf; }
  .img.bkw.inhalf {
    padding: 20%; }

.u-text--attention {
  font-size: 0.8em;
  color: red; }

/* =========================================================
	general
========================================================= */
@media screen and (min-width: 960px) {
  .cnt-pc {
    display: block; } }
@media screen and (max-width: 959px) {
  .cnt-pc {
    display: none; } }

@media screen and (min-width: 960px) {
  .cnt-sp {
    display: none; } }
@media screen and (max-width: 959px) {
  .cnt-sp {
    display: block; } }

@media screen and (min-width: 1200px) {
  .cnt-pc2 {
    display: block; } }
@media screen and (max-width: 1199px) {
  .cnt-pc2 {
    display: none; } }

@media screen and (min-width: 1200px) {
  .cnt-sp2 {
    display: none; } }
@media screen and (max-width: 1199px) {
  .cnt-sp2 {
    display: block; } }

@media screen and (min-width: 960px) {
  .cnt-pc3 {
    display: inline; } }
@media screen and (max-width: 959px) {
  .cnt-pc3 {
    display: none; } }

body#home-page .section-title {
  margin-bottom: 60px; }
  body#home-page .section-title h3 {
    float: left;
    margin-right: 30px;
    font: 900 80px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    letter-spacing: .1em; }
  @media screen and (max-width: 1199px) {
    body#home-page .section-title {
      margin-bottom: 30px; }
      body#home-page .section-title h3 {
        font-size: 40px;
        letter-spacing: 0; } }
body#home-page .section-head {
  padding-top: 5px; }
  body#home-page .section-head p {
    font: bold 20px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
  body#home-page .section-head div img {
    margin-top: 15px; }
  body#home-page .section-head p.large {
    font: bold 22px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    letter-spacing: 0em; }
    body#home-page .section-head p.large + p {
      margin-top: 50px; }
    @media screen and (max-width: 1600px) {
      body#home-page .section-head p.large {
        font: bold 20px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; } }
    @media screen and (max-width: 1199px) {
      body#home-page .section-head p.large {
        font-size: 16px;
        letter-spacing: 0; } }
  @media screen and (max-width: 1199px) {
    body#home-page .section-head p {
      font-size: 14px;
      line-height: 1.4; } }
body#home-page .section-main p {
  font: normal 16px/2 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  letter-spacing: .03em; }
  body#home-page .section-main p + p {
    margin-top: 20px; }
  body#home-page .section-main p.large {
    font: bold 22px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    letter-spacing: 0; }
    body#home-page .section-main p.large + p {
      margin-top: 50px; }
    @media screen and (max-width: 1600px) {
      body#home-page .section-main p.large {
        font: bold 20px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; } }
@media screen and (max-width: 1199px) {
  body#home-page .section-main p {
    font-size: 14px; }
    body#home-page .section-main p + p {
      margin-top: 10px; }
    body#home-page .section-main p.large {
      font-size: 16px;
      line-height: 1.8; }
      body#home-page .section-main p.large + p {
        margin-top: 20px; } }
body#home-page .section-text {
  width: 580px; }
  @media screen and (max-width: 1199px) {
    body#home-page .section-text {
      width: 100%; } }

.inner-1400 {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto; }
  @media screen and (max-width: 1130px) {
    .inner-1400 {
      padding: 0 15px; } }
  @media screen and (max-width: 1800px) {
    .inner-1400 {
      max-width: 74vw; } }
  @media screen and (max-width: 1600px) {
    .inner-1400 {
      max-width: 1100px; } }

.inner-1200 {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto; }
  @media screen and (max-width: 1230px) {
    .inner-1200 {
      padding: 0 15px; } }
  .inner-1200 .saitalk_link {
    margin-top: 30px; }

.inner-1000 {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto; }
  @media screen and (max-width: 1030px) {
    .inner-1000 {
      padding: 0 15px; } }

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media screen and (max-width: 959px) {
    .flex {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  .flex.middle {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .flex h3 {
    font-family: YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 18px;
    margin-bottom: 30px; }
    .flex h3 span.small {
      font-size: 18px;
      margin-left: 10px; }
      @media screen and (max-width: 959px) {
        .flex h3 span.small {
          margin-left: 0;
          display: block; } }
  .flex-box {
    width: calc(50% - 30px); }
  .flex-item {
    margin-top: 60px;
    width: calc(50% - 30px); }
    .flex-item.w3 {
      width: 300px; }
    .flex-item.w7 {
      width: calc(100% - 60px - 300px); }
    .flex-item span.bold {
      font-weight: bold; }
    @media screen and (max-width: 959px) {
      .flex-item {
        width: 100%;
        margin-top: 50px; }
        .flex-item + .flex-item {
          margin-top: 30px !important; }
        .flex-item.w7, .flex-item.w3 {
          width: 100%; }
        .flex-item h3 {
          font-weight: bold !important; }
        .flex-item .img {
          text-align: center; } }

.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden; }
  .map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

ul.list li {
  position: relative;
  padding-left: 1.5em; }
  @media screen and (max-width: 959px) {
    ul.list li {
      padding-left: 1em; } }
  ul.list li:last-child {
    margin-bottom: 0; }
  ul.list li:before {
    position: absolute;
    display: block;
    content: '';
    top: 16px;
    left: 0;
    width: 18px;
    height: 18px;
    background: #F4D823;
    border: 3px solid black;
    border-radius: 100%; }
    @media screen and (max-width: 959px) {
      ul.list li:before {
        width: 12px;
        height: 12px;
        top: 8px; } }
ul.list.col2 {
  zoom: 1; }
  ul.list.col2:before, ul.list.col2:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden; }
  ul.list.col2:after {
    clear: both; }
  ul.list.col2 li {
    float: left;
    width: 50%; }
  @media screen and (max-width: 959px) {
    ul.list.col2 li {
      float: none;
      width: 100%; }
      ul.list.col2 li + li {
        margin-top: 8px; }
      ul.list.col2 li p {
        line-height: 1.6 !important; } }
ul.list.small li:before {
  width: 14px;
  height: 14px;
  top: 10px; }
  @media screen and (max-width: 959px) {
    ul.list.small li:before {
      width: 12px;
      height: 12px;
      top: 9px; } }
ul.list.small + p {
  margin-top: 30px; }
@media screen and (max-width: 959px) {
  ul.list.small + p {
    margin-top: 20px; } }

ul.list-business {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%; }
  ul.list-business .business {
    width: calc((100% - 20px)/3);
    margin-right: 10px;
    margin-bottom: 10px; }
    ul.list-business .business:nth-last-child(3n) {
      margin-right: 0; }
    ul.list-business .business a {
      position: relative;
      width: 100%;
      height: 100%;
      text-decoration: none; }
      ul.list-business .business a h3 {
        position: absolute;
        bottom: 30px;
        left: 0;
        display: inline-block;
        background-color: black;
        color: white;
        font: 900 35px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        padding: 0 10px 2px 40px; }
        @media screen and (max-width: 1800px) {
          ul.list-business .business a h3 {
            font-size: 32px; } }
        @media screen and (max-width: 1600px) {
          ul.list-business .business a h3 {
            font-size: 28px; } }
      ul.list-business .business a:hover img {
        border: 5px solid transparent; }
  @media screen and (max-width: 1199px) {
    ul.list-business .business {
      width: 50%;
      margin: 0; }
      ul.list-business .business img {
        vertical-align: bottom; }
      ul.list-business .business a h3 {
        bottom: 15px;
        font-size: 4vw;
        padding: 0 5px 2px 5px; } }

ul.list-column .column {
  border-top: 1px solid #ededed; }
  ul.list-column .column:last-of-type {
    border-bottom: 1px solid #ededed; }
  ul.list-column .column a {
    display: block;
    margin: 20px 0;
    text-decoration: none; }
    @media screen and (min-width: 960px) {
      ul.list-column .column a:hover .info-title {
        text-decoration: underline; } }
  ul.list-column .column-date {
    font-size: 12px !important;
    letter-spacing: .05em;
    padding: 5px 20px;
    line-height: 1;
    background: black;
    color: white; }
  ul.list-column .column-title {
    padding-left: 20px; }
    @media screen and (max-width: 959px) {
      ul.list-column .column-title {
        display: block;
        margin-top: 20px;
        font-size: 14px; } }

ul.list-media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  ul.list-media .media {
    width: calc((100% - 90px)/4);
    margin-left: 30px; }
    ul.list-media .media:nth-last-of-type(4n) {
      margin-left: 0; }
    ul.list-media .media a {
      text-decoration: none; }
      ul.list-media .media a:hover .media-title {
        text-decoration: underline; }
        ul.list-media .media a:hover .media-title span {
          text-decoration: none; }
    ul.list-media .media-img {
      position: relative;
      border: 2px solid black; }
      ul.list-media .media-img img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        z-index: -1; }
      ul.list-media .media-img:before {
        content: "";
        display: block;
        padding-bottom: 80%; }
    ul.list-media .media-title {
      margin-top: 20px;
      font: bold 35px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
      ul.list-media .media-title span {
        margin-top: 15px;
        display: block;
        margin-right: 20px;
        letter-spacing: 0;
        text-decoration: none !important;
        font: normal 14px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
  @media screen and (max-width: 1199px) {
    ul.list-media .media {
      width: calc((100% - 5px)/2);
      margin: 0 5px 20px 0; }
      ul.list-media .media:nth-of-type(2n) {
        margin: 0 0 20px 0; }
      ul.list-media .media-title {
        margin-top: 5px;
        font-size: 18px;
        line-height: 1.6; }
        ul.list-media .media-title span {
          margin: 0;
          line-height: 1.6; } }

ul.list-works {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  ul.list-works .work {
    width: calc((100% - 60px)/3);
    margin-right: 30px;
    margin-bottom: 60px;
    position: relative; }
    ul.list-works .work a {
      text-decoration: none; }
    @media screen and (min-width: 1200px) {
      ul.list-works .work:nth-of-type(3n) {
        margin-right: 0; } }
    @media screen and (max-width: 1199px) {
      ul.list-works .work {
        width: calc((100% - 30px)/2); }
        ul.list-works .work:nth-of-type(2n) {
          margin-right: 0; } }
    @media screen and (max-width: 767px) {
      ul.list-works .work {
        width: 100%;
        margin-right: 0; } }
    ul.list-works .work-img {
      text-align: center;
      margin-bottom: 10px;
      width: 100%;
      background: #f5f5f5;
      -webkit-transition: -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
      transition: -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
      transition: transform .3s ease, box-shadow .3s ease;
      transition: transform .3s ease, box-shadow .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease; }
      ul.list-works .work-img__inner {
        position: relative;
        overflow: hidden;
        width: 100%;
        padding-bottom: 57.5%; }
      ul.list-works .work-img img {
        position: absolute;
        top: 50%;
        left: 50%;
        width: auto;
        height: 100%;
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
    ul.list-works .work-title {
      margin-bottom: 10px;
      font-weight: bold !important; }
    ul.list-works .work-type {
      font-size: 14px;
      display: block;
      margin-top: 20px; }
    ul.list-works .work-category {
      padding: 6px 10px 7px;
      display: inline-block;
      color: black;
      background: white;
      margin-bottom: 5px;
      margin-right: 5px;
      font-size: 14px;
      font-weight: bold;
      border: 2px solid black; }
    ul.list-works .work a:hover .work-img {
      -webkit-transform: scale(1.03);
              transform: scale(1.03);
      -webkit-box-shadow: 0 2px 9px rgba(0, 0, 0, 0.3);
              box-shadow: 0 2px 9px rgba(0, 0, 0, 0.3); }

.muneutsu-alist {
  padding: 30px 0 50px;
  top: 0;
  left: 0;
  z-index: 2; }
  @media screen and (max-width: 767px) {
    .muneutsu-alist {
      top: 90px; } }

.muneutsu-list__item {
  cursor: pointer;
  -webkit-transition: all .15s ease;
  transition: all .15s ease; }
  .muneutsu-list__item.active {
    color: white !important;
    background: black !important; }
  .muneutsu-list__item:hover {
    opacity: .8; }

.list-muneutsu .muneutsu.hidden {
  display: none; }
.list-muneutsu .muneutsu__img {
  width: 100%;
  aspect-ratio: 16 / 9; }
  .list-muneutsu .muneutsu__img iframe {
    width: 100%;
    height: 100%; }

ul.list-post .post {
  margin-bottom: 30px; }
  ul.list-post .post a {
    display: block;
    background: white;
    padding: 20px;
    text-decoration: none;
    border-bottom: 3px solid black; }
  ul.list-post .post-category {
    display: inline-block;
    padding: 7px 20px 9px;
    margin: 0 15px;
    background: #ddd;
    color: black;
    font-size: 14px;
    width: 200px;
    text-align: center;
    font-weight: bold; }
@media screen and (max-width: 959px) {
  ul.list-post .post-category {
    font-size: 12px;
    width: 180px;
    vertical-align: 2px; }
  ul.list-post .post-title {
    display: block;
    margin-top: 15px;
    line-height: 1.6;
    padding-top: 10px;
    border-top: 1px solid #ddd; } }

/*
.section {
	margin-top: 100px;
	&-title {
		font-size: 22px;
		font-family: $ja;
	}
	&-main {
		margin-top: 60px;
		p {
			font-size: 16px;
			letter-spacing: .08em;
			font-family: $ja;
			line-height: 35px;
		}
		p + p {
			margin-top: 30px;
		}
		p + ul, ul + p {
			margin-top: 60px;
		}
	}
}*/
table {
  width: 100%;
  margin: auto;
  border-collapse: collapse;
  border: none;
  border: 3px solid black;
  border-width: 3px 0 0 3px; }
  table tr {
    border: 3px solid black;
    border-width: 0 3px 3px 0; }
  table th, table td {
    border: none;
    vertical-align: top;
    font-size: 16px;
    font-family: YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    line-height: 35px;
    font-weight: 400;
    text-align: left; }
    @media screen and (min-width: 960px) {
      table th, table td {
        padding: 25px; } }
    @media screen and (max-width: 959px) {
      table th, table td {
        padding: 15px; } }
    @media screen and (max-width: 767px) {
      table th, table td {
        display: block;
        padding: 10px; } }
  table th {
    font-size: 20px;
    background: white; }
    @media screen and (min-width: 768px) {
      table th {
        border-right: 3px solid black;
        width: 200px;
        font-weight: bold; } }
    @media screen and (max-width: 767px) {
      table th {
        font-weight: bold; } }

.btn {
  width: 100%;
  text-align: center; }
  .btn a {
    position: relative;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-line-pack: center;
        align-content: center;
    width: 100%;
    max-width: 450px;
    height: 90px;
    border: 3px solid black;
    background: white;
    font-size: 24px;
    font-weight: 900;
    text-decoration: none;
    padding-top: 29px; }
    .btn a:before {
      content: "";
      position: absolute;
      display: block;
      background-image: url(/common/images/arrow.svg);
      width: 15px;
      height: 23px;
      background-size: cover;
      top: 31px;
      right: 25px; }
    .btn a:hover {
      background: #F4D823; }
      .btn a:hover:before {
        right: 20px; }
    @media screen and (max-width: 767px) {
      .btn a {
        width: 350px;
        height: 70px;
        padding-top: 22px;
        font-size: 18px; }
        .btn a:before {
          width: 11px;
          height: 16px;
          top: 23px;
          right: 25px; } }
  .btn.orange a {
    background: #ED711A; }
  .btn.large a {
    width: 100%;
    max-width: 600px;
    height: 100px;
    font-size: 28px;
    padding-top: 33px; }
    .btn.large a:before {
      top: 32px;
      width: 20px;
      height: 31px; }
    @media screen and (max-width: 767px) {
      .btn.large a {
        width: 350px;
        height: 70px;
        padding-top: 22px;
        font-size: 18px; }
        .btn.large a:before {
          width: 11px;
          height: 16px;
          top: 23px;
          right: 15px; } }

#media {
  position: relative;
  padding: 200px 0;
  background: white;
  z-index: 1; }
  #media:after {
    content: url(/images/index/title04.svg);
    position: absolute;
    top: 200px;
    left: 30px;
    display: block;
    width: 126px; }
    @media screen and (max-width: 1400px) {
      #media:after {
        left: 1px;
        width: calc((100vw - 1120px)/2); } }
    @media screen and (max-width: 1300px) {
      #media:after {
        display: none; } }
  @media screen and (max-width: 1199px) {
    #media {
      padding: 100px 0 85px; } }

article.cnt-recruit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  background: black;
  position: relative;
  z-index: 1;
  padding: 80px 0; }
  article.cnt-recruit:before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background-image: url(/common/images/recruit-bk01.svg);
    background-position: center; }
  article.cnt-recruit .recruit-copy {
    color: white;
    font-size: 50px;
    font-weight: bold;
    -webkit-text-emphasis: center;
            text-emphasis: center;
    margin-bottom: 40px;
    line-height: 1.6;
    text-align: center; }
  @media screen and (max-width: 767px) {
    article.cnt-recruit {
      height: auto;
      padding: 60px 15px; }
      article.cnt-recruit .recruit-copy {
        font-size: 30px;
        line-height: 1.6;
        margin-bottom: 20px; } }
  article.cnt-recruit.second:before {
    display: none; }
  @media screen and (max-width: 767px) {
    article.cnt-recruit.second {
      padding: 100px 15px; } }
  article.cnt-recruit .post-detail {
    background: white;
    border: 3px solid black;
    padding: 60px 0; }
    article.cnt-recruit .post-detail p + p {
      margin-top: 15px !important; }
    article.cnt-recruit .post-detail strong {
      color: #e3378d;
      font-weight: bolder; }
    article.cnt-recruit .post-detail h3 {
      border-bottom: 3px solid #ddd;
      padding-bottom: 5px; }
    @media screen and (max-width: 767px) {
      article.cnt-recruit .post-detail {
        padding: 60px 0; }
        article.cnt-recruit .post-detail p + p {
          margin-top: 10px !important; } }

.article.cnt-recruit .article-main {
  width: 100%;
  /*pickup*/ }
  .article.cnt-recruit .article-main .pickup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    margin: 0 auto;
    padding: 3px;
    text-align: center;
    /*&:before {
    	content: "";
    	position: absolute;
    	display: block;
    	background-image: url(/common/images/arrow.svg);
    	width: 15px;
    	height: 23px;
    	background-size: cover;
    	top: 35px;
    	right: 25px;
    }*/ }
    @media screen and (min-width: 767px) {
      .article.cnt-recruit .article-main .pickup {
        max-width: 1100px; } }
    .article.cnt-recruit .article-main .pickup li {
      position: relative;
      padding: 3px;
      width: 100%; }
      @media screen and (min-width: 767px) {
        .article.cnt-recruit .article-main .pickup li {
          width: calc(100% / 3); } }
    .article.cnt-recruit .article-main .pickup a {
      position: relative;
      display: -webkit-inline-box;
      display: -ms-inline-flexbox;
      display: inline-flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
      width: 100%;
      max-width: 350px;
      height: 95px;
      font-size: 22px;
      font-weight: 900;
      text-decoration: none;
      padding-top: 35px;
      background-color: #FFFFFF;
      margin-bottom: 10px; }
      @media screen and (max-width: 767px) {
        .article.cnt-recruit .article-main .pickup a {
          font-size: 18px;
          height: 75px;
          padding-top: 28px; } }
    .article.cnt-recruit .article-main .pickup p {
      color: black;
      font-size: 21px;
      font-weight: 900;
      text-align: center !important; }
    .article.cnt-recruit .article-main .pickup .blue a:hover {
      background-color: #00b3cf; }
    .article.cnt-recruit .article-main .pickup .pink a:hover {
      background-color: #e3378d; }
    .article.cnt-recruit .article-main .pickup .green a:hover {
      background-color: #77b22b; }
    .article.cnt-recruit .article-main .pickup.left {
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: end; }
    .article.cnt-recruit .article-main .pickup.slim {
      height: 60px;
      margin: 10px 0; }
      .article.cnt-recruit .article-main .pickup.slim a {
        height: 100%;
        padding-top: 15px;
        font-weight: 600;
        font-size: 18px;
        width: 300px; }
        .article.cnt-recruit .article-main .pickup.slim a::before {
          content: "";
          position: absolute;
          display: block;
          background-image: url(/common/images/arrow.svg);
          width: 15px;
          height: 23px;
          background-size: cover;
          top: 13px;
          right: 25px; }

/* =========================================================
	#wrapper
========================================================= */
#wrapper {
  width: 100%;
  height: 100%;
  margin: 0 auto; }

/* =========================================================
	.contents
========================================================= */
.contents {
  text-align: center; }

/* =========================================================
 pagetitle
========================================================= */
.pagetitle {
  position: relative;
  width: 100%;
  height: 450px;
  background: linear-gradient(-140deg, #e71e2c 0%, #f4d823 72.47%, #ed711a 100%);
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .pagetitle:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(/images/index/bk-patern.svg);
    opacity: .07;
    z-index: 2; }
  .pagetitle-title {
    text-align: center; }
    .pagetitle-title p.en-ttl {
      color: white;
      font: bold 80px/1 "Raleway", serif;
      letter-spacing: .08em; }
      .pagetitle-title p.en-ttl span {
        font-family: YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    .pagetitle-title h1 {
      color: white;
      font: bold 30px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      margin-top: 30px;
      letter-spacing: .08em; }
  @media screen and (max-width: 767px) {
    .pagetitle {
      height: 300px; }
      .pagetitle-title {
        margin-top: 100px; }
        .pagetitle-title p.en-ttl {
          font: bold 40px/1 "Raleway", serif; }
        .pagetitle-title h1 {
          font: bold 16px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
          margin-top: 10px; } }

/* =========================================================
 special
========================================================= */
body:not(#home-page) .article {
  padding-top: 150px;
  overflow: hidden; }
  body:not(#home-page) .article.noheader {
    padding-top: 0 !important; }
    body:not(#home-page) .article.noheader .topspace {
      padding-top: 150px !important; }
      @media screen and (max-width: 959px) {
        body:not(#home-page) .article.noheader .topspace {
          padding-top: 75px !important; } }
  body:not(#home-page) .article p {
    letter-spacing: .08em;
    font: normal 16px/2 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    body:not(#home-page) .article p.bold {
      font-weight: bold; }
    body:not(#home-page) .article p.midium {
      font-size: 24px; }
    body:not(#home-page) .article p.large {
      font-size: 28px;
      font-weight: bold; }
    body:not(#home-page) .article p.largest {
      font-size: 34px;
      font-weight: bold; }
    body:not(#home-page) .article p + p {
      margin-top: 30px; }
    body:not(#home-page) .article p + p.attention {
      margin-top: 20px; }
    body:not(#home-page) .article p + ul.list {
      margin-top: 30px; }
    body:not(#home-page) .article p.attention {
      font-size: 14px; }
      body:not(#home-page) .article p.attention + p.attention {
        margin-top: 0; }
  body:not(#home-page) .article h3 {
    font: bold 28px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    body:not(#home-page) .article h3 + p {
      margin-top: 30px; }
  body:not(#home-page) .article-img {
    margin-bottom: 70px; }
  body:not(#home-page) .article .btn {
    margin-top: 70px; }
  body:not(#home-page) .article .section + .section {
    margin-top: 75px;
    padding-top: 70px;
    border-top: 1px solid black; }
  body:not(#home-page) .article dl.table {
    margin: 80px 0 0;
    width: 100%;
    border: 3px solid black; }
    body:not(#home-page) .article dl.table dt {
      line-height: 1;
      font: 900 28px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      text-align: center;
      padding: 20px;
      border-bottom: 3px solid black; }
    body:not(#home-page) .article dl.table dd {
      font: bold 20px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      text-align: center;
      padding: 40px; }
      body:not(#home-page) .article dl.table dd + dt {
        border-top: 3px solid black; }
    body:not(#home-page) .article dl.table + p {
      margin-top: 75px; }
    body:not(#home-page) .article dl.table.yellow dt {
      background: #00b3cf; }
    body:not(#home-page) .article dl.table.yellow dd {
      background: white;
      text-align: left; }
  body:not(#home-page) .article-title h2 {
    display: inline-block;
    font: 900 60px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    body:not(#home-page) .article-title h2 span {
      margin-left: 10px;
      font: 900 45px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
  body:not(#home-page) .article-title > span {
    margin-left: 30px; }
    body:not(#home-page) .article-title > span img {
      vertical-align: bottom; }
  body:not(#home-page) .article-title.large h2 {
    line-height: 1.6; }
  body:not(#home-page) .article-intro {
    position: relative;
    padding: 65px 0; }
    body:not(#home-page) .article-intro .bk-text {
      position: absolute;
      bottom: -51px;
      left: 0;
      z-index: -1; }
      body:not(#home-page) .article-intro .bk-text p {
        color: #F4D823;
        font: 900 330px/1 "Raleway", serif;
        line-height: 1;
        white-space: nowrap;
        opacity: .2; }
  body:not(#home-page) .article-body {
    overflow: hidden;
    background: #F4D823;
    padding-bottom: 150px; }
    body:not(#home-page) .article-body.topspace {
      padding-top: 70px; }
      @media screen and (max-width: 767px) {
        body:not(#home-page) .article-body.topspace {
          padding-top: 35px; } }
@media screen and (max-width: 767px) {
  body:not(#home-page) .article {
    padding-top: 100px; }
    body:not(#home-page) .article p {
      font: normal 14px/2 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
      body:not(#home-page) .article p.midium {
        font-size: 16px; }
      body:not(#home-page) .article p.large {
        font-size: 17px; }
      body:not(#home-page) .article p.largest {
        font-size: 20px; }
      body:not(#home-page) .article p + p {
        margin-top: 15px; }
      body:not(#home-page) .article p + p.attention {
        margin-top: 10px; }
      body:not(#home-page) .article p + ul.list {
        margin-top: 20px; }
      body:not(#home-page) .article p.attention {
        font-size: 12px; }
    body:not(#home-page) .article h3 {
      font: normal 22px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
      body:not(#home-page) .article h3 + p {
        margin-top: 15px; }
    body:not(#home-page) .article-img {
      margin-bottom: 45px; }
    body:not(#home-page) .article .btn {
      margin-top: 45px; }
    body:not(#home-page) .article .section + .section {
      margin-top: 35px;
      padding-top: 30px; }
    body:not(#home-page) .article dl.table {
      margin: 40px 0 0; }
      body:not(#home-page) .article dl.table dt {
        line-height: 1;
        font: 900 18px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        padding: 20px; }
      body:not(#home-page) .article dl.table dd {
        font: bold 16px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        padding: 20px; }
      body:not(#home-page) .article dl.table + p {
        margin-top: 35px; }
    body:not(#home-page) .article-title h2 {
      display: block;
      font: 900 30px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
      body:not(#home-page) .article-title h2 span {
        margin-left: 5px;
        font: 900 20px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
    body:not(#home-page) .article-title > span {
      display: block;
      margin-left: 0;
      margin-top: 10px; }
    body:not(#home-page) .article-intro {
      position: relative;
      padding: 35px 0; }
      body:not(#home-page) .article-intro .bk-text {
        position: absolute;
        bottom: -29px;
        left: 0;
        z-index: -1; }
        body:not(#home-page) .article-intro .bk-text p {
          color: #F4D823;
          font: 900 190px/1 "Raleway", serif;
          line-height: 1;
          white-space: nowrap; }
    body:not(#home-page) .article-body {
      background: #F4D823;
      padding-bottom: 100px; } }

/* =========================================================
	header
========================================================= */
.header {
  position: absolute;
  width: 100%;
  z-index: 2;
  zoom: 1; }
  .header:before, .header:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden; }
  .header:after {
    clear: both; }
  .header .head-logo {
    float: left;
    padding-left: 60px; }
    @media screen and (max-width: 959px) {
      .header .head-logo {
        padding-left: 15px;
        z-index: 101;
        position: fixed; } }
    .header .head-logo a {
      display: block;
      width: 130px;
      height: 180px;
      background: white;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      @media screen and (max-width: 959px) {
        .header .head-logo a {
          width: 80px;
          height: 110px; } }
    @media screen and (max-width: 959px) {
      .header .head-logo img {
        width: 60px; } }
  @media screen and (min-width: 960px) {
    .header .menu {
      float: right;
      padding: 55px 60px 0 0; } }
  @media screen and (max-width: 959px) {
    .header .menu {
      max-height: 0;
      overflow: hidden;
      -webkit-transition: 300ms cubic-bezier(0.165, 0.84, 0.44, 1);
      transition: 300ms cubic-bezier(0.165, 0.84, 0.44, 1);
      background: black;
      color: #212121;
      -webkit-transform: translateY(-100vh);
              transform: translateY(-100vh);
      position: fixed;
      width: 100vw;
      top: 0;
      padding: 0;
      z-index: 100; }
      .header .menu.on {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        max-height: 3000vw;
        opacity: 1;
        -webkit-transform: translateY(0);
                transform: translateY(0);
        min-height: 100vh;
        height: 100%;
        overflow-y: scroll;
        padding: 140px 15px 60px; } }
  .header .gnav {
    zoom: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    float: left;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .header .gnav:before, .header .gnav:after {
      content: "";
      display: table;
      height: 0;
      visibility: hidden; }
    .header .gnav:after {
      clear: both; }
    @media screen and (min-width: 960px) {
      .header .gnav {
        padding: 0px 20px; } }
    @media screen and (max-width: 959px) {
      .header .gnav {
        display: block;
        height: auto;
        float: none;
        margin: 0;
        width: 100%;
        margin: 0 auto;
        text-align: left;
        margin-bottom: 40px; } }
    .header .gnav > li:last-child {
      padding: 0; }
    @media screen and (max-width: 959px) {
      .header .gnav > li {
        position: relative; } }
    @media screen and (min-width: 960px) {
      .header .gnav > li {
        position: relative;
        padding-right: 35px; } }
    @media screen and (max-width: 959px) {
      .header .gnav > li ul {
        padding-bottom: 5px; } }
    @media screen and (min-width: 960px) {
      .header .gnav > li ul {
        position: absolute;
        top: 35px;
        width: 7em;
        -webkit-transition: all .2s ease;
        transition: all .2s ease;
        visibility: hidden;
        opacity: 0; } }
    @media screen and (min-width: 960px) {
      .header .gnav > li ul li {
        margin-bottom: 1px; } }
    .header .gnav > li ul a {
      font-weight: bold;
      text-decoration: none; }
      @media screen and (max-width: 959px) {
        .header .gnav > li ul a {
          display: block;
          position: relative;
          padding: 10px 0 10px 30px;
          color: #fff;
          font-size: 18px; }
          .header .gnav > li ul a:before {
            content: "";
            position: absolute;
            display: block;
            width: 20px;
            height: 1px;
            top: 50%;
            left: 0;
            background: #fff; } }
      @media screen and (min-width: 960px) {
        .header .gnav > li ul a {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          height: 40px;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center;
          background: #fff;
          color: #000;
          font-size: 12px; } }
    @media screen and (min-width: 960px) {
      .header .gnav > li:hover ul {
        top: 50px;
        visibility: visible;
        opacity: 1; } }
    @media screen and (min-width: 960px) {
      .header .gnav > li:hover > a:before {
        width: 100%; } }
    .header .gnav > li > a {
      display: block;
      text-decoration: none;
      text-align: center;
      color: white;
      line-height: 1; }
      .header .gnav > li > a span {
        display: block; }
      @media screen and (min-width: 960px) {
        .header .gnav > li > a {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-direction: column;
                  flex-direction: column;
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          font-size: 12px;
          height: 35px;
          position: relative; }
          .header .gnav > li > a span {
            font: bold 14px/100% "Raleway", serif; }
          .header .gnav > li > a:before {
            content: "";
            display: block;
            position: absolute;
            width: 0%;
            height: 2px;
            background: white;
            left: 0;
            bottom: -15px;
            -webkit-transition: width .3s ease;
            transition: width .3s ease; } }
      @media screen and (max-width: 959px) {
        .header .gnav > li > a {
          padding: 15px 0;
          text-align: left;
          font-size: 18px; }
          .header .gnav > li > a span {
            display: inline;
            margin-right: 10px;
            font: 900 40px/100% "Raleway", serif; } }
  .header .menu-btn {
    cursor: pointer;
    position: fixed;
    top: 39px;
    right: 20px;
    width: 30px;
    height: 24px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 9999;
    line-height: 1; }
    .header .menu-btn:before {
      content: "";
      display: block;
      position: absolute;
      width: 70px;
      height: 70px;
      top: -24px;
      left: -20px;
      background: black; }
    @media screen and (min-width: 960px) {
      .header .menu-btn {
        display: none; } }
    @media screen and (max-width: 959px) {
      .header .menu-btn {
        display: block; } }
    .header .menu-btn figure {
      position: absolute;
      left: 0;
      display: block;
      width: 100%;
      height: 3px;
      background: white;
      transition: 0.25s;
      -moz-transition: 0.25s;
      -webkit-transition: 0.25s; }
      .header .menu-btn figure:nth-child(1) {
        top: 0; }
      .header .menu-btn figure:nth-child(2) {
        top: calc(50% + -1px); }
      .header .menu-btn figure:nth-child(3) {
        bottom: 0; }
    .header .menu-btn.on figure:nth-child(1) {
      top: 40%;
      transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      -webkit-transform: rotate(45deg); }
    .header .menu-btn.on figure:nth-child(2) {
      background: transparent; }
    .header .menu-btn.on figure:nth-child(3) {
      bottom: 50%;
      transform: rotate(-45deg);
      -moz-transform: rotate(-45deg);
      -webkit-transform: rotate(-45deg); }

/* =========================================================
	footer
========================================================= */
.footer-bnrs {
  position: relative;
  z-index: 1;
  background: #F5F5F5;
  padding: 100px 0;
  border-top: 1px solid #ddd; }
.footer-main {
  position: relative;
  z-index: 1;
  background: #F5F5F5;
  padding: 100px 0; }
.footer .inner-1400 {
  position: relative; }
.footer .sitemap ul {
  vertical-align: top;
  display: inline-block;
  margin-left: 100px; }
  .footer .sitemap ul:first-child {
    margin-left: 0; }
  .footer .sitemap ul li {
    margin-bottom: 20px; }
    .footer .sitemap ul li a {
      text-decoration: none;
      font: normal 14px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
      .footer .sitemap ul li a:hover {
        text-decoration: underline; }
    .footer .sitemap ul li:last-child {
      margin-bottom: 0; }
.footer-logo {
  position: absolute;
  right: 0;
  top: 0; }
  .footer-logo img {
    width: 160px; }
.footer-info {
  position: absolute;
  bottom: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .footer-info .img:first-child {
    margin-right: 15px; }
.footer-sns {
  position: absolute;
  bottom: 0;
  right: 0; }
  .footer-sns .list-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .footer-sns .list-icon li {
      margin-left: 10px; }
      .footer-sns .list-icon li a {
        display: block;
        width: 100%;
        height: 100%; }
        .footer-sns .list-icon li a img {
          width: 30px;
          opacity: .8; }
        .footer-sns .list-icon li a:hover {
          opacity: .8; }
  @media screen and (max-width: 1199px) {
    .footer-sns {
      position: relative;
      left: 0;
      margin: 0 auto;
      width: 81px;
      top: 20px; } }
.footer-copyright {
  position: relative;
  z-index: 1;
  padding: 30px 0;
  text-align: center;
  font: normal 12px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  background: white; }
@media screen and (max-width: 1199px) {
  .footer-main {
    padding: 50px 0; }
  .footer .sitemap ul {
    margin: 0;
    width: 100%;
    text-align: center;
    margin-bottom: 20px; }
  .footer-logo {
    position: relative;
    text-align: center;
    margin-top: 10px; }
  .footer-info {
    position: relative;
    width: 64px;
    margin: 0 auto;
    margin-top: 20px; }
  .footer-copyright {
    padding: 20px 0;
    font-size: 10px; } }

/* =========================================================
	pagetop
========================================================= */
#pagetop {
  position: fixed;
  right: 40px;
  bottom: -170px;
  width: 47px;
  z-index: 2;
  -webkit-transition: bottom .15s linear;
  transition: bottom .15s linear; }
  #pagetop.on {
    bottom: 40px; }
  @media screen and (max-width: 959px) {
    #pagetop {
      display: none !important; } }

/* index page
========================================================= */
#home-page .mv {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  z-index: 1; }
  #home-page .mv:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(/images/index/bk-patern.svg);
    opacity: .07;
    z-index: 2; }
  #home-page .mv:after {
    content: "";
    display: block;
    position: absolute;
    top: -13.5vw;
    -webkit-transform: translateY(-189.9vw);
            transform: translateY(-189.9vw);
    left: 0;
    width: 100%;
    height: 554.8vw;
    background: linear-gradient(-140deg, #e71e2c 0%, #ed711a 7.25%, #f4d823 14.78%, #77b22b 23.01%, #2e7338 32.21%, #0079c3 41.42%, #0c3e88 50.19%, #00b3cf 58.99%, #50298b 67.78%, #e3378d 76.15%, #e71e2c 84.51%, #f4d823 92.47%, #ed711a 100%);
    -webkit-transition: -webkit-transform 1.4s cubic-bezier(0.53, 0, 0.35, 1.11);
    transition: -webkit-transform 1.4s cubic-bezier(0.53, 0, 0.35, 1.11);
    transition: transform 1.4s cubic-bezier(0.53, 0, 0.35, 1.11);
    transition: transform 1.4s cubic-bezier(0.53, 0, 0.35, 1.11), -webkit-transform 1.4s cubic-bezier(0.53, 0, 0.35, 1.11);
    z-index: 1; }
  #home-page .mv-human {
    position: absolute;
    display: block;
    top: 0;
    left: -230px;
    z-index: 3; }
    @media screen and (min-width: 1200px) {
      #home-page .mv-human img {
        min-height: 700px; } }
    @media screen and (max-width: 767px) {
      #home-page .mv-human {
        left: -48vh; } }
    #home-page .mv-human img {
      height: 100vh;
      max-width: none; }
      @media screen and (max-width: 767px) {
        #home-page .mv-human img {
          height: calc( 100vh - 100px ); } }
  #home-page .mv-copy {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    z-index: 4; }
    #home-page .mv-copy img {
      position: absolute;
      height: 50vh;
      right: 11vw;
      margin-top: -30px; }
      @media screen and (max-width: 1400px) {
        #home-page .mv-copy img {
          height: auto;
          right: 60px;
          width: 450px; } }
      @media screen and (max-width: 959px) {
        #home-page .mv-copy img {
          height: auto;
          width: 450px; } }
      @media screen and (max-width: 767px) {
        #home-page .mv-copy img {
          right: 15px;
          height: auto;
          width: calc(100% - 100px);
          bottom: 130px; } }
  #home-page .mv-tnews {
    position: absolute;
    z-index: 5;
    bottom: 60px;
    right: 110px;
    height: 100px;
    min-width: 450px;
    padding-right: 40px;
    border: 3px solid white; }
    #home-page .mv-tnews .tnews-head h2 {
      padding: 7px 20px;
      border: 3px solid white;
      border-width: 0 3px 3px 0;
      display: inline-block;
      color: white;
      font: bold 14px/1 "Raleway", serif;
      letter-spacing: .3em; }
    #home-page .mv-tnews .tnews-post {
      padding: 8px 20px; }
      #home-page .mv-tnews .tnews-post a {
        text-decoration: none;
        color: white; }
        #home-page .mv-tnews .tnews-post a:hover {
          text-decoration: underline; }
    #home-page .mv-tnews .tnews-date {
      font: normal 12px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      letter-spacing: .2em;
      color: white; }
    #home-page .mv-tnews .tnews-title {
      color: white;
      font: normal 14px/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      margin-top: 8px; }
    #home-page .mv-tnews .tnews-morebtn {
      position: absolute;
      right: -3px;
      top: -3px; }
    @media screen and (max-width: 767px) {
      #home-page .mv-tnews {
        width: 100%;
        min-width: 100%;
        bottom: 0;
        right: 0;
        background: rgba(0, 0, 0, 0.4); } }
  #home-page .mv-bnr {
    position: absolute;
    bottom: 50px;
    left: 50px;
    z-index: 9; }
    #home-page .mv-bnr:hover {
      opacity: .6; }
  #home-page .mv.on:after {
    -webkit-transform: translateY(0vw);
            transform: translateY(0vw); }
#home-page .cnt-recruit .rec-bnr {
  text-align: center;
  margin-top: 40px; }
#home-page #webservice {
  position: relative;
  background: #F4D823;
  overflow: hidden; }
  #home-page #webservice .article-title {
    position: relative; }
    #home-page #webservice .article-title h2 {
      position: fixed;
      top: 60px;
      left: 30px; }
      @media screen and (max-width: 1400px) {
        #home-page #webservice .article-title h2 {
          left: 1px; }
          #home-page #webservice .article-title h2 img {
            width: calc((100vw - 1120px)/2); } }
      @media screen and (max-width: 1300px) {
        #home-page #webservice .article-title h2 img {
          display: none; } }
      @media screen and (max-width: 1199px) {
        #home-page #webservice .article-title h2 {
          display: none; } }
  #home-page #webservice .cnt-website {
    position: relative;
    margin-top: 200px;
    margin-bottom: 240px;
    z-index: 1; }
    @media screen and (min-width: 1200px) {
      #home-page #webservice .cnt-website .section-main p.large {
        margin-bottom: 50px; }
      #home-page #webservice .cnt-website .section-imgs {
        position: absolute;
        top: -60px;
        left: 660px;
        width: 100%;
        z-index: -1; }
        #home-page #webservice .cnt-website .section-imgs .img {
          float: left; }
          #home-page #webservice .cnt-website .section-imgs .img img {
            -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
                    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }
          #home-page #webservice .cnt-website .section-imgs .img:nth-child(2) {
            margin: 120px 0 0 50px; } }
    #home-page #webservice .cnt-website .section-imgs .img {
      width: 430px; }
    @media screen and (max-width: 1600px) {
      #home-page #webservice .cnt-website .section-title h3 {
        float: none; }
      #home-page #webservice .cnt-website .section-head {
        margin-top: 10px; }
      #home-page #webservice .cnt-website .section-imgs {
        left: 600px; } }
    @media screen and (max-width: 1199px) {
      #home-page #webservice .cnt-website {
        margin-top: 50px;
        margin-bottom: 60px; }
        #home-page #webservice .cnt-website .section-imgs.cnt-sp2 {
          width: 100%;
          z-index: -1;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          margin: 30px 0 40px; }
          #home-page #webservice .cnt-website .section-imgs.cnt-sp2 .img {
            float: none;
            width: 100%; }
            #home-page #webservice .cnt-website .section-imgs.cnt-sp2 .img img {
              -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
                      box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }
            #home-page #webservice .cnt-website .section-imgs.cnt-sp2 .img:nth-child(2) {
              margin: 0 0 0 15px; } }
  #home-page #webservice .cnt-works {
    position: relative;
    margin-top: -80px; }
    @media screen and (max-width: 1199px) {
      #home-page #webservice .cnt-works {
        margin-top: 60px;
        z-index: 1; }
        #home-page #webservice .cnt-works:before {
          content: "";
          position: absolute;
          display: block;
          background: white;
          width: 100%;
          height: 100%;
          left: 47px;
          top: -31px;
          opacity: .4;
          z-index: -1; } }
    @media (min-width: 768px) {
      #home-page #webservice .cnt-works .section-main {
        margin-bottom: 70px; } }
    @media (max-width: 767px) {
      #home-page #webservice .cnt-works .section-main {
        margin-bottom: 45px; } }
    #home-page #webservice .cnt-works .section-main:last-of-type {
      margin-bottom: 0; }
    #home-page #webservice .cnt-works .section-main h4 {
      margin-bottom: 1em;
      letter-spacing: 0em;
      line-height: 1; }
      @media (max-width: 767px) {
        #home-page #webservice .cnt-works .section-main h4 {
          font: bold 20px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; } }
      @media screen and (max-width: 1199px) {
        #home-page #webservice .cnt-works .section-main h4 {
          font-size: 22px; } }
      @media (min-width: 992px) {
        #home-page #webservice .cnt-works .section-main h4 {
          font: bold 26px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; } }
    #home-page #webservice .cnt-works .section-title h3 {
      font-size: 50px;
      float: none; }
      @media screen and (max-width: 1199px) {
        #home-page #webservice .cnt-works .section-title h3 {
          font-size: 30px; } }
    #home-page #webservice .cnt-works ul.slider {
      width: calc(100% - 140px);
      max-width: 1260px;
      margin: 0 auto; }
      @media screen and (max-width: 1199px) {
        #home-page #webservice .cnt-works ul.slider {
          width: 100%; } }
      #home-page #webservice .cnt-works ul.slider .slick-track {
        padding-top: 10px; }
      #home-page #webservice .cnt-works ul.slider .slide {
        max-width: 400px;
        margin: 0 15px;
        position: relative; }
    #home-page #webservice .cnt-works .slick-arrow {
      display: block;
      width: 46px;
      height: 71px;
      background-image: url(/common/images/arrow.svg);
      background-size: cover; }
    #home-page #webservice .cnt-works .slick-next {
      position: absolute;
      right: -70px;
      top: 46%; }
    #home-page #webservice .cnt-works .slick-prev {
      position: absolute;
      left: -70px;
      top: 46%;
      -webkit-transform: rotate(180deg);
              transform: rotate(180deg); }
    #home-page #webservice .cnt-works .btn {
      margin-top: 60px; }
  #home-page #webservice .cnt-consul,
  #home-page #webservice .cnt-webad {
    position: relative;
    margin-top: 200px; }
    #home-page #webservice .cnt-consul .section-title,
    #home-page #webservice .cnt-webad .section-title {
      margin-bottom: 50px; }
      #home-page #webservice .cnt-consul .section-title h3,
      #home-page #webservice .cnt-webad .section-title h3 {
        float: none;
        font-size: 60px; }
        @media screen and (max-width: 1800px) {
          #home-page #webservice .cnt-consul .section-title h3,
          #home-page #webservice .cnt-webad .section-title h3 {
            font-size: 50px; } }
    #home-page #webservice .cnt-consul .section-head,
    #home-page #webservice .cnt-webad .section-head {
      padding-top: 50px; }
      #home-page #webservice .cnt-consul .section-head img,
      #home-page #webservice .cnt-webad .section-head img {
        margin-top: 25px; }
    #home-page #webservice .cnt-consul .section-main p.large,
    #home-page #webservice .cnt-webad .section-main p.large {
      margin-top: 40px; }
  #home-page #webservice .cnt-webad .img-box {
    position: absolute;
    width: 50%; }
    #home-page #webservice .cnt-webad .img-box img {
      margin: -150px 0 0 -40px; }
    @media screen and (max-width: 1600px) {
      #home-page #webservice .cnt-webad .img-box img {
        margin: -90px 0 0 -40px; } }
  #home-page #webservice .cnt-webad .text-box {
    padding-left: 650px; }
    @media screen and (max-width: 1800px) {
      #home-page #webservice .cnt-webad .text-box {
        padding-left: 33vw; } }
    @media screen and (max-width: 1600px) {
      #home-page #webservice .cnt-webad .text-box {
        padding-left: 480px; } }
  #home-page #webservice .cnt-consul {
    margin-bottom: 200px; }
    #home-page #webservice .cnt-consul .img-box {
      position: absolute;
      width: 50%; }
      #home-page #webservice .cnt-consul .img-box img {
        margin: -30px 0 0 -22px; }
    #home-page #webservice .cnt-consul .text-box {
      padding-left: 650px; }
      @media screen and (max-width: 1800px) {
        #home-page #webservice .cnt-consul .text-box {
          padding-left: 33vw; } }
      @media screen and (max-width: 1600px) {
        #home-page #webservice .cnt-consul .text-box {
          padding-left: 480px; } }
  #home-page #webservice .btn.large {
    margin-bottom: 200px; }
  @media screen and (max-width: 1199px) {
    #home-page #webservice .cnt-consul,
    #home-page #webservice .cnt-webad {
      margin-top: 100px;
      position: relative;
      z-index: 1; }
      #home-page #webservice .cnt-consul .section-title,
      #home-page #webservice .cnt-webad .section-title {
        margin-bottom: 30px; }
        #home-page #webservice .cnt-consul .section-title h3,
        #home-page #webservice .cnt-webad .section-title h3 {
          font-size: 40px;
          margin: 0;
          letter-spacing: 0; }
      #home-page #webservice .cnt-consul .section-head,
      #home-page #webservice .cnt-webad .section-head {
        padding-top: 30px; }
        #home-page #webservice .cnt-consul .section-head div img,
        #home-page #webservice .cnt-webad .section-head div img {
          margin-top: 15px; }
      #home-page #webservice .cnt-consul .section-main p.large,
      #home-page #webservice .cnt-webad .section-main p.large {
        margin-top: 20px; }
      #home-page #webservice .cnt-consul .img-box,
      #home-page #webservice .cnt-webad .img-box {
        width: 100%;
        z-index: -1;
        bottom: -3vw; }
        #home-page #webservice .cnt-consul .img-box img,
        #home-page #webservice .cnt-webad .img-box img {
          margin: 0; }
      #home-page #webservice .cnt-consul .text-box,
      #home-page #webservice .cnt-webad .text-box {
        padding: 0;
        padding-bottom: 106vw; }
    #home-page #webservice .cnt-consul {
      margin-bottom: 60px; }
      #home-page #webservice .cnt-consul .img-box {
        bottom: 5vw; }
    #home-page #webservice .btn.large {
      margin-bottom: 100px; } }
#home-page #business {
  position: relative;
  padding: 200px 0;
  background: white;
  z-index: 1; }
  #home-page #business:before {
    content: "";
    position: absolute;
    background: #00b3cf;
    display: block;
    width: calc(50% + 465px);
    height: 800px;
    z-index: -1;
    top: 240px;
    right: 0; }
  #home-page #business:after {
    content: url(/images/index/title02.svg);
    position: absolute;
    top: 210px;
    left: 30px;
    display: block;
    width: 126px;
    z-index: -1; }
    @media screen and (max-width: 1400px) {
      #home-page #business:after {
        left: 1px;
        width: calc((100vw - 1120px)/2); } }
    @media screen and (max-width: 1300px) {
      #home-page #business:after {
        display: none; } }
  #home-page #business .article-title h2 {
    font: 900 80px/1 "Raleway", serif;
    text-align: center;
    letter-spacing: .08em; }
  #home-page #business .article-main {
    margin-top: 60px; }
  @media screen and (max-width: 1199px) {
    #home-page #business {
      padding: 100px 0; }
      #home-page #business:before {
        height: 400px; }
      #home-page #business .article-title h2 {
        font: 900 50px/1 "Raleway", serif; } }
#home-page #column {
  position: relative;
  padding: 200px 0;
  background: #f5f5f5;
  z-index: 1; }
  #home-page #column .article-title h2 {
    font: 900 80px/1 "Raleway", serif;
    text-align: center;
    letter-spacing: .08em; }
  #home-page #column .article-main {
    margin-top: 60px; }
  #home-page #column .btn {
    margin-top: 100px; }
  @media screen and (max-width: 1199px) {
    #home-page #column {
      padding: 100px 0; }
      #home-page #column .article-title h2 {
        font: 900 50px/1 "Raleway", serif;
        text-align: left; } }
  #home-page #column:after {
    content: url(/images/index/title05.svg);
    position: absolute;
    top: 210px;
    left: 30px;
    display: block;
    width: 126px;
    z-index: -1; }
    @media screen and (max-width: 1400px) {
      #home-page #column:after {
        left: 1px;
        width: calc((100vw - 1120px)/2); } }
    @media screen and (max-width: 1300px) {
      #home-page #column:after {
        display: none; } }

@media (max-width: 767px) {
  #works-page .works-menu {
    padding-top: 45px; } }
@media (min-width: 768px) {
  #works-page .works-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 70px; } }
@media (max-width: 767px) {
  #works-page .works-menu li {
    margin-bottom: 40px; }
    #works-page .works-menu li:last-child {
      margin-bottom: 0; } }
@media (min-width: 768px) {
  #works-page .works-menu li {
    width: 48%; } }
#works-page .works-menu a {
  display: block;
  text-decoration: none; }
  #works-page .works-menu a img {
    -webkit-transition: -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    transition: -webkit-transform .3s ease, -webkit-box-shadow .3s ease;
    transition: transform .3s ease, box-shadow .3s ease;
    transition: transform .3s ease, box-shadow .3s ease, -webkit-transform .3s ease, -webkit-box-shadow .3s ease; }
  #works-page .works-menu a:hover img {
    -webkit-transform: scale(1.03);
            transform: scale(1.03);
    -webkit-box-shadow: 0 2px 9px rgba(0, 0, 0, 0.3);
            box-shadow: 0 2px 9px rgba(0, 0, 0, 0.3); }
#works-page .works-menu span {
  display: block;
  margin-top: 1em;
  font-weight: 900; }
  @media (max-width: 767px) {
    #works-page .works-menu span {
      font-size: 22px; } }
  @media (min-width: 768px) {
    #works-page .works-menu span {
      font-size: 28px; } }
#works-page ul.slider {
  width: calc(100% - 140px);
  max-width: 1260px;
  margin: 0 auto; }
  @media screen and (max-width: 1199px) {
    #works-page ul.slider {
      width: 100%; } }
  #works-page ul.slider .slick-track {
    padding-top: 10px; }
  #works-page ul.slider .slide {
    max-width: 400px;
    margin: 0 15px;
    position: relative; }
    @media screen and (max-width: 1199px) {
      #works-page ul.slider .slide {
        width: calc(100vw - 30px); } }
#works-page .slick-arrow {
  display: block;
  width: 46px;
  height: 71px;
  background-image: url(/common/images/arrow.svg);
  background-size: cover; }
#works-page .slick-next {
  position: absolute;
  right: -70px;
  top: 46%; }
#works-page .slick-prev {
  position: absolute;
  left: -70px;
  top: 46%;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg); }
#works-page .btn {
  margin-top: 120px !important; }
  @media screen and (max-width: 1199px) {
    #works-page .btn {
      margin-top: 115px !important; } }
#works-page ul.list-works {
  margin-top: 70px;
  margin-bottom: -30px; }
  @media screen and (max-width: 1199px) {
    #works-page ul.list-works {
      margin-top: 40px; } }
#works-page dl.table dd {
  background: white; }
#works-page h3 + ul.list-works {
  margin-top: 60px; }
  @media screen and (max-width: 1199px) {
    #works-page h3 + ul.list-works {
      margin-top: 20px; } }
#works-page .article-imgs .img {
  margin-top: 70px;
  margin-right: 60px; }
  #works-page .article-imgs .img img {
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
            box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }
  #works-page .article-imgs .img:last-of-type {
    margin-top: 140px;
    margin-right: 0; }
@media screen and (max-width: 768px) {
  #works-page .article-imgs {
    display: block; }
    #works-page .article-imgs .img {
      margin-top: 35px;
      margin-right: 60px; }
      #works-page .article-imgs .img:last-of-type {
        margin-top: -45px;
        margin-left: 60px;
        margin-right: 0; } }
#works-page .article-movie {
  max-width: 800px;
  margin: auto; }
  #works-page .article-movie__inner {
    position: relative;
    width: 100%;
    height: 0;
    padding: 0 0 56.25%;
    overflow: hidden; }
    @media (max-width: 767px) {
      #works-page .article-movie__inner {
        margin-top: 35px; } }
    @media (min-width: 768px) {
      #works-page .article-movie__inner {
        margin-top: 70px; } }
  #works-page .article-movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

#recruit-page.cnt-sales #cnt-salestop .article-intro {
  padding: 65px 0 150px; }
#recruit-page.cnt-sales .cnt-main {
  background: black; }
  #recruit-page.cnt-sales .cnt-main .article-title h2 {
    color: white; }
  @media screen and (max-width: 959px) {
    #recruit-page.cnt-sales .cnt-main .article-title h2 {
      line-height: 1.6; } }
  #recruit-page.cnt-sales .cnt-main .article-intro {
    z-index: 1; }
    #recruit-page.cnt-sales .cnt-main .article-intro p {
      color: white; }
    #recruit-page.cnt-sales .cnt-main .article-intro .bk-text p {
      opacity: .05 !important; }
#recruit-page.cnt-sales dl.table dt {
  background: white; }
@media screen and (max-width: 959px) {
  #recruit-page.cnt-sales dl.table dd {
    padding-left: 15px;
    padding-right: 15px;
    text-align: left !important; } }
#recruit-page.cnt-sales .btn a {
  max-width: 350px;
  width: 100%; }
#recruit-page.cnt-sales .btn.logo a {
  padding-top: 25px; }
  #recruit-page.cnt-sales .btn.logo a img {
    width: 200px;
    height: 35px; }
  @media screen and (max-width: 959px) {
    #recruit-page.cnt-sales .btn.logo a {
      padding-top: 22px; }
      #recruit-page.cnt-sales .btn.logo a img {
        width: 114px;
        height: 20px; } }
  #recruit-page.cnt-sales .btn.logo a:hover {
    background-color: white; }
#recruit-page.cnt-sales .btn + .btn.logo {
  margin-top: 30px; }
#recruit-page.cnt-sales h3 + ul {
  margin-top: 20px; }
@media screen and (max-width: 959px) {
  #recruit-page.cnt-sales #cnt-salestop {
    padding: 100px 0 20px; } }
#recruit-page.cnt-sales .article-intro .inner-1200 {
  position: relative; }
#recruit-page.cnt-sales .side-img img {
  position: absolute;
  width: 40%;
  right: 0;
  bottom: -66px; }
  @media screen and (max-width: 767px) {
    #recruit-page.cnt-sales .side-img img {
      width: 38%;
      right: 0;
      bottom: -35px; } }
#recruit-page.cnt-sales #sales02 .side-img img {
  width: 32%; }
  @media screen and (max-width: 959px) {
    #recruit-page.cnt-sales #sales02 .side-img img {
      width: 38%; } }

#recruit-page .cnt-main {
  padding-bottom: 100px; }
  #recruit-page .cnt-main span.positive, #recruit-page .cnt-main span.negative {
    font-weight: 900; }
  #recruit-page .cnt-main span.positive {
    color: #F4D823; }
  #recruit-page .cnt-main .article-title {
    text-align: center; }
    #recruit-page .cnt-main .article-title h2 {
      line-height: 1.4;
      text-align: center; }
      @media screen and (max-width: 959px) {
        #recruit-page .cnt-main .article-title h2 {
          font-size: 35px; } }
    #recruit-page .cnt-main .article-title span {
      font-size: 60px; }
      @media screen and (max-width: 959px) {
        #recruit-page .cnt-main .article-title span {
          line-height: 1.4;
          text-align: center;
          font-size: 35px; } }
  #recruit-page .cnt-main .article-main p {
    font-size: 24px;
    line-height: 1.5;
    letter-spacing: 0; }
    @media screen and (max-width: 959px) {
      #recruit-page .cnt-main .article-main p {
        text-align: left;
        font-weight: 600;
        line-height: 1.5; }
        #recruit-page .cnt-main .article-main p + p {
          margin-top: 30px; } }
#recruit-page #rectop-intro {
  position: relative; }
  #recruit-page #rectop-intro p {
    text-align: center; }
    @media screen and (max-width: 959px) {
      #recruit-page #rectop-intro p {
        text-align: left; } }
  #recruit-page #rectop-intro:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-image: url(/images/recruit/recruit01.svg);
    background-repeat: no-repeat;
    opacity: 0.1;
    background-position: bottom;
    background-attachment: fixed; }
    @media screen and (max-width: 959px) {
      #recruit-page #rectop-intro:before {
        content: none; } }
#recruit-page #cnt-future,
#recruit-page #cnt-culture-outer {
  padding-bottom: 0; }
#recruit-page #cnt-culture {
  padding-top: 100px;
  background: black; }
  #recruit-page #cnt-culture li > p {
    text-align: left;
    line-height: 1.95; }
  #recruit-page #cnt-culture > div > p {
    color: white; }
  #recruit-page #cnt-culture .table:nth-of-type(2) dt {
    background: #ddd; }
  #recruit-page #cnt-culture .section > p {
    color: white; }
  #recruit-page #cnt-culture .section > h3 {
    color: #F4D823; }
  @media screen and (min-width: 960px) {
    #recruit-page #cnt-culture .section {
      margin-top: 0; } }
  @media screen and (max-width: 959px) {
    #recruit-page #cnt-culture .section h3 {
      font-size: 26px;
      font-weight: 900; } }
#recruit-page .cnt-main {
  position: relative; }
  #recruit-page .cnt-main.yellow {
    background: #F4D823; }
    #recruit-page .cnt-main.yellow p,
    #recruit-page .cnt-main.yellow h2 {
      color: block; }
  #recruit-page .cnt-main.black {
    background: black; }
    #recruit-page .cnt-main.black p,
    #recruit-page .cnt-main.black h2 {
      color: white; }
    #recruit-page .cnt-main.black h3 {
      color: #F4D823; }
  #recruit-page .cnt-main .tab_wrap {
    width: 100%;
    margin: 40px auto; }
  #recruit-page .cnt-main input[type="radio"] {
    display: none; }
  #recruit-page .cnt-main .tab_area {
    font-size: 0; }
  #recruit-page .cnt-main .tab_area label {
    width: 50%;
    display: inline-block;
    padding: 12px 0;
    color: #999;
    background: white;
    text-align: center;
    font-size: 21px;
    cursor: pointer;
    font-weight: bolder; }
  #recruit-page .cnt-main .panel_area {
    background: black;
    color: white;
    font-weight: bold; }
  #recruit-page .cnt-main .tab_panel {
    width: 100%;
    padding: 40px 30px;
    display: none; }
  #recruit-page .cnt-main .tab_panel p {
    font-size: 16px;
    letter-spacing: 1px;
    text-align: left;
    font-weight: normal;
    padding: 5px 0 10px; }
  #recruit-page .cnt-main #tab1:checked ~ .tab_area .tab1_label {
    background: black;
    color: white; }
  #recruit-page .cnt-main #tab1:checked ~ .panel_area #panel1 {
    display: block; }
  #recruit-page .cnt-main #tab2:checked ~ .tab_area .tab2_label {
    background: black;
    color: white; }
  #recruit-page .cnt-main #tab2:checked ~ .panel_area #panel2 {
    display: block; }
  @media screen and (max-width: 959px) {
    #recruit-page .cnt-main .tab_panel {
      width: 100%;
      padding: 15px;
      display: none; } }
#recruit-page .cnt-recbnr {
  position: relative;
  z-index: 1;
  padding-bottom: 400px; }
  @media screen and (max-width: 959px) {
    #recruit-page .cnt-recbnr {
      padding-bottom: 90px; } }
  #recruit-page .cnt-recbnr:before {
    content: "";
    position: absolute;
    bottom: -190px;
    z-index: -1;
    display: block;
    width: 100%;
    height: calc(100% - 410px);
    background-image: url(/images/recruit/recruit-09.svg);
    background-size: cover;
    background-repeat: repeat-x; }
    @media screen and (max-width: 959px) {
      #recruit-page .cnt-recbnr:before {
        bottom: -20px;
        height: 140px; } }
#recruit-page .list-recbnr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%; }
  #recruit-page .list-recbnr li {
    position: relative;
    width: calc((100% - 60px)/4);
    height: 300px;
    margin-bottom: 30px;
    background-color: white;
    border: 3px solid black;
    padding: 3px;
    overflow: hidden; }
    @media screen and (max-width: 959px) {
      #recruit-page .list-recbnr li {
        overflow: visible;
        width: 100%;
        height: auto; } }
  #recruit-page .list-recbnr a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 30px;
    background-color: #e3378d;
    text-align: center;
    text-decoration: none; }
    #recruit-page .list-recbnr a p {
      color: white;
      font-size: 21px;
      font-weight: 900;
      text-align: center !important; }
  #recruit-page .list-recbnr li:nth-child(1) a {
    background-color: #00b3cf; }
  #recruit-page .list-recbnr li:nth-child(2) a {
    background-color: #e3378d; }
  #recruit-page .list-recbnr li:nth-child(3) a {
    background-color: #50298b; }
  #recruit-page .list-recbnr li:nth-child(4) a {
    background-color: #77b22b; }
  #recruit-page .list-recbnr li a:hover {
    background-color: black; }
  #recruit-page .list-recbnr img {
    position: absolute;
    left: 0;
    height: 520px;
    top: 90px; }
    @media screen and (max-width: 959px) {
      #recruit-page .list-recbnr img {
        position: absolute;
        height: 120px;
        left: 24px;
        top: 7px; } }
  @media screen and (min-width: 960px) {
    #recruit-page .list-recbnr li:nth-child(3) a img {
      left: 30px; }
    #recruit-page .list-recbnr li:nth-child(4) a img {
      left: 30px; } }
  @media screen and (max-width: 959px) {
    #recruit-page .list-recbnr li:nth-child(2n) img {
      left: auto;
      right: 24px; } }
@media screen and (max-width: 959px) {
  #recruit-page .glitch {
    position: relative;
    width: 400px;
    margin: 0 auto; }
  @-webkit-keyframes noise-anim {
    0% {
      clip: rect(19px, 9999px, 96px, 0); }
    5% {
      clip: rect(73px, 9999px, 30px, 0); }
    10% {
      clip: rect(79px, 9999px, 41px, 0); }
    15% {
      clip: rect(90px, 9999px, 49px, 0); }
    20% {
      clip: rect(33px, 9999px, 7px, 0); }
    25% {
      clip: rect(89px, 9999px, 55px, 0); }
    30% {
      clip: rect(45px, 9999px, 21px, 0); }
    35% {
      clip: rect(81px, 9999px, 85px, 0); }
    40% {
      clip: rect(61px, 9999px, 49px, 0); }
    45% {
      clip: rect(31px, 9999px, 20px, 0); }
    50% {
      clip: rect(56px, 9999px, 52px, 0); }
    55% {
      clip: rect(71px, 9999px, 75px, 0); }
    60% {
      clip: rect(45px, 9999px, 51px, 0); }
    65% {
      clip: rect(22px, 9999px, 31px, 0); }
    70% {
      clip: rect(83px, 9999px, 16px, 0); }
    75% {
      clip: rect(15px, 9999px, 18px, 0); }
    80% {
      clip: rect(44px, 9999px, 68px, 0); }
    85% {
      clip: rect(95px, 9999px, 16px, 0); }
    90% {
      clip: rect(24px, 9999px, 90px, 0); }
    95% {
      clip: rect(16px, 9999px, 1px, 0); }
    100% {
      clip: rect(34px, 9999px, 47px, 0); } }
  @keyframes noise-anim {
    0% {
      clip: rect(19px, 9999px, 96px, 0); }
    5% {
      clip: rect(73px, 9999px, 30px, 0); }
    10% {
      clip: rect(79px, 9999px, 41px, 0); }
    15% {
      clip: rect(90px, 9999px, 49px, 0); }
    20% {
      clip: rect(33px, 9999px, 7px, 0); }
    25% {
      clip: rect(89px, 9999px, 55px, 0); }
    30% {
      clip: rect(45px, 9999px, 21px, 0); }
    35% {
      clip: rect(81px, 9999px, 85px, 0); }
    40% {
      clip: rect(61px, 9999px, 49px, 0); }
    45% {
      clip: rect(31px, 9999px, 20px, 0); }
    50% {
      clip: rect(56px, 9999px, 52px, 0); }
    55% {
      clip: rect(71px, 9999px, 75px, 0); }
    60% {
      clip: rect(45px, 9999px, 51px, 0); }
    65% {
      clip: rect(22px, 9999px, 31px, 0); }
    70% {
      clip: rect(83px, 9999px, 16px, 0); }
    75% {
      clip: rect(15px, 9999px, 18px, 0); }
    80% {
      clip: rect(44px, 9999px, 68px, 0); }
    85% {
      clip: rect(95px, 9999px, 16px, 0); }
    90% {
      clip: rect(24px, 9999px, 90px, 0); }
    95% {
      clip: rect(16px, 9999px, 1px, 0); }
    100% {
      clip: rect(34px, 9999px, 47px, 0); } }
  #recruit-page .glitch:after {
    content: attr(data-text);
    position: absolute;
    left: 1px;
    text-shadow: -1px 0 red;
    top: 0;
    height: 100%;
    color: #F4D823;
    background: black;
    overflow: hidden;
    clip: rect(0, 900px, 0, 0);
    -webkit-animation: noise-anim 2s infinite linear alternate-reverse;
            animation: noise-anim 2s infinite linear alternate-reverse; }
  @-webkit-keyframes noise-anim-2 {
    0% {
      clip: rect(42px, 999px, 77px, 0); }
    5% {
      clip: rect(93px, 999px, 83px, 0); }
    10% {
      clip: rect(60px, 999px, 2px, 0); }
    15% {
      clip: rect(38px, 999px, 12px, 0); }
    20% {
      clip: rect(13px, 999px, 53px, 0); }
    25% {
      clip: rect(10px, 999px, 6px, 0); }
    30% {
      clip: rect(96px, 999px, 22px, 0); }
    35% {
      clip: rect(68px, 999px, 75px, 0); }
    40% {
      clip: rect(56px, 999px, 56px, 0); }
    45% {
      clip: rect(44px, 999px, 41px, 0); }
    50% {
      clip: rect(34px, 999px, 57px, 0); }
    55% {
      clip: rect(42px, 999px, 26px, 0); }
    60% {
      clip: rect(10px, 999px, 9px, 0); }
    65% {
      clip: rect(11px, 999px, 62px, 0); }
    70% {
      clip: rect(45px, 999px, 72px, 0); }
    75% {
      clip: rect(86px, 999px, 12px, 0); }
    80% {
      clip: rect(87px, 999px, 63px, 0); }
    85% {
      clip: rect(7px, 999px, 98px, 0); }
    90% {
      clip: rect(79px, 999px, 50px, 0); }
    95% {
      clip: rect(93px, 999px, 42px, 0); }
    100% {
      clip: rect(100px, 999px, 69px, 0); } }
  @keyframes noise-anim-2 {
    0% {
      clip: rect(42px, 999px, 77px, 0); }
    5% {
      clip: rect(93px, 999px, 83px, 0); }
    10% {
      clip: rect(60px, 999px, 2px, 0); }
    15% {
      clip: rect(38px, 999px, 12px, 0); }
    20% {
      clip: rect(13px, 999px, 53px, 0); }
    25% {
      clip: rect(10px, 999px, 6px, 0); }
    30% {
      clip: rect(96px, 999px, 22px, 0); }
    35% {
      clip: rect(68px, 999px, 75px, 0); }
    40% {
      clip: rect(56px, 999px, 56px, 0); }
    45% {
      clip: rect(44px, 999px, 41px, 0); }
    50% {
      clip: rect(34px, 999px, 57px, 0); }
    55% {
      clip: rect(42px, 999px, 26px, 0); }
    60% {
      clip: rect(10px, 999px, 9px, 0); }
    65% {
      clip: rect(11px, 999px, 62px, 0); }
    70% {
      clip: rect(45px, 999px, 72px, 0); }
    75% {
      clip: rect(86px, 999px, 12px, 0); }
    80% {
      clip: rect(87px, 999px, 63px, 0); }
    85% {
      clip: rect(7px, 999px, 98px, 0); }
    90% {
      clip: rect(79px, 999px, 50px, 0); }
    95% {
      clip: rect(93px, 999px, 42px, 0); }
    100% {
      clip: rect(100px, 999px, 69px, 0); } }
  #recruit-page .glitch:before {
    content: attr(data-text);
    position: absolute;
    left: -1px;
    text-shadow: 1px 0 blue;
    top: 0;
    height: 100%;
    color: #F4D823;
    background: black;
    overflow: hidden;
    clip: rect(0, 900px, 0, 0);
    -webkit-animation: noise-anim-2 3s infinite linear alternate-reverse;
            animation: noise-anim-2 3s infinite linear alternate-reverse; } }

/*  contact page
========================================================= */
#company-page .article-img img {
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }

/*  contact page
========================================================= */
#contact-page h4 {
  font: bold 28px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin: 50px 0; }
  @media screen and (max-width: 767px) {
    #contact-page h4 {
      font: normal 22px/1.5 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
      #contact-page h4 + p {
        margin-top: 15px; } }
#contact-page form, #contact-page #mfp_confirm_table {
  width: 100%;
  border: 3px solid black;
  padding: 30px;
  background: white;
  margin-top: 70px;
  padding-bottom: 130px; }
  @media screen and (max-width: 767px) {
    #contact-page form, #contact-page #mfp_confirm_table {
      padding: 15px;
      padding-bottom: 70px; } }
#contact-page .form {
  margin-top: 60px; }
#contact-page #mfp_confirm_table {
  width: 100%;
  margin-top: 20px; }
  #contact-page #mfp_confirm_table th {
    width: 50%; }
    @media screen and (max-width: 959px) {
      #contact-page #mfp_confirm_table th {
        width: 100% !important; } }
#contact-page dl {
  display: table;
  width: inherit;
  margin: 0;
  width: 100%;
  padding: 20px 0;
  border-bottom: solid 1px #dfdfdf; }
  #contact-page dl:first-of-type {
    border-top: solid 1px #dfdfdf; }
  @media screen and (max-width: 767px) {
    #contact-page dl {
      display: block; } }
#contact-page dt, #contact-page dd {
  display: table-cell;
  padding: 0;
  border: none !important;
  font-size: 16px;
  text-align: left;
  vertical-align: middle; }
  @media screen and (max-width: 959px) {
    #contact-page dt, #contact-page dd {
      display: block; } }
@media screen and (min-width: 960px) {
  #contact-page dt {
    width: 300px; } }
@media screen and (max-width: 959px) {
  #contact-page dt {
    width: auto;
    padding-bottom: 10px;
    font-size: 16px !important; } }
#contact-page dt span.must {
  display: block;
  float: right;
  width: 35px;
  height: 18px;
  margin-top: 3px;
  background: black;
  color: #fff;
  font-size: 9px;
  text-align: center;
  line-height: 18px;
  text-indent: 0;
  border-radius: 2px; }
#contact-page #submit {
  margin-top: 30px;
  text-align: center; }
#contact-page #add {
  width: 100%; }
  #contact-page #add dl {
    border-top: none; }
#contact-page h3 {
  margin-bottom: 15px; }
#contact-page dd {
  padding-left: 20px; }
  @media screen and (max-width: 959px) {
    #contact-page dd {
      padding-left: 0; } }
  #contact-page dd dl {
    width: 100%;
    padding: 5px 0;
    border: none !important; }
    #contact-page dd dl:first-of-type {
      border-top: none; }
    #contact-page dd dl dt {
      width: 100px;
      padding-top: 10px; }
    @media screen and (max-width: 959px) {
      #contact-page dd dl {
        padding-left: 1em; }
        #contact-page dd dl dt, #contact-page dd dl dd {
          width: auto; } }
  #contact-page dd .mfp_err {
    clear: both;
    display: none;
    text-align: left;
    margin: 5px 0px 0px 0px;
    padding: 3px 0px 5px 17px;
    color: #f59c2b;
    font-size: 12px;
    line-height: normal;
    background-repeat: no-repeat;
    background-position: 0px center; }
  #contact-page dd input[type="text"], #contact-page dd input[type="tel"], #contact-page dd input[type="email"], #contact-page dd textarea {
    -webkit-appearance: none;
    width: 100% !important;
    padding: 10px;
    border: solid 1px #dfdfdf;
    background: #f5f5f5;
    border-radius: 2px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: 18px !important; }
  #contact-page dd #zip-code {
    width: 250px !important;
    margin-right: 10px; }
  #contact-page dd .custom {
    overflow: hidden;
    position: relative;
    width: 250px;
    border-radius: 2px;
    background: #f5f5f5;
    z-index: 10; }
    #contact-page dd .custom i {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      right: 10px; }
  #contact-page dd select {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    position: relative;
    border: solid 1px #dfdfdf;
    border-radius: 2px;
    height: 44px;
    padding: 11px 0 10px 15px;
    font-weight: 400;
    cursor: pointer;
    background: #f5f5f5;
    z-index: 15;
    vertical-align: middle;
    line-height: 24px;
    -webkit-appearance: button;
       -moz-appearance: button;
            appearance: button; }
  #contact-page dd input[type=radio], #contact-page dd input[type=checkbox] {
    display: none; }
  #contact-page dd .radio, #contact-page dd .checkbox {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    position: relative;
    display: block;
    padding: 15px 15px 15px 45px;
    border-radius: 2px;
    border: 1px solid #dfdfdf;
    background-color: #f5f5f5;
    vertical-align: middle;
    font-size: 16px;
    cursor: pointer; }
    @media screen and (max-width: 767px) {
      #contact-page dd .radio, #contact-page dd .checkbox {
        font-size: 18px; } }
    #contact-page dd .radio:hover:after, #contact-page dd .checkbox:hover:after {
      border-color: #F4D823; }
    #contact-page dd .radio:before, #contact-page dd .radio:after, #contact-page dd .checkbox:before, #contact-page dd .checkbox:after {
      display: block;
      position: absolute;
      top: 50%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      content: ''; }
    #contact-page dd .radio:before, #contact-page dd .checkbox:before {
      opacity: 0; }
    #contact-page dd .radio:after, #contact-page dd .checkbox:after {
      -webkit-transition: border-color 0.2s linear;
      transition: border-color 0.2s linear;
      left: 15px;
      margin-top: -10px;
      width: 20px;
      height: 20px;
      border: 2px solid #bbb;
      border-radius: 2px; }
    #contact-page dd .radio.mfp_checked:after, #contact-page dd .checkbox.mfp_checked:after {
      border-color: #F4D823; }
    #contact-page dd .radio.mfp_checked:before, #contact-page dd .checkbox.mfp_checked:before {
      opacity: 1; }
  #contact-page dd .radio:before {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    left: 21px;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #F4D823; }
  #contact-page dd .radio:after {
    border-radius: 100%; }
  #contact-page dd .checkbox:before {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    position: absolute;
    top: 50%;
    left: 21px;
    display: block;
    margin-top: -7px;
    width: 7px;
    height: 11px;
    border-right: 3px solid #F4D823;
    border-bottom: 3px solid #F4D823;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
  #contact-page dd ol {
    zoom: 1; }
    #contact-page dd ol:before, #contact-page dd ol:after {
      content: "";
      display: table;
      height: 0;
      visibility: hidden; }
    #contact-page dd ol:after {
      clear: both; }
  #contact-page dd li {
    float: left;
    width: 40%;
    padding: 5px 10px 5px 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    #contact-page dd li:last-child {
      width: 20%; }
    @media screen and (max-width: 959px) {
      #contact-page dd li {
        float: none;
        width: 100% !important;
        padding: 0 0 10px 0; }
        #contact-page dd li:last-child {
          padding-bottom: 0; } }
    #contact-page dd li input {
      margin-right: 5px;
      padding: 0;
      border: none;
      background: none; }
  #contact-page dd.tri .attention {
    text-indent: -14px;
    padding-left: 14px;
    margin-top: 10px;
    text-align: left; }
  #contact-page dd.tri > ol > li {
    width: 33%; }
    @media screen and (max-width: 959px) {
      #contact-page dd.tri > ol > li {
        width: auto; } }
    @media screen and (max-width: 1400px) and (min-width: 959px) {
      #contact-page dd.tri > ol > li {
        font-size: 16px; } }
    @media screen and (max-width: 767px) {
      #contact-page dd.tri > ol > li {
        font-size: 18px; } }
#contact-page #button, #contact-page .mfp_buttons {
  text-align: center; }
  @media screen and (min-width: 960px) {
    #contact-page #button, #contact-page .mfp_buttons {
      margin: 50px 180px 0; } }
  @media screen and (max-width: 959px) {
    #contact-page #button, #contact-page .mfp_buttons {
      margin-top: 50px; } }
  @media screen and (max-width: 767px) {
    #contact-page #button, #contact-page .mfp_buttons {
      margin-top: 0; } }
  #contact-page #button li, #contact-page .mfp_buttons li {
    width: 45%; }
    @media screen and (max-width: 767px) {
      #contact-page #button li, #contact-page .mfp_buttons li {
        float: none;
        width: 100%;
        margin-top: 30px; } }
  #contact-page #button button, #contact-page .mfp_buttons button {
    display: block;
    width: 100%;
    height: 60px;
    margin: 0;
    padding: 0;
    border: none;
    background: black;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 2px;
    cursor: pointer;
    color: #fff;
    font-size: 14px;
    text-align: center; }
    #contact-page #button button:hover, #contact-page .mfp_buttons button:hover {
      opacity: 0.8; }
#contact-page .mfp_buttons {
  padding: 0;
  zoom: 1; }
  #contact-page .mfp_buttons:before, #contact-page .mfp_buttons:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden; }
  #contact-page .mfp_buttons:after {
    clear: both; }
  #contact-page .mfp_buttons button {
    width: 45%; }
    @media screen and (max-width: 767px) {
      #contact-page .mfp_buttons button {
        width: 100%;
        margin-top: 30px; } }
  #contact-page .mfp_buttons #mfp_button_send {
    float: right; }
  #contact-page .mfp_buttons #mfp_button_cancel {
    float: left; }
#contact-page #mfp_confirm_table dt {
  padding-top: 0; }
#contact-page .thanks {
  text-align: center; }
  #contact-page .thanks h2, #contact-page .thanks div {
    -webkit-animation-delay: .5s;
            animation-delay: .5s; }
  #contact-page .thanks h2 {
    margin-bottom: 50px;
    padding: 0;
    border: none;
    font-size: 30px;
    font-weight: 700; }
    #contact-page .thanks h2:before, #contact-page .thanks h2:after {
      display: none; }
    @media screen and (max-width: 767px) {
      #contact-page .thanks h2 {
        margin-bottom: 30px;
        font-size: 22px; } }
  #contact-page .thanks p {
    margin-bottom: 1em;
    text-align: center;
    line-height: 2; }
  #contact-page .thanks .btn-link {
    padding-top: 80px; }
    @media screen and (max-width: 767px) {
      #contact-page .thanks .btn-link {
        padding-top: 40px; } }
#contact-page #mfp_phase_confirm h4 {
  font-size: 30px;
  text-align: center; }
  @media screen and (max-width: 767px) {
    #contact-page #mfp_phase_confirm h4 {
      font-size: 18px; } }

@media screen and (max-width: 767px) {
  form#mailformpro dl dd {
    padding-left: 0 !important;
    padding-right: 0 !important; } }

.p-form .mw_wp_form {
  font-family: YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
  .p-form .mw_wp_form .error-area {
    display: none;
    padding: 13px 13px 15px;
    margin-bottom: 60px;
    background: rgba(236, 24, 52, 0.1);
    border: 1px solid #ec1834;
    color: #ec1834;
    text-align: center; }
  .p-form .mw_wp_form.mw_wp_form_error .error-area {
    display: block; }
  .p-form .mw_wp_form .confilm-area {
    display: none;
    padding: 13px 13px 15px;
    margin-bottom: 60px;
    margin-top: 60px;
    background: rgba(18, 124, 179, 0.1);
    border: 1px solid #127CB3;
    color: #127CB3;
    text-align: center; }
  .p-form .mw_wp_form.mw_wp_form_confirm .confilm-area {
    display: block; }
  .p-form .mw_wp_form dl .error {
    display: inline-block;
    margin-top: 20px;
    margin-right: 8px;
    background: #ef2027;
    padding: 13px 13px 12px;
    color: white;
    border-radius: 5px; }
    .p-form .mw_wp_form dl .error + .error {
      left: 200px; }
  .p-form .mw_wp_form dl dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 10px 0px;
    padding: 10px 0px;
    /* border-bottom: 1px dotted #e5e5e5; */ }
    .p-form .mw_wp_form dl dl .mwform-radio-field {
      width: 100%; }
      @media screen and (max-width: 767px) {
        .p-form .mw_wp_form dl dl .mwform-radio-field {
          margin-left: 0; } }
    @media screen and (max-width: 959px) {
      .p-form .mw_wp_form dl dl {
        display: block; } }
  .p-form .mw_wp_form dd {
    position: relative;
    width: calc(100% - 350px); }
    @media screen and (max-width: 959px) {
      .p-form .mw_wp_form dd {
        width: 100%; } }
  .p-form .mw_wp_form dt {
    position: relative;
    font-size: 18px;
    padding-left: 10px;
    margin-bottom: 10px;
    line-height: 24px;
    text-align: left;
    /* border-bottom: 1px solid $bc; */ }
    .p-form .mw_wp_form dt:before {
      content: "";
      position: absolute;
      width: 3px;
      height: 24px;
      background: #F4D823;
      top: 25px;
      left: 0; }
      @media all and (-ms-high-contrast: none) {
        .p-form .mw_wp_form dt:before {
          content: none; } }
    .p-form .mw_wp_form dt span.must {
      display: inline-block;
      margin-left: 8px;
      padding: 5px 10px 6px;
      border-radius: 2px;
      border: 1px solid #F4D823;
      color: #F4D823;
      font-size: 14px;
      line-height: 1; }
  .p-form .mw_wp_form dd.flex-col4 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .p-form .mw_wp_form dd.flex-col4 > span:not(.error) {
      width: calc((100% - 30px)/4); }
      .p-form .mw_wp_form dd.flex-col4 > span:not(.error):nth-of-type(4) {
        padding-right: 0; }
      @media screen and (max-width: 959px) {
        .p-form .mw_wp_form dd.flex-col4 > span:not(.error) {
          width: 100%;
          padding-left: 0;
          margin: 0;
          margin-top: 8px; } }
  .p-form .mw_wp_form dd.flex-col2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .p-form .mw_wp_form dd.flex-col2 > span:not(.error) {
      width: calc((100% - 8px)/2); }
      .p-form .mw_wp_form dd.flex-col2 > span:not(.error):nth-of-type(2) {
        padding-right: 0; }
    .p-form .mw_wp_form dd.flex-col2 > input {
      width: calc((100% - 8px)/2);
      padding-right: 8px; }
      .p-form .mw_wp_form dd.flex-col2 > input:nth-of-type(2) {
        margin-right: 0; }
  .p-form .mw_wp_form .mwform-radio-field-text {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-transition: background-color 0.2s linear;
    transition: background-color 0.2s linear;
    position: relative;
    display: block;
    padding: 15px 15px 15px 45px;
    border-radius: 5px;
    border: 1px solid #dfdfdf;
    background-color: #f5f5f5;
    font-size: 16px !important;
    cursor: pointer; }
    .p-form .mw_wp_form .mwform-radio-field-text:before, .p-form .mw_wp_form .mwform-radio-field-text:after {
      display: block;
      position: absolute;
      top: 50%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      content: ''; }
    .p-form .mw_wp_form .mwform-radio-field-text:before {
      opacity: 0; }
    .p-form .mw_wp_form .mwform-radio-field-text:after {
      -webkit-transition: border-color 0.2s linear;
      transition: border-color 0.2s linear;
      left: 15px;
      margin-top: -10px;
      width: 20px;
      height: 20px;
      border: 2px solid #bbb;
      border-radius: 2px;
      background: white; }
    .p-form .mw_wp_form .mwform-radio-field-text:before {
      -webkit-transition: opacity 0.2s linear;
      transition: opacity 0.2s linear;
      left: 21px;
      margin-top: -4px;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background-color: #F4D823;
      z-index: 1; }
    .p-form .mw_wp_form .mwform-radio-field-text:after {
      border-radius: 100%; }
  .p-form .mw_wp_form .mwform-zip-field {
    max-width: 300px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .p-form .mw_wp_form .mwform-zip-field input {
      margin: 0 10px !important; }
  .p-form .mw_wp_form input[type=radio] {
    display: none; }
  .p-form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text:after {
    border-color: #F4D823; }
  .p-form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text:before {
    opacity: 1; }
  .p-form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text {
    background: #F4D823;
    color: white; }
  .p-form .mw_wp_form input[type=file] {
    margin-top: 20px; }
  .p-form .mw_wp_form input[type="text"], .p-form .mw_wp_form input[type="email"], .p-form .mw_wp_form input[type="url"], .p-form .mw_wp_form textarea {
    -webkit-appearance: none;
    width: 100%;
    padding: 8px 10px 10px;
    border: solid 2px #F4D823;
    background: white;
    border-radius: 5px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: 18px;
    height: 50px; }
    @media screen and (max-width: 959px) {
      .p-form .mw_wp_form input[type="text"], .p-form .mw_wp_form input[type="email"], .p-form .mw_wp_form input[type="url"], .p-form .mw_wp_form textarea {
        margin-top: 8px; } }
  .p-form .mw_wp_form textarea {
    height: 120px; }
    .p-form .mw_wp_form textarea::-webkit-input-placeholder {
      font-size: 14px; }
    .p-form .mw_wp_form textarea:-ms-input-placeholder {
      font-size: 14px; }
    .p-form .mw_wp_form textarea::-ms-input-placeholder {
      font-size: 14px; }
    .p-form .mw_wp_form textarea::placeholder {
      font-size: 14px; }
  .p-form .mw_wp_form #consultation {
    height: auto; }
  .p-form .mw_wp_form .mwform-tel-field {
    width: 100%; }
  .p-form .mw_wp_form .mwform-tel-field input[type="text"] {
    width: 120px; }
    @media screen and (max-width: 959px) {
      .p-form .mw_wp_form .mwform-tel-field input[type="text"] {
        width: calc((100% - 32px)/3); } }
  .p-form .mw_wp_form select {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    position: relative;
    width: 100%;
    height: 50px;
    padding: 11px 0 10px 15px;
    font-weight: normal;
    cursor: pointer;
    background: none;
    z-index: 1;
    line-height: 24px;
    border: none;
    -webkit-appearance: button;
       -moz-appearance: button;
            appearance: button;
    font-size: 18px !important;
    border: 2px solid #ddd;
    background-color: white;
    border-radius: 5px;
    background-color: #fafafa; }
.p-form .contact-policy {
  padding: 30px;
  border-radius: 5px;
  border: 1px solid #dfdfdf;
  background: #222; }
  .p-form .contact-policy .section {
    margin-top: 30px; }
  .p-form .contact-policy .section-title {
    position: relative;
    font-size: 18px;
    font-weight: bold;
    padding-left: 10px;
    line-height: 24px;
    border: 0; }
    .p-form .contact-policy .section-title:before {
      content: "";
      position: absolute;
      width: 3px;
      height: 24px;
      background: #E60012;
      top: 0;
      left: 0; }
    .p-form .contact-policy .section-title + .section-main {
      margin-top: 15px; }
  .p-form .contact-policy .inner {
    max-height: 200px;
    overflow-y: scroll; }
  @media screen and (max-width: 767px) {
    .p-form .contact-policy {
      padding: 15px; } }
  .p-form .contact-policy p {
    text-align: left;
    font: 100 14px/1.6 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
  .p-form .contact-policy h3 {
    font-size: 20px;
    margin: 40px 0 15px; }
  .p-form .contact-policy h2 {
    margin-top: 20px;
    font-size: 20px;
    font-weight: bold;
    text-decoration: underline; }
.p-form .button {
  text-align: center;
  margin-top: 100px; }
  @media screen and (max-width: 767px) {
    .p-form .button {
      margin-top: 30px; } }
.p-form input[type="submit"] {
  position: relative;
  background: #F4D823;
  color: white;
  border: 0;
  border-radius: 50px;
  padding: 20px;
  min-width: 365px;
  font: bold 1rem/1 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: center;
  cursor: pointer;
  -webkit-transition: background-color .15s ease, color .15s ease;
  transition: background-color .15s ease, color .15s ease; }
  @media screen and (max-width: 959px) {
    .p-form input[type="submit"] {
      padding: 15px 20px;
      min-width: 300px; } }
  .p-form input[type="submit"]:hover {
    background-color: #F4D823;
    color: white;
    opacity: .8; }
.p-form .btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media screen and (max-width: 959px) {
    .p-form .btns {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-flow: wrap-reverse;
              flex-flow: wrap-reverse; } }
@media screen and (min-width: 960px) {
  .p-form .mw_wp_form_confirm .btns .button:nth-of-type(1) {
    margin-right: 40px; } }
.p-form p + .mw_wp_form {
  margin-top: 50px; }
.p-form .address {
  padding: 15px; }
  .p-form .address dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-bottom: 20px; }
    @media screen and (max-width: 767px) {
      .p-form .address dl {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; } }
    .p-form .address dl dt {
      width: 20%;
      border: 0;
      margin-bottom: 0;
      padding: 0 0 0 10px; }
      .p-form .address dl dt:before {
        height: 100%;
        opacity: .6; }
      @media screen and (max-width: 767px) {
        .p-form .address dl dt {
          width: 100%;
          margin-bottom: 10px; }
          .p-form .address dl dt .error {
            margin-top: 0;
            margin-left: 10px;
            font-size: 13px;
            padding: 7px 10px 8px; } }
    .p-form .address dl dd {
      width: 80%; }
      .p-form .address dl dd input {
        margin: 0 !important; }
      @media screen and (max-width: 767px) {
        .p-form .address dl dd {
          width: 100%; } }
.p-form .col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 767px) {
    .p-form .col3 {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  .p-form .col3 .mwform-radio-field {
    width: 100%; }
    @media screen and (max-width: 767px) {
      .p-form .col3 .mwform-radio-field {
        margin-left: 0; } }
.p-form .error-area {
  display: none;
  padding: 13px 13px 15px;
  margin-bottom: 60px;
  background: rgba(236, 24, 52, 0.1);
  border: 1px solid #ec1834;
  color: #ec1834;
  text-align: center; }
.p-form.mw_wp_form_error .error-area {
  display: block; }
.p-form .confilm-area {
  display: none;
  padding: 13px 13px 15px;
  margin-bottom: 60px;
  margin-top: 60px;
  background: rgba(18, 124, 179, 0.1);
  border: 1px solid #127CB3;
  color: #127CB3;
  text-align: center; }
.p-form.mw_wp_form_confirm .confilm-area {
  display: block; }
.p-form .form-title {
  margin-top: 30px; }
  .p-form .form-title h3 {
    margin: 0 !important; }
.p-form .contact-tel dt {
  padding-bottom: 10px;
  border-bottom: 2px solid #666;
  font-size: 1.1em;
  font-weight: 600; }
.p-form .contact-tel dd span {
  color: #f59c2b;
  font-size: 2.5em;
  font-weight: 600; }
  @media screen and (max-width: 767px) {
    .p-form .contact-tel dd span {
      display: block; } }
  .p-form .contact-tel dd span i {
    margin-right: 5px;
    font-size: 0.8em; }
.p-form .step {
  display: table;
  table-layout: fixed;
  background: #fff; }
  .p-form .step .item {
    display: table-cell;
    width: 33.3333%;
    padding: 30px 30px 20px;
    vertical-align: top;
    border-right: 1px dashed #666;
    text-align: center; }
    .p-form .step .item:last-child {
      border-right: none; }
  @media screen and (max-width: 959px) {
    .p-form .step {
      display: block; }
      .p-form .step .item {
        display: block;
        width: 100%;
        border: none;
        border-bottom: 1px dashed #666; }
        .p-form .step .item:last-child {
          border: none; } }
  .p-form .step h4 {
    margin-bottom: 15px;
    color: #F4D823;
    font-size: 18px;
    font-weight: 600; }
    .p-form .step h4 span {
      display: block;
      width: 30px;
      margin: 0 auto 5px;
      background: #F4D823;
      color: black;
      font-size: 16px;
      line-height: 31px;
      border-radius: 15px; }
  .p-form .step i {
    display: block;
    margin: 0 auto 15px;
    color: #F4D823;
    font-size: 80px; }

.p-form dl {
  display: table;
  width: 100%;
  margin: 0px;
  padding: 20px 0px; }
  .p-form dl.policy dd {
    padding-left: 0 !important; }
  .p-form dl .error {
    display: inline-block;
    margin-top: 20px;
    margin-right: 8px;
    background: #ef2027;
    padding: 13px 13px 12px;
    color: white;
    border-radius: 5px; }
    .p-form dl .error + .error {
      left: 200px; }
  .p-form dl dt:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%); }
  .p-form dl dt {
    vertical-align: middle;
    color: black; }
  .p-form dl dt.num {
    position: relative;
    padding-left: 40px; }
    .p-form dl dt.num:before {
      content: "";
      display: block;
      width: 30px;
      height: 30px;
      background: #ef2027;
      border-radius: 15px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      left: 0;
      color: #fff;
      font-size: 16px;
      font-weight: bold;
      line-height: 28px;
      text-align: center;
      padding: 0 0 0 2px; }
      @media screen and (max-width: 959px) {
        .p-form dl dt.num:before {
          width: 26px;
          height: 26px;
          font-size: 14px;
          line-height: 24px;
          top: 35%;
          padding: 1px 0 0 0; } }
  .p-form dl p.red {
    color: red; }
  .p-form dl:nth-child(2) dt.num:before {
    content: "1"; }
  .p-form dl:nth-child(3) dt.num:before {
    content: "2"; }
  .p-form dl:nth-child(4) dt.num:before {
    content: "3"; }
  .p-form dl:nth-child(5) dt.num:before {
    content: "4"; }
  .p-form dl:nth-child(6) dt.num:before {
    content: "5"; }
  .p-form dl:nth-child(7) dt.num:before {
    content: "6"; }
  .p-form dl:nth-child(8) dt.num:before {
    content: "7"; }
  .p-form dl:nth-child(9) dt.num:before {
    content: "8"; }
  .p-form dl:nth-child(10) dt.num:before {
    content: "9"; }
  .p-form dl dd,
  .p-form dl dt {
    display: table-cell;
    font-size: 100%;
    text-align: left;
    padding: 0px;
    border-width: initial !important;
    border-style: none !important;
    border-color: initial !important;
    -o-border-image: initial !important;
       border-image: initial !important; }
    .p-form dl dd .must,
    .p-form dl dt .must {
      float: right;
      color: #F4D823 !important;
      border-color: #F4D823 !important; }
    @media screen and (max-width: 959px) {
      .p-form dl dd,
      .p-form dl dt {
        display: block;
        font-size: 16px !important; }
        .p-form dl dd .must,
        .p-form dl dt .must {
          font-size: 14px !important; } }
  .p-form dl dt {
    width: 300px;
    font-size: 16px !important;
    font-weight: 100; }
    @media screen and (max-width: 959px) {
      .p-form dl dt {
        width: 100%; } }
  .p-form dl dd {
    color: #333 !important;
    padding-left: 20px; }
    @media screen and (max-width: 959px) {
      .p-form dl dd {
        padding-left: 0 !important; } }
  .p-form dl.sub > dd {
    position: relative; }
    .p-form dl.sub > dd dl {
      padding: 10px 0;
      border: 0; }
      .p-form dl.sub > dd dl dt {
        width: 130px; }
        @media screen and (max-width: 959px) {
          .p-form dl.sub > dd dl dt {
            width: 100%; } }
.p-form input[type="number"], .p-form input[type="text"], .p-form input[type="email"], .p-form input[type="url"], .p-form input[type="tel"], .p-form textarea {
  -webkit-appearance: none;
  width: 100%;
  padding: 10px;
  border: solid 1px #ddd !important;
  background: #fafafa !important;
  color: black !important;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 18px !important;
  -webkit-transition: border-color .15s ease;
  transition: border-color .15s ease; }
  .p-form input[type="number"]:focus, .p-form input[type="text"]:focus, .p-form input[type="email"]:focus, .p-form input[type="url"]:focus, .p-form input[type="tel"]:focus, .p-form textarea:focus {
    border-color: #aaa !important; }
.p-form textarea::-webkit-input-placeholder {
  font-size: 16px !important;
  line-height: 1.6;
  opacity: 0.6;
  font-weight: normal; }
.p-form textarea:-ms-input-placeholder {
  font-size: 16px !important;
  line-height: 1.6;
  opacity: 0.6;
  font-weight: normal; }
.p-form textarea::-ms-input-placeholder {
  font-size: 16px !important;
  line-height: 1.6;
  opacity: 0.6;
  font-weight: normal; }
.p-form textarea::placeholder {
  font-size: 16px !important;
  line-height: 1.6;
  opacity: 0.6;
  font-weight: normal; }
.p-form input.short {
  width: 130px !important; }
  @media screen and (max-width: 959px) {
    .p-form input.short {
      width: 120px !important; } }
.p-form select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  width: 100%;
  height: 44px;
  padding: 11px 0 10px 15px;
  font-weight: normal;
  cursor: pointer;
  background: none;
  z-index: 0;
  line-height: 24px;
  border: none;
  -webkit-appearance: button;
     -moz-appearance: button;
          appearance: button;
  font-size: 18px !important;
  border: 1px solid #666;
  border-radius: 5px; }
.p-form input[type=radio], .p-form input[type=checkbox] {
  display: none; }
.p-form .mwform-checkbox-field-text,
.p-form .mwform-radio-field-text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  position: relative;
  display: block;
  padding: 15px 15px 15px 45px;
  border-radius: 5px;
  border: 1px solid #666;
  color: black;
  background-color: transparent !important;
  font-size: 16px !important;
  cursor: pointer; }
  .p-form .mwform-checkbox-field-text:before, .p-form .mwform-checkbox-field-text:after,
  .p-form .mwform-radio-field-text:before,
  .p-form .mwform-radio-field-text:after {
    display: block;
    position: absolute;
    top: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    content: ''; }
  .p-form .mwform-checkbox-field-text:before,
  .p-form .mwform-radio-field-text:before {
    opacity: 0; }
  .p-form .mwform-checkbox-field-text:after,
  .p-form .mwform-radio-field-text:after {
    -webkit-transition: border-color 0.2s linear;
    transition: border-color 0.2s linear;
    left: 15px;
    margin-top: -10px;
    width: 20px;
    height: 20px;
    border: 2px solid #bbb;
    border-radius: 2px;
    background: transparent; }
  .p-form .mwform-checkbox-field-text:before,
  .p-form .mwform-radio-field-text:before {
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
    left: 21px;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: white;
    z-index: 1; }
  .p-form .mwform-checkbox-field-text:after,
  .p-form .mwform-radio-field-text:after {
    border-radius: 100%; }
.p-form .mwform-checkbox-field-text:after {
  border-radius: 5px !important; }
@media screen and (max-width: 959px) {
  .p-form .mwform-checkbox-field,
  .p-form .mwform-radio-field {
    margin-top: 10px; } }
.p-form input[type=checkbox],
.p-form input[type=radio] {
  display: none; }
.p-form input[type=checkbox]:checked + .mwform-checkbox-field-text:after,
.p-form input[type=radio]:checked + .mwform-radio-field-text:after {
  border-color: white; }
.p-form input[type=checkbox]:checked + .mwform-checkbox-field-text:before,
.p-form input[type=radio]:checked + .mwform-radio-field-text:before {
  opacity: 1; }
.p-form input[type=file] {
  margin-top: 20px; }
.p-form .button {
  margin-top: 50px;
  border-radius: 50px; }
  @media screen and (max-width: 767px) {
    .p-form .button:first-of-type {
      margin-top: 15px; } }
.p-form .button input {
  display: block;
  width: 365px;
  border-radius: 50px;
  height: 60px;
  margin: 0 auto;
  padding: 0;
  border: none;
  background: #F4D823;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 50px;
  cursor: pointer;
  border: 1px solid white;
  color: #000000;
  font-size: 14px;
  letter-spacing: .08em;
  text-align: center;
  position: relative; }
  @media screen and (max-width: 959px) {
    .p-form .button input {
      max-width: 270px;
      width: 100%; } }
  .p-form .button input:hover {
    opacity: 0.8; }
  @media screen and (max-width: 767px) {
    .p-form .button input {
      width: 200px !important;
      min-width: 0;
      height: 50px;
      font-size: 14px; } }
.p-form .flex-c2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .p-form .flex-c2 > span:not(.error) {
    width: calc((100% - 8px)/2); }
    .p-form .flex-c2 > span:not(.error):nth-of-type(2) {
      padding-right: 0; }
  .p-form .flex-c2 > select, .p-form .flex-c2 > input {
    width: calc((100% - 8px)/2);
    padding-right: 8px; }
    .p-form .flex-c2 > select:nth-of-type(2), .p-form .flex-c2 > input:nth-of-type(2) {
      margin-right: 0; }
  @media screen and (max-width: 959px) {
    .p-form .flex-c2 {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .p-form .flex-c2 > input, .p-form .flex-c2 > span:not(.error) {
        width: 100%;
        padding: 0;
        margin-left: 0; } }

.p-form .mw_wp_form dt:before {
  top: 50% !important; }

.p-form .mw_wp_form dt:before {
  background: #f59c2b !important; }

.p-form .mw_wp_form dt span.must {
  background-color: #F4D823 !important;
  color: #000000 !important;
  font-weight: bold; }

.p-form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text {
  color: #f59c2b; }

.p-form .mw_wp_form input[type=radio]:checked + .mwform-radio-field-text:after {
  border-color: #f59c2b; }

.p-form .mw_wp_form .mwform-radio-field-text:before {
  background-color: #f59c2b; }

.p-form .mwform-checkbox-field-text:before, .p-form .mwform-radio-field-text:before {
  background-color: #f59c2b; }

.p-form input[type=checkbox]:checked + .mwform-checkbox-field-text:after, .p-form input[type=radio]:checked + .mwform-radio-field-text:after {
  border-color: #f59c2b; }

.p-form .mwform-checkbox-field-text, .p-form .mwform-radio-field-text {
  border-color: #ddd; }

.p-form__policy .wrapper {
  padding: 30px;
  background-color: #fafafa;
  border-radius: 10px; }
.p-form__policy .inner {
  max-height: 200px;
  overflow-y: scroll; }
  .p-form__policy .inner h3 {
    font: bold 20px/2 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
  .p-form__policy .inner h4 {
    margin-top: 20px;
    font: bold 16px/2 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
  .p-form__policy .inner p {
    font: normal 14px/2 YakuHanJP, "Noto Sans JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
  @media screen and (min-width: 768px) {
    .p-form__policy .inner h3 {
      font-size: 24px; }
    .p-form__policy .inner h4 {
      font-size: 20px; }
    .p-form__policy .inner p {
      font-size: 16px; }
    .p-form__policy .inner .c-dl dt:before {
      top: 13px !important; } }
.p-form__policy .box {
  margin-top: 10px; }

/*!
*  - v1.3
* Homepage: http://bqworks.com/slider-pro/
* Author: bqworks
* Author URL: http://bqworks.com/
*/
/* Core
--------------------------------------------------*/
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.wp-pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 50px;
  line-height: 1;
  text-align: center;
  font-size: 1rem; }
  .wp-pagenavi span, .wp-pagenavi a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 3em;
    height: 3em;
    margin: 0 2px;
    border: 3px solid #000;
    line-height: 1;
    font-family: "Raleway", serif; }
  .wp-pagenavi .current {
    border: 3px solid #000;
    background: #000;
    color: #fff; }
  .wp-pagenavi .extend {
    padding: 0; }
  .wp-pagenavi .first, .wp-pagenavi .last {
    width: auto;
    padding: 0 10px; }
  .wp-pagenavi .pages {
    width: auto;
    margin-right: 5px;
    border: none; }
  .wp-pagenavi a {
    background: #fff;
    text-decoration: none;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease; }
  .wp-pagenavi a:hover {
    background: #000;
    color: white; }

.p-grid, .p-grid--col1, .p-grid--pc-col1, .p-grid--sp-col1, .p-grid--col2, .p-grid--pc-col2, .p-grid--sp-col2, .p-grid--col3, .p-grid--pc-col3, .p-grid--sp-col3, .p-grid--col4, .p-grid--pc-col4, .p-grid--sp-col4, .p-grid--col5, .p-grid--pc-col5, .p-grid--sp-col5, .p-grid--col6, .p-grid--pc-col6, .p-grid--sp-col6, .p-grid--col7, .p-grid--pc-col7, .p-grid--sp-col7, .p-grid--col8, .p-grid--pc-col8, .p-grid--sp-col8, .p-grid--col9, .p-grid--pc-col9, .p-grid--sp-col9, .p-grid--col10, .p-grid--pc-col10, .p-grid--sp-col10 {
  /*********************************
  	各種基本定数の設定
  *********************************/
  /*********************************
  	各種スタイル
  *********************************/
  display: grid !important;
  -webkit-column-gap: 10px;
          column-gap: 10px;
  row-gap: 10px;
  /*********************************
  	念のためリセット
  *********************************/ }
  @media screen and (min-width: 768px) {
    .p-grid, .p-grid--col1, .p-grid--pc-col1, .p-grid--sp-col1, .p-grid--col2, .p-grid--pc-col2, .p-grid--sp-col2, .p-grid--col3, .p-grid--pc-col3, .p-grid--sp-col3, .p-grid--col4, .p-grid--pc-col4, .p-grid--sp-col4, .p-grid--col5, .p-grid--pc-col5, .p-grid--sp-col5, .p-grid--col6, .p-grid--pc-col6, .p-grid--sp-col6, .p-grid--col7, .p-grid--pc-col7, .p-grid--sp-col7, .p-grid--col8, .p-grid--pc-col8, .p-grid--sp-col8, .p-grid--col9, .p-grid--pc-col9, .p-grid--sp-col9, .p-grid--col10, .p-grid--pc-col10, .p-grid--sp-col10 {
      -webkit-column-gap: 20px;
              column-gap: 20px;
      row-gap: 20px; } }
  @media screen and (max-width: 767px) {
    .p-grid, .p-grid--col1, .p-grid--pc-col1, .p-grid--sp-col1, .p-grid--col2, .p-grid--pc-col2, .p-grid--sp-col2, .p-grid--col3, .p-grid--pc-col3, .p-grid--sp-col3, .p-grid--col4, .p-grid--pc-col4, .p-grid--sp-col4, .p-grid--col5, .p-grid--pc-col5, .p-grid--sp-col5, .p-grid--col6, .p-grid--pc-col6, .p-grid--sp-col6, .p-grid--col7, .p-grid--pc-col7, .p-grid--sp-col7, .p-grid--col8, .p-grid--pc-col8, .p-grid--sp-col8, .p-grid--col9, .p-grid--pc-col9, .p-grid--sp-col9, .p-grid--col10, .p-grid--pc-col10, .p-grid--sp-col10 {
      -webkit-column-gap: 10px;
              column-gap: 10px;
      row-gap: 10px; } }
  @media screen and (min-width: 768px) {
    .p-grid--gap-l {
      -webkit-column-gap: 50px;
              column-gap: 50px;
      row-gap: 50px; } }
  @media screen and (max-width: 767px) {
    .p-grid--gap-l {
      -webkit-column-gap: 30px;
              column-gap: 30px;
      row-gap: 30px; } }
  .p-grid--col1 {
    grid-template-columns: repeat(1, 1fr); }
  @media screen and (min-width: 768px) {
    .p-grid--pc-col1 {
      grid-template-columns: repeat(1, 1fr); } }
  @media screen and (max-width: 767px) {
    .p-grid--sp-col1 {
      grid-template-columns: repeat(1, 1fr); } }
  .p-grid--col2 {
    grid-template-columns: repeat(2, 1fr); }
  @media screen and (min-width: 768px) {
    .p-grid--pc-col2 {
      grid-template-columns: repeat(2, 1fr); } }
  @media screen and (max-width: 767px) {
    .p-grid--sp-col2 {
      grid-template-columns: repeat(2, 1fr); } }
  .p-grid--col3 {
    grid-template-columns: repeat(3, 1fr); }
  @media screen and (min-width: 768px) {
    .p-grid--pc-col3 {
      grid-template-columns: repeat(3, 1fr); } }
  @media screen and (max-width: 767px) {
    .p-grid--sp-col3 {
      grid-template-columns: repeat(3, 1fr); } }
  .p-grid--col4 {
    grid-template-columns: repeat(4, 1fr); }
  @media screen and (min-width: 768px) {
    .p-grid--pc-col4 {
      grid-template-columns: repeat(4, 1fr); } }
  @media screen and (max-width: 767px) {
    .p-grid--sp-col4 {
      grid-template-columns: repeat(4, 1fr); } }
  .p-grid--col5 {
    grid-template-columns: repeat(5, 1fr); }
  @media screen and (min-width: 768px) {
    .p-grid--pc-col5 {
      grid-template-columns: repeat(5, 1fr); } }
  @media screen and (max-width: 767px) {
    .p-grid--sp-col5 {
      grid-template-columns: repeat(5, 1fr); } }
  .p-grid--col6 {
    grid-template-columns: repeat(6, 1fr); }
  @media screen and (min-width: 768px) {
    .p-grid--pc-col6 {
      grid-template-columns: repeat(6, 1fr); } }
  @media screen and (max-width: 767px) {
    .p-grid--sp-col6 {
      grid-template-columns: repeat(6, 1fr); } }
  .p-grid--col7 {
    grid-template-columns: repeat(7, 1fr); }
  @media screen and (min-width: 768px) {
    .p-grid--pc-col7 {
      grid-template-columns: repeat(7, 1fr); } }
  @media screen and (max-width: 767px) {
    .p-grid--sp-col7 {
      grid-template-columns: repeat(7, 1fr); } }
  .p-grid--col8 {
    grid-template-columns: repeat(8, 1fr); }
  @media screen and (min-width: 768px) {
    .p-grid--pc-col8 {
      grid-template-columns: repeat(8, 1fr); } }
  @media screen and (max-width: 767px) {
    .p-grid--sp-col8 {
      grid-template-columns: repeat(8, 1fr); } }
  .p-grid--col9 {
    grid-template-columns: repeat(9, 1fr); }
  @media screen and (min-width: 768px) {
    .p-grid--pc-col9 {
      grid-template-columns: repeat(9, 1fr); } }
  @media screen and (max-width: 767px) {
    .p-grid--sp-col9 {
      grid-template-columns: repeat(9, 1fr); } }
  .p-grid--col10 {
    grid-template-columns: repeat(10, 1fr); }
  @media screen and (min-width: 768px) {
    .p-grid--pc-col10 {
      grid-template-columns: repeat(10, 1fr); } }
  @media screen and (max-width: 767px) {
    .p-grid--sp-col10 {
      grid-template-columns: repeat(10, 1fr); } }
  .p-grid img, .p-grid--col1 img, .p-grid--pc-col1 img, .p-grid--sp-col1 img, .p-grid--col2 img, .p-grid--pc-col2 img, .p-grid--sp-col2 img, .p-grid--col3 img, .p-grid--pc-col3 img, .p-grid--sp-col3 img, .p-grid--col4 img, .p-grid--pc-col4 img, .p-grid--sp-col4 img, .p-grid--col5 img, .p-grid--pc-col5 img, .p-grid--sp-col5 img, .p-grid--col6 img, .p-grid--pc-col6 img, .p-grid--sp-col6 img, .p-grid--col7 img, .p-grid--pc-col7 img, .p-grid--sp-col7 img, .p-grid--col8 img, .p-grid--pc-col8 img, .p-grid--sp-col8 img, .p-grid--col9 img, .p-grid--pc-col9 img, .p-grid--sp-col9 img, .p-grid--col10 img, .p-grid--pc-col10 img, .p-grid--sp-col10 img {
    max-width: 100%; }

@media print {
  * html body {
    zoom: .7; } }

/*# sourceMappingURL=style.css.map */