@charset "UTF-8";
/**
 * Custom media queries
 * @example
 * @media (--mobile) {
 *    styles for mobile viewport
 * }
 */
/**
 * for mobile viewoport
 */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}
/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}
/**
 * Render the `main` element consistently in IE.
 */
main {
  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
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}
/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}
/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}
/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}
/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}
/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}
/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}
/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}
/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}
/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}
/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}
/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}
/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}
/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}
/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}
/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}
/**
 * Swiper 6.5.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2021 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: April 5, 2021
 */
@font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA') format('woff');font-weight:400;font-style:normal}
:root{--swiper-theme-color:#007aff}
.swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}
.swiper-container-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}
.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform, -webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}
.swiper-container-android .swiper-slide,.swiper-wrapper{-webkit-transform:translate3d(0px,0,0);transform:translate3d(0px,0,0)}
.swiper-container-multirow>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}
.swiper-container-multirow-column>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}
.swiper-container-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}
.swiper-container-pointer-events{-ms-touch-action:pan-y;touch-action:pan-y}
.swiper-container-pointer-events.swiper-container-vertical{-ms-touch-action:pan-x;touch-action:pan-x}
.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform, -webkit-transform}
.swiper-slide-invisible-blank{visibility:hidden}
.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}
.swiper-container-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:height,-webkit-transform;transition-property:transform,height;transition-property:transform,height,-webkit-transform}
.swiper-container-3d{-webkit-perspective:1200px;perspective:1200px}
.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}
.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}
.swiper-container-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top, left top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,0)));background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}
.swiper-container-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top, right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,0)));background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}
.swiper-container-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom, left top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,0)));background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}
.swiper-container-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top, left bottom,from(rgba(0,0,0,.5)),to(rgba(0,0,0,0)));background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}
.swiper-container-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}
.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}
.swiper-container-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}
.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper{-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}
.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper{-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory}
.swiper-container-fade.swiper-container-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out}
.swiper-container-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;transition-property:opacity}
.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}
.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}
/**
 * for tablet and Pc. large viewport
 */
/** http://bourbon.io/docs/#timing-functions */
/** example @include transition(all 5s $ease-in-circ);*/
/**
transition timing-function:
ease - cubic-bezier(0.25, 0.1, 0.25, 1.0) を指定したのと同じ（開始と完了を滑らかにする）（初期値）
linear - cubic-bezier(0.0, 0.0, 1.0, 1.0) を指定したのと同じ（一定）
ease-in - cubic-bezier(0.42, 0, 1.0, 1.0) を指定したのと同じ（ゆっくり始まる）
ease-out - cubic-bezier(0, 0, 0.58, 1.0) を指定したのと同じ（ゆっくり終わる）
ease-in-out - cubic-bezier(0.42, 0, 0.58, 1.0) を指定したのと同じ（ゆっくり始まってゆっくり終わる）
*/
/**
 * text ellipsis for block multiline
 */
/*
 unsupport IE, Edge, Fx

@mixin text-ellipsis-block($rows) {
  display: box;
  box-orient: vertical;
  line-clamp: $rows;
  overflow: hidden;
}
*/
/**
 * element size
 */
/**
 * position layout
 */
/**
 * images
 */
/**
* Variables
*/
/** extend */
@-webkit-keyframes scroll-bar {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left; }
  10% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left; }
  50% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: left;
            transform-origin: left; }
  51% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: right;
            transform-origin: right; }
  90% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: right;
            transform-origin: right; }
  100% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: right;
            transform-origin: right; } }
@keyframes scroll-bar {
  0% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left; }
  10% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left; }
  50% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: left;
            transform-origin: left; }
  51% {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
    -webkit-transform-origin: right;
            transform-origin: right; }
  90% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: right;
            transform-origin: right; }
  100% {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: right;
            transform-origin: right; } }
@-webkit-keyframes easeOutElastic {
  0% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%); }
  16% {
    -webkit-transform: translateX(-132.27%);
            transform: translateX(-132.27%); }
  28% {
    -webkit-transform: translateX(-86.88%);
            transform: translateX(-86.88%); }
  44% {
    -webkit-transform: translateX(-104.63%);
            transform: translateX(-104.63%); }
  59% {
    -webkit-transform: translateX(-98.36%);
            transform: translateX(-98.36%); }
  73% {
    -webkit-transform: translateX(-100.58%);
            transform: translateX(-100.58%); }
  88% {
    -webkit-transform: translateX(-99.8%);
            transform: translateX(-99.8%); }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); } }
@keyframes easeOutElastic {
  0% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%); }
  16% {
    -webkit-transform: translateX(-132.27%);
            transform: translateX(-132.27%); }
  28% {
    -webkit-transform: translateX(-86.88%);
            transform: translateX(-86.88%); }
  44% {
    -webkit-transform: translateX(-104.63%);
            transform: translateX(-104.63%); }
  59% {
    -webkit-transform: translateX(-98.36%);
            transform: translateX(-98.36%); }
  73% {
    -webkit-transform: translateX(-100.58%);
            transform: translateX(-100.58%); }
  88% {
    -webkit-transform: translateX(-99.8%);
            transform: translateX(-99.8%); }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%); } }
/* == @import "../node_modules/normalize.css/normalize.css"; */
[v-cloak] {
  display: none; }
html {
  font-size: 62.5%; }
body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: 0;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt"; }
a {
  color: inherit;
  text-decoration: none; }
*, *:before, *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
h1, h2, h3, h4, h5, h6, div, dl, dt, dd, p {
  margin: 0;
  padding: 0; }
ul, ol, li {
  padding: 0;
  margin: 0; }
li {
  list-style: none; }
img {
  vertical-align: bottom;
  max-width: 100%; }
figure {
  margin: 0;
  padding: 0; }
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0; }
input[type="number"] {
  -moz-appearance: textfield; }
.l-main {
  line-height: 1.2; }
.l-footer {
  background-color: #fff;
  position: relative; }
.l-footer::before {
    content: "";
    display: block;
    width: 100%;
    background-color: #646464;
    position: absolute;
    left: 0;
    top: 0; }
.l-footer__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    font-size: 1.2rem; }
.l-header {
  z-index: 3001;
  background-color: #fff;
  position: relative;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0; }
.l-header__content {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
/**
 * main.scss
 */
.p-business-list__content {
  position: relative;
  z-index: 10; }
.p-casting-sec__head {
  border: 1px solid #000;
  vertical-align: top; }
.p-casting-sec__head span {
    position: relative;
    display: block;
    padding-left: 25px;
    margin: 10px 0;
    line-height: 30px; }
.p-casting-sec__head span::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 10px;
      height: 100%;
      background-color: #dc0012; }
.p-casting-sec__head.-is-bg-black {
    background-color: #000;
    color: #fff; }
.p-casting-sec__head.-is-bg-black span {
      font-weight: 700; }
.p-casting-sec__head.-is-bg-black span::before {
        visibility: hidden; }
.p-casting-sec__lead-pic img {
  width: 100%; }
.p-casting-sec__lead-dsc {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  font-size: 1.6rem;
  line-height: 1.8; }
.p-casting-sec__merit-list {
  width: 100%; }
.p-casting-sec__merit-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
.p-casting-sec__merit-num {
  font-weight: 900;
  line-height: .85;
  color: #646464;
  position: relative;
  top: -5px; }
.p-casting-sec__merit-head {
  line-height: 1.16667;
  color: #dc0012; }
.p-casting-sec__merit-dsc {
  line-height: 1.8; }
.p-casting-sec__boxs-item {
  line-height: 1.875;
  letter-spacing: 0.05em;
  border: 1px solid #000;
  border-top: 5px solid #000; }
.p-casting-sec__boxs-text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
.p-casting-sec__boxs-btn {
  margin-top: auto; }
.p-casting-sec__boxs-head {
  line-height: 1.16667;
  font-weight: 500;
  color: #dc0012;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
.p-casting-sec__boxs-head-num {
  text-align: center;
  color: #000;
  font-weight: 400;
  line-height: 0.9;
  letter-spacing: 0; }
.p-casting-sec__boxs-head-num span {
    font-weight: 700;
    line-height: 1;
    display: block; }
.p-casting-sec__boxs-pic img {
  width: 100%; }
.p-casting-sec__boxs-figs ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
.p-casting-sec__boxs-figs li {
  display: block; }
.p-casting-sec__boxs-figs figcaption {
  margin-top: 10px; }
.p-casting-sec__boxs-figs img {
  width: 100%; }
.p-casting-sec__work-fig {
  text-align: center; }
.p-casting-sec__work-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
.p-casting-sec__work-item figcaption {
  text-align: center; }
.p-casting-sec__work-item figcaption dt {
    line-height: 2.5; }
.p-casting-sec__work-item figcaption dd {
    line-height: 1.81818;
    border-top: 1px solid #000;
    padding-top: 7px; }
.p-casting-sec__work-text-col span {
  color: #dc0012;
  margin-right: 10px; }
.p-casting-sec__flow-row {
  width: 100%; }
.p-casting-sec__flow-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
.p-casting-sec__flow-tag {
  line-height: 1;
  font-weight: 900;
  color: #646464; }
.p-casting-sec__flow-num {
  font-weight: 900;
  color: #646464; }
.p-casting-sec__flow-ttl {
  font-weight: 500;
  color: #dc0012;
  border: 1px solid #000; }
.p-casting-sec__flow-btn-item {
  background-color: #dc0012;
  width: 100%;
  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;
  color: #fff;
  vertical-align: bottom; }
.p-casting-sec__flow-btn-item::after {
    content: "";
    display: block;
    width: 75px;
    height: 20px;
    background-image: url("../images/common/bottom-contact-arr.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 20px;
    position: relative;
    top: 3px; }
.p-casting-sec__flow-dsc {
  letter-spacing: 0.05em; }
.p-contact-body .mw_wp_form_complete {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.6;
  max-width: 760px;
  margin: 0 auto 100px; }
.p-contact-sec__head {
  border: 1px solid #000;
  vertical-align: top; }
.p-contact-sec__head span {
    position: relative;
    display: block;
    padding-left: 25px;
    margin: 10px 0;
    line-height: 30px; }
.p-contact-sec__head span::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 10px;
      height: 100%;
      background-color: #dc0012; }
.p-contact-tel__list {
  text-align: center; }
.p-contact-tel__head {
  display: inline-block;
  vertical-align: top;
  padding-top: 10px; }
.p-contact-tel__num {
  display: inline-block;
  font-weight: 700;
  margin-left: 10px; }
.p-contact-form {
  background-color: #f0f0f0; }
.p-contact-form__content {
    margin: 0 auto; }
.p-contact-form__item {
    width: 100%; }
.p-contact-form__item dt {
      font-weight: 700; }
.p-contact-form__item dd {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
.p-contact-form__item .error {
      display: block !important;
      font-size: 1.2rem !important;
      margin-top: 0.5em; }
.p-contact-form__input {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background: #fff;
    border: none;
    outline: none;
    padding: 0;
    margin: 0;
    width: 100%; }
.p-contact-form__text {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background: #fff;
    border: none;
    outline: none;
    margin: 0;
    width: 100%;
    padding: 10px 20px; }
.p-contact-form__check-list {
    padding-top: 4px; }
.p-contact-form__check-list .horizontal-item {
      font-weight: 700;
      margin-left: 0 !important;
      display: block; }
.p-contact-form__check-list .horizontal-item input {
        display: none; }
.p-contact-form__check-list .horizontal-item .mwform-checkbox-field-text {
        font-weight: 700;
        padding-left: 45px;
        position: relative; }
.p-contact-form__check-list .horizontal-item .mwform-checkbox-field-text::before {
          content: "";
          display: block;
          width: 25px;
          height: 25px;
          background-color: #fff;
          position: absolute;
          top: 50%;
          left: 0;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%); }
.p-contact-form__check-list .horizontal-item .mwform-checkbox-field-text::after {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          left: 3px;
          -webkit-transform: translateY(-85%) rotate(-45deg);
                  transform: translateY(-85%) rotate(-45deg);
          width: 20px;
          height: 13px;
          border-left: 4px solid #dc0012;
          border-bottom: 4px solid #dc0012;
          opacity: 0;
          -webkit-transition: opacity .2s ease;
          transition: opacity .2s ease; }
.p-contact-form__check-list .horizontal-item input:checked + .mwform-checkbox-field-text::after {
        opacity: 1; }
.p-contact-form__privacy {
    text-align: center; }
.p-contact-form__privacy-dsc {
    font-weight: 700;
    line-height: 1.875; }
.p-contact-form__privacy-dsc a {
      color: #036eae; }
.p-contact-form__privacy-dsc a:hover {
        text-decoration: underline; }
.p-contact-form__label {
    background-color: #e5e5e6;
    width: 100%;
    padding: 20px 0;
    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;
    font-size: 1.2rem; }
.p-contact-form__label-inner {
    position: relative; }
.p-contact-form__label-inner br {
      display: none; }
.p-contact-form__label-inner input {
      display: none; }
.p-contact-form__label-inner .mwform-checkbox-field-text {
      position: relative; }
.p-contact-form__label-inner .mwform-checkbox-field-text::before {
        content: "";
        display: block;
        width: 25px;
        height: 25px;
        background-color: #fff;
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%); }
.p-contact-form__label-inner .mwform-checkbox-field-text::after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        left: 3px;
        -webkit-transform: translateY(-85%) rotate(-45deg);
                transform: translateY(-85%) rotate(-45deg);
        width: 20px;
        height: 13px;
        border-left: 4px solid #dc0012;
        border-bottom: 4px solid #dc0012;
        opacity: 0;
        -webkit-transition: opacity .2s ease;
        transition: opacity .2s ease; }
.p-contact-form__label-inner input:checked + .mwform-checkbox-field-text::after {
      opacity: 1; }
.p-contact-form__btn {
    display: block; }
.p-contact-form__btn-item {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    border: none;
    background-image: none;
    cursor: pointer;
    width: 100%;
    height: 60px;
    color: #fff;
    letter-spacing: 10px;
    background: #646464;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease; }
.p-contact-form__btn-item:hover {
      opacity: .9; }
.p-home-mv {
  width: 100%;
  position: relative; }
.p-home-mv__inner {
    height: 100%; }
.p-home-mv__content {
    position: relative;
    height: 100%; }
.p-home-mv__slider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1; }
.p-home-mv__slider-item {
    width: 100%;
    height: 100%;
    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: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    z-index: 0; }
.p-home-mv__slider-item-bg {
    display: none;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
.p-home-mv__head {
    line-height: 1;
    color: #fff;
    margin-top: -5%; }
.p-home-mv__head-sub {
    color: #fff;
    display: block; }
.p-home-mv__scroll {
    position: absolute;
    color: #fff;
    -webkit-transform-origin: right top;
            transform-origin: right top;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg); }
.p-home-mv__scroll::before {
      content: "";
      display: block;
      height: 2px;
      background-color: #fff;
      position: absolute;
      top: 50%;
      right: 0;
      -webkit-animation: scroll-bar 2.5s ease-out infinite;
              animation: scroll-bar 2.5s ease-out infinite; }
.p-home-concept {
  background-color: #eee;
  position: relative;
  z-index: 0; }
.p-home-concept__inner {
    height: 100%;
    position: relative; }
.p-home-concept__content {
    height: 100%; }
.p-home-concept__deco {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    overflow: hidden; }
.p-home-concept__deco-item {
    position: absolute;
    left: 0;
    font-weight: 900;
    color: #fff;
    -webkit-transition: -webkit-transform .1s ease;
    transition: -webkit-transform .1s ease;
    transition: transform .1s ease;
    transition: transform .1s ease, -webkit-transform .1s ease; }
.p-home-concept__box {
    position: absolute;
    right: 0; }
.p-home-concept__box-text {
    background-image: url("../images/home/concept-box-bg.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
.p-home-concept__box-head {
    line-height: 1;
    color: #fff; }
.p-home-concept__box-dsc {
    color: #fff; }
.p-home-concept__box-btn {
    color: #fff;
    background-color: #000;
    display: block; }
.p-home-concept__box-btn-link {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
.p-home-concept__box-btn-txt {
    display: inline-block; }
.p-home-business {
  background-color: #eee; }
.p-home-business__head {
    background-color: #dc0012;
    overflow: hidden; }
.p-home-business__head-ttl {
    color: #fff;
    line-height: 0.9;
    position: relative; }
.p-home-business__body {
    position: relative; }
.p-home-business__content {
    position: relative;
    z-index: 10; }
.p-home-business__deco {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 0; }
.p-home-business__banner {
    text-align: center; }
.p-home-news__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
.p-home-news__btn {
  display: block;
  background-color: #000; }
.p-home-news__btn-link {
  width: 100%;
  height: 100%;
  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; }
.p-home-news__main {
  width: 100%;
  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-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }
.p-home-news__ttl {
  line-height: 0.8; }
.p-home-news__list-item:first-of-type {
  padding-top: 0; }
.p-home-news__list-item:last-of-type {
  padding-bottom: 0; }
.p-home-news__list-item + .p-home-news__list-item {
  border-top: 1px solid #000; }
.p-home-news__list-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.6rem;
  line-height: 1.6; }
.p-home-news__topics-head {
  line-height: 1;
  letter-spacing: 0; }
.p-home-news__topics-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%; }
.p-home-works {
  background-color: #000; }
.p-home-works__head {
    overflow: hidden;
    max-width: 1400px;
    margin: 0 auto; }
.p-home-works__head-item {
    line-height: 0.9;
    color: #fff; }
.p-home-works__item-thum {
    position: relative;
    overflow: hidden; }
.p-home-works__item-thum::before {
      content: "";
      display: block;
      width: 100%;
      padding-top: calc(460%/700*100); }
.p-home-works__item-thum img {
      position: absolute;
      width: auto;
      height: auto;
      min-width: 100%;
      min-height: 100%;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
.p-home-works__item-ttl {
    color: #fff; }
.p-home-works__item-ttl-item {
    line-height: 1.25;
    font-weight: 700;
    margin-left: 10px; }
.p-home-works__btn {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
.p-home-works__btn-item {
    background-color: #fff;
    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; }
.p-home-works__btn-head {
    font-weight: 700;
    color: #dc0012;
    font-weight: 700; }
.p-recruit-body__none-info {
  text-align: center;
  font-size: 1.8rem;
  line-height: 2;
  padding-bottom: 100px; }
.p-recruit-sec__head {
  border: 1px solid #000;
  vertical-align: top;
  text-align: center; }
.p-recruit-sec__head span {
    position: relative;
    display: block;
    padding-left: 25px;
    margin: 10px 0;
    line-height: 30px; }
.p-recruit-sec__head span::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 10px;
      height: 100%;
      background-color: #dc0012; }
.p-recruit-sec__head.-is-bg-black {
    background-color: #000;
    color: #fff; }
.p-recruit-sec__head.-is-bg-black span {
      font-weight: 700; }
.p-recruit-sec__head.-is-bg-black span::before {
        visibility: hidden; }
.p-recruit-sec__body {
  background-color: #f0f0f0; }
.p-recruit-sec__item {
  font-size: 1.3rem;
  line-height: 1.84615; }
.p-recruit-sec__item-row {
  width: 100%; }
.p-recruit-sec__item-head {
  color: #fff;
  background-color: #646464;
  border-top: 1px solid #454545; }
.p-recruit-sec__item-body {
  background-color: #fff;
  border-top: 1px solid #afafaf; }
.p-recruit-sec__item-row:last-of-type .p-recruit-sec__item-body {
    border-bottom: 1px solid #afafaf; }
.p-recruit-sec__item-body.-is-other {
    min-height: 160px; }
.p-recruit-sec__item-body a {
    color: #dc0012;
    font-weight: 700; }
.p-targetmedia-box {
  position: relative;
  background-color: #000; }
.p-targetmedia-box__thum {
    width: 100%; }
.p-targetmedia-box__tag {
    background-color: #dc0012;
    position: absolute;
    top: 0;
    left: 0;
    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;
    color: #fff;
    line-height: 1.4; }
.p-targetmedia-box__text {
    color: #fff; }
.p-targetmedia-box__ttl {
    line-height: 1.8; }
.p-targetmedia-box__dsc {
    letter-spacing: 0.04em;
    line-height: 1.8; }
.p-targetmedia-box__pic {
    margin-top: 20px;
    text-align: center; }
.p-targetmedia-box__pic img {
      max-width: 100%; }
.p-targetmedia-acc__btn {
  display: block;
  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%;
  height: 50px;
  background-color: #fff;
  border: 1px solid #dc0012;
  color: #dc0012;
  letter-spacing: 0.1em; }
.p-targetmedia-acc__btn span {
    position: relative; }
.p-targetmedia-acc__btn span::before {
      content: "";
      display: block;
      width: 10px;
      height: 10px;
      border-bottom: 2px solid #dc0012;
      border-right: 2px solid #dc0012;
      position: absolute;
      top: 50%;
      right: -30px;
      -webkit-transform-origin: center;
              transform-origin: center;
      -webkit-transition: border-color .2s ease, -webkit-transform .2s ease;
      transition: border-color .2s ease, -webkit-transform .2s ease;
      transition: transform .2s ease, border-color .2s ease;
      transition: transform .2s ease, border-color .2s ease, -webkit-transform .2s ease;
      -webkit-transform: translateY(-70%) rotate(45deg);
              transform: translateY(-70%) rotate(45deg); }
.p-targetmedia-acc__btn.js-is-open span::before {
    -webkit-transform: translateY(-30%) rotate(-135deg);
            transform: translateY(-30%) rotate(-135deg); }
.p-targetmedia-acc__content {
  display: none; }
.p-targetmedia-acc__sec-head {
  border: 1px solid #000;
  vertical-align: top; }
.p-targetmedia-acc__sec-head span {
    position: relative;
    display: block;
    padding-left: 25px;
    margin: 10px 0;
    line-height: 30px; }
.p-targetmedia-acc__sec-head span::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 10px;
      height: 100%;
      background-color: #dc0012; }
.p-targetmedia-acc__point-row {
  width: 100%; }
.p-targetmedia-acc__point-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
.p-targetmedia-acc__point-tag {
  font-weight: 700;
  line-height: 1; }
.p-targetmedia-acc__point-ttl {
  font-weight: 500;
  border: 1px solid #000; }
.p-targetmedia-acc__point-dsc {
  letter-spacing: 0.05em; }
.p-targetmedia-acc__fig {
  background-color: #eee; }
.p-targetmedia-acc__fig-item {
  width: 100%; }
.p-targetmedia-acc__fig-text {
  background-color: #fff;
  line-height: 1.875; }
.p-targetmedia-acc__text-dl-row {
  width: 100%;
  line-height: 1.8; }
.p-targetmedia-acc__text-dl-row dd {
    color: #dc0012; }
.p-targetmedia-acc__text-fig {
  width: 100%; }
.p-targetmedia-acc__text-fig img, .p-targetmedia-acc__text-fig video {
    width: auto;
    display: block;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    max-width: 700px; }
.p-targetmedia-acc__text-fig figcaption {
    line-height: 1.875; }
.p-targetmedia-acc__boxs-item {
  line-height: 1.875;
  letter-spacing: 0.05em;
  border: 1px solid #000;
  border-top: 5px solid #000; }
.p-targetmedia-acc__boxs-item + .p-targetmedia-acc__boxs-item {
    margin-top: 30px; }
.p-targetmedia-acc__boxs-item h4 {
    line-height: 1.16667;
    font-weight: 700;
    color: #dc0012; }
.p-targetmedia-acc__html {
  padding-top: 85px;
  padding-bottom: 85px; }
.p-targetmedia-acc__html iframe, .p-targetmedia-acc__html video {
    margin: 0 auto;
    max-width: 100%;
    display: block; }
.p-targetmedia-contact {
  background-image: url("../images/targetmedia/contact-bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }
.p-targetmedia-contact__box {
    max-width: 650px;
    margin: 0 auto;
    background-color: #fff;
    background-color: #dcdddd; }
.p-targetmedia-contact__dsc {
    line-height: 1.66667;
    font-weight: 700;
    text-align: center; }
.p-targetmedia-contact__btn {
    color: #fff;
    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;
    background-color: #323232;
    overflow: hidden;
    position: relative; }
.p-targetmedia-contact__btn::before {
      content: "";
      display: block;
      background-color: #646464;
      width: 60%;
      height: 400%;
      position: absolute;
      top: 50%;
      left: 50%;
      z-index: 0;
      -webkit-transform: translateY(-50%) rotate(30deg);
              transform: translateY(-50%) rotate(30deg);
      -webkit-transform-origin: left center;
              transform-origin: left center; }
.p-targetmedia-contact__btn::after {
      content: "";
      display: block;
      background-color: #646464;
      width: 60%;
      height: 400%;
      position: absolute;
      top: 50%;
      right: 110%;
      z-index: 0;
      -webkit-transform: translateY(-50%) rotate(30deg);
              transform: translateY(-50%) rotate(30deg);
      -webkit-transform-origin: right center;
              transform-origin: right center; }
.p-targetmedia-contact__btn-text {
    text-align: center;
    font-weight: 700;
    position: relative;
    z-index: 1; }
.p-targetmedia-contact__btn-text::before {
      content: "";
      display: block;
      background-image: url("../images/common/icon-btn-arr.png");
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
      position: absolute;
      bottom: 0;
      -webkit-transform: translateX(100%);
              transform: translateX(100%); }
.p-targetmedia-contact__btn-small {
    display: block;
    font-weight: 400;
    margin-top: 5px;
    position: relative;
    z-index: 1; }
.p-work-detail-head {
  text-align: center; }
.p-work-detail-head__tag {
    font-weight: 400;
    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;
    margin: 0 auto;
    color: #fff; }
.p-work-detail-head__tag.-is-red {
      background-color: #dc0012; }
.p-work-detail-head__tag.-is-blue {
      background-color: #0096df; }
.p-work-detail-head__tag.-is-green {
      background-color: #85b91f; }
.p-work-detail-head__tag.-is-black {
      background-color: #000; }
.p-work-detail-head__tag.-is-gray {
      background-color: #646464; }
.p-work-detail-head__tag.-is-orange {
      background-color: #ee9e0a; }
.p-work-detail-head__date {
    font-size: 1.4rem;
    font-weight: 400;
    margin-top: 23px; }
.p-work-detail-head__ttl {
    font-weight: 700; }
.p-work-detail-head__name {
    border-top: 1px dotted #000; }
.p-work-detail-article__content {
  line-height: 2; }
.p-work-detail-article__slider .swiper-pagination {
  display: block;
  height: 20px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
.p-work-detail-article__slider .swiper-pagination-bullet {
  display: block;
  background-color: #9fa0a0;
  -webkit-transition: background-color .3s ease;
  transition: background-color .3s ease; }
.p-work-detail-article__slider .swiper-pagination-bullet-active {
  background-color: #231815; }
.p-work-detail-article__slider-item {
  width: 100%;
  position: relative; }
.p-work-detail-article__slider-item::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 56.25%; }
.p-work-detail-article__slider-item img, .p-work-detail-article__slider-item video {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%; }
.p-work-detail-article__pager {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%; }
.p-work-detail-article__pager-btn {
  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: 180px;
  height: 50px;
  text-align: center;
  color: #333;
  border: 1px solid #333;
  position: relative; }
.p-work-detail-article__pager-btn::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg); }
.p-work-detail-article__pager-btn.-is-prev {
    margin-right: auto; }
.p-work-detail-article__pager-btn.-is-prev::before {
      left: 25px;
      border-bottom: 2px solid #333;
      border-left: 2px solid #333; }
.p-work-detail-article__pager-btn.-is-next {
    margin-left: auto; }
.p-work-detail-article__pager-btn.-is-next::before {
      right: 25px;
      border-top: 2px solid #333;
      border-right: 2px solid #333; }
.p-work-list-nav {
  background-color: #000;
  overflow: hidden; }
.p-work-list-nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
.p-work-list-nav__item {
    color: #fff; }
.p-work-list-nav__item.-is-red {
      background-color: #dc0012; }
.p-work-list-nav__item.-is-blue {
      background-color: #0096df; }
.p-work-list-nav__item.-is-green {
      background-color: #85b91f; }
.p-work-list-nav__item.-is-black {
      background-color: #000; }
.p-work-list-nav__item.-is-gray {
      background-color: #646464; }
.p-work-list-nav__item.-is-orange {
      background-color: #ee9e0a; }
.p-work-list-nav__item.-is-white {
      background-color: #fff;
      color: #dc0012; }
.p-work-list-nav__link {
    display: inline-block;
    text-align: center;
    width: 100%; }
.p-work-list-nav__item-big {
    display: block;
    line-height: 1; }
.p-work-list-nav__item-small {
    display: block;
    position: relative;
    line-height: 1; }
.p-work-list-nav__item-small::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #fff; }
.p-work-list-nav__item.-is-white .p-work-list-nav__item-small::before {
        background-color: #dc0012; }
.p-work-list-article__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
.p-work-list-article__item-thum {
  position: relative;
  overflow: hidden; }
.p-work-list-article__item-thum::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 65.71429%; }
.p-work-list-article__item-thum img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: auto;
    height: auto;
    min-height: 100%;
    min-width: 100%; }
.p-work-list-article__item-tag {
  color: #fff; }
.p-work-list-article__item-tag.-is-red {
    background-color: #dc0012; }
.p-work-list-article__item-tag.-is-blue {
    background-color: #0096df; }
.p-work-list-article__item-tag.-is-green {
    background-color: #85b91f; }
.p-work-list-article__item-tag.-is-black {
    background-color: #000; }
.p-work-list-article__item-tag.-is-gray {
    background-color: #646464; }
.p-work-list-article__item-tag.-is-orange {
    background-color: #ee9e0a; }
.p-work-list-article__item-ttl {
  text-align: center;
  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;
  overflow: hidden; }
.p-work-list-article__item-ttl span {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical; }
.p-work-list-article__item-name {
  text-align: center;
  border-top: 1px dotted #000; }
.c-bottom-contact {
  background-color: #dc0012;
  color: #fff; }
.c-bottom-contact__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
.c-bottom-contact__ttl {
    text-align: center; }
.c-bottom-contact__ttl-en {
    text-align: center;
    line-height: 1; }
.c-bottom-contact__dsc {
    text-align: center;
    position: relative; }
.c-bottom-contact__dsc::before {
      content: "";
      display: block;
      background-image: url("../images/common/icon-btn-arr.png");
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
      position: absolute;
      right: 0; }
.c-btn {
  background-color: #dc0012;
  width: 100%;
  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;
  color: #fff;
  vertical-align: bottom; }
.c-btn span {
    position: relative; }
.c-btn span::after {
      content: "";
      display: block;
      width: 75px;
      height: 20px;
      background-image: url("../images/common/bottom-contact-arr.png");
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center;
      margin-left: 20px;
      position: absolute;
      bottom: 0;
      right: 0;
      -webkit-transform: translateX(140%);
              transform: translateX(140%); }
.c-business-card {
  width: 100%;
  z-index: 0; }
.c-business-card__img {
    position: relative;
    width: 55%;
    z-index: 0;
    overflow: hidden; }
.c-business-card__img::before {
      content: "";
      display: block;
      width: 100%;
      padding-top: 66.666%; }
.c-business-card__img img {
      min-width: 100%;
      min-height: 100%;
      max-width: initial;
      max-height: 100%;
      width: auto;
      height: auto;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
@supports ((-o-object-fit: cover) or (object-fit: cover)) {
      .c-business-card__img img {
        -o-object-fit: cover;
           object-fit: cover;
        width: 100%;
        height: 100%; } }
.c-business-card__text {
    position: relative;
    width: 55%;
    margin-left: auto;
    margin-top: -23%;
    z-index: 10; }
.c-business-card__text::before {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background-color: #fff;
      opacity: 0.7;
      z-index: -1; }
.c-business-card__text::after {
      content: "";
      display: block;
      background-image: url("../images/common/business-card-deco.png");
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat;
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
              transform: translate(-50%, 0); }
.c-business-card__ttl {
    text-align: center;
    line-height: 1.15;
    font-weight: 700; }
.c-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
.c-google-maps {
  position: relative;
  padding-bottom: 75%;
  height: 0;
  overflow: hidden; }
.c-google-maps iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important; }
.c-pagetop {
  background-image: url("../images/common/pagetop-bg.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }
.c-pagetop.-is-work {
    background-image: url("../images/common/pagetop-bg-work.jpg"); }
.c-pagetop.-is-company {
    background-image: url("../images/common/pagetop-bg-company.jpg"); }
.c-pagetop.-is-recruit {
    background-image: url("../images/common/pagetop-bg-recruit.jpg"); }
.c-pagetop__content {
    width: 100%;
    color: #fff; }
.c-pagetop__ttl {
    line-height: 1; }
.c-pagetop__ttl-sub {
    display: block;
    font-weight: 400; }
.c-pagination {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 5rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 13px; }
.c-pagination li {
    display: block;
    width: 26px;
    height: 26px;
    margin: 0 7px; }
.c-pagination li:not(.c-pagination__prev):not(.c-pagination__next) {
      border: 1px solid #333; }
.c-pagination a {
    display: block;
    width: 100%;
    height: 100%;
    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;
    text-align: center; }
.c-pagination a:not([href]) {
      background-color: #333;
      color: #fff; }
.c-parts-tag {
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1;
  min-width: 70px;
  vertical-align: middle;
  color: #fff;
  text-align: center;
  background-color: #000; }
.c-parts-tag.-is-red {
    background-color: #dc0012; }
.c-parts-tag.-is-blue {
    background-color: #0096df; }
.c-parts-tag.-is-green {
    background-color: #85b91f; }
.c-parts-tag.-is-black {
    background-color: #000; }
.c-parts-tag.-is-gray {
    background-color: #646464; }
.c-parts-tag.-is-orange {
    background-color: #ee9e0a; }
.c-section {
  width: 100%; }
.c-section__head-ttl {
    line-height: 1.05; }
.c-section__head-ttl span {
      color: #dc0012; }
.c-section__head-sub {
    font-weight: 500; }
.c-section__body-thum.-is-map {
    position: relative;
    margin-bottom: 0; }
.c-section__body-thum.-is-map::before {
      content: "";
      display: block;
      width: 100%;
      padding-top: 56.8%; }
.c-section__body-thum.-is-map iframe {
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%; }
.c-section__body-ttl {
    letter-spacing: 0.05em; }
.c-section__body-ttl span {
      color: #dc0012; }
.c-section__body-ttl-sub {
    letter-spacing: 0.05em;
    line-height: 1.65;
    font-weight: 700;
    margin-top: 10px; }
.c-section__body-ttl-sub span {
      color: #dc0012; }
.c-section__body-dsc {
    letter-spacing: 0.05em;
    line-height: 1.8; }
.c-section__body-dsc li:not(:first-of-type) {
      margin-top: 1em; }
.c-section__body-dsc.-is-pl-0 {
      padding-left: 0; }
.c-section__body-name-en {
    font-weight: 700;
    letter-spacing: -0.05em; }
.c-section__body-name-en span {
      color: #dc0012; }
.c-section__body-name-jp {
    font-weight: 700;
    letter-spacing: 0; }
.c-section__body-name-jp span {
      color: #dc0012; }
.c-section-dl {
  line-height: 1.9375; }
.c-section-dl__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%; }
.c-section-dl__row:not(:first-of-type) {
      border-top: 1px solid #000; }
.c-section-dl__dt {
    font-weight: 700;
    color: #dc0012; }
.c-section-dl__dd {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
.c-section-dl__table-row {
    width: 100%; }
.c-section-links {
  font-size: 1.5rem;
  line-height: 25px; }
.c-section-links a {
    text-decoration: underline; }
.c-section-links__item {
    position: relative; }
.c-section-links__item::before {
      content: "";
      display: block;
      position: absolute;
      top: 3px;
      left: 0;
      width: 6px;
      height: 20px;
      background-color: #dc0012; }
.c-section-links__item + .c-section-links__item {
      margin-top: 25px; }
.c-section-links__dd li {
    display: inline-block;
    margin: 0 5px; }
/**
* wordpress
* WYSIWYG compatchble style
*/
.c-wp-post_article strong {
  font-weight: bold; }
.c-wp-post_article em {
  font-style: italic; }
.c-wp-post_article ul {
  margin-left: 1em;
  display: block;
  list-style-type: disc !important;
  margin-before: 1em;
  margin-after: 1em;
  margin-start: 0px;
  margin-end: 0px;
  padding-start: 40px; }
.c-wp-post_article ol {
  display: block;
  list-style-type: decimal !important;
  margin-before: 1em;
  margin-after: 1em;
  margin-start: 0px;
  margin-end: 0px;
  padding-start: 40px; }
.c-wp-post_article li {
  display: list-item;
  text-align: match-parent; }
.c-wp-post_article img {
  width: auto; }
.c-wp-post_article .alignleft {
  display: inline;
  float: left; }
.c-wp-post_article .alignright {
  display: inline;
  float: right; }
.c-wp-post_article .aligncenter {
  display: block;
  margin-right: auto;
  margin-left: auto; }
.c-wp-post_article blockquote.alignleft,
.c-wp-post_article .wp-caption.alignleft,
.c-wp-post_article img.alignleft {
  margin: 0.4em 1.6em 1.6em 0; }
.c-wp-post_article blockquote.alignright,
.c-wp-post_article .wp-caption.alignright,
.c-wp-post_article img.alignright {
  margin: 0.4em 0 1.6em 1.6em; }
.c-wp-post_article blockquote.aligncenter,
.c-wp-post_article .wp-caption.aligncenter,
.c-wp-post_article img.aligncenter {
  clear: both;
  margin-top: 0.4em;
  margin-bottom: 1.6em; }
.c-wp-post_article .wp-caption.alignleft,
.c-wp-post_article .wp-caption.alignright,
.c-wp-post_article .wp-caption.aligncenter {
  margin-bottom: 1.2em; }
.color-red {
  color: #dc0012; }
.font-bold {
  font-weight: bold; }
.u-fit-h {
  height: 100%; }
.u-fit-w {
  width: 100%; }
/**
 * clearfix micro
 */
.clearfix:after {
  content: "";
  clear: both;
  display: block; }
/**
 * text ellipsis., text...
 */
.text-ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }
.u-hide {
  display: none; }
.u-click {
  cursor: pointer; }
/**
 * BrowserSync
 */
#__bs_notify__ {
  display: none !important;
  font-size: 8px !important;
  opacity: .25;
  max-height: 50px; }
.__debug_mihon__ {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0 auto 0 auto;
  z-index: 100000;
  pointer-events: none;
  cursor: none;
  width: 100%;
  overflow: hidden;
  text-align: center;
  -webkit-animation: __debug_mihon__ 1s infinite;
          animation: __debug_mihon__ 1s infinite; }
.__debug_mihon__ {
  padding-top: 0px;
  margin-top: 0px; }
@-webkit-keyframes __debug_mihon__ {
  0% {
    opacity: 0; }
  60% {
    opacity: .5; }
  100% {
    opacity: .5; } }
/*
@example
 <div class="mihon">
  <img src="./images/sample1.png" alt="" class="type_pc">
  <img src="./images/sample2.png" alt="" class="type_sp">
</div>
*/
@media (min-width: 768px) {
  .ex-link {
    opacity: 1;
    -webkit-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear; }
    .ex-link:hover {
      opacity: .5; }
    body {
      min-width: 1200px; }
      .l-footer::before {
        height: 15px; }
    .l-footer {
      padding: 63px 70px 80px; }
    .l-footer__inner {
      max-width: 1130px;
      margin-left: auto;
      margin-right: auto; }
    .l-footer__logo {
      height: 66px; }
    .l-footer__nav {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      font-size: 1.2rem;
      line-height: 1.91667; }
    .l-footer__nav-col + .l-footer__nav-col {
      margin-left: 56px; }
    .l-footer__nav-row.-is-mb-l {
      margin-bottom: 60px; }
    .l-footer__nav-row.-is-mb-m {
      margin-bottom: 20px; }
    .l-footer__nav-head {
      font-weight: 700; }
    .l-footer__nav-body {
      padding-left: 0.5em; }
    .l-header {
      padding: 25px 95px 25px 45px; }
    .l-header__logo {
      height: 66px; }
    .l-header__nav-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
    .l-header__nav-item {
      font-size: 1.6rem;
      line-height: 1;
      font-weight: 700; }
      .l-header__nav-item + .l-header__nav-item {
        margin-left: 75px; }
  .l-main {
    padding-top: 116px; }
  .p-business-lead__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-business-lead__content {
    padding: 100px 0 67px; }
  .p-business-list__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
    .p-business-list__content {
      padding: 35px 0 100px; }
  .p-business-list__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .p-business-list__item {
    width: calc(50% - 19px); }
    .p-business-list__item:nth-of-type(even) {
      margin-left: 38px; }
    .p-business-list__item:not(:nth-of-type(-n + 2)) {
      margin-top: 75px; }
  .p-casting-lead__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-casting-lead__content {
    padding: 100px 0 67px; }
  .p-casting-sec__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
    .p-casting-sec__head {
      font-size: 2rem; }
        .p-casting-sec__head.-is-bg-black span {
          font-size: 2.5rem; }
  .p-casting-sec__lead {
    padding-bottom: 86px; }
    .p-casting-sec__lead-dsc {
      margin-top: 51px; }
  .p-casting-sec__merit {
    padding-top: 45px;
    padding-bottom: 104px; }
    .p-casting-sec__merit-list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
    .p-casting-sec__merit-item {
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      width: 50%;
      padding: 45px 30px 50px; }
      .p-casting-sec__merit-item:nth-of-type(odd) {
        padding-left: 0; }
      .p-casting-sec__merit-item:nth-of-type(even) {
        border-left: 1px solid #000; }
      .p-casting-sec__merit-item:not(:nth-of-type(-n + 2)) {
        border-top: 1px solid #000; }
    .p-casting-sec__merit-num {
      font-size: 10.5rem; }
  .p-casting-sec__merit-text {
    margin-left: 25px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .p-casting-sec__merit-head {
      font-size: 3rem; }
    .p-casting-sec__merit-dsc {
      font-size: 1.6rem;
      margin-top: 20px; }
  .p-casting-sec__boxs {
    padding-top: 48px;
    padding-bottom: 150px; }
    .p-casting-sec__boxs-item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      font-size: 1.6rem;
      padding: 30px 30px 30px 27px; }
    .p-casting-sec__boxs-item + .p-casting-sec__boxs-item {
      margin-top: 50px; }
    .p-casting-sec__boxs-text p, .p-casting-sec__boxs-text ul {
      padding-bottom: 1.8em; }
    .p-casting-sec__boxs-head {
      font-size: 3rem;
      margin-bottom: 30px;
      margin-left: 30px; }
    .p-casting-sec__boxs-head-num {
      font-size: 10.3rem; }
      .p-casting-sec__boxs-head-num span {
        font-size: 1.8rem; }
  .p-casting-sec__boxs-head-text {
    margin-left: 30px; }
  .p-casting-sec__boxs-pic {
    width: 480px;
    margin-left: 68px; }
  .p-casting-sec__boxs-figs {
    width: 480px;
    margin-left: 68px; }
    .p-casting-sec__boxs-figs li {
      font-size: 1.4rem;
      width: calc(50% - 39px); }
    .p-casting-sec__boxs-figs li:nth-of-type(even) {
      margin-left: 78px; }
    .p-casting-sec__boxs-figs li:not(:nth-of-type(-n + 2)) {
      margin-top: 20px; }
  .p-casting-sec__work {
    padding-top: 27px;
    padding-bottom: 149px; }
    .p-casting-sec__work-fig {
      margin-bottom: 47px; }
    .p-casting-sec__work-fig figcaption {
      margin-bottom: 46px; }
  .p-casting-sec__work-item {
    width: calc(25% - (58px * 3)/4); }
    .p-casting-sec__work-item:not(:nth-of-type(4n + 1)) {
      margin-left: 58px; }
    .p-casting-sec__work-item:not(:nth-of-type(-n + 4)) {
      margin-top: 46px; }
      .p-casting-sec__work-item figcaption dt {
        font-size: 1.6rem; }
      .p-casting-sec__work-item figcaption dd {
        font-size: 1.1rem; }
  .p-casting-sec__work-btn {
    margin-top: 54px; }
  .p-casting-sec__work-text {
    font-size: 1.6rem;
    margin-top: 67px;
    line-height: 2.5; }
  .p-casting-sec__work-text-row {
    width: 100%; }
  .p-casting-sec__work-text-col {
    display: inline-block; }
    .p-casting-sec__work-text-col + .p-casting-sec__work-text-col {
      margin-left: 170px; }
  .p-casting-sec__work-text-col dt {
    display: inline-block;
    vertical-align: top; }
  .p-casting-sec__work-text-col dd {
    margin-left: 40px;
    display: inline-block; }
  .p-casting-sec__flow {
    padding-top: 85px;
    padding-bottom: 85px; }
    .p-casting-sec__flow-row {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; }
    .p-casting-sec__flow-row + .p-casting-sec__flow-row {
      margin-top: 55px; }
    .p-casting-sec__flow-head {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      width: 283px;
      margin-left: 45px;
      vertical-align: top; }
    .p-casting-sec__flow-tag {
      font-size: 3.2rem; }
    .p-casting-sec__flow-num {
      font-size: 10rem;
      line-height: 0.83;
      margin-left: 36px;
      position: relative;
      top: -8px; }
  .p-casting-sec__flow-body {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .p-casting-sec__flow-ttl {
      font-size: 3rem;
      letter-spacing: 0.07em;
      padding: 21px 30px; }
  .p-casting-sec__flow-btn {
    margin-top: 75px; }
    .p-casting-sec__flow-btn-item {
      height: 94px;
      font-size: 2.5rem; }
    .p-casting-sec__flow-dsc {
      margin-top: 17px;
      font-size: 1.6rem;
      line-height: 2.5; }
  .p-company {
    padding-bottom: 100px; }
  .p-company-lead__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-company-lead__content {
    padding-top: 100px; }
  .p-company-outline {
    margin-top: 100px; }
  .p-company-outline__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-company-map {
    margin-top: 90px; }
  .p-company-map + .p-company-map {
    margin-top: 55px; }
  .p-company-map__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-contact-lead__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-contact-lead__content {
    padding: 100px 0 67px; }
  .p-contact-sec__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
    .p-contact-sec__head {
      font-size: 2rem; }
  .p-contact-tel {
    padding: 44px 0 56px; }
  .p-contact-tel__item {
    display: inline-block; }
    .p-contact-tel__item + .p-contact-tel__item {
      margin-left: 150px; }
    .p-contact-tel__head {
      font-size: 1.6rem; }
    .p-contact-tel__num {
      font-size: 3rem; }
    .p-contact-form {
      padding: 55px 0 70px; }
      .p-contact-form__content {
        width: 910px; }
      .p-contact-form__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
      .p-contact-form__item + .p-contact-form__item {
        margin-top: 30px; }
        .p-contact-form__item dt {
          width: 200px; }
          .p-contact-form__item dt.-is-top {
            -ms-flex-item-align: start;
                align-self: flex-start;
            padding-top: 5px; }
      .p-contact-form__input {
        padding: 5px 20px;
        height: 60px; }
      .p-contact-form__check-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        width: 100%; }
        .p-contact-form__check-list .horizontal-item {
          width: 50%;
          font-size: 1.6rem; }
          .p-contact-form__check-list .horizontal-item:not(:nth-of-type(-n + 2)) {
            margin-top: 26px; }
        .p-contact-form__check-list .horizontal-item label:hover .mwform-checkbox-field-text::after {
          opacity: 1; }
      .p-contact-form__privacy {
        margin-top: 54px; }
      .p-contact-form__privacy-dsc {
        font-size: 1.6rem; }
      .p-contact-form__label {
        margin-top: 25px; }
        .p-contact-form__label-inner .mwform-checkbox-field-text {
          padding-left: 45px; }
      .p-contact-form__label-inner label:hover .mwform-checkbox-field-text::after {
        opacity: 1; }
      .p-contact-form__btn {
        margin-top: 73px; }
      .p-contact-form__btn-item {
        font-size: 2rem; }
    .p-home-mv {
      height: 600px; }
      .p-home-mv__inner {
        max-width: 1130px;
        margin-left: auto;
        margin-right: auto; }
      .p-home-mv__slider-item-bg.-is-pc {
        display: block; }
      .p-home-mv__head {
        font-size: 9rem;
        margin-left: calc(50vw - 565px); }
      .p-home-mv__head-sub {
        font-size: 1.66rem;
        padding-left: 0.5em;
        margin-top: 20px; }
      .p-home-mv__scroll {
        color: #fff;
        font-weight: 900;
        font-size: 250;
        width: 142px;
        font-size: 1.2rem;
        right: 67px;
        bottom: 63px; }
        .p-home-mv__scroll::before {
          width: 32px; }
    .p-home-concept {
      height: 600px; }
      .p-home-concept__inner {
        max-width: 1130px;
        margin-left: auto;
        margin-right: auto; }
      .p-home-concept__deco-item {
        font-size: 30rem;
        bottom: 90px;
        left: 10%; }
      .p-home-concept__box {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: stretch;
            -ms-flex-align: stretch;
                align-items: stretch;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
        width: 850px;
        top: -60px; }
    .p-home-concept__box-text {
      padding: 34px 40px 40px;
      width: 700px; }
      .p-home-concept__box-head {
        font-size: 4.5rem; }
      .p-home-concept__box-dsc {
        font-size: 1.4rem;
        margin-top: 35px;
        line-height: 1.8; }
      .p-home-concept__box-btn {
        width: 150px; }
      .p-home-concept__box-btn-link {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
      .p-home-concept__box-btn-txt {
        font-size: 2.2rem;
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg); }
      .p-home-business__head {
        padding-bottom: 58px; }
      .p-home-business__head-ttl {
        font-size: 10.8rem;
        top: -14px; }
    .p-home-business__inner {
      max-width: 1130px;
      margin-left: auto;
      margin-right: auto; }
    .p-home-business__inner.-is-wide {
      max-width: 1400px; }
      .p-home-business__content {
        padding: 100px 0; }
    .p-home-business__deco-item {
      position: absolute;
      z-index: -1;
      top: 0;
      left: 50%;
      -webkit-transform-origin: left bottom;
              transform-origin: left bottom;
      pointer-events: none;
      color: #fff;
      font-weight: 900;
      font-size: 40rem;
      font-weight: 900;
      line-height: 0.9;
      letter-spacing: 0; }
      .p-home-business__deco-item span {
        display: block;
        -webkit-transition: .1s linear;
        transition: .1s linear; }
      .p-home-business__deco-item.-is-1 {
        -webkit-transform: translate(-360px, -100%) rotate(90deg);
                transform: translate(-360px, -100%) rotate(90deg); }
      .p-home-business__deco-item.-is-2 {
        -webkit-transform: translateY(-100%) rotate(90deg);
                transform: translateY(-100%) rotate(90deg); }
    .p-home-business__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
    .p-home-business__list-item {
      width: calc(50% - 19px); }
      .p-home-business__list-item:nth-of-type(even) {
        margin-left: 38px; }
      .p-home-business__list-item:not(:nth-of-type(-n + 2)) {
        margin-top: 75px; }
      .p-home-business__banner {
        margin-top: 50px; }
  .p-home-news {
    padding: 160px 0 148px; }
  .p-home-news__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
    .p-home-news__btn {
      width: 170px; }
  .p-home-news__btn-text {
    display: inline-block;
    color: #fff;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
    font-size: 2rem;
    letter-spacing: 0.1em; }
    .p-home-news__ttl {
      font-size: 11rem; }
  .p-home-news__list {
    margin-top: 66px; }
  .p-home-news__list-item {
    padding: 22px 0; }
  .p-home-news__list-time {
    width: 120px; }
  .p-home-news__list-tag {
    width: 170px; }
  .p-home-news__list-ttl {
    width: 210px;
    -webkit-transition: color .2s ease;
    transition: color .2s ease; }
    .p-home-news__list-link:hover .p-home-news__list-ttl {
      color: #dc0012;
      text-decoration: underline; }
  .p-home-news__topics {
    width: 900px;
    margin-top: 18px; }
    .p-home-news__topics-head {
      font-size: 4.8rem; }
  .p-home-news__topics-body {
    margin-top: 30px; }
    .p-home-news__topics-row + .p-home-news__topics-row {
      margin-top: 25px; }
  .p-home-news__topics-item a {
    -webkit-transition: opacity .2s ease;
    transition: opacity .2s ease; }
    .p-home-news__topics-item a:hover {
      opacity: .7; }
  .p-home-news__topics-row.-is-2col .p-home-news__topics-item {
    width: calc(50% - 15px); }
    .p-home-news__topics-row.-is-2col .p-home-news__topics-item:nth-of-type(even) {
      margin-left: 30px; }
    .p-home-news__topics-row.-is-2col .p-home-news__topics-item:not(:nth-of-type(-n + 2)) {
      margin-top: 20px; }
  .p-home-news__topics-row.-is-4col .p-home-news__topics-item {
    width: calc(25% - (30px / 4)); }
    .p-home-news__topics-row.-is-4col .p-home-news__topics-item:not(:nth-of-type(4n + 1)) {
      margin-left: 10px; }
    .p-home-news__topics-row.-is-4col .p-home-news__topics-item:not(:nth-of-type(-n + 4)) {
      margin-top: 10px; }
      .p-home-works__head-item {
        font-size: 11rem;
        margin-top: -15px; }
    .p-home-works__inner {
      max-width: 1130px;
      margin-left: auto;
      margin-right: auto; }
    .p-home-works__content {
      padding-bottom: 85px;
      margin-top: 134px; }
    .p-home-works__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
    .p-home-works__item {
      width: calc(33.333% - (72px / 3)); }
      .p-home-works__item:not(:nth-of-type(3n + 1)) {
        margin-left: 36px; }
      .p-home-works__item:not(:nth-of-type(-n + 3)) {
        margin-top: 60px; }
      .p-home-works__item a img {
        -webkit-transition: opacity .2s ease;
        transition: opacity .2s ease; }
      .p-home-works__item a:hover img {
        opacity: .8; }
      .p-home-works__item-ttl {
        margin-top: 20px; }
      .p-home-works__item-ttl-item {
        font-size: 1.6rem; }
        .p-home-works__item a:hover .p-home-works__item-ttl-item {
          text-decoration: underline; }
      .p-home-works__btn {
        margin-top: 110px; }
      .p-home-works__btn-item {
        width: 310px;
        height: 66px;
        -webkit-transition: background-color .2s ease;
        transition: background-color .2s ease; }
        .p-home-works__btn-item:hover {
          background-color: #dc0012; }
      .p-home-works__btn-head {
        font-size: 3rem;
        -webkit-transition: color .2s ease;
        transition: color .2s ease; }
        .p-home-works__btn-item:hover .p-home-works__btn-head {
          color: #fff; }
  .p-privacy__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-privacy__content {
    padding: 100px 0 80px; }
  .p-recruit-lead__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-recruit-lead__content {
    padding-top: 100px; }
  .p-recruit-body {
    margin-top: 80px; }
    .p-recruit-body__none-info {
      max-width: 1130px;
      margin-left: auto;
      margin-right: auto; }
  .p-recruit-sec__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
    .p-recruit-sec__head {
      font-size: 2rem; }
        .p-recruit-sec__head.-is-bg-black span {
          font-size: 2.5rem; }
    .p-recruit-sec__body {
      padding: 50px 0 100px; }
    .p-recruit-sec__item-row {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
    .p-recruit-sec__item-row:last-of-type .p-recruit-sec__item-head {
      border-bottom: 1px solid #454545; }
    .p-recruit-sec__item-head {
      width: 150px;
      padding: 15px 28px; }
    .p-recruit-sec__item-body {
      padding: 15px;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
      .p-recruit-sec__item-body a:hover {
        text-decoration: underline; }
  .p-sitemap__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-sitemap__content {
    padding: 100px 0 80px; }
  .p-targetmedia-lead__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-targetmedia-lead__content {
    padding: 100px 0 67px; }
  .p-targetmedia-body__item {
    margin-bottom: 150px; }
    .p-targetmedia-box {
      padding-top: 50px; }
      .p-targetmedia-box__tag {
        width: 200px;
        height: 200px;
        font-size: 2.5rem; }
      .p-targetmedia-box__text {
        max-width: 1130px;
        margin-left: auto;
        margin-right: auto; }
      .p-targetmedia-box__text {
        padding: 35px 0 50px; }
      .p-targetmedia-box__ttl {
        text-align: center;
        font-size: 4rem;
        letter-spacing: 0.05em; }
      .p-targetmedia-box__dsc {
        font-size: 1.6rem;
        margin-top: 43px;
        max-width: 800px;
        margin-left: auto;
        margin-right: auto; }
    .p-targetmedia-acc__btn {
      cursor: pointer;
      font-size: 2rem;
      -webkit-transition: background-color .2s ease, color .2s ease;
      transition: background-color .2s ease, color .2s ease; }
      .p-targetmedia-acc__btn:hover {
        background-color: #dc0012;
        color: #fff; }
        .p-targetmedia-acc__btn:hover span::before {
          border-color: #fff; }
  .p-targetmedia-acc__sec {
    margin-bottom: 100px; }
  .p-targetmedia-acc__sec-inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
    .p-targetmedia-acc__sec-head {
      font-size: 2rem; }
  .p-targetmedia-acc__point {
    padding-top: 84px; }
    .p-targetmedia-acc__point-row {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; }
    .p-targetmedia-acc__point-row + .p-targetmedia-acc__point-row {
      margin-top: 87px; }
    .p-targetmedia-acc__point-head {
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      width: 283px;
      margin-left: 45px;
      vertical-align: top; }
    .p-targetmedia-acc__point-tag {
      font-size: 1.8rem; }
  .p-targetmedia-acc__point-num {
    font-size: 10rem;
    line-height: 0.83;
    margin-left: 13px;
    position: relative;
    top: -8px; }
  .p-targetmedia-acc__point-body {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    .p-targetmedia-acc__point-ttl {
      font-size: 3rem;
      letter-spacing: 0.07em;
      padding: 21px 30px; }
  .p-targetmedia-acc__point-btn {
    margin-top: 75px; }
    .p-targetmedia-acc__point-dsc {
      margin-top: 17px;
      font-size: 1.6rem;
      line-height: 2.5; }
    .p-targetmedia-acc__fig {
      padding: 50px 0; }
    .p-targetmedia-acc__fig-item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: stretch;
          -ms-flex-align: stretch;
              align-items: stretch; }
    .p-targetmedia-acc__fig-item + .p-targetmedia-acc__fig-item {
      margin-top: 30px; }
  .p-targetmedia-acc__fig-pic {
    width: 300px; }
    .p-targetmedia-acc__fig-text {
      margin-left: 33px;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      padding: 50px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      font-size: 1.6rem; }
  .p-targetmedia-acc__text {
    padding-top: 50px;
    font-size: 1.6rem; }
  .p-targetmedia-acc__text-dl {
    margin-top: 25px; }
    .p-targetmedia-acc__text-dl-row {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      .p-targetmedia-acc__text-dl-row dt {
        width: 130px; }
      .p-targetmedia-acc__text-dl-row dd {
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1;
        font-size: 2rem; }
  .p-targetmedia-acc__text-banner {
    margin-top: 50px; }
    .p-targetmedia-acc__text-fig {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .p-targetmedia-acc__text-fig figcaption {
        font-size: 1.6rem;
        margin-left: 50px;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; }
  .p-targetmedia-acc__text-contact {
    margin-top: 50px; }
  .p-targetmedia-acc__boxs {
    padding-top: 70px; }
    .p-targetmedia-acc__boxs-item {
      font-size: 1.6rem;
      padding: 40px 30px 20px; }
      .p-targetmedia-acc__boxs-item h4 {
        font-size: 3rem;
        margin-bottom: 30px; }
    .p-targetmedia-acc__boxs-item p {
      padding-bottom: 1.8em; }
    .p-targetmedia-acc__html {
      max-width: 1130px;
      margin-left: auto;
      margin-right: auto; }
      .p-targetmedia-contact__box {
        padding: 30px 0 20px; }
      .p-targetmedia-contact__dsc {
        font-size: 1.8rem; }
      .p-targetmedia-contact__btn {
        margin: 30px auto 0;
        width: 600px;
        height: 100px; }
      .p-targetmedia-contact__btn-text {
        font-size: 3rem; }
        .p-targetmedia-contact__btn-text::before {
          width: 70px;
          height: 17px;
          right: -20px; }
      .p-targetmedia-contact__btn-small {
        font-size: 1.6rem; }
  .p-work-detail {
    padding-bottom: 100px; }
    .p-work-detail-head {
      padding-top: 40px; }
      .p-work-detail-head__tag {
        font-size: 1.2rem;
        width: 250px;
        height: 30px; }
      .p-work-detail-head__ttl {
        font-size: 4rem;
        margin-top: 35px;
        margin-bottom: 25px; }
      .p-work-detail-head__name {
        font-size: 1.8rem;
        padding-top: 15px; }
  .p-work-detail-article {
    margin-top: 30px; }
  .p-work-detail-article__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-work-detail-article__inner {
    max-width: 800px; }
    .p-work-detail-article__content {
      font-size: 1.7rem; }
    .p-work-detail-article__slider .swiper-pagination {
      margin-top: 40px; }
    .p-work-detail-article__slider .swiper-pagination-bullet {
      width: 20px;
      height: 20px;
      cursor: pointer; }
      .p-work-detail-article__slider .swiper-pagination-bullet:hover {
        background-color: #231815; }
    .p-work-detail-article__slider .swiper-pagination-bullet:not(:first-of-type) {
      margin-left: 50px; }
  .p-work-detail-article__text {
    margin-top: 35px; }
    .p-work-detail-article__pager {
      margin-top: 90px; }
    .p-work-detail-article__pager-btn {
      -webkit-transition: background-color .2s ease, color .2s ease;
      transition: background-color .2s ease, color .2s ease; }
      .p-work-detail-article__pager-btn:hover {
        background-color: #333;
        color: #fff; }
      .p-work-detail-article__pager-btn::before {
        -webkit-transition: border-color .2s ease;
        transition: border-color .2s ease; }
        .p-work-detail-article__pager-btn:hover::before {
          border-color: #fff; }
  .p-work-list {
    padding-bottom: 100px; }
  .p-work-list-lead__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-work-list-lead__content {
    padding: 100px 0 67px; }
      .p-work-list-nav__item {
        width: 150px; }
        .p-work-list-nav__item + .p-work-list-nav__item {
          margin-left: 20px; }
      .p-work-list-nav__link {
        padding: 18px 15px 15px;
        position: relative;
        z-index: 0; }
        .p-work-list-nav__link::before {
          content: "";
          display: block;
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          z-index: 10;
          background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.25)), to(rgba(255, 255, 255, 0.25)));
          background-image: linear-gradient(rgba(255, 255, 255, 0.25), rgba(255, 255, 255, 0.25));
          opacity: 0;
          -webkit-transition: opacity .3s ease;
          transition: opacity .3s ease; }
        .p-work-list-nav__link:hover::before {
          opacity: 1; }
      .p-work-list-nav__item-big {
        font-size: 2.6rem;
        padding-bottom: 14px; }
      .p-work-list-nav__item-small {
        font-size: 1.3rem;
        padding-top: 15px; }
  .p-work-list-article {
    padding: 72px 0 48px; }
  .p-work-list-article__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; }
  .p-work-list-article__item {
    width: calc(33% - (80px / 3));
    margin-left: 40px; }
    .p-work-list-article__item:nth-of-type(3n + 1) {
      margin-left: 0; }
    .p-work-list-article__item:not(:nth-of-type(-n + 3)) {
      margin-top: 74px; }
    .p-work-list-article__item-thum {
      -webkit-transition: opacity .2s ease;
      transition: opacity .2s ease; }
      .p-work-list-article__link:hover .p-work-list-article__item-thum {
        opacity: .9; }
    .p-work-list-article__item-tag {
      padding: 9px 7px;
      font-size: 1.2rem; }
    .p-work-list-article__item-ttl {
      margin: 16px 0 14px;
      height: 38px;
      -webkit-transition: color .2s ease;
      transition: color .2s ease; }
      .p-work-list-article__link:hover .p-work-list-article__item-ttl {
        text-decoration: underline;
        color: #dc0012; }
    .p-work-list-article__item-name {
      -webkit-transition: color .2s ease;
      transition: color .2s ease;
      padding-top: 14px; }
      .p-work-list-article__link:hover .p-work-list-article__item-name {
        text-decoration: underline;
        border-color: #dc0012;
        color: #dc0012; }
    .c-bottom-contact {
      padding: 43px 0 45px;
      -webkit-transition: opacity .3s ease;
      transition: opacity .3s ease; }
      .c-bottom-contact:hover {
        opacity: 0.85; }
    .c-bottom-contact__inner {
      max-width: 1130px;
      margin-left: auto;
      margin-right: auto; }
      .c-bottom-contact__ttl-en {
        font-size: 5rem; }
    .c-bottom-contact__ttl-jp {
      font-size: 1.6rem;
      margin-top: 4px; }
      .c-bottom-contact__dsc {
        margin-top: 30px;
        font-size: 1.8rem;
        display: inline-block; }
        .c-bottom-contact__dsc::before {
          width: 70px;
          height: 15px;
          bottom: 8px;
          -webkit-transform: translateX(170%);
                  transform: translateX(170%); }
    .c-btn {
      height: 94px;
      font-size: 2.5rem;
      -webkit-transition: opacity .3s ease;
      transition: opacity .3s ease; }
      .c-btn:hover {
        opacity: .8; }
    .c-business-card__link {
      -webkit-transition: color .2s ease;
      transition: color .2s ease; }
      .c-business-card__link:hover {
        color: #dc0012; }
      .c-business-card__text {
        padding: 25px; }
        .c-business-card__text::after {
          width: 56px;
          height: 28px;
          top: -14px;
          -webkit-transition: -webkit-transform 0.3s ease;
          transition: -webkit-transform 0.3s ease;
          transition: transform 0.3s ease;
          transition: transform 0.3s ease, -webkit-transform 0.3s ease; }
          .c-business-card__link:hover .c-business-card__text::after {
            -webkit-transform: translate(-50%, 5px);
                    transform: translate(-50%, 5px); }
      .c-business-card__ttl {
        font-size: 2rem; }
    .c-business-card__dsc {
      font-size: 1.2rem;
      line-height: 1.91667;
      margin-top: 20px; }
    .c-pagetop__inner {
      max-width: 1130px;
      margin-left: auto;
      margin-right: auto; }
      .c-pagetop__content {
        height: 300px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; }
      .c-pagetop__ttl {
        font-size: 6.5rem; }
      .c-pagetop__ttl-sub {
        font-size: 2rem;
        margin-top: 20px; }
    .c-pagetop__thum {
      width: 627px; }
    .c-pagetop__thum.-is-s {
      width: 500px; }
    .c-parts-tag {
      padding: 4px 5px; }
    .c-parts-tag.-is-l {
      min-width: 120px; }
    .c-section {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
    .c-section__head {
      width: 40%; }
      .c-section__head-ttl {
        font-size: 4.6rem; }
      .c-section__head-sub {
        margin-top: 30px;
        font-size: 1.7rem; }
    .c-section__body {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
    .c-section__body-thum {
      width: calc(100% + (50vw - 565px));
      max-width: 880px;
      margin-bottom: 36px; }
      .c-section__body-ttl {
        font-size: 4rem;
        line-height: 1.65; }
      .c-section__body-ttl.-is-big {
        font-size: 4.9rem;
        line-height: 1.75; }
      .c-section__body-ttl-sub {
        font-size: 3rem; }
      .c-section__body-dsc {
        margin-top: 15px;
        padding-left: 0.8em;
        font-size: 1.6rem; }
      .c-section__body-dsc.-is-mt-l {
        margin-top: 32px; }
    .c-section__body-name {
      margin-top: 74px; }
      .c-section__body-name-en {
        font-size: 5rem; }
      .c-section__body-name-jp {
        font-size: 2.2rem;
        margin-top: 33px; }
    .c-section-dl {
      font-size: 1.6rem; }
      .c-section-dl a:hover {
        text-decoration: underline; }
        .c-section-dl__row:not(:first-of-type) {
          padding-top: 23px; }
      .c-section-dl__row:not(:last-of-type) {
        padding-bottom: 26px; }
      .c-section-dl__dt {
        width: 140px; }
      .c-section-dl__table-row {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
    .c-section-dl__table-dt {
      width: 190px; }
    .c-section-dl__table-dd {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1; }
    .c-section-dl__list {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .c-section-dl__list li {
        width: 40%; }
      .c-section-links a:hover {
        text-decoration: none; }
      .c-section-links__item {
        padding-left: 23px; }
    .c-section-links__dd {
      padding-left: 10px; }
  .for-mobile {
    display: none; } }
@media (max-width: 767px) {
  html, body {
    width: 100%;
    height: 100%; }
  h1, h2, h3, h4, h5, h6, div, dl, dt, dd, p {
    margin: 0;
    padding: 0; }
  img {
    height: auto;
    max-height: 100%;
    max-width: 100%;
    width: auto; }
      .l-footer::before {
        height: 7px; }
    .l-footer {
      padding: 20px 0 13px; }
    .l-footer__inner {
      margin-left: 2.5rem;
      margin-right: 2.5rem; }
      .l-footer__inner.-is-wide {
        margin-left: initial;
        margin-right: initial; }
      .l-footer__content {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; }
    .l-footer__logo {
      height: 33px; }
    .l-header {
      height: 57px; }
    .l-header__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: stretch;
          -ms-flex-align: stretch;
              align-items: stretch; }
      .l-header__content {
        padding: 13px 0 11px 25px;
        -webkit-box-flex: 1;
            -ms-flex: 1;
                flex: 1; }
    .l-header__logo {
      height: 33px; }
    .l-header__menu-btn {
      display: block;
      padding: 18px; }
    .l-header__menu-btn-bars {
      display: block;
      width: 25px;
      position: relative;
      height: 100%; }
    .l-header__menu-btn-bar {
      display: block;
      width: 100%;
      height: 2px;
      background-color: #000;
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      -webkit-transition: opacity .3s ease, -webkit-transform .3s ease;
      transition: opacity .3s ease, -webkit-transform .3s ease;
      transition: transform .3s ease, opacity .3s ease;
      transition: transform .3s ease, opacity .3s ease, -webkit-transform .3s ease; }
      .l-header__menu-btn-bar.-is-1 {
        -webkit-transform: translate(-50%, -8px);
                transform: translate(-50%, -8px); }
        #js-header.js-menu-open .l-header__menu-btn-bar.-is-1 {
          -webkit-transform: translate(-50%, 0) rotate(135deg);
                  transform: translate(-50%, 0) rotate(135deg); }
      .l-header__menu-btn-bar.-is-2 {
        -webkit-transform: translate(-50%, 0);
                transform: translate(-50%, 0); }
        #js-header.js-menu-open .l-header__menu-btn-bar.-is-2 {
          opacity: 0; }
      .l-header__menu-btn-bar.-is-3 {
        -webkit-transform: translate(-50%, 8px);
                transform: translate(-50%, 8px); }
        #js-header.js-menu-open .l-header__menu-btn-bar.-is-3 {
          -webkit-transform: translate(-50%, 0) rotate(-135deg);
                  transform: translate(-50%, 0) rotate(-135deg); }
    .l-header__contact {
      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: 56px;
      background-color: #dc0012;
      color: #fff;
      font-size: 1rem; }
    .l-header__menu {
      display: none;
      z-index: 3010;
      position: absolute;
      bottom: 0;
      -webkit-transform: translateY(100%);
              transform: translateY(100%);
      width: 100%;
      color: #fff;
      font-size: 1.6rem;
      max-height: calc(100vh - 57px);
      overflow: scroll; }
    .l-header__menu-item {
      background-color: #000;
      border-top: 1px solid #646464;
      position: relative; }
      .l-header__menu-item a {
        display: block;
        padding: 9px 25px; }
      .l-header__menu-item .icon {
        display: block;
        position: absolute;
        top: 50%;
        right: 25px;
        -webkit-transform-origin: center;
                transform-origin: center;
        -webkit-transform: translateY(-50%) rotate(45deg);
                transform: translateY(-50%) rotate(45deg);
        width: 10px;
        height: 10px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff; }
      .l-header__menu-item.-is-sub {
        background-color: #323232; }
      .l-header__menu-item:last-of-type {
        border-bottom: 1px solid #646464; }
      .l-header__menu-item.-is-bg-red {
        background-color: #dc0012; }
      .l-header__menu-item .icon.-is-acc {
        border: none;
        -webkit-transform: translate(30%, -50%);
                transform: translate(30%, -50%);
        width: 15px;
        height: 15px; }
        .l-header__menu-item .icon.-is-acc::before {
          content: "";
          display: block;
          width: 100%;
          height: 1px;
          background-color: #fff;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%); }
        .l-header__menu-item .icon.-is-acc::after {
          content: "";
          display: block;
          width: 100%;
          height: 1px;
          background-color: #fff;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%) rotate(90deg);
                  transform: translate(-50%, -50%) rotate(90deg);
          -webkit-transition: -webkit-transform .3s ease;
          transition: -webkit-transform .3s ease;
          transition: transform .3s ease;
          transition: transform .3s ease, -webkit-transform .3s ease; }
      .l-header__menu-item.js-is-open .icon.-is-acc::after {
        -webkit-transform: translate(-50%, -50%) rotate(0deg);
                transform: translate(-50%, -50%) rotate(0deg); }
    .l-header__menu-acc {
      display: none; }
  .l-main {
    padding-top: 57px; }
  .p-business-lead__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-business-lead__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-business-lead__content {
    padding: 40px 0 25px; }
  .p-business-list__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-business-list__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
    .p-business-list__content {
      padding: 25px 0; }
  .p-business-list__item:not(:first-of-type) {
    margin-top: 14px; }
  .p-casting-lead__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-casting-lead__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-casting-lead__content {
    padding: 40px 0 25px; }
  .p-casting-sec__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-casting-sec__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
    .p-casting-sec__head {
      font-size: 1.6rem; }
        .p-casting-sec__head.-is-bg-black span {
          font-size: 2rem; }
  .p-casting-sec__lead {
    padding-bottom: 43px; }
    .p-casting-sec__lead-dsc {
      margin-top: 25px; }
  .p-casting-sec__merit {
    padding-top: 22px;
    padding-bottom: 50px; }
    .p-casting-sec__merit-item + .p-casting-sec__merit-item {
      margin-top: 20px; }
    .p-casting-sec__merit-num {
      font-size: 4rem; }
  .p-casting-sec__merit-text {
    margin-left: 15px; }
    .p-casting-sec__merit-head {
      font-size: 1.8rem; }
    .p-casting-sec__merit-dsc {
      font-size: 1.2rem;
      margin-top: 10px; }
  .p-casting-sec__boxs {
    margin-top: 35px;
    padding-bottom: 75px; }
    .p-casting-sec__boxs-item {
      font-size: 1.2rem;
      padding: 20px 15px 10px; }
    .p-casting-sec__boxs-item + .p-casting-sec__boxs-item {
      margin-top: 25px; }
    .p-casting-sec__boxs-text p, .p-casting-sec__boxs-text ul {
      padding-bottom: 1em; }
    .p-casting-sec__boxs-head {
      font-size: 2rem;
      margin-bottom: 15px; }
    .p-casting-sec__boxs-head-num {
      font-size: 5rem; }
      .p-casting-sec__boxs-head-num span {
        font-size: 1rem; }
  .p-casting-sec__boxs-head-text {
    margin-left: 15px; }
  .p-casting-sec__boxs-pic {
    margin-top: 20px; }
  .p-casting-sec__boxs-figs {
    margin-top: 20px; }
    .p-casting-sec__boxs-figs li {
      font-size: 1.2rem;
      line-height: 1.6;
      width: calc(50% - 10px); }
    .p-casting-sec__boxs-figs li:nth-of-type(even) {
      margin-left: 20px; }
    .p-casting-sec__boxs-figs li:not(:nth-of-type(-n + 2)) {
      margin-top: 10px; }
  .p-casting-sec__work {
    padding-top: 30px;
    padding-bottom: 30px; }
    .p-casting-sec__work-fig {
      margin-bottom: 20px; }
    .p-casting-sec__work-fig figcaption {
      margin-bottom: 20px; }
  .p-casting-sec__work-item {
    width: calc(50% - 10px); }
    .p-casting-sec__work-item:nth-of-type(even) {
      margin-left: 20px; }
    .p-casting-sec__work-item:not(:nth-of-type(-n + 2)) {
      margin-top: 20px; }
      .p-casting-sec__work-item figcaption dt {
        font-size: 1.2rem; }
      .p-casting-sec__work-item figcaption dd {
        font-size: 1rem; }
  .p-casting-sec__work-btn {
    margin-top: 25px; }
  .p-casting-sec__work-text {
    margin-top: 30px;
    font-size: 1.2rem;
    line-height: 1.8; }
  .p-casting-sec__work-text-col + .p-casting-sec__work-text-col {
    margin-top: 10px; }
  .p-casting-sec__flow {
    padding-top: 30px;
    padding-bottom: 30px; }
    .p-casting-sec__flow-row + .p-casting-sec__flow-row {
      margin-top: 30px; }
    .p-casting-sec__flow-head {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .p-casting-sec__flow-tag {
      font-size: 1.2rem; }
    .p-casting-sec__flow-num {
      font-size: 3.6rem;
      font-weight: 500; }
    .p-casting-sec__flow-ttl {
      font-size: 1.8rem;
      padding: 10px 15px;
      margin-top: 10px; }
  .p-casting-sec__flow-btn {
    margin-top: 38px; }
    .p-casting-sec__flow-btn-item {
      height: 45px;
      font-size: 2rem; }
      .p-casting-sec__flow-btn-item::after {
        width: 35px;
        height: 10px; }
    .p-casting-sec__flow-dsc {
      margin-top: 8px;
      font-size: 1.2rem;
      line-height: 2; }
  .p-company {
    padding-bottom: 50px; }
  .p-company-lead__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-company-lead__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-company-lead__content {
    padding-top: 40px; }
  .p-company-outline {
    margin-top: 50px; }
  .p-company-outline__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-company-outline__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-company-map {
    margin-top: 45px; }
  .p-company-map + .p-company-map {
    margin-top: 27px; }
  .p-company-map__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-company-map__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-contact-lead__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-contact-lead__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-contact-lead__content {
    padding: 40px 0 25px; }
    .p-contact-body .mw_wp_form_complete {
      padding: 0 20px;
      font-size: 1.4rem; }
  .p-contact-sec__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-contact-sec__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
    .p-contact-sec__head {
      font-size: 1.6rem; }
  .p-contact-tel {
    padding: 22px 0 28px; }
  .p-contact-tel__item + .p-contact-tel__item {
    margin-top: 20px; }
    .p-contact-tel__head {
      font-size: 1.4rem; }
    .p-contact-tel__num {
      font-size: 2.4rem; }
    .p-contact-form {
      padding: 25px 0 35px; }
      .p-contact-form__item + .p-contact-form__item {
        margin-top: 15px; }
        .p-contact-form__item dt {
          margin-bottom: 10px;
          font-size: 1.4rem; }
      .p-contact-form__input {
        padding: 5px 10px;
        height: 40px; }
      .p-contact-form__check-list {
        padding: 10px 0; }
        .p-contact-form__check-list .horizontal-item {
          width: 100%;
          font-size: 1.4rem; }
          .p-contact-form__check-list .horizontal-item:not(:first-of-type) {
            margin-top: 20px; }
      .p-contact-form__privacy {
        margin-top: 25px; }
      .p-contact-form__privacy-dsc {
        font-size: 1.2rem; }
      .p-contact-form__label {
        margin-top: 12px; }
        .p-contact-form__label-inner .mwform-checkbox-field-text {
          padding-left: 35px; }
      .p-contact-form__btn {
        margin-top: 35px; }
      .p-contact-form__btn-item {
        font-size: 1.8rem;
        letter-spacing: 5px; }
    .p-home-mv {
      height: 300px; }
      .p-home-mv__inner {
        margin-left: 2.5rem;
        margin-right: 2.5rem; }
        .p-home-mv__inner.-is-wide {
          margin-left: initial;
          margin-right: initial; }
      .p-home-mv__slider-item-bg.-is-sp {
        display: block; }
      .p-home-mv__head {
        font-size: 4.4rem;
        padding-left: 5px; }
      .p-home-mv__head-sub {
        font-size: 1.25rem;
        margin-top: 12px;
        padding-left: .7em; }
      .p-home-mv__scroll {
        font-size: 0.8rem;
        right: 0;
        width: 95px;
        bottom: 23px; }
        .p-home-mv__scroll::before {
          width: 20px; }
    .p-home-concept {
      height: 315px; }
      .p-home-concept__inner {
        margin-left: 2.5rem;
        margin-right: 2.5rem; }
        .p-home-concept__inner.-is-wide {
          margin-left: initial;
          margin-right: initial; }
      .p-home-concept__deco-item {
        font-size: 10rem;
        left: -10px;
        bottom: 0; }
      .p-home-concept__box {
        top: -28px;
        width: 275px; }
    .p-home-concept__box-text {
      padding: 21px 20px 20px; }
      .p-home-concept__box-head {
        font-size: 1.8rem; }
      .p-home-concept__box-dsc {
        font-size: 1rem;
        margin-top: 10px;
        line-height: 1.7; }
      .p-home-concept__box-btn {
        height: 40px; }
      .p-home-concept__box-btn-link {
        padding-left: 21px; }
      .p-home-concept__box-btn-txt {
        font-size: 1.3rem; }
      .p-home-business__head {
        padding-bottom: 25px; }
      .p-home-business__head-ttl {
        top: -7px;
        font-size: 5.7rem; }
    .p-home-business__inner {
      margin-left: 2.5rem;
      margin-right: 2.5rem; }
      .p-home-business__inner.-is-wide {
        margin-left: initial;
        margin-right: initial; }
      .p-home-business__content {
        padding: 25px 0; }
    .p-home-business__list-item:not(:first-of-type) {
      margin-top: 14px; }
      .p-home-business__banner {
        margin-top: 17.5px; }
  .p-home-news {
    padding: 50px 0 57px; }
  .p-home-news__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-home-news__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-home-news__inner {
    margin-left: 0; }
    .p-home-news__btn {
      width: 50px;
      margin-right: 35px; }
  .p-home-news__btn-text {
    display: none; }
    .p-home-news__ttl {
      font-size: 5.5rem; }
  .p-home-news__list {
    margin-top: 35px; }
  .p-home-news__list-item {
    padding: 14px 0; }
    .p-home-news__list-link {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
  .p-home-news__list-time {
    width: 77px;
    font-size: 1rem;
    line-height: 1;
    vertical-align: middle; }
  .p-home-news__list-tag {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1; }
  .p-home-news__list-ttl {
    display: block;
    width: 100%;
    font-size: 1rem;
    margin-top: 5px; }
  .p-home-news__topics {
    margin-top: 52px; }
    .p-home-news__topics-head {
      font-size: 2.6rem; }
  .p-home-news__topics-body {
    margin-top: 17px; }
    .p-home-news__topics-row + .p-home-news__topics-row {
      margin-top: 15px; }
  .p-home-news__topics-row.-is-2col .p-home-news__topics-item {
    width: 100%; }
    .p-home-news__topics-row.-is-2col .p-home-news__topics-item:not(:first-of-type) {
      margin-top: 15px; }
  .p-home-news__topics-row.-is-4col .p-home-news__topics-item {
    width: calc(50% - 5px); }
    .p-home-news__topics-row.-is-4col .p-home-news__topics-item:not(:nth-last-of-type(even)) {
      margin-left: 10px; }
    .p-home-news__topics-row.-is-4col .p-home-news__topics-item:not(:nth-of-type(-n + 2)) {
      margin-top: 15px; }
      .p-home-works__head-item {
        font-size: 5.4rem;
        margin-top: -7px; }
    .p-home-works__inner {
      margin-left: 2.5rem;
      margin-right: 2.5rem; }
      .p-home-works__inner.-is-wide {
        margin-left: initial;
        margin-right: initial; }
    .p-home-works__content {
      margin-top: 42px;
      padding-bottom: 38px; }
    .p-home-works__list {
      padding: 0 25px; }
    .p-home-works__item + .p-home-works__item {
      margin-top: 20px; }
      .p-home-works__item-ttl {
        margin-top: 5px; }
      .p-home-works__item-ttl-item {
        font-size: 1rem; }
      .p-home-works__btn {
        margin-top: 52px; }
      .p-home-works__btn-item {
        width: 155px;
        height: 33px; }
      .p-home-works__btn-head {
        font-size: 1.4rem; }
  .p-privacy__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-privacy__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-privacy__content {
    padding: 40px 0; }
  .p-recruit-lead__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-recruit-lead__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-recruit-lead__content {
    padding-top: 40px; }
  .p-recruit-body {
    margin-top: 40px; }
    .p-recruit-body__none-info {
      margin-left: 2.5rem;
      margin-right: 2.5rem; }
      .p-recruit-body__none-info.-is-wide {
        margin-left: initial;
        margin-right: initial; }
  .p-recruit-sec__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-recruit-sec__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
    .p-recruit-sec__head {
      font-size: 1.6rem; }
        .p-recruit-sec__head.-is-bg-black span {
          font-size: 2rem; }
    .p-recruit-sec__body {
      padding: 25px 0 50px; }
    .p-recruit-sec__item-head {
      padding: 10px 15px; }
    .p-recruit-sec__item-body {
      word-wrap: break-word;
      padding: 10px 15px; }
  .p-sitemap__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-sitemap__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-sitemap__content {
    padding: 40px 0; }
  .p-targetmedia-lead__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-targetmedia-lead__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-targetmedia-lead__content {
    padding: 40px 0 25px; }
  .p-targetmedia-body__item {
    margin-top: 75px; }
    .p-targetmedia-box {
      padding-top: 120px; }
      .p-targetmedia-box__tag {
        width: 100px;
        height: 100px;
        font-size: 1.2rem; }
      .p-targetmedia-box__text {
        margin-left: 2.5rem;
        margin-right: 2.5rem; }
        .p-targetmedia-box__text.-is-wide {
          margin-left: initial;
          margin-right: initial; }
      .p-targetmedia-box__text {
        padding: 17px 0 30px; }
      .p-targetmedia-box__ttl {
        font-size: 2.4rem; }
      .p-targetmedia-box__dsc {
        font-size: 1.2rem;
        margin-top: 10px; }
    .p-targetmedia-acc__btn {
      font-size: 1.6rem; }
  .p-targetmedia-acc__sec {
    margin-bottom: 40px; }
  .p-targetmedia-acc__sec-inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-targetmedia-acc__sec-inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
    .p-targetmedia-acc__sec-head {
      font-size: 1.6rem; }
  .p-targetmedia-acc__point {
    padding-top: 30px; }
    .p-targetmedia-acc__point-row + .p-targetmedia-acc__point-row {
      margin-top: 30px; }
    .p-targetmedia-acc__point-head {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .p-targetmedia-acc__point-tag {
      font-size: 1.2rem; }
  .p-targetmedia-acc__point-num {
    font-size: 3.6rem;
    font-weight: 500; }
    .p-targetmedia-acc__point-ttl {
      font-size: 1.8rem;
      padding: 10px 15px;
      margin-top: 10px; }
  .p-targetmedia-acc__point-btn {
    margin-top: 38px; }
    .p-targetmedia-acc__point-dsc {
      margin-top: 8px;
      font-size: 1.2rem;
      line-height: 2; }
    .p-targetmedia-acc__fig {
      padding: 25px 0; }
    .p-targetmedia-acc__fig-item + .p-targetmedia-acc__fig-item {
      margin-top: 15px; }
    .p-targetmedia-acc__fig-text {
      padding: 15px;
      font-size: 1.2rem; }
  .p-targetmedia-acc__text {
    padding-top: 25px;
    font-size: 1.2rem; }
  .p-targetmedia-acc__text-dl {
    margin-top: 12px; }
    .p-targetmedia-acc__text-dl-row + .p-targetmedia-acc__text-dl-row {
      margin-top: 10px; }
      .p-targetmedia-acc__text-dl-row dd {
        font-size: 1.4rem; }
  .p-targetmedia-acc__text-banner {
    margin-top: 25px; }
      .p-targetmedia-acc__text-fig img, .p-targetmedia-acc__text-fig video {
        max-width: 100%; }
      .p-targetmedia-acc__text-fig figcaption {
        font-size: 1.2rem;
        margin-top: 15px; }
  .p-targetmedia-acc__text-contact {
    margin-top: 25px; }
  .p-targetmedia-acc__boxs {
    margin-top: 35px; }
    .p-targetmedia-acc__boxs-item {
      font-size: 1.2rem;
      padding: 20px 15px 10px; }
      .p-targetmedia-acc__boxs-item h4 {
        font-size: 2rem;
        margin-bottom: 15px; }
    .p-targetmedia-acc__boxs-item p {
      padding-bottom: 1em; }
    .p-targetmedia-acc__html {
      margin-left: 2.5rem;
      margin-right: 2.5rem; }
      .p-targetmedia-acc__html.-is-wide {
        margin-left: initial;
        margin-right: initial; }
    .p-targetmedia-acc__html {
      padding-top: 30px;
      padding-bottom: 30px; }
      .p-targetmedia-acc__html iframe, .p-targetmedia-acc__html video {
        height: auto; }
      .p-targetmedia-contact__box {
        padding: 15px 0 10px; }
      .p-targetmedia-contact__dsc {
        font-size: 1.4rem; }
      .p-targetmedia-contact__btn {
        width: calc(100% - 50px);
        height: 70px;
        margin: 15px auto 0; }
      .p-targetmedia-contact__btn-text {
        font-size: 2.4rem;
        line-height: 1; }
        .p-targetmedia-contact__btn-text::before {
          width: 35px;
          height: 9px;
          right: -10px; }
      .p-targetmedia-contact__btn-small {
        font-size: 1.2rem; }
  .p-work-detail {
    padding-bottom: 50px; }
    .p-work-detail-head {
      padding-top: 20px; }
      .p-work-detail-head__tag {
        font-size: 1rem;
        height: 20px;
        width: 100%; }
      .p-work-detail-head__date {
        margin-top: 10px; }
      .p-work-detail-head__ttl {
        font-size: 2.6rem;
        margin-top: 17px;
        margin-bottom: 12px; }
      .p-work-detail-head__name {
        font-size: 1.4rem;
        padding-top: 10px; }
  .p-work-detail-article {
    margin-top: 15px; }
  .p-work-detail-article__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-work-detail-article__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
    .p-work-detail-article__content {
      font-size: 1.2rem; }
    .p-work-detail-article__slider .swiper-pagination {
      margin-top: 20px; }
    .p-work-detail-article__slider .swiper-pagination-bullet {
      width: 10px;
      height: 10px; }
    .p-work-detail-article__slider .swiper-pagination-bullet:not(:first-of-type) {
      margin-left: 25px; }
  .p-work-detail-article__text {
    margin-top: 17px; }
    .p-work-detail-article__pager {
      margin-top: 45px; }
    .p-work-detail-article__pager-btn {
      width: 45%; }
  .p-work-list {
    padding-bottom: 50px; }
  .p-work-list-lead__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-work-list-lead__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-work-list-lead__content {
    padding: 40px 0 25px; }
    .p-work-list-nav__inner {
      width: 100%;
      overflow: scroll; }
      .p-work-list-nav__list.-is-news {
        width: 125vw; }
      .p-work-list-nav__item {
        width: 25vw; }
        .p-work-list-nav__item.-is-white {
          border-top: 1px solid #dc0012;
          border-bottom: 1px solid #dc0012; }
      .p-work-list-nav__link {
        padding: 13px 7px 13px; }
      .p-work-list-nav__item-big {
        font-size: 1.8rem;
        padding-bottom: 7px; }
      .p-work-list-nav__item-small {
        font-size: 1rem;
        padding-top: 7px; }
  .p-work-list-article {
    padding: 35px 0 24px; }
  .p-work-list-article__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-work-list-article__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; }
  .p-work-list-article__item {
    width: calc(50% - 10px); }
    .p-work-list-article__item:nth-of-type(even) {
      margin-left: 20px; }
    .p-work-list-article__item:not(:nth-of-type(-n + 2)) {
      margin-top: 20px; }
    .p-work-list-article__item-tag {
      padding: 5px 7px;
      font-size: 1rem; }
    .p-work-list-article__item-ttl {
      margin: 8px 0 7px;
      height: 32px;
      font-size: 1.4rem; }
    .p-work-list-article__item-name {
      padding-top: 7px;
      font-size: 1.4rem; }
    .c-bottom-contact {
      padding: 15px 0 20px; }
    .c-bottom-contact__inner {
      margin-left: 2.5rem;
      margin-right: 2.5rem; }
      .c-bottom-contact__inner.-is-wide {
        margin-left: initial;
        margin-right: initial; }
      .c-bottom-contact__ttl-en {
        font-size: 3rem; }
    .c-bottom-contact__ttl-jp {
      font-size: 1rem; }
      .c-bottom-contact__dsc {
        margin-top: 20px;
        font-size: 1.1rem; }
        .c-bottom-contact__dsc::before {
          width: 35px;
          height: 7px;
          bottom: 4px;
          -webkit-transform: translateX(130%);
                  transform: translateX(130%); }
    .c-btn {
      height: 45px;
      font-size: 2rem; }
        .c-btn span::after {
          width: 35px;
          height: 10px; }
      .c-business-card__text {
        padding: 20px 10px 8px;
        margin-top: -22%; }
        .c-business-card__text::after {
          width: 33.5px;
          height: 17px;
          top: -9px; }
      .c-business-card__ttl {
        font-size: 1.15rem; }
    .c-business-card__dsc {
      font-size: 1rem;
      line-height: 1.55556;
      margin-top: 7px; }
    .c-pagetop {
      padding: 30px 0; }
    .c-pagetop__inner {
      margin-left: 2.5rem;
      margin-right: 2.5rem; }
      .c-pagetop__inner.-is-wide {
        margin-left: initial;
        margin-right: initial; }
      .c-pagetop__ttl {
        font-size: 3.8rem; }
      .c-pagetop__ttl-sub {
        font-size: 1.25rem;
        margin-top: 10px; }
    .c-pagetop__thum {
      margin-top: 20px; }
    .c-pagetop__thum.-is-s {
      margin-top: 20px; }
    .c-parts-tag {
      font-size: 0.9rem;
      padding: 2px 3px; }
    .c-parts-tag.-is-l {
      min-width: 75px; }
      .c-section__head-ttl {
        font-size: 3.8rem; }
      .c-section__head-sub {
        margin-top: 10px;
        font-size: 1.2rem; }
    .c-section__body {
      margin-top: 30px; }
    .c-section__body-thum {
      margin-bottom: 18px; }
      .c-section__body-ttl {
        font-size: 2.4rem; }
      .c-section__body-ttl.-is-big {
        font-size: 2.4rem;
        line-height: 1.6; }
      .c-section__body-ttl-sub {
        font-size: 1.6rem;
        margin-top: 5px; }
      .c-section__body-dsc {
        margin-top: 10px;
        font-size: 1.2rem;
        margin-top: 7px; }
      .c-section__body-dsc.-is-mt-l {
        margin-top: 16px; }
    .c-section__body-name {
      margin-top: 30px; }
      .c-section__body-name-en {
        font-size: 2.6rem; }
      .c-section__body-name-jp {
        font-size: 1.6rem;
        margin-top: 10px; }
    .c-section-dl {
      font-size: 1.2rem; }
        .c-section-dl__row:not(:first-of-type) {
          padding-top: 12px; }
      .c-section-dl__row:not(:last-of-type) {
        padding-bottom: 13px; }
      .c-section-dl__dt {
        width: 90px; }
      .c-section-links__item {
        padding-left: 15px; }
        .c-section-links__item + .c-section-links__item {
          margin-top: 15px; }
    .c-section-links__dd {
      padding-left: 5px; }
  .for-large {
    display: none; } }
@media (min-width: 768px) and (min-width: 768px) {
  .l-footer__nav-head-link {
    -webkit-transition: color .2s ease;
    transition: color .2s ease; }
    .l-footer__nav-head-link:hover {
      color: #dc0012; }
  .l-footer__nav-body-link {
    -webkit-transition: color .2s ease;
    transition: color .2s ease; }
    .l-footer__nav-body-link:hover {
      color: #dc0012; }
  .l-header__nav-link {
    -webkit-transition: color .2s ease;
    transition: color .2s ease; }
    .l-header__nav-link:hover {
      color: #dc0012; }
  .p-work-list-nav__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; } }
@media (max-width: 767px) and (min-width: 768px) {
  .p-work-detail-head__inner {
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto; } }
@media (max-width: 767px) and (max-width: 767px) {
  .p-work-detail-head__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-work-detail-head__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; } }
@media (min-width: 768px) and (max-width: 767px) {
  .p-work-list-nav__inner {
    margin-left: 2.5rem;
    margin-right: 2.5rem; }
    .p-work-list-nav__inner.-is-wide {
      margin-left: initial;
      margin-right: initial; } }

/*# sourceMappingURL=../../_cache/_maps/styles.css.map */
