@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.3.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
========================================================================== */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Poppins:wght@300;400;500;600&family=Zen+Kaku+Gothic+New:wght@400;700&display=swap");
@import url("https://use.typekit.net/mva6nnq.css");
html {
  font-family: sans-serif;
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

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

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

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

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

figure {
  margin: 1em 40px; }

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

main {
  display: block; }

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

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

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

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

b, strong {
  font-weight: inherit; }

b, strong {
  font-weight: bolder; }

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

dfn {
  font-style: italic; }

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

small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

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

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

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

img {
  border-style: none; }

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

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

button {
  overflow: visible; }

button, select {
  text-transform: none; }

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

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

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

input {
  overflow: visible; }

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

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

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

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

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

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

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

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

textarea {
  overflow: auto; }

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

summary {
  display: list-item; }

menu {
  display: block; }

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

template {
  display: none; }

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

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

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

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

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

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

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

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

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

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

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

pre {
  overflow: auto; }

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

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

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

/* clearfix */
/* [FAQ-FORMAT]
AS Q&A!
<ul class="list-faq">
<li class="item">
<div class="question"><span class="number">Q<span>1</span></span><p>最短で納期はどれぐらいで対応してもらえますか？</p></div>
<div class="answer"><p>最短で、お申し込み当日の発送に対応させていただいております。</p></div>
</li><!-- / .item -->
</ul>
*/
/* MW WP FORM */
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
html {
  line-height: 1.6; }
  @media screen and (min-width: 960px) {
    html {
      font-size: 16px; } }
  @media screen and (max-width: 959px) {
    html {
      font-size: 14px; } }

h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, th, td, address, li, dt, dd {
  font-weight: 400;
  font-feature-settings: "palt";
  letter-spacing: 1px; }

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

body {
  color: #333;
  font-family: "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }

input, textarea, button {
  font-family: "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }

a {
  color: #000; }
  a:hover {
    color: #151E2F;
    transition: all .1s ease; }

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

@keyframes rotation1 {
  0% {
    transform: rotate(0); }
  100% {
    transform: rotate(360deg); } }
@keyframes rotation2 {
  0% {
    transform: rotate(450deg); }
  100% {
    transform: rotate(90deg); } }
@media screen and (min-width: 960px) {
  .media-PC {
    display: block; } }
@media screen and (max-width: 959px) {
  .media-PC {
    display: none !important; } }

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

@media screen and (min-width: 768px) {
  .media-NoSP {
    display: block; } }
@media screen and (max-width: 767px) {
  .media-NoSP {
    display: none; } }

@media screen and (min-width: 768px) {
  .media-SP {
    display: none; } }
@media screen and (max-width: 767px) {
  .media-SP {
    display: block; } }

.fr {
  float: right; }

.fl {
  float: left; }

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

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

.tR {
  text-align: right; }

div.center {
  text-align: center; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.clear {
  clear: both; }

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

.table {
  width: 100%; }
  .table tr {
    border: solid 1px #898E96; }
    .table tr th {
      width: 180px;
      padding: 20px;
      font-weight: bold;
      font-size: 14px;
      background-color: #f8f8f8;
      border-right: 1px solid #898E96;
      vertical-align: middle; }
      @media screen and (max-width: 959px) {
        .table tr th {
          width: 100%;
          text-align: center;
          border-right: none;
          border-bottom: 1px solid #898E96; } }
    .table tr td {
      padding: 20px 10px;
      font-size: 14px;
      line-height: 1.6; }
  @media screen and (max-width: 959px) {
    .table tr {
      padding: 10px; }
      .table tr th {
        padding: 20px 10px; }
      .table tr td {
        padding: 20px 10px; }
    .table td, .table th {
      display: block; } }

/* =========================================================
	general
========================================================= */
/* animation */
@keyframes backgroundMask {
  0% {
    left: -100%; }
  100% {
    left: 100%; } }
/* text */
a, li {
  text-decoration: none; }

p {
  font-family: "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  letter-spacing: .08em; }
  p.left {
    text-align: left; }
  p.right {
    text-align: right; }
  p.center {
    text-align: center; }

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

@media screen and (min-width: 960px) {
  .pc-none {
    display: none; } }

.c-btn, .c-btn.mc {
  text-align: center;
  width: auto; }
  .c-btn a, .c-btn.mc a {
    position: relative;
    display: inline-block;
    padding: 20px 30px 20px 20px;
    border-radius: 50px;
    background: #1DFF25;
    color: #151E2F;
    font: bold 14px/1 "Zen Kaku Gothic New", sans-serif;
    transition: all .3s ease; }
    .c-btn a span, .c-btn.mc a span {
      position: relative;
      z-index: 2; }
    .c-btn a::before, .c-btn.mc a::before {
      content: '';
      background-image: url(/svg/arrow-b.svg);
      background-size: contain;
      background-repeat: no-repeat;
      width: 6px;
      height: 8px;
      right: 20px;
      top: 50%;
      transform: translateY(-50%);
      position: absolute;
      z-index: 2;
      transition: all .3s ease; }
    .c-btn a::after, .c-btn.mc a::after {
      content: '';
      width: 15%;
      height: 100%;
      background-color: rgba(21, 30, 47, 0);
      border-radius: 50px;
      left: 0;
      top: 0;
      position: absolute;
      z-index: 0;
      transition: all .3s ease; }
    .c-btn a:hover {
      color: white; }
      .c-btn a:hover::before {
        background-image: url(/svg/arrow-w.svg); }
      .c-btn a:hover::after {
        width: 100%;
        background-color: #151e2f; }
    @media screen and (max-width: 959px) {
      .c-btn a, .c-btn.mc a {
        padding: 16px 30px 16px 20px;
        font-size: 12px; } }
  .c-btn.mc a {
    background: #151E2F;
    color: white; }
    .c-btn.mc a::before {
      background-image: url(/svg/arrow-w.svg); }
    .c-btn.mc a::after {
      background-color: rgba(255, 255, 255, 0); }
    .c-btn.mc a:hover {
      color: #151E2F; }
      .c-btn.mc a:hover::before {
        background-image: url(/svg/arrow-b.svg); }
      .c-btn.mc a:hover::after {
        width: 100%;
        background-color: white; }
  .c-btn.large p.hukidashi {
    position: relative;
    font: bold 1em/1.4 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    width: max-content;
    margin: 0 auto 10px; }
    .c-btn.large p.hukidashi::after, .c-btn.large p.hukidashi::before {
      content: "";
      position: absolute;
      top: 0;
      display: block;
      height: 100%;
      width: 2px;
      background-color: #333; }
    .c-btn.large p.hukidashi::before {
      transform: rotate(30deg);
      right: -20px; }
    .c-btn.large p.hukidashi::after {
      transform: rotate(-30deg);
      left: -20px; }
  .c-btn.large a, .c-btn.large div {
    padding: 30px 50px 30px 40px;
    font-size: 18px; }
    @media screen and (max-width: 959px) {
      .c-btn.large a, .c-btn.large div {
        padding: 26px 40px 26px 30px;
        font-size: 16px; } }
  .c-btn.min240 a {
    min-width: 240px; }
    @media screen and (max-width: 959px) {
      .c-btn.min240 a {
        min-width: 180px; } }
  .c-btn.min240-pcsp a {
    min-width: 240px; }
  .c-btn.min180 a {
    min-width: 180px; }
  .c-btn.min200 a {
    min-width: 200px !important; }
  .c-btn.min220 {
    width: 230px !important; }
    .c-btn.min220 a {
      min-width: 220px !important; }

.c-btnB, .c-btnB.white {
  display: inline-block; }
  .c-btnB a, .c-btnB.white a, .c-btnB div, .c-btnB.white div {
    width: 100%;
    height: 100%;
    display: inline-block;
    padding: 10px 95px 8px 15px;
    background-color: #1DFF25;
    font: bold 24px/1 "Poppins", sans-serif;
    color: #151E2F;
    position: relative; }
    .c-btnB a::before, .c-btnB.white a::before, .c-btnB div::before, .c-btnB.white div::before {
      content: '';
      background-image: url(/svg/long-arrow-b.svg);
      background-repeat: no-repeat;
      background-size: contain;
      width: 66px;
      height: 10px;
      position: absolute;
      right: 14px;
      bottom: 15px; }
  .c-btnB.big a, .c-btnB.big div {
    padding: 10px 100px 8px 20px;
    font-size: 38px; }
    .c-btnB.big a::before, .c-btnB.big div::before {
      right: 20px;
      bottom: 22px; }
  .c-btnB.small a, .c-btnB.small div {
    padding: 6px 40px 6px 10px;
    font-size: 12px; }
    .c-btnB.small a::before, .c-btnB.small div::before {
      width: 24px;
      height: 4px;
      right: 10px;
      bottom: 10px; }
  .c-btnB.ja a {
    font-family: "Zen Kaku Gothic New", sans-serif; }
  .c-btnB.white a, .c-btnB.white div {
    background-color: white; }
  .c-btnB__label {
    background-color: #1DFF25;
    padding: 5px 10px;
    position: absolute;
    bottom: 40px;
    left: 0; }
    .c-btnB__label .en {
      font: bold 12px/1 "Poppins", sans-serif; }
    .c-btnB__label .ja {
      font: bold 12px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
    .c-btnB__label.big {
      padding: 10px 20px;
      bottom: 52px; }
      .c-btnB__label.big .en {
        font: bold 20px/1 "Poppins", sans-serif; }
      .c-btnB__label.big .ja {
        font: bold 20px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
    .c-btnB__label.white {
      background-color: white; }

.c-btn-txt {
  display: inline-block; }
  .c-btn-txt a {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding-right: 20px;
    font: 500 14px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    letter-spacing: .05em;
    text-decoration: underline;
    color: #151E2F;
    transition: all .3s ease;
    position: relative; }
    .c-btn-txt a::before {
      content: '';
      background-image: url(/svg/arrow-b.svg);
      background-size: contain;
      background-repeat: no-repeat;
      width: 6px;
      height: 8px;
      right: 0px;
      top: 50%;
      transform: translateY(-50%);
      position: absolute;
      z-index: 2;
      transition: all .3s ease; }
  .c-btn-txt:hover a {
    transition: all .3s ease;
    opacity: .6; }

.p-ttl03 {
  position: relative; }
  .p-ttl03 h3 {
    font: bold 30px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    color: white; }
    @media screen and (max-width: 959px) {
      .p-ttl03 h3 {
        font-size: 16px; } }
  .p-ttl03 p {
    font: bold 60px/1.5 "Poppins", sans-serif;
    color: white;
    margin-bottom: 10px;
    letter-spacing: 0; }
    @media screen and (max-width: 959px) {
      .p-ttl03 p {
        font-size: 30px;
        margin-bottom: 20px; } }
  .p-ttl03 p.sub {
    position: absolute;
    font-size: 20px;
    padding: 10px 20px 10px 80px;
    left: 0;
    background: #151E2F; }
    @media screen and (max-width: 959px) {
      .p-ttl03 p.sub {
        font-size: 12px;
        padding: 10px 20px 10px 40px; } }
  .p-ttl03.mc h3, .p-ttl03.mc p {
    color: #151E2F !important; }
  .p-ttl03.label {
    background-color: #151E2F;
    padding: 10px 20px 10px 80px;
    display: inline-block; }
    .p-ttl03.label h3 {
      font: bold 50px/1 "Poppins", sans-serif;
      color: white; }
    @media screen and (max-width: 959px) {
      .p-ttl03.label {
        padding: 10px 20px 10px 40px; }
        .p-ttl03.label h3 {
          font-size: 24px; } }
  .p-ttl03.top {
    position: absolute;
    top: -175px; }
    @media screen and (max-width: 959px) {
      .p-ttl03.top {
        top: -102px; } }

.p-ttl04 {
  background-color: #151E2F;
  display: inline-block;
  padding: 5px 10px;
  position: absolute;
  top: -20px;
  left: 0; }
  .p-ttl04 h4, .p-ttl04 p {
    font: bold 22px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    color: white; }

.article {
  padding: 140px 0;
  position: relative; }
  @media screen and (max-width: 959px) {
    .article {
      padding: 80px 0px; } }

/* =========================================================
 underpage
========================================================= */
/* =========================================================
	margin.scss
========================================================= */
.u-mbt--ll {
  margin-bottom: 80px !important;
  margin-top: 80px !important; }
.u-mbt--l {
  margin-bottom: 60px !important;
  margin-top: 60px !important; }
.u-mbt--m {
  margin-bottom: 40px !important;
  margin-top: 40px !important; }
.u-mbt--s {
  margin-bottom: 20px !important;
  margin-top: 20px !important; }
.u-mbt--ss {
  margin-bottom: 10px !important;
  margin-top: 10px !important; }
.u-mbt--0 {
  margin-bottom: 0 !important;
  margin-top: 0 !important; }
.u-mbt--30 {
  margin-bottom: 30px !important;
  margin-top: 30px !important; }
.u-mb--ll {
  margin-bottom: 80px !important; }
.u-mb--l {
  margin-bottom: 60px !important; }
.u-mb--m {
  margin-bottom: 40px !important; }
.u-mb--s {
  margin-bottom: 20px !important; }
.u-mb--ss {
  margin-bottom: 10px !important; }
.u-mb--0 {
  margin-bottom: 0 !important; }
.u-mb--30 {
  margin-bottom: 30px !important; }
.u-mt--ll {
  margin-top: 80px !important; }
.u-mt--l {
  margin-top: 60px !important; }
.u-mt--m {
  margin-top: 40px !important; }
.u-mt--s {
  margin-top: 20px !important; }
.u-mt--ss {
  margin-top: 10px !important; }
.u-mt--0 {
  margin-top: 0 !important; }
.u-mt--30 {
  margin-top: 30px !important; }

.u-pbt--ll {
  padding-bottom: 80px !important;
  padding-top: 80px !important; }
.u-pbt--l {
  padding-bottom: 60px !important;
  padding-top: 60px !important; }
.u-pbt--m {
  padding-bottom: 40px !important;
  padding-top: 40px !important; }
.u-pbt--s {
  padding-bottom: 20px !important;
  padding-top: 20px !important; }
.u-pbt--ss {
  padding-bottom: 10px !important;
  padding-top: 10px !important; }
.u-pbt--0 {
  padding-bottom: 0 !important;
  padding-top: 0 !important; }
.u-pbt--30 {
  padding-bottom: 30px !important;
  padding-top: 30px !important; }
.u-pb--ll {
  padding-bottom: 100px !important; }
.u-pb--l {
  padding-bottom: 60px !important; }
.u-pb--m {
  padding-bottom: 40px !important; }
.u-pb--s {
  padding-bottom: 20px !important; }
.u-pb--ss {
  padding-bottom: 10px !important; }
.u-pb--0 {
  padding-bottom: 0 !important; }
.u-pb--30 {
  padding-bottom: 30px !important; }
.u-pt--ll {
  padding-top: 80px !important; }
.u-pt--l {
  padding-top: 60px !important; }
.u-pt--m {
  padding-top: 40px !important; }
.u-pt--s {
  padding-top: 20px !important; }
.u-pt--ss {
  padding-top: 10px !important; }
.u-pt--0 {
  padding-top: 0 !important; }
.u-pt--30 {
  padding-bottom: 30px !important; }
.u-prl20 {
  padding-right: 20px !important;
  padding-left: 20px !important; }
.u-prl50 {
  padding-right: 80px !important;
  padding-left: 80px !important; }
.u-prl80 {
  padding-right: 80px !important;
  padding-left: 80px !important; }
@media screen and (max-width: 959px) {
  .u-prl20-sp {
    padding-right: 20px !important;
    padding-left: 20px !important; } }
@media screen and (max-width: 959px) {
  .u-pb--0-sp {
    padding-bottom: 0 !important; } }

/* =========================================================
	display.scss
========================================================= */
.u-display--block {
  display: block !important; }
.u-display--inline {
  display: inline !important; }
.u-display--inline-block {
  display: inline-block !important; }
@media screen and (max-width: 959px) {
  .u-display--sp {
    display: block !important; }
  .u-display--sp-inline {
    display: inline-block !important; }
  .u-display--pc, .u-display--pc-inline {
    display: none !important; } }
@media screen and (min-width: 960px) {
  .u-display--sp, .u-display--sp-inline {
    display: none !important; }
  .u-display--pc {
    display: block !important; }
  .u-display--pc-inline {
    display: inline-block !important; } }

/* =========================================================
	flex.scss
========================================================= */
.c-flex {
  display: flex; }

/* =========================================================
	その他
========================================================= */
/*幅関係*/
@media screen and (max-width: 959px) {
  .w-500--sp {
    max-width: 500px !important;
    width: 100% !important;
    margin: 0 auto; } }
.w-500 {
  max-width: 500px;
  width: 100%;
  margin: 0 auto; }
.w-600 {
  max-width: 600px;
  width: 100%;
  margin: 0 auto; }
.w-700 {
  max-width: 700px;
  width: 100%;
  margin: 0 auto; }
.w-800 {
  max-width: 800px;
  width: 100%;
  margin: 0 auto; }
.w-900 {
  max-width: 900px;
  width: 100%;
  margin: 0 auto; }
.w-1000 {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto; }
.w-1100 {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto; }
.w-1160 {
  max-width: 1160px;
  width: 100%;
  margin: 0 auto; }
.w-1200 {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto; }
.w-1250 {
  max-width: 1250px;
  width: 100%;
  margin: 0 auto; }
.w-1500 {
  max-width: 1500px;
  width: 100%;
  margin: 0 auto; }
.w-1520 {
  max-width: 1520px;
  width: 100%;
  margin: 0 auto; }
.w-max {
  width: 100%; }

.u-hv {
  transition: all .3s ease; }
  .u-hv:hover {
    opacity: .6;
    transition: all .3s ease; }

/*文字色、背景色、ホバー*/
.u-color--ac {
  color: #1DFF25 !important; }
.u-color--ac_bg {
  background-color: #1DFF25 !important; }
.u-color--white {
  color: white !important; }
.u-color--white_bg {
  background-color: white !important; }
.u-color--sc {
  color: #008949 !important; }
.u-color--sc_bg {
  background-color: #008949 !important; }
.u-color--gc {
  color: #898E96 !important; }
.u-color--gc_bg {
  background-color: #898E96 !important; }
.u-color--fc {
  color: #333 !important; }
.u-color--fc_bg {
  background-color: #333 !important; }

.u-marker {
  background: linear-gradient(#1DFF25 100%); }

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

.en {
  font-family: "Poppins", sans-serif; }

.ja {
  font-family: "Zen Kaku Gothic New", sans-serif; }

/* =========================================================
	#wrapper
========================================================= */
/* =========================================================
 underpage
========================================================= */
/* =========================================================
	pagetitle
========================================================= */
.p-pagettl {
  position: relative;
  width: 100%;
  height: 400px; }
  @media screen and (max-width: 959px) {
    .p-pagettl {
      height: 300px; } }
  .p-pagettl__ttl {
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%; }
  .p-pagettl__ja {
    margin-top: 20px; }
    .p-pagettl__ja h1, .p-pagettl__ja h2 {
      color: white;
      font: bold 16px/1 "Zen Kaku Gothic New", sans-serif;
      letter-spacing: .26em; }
      .p-pagettl__ja h1 .text-split, .p-pagettl__ja h2 .text-split {
        background-color: #151E2F;
        padding: 0.2em 1em 0.4em; }
    @media screen and (max-width: 959px) {
      .p-pagettl__ja {
        margin-top: 10px; }
        .p-pagettl__ja h1, .p-pagettl__ja h2 {
          font: 500 18px/1 "Zen Kaku Gothic New", sans-serif; } }
  .p-pagettl__en p {
    color: white;
    font: normal 87px/1 "Poppins", sans-serif;
    letter-spacing: .04em;
    text-transform: uppercase; }
    @media screen and (max-width: 959px) {
      .p-pagettl__en p {
        font-size: 40px; } }
    .p-pagettl__en p .text-split {
      background-color: #151E2F;
      padding: 0 0.4em; }
  .p-pagettl__img {
    width: 100%;
    height: 400px;
    background-image: url(/images/pagetitle/pagettl.jpg);
    background-position: center;
    background-size: cover; }
    @media screen and (max-width: 959px) {
      .p-pagettl__img {
        height: 300px; } }

/* 画像登録所 */
#reason-page .p-pagettl__img {
  background-image: url(/images/pagetitle/reason.jpg); }

#lineup-page .p-pagettl__img {
  background-image: url(/images/pagetitle/lineup.jpg); }

#simulation-page .p-pagettl__img {
  background-image: url(/images/pagetitle/simulation.jpg); }

#page_results-page .p-pagettl__img {
  background-image: url(/images/pagetitle/results.jpg); }

#contact-page .p-pagettl__img {
  background-image: url(/images/pagetitle/contact.jpg); }

#recruit-page .p-pagettl__img {
  background-image: url(/images/pagetitle/recruit.jpg); }

#site-policy-page .p-pagettl__img {
  background-image: url(/images/pagetitle/policy.jpg); }

#privacy-policy-page .p-pagettl__img {
  background-image: url(/images/pagetitle/privacy.jpg); }

#about-page .p-pagettl__img {
  background-image: url(/images/pagetitle/about.jpg); }

#message-page .p-pagettl__img {
  background-image: url(/images/pagetitle/about.jpg); }

#staff-page .p-pagettl__img {
  background-image: url(/images/pagetitle/about.jpg); }

#achievement-page .p-pagettl__img {
  background-image: url(/images/pagetitle/about.jpg); }

#company-page .p-pagettl__img {
  background-image: url(/images/pagetitle/about.jpg); }

#info-page .p-pagettl__img {
  background-image: url(/images/pagetitle/info.jpg); }

#questionnaire-page .p-pagettl__img {
  background-image: url(/images/pagetitle/contact.jpg); }

#questionnaire_thanks-page .p-pagettl__img {
  background-image: url(/images/pagetitle/contact.jpg); }

@media screen and (max-width: 959px) {
  #reason-page .p-pagettl__img {
    background-image: url(/images/pagetitle/reason-sp.jpg); }

  #lineup-page .p-pagettl__img {
    background-image: url(/images/pagetitle/lineup-sp.jpg); }

  #simulation-page .p-pagettl__img {
    background-image: url(/images/pagetitle/simulation-sp.jpg); }

  #page_results-page .p-pagettl__img {
    background-image: url(/images/pagetitle/results-sp.jpg); }

  #contact-page .p-pagettl__img {
    background-image: url(/images/pagetitle/contact-sp.jpg); }

  #questionnaire-page .p-pagettl__img {
    background-image: url(/images/pagetitle/contact-sp.jpg); }

  #questionnaire_thanks-page .p-pagettl__img {
    background-image: url(/images/pagetitle/contact-sp.jpg); }

  #recruit-page .p-pagettl__img {
    background-image: url(/images/pagetitle/recruit-sp.jpg); }

  #site-policy-page .p-pagettl__img {
    background-image: url(/images/pagetitle/policy-sp.jpg); }

  #privacy-policy-page .p-pagettl__img {
    background-image: url(/images/pagetitle/privacy-sp.jpg); }

  #about-page .p-pagettl__img {
    background-image: url(/images/pagetitle/about-sp.jpg); }

  #message-page .p-pagettl__img {
    background-image: url(/images/pagetitle/about-sp.jpg); }

  #staff-page .p-pagettl__img {
    background-image: url(/images/pagetitle/about-sp.jpg); }

  #achievement-page .p-pagettl__img {
    background-image: url(/images/pagetitle/about-sp.jpg); }

  #company-page .p-pagettl__img {
    background-image: url(/images/pagetitle/about-sp.jpg); }

  #info-page .p-pagettl__img {
    background-image: url(/images/pagetitle/info-sp.jpg); } }
/* =========================================================
	header
========================================================= */
.header {
  z-index: 120;
  width: 100%;
  position: fixed;
  padding: 40px 100px 0 80px; }
  @media screen and (max-width: 959px) {
    .header {
      position: absolute;
      padding: 30px 20px 0 20px; } }
  .header__container {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    @media screen and (max-width: 959px) {
      .header__container {
        width: 100%; } }
  .header__logo img, .header__logo--top img {
    height: 40px;
    width: auto; }
  @media screen and (max-width: 959px) {
    .header__logo img, .header__logo--top img {
      height: 20px; } }
  .header__logo--top {
    /*header-color*/ }
  .header__expand-inner {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    padding: 100px 50px; }
    @media screen and (max-width: 959px) {
      .header__expand-inner {
        padding: 100px 30px; } }
  .header__nav {
    margin-bottom: 60px; }
    @media screen and (max-width: 959px) {
      .header__nav {
        margin-bottom: 40px; } }
    .header__nav-flex {
      display: flex; }
      @media screen and (max-width: 959px) {
        .header__nav-flex {
          display: block; } }
      .header__nav-flex--s {
        display: flex; }
      .header__nav-flex .w50p {
        width: 50%; }
    .header__nav-wrap {
      width: 50%;
      padding: 0 10px; }
      @media screen and (max-width: 959px) {
        .header__nav-wrap {
          width: 100%; } }
    .header__nav-list {
      right: 0;
      display: flex;
      align-items: center; }
      @media screen and (max-width: 959px) {
        .header__nav-list {
          display: none; } }
      .header__nav-list .c-btn {
        padding-left: 15px; }
        .header__nav-list .c-btn a {
          padding-top: 16px;
          height: 48px; }
    .header__nav-item, .header__nav-item--top {
      padding: 0 15px;
      position: relative; }
      .header__nav-item a, .header__nav-item--top a {
        font: bold 16px/1 "Zen Kaku Gothic New", sans-serif;
        letter-spacing: .1em;
        color: white; }
      .header__nav-item.on a, .on.header__nav-item--top a {
        color: #151E2F; }
      .header__nav-item img, .header__nav-item--top img {
        height: 50px; }
      .header__nav-item:last-child, .header__nav-item--top:last-child {
        padding-right: 50px; }
      @media (max-width: 1100px) and (min-width: 960px) {
        .header__nav-item, .header__nav-item--top {
          padding: 0 8px; }
          .header__nav-item a, .header__nav-item--top a {
            font-size: 14px; } }
      .header__nav-item-ttl {
        padding-bottom: 20px;
        margin-bottom: 30px;
        border-bottom: 1px solid rgba(21, 30, 47, 0.3); }
        .header__nav-item-ttl p {
          font: bold 28px/1 "Poppins", sans-serif;
          letter-spacing: 0; }
      .header__nav-item--s {
        margin-bottom: 30px;
        position: relative; }
        .header__nav-item--s a {
          font: 500 14px/1.5 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
          position: relative;
          padding-left: 12px;
          text-indent: 0em;
          display: inline-block; }
          .header__nav-item--s a::after {
            content: '';
            width: 5px;
            height: 1px;
            background-color: #151E2F;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            position: absolute; }
      .header__nav-item--ss {
        margin-bottom: 5px; }
        .header__nav-item--ss a {
          font-size: 12px;
          opacity: .8;
          padding-left: 12px;
          text-indent: 0em;
          display: inline-block;
          position: relative; }
          .header__nav-item--ss a::after {
            content: '';
            width: 5px;
            height: 1px;
            background-color: #151E2F;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            position: absolute; }
    .header__nav-item--top {
      /*header-color*/ }
    .header__nav-cnt, .header__nav-cnt--top {
      font: bold 16px/1 "Poppins", sans-serif;
      letter-spacing: 0;
      color: white; }
      .header__nav-cnt.on a, .on.header__nav-cnt--top a {
        color: #151E2F; }
    .header__nav-cnt--top {
      /*header-color*/ }
  .header__bg {
    position: absolute;
    z-index: -1;
    top: 50%;
    transform: translateY(-50%); }
  .header .menu-btn {
    position: fixed;
    top: 40px;
    right: 15px;
    z-index: 99;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    width: 48px;
    height: 48px;
    box-sizing: border-box;
    cursor: pointer;
    transition: border-color .15s ease, background-color .5s ease;
    background-color: transparent;
    border: 1px solid #151E2F;
    border-radius: 100px; }
    @media screen and (max-width: 959px) {
      .header .menu-btn {
        position: absolute;
        top: 20px;
        right: 20px;
        width: 40px;
        height: 40px;
        border: none;
        background-color: white; } }
    .header .menu-btn:hover {
      border-color: #151E2F; }
    .header .menu-btn span {
      display: block;
      position: relative;
      width: 20px;
      height: 8px; }
    .header .menu-btn__line {
      display: block;
      width: 20px;
      height: 1px;
      background-color: #151E2F;
      transition: transform .5s ease, opacity .5s ease; }
      .header .menu-btn__line + .menu-btn__line {
        margin-top: 6px; }
    .header .menu-btn.on .menu-btn__line:nth-child(1) {
      transform: rotate(45deg) translate(3px, 2px); }
    .header .menu-btn.on .menu-btn__line:nth-child(2) {
      transform: rotate(-45deg) translate(3px, -2px); }
    @media screen and (max-width: 959px) {
      .header .menu-btn .navbar-brand {
        width: 220px; } }
    .header .menu-btn .navbar-nav {
      padding-right: 50px; }
      @media screen and (max-width: 959px) {
        .header .menu-btn .navbar-nav {
          display: none; } }
    .header .menu-btn .navbar > .container-fluid {
      position: relative;
      z-index: 0; }
    .header .menu-btn .navbar > .menu {
      background: white;
      z-index: 1; }
  .header .menu {
    position: fixed;
    top: 0;
    pointer-events: none;
    opacity: 0;
    transition: all 1.4s ease;
    right: -100%;
    /**/
    width: 70%;
    /**/ }
    .header .menu.on {
      opacity: 1;
      pointer-events: all;
      width: 70%;
      min-width: 400px;
      height: 100%;
      background: #F1F1F1;
      z-index: 20;
      right: 0;
      overflow: auto; }
      .header .menu.on .menu__bk {
        opacity: 1; }
      .header .menu.on .header__container {
        display: inline-block;
        width: 100%; }
      .header .menu.on .header__logo, .header .menu.on .header__logo--top {
        padding: 35px 0 0 35px; }
      @media screen and (max-width: 959px) {
        .header .menu.on {
          width: 100%; } }
  .header .dropdown__list {
    position: absolute;
    background-color: #151E2F;
    border-radius: 3px;
    z-index: 10;
    margin-top: 20px;
    top: 20px;
    left: 0;
    height: 0;
    overflow: hidden;
    transition: all .5s ease; }
    .header .dropdown__list.product {
      width: 400px; }
    .header .dropdown__list.about {
      width: 300px; }
  .header .dropdown__ttl {
    padding-bottom: 20px;
    margin: 40px 40px 30px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
    .header .dropdown__ttl p {
      font: bold 28px/1 "Poppins", sans-serif;
      letter-spacing: 0;
      color: #1DFF25; }
  .header .dropdown__item {
    margin-bottom: 20px;
    padding: 0 40px;
    position: relative; }
    .header .dropdown__item a {
      font: 500 14px/1.5 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
      position: relative;
      padding-left: 12px;
      text-indent: 0em;
      display: inline-block;
      color: white; }
      .header .dropdown__item a::after {
        content: '';
        width: 5px;
        height: 1px;
        background-color: white;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        position: absolute; }
  .header .dropdown__hover {
    background-color: transparent;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center; }
    .header .dropdown__hover:hover {
      transition: all .5s ease; }
      .header .dropdown__hover:hover .dropdown__list {
        height: 100%; }
        .header .dropdown__hover:hover .dropdown__list.product {
          height: 650px; }
        .header .dropdown__hover:hover .dropdown__list.about {
          height: 300px; }
  .header .copyright p {
    color: #151E2F; }

/* =========================================================
	footer
========================================================= */
.footer {
  padding: 140px 80px 60px;
  width: 100%;
  background-color: #151E2F; }
  @media screen and (max-width: 959px) {
    .footer {
      padding: 80px 20px 40px; } }
  .footer__flex {
    position: relative;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 959px) {
      .footer__flex {
        display: block; } }
    .footer__flex--s {
      display: flex;
      justify-content: start; }
      .footer__flex--s .w50p {
        width: 50%; }
  .footer__logo {
    height: 30px; }
    .footer__logo img {
      height: 30px; }
  .footer__cnt-wrap {
    text-align: center;
    margin-top: 60px; }
  .footer__nav {
    margin-bottom: 40px; }
    @media screen and (max-width: 959px) {
      .footer__nav {
        margin-bottom: 30px; } }
    .footer__nav-wrap {
      width: 50%;
      padding: 0 10px;
      min-width: 300px; }
      @media screen and (max-width: 959px) {
        .footer__nav-wrap {
          width: 100%;
          min-width: 150px; } }
    .footer__nav-list {
      right: 0;
      display: flex;
      align-items: center; }
      @media screen and (max-width: 959px) {
        .footer__nav-list {
          display: none; } }
    .footer__nav-item-ttl {
      padding-bottom: 20px;
      margin-bottom: 30px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
      .footer__nav-item-ttl p {
        font: bold 28px/1 "Poppins", sans-serif;
        letter-spacing: 0;
        color: #1DFF25; }
    .footer__nav-item--s {
      margin-bottom: 20px;
      position: relative; }
      .footer__nav-item--s a {
        font: 500 14px/1.5 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
        position: relative;
        padding-left: 12px;
        text-indent: 0em;
        display: inline-block;
        color: white; }
        .footer__nav-item--s a::after {
          content: '';
          width: 5px;
          height: 1px;
          background-color: white;
          left: 0;
          top: 50%;
          transform: translateY(-50%);
          position: absolute; }
    .footer__nav-item--ss {
      margin-bottom: 5px; }
      .footer__nav-item--ss a {
        font-size: 12px;
        opacity: .8;
        padding-left: 12px;
        text-indent: 0em;
        color: white;
        display: inline-block;
        position: relative; }
        .footer__nav-item--ss a::after {
          content: '';
          width: 5px;
          height: 1px;
          background-color: white;
          left: 0;
          top: 50%;
          transform: translateY(-50%);
          position: absolute; }
    .footer__nav-cnt {
      font: bold 16px/1 "Poppins", sans-serif;
      letter-spacing: 0; }

.copyright {
  margin-top: 20px;
  text-align: center; }
  .copyright p {
    font-size: 10px;
    color: white; }

.p-recruit__bnr {
  height: 120px;
  position: relative; }
  @media screen and (max-width: 959px) {
    .p-recruit__bnr-wrap {
      display: flex;
      justify-content: center; } }
  .p-recruit__bnr-img {
    height: 120px; }
    .p-recruit__bnr-img img {
      height: 100%;
      width: auto; }
  .p-recruit__bnr .c-btnB {
    position: absolute;
    bottom: 0;
    left: 0; }

/* general
========================================================= */
.p-data {
  transition: transform .5s ease;
  transform: perspective(4000px) rotateX(-90deg);
  transform-style: preserve-3d;
  transform-origin: center bottom; }
  .p-data.fade_on {
    transform: perspective(4000px) rotateX(0); }

.p-scroll {
  position: absolute;
  height: 100px;
  bottom: 0;
  right: 0;
  width: 10px; }
  .p-scroll::before {
    content: '';
    width: 1px;
    height: 100px;
    background-color: rgba(21, 30, 47, 0.2);
    top: 0;
    left: 20px;
    position: absolute; }
  .p-scroll::after {
    content: '';
    width: 1px;
    height: 10px;
    background-color: #1DFF25;
    top: 0;
    left: 20px;
    position: absolute;
    opacity: 0;
    animation: pathmove 2s ease-in-out infinite; }
  .p-scroll p {
    transform: rotate(90deg);
    font: normal 10px/1 "Poppins", sans-serif;
    color: #151E2F;
    top: -34px;
    left: 0px;
    position: absolute; }
@keyframes pathmove {
  0% {
    height: 0;
    top: 0;
    opacity: 0; }
  30% {
    height: 70px;
    opacity: 1; }
  100% {
    height: 0;
    top: 80px;
    opacity: 0; } }
.p-copy-wrap {
  width: 100%;
  height: 100%;
  display: block; }

/* home page
========================================================= */
.p-ttl-anime h3 {
  font-family: "adobe-handwriting-ernie", sans-serif;
  font-weight: 400;
  color: #1DFF25;
  font-size: 150px; }
  @media screen and (max-width: 959px) {
    .p-ttl-anime h3 {
      font-size: 60px; } }

/*mv*/
.key-slider,
.slick-list,
.slick-track {
  height: 100%; }

.p-mv {
  position: relative;
  height: 100vh;
  margin-right: 80px; }
  @media screen and (max-width: 959px) {
    .p-mv {
      margin-right: 40px; } }
  .p-mv__cnt {
    position: absolute;
    z-index: 1;
    left: 80px;
    bottom: 80px; }
    @media screen and (max-width: 959px) {
      .p-mv__cnt {
        left: 0;
        bottom: 40px;
        padding-left: 20px; } }
  .p-mv__copy p {
    font: normal 116px/1.1 "Poppins", sans-serif;
    font-weight: 300 !important;
    letter-spacing: -0.04em;
    color: #1DFF25; }
  @media screen and (max-width: 959px) {
    .p-mv__copy p {
      font-size: 60px; } }
  .p-mv__copy--s {
    margin-bottom: 20px;
    position: relative; }
    .p-mv__copy--s::after {
      content: '';
      width: 120px;
      height: 1px;
      background-color: #1DFF25;
      left: 200px;
      top: 50%;
      transform: translateY(-50%);
      position: absolute; }
      @media screen and (max-width: 959px) {
        .p-mv__copy--s::after {
          width: 60px;
          left: 130px; } }
    .p-mv__copy--s p {
      font-family: "brandon-grotesque", sans-serif;
      font-size: 22px;
      font-weight: 700;
      color: #1DFF25; }
    @media screen and (max-width: 959px) {
      .p-mv__copy--s {
        margin-bottom: 10px; }
        .p-mv__copy--s p {
          font-size: 14px; } }
  .p-mv__copy--ja {
    margin-top: 40px;
    margin-bottom: 50px; }
    .p-mv__copy--ja p {
      font: bold 28px/1 "Zen Kaku Gothic New", sans-serif;
      color: white;
      letter-spacing: .2em; }
    @media screen and (max-width: 959px) {
      .p-mv__copy--ja {
        margin-top: 20px;
        margin-bottom: 30px; }
        .p-mv__copy--ja p {
          font-size: 16px; } }
  .p-mv__rosette {
    overflow: hidden;
    position: absolute;
    z-index: 100;
    right: 0;
    top: 0; }
    .p-mv__rosette-bk {
      position: relative;
      animation: 18s linear infinite rotation;
      width: 160px; }
      .p-mv__rosette-bk img {
        width: 160px; }
      @media screen and (max-width: 959px) {
        .p-mv__rosette-bk {
          width: 100px; }
          .p-mv__rosette-bk img {
            width: 100px; } }
    .p-mv__rosette-txt {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      margin-top: 2px; }
@keyframes rotation {
  0% {
    transform: rotate(0); }
  100% {
    transform: rotate(360deg); } }
  .p-mv__bk {
    height: 100%;
    width: 100%;
    overflow: hidden;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 0; }
    .p-mv__bk img, .p-mv__bk picture {
      object-fit: cover;
      height: 100%;
      width: 100%; }
  .p-mv .c-btn a {
    width: 240px; }
  .p-mv .p-scroll {
    right: -37px; }
    @media screen and (max-width: 959px) {
      .p-mv .p-scroll {
        right: -10px; } }

/*concept*/
.p-concept {
  position: relative;
  margin-right: 80px; }
  @media screen and (max-width: 959px) {
    .p-concept {
      margin-right: 40px; } }
  .p-concept .p-ttl-anime {
    text-align: right; }
  .p-concept__inner {
    background-color: white;
    padding: 140px 0;
    position: relative; }
    .p-concept__inner::after {
      content: '';
      background-image: url(/svg/gradation.svg);
      background-repeat: no-repeat;
      background-size: contain;
      background-position: left 50% bottom 30%;
      position: absolute;
      width: 100%;
      height: 100%;
      bottom: 0%;
      left: 50%;
      transform: translateX(-50%);
      z-index: 0; }
    @media screen and (max-width: 959px) {
      .p-concept__inner {
        padding: 60px 0 80px 0; } }
  .p-concept__copy {
    margin-top: 20px;
    position: relative;
    z-index: 1; }
  .p-concept__copy-txt {
    margin-top: -3px;
    display: block;
    background-color: #151E2F;
    padding: 0 20px; }
    .p-concept__copy-txt p {
      color: white;
      font: bold 36px/2 "Zen Kaku Gothic New", sans-serif;
      display: inline-block;
      letter-spacing: .02em; }
      @media screen and (max-width: 959px) {
        .p-concept__copy-txt p {
          font: bold 20px/2 "Zen Kaku Gothic New", sans-serif; } }
  .p-concept__txt {
    margin: 40px auto 20px;
    position: relative;
    z-index: 1; }
    .p-concept__txt p {
      margin-bottom: 15px;
      display: block;
      font: bold 16px/1.8 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
      letter-spacing: .2em; }
      .p-concept__txt p:last-child {
        margin-bottom: 0; }
    @media screen and (max-width: 959px) {
      .p-concept__txt {
        padding: 0 20px; }
        .p-concept__txt p {
          font-size: 13px; } }
  .p-concept .c-btn-txt {
    margin-top: 20px;
    position: relative;
    z-index: 1; }
  .p-concept__img-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 60px; }
    @media screen and (max-width: 959px) {
      .p-concept__img-wrap {
        margin-top: 40px; } }
  .p-concept__img-wrap {
    position: relative;
    z-index: 1; }
  .p-concept__img {
    width: 200px; }
    .p-concept__img img {
      width: 100%; }

/*product about general*/
.p-top-copy-wrap {
  position: relative; }

.p-copy-bk {
  position: relative;
  right: -80px;
  padding: 40px 120px 0px 32px;
  overflow: hidden;
  width: 100%;
  height: 550px; }
  .p-copy-bk img, .p-copy-bk picture {
    width: 100%;
    height: 550px;
    object-fit: cover; }
  @media screen and (max-width: 959px) {
    .p-copy-bk {
      right: -20px;
      padding: 60px 0 0;
      height: 100%; }
      .p-copy-bk img, .p-copy-bk picture {
        height: 100%; } }
  .p-copy-bk.left {
    right: auto;
    left: -80px;
    padding: 40px 32px 0 120px; }
    @media screen and (max-width: 959px) {
      .p-copy-bk.left {
        right: auto;
        left: -20px;
        padding: 60px 0 0; } }

.p-copy-tate {
  position: absolute;
  top: 0px;
  display: flex;
  align-items: flex-start;
  flex-direction: row-reverse;
  overflow: hidden; }
  @media screen and (max-width: 959px) {
    .p-copy-tate {
      top: 40px; } }
  .p-copy-tate__txt {
    background-color: white;
    padding: 20px 10px; }
    .p-copy-tate__txt img {
      width: 36px; }
    @media screen and (max-width: 959px) {
      .p-copy-tate__txt {
        padding: 10px 5px; }
        .p-copy-tate__txt img {
          width: 17px; } }
  .p-copy-tate.left {
    right: 0; }

.p-copy__btn {
  position: absolute;
  bottom: 0;
  right: 40px; }
  .p-copy__btn-txt {
    text-align: right; }
    .p-copy__btn-txt p {
      font: bold 22px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
      color: white;
      background-color: #151E2F;
      padding: 5px 10px;
      display: inline-block; }
    .p-copy__btn-txt.ac p {
      background-color: #1DFF25;
      color: #151E2F; }
    .p-copy__btn-txt.left {
      text-align: left; }
  @media screen and (max-width: 959px) {
    .p-copy__btn {
      right: -20px; }
      .p-copy__btn-txt p {
        font-size: 12px; } }
  .p-copy__btn.left {
    right: auto;
    left: 40px; }
    .p-copy__btn.left-txt {
      text-align: left; }
    @media screen and (max-width: 959px) {
      .p-copy__btn.left {
        left: -20px; } }

/*product*/
.p-top-product {
  position: relative;
  padding: 0 80px;
  overflow: hidden;
  width: 100%; }
  .p-top-product .p-ttl-anime {
    position: absolute;
    top: -40px;
    right: 0;
    text-align: right; }
  @media screen and (max-width: 959px) {
    .p-top-product {
      padding: 0px 40px 0 0px; } }
  .p-top-product::before {
    content: '';
    width: calc(100% - 80px);
    height: 100px;
    background-color: white;
    top: 0;
    left: 0;
    position: absolute;
    z-index: -1; }
    @media screen and (max-width: 959px) {
      .p-top-product::before {
        width: calc(100% - 40px);
        height: 140px; } }
  .p-top-product::after {
    content: '';
    width: calc(100% - 170px);
    height: 100%;
    background-color: #008949;
    top: 0;
    left: 0;
    position: absolute;
    z-index: 0; }
    @media screen and (max-width: 959px) {
      .p-top-product::after {
        width: calc(100% - 60px); } }
  .p-top-product__inner {
    padding: 195px 0 140px 0px;
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 959px) {
      .p-top-product__inner {
        padding: 80px 0px; } }
  .p-top-product__cnt {
    padding: 40px 120px 0px 112px; }
    @media screen and (max-width: 959px) {
      .p-top-product__cnt {
        padding: 40px 40px 0 20px; } }
  .p-top-product__txt p {
    font: normal 16px/2 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    letter-spacing: .8px;
    color: white;
    margin-bottom: 20px; }
    .p-top-product__txt p:last-child {
      margin-bottom: 0; }
  @media screen and (max-width: 959px) {
    .p-top-product__txt p {
      font-size: 14px; } }
  .p-top-product__lineup {
    margin: 60px 0; }
    @media screen and (max-width: 959px) {
      .p-top-product__lineup {
        margin: 40px 0; } }
    .p-top-product__lineup-list {
      grid-template-columns: 1fr 1fr 1fr;
      column-gap: 10px;
      row-gap: 10px; }
      @media screen and (max-width: 959px) {
        .p-top-product__lineup-list {
          grid-template-columns: 1fr 1fr; } }
    .p-top-product__lineup-item {
      background-color: white;
      padding: 20px;
      border-radius: 3px;
      text-align: center; }
      @media screen and (max-width: 959px) {
        .p-top-product__lineup-item {
          padding: 10px; } }
  .p-top-product .c-btn-txt a {
    color: white; }
    .p-top-product .c-btn-txt a::before {
      background-image: url(/svg/arrow-w.svg); }
  .p-top-product .p-scroll {
    right: 10px; }
    @media screen and (max-width: 959px) {
      .p-top-product .p-scroll {
        right: 0; } }

/*about*/
.p-top-about {
  position: relative;
  overflow: hidden;
  padding: 0 80px;
  width: 100%; }
  .p-top-about .p-ttl-anime {
    position: absolute;
    top: -40px;
    left: -40px; }
  @media screen and (max-width: 959px) {
    .p-top-about {
      padding: 0px 0 0 40px; } }
  .p-top-about::after {
    content: '';
    width: calc(100% - 170px);
    height: 100%;
    background-color: #008949;
    top: 0;
    right: 0;
    position: absolute;
    z-index: 0; }
    @media screen and (max-width: 959px) {
      .p-top-about::after {
        width: calc(100% - 40px); } }
  .p-top-about__inner {
    padding: 195px 0 160px 0px;
    position: relative;
    z-index: 1; }
    @media screen and (max-width: 959px) {
      .p-top-about__inner {
        padding: 80px 0 100px; } }
  .p-top-about__cnt {
    padding: 40px 112px 0 120px; }
    @media screen and (max-width: 959px) {
      .p-top-about__cnt {
        padding: 40px 20px 0 20px; } }
  .p-top-about__txt p {
    font: normal 16px/2 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    letter-spacing: .8px;
    color: white;
    margin-bottom: 20px; }
    .p-top-about__txt p:last-child {
      margin-bottom: 0; }
  @media screen and (max-width: 959px) {
    .p-top-about__txt p {
      font-size: 14px; } }
  .p-top-about .c-btn-txt a {
    color: white; }
    .p-top-about .c-btn-txt a::before {
      background-image: url(/svg/arrow-w.svg); }

/*top-works*/
.p-top-works {
  margin-top: -40px; }
  @media screen and (max-width: 959px) {
    .p-top-works {
      margin-top: -24px; } }
  .p-top-works .p-works__list {
    margin: 100px auto 140px;
    display: flex; }
    @media screen and (max-width: 959px) {
      .p-top-works .p-works__list {
        margin: 80px auto; } }
  .p-top-works .p-works__item {
    margin-right: 20px; }
    @media screen and (max-width: 959px) {
      .p-top-works .p-works__item {
        margin-right: 10px;
        height: 100% !important; } }
  .p-top-works .slick-list {
    height: 100% !important; }
  .p-top-works .slick-arrow {
    display: none !important; }
  .p-top-works .slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 4px;
    content: '';
    background-color: #151E2F;
    text-align: center;
    opacity: .25; }
  .p-top-works .slick-dots li.slick-active button:before {
    background-color: #1DFF25;
    opacity: 1; }
  .p-top-works .slick-dots {
    bottom: -40px; }
  .p-top-works .slick-track {
    display: flex; }
  .p-top-works .slick-slide {
    height: auto !important; }

/*top-news*/
.p-top-news {
  padding-right: 80px;
  margin: 100px 0; }
  .p-top-news .p-ttl-anime {
    position: relative;
    left: 80px; }
    .p-top-news .p-ttl-anime h3 {
      color: #151E2F; }
    @media screen and (max-width: 959px) {
      .p-top-news .p-ttl-anime {
        left: 20px; } }
  @media screen and (max-width: 959px) {
    .p-top-news {
      padding-right: 20px;
      margin: 80px 0; } }
  .p-top-news__inner {
    background-color: white;
    padding: 100px 0; }
    @media screen and (max-width: 959px) {
      .p-top-news__inner {
        padding: 60px 0; } }
  .p-top-news .p-list-info {
    padding: 0 80px; }
    @media screen and (max-width: 959px) {
      .p-top-news .p-list-info {
        padding: 0 20px; } }
  .p-top-news .c-btnB {
    margin-top: 40px; }
    @media screen and (max-width: 959px) {
      .p-top-news .c-btnB {
        margin-top: 20px; } }

/* under page
========================================================= */
.p-works {
  margin-top: 140px;
  position: relative; }
  @media screen and (max-width: 959px) {
    .p-works {
      margin-top: 80px; } }
  .p-works__list {
    display: flex;
    justify-content: space-between;
    margin: 100px auto 60px; }
    @media screen and (max-width: 959px) {
      .p-works__list {
        margin: 80px auto 40px;
        overflow: hidden; } }
  .p-works__item {
    width: 30%;
    position: relative; }
    .p-works__item a {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: column; }
    .p-works__item .c-btnB {
      position: absolute;
      right: 0;
      bottom: 0; }
      .p-works__item .c-btnB div {
        padding: 9px 55px 9px 25px;
        font-size: 14px; }
        .p-works__item .c-btnB div::before {
          width: 36px;
          height: 10px;
          right: 10px;
          bottom: 11px; }
    @media screen and (max-width: 959px) {
      .p-works__item {
        width: 100%;
        max-width: 400px;
        margin: 0 10px; } }
  .p-works__img {
    width: 100%;
    height: 350px;
    overflow: hidden;
    position: relative; }
    .p-works__img img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    @media screen and (max-width: 959px) {
      .p-works__img {
        height: 250px; } }
  .p-works__txt {
    background-color: white;
    padding: 16px 20px;
    display: flex;
    width: 100%;
    height: calc(100% - 350px); }
    @media screen and (max-width: 959px) {
      .p-works__txt {
        height: calc(100% - 250px); } }
  .p-works__txt-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%; }
    @media screen and (max-width: 959px) {
      .p-works__txt-inner {
        flex-flow: column; } }
  .p-works__ttl {
    width: 100%;
    text-align: left; }
    .p-works__ttl p {
      font: 500 14px/1.6 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif !important;
      color: #008949; }
    @media screen and (max-width: 959px) {
      .p-works__ttl {
        width: 100%; } }
  .p-works__date {
    width: 20%; }
    .p-works__date p {
      opacity: .8;
      font: normal 12px/1 "Poppins", sans-serif; }
    @media screen and (max-width: 959px) {
      .p-works__date {
        text-align: right;
        margin-top: 10px;
        width: 100%; } }
  .p-works__cate {
    margin-top: -5px; }
    .p-works__cate span {
      font: 500 11px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
      letter-spacing: .08em;
      color: white;
      padding: 5px 7px 6px;
      margin-bottom: 3px;
      display: inline-block; }
      .p-works__cate span.results01 {
        background-color: #9898BA; }
      .p-works__cate span.results02 {
        background-color: #5FA6C2; }
      .p-works__cate span.results03 {
        background-color: #EF8166; }
      .p-works__cate span.results04 {
        background-color: #A0B12D; }
      .p-works__cate span.results05 {
        background-color: #EAA52E; }
      .p-works__cate span.results06 {
        background-color: #A46BAF; }
      .p-works__cate span.results07 {
        background-color: #49bd71; }
  .p-works .slick-next:before, .p-works .slick-prev:before {
    display: none !important; }
  .p-works .slick-track {
    display: flex; }
  .p-works .slick-slide {
    height: auto !important; }

.p-breadcrumbs {
  margin-top: 20px; }
  .p-breadcrumbs__list {
    display: flex;
    justify-content: flex-start; }
  .p-breadcrumbs__item {
    margin-right: 30px;
    position: relative; }
    @media screen and (max-width: 959px) {
      .p-breadcrumbs__item {
        margin-right: 20px; } }
    .p-breadcrumbs__item::after {
      content: url(/svg/arrow-b.svg);
      width: 8px;
      height: 3px;
      right: -21px;
      position: absolute; }
      @media screen and (max-width: 959px) {
        .p-breadcrumbs__item::after {
          right: -16px; } }
    .p-breadcrumbs__item p {
      display: inline-block;
      font: 500 12px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
      @media screen and (max-width: 959px) {
        .p-breadcrumbs__item p {
          font-size: 10px; } }
    .p-breadcrumbs__item a {
      text-decoration: underline;
      font: 500 12px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
      @media screen and (max-width: 959px) {
        .p-breadcrumbs__item a {
          font-size: 10px; } }
    .p-breadcrumbs__item:last-child {
      margin-right: 0; }
      .p-breadcrumbs__item:last-child::after {
        content: ''; }

.p-lead {
  padding: 0;
  margin: 140px 0 140px 0;
  position: relative;
  overflow: hidden; }
  @media screen and (max-width: 959px) {
    .p-lead {
      margin: 60px 0 80px 0; } }
  .p-lead::after, .p-lead::before {
    content: '';
    width: calc(50% + 530px);
    height: 100%;
    background-color: rgba(21, 30, 47, 0.04);
    top: 30px;
    left: 0px;
    position: absolute;
    z-index: 1; }
    @media screen and (max-width: 959px) {
      .p-lead::after, .p-lead::before {
        width: calc(100% + 20px);
        top: 20px; } }
  .p-lead::after {
    width: 50%;
    background-color: white;
    top: 0;
    left: 0; }
  .p-lead__inner {
    max-width: 1000px;
    margin: 0 auto;
    background-color: white;
    padding: 80px;
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 959px) {
      .p-lead__inner {
        padding: 40px 30px; } }
  .p-lead__txt-wrap {
    position: relative;
    z-index: 2; }
    .p-lead__txt-wrap p {
      font: 500 18px/2.4 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
      letter-spacing: .08em; }
      @media screen and (max-width: 959px) {
        .p-lead__txt-wrap p {
          font-size: 14px; } }

.p-kaikae {
  background-color: #008949;
  padding-left: 80px; }
  @media screen and (max-width: 959px) {
    .p-kaikae {
      padding-left: 20px; } }
  .p-kaikae__list {
    margin-top: 140px; }
    @media screen and (max-width: 959px) {
      .p-kaikae__list {
        margin-top: 80px; } }
  .p-kaikae__item {
    background-color: white;
    margin: 20px 0 80px 20px;
    padding: 80px 100px;
    position: relative; }
    .p-kaikae__item:last-child {
      margin-bottom: 0; }
    @media screen and (max-width: 959px) {
      .p-kaikae__item {
        padding: 60px 20px 40px 40px; } }
  .p-kaikae__ttl p {
    font: bold 30px/1.4 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
    @media screen and (max-width: 959px) {
      .p-kaikae__ttl p {
        font: bold 20px/1.6 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; } }
  .p-kaikae__txt {
    margin-top: 40px; }
    .p-kaikae__txt p {
      font: 500 18px/1.8 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
    @media screen and (max-width: 959px) {
      .p-kaikae__txt {
        margin-top: 30px; }
        .p-kaikae__txt p {
          font-size: 14px; } }
  .p-kaikae__flex {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 959px) {
      .p-kaikae__flex {
        display: block; } }
  .p-kaikae__inner {
    width: calc(100% - 420px); }
    @media screen and (max-width: 959px) {
      .p-kaikae__inner {
        width: 100%; } }
  .p-kaikae__img {
    margin-left: 20px; }
    @media screen and (max-width: 959px) {
      .p-kaikae__img {
        margin: 20px auto 0;
        text-align: center; } }
  .p-kaikae__tag {
    position: absolute;
    top: -20px;
    left: -20px;
    background-color: #151E2F;
    padding: 24px 10px 16px 10px;
    width: 100px;
    text-align: center;
    display: inline-block; }
    .p-kaikae__tag p {
      color: white;
      font: bold 14px/1.1 "Poppins", sans-serif;
      letter-spacing: .08em; }
    .p-kaikae__tag span {
      font-size: 50px;
      letter-spacing: 0; }
    @media screen and (max-width: 959px) {
      .p-kaikae__tag {
        width: 66px;
        padding: 16px 10px 10px 10px; }
        .p-kaikae__tag p {
          font-size: 12px; }
        .p-kaikae__tag span {
          font-size: 36px; } }

.p-lease {
  background-color: white; }
  .p-lease__list {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    max-width: 1600px;
    margin: 100px auto 0;
    justify-items: center; }
    @media (max-width: 1500px) and (min-width: 961px) {
      .p-lease__list {
        grid-template-columns: 1fr 1fr;
        max-width: 1000px; } }
    @media screen and (max-width: 959px) {
      .p-lease__list {
        grid-template-columns: 1fr;
        margin-top: 80px;
        row-gap: 50px; } }
  .p-lease__item {
    background-color: #F1F1F1;
    border-radius: 5px;
    padding: 60px 20px 40px;
    position: relative;
    max-width: 400px; }
    @media screen and (max-width: 959px) {
      .p-lease__item {
        padding: 60px 20px 20px; } }
  .p-lease__ttl {
    background-color: #151E2F;
    display: inline-block;
    padding: 5px 10px;
    position: absolute;
    top: -20px;
    left: 0; }
    .p-lease__ttl p {
      font: bold 22px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
      color: white; }
    @media screen and (max-width: 959px) {
      .p-lease__ttl {
        top: -16px; } }
  .p-lease__img {
    text-align: center; }
    .p-lease__img img {
      width: auto;
      height: 100%;
      max-height: 120px; }
  .p-lease__txt {
    margin-top: 40px; }
    .p-lease__txt p {
      font: 500 14px/1.8 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
  .p-lease__point {
    background-color: #008949;
    border-radius: 50px;
    height: 85px;
    width: 85px;
    position: absolute;
    right: -20px;
    top: -20px; }
    @media screen and (max-width: 959px) {
      .p-lease__point {
        top: -16px;
        right: -16px; } }
  .p-lease__point-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    text-align: center;
    position: relative; }
    .p-lease__point-inner::after {
      content: '';
      width: 75px;
      height: 75px;
      border-radius: 50px;
      border: 1px solid white;
      background-color: #008949;
      right: 5px;
      top: 5px;
      position: absolute;
      z-index: 1; }
    .p-lease__point-inner p {
      color: white;
      font: bold 12px/1.4 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
      position: relative;
      z-index: 2; }
    .p-lease__point-inner span {
      font-size: 16px;
      text-decoration: underline; }

.p-leaseflow {
  background-color: white; }
  .p-leaseflow__list {
    margin: 100px auto 0; }
    @media screen and (max-width: 959px) {
      .p-leaseflow__list {
        margin-top: 60px; } }
  .p-leaseflow__item {
    position: relative;
    margin-bottom: 40px;
    background-color: #F1F1F1;
    padding: 60px;
    display: flex;
    align-items: center; }
    .p-leaseflow__item:last-child {
      margin-bottom: 0; }
    @media screen and (max-width: 959px) {
      .p-leaseflow__item {
        padding: 30px 20px;
        display: block;
        text-align: center; } }
  .p-leaseflow__ttl {
    display: flex;
    align-items: center;
    justify-content: flex-start; }
    .p-leaseflow__ttl p {
      font: bold 22px/1.6 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
      color: #008949; }
    .p-leaseflow__ttl img {
      height: 1.8rem;
      width: auto;
      margin-right: 15px; }
    @media screen and (max-width: 959px) {
      .p-leaseflow__ttl p {
        font-size: 18px;
        margin-bottom: 4px; }
      .p-leaseflow__ttl img {
        height: 1.5rem;
        margin-right: 10px; } }
  .p-leaseflow__txt {
    margin-top: 20px;
    text-align: left; }
    .p-leaseflow__txt p {
      font: 500 14px/1.8 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
    @media screen and (max-width: 959px) {
      .p-leaseflow__txt {
        margin-top: 10px; } }
  .p-leaseflow__tag {
    margin-right: 20px;
    padding: 20px 20px 20px 0;
    border-right: 1px solid #151E2F;
    text-align: center;
    display: inline-block; }
    .p-leaseflow__tag p {
      font: bold 16px/1.1 "Poppins", sans-serif;
      letter-spacing: .08em; }
    .p-leaseflow__tag span {
      font-size: 40px;
      letter-spacing: 0; }
    @media screen and (max-width: 959px) {
      .p-leaseflow__tag {
        margin: 0 auto 20px auto;
        padding: 0 20px 5px 20px;
        border-right: none;
        border-bottom: 1px solid #151E2F; }
        .p-leaseflow__tag p {
          font-size: 14px; }
        .p-leaseflow__tag span {
          font-size: 30px; } }

.p-shiyou {
  position: relative;
  margin: 80px 0 0 80px;
  background-color: #008949; }
  @media screen and (max-width: 959px) {
    .p-shiyou {
      margin: 20px 0 0 20px; } }
  .p-shiyou__list {
    padding: 100px 20px 0;
    margin: 0 auto;
    display: flex;
    justify-content: center; }
    @media screen and (max-width: 959px) {
      .p-shiyou__list {
        display: grid;
        padding: 60px 40px 0; } }
  .p-shiyou__item {
    max-width: 400px;
    margin-right: 40px;
    position: relative; }
    .p-shiyou__item a {
      position: relative;
      display: inline-block;
      width: 100%;
      height: 100%; }
    .p-shiyou__item:last-child {
      margin-right: 0; }
    .p-shiyou__item .c-btnB {
      position: absolute;
      bottom: 0;
      right: 0;
      width: auto; }
      .p-shiyou__item .c-btnB div {
        font-size: 11px;
        padding: 10px 35px 8px 15px; }
        .p-shiyou__item .c-btnB div::before {
          width: 36px;
          right: -10px;
          bottom: 5px; }
    @media screen and (max-width: 959px) {
      .p-shiyou__item {
        margin-bottom: 40px;
        margin-right: 0; }
        .p-shiyou__item:last-child {
          margin-bottom: 0; } }
  .p-shiyou__img {
    padding: 40px 20px;
    background-color: white; }

.p-supplies__inner {
  background-color: white;
  padding: 80px;
  margin: 80px auto 0;
  position: relative; }
  @media screen and (max-width: 959px) {
    .p-supplies__inner {
      padding: 60px 20px;
      margin-top: 60px; } }
.p-supplies__list {
  grid-template-columns: 1fr 1fr; }
  @media screen and (max-width: 959px) {
    .p-supplies__list {
      grid-template-columns: 1fr;
      row-gap: 30px; } }
.p-supplies__item {
  background-color: #F1F1F1;
  padding: 40px 40px 40px 20px;
  border-radius: 5px;
  text-align: center;
  position: relative;
  box-shadow: 3px 3px rgba(21, 30, 47, 0.2);
  transition: all .3s ease; }
  .p-supplies__item::before {
    content: '';
    background-image: url(/svg/arrow-b.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 10px;
    height: 12px;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    position: absolute; }
  .p-supplies__item:hover {
    transform: translate3d(3px, 3px, 0);
    box-shadow: 0 0 0; }
  @media screen and (max-width: 959px) {
    .p-supplies__item {
      padding: 40px 20px; } }
.p-supplies__txt {
  margin-bottom: 15px; }
  .p-supplies__txt p {
    font: bold 12px/1.6 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    letter-spacing: .18em; }
.p-supplies__logo {
  height: 30px; }
  .p-supplies__logo img {
    height: 30px;
    width: auto; }
  @media screen and (max-width: 959px) {
    .p-supplies__logo {
      height: 24px; }
      .p-supplies__logo img {
        height: 24px; } }

.p-sim {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto; }
  .p-sim .hidden {
    display: none; }
  .p-sim__inner {
    padding: 80px;
    display: flex;
    border-bottom: 1px solid #151E2F; }
    .p-sim__inner:first-child {
      padding-top: 0; }
    .p-sim__inner:last-child {
      border-bottom: none;
      padding-bottom: 0; }
    @media screen and (max-width: 959px) {
      .p-sim__inner {
        display: block;
        padding: 60px 0; } }
  .p-sim__cnt {
    width: 100%; }
  .p-sim__step {
    text-align: center;
    margin-right: 60px;
    padding-right: 40px;
    border-right: 1px solid rgba(21, 30, 47, 0.1); }
    .p-sim__step p {
      font: bold 16px/1 "Poppins", sans-serif; }
    .p-sim__step span {
      font: bold 40px/1 "Poppins", sans-serif; }
    @media screen and (max-width: 959px) {
      .p-sim__step {
        margin-right: 0;
        padding-right: 0;
        margin-bottom: 40px;
        border-right: none; } }
    @media screen and (max-width: 560px) {
      .p-sim__step {
        margin-bottom: 10px; } }
  .p-sim__ttl {
    margin-bottom: 20px; }
    .p-sim__ttl h3 {
      font: bold 24px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
    @media screen and (max-width: 560px) {
      .p-sim__ttl {
        margin-bottom: 40px; }
        .p-sim__ttl h3 {
          text-align: center;
          letter-spacing: 0.2em;
          margin-left: 5px;
          font-weight: normal; } }
  .p-sim__txt p {
    font: 500 16px/1.8 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
  .p-sim__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    margin-top: 40px; }
    @media screen and (max-width: 560px) {
      .p-sim__list {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 10px;
        margin-top: 20px; } }
  .p-sim__item {
    position: relative;
    border-radius: 3px;
    transition: transform .15s ease; }
    .p-sim__item:hover {
      transform: scale(1.01); }
    .p-sim__item label {
      width: 100%;
      height: 100%;
      cursor: pointer; }
      .p-sim__item label.selected .p-sim__item-inner {
        background-color: #008949; }
      .p-sim__item label.selected .p-sim__choice p {
        color: white; }
      .p-sim__item label.selected .p-sim__checkbox {
        border-color: white; }
        .p-sim__item label.selected .p-sim__checkbox::after {
          opacity: 1; }
  .p-sim__item-inner {
    background-color: white;
    padding: 1px;
    transition: background-color .15s ease; }
  .p-sim__choice {
    padding: 20px;
    display: flex;
    align-items: center; }
    .p-sim__choice p {
      font: bold 16px/1.5 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
    @media screen and (max-width: 560px) {
      .p-sim__choice {
        padding: 12px; }
        .p-sim__choice p {
          font-size: 14px !important; } }
  .p-sim__img {
    min-height: 180px;
    max-height: 180px;
    height: 100%;
    width: 100%;
    overflow: hidden; }
    @media screen and (max-width: 560px) {
      .p-sim__img {
        min-height: 90px;
        height: 90px; } }
    .p-sim__img img {
      height: 180px;
      width: 100%;
      object-fit: cover; }
      @media screen and (max-width: 560px) {
        .p-sim__img img {
          height: 90px; } }
  .p-sim__checkbox {
    margin-right: 10px;
    margin-bottom: -2px;
    border-radius: 2px;
    height: 1.2em;
    width: 1.2em;
    border: 2px solid #008949;
    position: relative; }
    .p-sim__checkbox::after {
      content: '';
      width: 1.4em;
      height: 1.4em;
      background-image: url(/svg/tick.svg);
      background-repeat: no-repeat;
      background-size: contain;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      position: absolute;
      opacity: 0; }
  .p-sim__txtarea {
    margin-top: 40px; }
    .p-sim__txtarea textarea {
      width: 100%;
      height: 120px;
      border: 1px solid #ddd;
      border-radius: 3px;
      padding: 15px; }

.p-result {
  background-color: #008949;
  padding-left: 80px;
  margin-bottom: 140px; }
  @media screen and (max-width: 959px) {
    .p-result {
      margin-bottom: 80px;
      padding-left: 40px; } }
  .p-result__inner {
    background-color: white;
    padding: 80px;
    margin-top: 80px; }
    @media screen and (max-width: 959px) {
      .p-result__inner {
        padding: 80px 20px; } }
  .p-result__flex {
    display: flex;
    align-items: center;
    justify-content: space-between; }
    @media screen and (max-width: 959px) {
      .p-result__flex {
        display: block; } }
  .p-result__flex-inner {
    width: calc(50% - 20px); }
    @media screen and (max-width: 959px) {
      .p-result__flex-inner {
        width: 100%; } }
  .p-result__attention {
    margin-top: 20px;
    margin-left: 20px; }
    @media screen and (max-width: 959px) {
      .p-result__attention {
        margin-left: 0; } }
    .p-result__attention p {
      font: 500 10px/1.8 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
      padding-left: 1em;
      text-indent: -1em; }
  .p-result .table tr {
    border-right: none;
    border-left: none;
    border-top: none;
    border-bottom: 1px solid rgba(0, 137, 73, 0.3); }
    .p-result .table tr:first-child {
      border-top: 1px solid rgba(0, 137, 73, 0.3); }
  .p-result .table th, .p-result .table td {
    padding: 10px 20px;
    border-right: none; }
  .p-result .table th {
    color: #151E2F;
    background-color: white; }
  @media screen and (max-width: 959px) {
    .p-result .table th {
      border-bottom: 1px solid rgba(137, 142, 150, 0.1) !important; } }
  .p-result__total {
    margin-left: 20px; }
    .p-result__total p {
      font: bold 20px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
    .p-result__total span {
      font: bold 76px/1.5 "Poppins", sans-serif;
      color: #008949;
      letter-spacing: -0em; }
    @media screen and (max-width: 959px) {
      .p-result__total {
        margin-left: 0;
        margin-top: 40px;
        text-align: center; }
        .p-result__total span {
          font-size: 50px; } }

.p-zisseki__nav-list {
  grid-template-columns: 1fr 1fr 1fr;
  column-gap: 5px;
  row-gap: 5px; }
  @media screen and (max-width: 959px) {
    .p-zisseki__nav-list {
      grid-template-columns: 1fr 1fr; } }
.p-zisseki__nav-item {
  position: relative;
  transition: opacity .15s ease; }
  .p-zisseki__nav-item a {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding: 10px;
    border: 1px solid #151E2F; }
    @media screen and (max-width: 959px) {
      .p-zisseki__nav-item a {
        padding: 0; } }
  .p-zisseki__nav-item::after {
    content: '';
    background-image: url(/svg/arrow-b.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 6px;
    height: 8px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
    position: absolute; }
  .p-zisseki__nav-item:hover {
    opacity: .6; }
.p-zisseki__nav-item-img img {
  vertical-align: bottom; }
  @media screen and (min-width: 960px) {
    .p-zisseki__nav-item-img img {
      margin-bottom: 10px; } }
.p-zisseki__nav-item-ttl p {
  font: 500 16px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  letter-spacing: .05em; }
  @media screen and (max-width: 959px) {
    .p-zisseki__nav-item-ttl p {
      font-size: 13px; } }
.p-zisseki__nav-item-ttl span {
  display: inline-block;
  padding: 10px 15px;
  background: #151E2F;
  color: white;
  margin-right: 20px;
  font: bold 12px/1 "Poppins", sans-serif;
  vertical-align: 2px;
  width: 83px;
  text-align: center;
  text-transform: uppercase; }
  @media screen and (max-width: 959px) {
    .p-zisseki__nav-item-ttl span {
      font-size: 10px;
      padding: 10px 5px;
      margin-right: 5px;
      width: 54px; } }
.p-zisseki__nav-item-ttl.ac {
  background: white; }
.p-zisseki__wrap {
  margin-bottom: 60px; }
  .p-zisseki__wrap:last-child {
    margin-bottom: 0; }
.p-zisseki__item {
  padding: 20px;
  border-bottom: 1px solid #898E96;
  display: flex;
  justify-content: space-between;
  align-items: center; }
.p-zisseki__name p {
  font: 500 14px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
.p-zisseki__area p {
  font: 500 12px/1 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
  opacity: .8; }

.p-reason {
  background-color: #008949; }
  .p-reason__item {
    padding-left: 80px;
    margin-bottom: 60px;
    position: relative;
    overflow: hidden; }
    .p-reason__item:last-child {
      margin-bottom: 0; }
    .p-reason__item.left {
      padding-left: 0;
      padding-right: 80px; }
    @media screen and (max-width: 959px) {
      .p-reason__item {
        padding-left: 20px;
        margin-bottom: 40px; }
        .p-reason__item.left {
          padding-left: 0;
          padding-right: 20px; } }
  .p-reason__inner {
    margin-left: 170px;
    padding: 80px;
    background-color: white; }
    .p-reason__inner.left {
      margin-right: 170px;
      margin-left: 0; }
    @media screen and (max-width: 959px) {
      .p-reason__inner {
        margin-left: 40px;
        padding: 40px 20px; }
        .p-reason__inner.left {
          margin-right: 40px;
          margin-left: 0; } }
  .p-reason__flex {
    display: flex;
    justify-content: space-between; }
    @media (max-width: 1300px) {
      .p-reason__flex {
        display: block; } }
    @media screen and (max-width: 959px) {
      .p-reason__flex {
        display: block; } }
    .p-reason__flex.left {
      flex-direction: row-reverse; }
  .p-reason__cnt-txt {
    width: 55%; }
  .p-reason__cnt-img {
    max-height: 500px;
    margin-left: 60px; }
    .p-reason__cnt-img.left {
      margin-left: 0;
      margin-right: 60px; }
    .p-reason__cnt-img img {
      width: auto;
      height: 100%;
      max-height: 500px; }
  @media (max-width: 1300px) {
    .p-reason__cnt-txt {
      width: 100%; }
    .p-reason__cnt-img {
      width: 100%;
      max-height: 350px;
      margin: 40px auto 0;
      text-align: center; }
      .p-reason__cnt-img img {
        width: auto;
        height: 100%;
        max-height: 350px; } }
  .p-reason__ttl-flex {
    display: flex;
    margin-bottom: 40px; }
    @media (max-width: 1300px) {
      .p-reason__ttl-flex {
        margin-bottom: 20px; } }
    @media screen and (min-width: 960px) {
      .p-reason__ttl-flex .p-list-reason__num {
        margin-right: 20px; }
        .p-reason__ttl-flex .p-list-reason__num .label {
          font: bold 12px/1 "Poppins", sans-serif;
          color: #1DFF25; }
        .p-reason__ttl-flex .p-list-reason__num .num {
          font: bold 12px/1 "Poppins", sans-serif; }
          .p-reason__ttl-flex .p-list-reason__num .num span {
            font-size: 100px; }
      .p-reason__ttl-flex .p-list-reason__title p {
        font: bold 26px/2 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }
      .p-reason__ttl-flex .p-list-reason__title h3 {
        font-size: 34px; } }
  .p-reason__txt p {
    font: normal 14px/2.4 "Noto sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    letter-spacing: .15em; }
    @media screen and (max-width: 959px) {
      .p-reason__txt p {
        line-height: 2;
        letter-spacing: .13em; } }
  .p-reason .c-btn {
    margin-top: 40px; }
  .p-reason__subttl {
    position: absolute;
    left: 80px;
    top: 0; }
    .p-reason__subttl.left {
      left: auto;
      right: -220px; }
    .p-reason__subttl.r02 {
      right: -220px; }
    .p-reason__subttl.r04 {
      right: -96px; }
    .p-reason__subttl.r06 {
      right: -240px; }
    @media screen and (max-width: 959px) {
      .p-reason__subttl {
        left: 18px;
        opacity: .8; }
        .p-reason__subttl.r02 {
          right: -285px; }
        .p-reason__subttl.r04 {
          right: -160px; }
        .p-reason__subttl.r06 {
          right: -303px; } }
    .p-reason__subttl-num {
      position: relative;
      margin-bottom: 80px;
      width: 22px; }
      .p-reason__subttl-num p {
        font: bold 20px/1 "Poppins", sans-serif;
        color: white; }
      .p-reason__subttl-num::after {
        content: '';
        width: 1px;
        height: 60px;
        background-color: white;
        top: 30px;
        left: 10px;
        position: absolute; }
    .p-reason__subttl-txt {
      transform: rotate(90deg);
      position: relative;
      left: -117px;
      top: 120px; }
      .p-reason__subttl-txt p {
        font: bold 12px/1 "Poppins", sans-serif;
        color: white; }
      .p-reason__subttl-txt.r02 {
        left: -153px;
        top: 161px; }
      .p-reason__subttl-txt.r03 {
        left: -68px;
        top: 71px; }
      .p-reason__subttl-txt.r04 {
        left: -92px;
        top: 96px; }
      .p-reason__subttl-txt.r05 {
        left: -105px;
        top: 109px; }
      .p-reason__subttl-txt.r06 {
        left: -162px;
        top: 167px; }
  .p-reason__appeal {
    text-align: center;
    background: linear-gradient(#008949 32%, transparent 32%); }
    .p-reason__appeal-txt {
      margin-bottom: 40px; }
      @media screen and (max-width: 959px) {
        .p-reason__appeal-txt {
          margin-bottom: 20px; } }
    .p-reason__appeal-inner {
      padding: 80px;
      background: #DBFF1D;
      text-align: center;
      border-radius: 5px; }
      @media screen and (max-width: 959px) {
        .p-reason__appeal-inner {
          padding: 40px 20px; } }

.p-appeal {
  padding-bottom: 60px; }
  @media screen and (max-width: 959px) {
    .p-appeal {
      padding: 60px 0 40px; } }
  .p-appeal__inner {
    padding: 80px 0;
    background: #DBFF1D;
    text-align: center; }
    @media screen and (max-width: 959px) {
      .p-appeal__inner {
        background: linear-gradient(transparent 15%, #DBFF1D 15%);
        padding: 0 20px 60px;
        margin-top: 40px; }
        .p-appeal__inner img {
          padding-right: 16px;
          max-width: 500px;
          width: 100%; } }
  .p-appeal .c-btn {
    margin-top: 40px; }
    @media screen and (max-width: 959px) {
      .p-appeal .c-btn {
        margin-top: 20px; } }

.p-estimation {
  position: relative; }
  .p-estimation .p-ttl03.top {
    top: -38px; }
    @media screen and (max-width: 959px) {
      .p-estimation .p-ttl03.top {
        top: -22px; } }
  .p-estimation__inner {
    background: linear-gradient(114deg, #1dff25 0%, #dbff1d 100%);
    padding: 100px 0;
    text-align: center;
    margin-top: 40px; }
    @media screen and (max-width: 959px) {
      .p-estimation__inner {
        padding: 60px 0; } }
    .p-estimation__inner .c-btn {
      margin-top: 40px; }
      @media screen and (max-width: 959px) {
        .p-estimation__inner .c-btn {
          margin-top: 20px; } }
  .p-estimation__txt p {
    font: bold 30px/1.6 "Zen Kaku Gothic New", sans-serif; }
  @media screen and (max-width: 959px) {
    .p-estimation__txt p {
      font-size: 20px; } }

#contact-page #comment {
  height: 120px !important; }
#contact-page .yubin {
  display: flex;
  align-items: center;
  justify-content: space-around;
  width: 100%;
  padding-left: 40px; }
  #contact-page .yubin .p-postal-code {
    width: 40%; }
  #contact-page .yubin a {
    width: 60%; }
#contact-page .todoufuken {
  width: 250px;
  max-width: 100%; }
#contact-page .zyuusyo {
  width: 360px;
  max-width: 100%; }
  @media screen and (max-width: 959px) {
    #contact-page .zyuusyo {
      width: 100%; }
      #contact-page .zyuusyo input {
        margin-top: 0; } }
#contact-page .adr-dt {
  width: 100px;
  margin-left: 20px; }
  @media screen and (max-width: 959px) {
    #contact-page .adr-dt {
      margin-left: 0; } }
#contact-page .adr-flex {
  align-items: center;
  justify-content: flex-start;
  padding: 0; }
@media screen and (max-width: 959px) {
  #contact-page .adr-ttl {
    display: none; } }

.wp-pagenavi {
  text-align: center;
  margin: 40px auto; }
  .wp-pagenavi a {
    font-family: "Poppins", sans-serif; }
  .wp-pagenavi .wp-pagenavi a:hover, .wp-pagenavi .wp-pagenavi span.current {
    border-color: #151E2F !important; }

.js-scroll {
  opacity: 0;
  margin-top: 50px;
  transition: margin-top 1s ease, opacity 1s ease, box-shadow 1s ease, background-color 1s ease; }
  .js-scroll.fade_on {
    margin-top: 0;
    opacity: 1; }

.js-scroll2 {
  opacity: 0;
  transform: translateY(50px);
  transition: transform 2.5s ease, opacity 3s ease; }
  .js-scroll2.fade_on {
    transform: translateY(0);
    opacity: 1; }

@media screen and (min-width: 960px) {
  .js-headerPC {
    opacity: 0; }
    .js-headerPC.on {
      opacity: 1; } }

@media screen and (max-width: 959px) {
  .js-headerSP {
    opacity: 0; }
    .js-headerSP.on {
      opacity: 1; } }

.js-slidetxt {
  overflow: hidden; }
  .js-slidetxt.fade_on {
    animation-name: slideTextX100;
    animation-duration: 1.3s;
    animation-fill-mode: forwards;
    animation-delay: 1s;
    opacity: 0; }
@keyframes slideTextX100 {
  from {
    transform: translateX(-100%);
    opacity: 0; }
  to {
    transform: translateX(0);
    opacity: 1; } }
.js-slidetxt--v {
  overflow: hidden;
  display: inline-block; }
  .js-slidetxt--v.fade_on {
    animation-name: slideTextY100;
    animation-duration: 1.3s;
    animation-fill-mode: forwards;
    animation-delay: 1s;
    opacity: 0; }
@keyframes slideTextY100 {
  from {
    transform: translateY(-100%);
    opacity: 0; }
  to {
    transform: translateY(0);
    opacity: 1; } }
.js-slidetxt--r {
  overflow: hidden; }
  .js-slidetxt--r.fade_on {
    animation-name: slideTextX-100;
    animation-duration: 1.3s;
    animation-fill-mode: forwards;
    animation-delay: 1s;
    opacity: 0; }
@keyframes slideTextX-100 {
  from {
    transform: translateX(100%);
    opacity: 0; }
  to {
    transform: translateX(0);
    opacity: 1; } }
.d01 {
  animation-delay: .1s; }

.d02 {
  animation-delay: .2s; }

.d04 {
  animation-delay: .4s; }

.d06 {
  animation-delay: .6s; }

.d08 {
  animation-delay: .8s; }

.d10 {
  animation-delay: 1s; }

.d12 {
  animation-delay: 1.2s; }

.dd13 {
  animation-duration: 1.3s; }

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

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