@charset "UTF-8";
/* ==========================================================================
Foundation
========================================================================== */
/* YakuHanJP Font
----------------------------------------------------------------- */
@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 100;
  src: url("/common/font/YakuHanJP/YakuHanJP-Thin.eot");
  src: url("/common/font/YakuHanJP/YakuHanJP-Thin.woff2") format("woff2"), url("/common/font/YakuHanJP/YakuHanJP-Thin.woff") format("woff");
  font-display: swap; }

@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 200;
  src: url("/common/font/YakuHanJP/YakuHanJP-Light.eot");
  src: url("/common/font/YakuHanJP/YakuHanJP-Light.woff2") format("woff2"), url("/common/font/YakuHanJP/YakuHanJP-Light.woff") format("woff");
  font-display: swap; }

@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 300;
  src: url("/common/font/YakuHanJP/YakuHanJP-DemiLight.eot");
  src: url("/common/font/YakuHanJP/YakuHanJP-DemiLight.woff2") format("woff2"), url("/common/font/YakuHanJP/YakuHanJP-DemiLight.woff") format("woff");
  font-display: swap; }

@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 400;
  src: url("/common/font/YakuHanJP/YakuHanJP-Regular.eot");
  src: url("/common/font/YakuHanJP/YakuHanJP-Regular.woff2") format("woff2"), url("/common/font/YakuHanJP/YakuHanJP-Regular.woff") format("woff");
  font-display: swap; }

@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 500;
  src: url("/common/font/YakuHanJP/YakuHanJP-Medium.eot");
  src: url("/common/font/YakuHanJP/YakuHanJP-Medium.woff2") format("woff2"), url("/common/font/YakuHanJP/YakuHanJP-Medium.woff") format("woff");
  font-display: swap; }

@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 700;
  src: url("/common/font/YakuHanJP/YakuHanJP-Bold.eot");
  src: url("/common/font/YakuHanJP/YakuHanJP-Bold.woff2") format("woff2"), url("/common/font/YakuHanJP/YakuHanJP-Bold.woff") format("woff");
  font-display: swap; }

@font-face {
  font-family: 'YakuHanJP';
  font-style: normal;
  font-weight: 900;
  src: url("/common/font/YakuHanJP/YakuHanJP-Black.eot");
  src: url("/common/font/YakuHanJP/YakuHanJP-Black.woff2") format("woff2"), url("/common/font/YakuHanJP/YakuHanJP-Black.woff") format("woff");
  font-display: swap; }

/* NotoSansCJKjp Font（現在あるサブセットフォントデータは第一水準＋人名漢字）
----------------------------------------------------------------- */
@font-face {
  font-family: 'Noto Sans CJK JP Subset';
  font-style: normal;
  font-weight: 400;
  src: local("Noto Sans CJK JP"), local("NotoSansCJKjp-Regular"), local("NotoSansJP-Regular"), url("/common/font/NotoSansCJKjp/NotoSansCJKjp-Regular.woff2") format("woff2"), url("/common/font/NotoSansCJKjp/NotoSansCJKjp-Regular.woff") format("woff"), url("/common/font/NotoSansCJKjp/NotoSansCJKjp-Regular.ttf") format("truetype"); }

@font-face {
  font-family: 'Noto Sans CJK JP Subset';
  font-style: normal;
  font-weight: 500;
  src: local("NotoSansCJKjp-Medium"), local("NotoSansJP-Medium"), url("/common/font/NotoSansCJKjp/NotoSansCJKjp-Medium.woff2") format("woff2"), url("/common/font/NotoSansCJKjp/NotoSansCJKjp-Medium.woff") format("woff"), url("/common/font/NotoSansCJKjp/NotoSansCJKjp-Medium.ttf") format("truetype"); }

@font-face {
  font-family: 'Noto Sans CJK JP Subset';
  font-style: normal;
  font-weight: 700;
  src: local("NotoSansCJKjp-Bold"), local("NotoSansJP-Bold"), url("/common/font/NotoSansCJKjp/NotoSansCJKjp-Bold.woff2") format("woff2"), url("/common/font/NotoSansCJKjp/NotoSansCJKjp-Bold.woff") format("woff"), url("/common/font/NotoSansCJKjp/NotoSansCJKjp-Bold.ttf") format("truetype"); }

/* YakuHan（文字詰め）なし
----------------------------------------------------------------- */
/* ==========================================================================
* 共通
========================================================================== */
/* ==========================================================================
* 個別
========================================================================== */
/* ==========================================================================
* 採用
========================================================================== */
/* Reset
----------------------------------------------------------------- */
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,
l,
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; }

h1,
h2,
h3,
h4,
h5,
h6,
table,
input,
textarea,
select,
option,
button {
  font-size: 100%; }

blockquote,
q {
  quotes: none; }

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

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
main {
  display: block; }

input,
textarea {
  margin: 0;
  padding: 0; }

ol,
ul,
li {
  list-style: none;
  margin: 0;
  padding: 0; }

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

caption,
th {
  text-align: left; }

img,
a img {
  border: none; }

a {
  cursor: pointer; }

input:not([type='checkbox']) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

/* Base
----------------------------------------------------------------- */
html {
  height: 100%;
  line-height: 1.6; }

body {
  position: relative;
  min-height: 100%;
  -webkit-text-size-adjust: 100%;
  color: #003953; }
  @media print, screen and (min-width: 48em) {
    body {
      line-height: 1.75; } }
  @media only screen and (max-width: 47.9375em) {
    body {
      line-height: 1.75; } }
  @media only screen and (max-width: 47.9375em) {
    body {
      font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "arial"; } }
  @media print, screen and (min-width: 48em) {
    body {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  body.browser-is-ie,
  .browser-is-ie body {
    font-family: "メイリオ", "Meiryo"; }

a {
  text-decoration: none;
  color: #00a0e9;
  -webkit-transition: color 0.1s 0s ease;
  transition: color 0.1s 0s ease; }
  @media print, screen and (min-width: 64em) {
    a:hover {
      color: #3EB8EF; } }
  @media print, screen and (min-width: 64em) {
    a[href^='tel'] {
      pointer-events: none;
      cursor: text; } }

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.4;
  font-weight: normal; }

address {
  font-style: normal; }

.browser-is-ie wbr:after {
  content: '\00200B'; }

.preload * {
  -webkit-transition: all 0s !important;
  transition: all 0s !important; }

/* KeyFrames
----------------------------------------------------------------- */
@-webkit-keyframes fluffyRotate {
  0% {
    -webkit-transform: rotate(0) scale(1, 1);
            transform: rotate(0) scale(1, 1); }
  50% {
    -webkit-transform: rotate(180deg) scale(1.1, 1.1);
            transform: rotate(180deg) scale(1.1, 1.1); }
  100% {
    -webkit-transform: rotate(360deg) scale(1, 1);
            transform: rotate(360deg) scale(1, 1); } }
@keyframes fluffyRotate {
  0% {
    -webkit-transform: rotate(0) scale(1, 1);
            transform: rotate(0) scale(1, 1); }
  50% {
    -webkit-transform: rotate(180deg) scale(1.1, 1.1);
            transform: rotate(180deg) scale(1.1, 1.1); }
  100% {
    -webkit-transform: rotate(360deg) scale(1, 1);
            transform: rotate(360deg) scale(1, 1); } }

@-webkit-keyframes fluffyRotateReverse {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg); } }

@keyframes fluffyRotateReverse {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg); } }

@-webkit-keyframes fluffySkew {
  0% {
    -webkit-transform: skew(-10deg);
            transform: skew(-10deg); }
  100% {
    -webkit-transform: skew(10deg);
            transform: skew(10deg); } }

@keyframes fluffySkew {
  0% {
    -webkit-transform: skew(-10deg);
            transform: skew(-10deg); }
  100% {
    -webkit-transform: skew(10deg);
            transform: skew(10deg); } }

@-webkit-keyframes fluffySkew5deg {
  0% {
    -webkit-transform: skew(-5deg);
            transform: skew(-5deg); }
  100% {
    -webkit-transform: skew(5deg);
            transform: skew(5deg); } }

@keyframes fluffySkew5deg {
  0% {
    -webkit-transform: skew(-5deg);
            transform: skew(-5deg); }
  100% {
    -webkit-transform: skew(5deg);
            transform: skew(5deg); } }

/* ==========================================================================
Layout
========================================================================== */
.l-breadcrumbs {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 1;
  width: 100%;
  padding-right: 4.267%;
  padding-left: 4.267%; }
  @media only screen and (max-width: 47.9375em) {
    .l-breadcrumbs {
      display: none; } }
  @media print, screen and (min-width: 48em) {
    .l-breadcrumbs {
      margin-top: 72px; } }

.l-breadcrumbs__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding-top: 10px; }

.l-breadcrumbs__item {
  position: relative;
  padding-left: 7px;
  font-size: 13px;
  font-size: 0.8125rem;
  white-space: nowrap;
  color: rgba(0, 57, 83, 0.5); }
  .l-breadcrumbs__item:first-child {
    padding-left: 0; }
    .l-breadcrumbs__item:first-child:before {
      display: none; }
  .l-breadcrumbs__item:last-child {
    overflow: hidden;
    text-overflow: ellipsis; }
  .l-breadcrumbs__item:before {
    content: '';
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    width: 6px;
    height: 6px;
    border-style: solid;
    border-width: 1px 1px 0 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    border-color: rgba(0, 57, 83, 0.5);
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    content: '';
    display: inline-block;
    position: relative;
    top: -0.15em;
    margin-right: 10px; }
  .l-breadcrumbs__item > a {
    color: #003953;
    -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
    transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
    text-decoration: none; }
    @media print, screen and (min-width: 64em) {
      .l-breadcrumbs__item > a:hover > svg {
        fill: #00a0e9; } }
  .l-breadcrumbs__item > span {
    margin-right: 15px;
    margin-left: 10px; }

/* ==========================================================================
* モディファイア
========================================================================== */
/* カラー反転
----------------------------------------------------------------- */
.l-breadcrumbs.-inverted .l-breadcrumbs__item {
  color: #fff; }
  .l-breadcrumbs.-inverted .l-breadcrumbs__item:before {
    border-color: #fff; }
  .l-breadcrumbs.-inverted .l-breadcrumbs__item > a {
    color: #fff; }
    @media print, screen and (min-width: 64em) {
      .l-breadcrumbs.-inverted .l-breadcrumbs__item > a:hover {
        color: #00a0e9; } }

.l-header {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 1000;
  width: 100%; }
  @media only screen and (max-width: 63.9375em) {
    .l-header {
      position: relative; } }
  @media print, screen and (min-width: 64em) {
    .l-header {
      position: fixed;
      padding-right: 2.13%;
      padding-left: 2.13%;
      -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; } }
  @media print, screen and (min-width: 75em) {
    .l-header {
      padding-right: 4.267%;
      padding-left: 4.267%; } }
  .l-header:before {
    display: block;
    visibility: hidden;
    opacity: 0;
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 97px;
    background-color: #fff;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    content: ""; }

/* フォーム
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .l-header.-form {
    position: absolute; } }

@media only screen and (max-width: 63.9375em) {
  .l-header.-form .l-header__top {
    position: absolute; } }

/* スクロール追従時（フォームでは適用せず）
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .l-header.-fixed:not(.-form) {
    height: 67px;
    -webkit-box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16);
            box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16);
    background-color: #fff; } }

@media print, screen and (min-width: 64em) {
  .l-header.-fixed:not(.-form):before {
    visibility: visible;
    opacity: 1;
    height: 67px; } }

@media print, screen and (min-width: 64em) {
  .l-header.-fixed:not(.-form) .l-header__head {
    margin-top: 16px; } }

@media only screen and (max-width: 63.9375em) {
  .l-header.-fixed:not(.-form) .l-header__top {
    -webkit-box-shadow: 0 3px 6px rgba(15, 74, 152, 0.4);
            box-shadow: 0 3px 6px rgba(15, 74, 152, 0.4);
    background-color: #fff; } }

@media print, screen and (min-width: 64em) {
  .l-header.-fixed:not(.-form) .l-header__menu {
    margin-top: 15px; } }

@media print, screen and (min-width: 64em) {
  .l-header.-fixed:not(.-form) .l-header__tail {
    margin-top: 15px; } }

.l-header__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media only screen and (max-width: 63.9375em) {
    .l-header__inner {
      position: fixed;
      z-index: 1300;
      width: 100%;
      max-width: 285px;
      height: 100vh;
      padding-right: 16px;
      padding-left: 16px;
      -webkit-box-shadow: 0 2px 5px rgba(15, 74, 152, 0.4);
              box-shadow: 0 2px 5px rgba(15, 74, 152, 0.4);
      background-color: #fff;
      -webkit-transform: translate(calc(-100% - 5px), 0);
              transform: translate(calc(-100% - 5px), 0);
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; } }
  @media print, screen and (min-width: 64em) {
    .l-header__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      position: relative;
      z-index: 10; } }

@media only screen and (max-width: 63.9375em) {
  .l-header__inner.-visible {
    -webkit-transform: translate(0);
            transform: translate(0); } }

/* SP分離ヘッダー
----------------------------------------------------------------- */
@media only screen and (max-width: 63.9375em) {
  .l-header__top {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: fixed;
    z-index: 1100;
    width: 100%;
    height: 67px;
    padding-right: 4.266%;
    padding-left: 4.266%;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; } }

@media print, screen and (min-width: 64em) {
  .l-header__top {
    display: none; } }

@media only screen and (max-width: 63.9375em) {
  .l-header__top-entry {
    width: 112px;
    margin-top: 16px; } }

/* ロゴ
----------------------------------------------------------------- */
@media only screen and (max-width: 63.9375em) {
  .l-header__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 20px; } }

@media print, screen and (min-width: 64em) {
  .l-header__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 24px;
    -webkit-transition: margin-top cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: margin-top cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; } }

@media print, screen and (min-width: 75em) {
  .l-header__head {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; } }

.l-header__logo img {
  display: block; }
  @media only screen and (max-width: 63.9375em) {
    .l-header__logo img {
      width: 140px; } }
  @media print, screen and (min-width: 64em) {
    .l-header__logo img {
      width: 170px; } }
  @media print, screen and (min-width: 75em) {
    .l-header__logo img {
      width: 190px; } }

.l-header__logo-text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  border: solid 1px #00a0e9;
  border-radius: 520px;
  font-size: 9px;
  font-size: 0.5625rem;
  font-weight: 700; }
  @media only screen and (max-width: 47.9375em) {
    .l-header__logo-text {
      padding-top: 2px;
      padding-bottom: 0px;
      padding-right: 7px;
      padding-left: 7px; } }
  @media print, screen and (min-width: 48em) {
    .l-header__logo-text {
      padding-top: 1px;
      padding-bottom: 1px;
      padding-right: 7px;
      padding-left: 7px; } }
  @media only screen and (max-width: 63.9375em) {
    .l-header__logo-text {
      margin-left: 5px; } }
  @media print, screen and (min-width: 64em) {
    .l-header__logo-text {
      margin-left: 4px; } }
  @media print, screen and (min-width: 75em) {
    .l-header__logo-text {
      padding-top: 1px;
      padding-bottom: 2px;
      padding-right: 12px;
      padding-left: 12px;
      margin-left: 9px;
      border-radius: 520px;
      font-size: 11px;
      font-size: 0.6875rem; } }

/* メニュー
----------------------------------------------------------------- */
@media only screen and (max-width: 63.9375em) {
  .l-header__menu {
    margin-top: 28px; } }

@media print, screen and (min-width: 64em) {
  .l-header__menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    height: 100%;
    margin-top: 28px;
    margin-left: 16px;
    -webkit-transition: margin-top cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: margin-top cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; } }

@media print, screen and (min-width: 75em) {
  .l-header__menu {
    margin-left: 10px; } }

@media print, screen and (min-width: 87.5em) {
  .l-header__menu {
    margin-left: 38px; } }

@media print, screen and (min-width: 64em) {
  .l-header__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%; } }

@media only screen and (max-width: 63.9375em) {
  .l-header__item {
    border-bottom: solid 1px #e0e8ec; } }

.l-header__link {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  color: #003953; }
  @media only screen and (max-width: 63.9375em) {
    .l-header__link {
      padding-top: 8px;
      padding-bottom: 8px;
      font-size: 16px;
      font-size: 1rem;
      font-weight: bold; } }
  @media print, screen and (min-width: 64em) {
    .l-header__link {
      margin-right: 5px;
      margin-left: 5px;
      padding-top: 6px;
      padding-bottom: 6px;
      font-size: 13px;
      font-size: 0.8125rem;
      font-weight: 500; } }
  @media print, screen and (min-width: 75em) {
    .l-header__link {
      margin-right: 9px;
      margin-left: 9px;
      padding-top: 5px;
      padding-bottom: 6px;
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 87.5em) {
    .l-header__link {
      margin-right: 17px;
      margin-left: 17px;
      font-size: 15px;
      font-size: 0.9375rem; } }
  @media only screen and (max-width: 63.9375em) {
    .l-header__link:after {
      display: block;
      position: absolute;
      top: 50%;
      right: 0;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
      width: 12px;
      height: 9px;
      background-repeat: no-repeat;
      background-position: 50% 50%;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2011.485%208.485%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M-494-267v-2h4v-4h2v6Z%22%20transform%3D%22translate%28545.351%20-152.028%29%20rotate%28-45%29%22%20fill%3D%22%23003953%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M4%2C0H14V2H4Z%22%20transform%3D%22translate%28-4%203.2%29%22%20fill%3D%22%23003953%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E");
      content: ''; } }
  .l-header__link.-current {
    color: #00a0e9; }
    @media only screen and (max-width: 63.9375em) {
      .l-header__link.-current:after {
        display: none; } }

@media only screen and (max-width: 63.9375em) {
  .l-header__entry {
    margin-top: 30px; } }

@media print, screen and (min-width: 64em) {
  .l-header__entry {
    margin-left: 18px; } }

/* 右側
----------------------------------------------------------------- */
@media only screen and (max-width: 63.9375em) {
  .l-header__tail {
    margin-top: 16px; } }

@media print, screen and (min-width: 64em) {
  .l-header__tail {
    margin-top: 28px;
    -webkit-transition: margin-top cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: margin-top cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; } }

@media print, screen and (min-width: 75em) {
  .l-header__tail {
    margin-top: 29px; } }

.l-header__contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media only screen and (max-width: 63.9375em) {
    .l-header__contact {
      margin-top: 30px; } }

.l-header__tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: montserrat, sans-serif;
  -webkit-font-feature-settings: 'palt' 1;
          font-feature-settings: 'palt' 1; }
  @media print, screen and (min-width: 48em) {
    .l-header__tel {
      margin-left: 20px;
      font-size: 23px;
      font-size: 1.4375rem; } }
  .l-header__tel a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #003953; }
    .l-header__tel a:before {
      display: inline-block;
      width: 12px;
      height: 12px;
      margin-right: 8px;
      background-repeat: no-repeat;
      background-position: 50% 50%;
      background-size: 100% auto;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212.184%22%20height%3D%2212.184%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M11.507%208.461a7.689%207.689%200%2001-2.416-.386.691.691%200%2000-.69.162l-1.49%201.49A10.2%2010.2%200%20012.45%205.273l1.489-1.5a.664.664%200%2000.169-.684A7.689%207.689%200%20013.722.673.679.679%200%20003.046%200H.677A.679.679%200%20000%20.677a11.506%2011.506%200%200011.507%2011.507.679.679%200%2000.677-.677V9.138a.679.679%200%2000-.677-.677z%22%20fill%3D%22%23003953%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E\a%20%20%20%20");
      content: ''; }
  .l-header__tel span {
    margin-right: 5px;
    margin-left: 5px; }
    .l-header__tel span:first-child {
      margin-left: 0; }
    .l-header__tel span:last-child {
      margin-right: 0; }

.l-menu-button {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: fixed;
  z-index: 1300;
  right: 16px;
  bottom: 16px;
  width: 58px;
  height: 58px;
  padding-top: 3px;
  padding-right: 0;
  padding-left: 0;
  background-color: #003953;
  -webkit-box-shadow: 0 2px 5px rgba(15, 74, 152, 0.4);
          box-shadow: 0 2px 5px rgba(15, 74, 152, 0.4);
  border: none;
  border-radius: 4px;
  outline: none;
  cursor: pointer; }
  @media only screen and (max-width: 47.9375em) {
    .l-menu-button {
      font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "arial"; } }
  @media print, screen and (min-width: 48em) {
    .l-menu-button {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .l-menu-button.browser-is-ie,
  .browser-is-ie .l-menu-button {
    font-family: "メイリオ", "Meiryo"; }
  @media print, screen and (min-width: 64em) {
    .l-menu-button {
      display: none; } }

.l-menu-button__line {
  display: block;
  margin-right: auto;
  margin-left: auto; }
  .l-menu-button__line .l-menu-button__line-1, .l-menu-button__line:before, .l-menu-button__line:after {
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #fff;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }
  .l-menu-button__line .l-menu-button__line-1 {
    top: 7px;
    left: 0;
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s; }
  .l-menu-button__line:before {
    top: 0;
    left: 0;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    content: ''; }
  .l-menu-button__line:after {
    bottom: 0;
    left: 0;
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
    content: ''; }

.l-menu-button__line-2 {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%; }
  .l-menu-button__line-2:before, .l-menu-button__line-2:after {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #00a0e9;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s 0.4s;
    content: ''; }
  .l-menu-button__line-2:before {
    -webkit-transform: translate(-16px, -16px) rotate(45deg);
            transform: translate(-16px, -16px) rotate(45deg);
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s; }
  .l-menu-button__line-2:after {
    -webkit-transform: translate(-16px, 16px) rotate(-45deg);
            transform: translate(-16px, 16px) rotate(-45deg);
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s; }

.l-menu-button__line {
  border: none;
  position: relative;
  width: 20px;
  height: 14px;
  padding: 0;
  background-color: transparent; }
  @media print, screen and (min-width: 64em) {
    .l-menu-button__line {
      top: 23px; } }
  .l-menu-button__line span {
    display: block;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    top: 6px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s; }
  .l-menu-button__line:before, .l-menu-button__line:after {
    content: '';
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s; }
  .l-menu-button__line:before {
    top: 0;
    left: 0; }
  .l-menu-button__line:after {
    bottom: 0;
    left: 0; }
  .l-menu-button__line span, .l-menu-button__line:before, .l-menu-button__line:after {
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #fff; }
  @media only screen and (max-width: 63.9375em) {
    .l-menu-button.-active .l-menu-button__line span {
      width: 0; } }
  @media only screen and (max-width: 63.9375em) {
    .l-menu-button.-active .l-menu-button__line:before {
      -webkit-transform: translate(0px, 6px) rotate(45deg);
              transform: translate(0px, 6px) rotate(45deg); } }
  @media only screen and (max-width: 63.9375em) {
    .l-menu-button.-active .l-menu-button__line:after {
      -webkit-transform: translate(0px, -6px) rotate(-45deg);
              transform: translate(0px, -6px) rotate(-45deg); } }

.l-menu-button__text {
  display: block;
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 10px;
  margin-top: 7px;
  font-weight: bold;
  font-size: 8px;
  font-size: 0.5rem;
  text-align: center; }

.l-menu-button__text1,
.l-menu-button__text2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 20px;
  line-height: 1; }
  .l-menu-button__text1 span,
  .l-menu-button__text2 span {
    display: block;
    color: #fff; }
    .l-menu-button__text1 span:nth-child(1),
    .l-menu-button__text2 span:nth-child(1) {
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.05s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.05s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.05s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.05s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.05s; }
    .l-menu-button__text1 span:nth-child(2),
    .l-menu-button__text2 span:nth-child(2) {
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.1s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.1s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.1s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.1s; }
    .l-menu-button__text1 span:nth-child(3),
    .l-menu-button__text2 span:nth-child(3) {
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.15s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.15s; }
    .l-menu-button__text1 span:nth-child(4),
    .l-menu-button__text2 span:nth-child(4) {
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.2s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.2s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.2s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s 0.2s; }
    .l-menu-button.-active .l-menu-button__text1 span, .l-menu-button.-active
    .l-menu-button__text2 span {
      -webkit-transform: translate(0, -100%);
              transform: translate(0, -100%); }

/* Body直下のwrapper
----------------------------------------------------------------- */
.l-root-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  min-height: 100vh; }
  .browser-is-ie .l-root-container {
    display: block; }

.l-content-container {
  position: relative;
  overflow: hidden;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }
  @media only screen and (max-width: 47.9375em) {
    .l-content-container {
      padding-bottom: 98px; } }
  @media print, screen and (min-width: 48em) {
    .l-content-container {
      padding-bottom: 163px; } }
  .l-content-container.-pbottom_0 {
    padding-bottom: 0; }

.l-page-top {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media only screen and (max-width: 47.9375em) {
    .l-page-top {
      display: none; } }
  @media print, screen and (min-width: 48em) {
    .l-page-top {
      visibility: hidden;
      opacity: 0;
      position: fixed;
      z-index: 100;
      right: 20px;
      bottom: 40px;
      width: 40px;
      height: 40px;
      -webkit-transform: translateY(10px);
              transform: translateY(10px);
      -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
      transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s; } }
  .l-page-top.-visible {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  .l-page-top > a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    text-align: center;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%; }
    .l-page-top > a:before {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      display: block;
      position: absolute;
      z-index: 20;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      border: solid 3px #00a0e9;
      border-radius: 50%;
      content: '';
      background: #fff; }
    .l-page-top > a:after {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      display: block;
      position: absolute;
      z-index: 30;
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      background-color: #00a0e9;
      border-radius: 50%;
      -webkit-transform: translate(-50%, -50%) scale(0, 0);
              transform: translate(-50%, -50%) scale(0, 0);
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      content: ''; }
    .l-page-top > a i {
      display: inline-block;
      position: relative;
      top: -0.05em;
      width: 10px;
      height: 10px;
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      position: absolute;
      z-index: 40;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      margin-left: 0; }
      .l-page-top > a i:before, .l-page-top > a i:after {
        display: block;
        position: absolute;
        content: ''; }
      .l-page-top > a i:before {
        top: 0;
        left: 50%;
        -webkit-transform: translate(-50%, 0);
                transform: translate(-50%, 0);
        width: 2px;
        height: 100%;
        background-color: #00a0e9;
        -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
      .l-page-top > a i:after {
        top: 0;
        left: 50%;
        -webkit-transform: translate(-50%, 0) rotate(-135deg);
                transform: translate(-50%, 0) rotate(-135deg);
        width: 4px;
        height: 4px;
        border-style: solid;
        border-width: 0 2px 2px 0;
        border-color: #00a0e9;
        -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
        transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
      @media print, screen and (min-width: 64em) {
        a:hover .l-page-top > a i:before {
          background-color: #00a0e9; } }
      @media print, screen and (min-width: 64em) {
        a:hover .l-page-top > a i:after {
          border-color: #00a0e9; } }
    .l-page-top > a:hover:after {
      -webkit-transform: translate(-50%, -50%) scale(1.1, 1.1);
              transform: translate(-50%, -50%) scale(1.1, 1.1); }
    @media print, screen and (min-width: 64em) {
      .l-page-top > a:hover i:before {
        background-color: #fff; } }
    @media print, screen and (min-width: 64em) {
      .l-page-top > a:hover i:after {
        border-color: #fff; } }

.l-footer {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 100%;
  padding-right: 4.267%;
  padding-left: 4.267%; }

.l-footer__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
  .l-footer__bg svg {
    position: absolute;
    top: -50px;
    left: 0;
    width: 100%; }
  .l-footer__bg.-front:before {
    position: absolute;
    z-index: 20;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    background-repeat: repeat-x;
    background-position: 50% 79px;
    background-image: url(/common/img/bg_footer_gradiate_front.svg);
    background-size: 100% auto; }
  .browser-is-ie .l-footer__bg.-front {
    background-position: 0 0, 0 0;
    background-repeat: repeat-x, repeat-x;
    background-image: url(/common/img/bg_footer_wave_back.svg), url(/common/img/bg_footer_wave_front.svg); }
    .browser-is-ie .l-footer__bg.-front:before {
      top: 80px;
      background: #0eb3eb; }

.l-footer__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  z-index: 100;
  width: 100%;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto; }
  @media only screen and (max-width: 47.9375em) {
    .l-footer__inner {
      display: -ms-grid;
      display: grid;
      -ms-grid-rows: auto 55px 1fr;
      -ms-grid-columns: 100%;
          grid-template: 'lFooterContent' auto 'lFooterHead' 1fr / 100%;
      gap: 55px 0;
      padding-top: 77px;
      padding-bottom: 77px; } }
  @media print, screen and (min-width: 48em) {
    .l-footer__inner {
      padding-top: 120px;
      padding-bottom: 90px; } }

/* レイアウト
----------------------------------------------------------------- */
.l-footer__head {
  grid-area: lFooterHead;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media print, screen and (min-width: 48em) {
    .l-footer__head {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      padding-right: 20px; } }

.l-footer__content {
  grid-area: lFooterContent; }

@media only screen and (max-width: 47.9375em){
    .l-footer__head {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .l-footer__content {
    -ms-grid-row: 1;
    -ms-grid-column: 1; } }
  @media print, screen and (min-width: 48em) {
    .l-footer__content {
      width: 70%; } }
  @media print, screen and (min-width: 64em) {
    .l-footer__content {
      width: 60%; } }

/* ヘッド側
----------------------------------------------------------------- */
.l-footer__logo a {
  display: block; }

.l-footer__logo img {
  display: block; }
  @media only screen and (max-width: 47.9375em) {
    .l-footer__logo img {
      width: 136px; } }
  @media print, screen and (min-width: 48em) {
    .l-footer__logo img {
      width: 170px; } }
  @media print, screen and (min-width: 64em) {
    .l-footer__logo img {
      width: auto; } }

.l-footer__info {
  color: #fff; }
  @media only screen and (max-width: 47.9375em) {
    .l-footer__info {
      margin-top: 11px;
      font-size: 12px;
      font-size: 0.75rem; } }
  @media print, screen and (min-width: 48em) {
    .l-footer__info {
      margin-top: 28px;
      font-size: 13px;
      font-size: 0.8125rem;
      line-height: 1.8; } }

@media only screen and (max-width: 47.9375em) {
  .l-footer__head-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 15px; } }

@media print, screen and (min-width: 48em) {
  .l-footer__head-links {
    margin-top: 26px; } }

@media print, screen and (min-width: 64em) {
  .l-footer__head-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }

@media only screen and (max-width: 47.9375em) {
  .l-footer__head-link {
    margin-left: 18px; } }

@media print, screen and (min-width: 64em) {
  .l-footer__head-link {
    margin-left: 25px; } }

.l-footer__head-link:first-child {
  margin-left: 0; }

.l-footer__head-link a {
  color: #fff; }
  @media only screen and (max-width: 47.9375em) {
    .l-footer__head-link a {
      font-size: 12px;
      font-size: 0.75rem; } }
  @media print, screen and (min-width: 48em) {
    .l-footer__head-link a {
      font-size: 11px;
      font-size: 0.6875rem; } }

.l-footer__copy {
  display: block;
  color: #fff; }
  @media only screen and (max-width: 47.9375em) {
    .l-footer__copy {
      margin-top: 20px;
      font-size: 10px;
      font-size: 0.625rem; } }
  @media print, screen and (min-width: 48em) {
    .l-footer__copy {
      margin-top: 11px;
      font-size: 11px;
      font-size: 0.6875rem; } }
  @media only screen and (max-width: 47.9375em) {
    .l-footer__copy br {
      display: none; } }
  @media print, screen and (min-width: 48em) {
    .l-footer__copy br {
      display: block; } }
  @media print, screen and (min-width: 64em) {
    .l-footer__copy br {
      display: none; } }

/* フォーム
----------------------------------------------------------------- */
.l-footer.-form .l-footer__inner {
  display: block;
  padding-top: 0;
  padding-bottom: 0; }

.l-footer.-form .l-footer__copy {
  display: block;
  margin-top: 0;
  padding-bottom: 13px;
  text-align: center;
  font-size: 11px;
  font-size: 0.6875rem;
  color: #96ADBB; }

/* コーポレート
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .l-footer.-corp .p-sitemap__blocks {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto auto 1fr;
    -ms-grid-columns: 33.33% 33.33% 33.33%;
        grid-template: 'lFooterBlock1 lFooterBlock3 lFooterBlock4' auto 'lFooterBlock2 lFooterBlock3 lFooterBlock4' auto 'lFooterBlock2 lFooterBlock3 lFooterBlock4' 1fr / 33.33% 33.33% 33.33%;
    margin-top: -15px; } }

@media print, screen and (min-width: 75em) {
  .l-footer.-corp .p-sitemap__blocks {
    -ms-grid-rows: auto auto 1fr;
    -ms-grid-columns: 25% 25% 25%;
        grid-template: 'lFooterBlock1 lFooterBlock3 lFooterBlock4' auto 'lFooterBlock2 lFooterBlock3 lFooterBlock4' auto 'lFooterBlock2 lFooterBlock3 lFooterBlock4' 1fr / 25% 25% 25%; } }

@media print, screen and (min-width: 48em) {
  .l-footer.-corp .p-sitemap__block {
    margin-top: 14px; } }

.l-footer.-corp .p-sitemap__block:nth-child(1) {
  grid-area: lFooterBlock1; }

.l-footer.-corp .p-sitemap__block:nth-child(2) {
  grid-area: lFooterBlock2; }

.l-footer.-corp .p-sitemap__block:nth-child(3) {
  grid-area: lFooterBlock3; }

.l-footer.-corp .p-sitemap__block:nth-child(4) {
  grid-area: lFooterBlock4; }

@media print, screen and (min-width: 48em){
  .l-footer.-corp .p-sitemap__block:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .l-footer.-corp .p-sitemap__block:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1; }
  .l-footer.-corp .p-sitemap__block:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 2; }
  .l-footer.-corp .p-sitemap__block:nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3; } }

@media print, screen and (min-width: 75em){
  .l-footer.-corp .p-sitemap__block:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .l-footer.-corp .p-sitemap__block:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1; }
  .l-footer.-corp .p-sitemap__block:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 2; }
  .l-footer.-corp .p-sitemap__block:nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3; } }

.l-footer.-corp .p-sitemap__block:nth-child(5) {
  grid-area: lFooterBlock5; }

/* 採用情報
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .l-footer.-recruit .p-sitemap__blocks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: -15px; } }

@media print, screen and (min-width: 48em) {
  .l-footer.-recruit .p-sitemap__block {
    width: 33.33%;
    margin-top: 50px; } }

@media print, screen and (min-width: 75em) {
  .l-footer.-recruit .p-sitemap__block {
    width: 25%; } }

.l-leader {
  position: relative; }

/* ==========================================================================
Object
========================================================================== */
.c-annotation {
  text-justify: inter-ideograph;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  position: relative;
  margin-top: 4px; }
  @media only screen and (max-width: 47.9375em) {
    .c-annotation {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .c-annotation {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .c-annotation.browser-is-ie,
  .browser-is-ie .c-annotation {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .c-annotation {
      padding-left: 22px;
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .c-annotation {
      padding-left: 24px;
      font-size: 14px;
      font-size: 0.875rem;
      line-height: 1.9; } }
  .c-annotation:first-child {
    margin-top: 0; }
  .c-annotation:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    content: '※'; }
  .c-annotation span {
    display: block;
    font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    * + .c-annotation {
      margin-top: 15px; } }
  @media print, screen and (min-width: 48em) {
    * + .c-annotation {
      margin-top: 15px; } }
  .c-annotation + .c-annotation {
    margin-top: 4px; }
    .c-annotation + .c-annotation:first-child {
      margin-top: 0; }

/* ==========================================================================
* モディファイア
========================================================================== */
/* SPで太字
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-annotation.-sp_bold {
    font-weight: bold; } }

/* 無印
----------------------------------------------------------------- */
.c-annotation.-nomark {
  padding-left: 0; }
  .c-annotation.-nomark:before {
    display: none; }

.c-arrow {
  position: relative;
  display: inline-block;
  width: 12px;
  height: 9px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  content: ''; }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow {
      -webkit-transform: translate(4px, 0);
              transform: translate(4px, 0); } }

/* インライン
----------------------------------------------------------------- */
.c-arrow.-inline {
  display: inline-block;
  position: relative;
  top: -0.05em;
  margin-left: 8px;
  width: 10px;
  height: 10px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  margin-left: 4px;
  margin-right: 4px; }
  .c-arrow.-inline:before, .c-arrow.-inline:after {
    display: block;
    position: absolute;
    content: ''; }
  .c-arrow.-inline:before {
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 100%;
    height: 2px;
    background-color: #00a0e9;
    -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  .c-arrow.-inline:after {
    top: 50%;
    right: 0;
    -webkit-transform: translate(0, -50%) rotate(-45deg);
            transform: translate(0, -50%) rotate(-45deg);
    width: 4px;
    height: 4px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    border-color: #00a0e9;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-inline {
      -webkit-transform: translate(4px, 0);
              transform: translate(4px, 0); } }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-inline:before {
      background-color: #3EB8EF; } }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-inline:after {
      border-color: #3EB8EF; } }

/* 方向
----------------------------------------------------------------- */
.c-arrow.-left {
  display: inline-block;
  position: relative;
  top: -0.05em;
  margin-right: 8px;
  width: 10px;
  height: 10px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  .c-arrow.-left:before, .c-arrow.-left:after {
    display: block;
    position: absolute;
    content: ''; }
  .c-arrow.-left:before {
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 100%;
    height: 2px;
    background-color: #00a0e9;
    -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  .c-arrow.-left:after {
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%) rotate(135deg);
            transform: translate(0, -50%) rotate(135deg);
    width: 4px;
    height: 4px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    border-color: #00a0e9;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-left {
      -webkit-transform: translate(-4px, 0);
              transform: translate(-4px, 0); } }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-left:before {
      background-color: #00a0e9; } }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-left:after {
      border-color: #00a0e9; } }
  .c-arrow.-left.-navy {
    display: inline-block;
    position: relative;
    top: -0.05em;
    margin-right: 8px;
    width: 10px;
    height: 10px;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    .c-arrow.-left.-navy:before, .c-arrow.-left.-navy:after {
      display: block;
      position: absolute;
      content: ''; }
    .c-arrow.-left.-navy:before {
      top: 50%;
      left: 0;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
      width: 100%;
      height: 2px;
      background-color: #003953;
      -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    .c-arrow.-left.-navy:after {
      top: 50%;
      left: 0;
      -webkit-transform: translate(0, -50%) rotate(135deg);
              transform: translate(0, -50%) rotate(135deg);
      width: 4px;
      height: 4px;
      border-style: solid;
      border-width: 0 2px 2px 0;
      border-color: #003953;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-left.-navy {
        -webkit-transform: translate(-4px, 0);
                transform: translate(-4px, 0); } }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-left.-navy:before {
        background-color: #fff; } }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-left.-navy:after {
        border-color: #fff; } }

.c-arrow.-right {
  display: inline-block;
  position: relative;
  top: -0.05em;
  margin-left: 8px;
  width: 10px;
  height: 10px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  .c-arrow.-right:before, .c-arrow.-right:after {
    display: block;
    position: absolute;
    content: ''; }
  .c-arrow.-right:before {
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 100%;
    height: 2px;
    background-color: #00a0e9;
    -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  .c-arrow.-right:after {
    top: 50%;
    right: 0;
    -webkit-transform: translate(0, -50%) rotate(-45deg);
            transform: translate(0, -50%) rotate(-45deg);
    width: 4px;
    height: 4px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    border-color: #00a0e9;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-right {
      -webkit-transform: translate(4px, 0);
              transform: translate(4px, 0); } }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-right:before {
      background-color: #00a0e9; } }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-right:after {
      border-color: #00a0e9; } }
  .c-arrow.-right.-absolute {
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 10px;
    height: 10px;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    .c-arrow.-right.-absolute:before, .c-arrow.-right.-absolute:after {
      display: block;
      position: absolute;
      content: ''; }
    .c-arrow.-right.-absolute:before {
      top: 50%;
      left: 0;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
      width: 100%;
      height: 2px;
      background-color: #00a0e9;
      -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    .c-arrow.-right.-absolute:after {
      top: 50%;
      right: 0;
      -webkit-transform: translate(0, -50%) rotate(-45deg);
              transform: translate(0, -50%) rotate(-45deg);
      width: 4px;
      height: 4px;
      border-style: solid;
      border-width: 0 2px 2px 0;
      border-color: #00a0e9;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-right.-absolute {
        -webkit-transform: translate(4px, -50%);
                transform: translate(4px, -50%); } }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-right.-absolute:before {
        background-color: #00a0e9; } }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-right.-absolute:after {
        border-color: #00a0e9; } }
  .c-arrow.-right.-white_hover {
    display: inline-block;
    position: relative;
    top: -0.05em;
    margin-left: 8px;
    width: 10px;
    height: 10px;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    .c-arrow.-right.-white_hover:before, .c-arrow.-right.-white_hover:after {
      display: block;
      position: absolute;
      content: ''; }
    .c-arrow.-right.-white_hover:before {
      top: 50%;
      left: 0;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
      width: 100%;
      height: 2px;
      background-color: #003953;
      -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    .c-arrow.-right.-white_hover:after {
      top: 50%;
      right: 0;
      -webkit-transform: translate(0, -50%) rotate(-45deg);
              transform: translate(0, -50%) rotate(-45deg);
      width: 4px;
      height: 4px;
      border-style: solid;
      border-width: 0 2px 2px 0;
      border-color: #003953;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-right.-white_hover {
        -webkit-transform: translate(4px, 0);
                transform: translate(4px, 0); } }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-right.-white_hover:before {
        background-color: #fff; } }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-right.-white_hover:after {
        border-color: #fff; } }
  .c-arrow.-right.-white {
    display: inline-block;
    position: relative;
    top: -0.05em;
    margin-left: 8px;
    width: 10px;
    height: 10px;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    .c-arrow.-right.-white:before, .c-arrow.-right.-white:after {
      display: block;
      position: absolute;
      content: ''; }
    .c-arrow.-right.-white:before {
      top: 50%;
      left: 0;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
      width: 100%;
      height: 2px;
      background-color: #fff;
      -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    .c-arrow.-right.-white:after {
      top: 50%;
      right: 0;
      -webkit-transform: translate(0, -50%) rotate(-45deg);
              transform: translate(0, -50%) rotate(-45deg);
      width: 4px;
      height: 4px;
      border-style: solid;
      border-width: 0 2px 2px 0;
      border-color: #fff;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-right.-white {
        -webkit-transform: translate(4px, 0);
                transform: translate(4px, 0); } }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-right.-white:before {
        background-color: #fff; } }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-right.-white:after {
        border-color: #fff; } }

.c-arrow.-top {
  display: inline-block;
  position: relative;
  top: -0.05em;
  width: 10px;
  height: 10px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  .c-arrow.-top:before, .c-arrow.-top:after {
    display: block;
    position: absolute;
    content: ''; }
  .c-arrow.-top:before {
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 2px;
    height: 100%;
    background-color: #003953;
    -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  .c-arrow.-top:after {
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0) rotate(-135deg);
            transform: translate(-50%, 0) rotate(-135deg);
    width: 4px;
    height: 4px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    border-color: #003953;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-top:before {
      background-color: #00a0e9; } }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-top:after {
      border-color: #00a0e9; } }

.c-arrow.-bottom {
  display: inline-block;
  position: relative;
  top: -0.05em;
  width: 10px;
  height: 10px;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  .c-arrow.-bottom:before, .c-arrow.-bottom:after {
    display: block;
    position: absolute;
    content: ''; }
  .c-arrow.-bottom:before {
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    width: 2px;
    height: 100%;
    background-color: #00a0e9;
    -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  .c-arrow.-bottom:after {
    bottom: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0) rotate(45deg);
            transform: translate(-50%, 0) rotate(45deg);
    width: 4px;
    height: 4px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    border-color: #00a0e9;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-bottom {
      -webkit-transform: translate(0, 4px);
              transform: translate(0, 4px); } }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-bottom:before {
      background-color: #00a0e9; } }
  @media print, screen and (min-width: 64em) {
    a:hover .c-arrow.-bottom:after {
      border-color: #00a0e9; } }
  .c-arrow.-bottom.-absolute {
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 10px;
    height: 10px;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    .c-arrow.-bottom.-absolute:before, .c-arrow.-bottom.-absolute:after {
      display: block;
      position: absolute;
      content: ''; }
    .c-arrow.-bottom.-absolute:before {
      top: 0;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
              transform: translate(-50%, 0);
      width: 2px;
      height: 100%;
      background-color: #00a0e9;
      -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    .c-arrow.-bottom.-absolute:after {
      bottom: 0;
      left: 50%;
      -webkit-transform: translate(-50%, 0) rotate(45deg);
              transform: translate(-50%, 0) rotate(45deg);
      width: 4px;
      height: 4px;
      border-style: solid;
      border-width: 0 2px 2px 0;
      border-color: #00a0e9;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-bottom.-absolute {
        -webkit-transform: translate(0, calc(-50% + 4px));
                transform: translate(0, calc(-50% + 4px)); } }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-bottom.-absolute:before {
        background-color: #00a0e9; } }
    @media print, screen and (min-width: 64em) {
      a:hover .c-arrow.-bottom.-absolute:after {
        border-color: #00a0e9; } }

.c-button .c-arrow.-right {
  top: -0.05em; }

@media print, screen and (min-width: 64em) {
  .c-button.-border2:hover .c-arrow.-right {
    display: inline-block;
    position: relative;
    top: -0.05em;
    margin-left: 8px;
    width: 10px;
    height: 10px;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    .c-button.-border2:hover .c-arrow.-right:before, .c-button.-border2:hover .c-arrow.-right:after {
      display: block;
      position: absolute;
      content: ''; }
    .c-button.-border2:hover .c-arrow.-right:before {
      top: 50%;
      left: 0;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
      width: 100%;
      height: 2px;
      background-color: #fff;
      -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
    .c-button.-border2:hover .c-arrow.-right:after {
      top: 50%;
      right: 0;
      -webkit-transform: translate(0, -50%) rotate(-45deg);
              transform: translate(0, -50%) rotate(-45deg);
      width: 4px;
      height: 4px;
      border-style: solid;
      border-width: 0 2px 2px 0;
      border-color: #fff;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    a:hover .c-button.-border2:hover .c-arrow.-right {
      -webkit-transform: translate(4px, 0);
              transform: translate(4px, 0); } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    a:hover .c-button.-border2:hover .c-arrow.-right:before {
      background-color: #fff; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    a:hover .c-button.-border2:hover .c-arrow.-right:after {
      border-color: #fff; } }

.c-blank {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  position: relative;
  top: -0.1em;
  margin-left: 8px;
  position: relative;
  width: 14px;
  height: 11px; }
  .c-blank:before, .c-blank:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    position: absolute;
    width: 11px;
    height: 8px;
    content: ""; }
  .c-blank:before {
    bottom: 0;
    left: 0;
    border-style: solid;
    border-width: 0 0 2px 2px;
    border-color: #00a0e9; }
  .c-blank:after {
    top: 0;
    right: 0;
    border-style: solid;
    border-width: 2px;
    border-color: #00a0e9; }
  @media print, screen and (min-width: 64em) {
    a:hover .c-blank:before, a:hover .c-blank:after {
      border-color: #3EB8EF; } }

.c-block {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }

.c-block__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .c-block__inner {
      padding-top: 40px;
      padding-bottom: 60px; } }
  @media print, screen and (min-width: 48em) {
    .c-block__inner {
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto;
      padding-top: 80px;
      padding-bottom: 100px; } }

@media only screen and (max-width: 47.9375em) {
  .c-block__section {
    padding-bottom: 40px; } }

@media print, screen and (min-width: 48em) {
  .c-block__section {
    padding-top: 78px;
    padding-bottom: 110px;
    padding-right: 40px;
    padding-left: 40px; } }

@media print, screen and (min-width: 64em) {
  .c-block__section {
    padding-top: 110px;
    padding-right: 80px;
    padding-left: 80px; } }

@media print, screen and (min-width: 75em) {
  .c-block__section {
    padding-right: 120px;
    padding-left: 120px; } }

.c-block__bottom {
  border-top: solid 1px #d9ebf3; }
  @media only screen and (max-width: 47.9375em) {
    .c-block__bottom {
      padding: 45px 0 5px; } }
  @media print, screen and (min-width: 48em) {
    .c-block__bottom {
      padding-top: 75px;
      padding-bottom: 85px;
      padding-right: 40px;
      padding-left: 40px; } }
  @media print, screen and (min-width: 64em) {
    .c-block__bottom {
      padding-right: 80px;
      padding-left: 80px; } }
  @media print, screen and (min-width: 75em) {
    .c-block__bottom {
      padding-right: 120px;
      padding-left: 120px; } }

/* ==========================================================================
* モディファイア
========================================================================== */
/* Margin
----------------------------------------------------------------- */
/* Padding top
----------------------------------------------------------------- */
.c-block.-ptop_0 .c-block__inner {
  padding-top: 0; }

/* Padding bottom
----------------------------------------------------------------- */
.c-block.-pbottom_0 .c-block__inner {
  padding-bottom: 0; }

/* Padding 全体系
----------------------------------------------------------------- */
.c-block.-padding_0 .c-block__inner {
  padding-top: 0;
  padding-bottom: 0; }

/* 背景つき
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .c-block.-panel .c-block__inner {
    -webkit-box-shadow: 0 3px 99px rgba(39, 115, 174, 0.16);
            box-shadow: 0 3px 99px rgba(39, 115, 174, 0.16);
    background-color: #fff;
    border-radius: 40px; } }

@media print, screen and (min-width: 48em) {
  .c-block.-work .c-block__section {
    padding-top: 112px; } }

@media only screen and (max-width: 47.9375em) {
  .c-block.-form .c-block__inner {
    padding-top: 80px;
    padding-bottom: 0; } }

@media print, screen and (min-width: 48em) {
  .c-block.-form .c-block__inner {
    max-width: 820px;
    padding-top: 168px;
    padding-bottom: 0; } }

.c-block.-employee_top:before {
  display: block;
  position: absolute;
  z-index: 0;
  bottom: -20%;
  left: 0;
  width: 100%;
  height: 40%;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(21%, #70caf3), color-stop(66%, #94d7f6), to(#fff));
  background: -webkit-linear-gradient(top, #fff 0%, #70caf3 21%, #94d7f6 66%, #fff 100%);
  background: linear-gradient(to bottom, #fff 0%, #70caf3 21%, #94d7f6 66%, #fff 100%);
  opacity: 0.08;
  content: ''; }

.c-button {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  width: 100%;
  border: none;
  border-radius: 4px;
  -webkit-transition: -webkit-box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: -webkit-box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  font-weight: 700;
  text-align: center;
  color: #fff; }
  @media only screen and (max-width: 47.9375em) {
    .c-button {
      font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "arial"; } }
  @media print, screen and (min-width: 48em) {
    .c-button {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .c-button.browser-is-ie,
  .browser-is-ie .c-button {
    font-family: "メイリオ", "Meiryo"; }
  @media print, screen and (min-width: 48em) {
    .c-button {
      font-size: 13px;
      font-size: 0.8125rem;
      cursor: pointer; } }
  .c-button:before {
    display: block;
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: -webkit-gradient(linear, left top, right top, from(#00a0e9), color-stop(50%, #575cff), to(#00a0e9));
    background-image: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 50%, #00a0e9 100%);
    background-image: linear-gradient(to right, #00a0e9 0%, #575cff 50%, #00a0e9 100%);
    background-position: 0 0;
    background-size: 200% auto;
    border-radius: 4px;
    -webkit-transition: background-position cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: background-position cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: background-position cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: background-position cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    content: ''; }
  .c-button span {
    position: relative;
    z-index: 10; }
  @media print, screen and (min-width: 64em) {
    .c-button:hover {
      -webkit-box-shadow: 0 3px 30px #a5c6ff;
              box-shadow: 0 3px 30px #a5c6ff;
      color: #fff; } }
  @media print, screen and (min-width: 64em) {
    .c-button:hover:before {
      -webkit-transform: scale(1.05, 1.05);
              transform: scale(1.05, 1.05);
      background-position: 100% 0; } }

@media only screen and (max-width: 47.9375em) {
  .c-button.-size_s {
    padding-top: 10px;
    padding-bottom: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-button.-size_s {
    padding-top: 6px;
    padding-bottom: 5px;
    padding-right: 16px;
    padding-left: 16px; } }

@media only screen and (max-width: 47.9375em) {
  .c-button.-size_m {
    max-width: 255px;
    padding-top: 10px;
    padding-bottom: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-button.-size_m {
    max-width: 230px;
    padding-top: 8px;
    padding-bottom: 8px;
    padding-right: 10px;
    padding-left: 10px;
    font-size: 16px;
    font-size: 1rem; } }

@media only screen and (max-width: 47.9375em) {
  .c-button.-size_l {
    padding-top: 10px;
    padding-bottom: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-button.-size_l {
    max-width: 260px;
    padding-top: 11px;
    padding-bottom: 11px;
    padding-right: 10px;
    padding-left: 10px;
    font-size: 16px;
    font-size: 1rem; } }

@media only screen and (max-width: 47.9375em) {
  .c-button.-size_xl {
    padding-top: 10px;
    padding-bottom: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-button.-size_xl {
    padding-top: 13px;
    padding-bottom: 13px;
    padding-right: 10px;
    padding-left: 10px;
    font-size: 16px;
    font-size: 1rem; } }

@media only screen and (max-width: 47.9375em) {
  .c-button.-form {
    padding-top: 10px;
    padding-bottom: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-button.-form {
    padding-top: 15px;
    padding-bottom: 15px;
    padding-right: 10px;
    padding-left: 10px;
    font-size: 16px;
    font-size: 1rem; } }

.c-button.-form.-disabled {
  background-color: #D9EBF3;
  color: #96ADBB;
  pointer-events: none; }
  .c-button.-form.-disabled:before {
    display: none; }
  .c-button.-form.-disabled .c-arrow.-right.-white:before {
    background-color: #96ADBB; }
  .c-button.-form.-disabled .c-arrow.-right.-white:after {
    border-color: #96ADBB; }

@media only screen and (max-width: 47.9375em) {
  .c-button.-cta {
    max-width: 255px;
    padding-top: 10px;
    padding-bottom: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-button.-cta {
    max-width: 330px;
    padding-top: 24px;
    padding-bottom: 25px;
    padding-right: 10px;
    padding-left: 10px;
    font-size: 18px;
    font-size: 1.125rem; } }

@media only screen and (max-width: 63.9375em) {
  .c-button.-header_top {
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 14px;
    font-size: 0.875rem; } }

@media only screen and (max-width: 63.9375em) {
  .c-button.-header_menu {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 16px;
    font-size: 1rem; } }

@media print, screen and (min-width: 64em) {
  .c-button.-header_menu {
    padding-top: 6px;
    padding-bottom: 5px;
    padding-right: 16px;
    padding-left: 16px;
    font-size: 13px;
    font-size: 0.8125rem; } }

@media only screen and (max-width: 63.9375em) {
  .c-button.-header_menu.-white {
    color: #003953; } }

@media print, screen and (min-width: 64em) {
  .c-button.-header_menu.-white {
    color: #fff; } }

@media only screen and (max-width: 63.9375em) {
  .c-button.-header_menu.-white:after {
    border-color: #003953; } }

@media print, screen and (min-width: 64em) {
  .c-button.-header_menu.-white:after {
    border-color: #fff; } }

@media print, screen and (min-width: 64em) {
  .c-button.-header_menu.-white:hover {
    background-color: #fff;
    color: #003953; } }

@media print, screen and (min-width: 64em) {
  .l-header.-fixed .c-button.-header_menu.-white {
    color: #003953; } }

@media print, screen and (min-width: 64em) {
  .l-header.-fixed .c-button.-header_menu.-white:after {
    border-color: #003953; } }

@media print, screen and (min-width: 64em) {
  .l-header.-fixed .c-button.-header_menu.-white:hover {
    background-color: #003953;
    color: #fff; } }

.c-button.-border, .c-button.-border2 {
  overflow: visible;
  color: #003953;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s; }
  .c-button.-border:before, .c-button.-border2:before {
    display: none; }
  .c-button.-border:after, .c-button.-border2:after {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    border-style: solid;
    border-color: #003953;
    border-radius: 4px;
    content: ''; }
    @media only screen and (max-width: 47.9375em) {
      .c-button.-border:after, .c-button.-border2:after {
        width: calc(100% - 4px);
        height: calc(100% - 4px);
        border-width: 2px; } }
    @media print, screen and (min-width: 48em) {
      .c-button.-border:after, .c-button.-border2:after {
        width: calc(100% - 2px);
        height: calc(100% - 2px);
        border-width: 1px; } }
  @media print, screen and (min-width: 64em) {
    .c-button.-border:hover, .c-button.-border2:hover {
      -webkit-box-shadow: none;
              box-shadow: none;
      background-color: #003953;
      color: #fff; } }

.c-button.-border:after {
  z-index: -1; }

@media print, screen and (min-width: 48em) {
  .c-button.-border2:after {
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    border-width: 2px; } }

/* コンテナ
----------------------------------------------------------------- */
.c-button-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

@media only screen and (max-width: 47.9375em) {
  .c-button-container.-col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; } }

.c-button-container.-col .c-button {
  width: 100%;
  max-width: 255px; }
  @media only screen and (max-width: 47.9375em) {
    .c-button-container.-col .c-button {
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .c-button-container.-col .c-button {
      margin-left: 20px;
      max-width: 255px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-button-container.-col .c-button:first-child {
      margin-top: 0; } }
  @media print, screen and (min-width: 48em) {
    .c-button-container.-col .c-button:first-child {
      margin-left: 0; } }

/* カラム
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .c-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 60px;
    margin-left: -20px; } }

@media print, screen and (min-width: 64em) {
  .c-column {
    margin-left: -60px; } }

@media print, screen and (min-width: 48em) {
  .c-column.-max2 .c-column__item {
    width: calc(50% - 20px);
    margin-left: 20px; } }

@media print, screen and (min-width: 64em) {
  .c-column.-max2 .c-column__item {
    width: calc(50% - 60px);
    margin-left: 60px; } }

@media print, screen and (min-width: 48em) {
  .c-column.-ad {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; } }

@media print, screen and (min-width: 48em) {
  .c-column.-ad .c-column__item:first-child {
    width: 62.5%; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-ad .c-column__item:last-child {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .c-column.-ad .c-column__item:last-child {
    width: 33.3%;
    max-width: 320px; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-ad .c-image img {
    max-width: 240px;
    margin: 0 auto; } }

@media print, screen and (min-width: 48em) {
  .c-column.-media {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; } }

@media print, screen and (min-width: 48em) {
  .c-column.-media .c-column__item:first-child {
    width: 62.5%; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-media .c-column__item:last-child {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .c-column.-media .c-column__item:last-child {
    width: 36%;
    max-width: 341px;
    margin-right: -10px; } }

@media only screen and (max-width: 47.9375em) {
  .c-column.-media .c-image img {
    max-width: 240px;
    margin: 0 auto; } }

.c-column__item {
  display: block; }
  @media only screen and (max-width: 47.9375em) {
    .c-column__item {
      margin-top: 40px; } }
  @media print, screen and (min-width: 48em) {
    .c-column__item {
      width: calc(33.33% - 20px);
      margin-left: 20px; } }
  @media print, screen and (min-width: 64em) {
    .c-column__item {
      width: calc(33.33% - 60px);
      margin-left: 60px; } }
  @media print, screen and (min-width: 48em) {
    .c-column__item .c-image + .c-sentence, .c-column__item .p-faq__inner > .c-image + p {
      margin-top: 25px; } }

.c-column__img {
  display: block;
  width: 100%; }
  .c-column__img img {
    display: block;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    border-radius: 10px; }
    @media only screen and (max-width: 47.9375em) {
      .c-column__img img {
        width: 100%; } }
    @media print, screen and (min-width: 48em) {
      .c-column__img img {
        max-width: 100%; } }
    .browser-is-ie .c-column__img img {
      width: 100%; }
    @media print, screen and (min-width: 64em) {
      a:hover .c-column__img img {
        -webkit-transform: scale(1.05, 1.05);
                transform: scale(1.05, 1.05); } }
  .c-column__img.-organization img {
    border-radius: 0; }
    @media only screen and (max-width: 47.9375em) {
      .c-column__img.-organization img {
        width: 100px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-column__img.-sp_auto img {
      width: auto; } }

.c-column__head {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .c-column__head {
      margin-top: 24px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.5; } }
  @media print, screen and (min-width: 48em) {
    .c-column__head {
      margin-top: 32px;
      font-size: 20px;
      font-size: 1.25rem;
      line-height: 1.5; } }

.c-column__desc {
  font-weight: 400; }
  @media only screen and (max-width: 47.9375em) {
    .c-column__desc {
      margin-top: 16px;
      font-size: 15px;
      font-size: 0.9375rem;
      line-height: 2; } }
  @media print, screen and (min-width: 48em) {
    .c-column__desc {
      margin-top: 8px;
      font-size: 14px;
      font-size: 0.875rem;
      line-height: 1.7; } }
  @media print, screen and (min-width: 64em) {
    .c-column__desc {
      font-size: 16px;
      font-size: 1rem; } }

.c-column__link {
  display: block;
  font-weight: bold;
  color: #003953; }
  @media only screen and (max-width: 47.9375em) {
    .c-column__link {
      margin-top: 12px; } }
  @media print, screen and (min-width: 48em) {
    .c-column__link {
      margin-top: 22px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    a:hover .c-column__link {
      color: #00a0e9; } }

.c-definition-list {
  width: 100%; }
  .c-definition-list dt {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    line-height: 1.3; }
  .c-definition-list dd {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    line-height: 1.3; }

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
/* インライン（,）
----------------------------------------------------------------- */
.c-definition-list.-inline {
  line-height: 1; }
  .c-definition-list.-inline dt {
    display: inline;
    margin-left: 1px; }
    .c-definition-list.-inline dt:first-child {
      margin-left: 0; }
  .c-definition-list.-inline dd {
    display: inline;
    margin-left: -3px; }
    .c-definition-list.-inline dd:after {
      margin-right: 4px;
      margin-left: 4px;
      content: ','; }
    .c-definition-list.-inline dd:last-child:after {
      display: none; }

/* 文字（14px）
----------------------------------------------------------------- */
.c-definition-list.-small dt,
.c-definition-list.-small dd {
  font-size: 14px;
  font-size: 0.875rem; }

/* ブロック
----------------------------------------------------------------- */
.c-definition-list.-block {
  margin-top: -6px; }
  .c-definition-list.-block:after {
    display: block;
    clear: both;
    content: ''; }
  .c-definition-list.-block dt {
    display: block;
    clear: left;
    float: left;
    margin-bottom: 6px; }
  .c-definition-list.-block dd {
    display: block;
    float: left;
    margin-bottom: 6px; }

/* フレックス
----------------------------------------------------------------- */
.c-definition-list.-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: -6px; }
  .c-definition-list.-flex dt {
    display: block; }
    .c-definition-list.-flex dt.-nowrap {
      white-space: nowrap; }
  .c-definition-list.-flex dd {
    display: block; }

/* コロン（：）
----------------------------------------------------------------- */
.c-definition-list.-coron dt:after {
  margin-right: 5px;
  margin-left: 5px;
  content: ':'; }

/* ボーダー
----------------------------------------------------------------- */
.c-definition-list.-border dt {
  position: relative;
  padding-right: 30px; }
  .c-definition-list.-border dt:after {
    display: block;
    position: absolute;
    width: 1px;
    background-color: #ddd;
    content: ''; }
    @media only screen and (max-width: 47.9375em) {
      .c-definition-list.-border dt:after {
        top: 0.25em;
        right: 8px;
        height: 11px; } }
    @media print, screen and (min-width: 48em) {
      .c-definition-list.-border dt:after {
        top: 0.25em;
        right: 15px;
        height: 13px; } }

/* オプション
----------------------------------------------------------------- */
.c-definition-list dt.-nowrap {
  white-space: nowrap; }

/* -----------------------------------------------------------------
/* H2相当
----------------------------------------------------------------- */
.c-heading-2 {
  position: relative;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 {
      font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 {
      font-family: "YakuHanJP", "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .c-heading-2.browser-is-ie,
  .browser-is-ie .c-heading-2 {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-2 {
      padding-bottom: 20px;
      font-size: 24px;
      font-size: 1.5rem;
      line-height: 1.1; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-2 {
      padding-bottom: 25px;
      font-size: 28px;
      font-size: 1.75rem;
      line-height: 1.4; } }
  @media print, screen and (min-width: 64em) {
    .c-heading-2 {
      font-size: 34px;
      font-size: 2.125rem; } }
  .c-heading-2:before, .c-heading-2:after {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 2px;
    border-radius: 4px;
    content: ''; }
  .c-heading-2:before {
    z-index: 0;
    width: 100%;
    background-color: #d9ebf3; }
  .c-heading-2:after {
    z-index: 1;
    width: 50px;
    background: -webkit-gradient(linear, left top, right top, from(#00a0e9), to(#575cff));
    background: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 100%);
    background: linear-gradient(to right, #00a0e9 0%, #575cff 100%); }
  .c-heading-2 span {
    display: inline;
    color: #575cff;
    background: -webkit-gradient(linear, left top, right top, from(#00a0e9), to(#575cff));
    background: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 100%);
    background: linear-gradient(to right, #00a0e9 0%, #575cff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 16px;
    font-size: 1rem; }
    .browser-is-ie .c-heading-2 span {
      background: none; }
    .c-heading-2 span:after {
      display: block;
      clear: both;
      content: ''; }
      @media only screen and (max-width: 47.9375em) {
        .c-heading-2 span:after {
          margin-bottom: 10px; } }
      @media print, screen and (min-width: 48em) {
        .c-heading-2 span:after {
          margin-bottom: 2px; } }

/* -----------------------------------------------------------------
/* H3相当
----------------------------------------------------------------- */
.c-heading-3 {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 {
      font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 {
      font-family: "YakuHanJP", "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .c-heading-3.browser-is-ie,
  .browser-is-ie .c-heading-3 {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-3 {
      font-size: 20px;
      font-size: 1.25rem;
      line-height: 1.5; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-3 {
      font-size: 24px;
      font-size: 1.5rem;
      line-height: 1.5; } }
  .c-heading-3 span {
    display: inline-block;
    position: relative;
    top: 0.02em;
    margin-right: 14px;
    letter-spacing: -0.02em;
    color: #575cff;
    background: -webkit-gradient(linear, left top, right top, from(#00a0e9), to(#575cff));
    background: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 100%);
    background: linear-gradient(to right, #00a0e9 0%, #575cff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-family: montserrat, sans-serif;
    -webkit-font-feature-settings: 'palt' 1;
            font-feature-settings: 'palt' 1; }
    .browser-is-ie .c-heading-3 span {
      background: none; }
    @media print, screen and (min-width: 48em) {
      .c-heading-3 span {
        font-size: 29px;
        font-size: 1.8125rem; } }

/* -----------------------------------------------------------------
/* H4相当
----------------------------------------------------------------- */
.c-heading-4 {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 {
      font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 {
      font-family: "YakuHanJP", "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .c-heading-4.browser-is-ie,
  .browser-is-ie .c-heading-4 {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-4 {
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.5; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-4 {
      font-size: 20px;
      font-size: 1.25rem;
      line-height: 1.5; } }

/* -----------------------------------------------------------------
/* H5相当
----------------------------------------------------------------- */
.c-heading-5 {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 {
      font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 {
      font-family: "YakuHanJP", "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .c-heading-5.browser-is-ie,
  .browser-is-ie .c-heading-5 {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .c-heading-5 {
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.6; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 {
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.6; } }
  @media print, screen and (min-width: 48em) {
    .c-heading-5 {
      font-size: 18px;
      font-size: 1.125rem;
      line-height: 1.6; } }

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.c-heading-1.-center,
.c-heading-2.-center,
.c-heading-3.-center,
.c-heading-4.-center,
.c-heading-5.-center {
  text-align: center; }

@media print, screen and (min-width: 48em) {
  .c-heading-1.-pc_center,
  .c-heading-2.-pc_center,
  .c-heading-3.-pc_center,
  .c-heading-4.-pc_center,
  .c-heading-5.-pc_center {
    text-align: center; } }

.c-heading-1.-line,
.c-heading-2.-line,
.c-heading-3.-line,
.c-heading-4.-line,
.c-heading-5.-line {
  position: relative;
  padding-left: 38px; }
  .c-heading-1.-line:before,
  .c-heading-2.-line:before,
  .c-heading-3.-line:before,
  .c-heading-4.-line:before,
  .c-heading-5.-line:before {
    display: block;
    position: absolute;
    top: 0.75em;
    left: 0;
    width: 30px;
    height: 1px;
    background-color: #003953;
    content: ""; }

.c-image {
  display: block;
  position: relative;
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .c-image {
      margin-top: 25px; } }
  @media print, screen and (min-width: 48em) {
    .c-image {
      margin-top: 60px; } }
  .c-image img {
    display: block;
    max-width: 100%;
    border-radius: 10px; }
    .browser-is-ie .c-image img {
      width: 100%; }
  .c-image:first-child {
    margin-top: 0; }

.c-image__caption {
  display: block; }
  @media only screen and (max-width: 47.9375em) {
    .c-image__caption {
      margin-top: 4px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .c-image__caption {
      margin-top: 26px;
      font-size: 16px;
      font-size: 1rem; } }

/* ==========================================================================
* 例外
========================================================================== */
/* 見出しに隣り合う
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-image {
    margin-top: 38px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-image {
    margin-top: 58px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-image {
    margin-top: 28px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-image {
    margin-top: 18px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-image {
    margin-top: 38px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-image {
    margin-top: 58px; } }

/* ==========================================================================
* モディファイア
========================================================================== */
/* ボーダー
----------------------------------------------------------------- */
.c-image.-border:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: solid 1px #bfd0d8;
  content: ''; }

.c-image.-border.-radius:before {
  border-radius: 10px; }

/* 角丸
----------------------------------------------------------------- */
.c-image.-radius img {
  border-radius: 10px; }

/* 左右中央配置
----------------------------------------------------------------- */
.c-image.-center img {
  margin-right: auto;
  margin-left: auto; }

@media only screen and (max-width: 47.9375em) {
  .c-list {
    margin-top: 28px; } }

@media print, screen and (min-width: 48em) {
  .c-list {
    margin-top: 32px; } }

.c-list:first-child {
  margin-top: 0; }

.c-list li {
  position: relative;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .c-list li {
      margin-top: 8px;
      padding-left: 14px; } }
  @media print, screen and (min-width: 48em) {
    .c-list li {
      margin-top: 10px;
      padding-left: 18px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .c-list li {
      font-size: 18px;
      font-size: 1.125rem; } }
  .c-list li:first-child {
    margin-top: 0; }
  .c-list li:before {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: absolute;
    top: 0.65em;
    left: 0;
    background-color: #96adbb;
    border-radius: 50%;
    content: ''; }
    @media only screen and (max-width: 47.9375em) {
      .c-list li:before {
        width: 5px;
        height: 5px; } }
    @media print, screen and (min-width: 48em) {
      .c-list li:before {
        width: 6px;
        height: 6px; } }

.c-list a {
  text-decoration: underline; }
  @media print, screen and (min-width: 64em) {
    .c-list a:hover {
      text-decoration: none; } }

/* ==========================================================================
* 例外
========================================================================== */
/* 見出しに隣り合う
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-list {
    margin-top: 24px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-list {
    margin-top: 32px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-list {
    margin-top: 36px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-list {
    margin-top: 20px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-list {
    margin-top: 14px; } }

/* ==========================================================================
* モディファイア
========================================================================== */
/* 番号付き
----------------------------------------------------------------- */
.c-list.-decimal {
  counter-reset: number; }
  .c-list.-decimal li {
    position: relative;
    padding-left: 30px;
    line-height: 1.5; }
    @media only screen and (max-width: 47.9375em) {
      .c-list.-decimal li {
        margin-top: 8px;
        font-size: 16px;
        font-size: 1rem; } }
    @media print, screen and (min-width: 48em) {
      .c-list.-decimal li {
        margin-top: 10px;
        font-size: 16px;
        font-size: 1rem; } }
    @media print, screen and (min-width: 64em) {
      .c-list.-decimal li {
        font-size: 18px;
        font-size: 1.125rem; } }
    .c-list.-decimal li:first-child {
      margin-top: 0; }
    .c-list.-decimal li:before {
      display: none; }
    .c-list.-decimal li:after {
      display: block;
      position: absolute;
      left: 0;
      counter-increment: number;
      content: counter(number) "."; }
      @media only screen and (max-width: 47.9375em) {
        .c-list.-decimal li:after {
          top: 2px; } }
      @media print, screen and (min-width: 48em) {
        .c-list.-decimal li:after {
          top: 0; } }

/* 番号付き（かっこ）
----------------------------------------------------------------- */
.c-list.-decimal.-kakko li {
  padding-left: 45px; }
  .c-list.-decimal.-kakko li:after {
    content: "（" counter(number) "）"; }

/* 番号付き（1-1.）
----------------------------------------------------------------- */
.c-list.-decimal.-sub li {
  padding-left: 40px; }
  .c-list.-decimal.-sub li:after {
    display: none; }
  .c-list.-decimal.-sub li span {
    display: block;
    position: absolute;
    left: 0; }
    @media only screen and (max-width: 47.9375em) {
      .c-list.-decimal.-sub li span {
        top: 2px; } }
    @media print, screen and (min-width: 48em) {
      .c-list.-decimal.-sub li span {
        top: 0; } }

/* 太字
----------------------------------------------------------------- */
.c-list.-bold > li {
  font-weight: bold; }

/* 文字サイズ小
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .c-list.-small li {
    margin-top: 7px;
    padding-left: 18px;
    font-size: 16px;
    font-size: 1rem; } }

.c-list.-small li:first-child {
  margin-top: 0; }

@media only screen and (max-width: 63.9375em) {
  .c-overlay {
    visibility: hidden;
    opacity: 0;
    position: fixed;
    z-index: 1200;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 160, 233, 0.6)), to(rgba(87, 92, 255, 0.6)));
    background: -webkit-linear-gradient(top, rgba(0, 160, 233, 0.6) 0%, rgba(87, 92, 255, 0.6) 100%);
    background: linear-gradient(to bottom, rgba(0, 160, 233, 0.6) 0%, rgba(87, 92, 255, 0.6) 100%);
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; } }

@media print, screen and (min-width: 64em) {
  .c-overlay {
    display: none; } }

.c-overlay.-visible {
  visibility: visible;
  opacity: 1; }

/* セクション Lv.1
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-section-1 {
    margin-top: 54px; } }

@media print, screen and (min-width: 48em) {
  .c-section-1 {
    margin-top: 80px; } }

@media print, screen and (min-width: 64em) {
  .c-section-1 {
    margin-top: 112px; } }

/* セクション Lv.2
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-section-2 {
    margin-top: 40px; } }

@media print, screen and (min-width: 48em) {
  .c-section-2 {
    margin-top: 84px; } }

/* セクション Lv.2.5
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-section-25 {
    margin-top: 40px; } }

@media print, screen and (min-width: 48em) {
  .c-section-25 {
    margin-top: 50px; } }

/* セクション Lv.3
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-section-3 {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .c-section-3 {
    margin-top: 43px; } }

/* セクション Lv.3.5
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-section-35 {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .c-section-35 {
    margin-top: 37px; } }

/* セクション Lv.4
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-section-4 {
    margin-top: 23px; } }

@media print, screen and (min-width: 48em) {
  .c-section-4 {
    margin-top: 30px; } }

/* セクション Lv.5
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-section-5 {
    margin-top: 16px; } }

@media print, screen and (min-width: 48em) {
  .c-section-5 {
    margin-top: 16px; } }

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.c-section-1:first-child,
.c-section-2:first-child,
.c-section-3:first-child {
  margin-top: 0; }

@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-section-2 {
    margin-top: 74px; } }

.c-sentence, .p-faq__inner > p {
  font-weight: 400;
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all; }
  @media only screen and (max-width: 47.9375em) {
    .c-sentence, .p-faq__inner > p {
      margin-top: 18px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.55; } }
  @media print, screen and (min-width: 48em) {
    .c-sentence, .p-faq__inner > p {
      margin-top: 26px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.85; } }
  @media print, screen and (min-width: 64em) {
    .c-sentence, .p-faq__inner > p {
      margin-top: 32px;
      font-size: 18px;
      font-size: 1.125rem; } }
  .c-sentence:first-child, .p-faq__inner > p:first-child {
    margin-top: 0; }

/* ==========================================================================
* リンク設定
========================================================================== */
.c-sentence > a, .p-faq__inner > p > a {
  text-decoration: underline;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s; }
  @media print, screen and (min-width: 64em) {
    .c-sentence > a:hover, .p-faq__inner > p > a:hover {
      color: #00a0e9;
      text-decoration: none; } }
  .c-sentence > a[target='_blank'], .p-faq__inner > p > a[target='_blank'] {
    padding-right: 3px; }

/* ==========================================================================
* 例外
========================================================================== */
/* 見出しに隣り合う
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-sentence, .p-faq__inner > .c-heading-2 + p {
    margin-top: 36px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-sentence, .p-faq__inner > .c-heading-2 + p {
    margin-top: 43px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-sentence, .p-faq__inner > .c-heading-3 + p {
    margin-top: 14px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-sentence, .p-faq__inner > .c-heading-3 + p {
    margin-top: 30px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-4 + .c-sentence, .p-faq__inner > .c-heading-4 + p {
    margin-top: 10px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-sentence, .p-faq__inner > .c-heading-4 + p {
    margin-top: 20px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-5 + .c-sentence, .p-faq__inner > .c-heading-5 + p {
    margin-top: 6px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-5 + .c-sentence, .p-faq__inner > .c-heading-5 + p {
    margin-top: 14px; } }

/* 画像に隣り合う
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .c-image + .c-sentence, .p-faq__inner > .c-image + p {
    margin-top: 34px; } }

/* ==========================================================================
* モディファイア
========================================================================== */
/* Margin
----------------------------------------------------------------- */
.c-sentence.-margin_0, .p-faq__inner > p.-margin_0 {
  margin-top: 0; }

/* 中央寄せ
----------------------------------------------------------------- */
.c-sentence.-center, .p-faq__inner > p.-center {
  text-align: center; }

@media print, screen and (min-width: 48em) {
  .c-sentence.-pc_center, .p-faq__inner > p.-pc_center {
    text-align: center; } }

/* 右寄せ
----------------------------------------------------------------- */
.c-sentence.-right, .p-faq__inner > p.-right {
  text-align: right; }

/* SPでサイズ変更
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-sentence.-sp_large, .p-faq__inner > p.-sp_large {
    font-size: 16px;
    font-size: 1rem; } }

/* Twitterマーケティング支援 > 強み部分（SPでだけボールド・サイズ小）
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-sentence.-twitter_2, .p-faq__inner > p.-twitter_2 {
    font-weight: bold;
    font-size: 14px;
    font-size: 0.875rem; } }

@media print, screen and (min-width: 48em) {
  .c-sentence.-twitter_2, .p-faq__inner > p.-twitter_2 {
    font-size: 18px;
    font-size: 1.125rem; } }

/* PC・SP共通でサイズ大きめ
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .c-sentence.-large, .p-faq__inner > p.-large {
    line-height: 1.8; } }

/* PC・SP共通でサイズ小さめ
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-sentence.-small, .p-faq__inner > p.-small {
    font-size: 14px;
    font-size: 0.875rem; } }

@media print, screen and (min-width: 48em) {
  .c-sentence.-small, .p-faq__inner > p.-small {
    font-size: 14px;
    font-size: 0.875rem; } }

/* 先頭の文字を分離
----------------------------------------------------------------- */
.c-sentence.-separate, .p-faq__inner > p.-separate {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .c-sentence.-separate span, .p-faq__inner > p.-separate span {
    display: block;
    padding-right: 15px;
    white-space: nowrap; }

.c-table {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .c-table {
      margin-top: 18px; } }
  @media print, screen and (min-width: 48em) {
    .c-table {
      margin-top: 28px; } }
  .c-table:first-child {
    margin-top: 0; }
  @media only screen and (max-width: 47.9375em) {
    .c-table tr {
      border-style: solid;
      border-width: 1px 0 0 0;
      border-color: #d9ebf3; } }
  @media only screen and (max-width: 47.9375em) {
    .c-table tr:last-child {
      border-width: 1px 0 1px 0; } }
  @media print, screen and (min-width: 48em) {
    .c-table tr:last-child th,
    .c-table tr:last-child td {
      border-width: 1px 0 1px 0; } }
  .c-table tr th,
  .c-table tr td {
    vertical-align: top; }
    @media only screen and (max-width: 47.9375em) {
      .c-table tr th,
      .c-table tr td {
        display: block;
        font-size: 16px;
        font-size: 1rem; } }
    @media print, screen and (min-width: 48em) {
      .c-table tr th,
      .c-table tr td {
        padding-top: 15px;
        padding-bottom: 16px;
        border-style: solid;
        border-width: 1px 0 0 0;
        border-color: #d9ebf3;
        font-size: 16px;
        font-size: 1rem; } }
    @media print, screen and (min-width: 64em) {
      .c-table tr th,
      .c-table tr td {
        font-size: 18px;
        font-size: 1.125rem; } }
  .c-table tr th {
    white-space: nowrap;
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .c-table tr th {
        padding-top: 20px; } }
    @media print, screen and (min-width: 48em) {
      .c-table tr th {
        padding-right: 32px; } }
  @media only screen and (max-width: 47.9375em) {
    .c-table tr td {
      padding-top: 4px;
      padding-bottom: 20px; } }
  .c-table tr td a {
    word-break: break-all; }
    .c-table tr td a:not(.c-link) {
      text-decoration: underline; }
      @media print, screen and (min-width: 64em) {
        .c-table tr td a:not(.c-link):hover {
          text-decoration: none; } }
    .c-table tr td a[target='_blank'] {
      padding-right: 3px; }
    .c-table tr td a .c-blank {
      top: -0.1em; }

/* ==========================================================================
* 例外
========================================================================== */
/* 見出しに隣り合う
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .c-heading-2 + .c-table {
    margin-top: 24px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-2 + .c-table {
    margin-top: 32px; } }

@media only screen and (max-width: 47.9375em) {
  .c-heading-3 + .c-table {
    margin-top: 29px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-3 + .c-table {
    margin-top: 40px; } }

@media print, screen and (min-width: 48em) {
  .c-heading-4 + .c-table {
    margin-top: 25px; } }

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .c-table.-large tr th,
  .c-table.-large tr td {
    padding-top: 34px;
    padding-bottom: 42px; } }

@media only screen and (max-width: 47.9375em) {
  .c-table.-large tr td {
    padding-top: 20px; } }

@media only screen and (max-width: 47.9375em) {
  .c-table.-person tr:first-child th,
  .c-table.-person tr:first-child td {
    border-width: 0 0 1px 0; } }

.c-table.-person tr:last-child th,
.c-table.-person tr:last-child td {
  border-width: 1px 0 1px 0; }

@media only screen and (max-width: 47.9375em) {
  .c-table.-person tr th,
  .c-table.-person tr td {
    display: table-cell;
    font-size: 16px;
    font-size: 1rem;
    padding-top: 10px;
    padding-bottom: 10px;
    border-style: solid;
    border-width: 1px 0 0 0;
    border-color: #d9ebf3; } }

@media print, screen and (min-width: 48em) {
  .c-table.-person tr th,
  .c-table.-person tr td {
    padding-top: 10px;
    padding-bottom: 11px; } }

@media only screen and (max-width: 47.9375em) {
  .c-table.-person tr th {
    padding-right: 16px; } }

@media print, screen and (min-width: 48em) {
  .c-table.-person tr td {
    width: 100%; } }

/* -----------------------------------------------------------------
/* 横スクロール版
----------------------------------------------------------------- */
.c-link {
  position: relative;
  font-weight: bold;
  color: #003953; }
  @media only screen and (max-width: 47.9375em) {
    .c-link {
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .c-link {
      font-size: 16px;
      font-size: 1rem; } }
  .c-link i.c-blank {
    top: 0.03em; }

a.c-link {
  color: #003953;
  text-decoration: none; }
  @media print, screen and (min-width: 64em) {
    a.c-link:hover {
      color: #00a0e9; } }

.c-link.-white {
  color: #fff; }
  .c-link.-white:hover {
    color: #fff; }

.c-link.-rss {
  font-weight: normal; }
  @media only screen and (max-width: 47.9375em) {
    .c-link.-rss {
      font-size: 12px;
      font-size: 0.75rem; } }

.p-section-heading {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.p-section-heading__sub {
  display: inline-block;
  color: #00a0e9;
  font-weight: bold;
  color: #00a0e9;
  background: -webkit-gradient(linear, left top, right top, from(#00a0e9), to(#575cff));
  background: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 100%);
  background: linear-gradient(to right, #00a0e9 0%, #575cff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }
  @media only screen and (max-width: 47.9375em) {
    .p-section-heading__sub {
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-section-heading__sub {
      font-size: 16px;
      font-size: 1rem; } }
  .browser-is-ie .p-section-heading__sub {
    background: none; }

.p-section-heading__main {
  display: block;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-section-heading__main {
      margin-top: 5px;
      font-size: 24px;
      font-size: 1.5rem;
      line-height: 1.5; } }
  @media print, screen and (min-width: 48em) {
    .p-section-heading__main {
      margin-top: 10px;
      font-size: 30px;
      font-size: 1.875rem;
      line-height: 1.5; } }
  @media print, screen and (min-width: 64em) {
    .p-section-heading__main {
      font-size: 34px;
      font-size: 2.125rem; } }
  @media only screen and (max-width: 47.9375em) {
    .p-section-heading__main br {
      display: none; } }

/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .p-section-heading.-pc_center {
    text-align: center; } }

.p-section-heading.-center {
  text-align: center; }

@media only screen and (max-width: 47.9375em) {
  .p-section-heading.-yakuhan .p-section-heading__main {
    font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }

@media print, screen and (min-width: 48em) {
  .p-section-heading.-yakuhan .p-section-heading__main {
    font-family: "YakuHanJP", "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }

.p-section-heading.-yakuhan .p-section-heading__main.browser-is-ie,
.browser-is-ie .p-section-heading.-yakuhan .p-section-heading__main {
  font-family: "メイリオ", "Meiryo"; }

@media print, screen and (min-width: 48em) {
  .p-section-heading.-recruit .p-section-heading__main br {
    display: none; } }

@media print, screen and (min-width: 75em) {
  .p-section-heading.-recruit .p-section-heading__main br {
    display: block; } }

@media print, screen and (min-width: 48em) {
  .p-section-heading.-recruit_emp .p-section-heading__main br {
    display: none; } }

@media print, screen and (min-width: 64em) {
  .p-section-heading.-recruit_emp .p-section-heading__main br {
    display: block; } }

@media print, screen and (min-width: 48em) {
  .p-section-heading.-recruit_requirement .p-section-heading__main br {
    display: none; } }

@media print, screen and (min-width: 87.5em) {
  .p-section-heading.-recruit_requirement .p-section-heading__main br {
    display: block; } }

.p-link {
  font-weight: bold;
  color: #003953; }
  @media print, screen and (min-width: 48em) {
    .p-link {
      font-size: 16px;
      font-size: 1rem; } }

.p-link-column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 47.9375em) {
    .p-link-column {
      margin-left: -22px; } }
  @media print, screen and (min-width: 48em) {
    .p-link-column {
      margin-left: -35px; } }

@media only screen and (max-width: 47.9375em) {
  .p-link-column__item {
    margin-left: 22px; } }

@media print, screen and (min-width: 48em) {
  .p-link-column__item {
    margin-left: 35px; } }

/* モディファイア
----------------------------------------------------------------- */
.p-link-column.-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-link-column.-center .p-link {
      font-size: 14px;
      font-size: 0.875rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-link-column.-large {
    display: block;
    margin-left: 0; } }

@media only screen and (max-width: 47.9375em) {
  .p-link-column.-large .p-link-column__item {
    margin-top: 8px;
    margin-left: 0; } }

@media print, screen and (min-width: 64em) {
  .p-link-column.-large .p-link {
    font-size: 18px;
    font-size: 1.125rem; } }

.p-link-column.-cta {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-link-column.-cta {
      margin-left: -14px; } }
  @media print, screen and (min-width: 48em) {
    .p-link-column.-cta {
      margin-left: -20px; } }
  @media print, screen and (min-width: 64em) {
    .p-link-column.-cta {
      margin-left: -40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-link-column.-cta .p-link-column__item {
      margin-left: 14px; } }
  @media print, screen and (min-width: 48em) {
    .p-link-column.-cta .p-link-column__item {
      width: calc(33.33% - 20px);
      margin-left: 20px; } }
  @media print, screen and (min-width: 64em) {
    .p-link-column.-cta .p-link-column__item {
      width: calc(33.33% - 40px);
      margin-left: 40px; } }

.p-cta {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta {
      margin-top: 240px; } }
  @media print, screen and (min-width: 48em) {
    .p-cta {
      margin-top: 114px; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-contact {
      margin-top: 136px; } }

.p-cta__illust {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  max-width: 1200px;
  margin: 0 auto; }
  .p-cta__illust img {
    display: block;
    position: absolute;
    width: 100%; }

.p-cta__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 100%; }
  @media print, screen and (min-width: 48em) {
    .p-cta__inner {
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto; } }

.p-cta__bg {
  position: absolute;
  z-index: -2;
  left: 0;
  width: 100%;
  height: 100%; }
  .p-cta__bg > svg {
    position: absolute; }

.p-cta__left,
.p-cta__right {
  -webkit-transform: translate(0, -5px);
          transform: translate(0, -5px);
  opacity: 0;
  -webkit-transition: opacity linear 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity linear 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity linear 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity linear 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s; }
  @media print {
    .p-cta__left,
    .p-cta__right {
      opacity: 1 !important;
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  .p-cta__left.-visible,
  .p-cta__right.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important; }

.p-cta__clip-path > clipPath {
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s; }
  .p-cta__left .p-cta__clip-path > clipPath {
    -webkit-transform: skewY(-5deg);
            transform: skewY(-5deg); }
  .p-cta__right .p-cta__clip-path > clipPath {
    -webkit-transform: skewY(5deg);
            transform: skewY(5deg); }
  .p-cta__left.-visible .p-cta__clip-path > clipPath,
  .p-cta__right.-visible .p-cta__clip-path > clipPath {
    -webkit-transform: skewY(0);
            transform: skewY(0); }

.p-cta__fluffy {
  position: absolute; }

.p-cta__head {
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  opacity: 0;
  -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s; }
  @media print {
    .p-cta__head {
      opacity: 1 !important;
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  .p-cta__head.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important; }

.p-cta__desc {
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  opacity: 0;
  -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta__desc {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-cta__desc {
      margin-top: 26px; } }
  @media print {
    .p-cta__desc {
      opacity: 1 !important;
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  .p-cta__desc.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important; }

.p-cta__link {
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  opacity: 0;
  -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta__link {
      margin-top: 17px; } }
  @media print, screen and (min-width: 48em) {
    .p-cta__link {
      margin-top: 48px; } }
  @media print {
    .p-cta__link {
      opacity: 1 !important;
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  .p-cta__link.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important; }

.p-cta__button {
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  opacity: 0;
  -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.6s; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta__button {
      margin-top: 35px; } }
  @media print, screen and (min-width: 48em) {
    .p-cta__button {
      margin-top: 43px; } }
  @media print, screen and (min-width: 48em) {
    .p-cta__link + .p-cta__button {
      margin-top: 55px; } }
  @media print {
    .p-cta__button {
      opacity: 1 !important;
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  .p-cta__button.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important; }

.p-cta__ie-img {
  display: none; }
  .browser-is-ie .p-cta__ie-img {
    display: block;
    width: 100%;
    height: auto; }

/* お問い合わせ
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .p-cta.-contact {
    margin-top: 74px; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-contact .p-cta__inner {
    padding-bottom: 100px; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-contact .p-cta__bg svg.-sp-left-top {
    top: -23%;
    left: 0;
    width: 19.89vw; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-contact .p-cta__bg svg.-sp-left-top {
    display: none; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-contact .p-cta__bg svg.-sp-left-middle {
    top: 15%;
    left: -13%;
    width: 25.84vw; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-contact .p-cta__bg svg.-sp-left-middle {
    display: none; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-contact .p-cta__bg svg.-sp-right-bottom {
    bottom: -7%;
    right: -11%;
    width: 32.48vw; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-contact .p-cta__bg svg.-sp-right-bottom {
    display: none; } }

.p-cta.-contact .p-cta__left img,
.p-cta.-contact .p-cta__right img {
  display: block;
  width: 100%; }

.p-cta.-contact .p-cta__left {
  position: absolute;
  z-index: 10; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-contact .p-cta__left {
      bottom: -60px;
      left: 7vw;
      width: 34.4vw;
      max-width: 129px; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-contact .p-cta__left {
      top: 22%;
      left: 0;
      width: 18.5vw;
      max-width: 259px; } }
  @media print, screen and (min-width: 75em) {
    .p-cta.-contact .p-cta__left {
      top: 13.7%; } }

.p-cta.-contact .p-cta__right {
  position: absolute;
  z-index: 10; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-contact .p-cta__right {
      bottom: -60px;
      right: 4vw;
      width: 40vw;
      max-width: 150px; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-contact .p-cta__right {
      top: 29%;
      right: 0;
      width: 21.07vw;
      max-width: 295px; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-contact .p-cta__bg-left {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-contact .p-cta__bg-left {
    top: -2%;
    left: 0;
    max-width: 272.8px;
    width: 19.49vw; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-contact .p-cta__bg-right {
    top: -38%;
    right: 0;
    width: 47.47vw; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-contact .p-cta__bg-right {
    top: 0%;
    right: 0;
    min-width: 200px;
    width: 17.69vw;
    max-width: 247.6px; } }

.p-cta.-contact .p-cta__fluffy.-left_top {
  max-width: 116.422px; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-contact .p-cta__fluffy.-left_top {
      bottom: -10%;
      left: -5%;
      width: 30.9vw; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-contact .p-cta__fluffy.-left_top {
      top: -1.5%;
      left: 9%;
      width: 8.32vw; } }

.p-cta.-contact .p-cta__fluffy.-left_middle {
  max-width: 130.624px; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-contact .p-cta__fluffy.-left_middle {
      top: 15%;
      left: -15%;
      width: 34.9vw; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-contact .p-cta__fluffy.-left_middle {
      top: 39%;
      left: -2.5%;
      width: 9.33vw; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-contact .p-cta__fluffy.-left_bottom {
    top: 3%;
    right: -14%;
    width: 34.9vw;
    max-width: 130.527px; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-contact .p-cta__fluffy.-left_bottom {
    top: 68%;
    left: 12.5%;
    width: 7.82vw;
    max-width: 109.527px; } }

.p-cta.-contact .p-cta__fluffy.-right_top {
  max-width: 123.375px; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-contact .p-cta__fluffy.-right_top {
      top: -15%;
      right: 25%;
      width: 23vw; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-contact .p-cta__fluffy.-right_top {
      top: -5%;
      right: 12.3%;
      width: 8.71vw; } }

.p-cta.-contact .p-cta__fluffy.-right_bottom {
  max-width: 172.268px; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-contact .p-cta__fluffy.-right_bottom {
      bottom: -2%;
      right: -5%;
      width: 27.3vw; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-contact .p-cta__fluffy.-right_bottom {
      top: 13%;
      right: -1.7%;
      width: 12.3vw; } }

/* 採用エントリー
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .p-cta.-entry {
    margin-top: 74px; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-entry .p-cta__inner {
    padding-bottom: 100px; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-entry .p-cta__illust:first-child img {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-entry .p-cta__illust:first-child img {
    top: 8%;
    left: 14%;
    width: 6vw;
    max-width: 85px; } }

@media print, screen and (min-width: 75em) {
  .p-cta.-entry .p-cta__illust:first-child img {
    left: 19%; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-entry .p-cta__illust:nth-child(2) img {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-entry .p-cta__illust:nth-child(2) img {
    top: 41.5%;
    right: 11.8%;
    width: 5.5vw;
    max-width: 77px; } }

@media print, screen and (min-width: 75em) {
  .p-cta.-entry .p-cta__illust:nth-child(2) img {
    top: 24.5%;
    right: 17.8%; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-entry .p-cta__bg svg.-sp-left-top {
    top: -23%;
    left: 0;
    width: 19.89vw; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-entry .p-cta__bg svg.-sp-left-top {
    display: none; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-entry .p-cta__bg svg.-sp-left-middle {
    top: 15%;
    left: -13%;
    width: 25.84vw; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-entry .p-cta__bg svg.-sp-left-middle {
    display: none; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-entry .p-cta__bg svg.-sp-right-bottom {
    bottom: -7%;
    right: -11%;
    width: 32.48vw; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-entry .p-cta__bg svg.-sp-right-bottom {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-entry .p-cta__clipped-image.-sp {
    display: none; } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-entry .p-cta__clipped-image.-pc {
    display: none; } }

.browser-is-ie .p-cta.-entry .p-cta__clipped-image.-pc {
  display: none; }

.p-cta.-entry .p-cta__left {
  position: absolute;
  z-index: 10; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-entry .p-cta__left {
      bottom: -60px;
      left: 7%;
      width: 134.19px;
      height: 127.02px; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-entry .p-cta__left {
      top: 6%;
      left: 1.4%;
      width: 14.91vw;
      max-width: 209px; } }
  @media print, screen and (min-width: 75em) {
    .p-cta.-entry .p-cta__left {
      left: 5.4%; } }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-entry .p-cta__left .p-cta__sp-illust {
      position: absolute;
      top: -4px;
      right: 0;
      width: 47px;
      z-index: 10; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-entry .p-cta__left .p-cta__sp-illust {
      display: none; } }
  .p-cta.-entry .p-cta__left .p-cta__clipped-image.-sp {
    width: 71.46vw;
    max-width: 268px;
    height: auto; }
    .p-cta.-entry .p-cta__left .p-cta__clipped-image.-sp image {
      -webkit-clip-path: url(#clip-cta-left-sp);
              clip-path: url(#clip-cta-left-sp); }
  .p-cta.-entry .p-cta__left .p-cta__clipped-image.-pc {
    width: 15.29vw;
    max-width: 214px;
    height: auto; }
    .p-cta.-entry .p-cta__left .p-cta__clipped-image.-pc image {
      -webkit-clip-path: url(#clip-cta-left-pc);
              clip-path: url(#clip-cta-left-pc); }

.p-cta.-entry .p-cta__right {
  position: absolute;
  z-index: 10; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-entry .p-cta__right {
      bottom: -60px;
      right: 7%;
      width: 124px;
      height: 119.4px; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-entry .p-cta__right {
      top: 51.1%;
      right: 0.1%;
      width: 14.45vw;
      max-width: 202px; } }
  @media print, screen and (min-width: 75em) {
    .p-cta.-entry .p-cta__right {
      top: 47.1%;
      right: 6.1%; } }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-entry .p-cta__right .p-cta__sp-illust {
      position: absolute;
      top: -23px;
      left: 3px;
      width: 42px;
      z-index: 10; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-entry .p-cta__right .p-cta__sp-illust {
      display: none; } }
  .p-cta.-entry .p-cta__right .p-cta__clipped-image.-sp {
    width: 66.67vw;
    max-width: 250px;
    height: auto; }
    .p-cta.-entry .p-cta__right .p-cta__clipped-image.-sp image {
      -webkit-clip-path: url(#clip-cta-right-sp);
              clip-path: url(#clip-cta-right-sp); }
  .p-cta.-entry .p-cta__right .p-cta__clipped-image.-pc {
    width: 14.71vw;
    max-width: 206px;
    height: auto; }
    .p-cta.-entry .p-cta__right .p-cta__clipped-image.-pc image {
      -webkit-clip-path: url(#clip-cta-right-pc);
              clip-path: url(#clip-cta-right-pc); }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-entry .p-cta__bg-left {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-entry .p-cta__bg-left {
    top: 23%;
    left: 0;
    min-width: 250px;
    width: 21.62vw;
    max-width: 302.665px;
    -webkit-transform: rotate(6deg);
            transform: rotate(6deg); } }

@media only screen and (max-width: 47.9375em) {
  .p-cta.-entry .p-cta__bg-right {
    top: -38%;
    right: 0;
    width: 47.47vw; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-entry .p-cta__bg-right {
    top: 18%;
    right: 0;
    min-width: 200px;
    width: 17.69vw;
    max-width: 247.6px; } }

.p-cta.-entry .p-cta__fluffy.-left_top {
  max-width: 123.5px; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-entry .p-cta__fluffy.-left_top {
      top: 4%;
      left: -10%;
      width: 20.8vw; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-entry .p-cta__fluffy.-left_top {
      top: 25.5%;
      left: 0;
      width: 8.82vw; } }

.p-cta.-entry .p-cta__fluffy.-left_middle {
  max-width: 82.2px; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-entry .p-cta__fluffy.-left_middle {
      bottom: 2%;
      left: -15%;
      width: 27.7vw; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-entry .p-cta__fluffy.-left_middle {
      top: 53%;
      left: 12.8%;
      width: 5.87vw; } }

.p-cta.-entry .p-cta__fluffy.-left_bottom {
  max-width: 88.6px; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-entry .p-cta__fluffy.-left_bottom {
      display: none; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-entry .p-cta__fluffy.-left_bottom {
      top: 70%;
      left: 5%;
      width: 6.33vw; } }

.p-cta.-entry .p-cta__fluffy.-right_top {
  max-width: 93.9px; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-entry .p-cta__fluffy.-right_top {
      top: -7%;
      right: 24%;
      width: 14.1vw; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-entry .p-cta__fluffy.-right_top {
      top: 18%;
      right: 13.3%;
      width: 6.71vw; } }

.p-cta.-entry .p-cta__fluffy.-right_bottom {
  max-width: 151.6px; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-entry .p-cta__fluffy.-right_bottom {
      top: 0%;
      right: -16%;
      width: 24.3vw; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-entry .p-cta__fluffy.-right_bottom {
      top: 30%;
      right: 0.2%;
      width: 10.8vw; } }

.p-cta.-entry .p-cta__fluffy.-right_bottom_bottom {
  max-width: 151.6px; }
  @media only screen and (max-width: 47.9375em) {
    .p-cta.-entry .p-cta__fluffy.-right_bottom_bottom {
      bottom: -9%;
      right: -11%;
      width: 32.3vw; } }
  @media print, screen and (min-width: 48em) {
    .p-cta.-entry .p-cta__fluffy.-right_bottom_bottom {
      display: none; } }

@media print, screen and (min-width: 48em) {
  .p-cta.-entry .p-cta__link {
    width: 100%;
    max-width: 560px;
    margin-top: 30px;
    margin-right: auto;
    margin-left: auto; } }

.p-link-list__item {
  position: relative; }
  .p-link-list__item:first-child:before {
    border-width: 1px 0 1px 0; }
  .p-link-list__item:before {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: absolute;
    z-index: -2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-style: solid;
    border-width: 0 0 1px 0;
    border-color: #e0e8ec;
    content: ''; }
  .p-link-list__item:after {
    opacity: 0;
    position: absolute;
    z-index: -1;
    top: -1px;
    left: 0px;
    width: 100%;
    height: calc(100% + 2px);
    background-color: #fff;
    -webkit-transition: opacity linear 0.15s, left cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, width cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: opacity linear 0.15s, left cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, width cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: opacity linear 0.15s, box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, left cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, width cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: opacity linear 0.15s, box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, left cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, width cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    content: ''; }
  @media print, screen and (min-width: 64em) {
    .p-link-list__item:hover:after {
      opacity: 1;
      left: -12px;
      width: calc(100% + 24px);
      -webkit-box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16);
              box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16); } }
  .p-link-list__item a {
    display: block;
    position: relative;
    font-weight: bold;
    font-size: 16px;
    font-size: 1rem;
    color: #003953; }
    @media only screen and (max-width: 47.9375em) {
      .p-link-list__item a {
        padding-top: 8px;
        padding-bottom: 8px; } }
    @media print, screen and (min-width: 48em) {
      .p-link-list__item a {
        padding-top: 15px;
        padding-bottom: 17px; } }
    .p-link-list__item a:after {
      display: block;
      position: absolute;
      top: 50%;
      right: 0;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
      width: 12px;
      height: 9px;
      margin-left: 9px;
      background-repeat: no-repeat;
      background-position: 50% 50%;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2011.485%208.485%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M-494-267v-2h4v-4h2v6Z%22%20transform%3D%22translate%28545.351%20-152.028%29%20rotate%28-45%29%22%20fill%3D%22%233EB8EF%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M4%2C0H14V2H4Z%22%20transform%3D%22translate%28-4%203.2%29%22%20fill%3D%22%233EB8EF%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E");
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      content: ''; }
    @media print, screen and (min-width: 64em) {
      .p-link-list__item a:hover {
        color: #00a0e9; } }
    @media print, screen and (min-width: 64em) {
      .p-link-list__item a:hover:after {
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2011.485%208.485%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M-494-267v-2h4v-4h2v6Z%22%20transform%3D%22translate%28545.351%20-152.028%29%20rotate%28-45%29%22%20fill%3D%22%233EB8EF%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M4%2C0H14V2H4Z%22%20transform%3D%22translate%28-4%203.2%29%22%20fill%3D%22%233EB8EF%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E");
        -webkit-transform: translate(4px, -50%);
                transform: translate(4px, -50%); } }

.p-corp-visual {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }

.p-corp-visual__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%; }
  @media print, screen and (min-width: 48em) {
    .p-corp-visual__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      position: relative;
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto; } }

@media only screen and (max-width: 47.9375em) {
  .p-corp-visual__img {
    width: 100%;
    padding-top: 60px; } }

@media print, screen and (min-width: 48em) {
  .p-corp-visual__img {
    position: absolute;
    z-index: 0;
    top: 34%;
    right: -3%;
    width: 50vw;
    max-width: 727px; } }

@media print, screen and (min-width: 64em) {
  .p-corp-visual__img {
    top: 14.7%; } }

@media print, screen and (min-width: 87.5em) {
  .p-corp-visual__img {
    width: 60.59vw; } }

.p-corp-visual__img img {
  display: block;
  max-width: 100%; }

@media only screen and (max-width: 47.9375em) {
  .p-corp-visual__clipped-image.-sp {
    width: 277.87vw;
    height: auto; } }

@media print, screen and (min-width: 48em) {
  .p-corp-visual__clipped-image.-sp {
    display: none; } }

.p-corp-visual__clipped-image.-sp image {
  -webkit-clip-path: url(#clip-main-visual-sp);
          clip-path: url(#clip-main-visual-sp); }

@media only screen and (max-width: 47.9375em) {
  .p-corp-visual__clipped-image.-pc {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-corp-visual__clipped-image.-pc {
    width: 170.42vw;
    max-width: 2386px;
    height: auto; } }

.p-corp-visual__clipped-image.-pc image {
  -webkit-clip-path: url(#clip-main-visual-pc);
          clip-path: url(#clip-main-visual-pc); }

.p-corp-visual__box {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative; }
  @media print, screen and (min-width: 48em) {
    .p-corp-visual__box {
      width: 47.5%;
      padding-top: 164px; } }
  @media print, screen and (min-width: 64em) {
    .p-corp-visual__box {
      padding-top: 190px;
      padding-bottom: 180px; } }
  @media print, screen and (min-width: 75em) {
    .p-corp-visual__box {
      padding-bottom: 347px; } }

.p-corp-visual__main {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-visual__main {
      font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-visual__main {
      font-family: "YakuHanJP", "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-corp-visual__main.browser-is-ie,
  .browser-is-ie .p-corp-visual__main {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-visual__main {
      padding-top: 32px;
      font-size: 28px;
      font-size: 1.75rem;
      line-height: 1.4; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-visual__main {
      font-size: 28px;
      font-size: 1.75rem;
      line-height: 1.35; } }
  @media print, screen and (min-width: 64em) {
    .p-corp-visual__main {
      font-size: 38px;
      font-size: 2.375rem; } }
  @media print, screen and (min-width: 75em) {
    .p-corp-visual__main {
      font-size: 48px;
      font-size: 3rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-corp-visual__main-inner.-pc {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-corp-visual__main-inner.-pc {
    display: block; } }

.p-corp-visual__main-inner.-pc span {
  display: inline-block; }

@media only screen and (max-width: 47.9375em) {
  .p-corp-visual__main-inner.-sp {
    display: block; } }

@media print, screen and (min-width: 48em) {
  .p-corp-visual__main-inner.-sp {
    display: none; } }

.p-corp-visual__desc {
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-visual__desc {
      margin-top: 16px;
      font-size: 16px;
      font-size: 1rem;
      font-weight: bold;
      line-height: 1.65; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-visual__desc {
      width: 100%;
      max-width: 456px;
      margin-top: 18px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.85; } }
  @media print, screen and (min-width: 64em) {
    .p-corp-visual__desc {
      font-size: 18px;
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-visual__desc br {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .p-corp-visual__desc br {
      display: block; } }

.p-corp-visual__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-visual__button {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-visual__button {
      margin-top: 25px; } }
  @media print, screen and (min-width: 64em) {
    .p-corp-visual__button {
      margin-top: 55px; } }

.p-corp-visual__item {
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-visual__item {
      max-width: 255px;
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-visual__item {
      max-width: 220px;
      margin-left: 20px; } }
  .p-corp-visual__item:first-child {
    margin-left: 0; }

.p-corp-visual__fluffy {
  position: absolute;
  z-index: -1; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-visual__fluffy.-bg_top {
      top: -22.5vw;
      left: -9.96vw;
      width: 139.2vw; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-visual__fluffy.-bg_top {
      top: -22.5%;
      right: -12.54vw;
      width: 79.07vw;
      max-width: 1107px; } }
  .p-corp-visual__fluffy.-bg_top svg {
    -webkit-transform: skewY(-5deg);
            transform: skewY(-5deg);
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s; }
  .p-corp-visual__fluffy.-bg_top.-visible svg {
    -webkit-transform: skewY(0);
            transform: skewY(0); }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-visual__fluffy.-bg_bottom {
      top: 86.7%;
      left: -22.13vw;
      width: 79.2vw; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-visual__fluffy.-bg_bottom {
      bottom: -5.8%;
      left: -7.3vw;
      width: 30.56vw;
      max-width: 427.8px; } }

.p-corp-visual__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.p-corp-layout {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-layout {
      margin-top: 80px; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-layout {
      margin-top: 135px; } }
  @media print, screen and (min-width: 64em) {
    .p-corp-layout.-first {
      margin-top: 0; } }

.p-corp-layout__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -ms-grid;
  display: grid;
  position: relative;
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-layout__inner {
      -ms-grid-rows: auto 0 auto 0 auto 0 1fr;
      -ms-grid-columns: 100%;
          grid-template: 'pCorpLayoutHead' auto 'pCorpLayoutImg' auto 'pCorpLayoutDesc' auto 'pCorpLayoutButton' 1fr / 100%;
      gap: 0; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-layout__inner {
      -ms-grid-rows: auto 0 auto 0 1fr;
      -ms-grid-columns: 45% 5% 50%;
          grid-template: 'pCorpLayoutHead pCorpLayoutImg' auto 'pCorpLayoutDesc pCorpLayoutImg' auto 'pCorpLayoutButton pCorpLayoutImg' 1fr / 45% 50%;
      gap: 0 5%;
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto; } }
  @media print, screen and (min-width: 64em) {
    .p-corp-layout__inner {
      -ms-grid-rows: auto 0 auto 0 1fr;
      -ms-grid-columns: 40% 10% 50%;
          grid-template: 'pCorpLayoutHead pCorpLayoutImg' auto 'pCorpLayoutDesc pCorpLayoutImg' auto 'pCorpLayoutButton pCorpLayoutImg' 1fr / 40% 50%;
      gap: 0 10%; } }

.p-corp-layout__img {
  grid-area: pCorpLayoutImg;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-layout__img {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-layout__img {
      position: relative; } }
  .p-corp-layout__img img {
    display: block; }
    @media only screen and (max-width: 47.9375em) {
      .p-corp-layout__img img {
        max-width: 270px; } }
    @media print, screen and (min-width: 48em) {
      .p-corp-layout__img img {
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%);
        max-width: 100%; } }

.p-corp-layout__head {
  grid-area: pCorpLayoutHead; }

.p-corp-layout__desc {
  grid-area: pCorpLayoutDesc; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-layout__desc {
      margin-top: 35px; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-layout__desc {
      margin-top: 36px; } }
  @media print, screen and (min-width: 64em) {
    .p-corp-layout__desc {
      font-size: 18px;
      font-size: 1.125rem; } }

.p-corp-layout__button {
  grid-area: pCorpLayoutButton; }

@media only screen and (max-width: 47.9375em){
    .p-corp-layout__img {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .p-corp-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-corp-layout__desc {
    -ms-grid-row: 5;
    -ms-grid-column: 1; }
    .p-corp-layout__button {
    -ms-grid-row: 7;
    -ms-grid-column: 1; } }

@media print, screen and (min-width: 48em){
    .p-corp-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 5;
    -ms-grid-column: 3; }
    .p-corp-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-corp-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .p-corp-layout__button {
    -ms-grid-row: 5;
    -ms-grid-column: 1; } }

@media print, screen and (min-width: 64em){
    .p-corp-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 5;
    -ms-grid-column: 3; }
    .p-corp-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-corp-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .p-corp-layout__button {
    -ms-grid-row: 5;
    -ms-grid-column: 1; } }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-layout__button {
      width: 100%;
      max-width: 255px;
      margin-top: 40px;
      margin-right: auto;
      margin-left: auto; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-layout__button {
      margin-top: 45px; } }

.p-corp-layout__bg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }
  @media print, screen and (min-width: 48em) {
    .p-corp-layout__bg {
      max-width: 1200px;
      margin: 0 auto; } }

.p-corp-layout__fluffy {
  position: absolute;
  z-index: -1; }

/* 画像の余白
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .p-corp-layout__img.-circuitx img {
    margin-left: 40px; } }

@media print, screen and (min-width: 64em) {
  .p-corp-layout__img.-about img {
    margin-right: 76px; } }

@media print, screen and (min-width: 64em) {
  .p-corp-layout__img.-recruit img {
    margin-left: 0; } }

/* リバース1
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .p-corp-layout.-reverse .p-corp-layout__inner {
    -ms-grid-rows: auto 0 auto 0 1fr;
    -ms-grid-columns: 50% 5% 45%;
        grid-template: 'pCorpLayoutImg pCorpLayoutHead' auto 'pCorpLayoutImg pCorpLayoutDesc' auto 'pCorpLayoutImg pCorpLayoutButton' 1fr / 50% 45%;
    gap: 0 5%; }
  .p-corp-layout.-reverse .p-corp-layout__inner > .p-corp-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 5;
    -ms-grid-column: 1; }
  .p-corp-layout.-reverse .p-corp-layout__inner > .p-corp-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .p-corp-layout.-reverse .p-corp-layout__inner > .p-corp-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3; }
  .p-corp-layout.-reverse .p-corp-layout__inner > .p-corp-layout__button {
    -ms-grid-row: 5;
    -ms-grid-column: 3; } }

@media print, screen and (min-width: 64em) {
  .p-corp-layout.-reverse .p-corp-layout__inner {
    -ms-grid-rows: auto 0 auto 0 1fr;
    -ms-grid-columns: 1fr 0 40%;
        grid-template: 'pCorpLayoutImg pCorpLayoutHead' auto 'pCorpLayoutImg pCorpLayoutDesc' auto 'pCorpLayoutImg pCorpLayoutButton' 1fr / 1fr 40%;
    gap: 0; }
  .p-corp-layout.-reverse .p-corp-layout__inner > .p-corp-layout__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 5;
    -ms-grid-column: 1; }
  .p-corp-layout.-reverse .p-corp-layout__inner > .p-corp-layout__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
  .p-corp-layout.-reverse .p-corp-layout__inner > .p-corp-layout__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3; }
  .p-corp-layout.-reverse .p-corp-layout__inner > .p-corp-layout__button {
    -ms-grid-row: 5;
    -ms-grid-column: 3; } }

/* 種別ごと
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .p-corp-layout.-corp_about {
    margin-top: 152px; } }

@media print, screen and (min-width: 75em) {
  .p-corp-layout.-corp_about {
    margin-top: 252px; } }

@media only screen and (max-width: 47.9375em) {
  .p-corp-layout.-corp_about .p-corp-layout__fluffy {
    top: -11vw;
    right: -16.53vw;
    width: 58.67vw; } }

@media print, screen and (min-width: 48em) {
  .p-corp-layout.-corp_about .p-corp-layout__fluffy {
    top: -66.5%;
    right: -9vw;
    width: 30.94vw;
    max-width: 433.1px; } }

@media print, screen and (min-width: 64em) {
  .p-corp-layout.-corp_recruit {
    margin-top: 145px; } }

@media print, screen and (min-width: 75em) {
  .p-corp-layout.-corp_recruit {
    margin-top: 245px; } }

@media only screen and (max-width: 47.9375em) {
  .p-corp-layout.-corp_recruit .p-corp-layout__fluffy {
    top: -11vw;
    left: -16.53vw;
    width: 58.67vw; } }

@media print, screen and (min-width: 48em) {
  .p-corp-layout.-corp_recruit .p-corp-layout__fluffy {
    top: -88%;
    left: -35.8%;
    width: 42.9vw;
    max-width: 600.6px; } }

/* リバース2
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .p-corp-layout.-right_content .p-corp-layout__inner {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; } }

.p-corp-layout-2 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-layout-2 {
      margin-top: 80px; } }

.p-corp-layout-2__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 100%; }
  @media print, screen and (min-width: 48em) {
    .p-corp-layout-2__inner {
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto;
      padding-top: 163px; } }
  @media print, screen and (min-width: 75em) {
    .p-corp-layout-2__inner {
      padding-top: 212px; } }

.p-corp-layout-2__bg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }
  @media print, screen and (min-width: 48em) {
    .p-corp-layout-2__bg {
      max-width: 1200px;
      margin: 0 auto; } }

.p-corp-layout-2__fluffy {
  position: absolute;
  z-index: -1; }

@media only screen and (max-width: 47.9375em) {
  .p-corp-layout-2.-corp_blog .p-corp-layout-2__bg .p-corp-layout-2__fluffy {
    top: -11vw;
    right: -16.53vw;
    width: 58.67vw; } }

@media print, screen and (min-width: 48em) {
  .p-corp-layout-2.-corp_blog .p-corp-layout-2__bg .p-corp-layout-2__fluffy {
    top: -0.3%;
    right: -34.8%;
    width: 42.9vw;
    max-width: 600.6px; } }

.p-corp-layout-2.-corp_blog .p-corp-layout-2__bg:after {
  display: block;
  position: absolute;
  z-index: -2;
  background: -webkit-radial-gradient(ellipse closest-side, #00a0e9 0%, #fff 100%);
  background: radial-gradient(ellipse closest-side, #00a0e9 0%, #fff 100%);
  opacity: 0.07;
  content: ''; }
  @media only screen and (max-width: 47.9375em) {
    .p-corp-layout-2.-corp_blog .p-corp-layout-2__bg:after {
      bottom: -1.5%;
      left: -65%;
      width: 176.26vw;
      height: 100%; } }
  @media print, screen and (min-width: 48em) {
    .p-corp-layout-2.-corp_blog .p-corp-layout-2__bg:after {
      bottom: -9.3%;
      left: -21.7%;
      width: 78.86vw;
      max-width: 1104px;
      height: 69.65vw;
      max-height: 975px; } }

.p-home-layout {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }

.p-home-layout__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 100%; }
  @media print, screen and (min-width: 48em) {
    .p-home-layout__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout__content {
    width: 40%;
    max-width: 480px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout__desc {
    margin-top: 35px; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout__desc {
    margin-top: 52px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout__bottom {
    margin-top: 40px; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout__bottom {
    margin-top: 57px; } }

.p-home-layout__bg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }
  @media print, screen and (min-width: 48em) {
    .p-home-layout__bg {
      max-width: 1200px;
      margin: 0 auto; } }

.p-home-layout__illust {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  max-width: 1200px;
  margin: 0 auto; }
  .p-home-layout__illust img {
    display: block;
    position: absolute;
    width: 100%; }

/* リバース
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .p-home-layout.-right_content .p-home-layout__inner {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; } }

/* フクロウラボを知る
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-culture {
    margin-top: 82px; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout.-culture {
    margin-top: 123px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-culture .p-home-layout__illust:first-child img {
    top: -9%;
    right: -26.67%;
    width: 79.73vw;
    max-width: 399px; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout.-culture .p-home-layout__illust:first-child img {
    top: -20%;
    left: -22px;
    width: 47vw;
    max-width: 658px; } }

@media print, screen and (min-width: 75em) {
  .p-home-layout.-culture .p-home-layout__illust:first-child img {
    top: -38.5%; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-culture .p-home-layout__illust:nth-child(2) img {
    bottom: -14.5%;
    left: 0;
    width: 70.4vw;
    max-width: 364px; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout.-culture .p-home-layout__illust:nth-child(2) img {
    bottom: .5%;
    left: -100px;
    width: 67vw;
    max-width: 938px; } }

@media print, screen and (min-width: 64em) {
  .p-home-layout.-culture .p-home-layout__illust:nth-child(2) img {
    bottom: 8%;
    left: -200px; } }

@media print, screen and (min-width: 75em) {
  .p-home-layout.-culture .p-home-layout__illust:nth-child(2) img {
    bottom: -10.5%;
    left: -373px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-culture .p-home-layout__illust:nth-child(3) {
    display: none; } }

.p-home-layout.-culture .p-home-layout__illust:nth-child(3) img {
  top: auto;
  left: auto;
  right: 38%;
  width: 7.21vw;
  max-width: 101px; }
  @media print, screen and (min-width: 48em) {
    .p-home-layout.-culture .p-home-layout__illust:nth-child(3) img {
      bottom: 22%; } }
  @media print, screen and (min-width: 64em) {
    .p-home-layout.-culture .p-home-layout__illust:nth-child(3) img {
      bottom: 6%; } }

.p-home-layout.-culture .p-home-layout__fluffy {
  display: block;
  position: absolute; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout.-culture .p-home-layout__fluffy {
      top: -18.7%;
      left: -22.13vw;
      width: 79.2vw; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout.-culture .p-home-layout__fluffy {
      top: -50%;
      left: -10.6%;
      width: 37.6vw;
      max-width: 526.4px; } }

.p-home-layout.-culture .p-home-layout__bg {
  z-index: -10; }
  .p-home-layout.-culture .p-home-layout__bg:after {
    display: block;
    position: absolute;
    z-index: -2;
    background: -webkit-radial-gradient(ellipse closest-side, #00a0e9 0%, #fff 100%);
    background: radial-gradient(ellipse closest-side, #00a0e9 0%, #fff 100%);
    opacity: 0.07;
    content: ''; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout.-culture .p-home-layout__bg:after {
      bottom: -1.5%;
      left: -65%;
      width: 176.26vw;
      height: 86.93vw; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout.-culture .p-home-layout__bg:after {
      bottom: -17%;
      left: -36.5%;
      width: 125.43vw;
      max-width: 1756px;
      height: 48.85vw;
      max-height: 684px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-culture .p-home-layout__inner {
    padding-top: 75vw; } }

.p-home-layout.-culture .p-home-layout__img {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  z-index: -1;
  top: 0; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout.-culture .p-home-layout__img {
      left: 0%;
      width: 100%; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout.-culture .p-home-layout__img {
      top: 6.9%;
      left: -2vw;
      width: 47.21vw;
      max-width: 660.94px;
      padding-right: 50px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-culture .p-home-layout__content {
    margin-top: 30px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-culture .p-home-layout__clipped-image.-sp {
    width: 184vw;
    height: auto; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout.-culture .p-home-layout__clipped-image.-sp {
    display: none; } }

.p-home-layout.-culture .p-home-layout__clipped-image.-sp image {
  -webkit-clip-path: url(#clip-about-sp);
          clip-path: url(#clip-about-sp); }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-culture .p-home-layout__clipped-image.-pc {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout.-culture .p-home-layout__clipped-image.-pc {
    width: 200%;
    height: auto; } }

.p-home-layout.-culture .p-home-layout__clipped-image.-pc image {
  -webkit-clip-path: url(#clip-about-pc);
          clip-path: url(#clip-about-pc); }

/* 選考を知る
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-selection {
    margin-top: 80px; } }

.p-home-layout.-selection .p-home-layout__illust:first-child {
  z-index: 0; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout.-selection .p-home-layout__illust:first-child img {
      top: -15%;
      right: 0;
      width: 36.47%; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout.-selection .p-home-layout__illust:first-child img {
      top: -83%;
      right: -200px;
      width: 61vw;
      max-width: 854px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-layout.-selection .p-home-layout__illust:first-child img {
      top: -80%;
      right: -200px; } }
  @media print, screen and (min-width: 75em) {
    .p-home-layout.-selection .p-home-layout__illust:first-child img {
      top: -112%;
      right: -516px; } }

.p-home-layout.-selection .p-home-layout__illust:nth-child(2) {
  z-index: 0; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout.-selection .p-home-layout__illust:nth-child(2) img {
      top: -2%;
      left: 4%;
      width: 19.73vw; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout.-selection .p-home-layout__illust:nth-child(2) img {
      top: 0%;
      left: 39.3%;
      width: 11.6vw;
      max-width: 162.5px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-selection .p-home-layout__inner {
    padding-top: 86vw; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout.-selection .p-home-layout__inner {
    margin-top: 44px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-selection .p-home-layout__content {
    margin-top: 32px; } }

.p-home-layout.-selection .p-home-layout__img {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  z-index: -1;
  top: 0; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout.-selection .p-home-layout__img {
      left: 0%;
      width: 100%; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout.-selection .p-home-layout__img {
      top: -5.5%;
      right: 0vw;
      width: 46.9vw;
      max-width: 656.542px;
      padding-right: 50px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-selection .p-home-layout__clipped-image.-sp {
    width: 184vw;
    height: auto; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout.-selection .p-home-layout__clipped-image.-sp {
    display: none; } }

.p-home-layout.-selection .p-home-layout__clipped-image.-sp image {
  -webkit-clip-path: url(#clip-selection-sp);
          clip-path: url(#clip-selection-sp); }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-selection .p-home-layout__clipped-image.-pc {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout.-selection .p-home-layout__clipped-image.-pc {
    width: 200%;
    height: auto; } }

.p-home-layout.-selection .p-home-layout__clipped-image.-pc image {
  -webkit-clip-path: url(#clip-selection-pc);
          clip-path: url(#clip-selection-pc); }

/* 募集要項
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-requirement {
    margin-top: 74px; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout.-requirement {
    margin-top: 300px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout.-requirement .p-home-layout__illust:first-child img {
    top: -11.8%;
    right: 4%;
    width: 44.53vw; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout.-requirement .p-home-layout__illust:first-child img {
    top: -17%;
    left: 23.8%;
    width: 25.6vw;
    max-width: 358.5px; } }

.p-home-layout.-requirement .p-home-layout__fluffy {
  display: block;
  position: absolute; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout.-requirement .p-home-layout__fluffy.-large {
      top: 4.5%;
      right: -4%;
      width: 37.87vw; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout.-requirement .p-home-layout__fluffy.-large {
      top: -17.1%;
      left: -11%;
      width: 55vw; } }
  @media print, screen and (min-width: 75em) {
    .p-home-layout.-requirement .p-home-layout__fluffy.-large {
      width: 42.74vw;
      max-width: 598.3px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout.-requirement .p-home-layout__fluffy.-small {
      top: -13.2%;
      left: -10.5%;
      width: 21.6vw; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout.-requirement .p-home-layout__fluffy.-small {
      top: 18.2%;
      left: 50%;
      width: 16vw; } }
  @media print, screen and (min-width: 75em) {
    .p-home-layout.-requirement .p-home-layout__fluffy.-small {
      left: 42.2%;
      width: 12.14vw;
      max-width: 170px; } }

.p-home-layout-2 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-2 {
      padding-top: 83px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-2 {
      padding-top: 200px; } }

.p-home-layout-2__illust {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  max-width: 1200px;
  margin: 0 auto; }
  .p-home-layout-2__illust img {
    display: block;
    position: absolute;
    width: 100%; }

.p-home-layout-2__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -ms-grid;
  display: grid;
  position: relative;
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-2__inner {
      -ms-grid-rows: auto auto auto 1fr;
      -ms-grid-columns: 100%;
          grid-template: 'pHomeLayout2Head' auto 'pHomeLayout2Content' auto 'pHomeLayout2Bottom' auto 'pHomeLayout2Button' 1fr / 100%; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-2__inner {
      -ms-grid-rows: auto auto auto 1fr;
      -ms-grid-columns: 100%;
          grid-template: 'pHomeLayout2Head' auto 'pHomeLayout2Button' auto 'pHomeLayout2Content' auto 'pHomeLayout2Bottom' 1fr / 100%;
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto;
      background-repeat: no-repeat; } }

.p-home-layout-2__head {
  grid-area: pHomeLayout2Head; }

.p-home-layout-2__content {
  grid-area: pHomeLayout2Content; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-2__content {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-2__content {
      margin-top: 35px; } }

.p-home-layout-2__button {
  grid-area: pHomeLayout2Button; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-2__button {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-top: 40px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-2__button {
      margin-top: 32px; } }

.p-home-layout-2__bottom {
  grid-area: pHomeLayout2Bottom; }

@media only screen and (max-width: 47.9375em){
    .p-home-layout-2__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-home-layout-2__content {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
    .p-home-layout-2__button {
    -ms-grid-row: 4;
    -ms-grid-column: 1; }
    .p-home-layout-2__bottom {
    -ms-grid-row: 3;
    -ms-grid-column: 1; } }

@media print, screen and (min-width: 48em){
    .p-home-layout-2__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-home-layout-2__content {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .p-home-layout-2__button {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
    .p-home-layout-2__bottom {
    -ms-grid-row: 4;
    -ms-grid-column: 1; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-2__bottom {
      margin-top: 40px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-2__bottom {
      margin-top: 63px; } }

.p-home-layout-2__bg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-2__bg {
      max-width: 1200px;
      margin: 0 auto; } }
  .p-home-layout-2__bg picture {
    display: block;
    position: absolute; }
  .p-home-layout-2__bg img {
    display: block; }

/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .p-home-layout-2.-person {
    padding-top: 213px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout-2.-person .p-home-layout-2__illust:first-child img {
    top: 0%;
    right: 0;
    width: 78.13vw;
    max-width: 293px; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout-2.-person .p-home-layout-2__illust:first-child img {
    top: 5.3%;
    right: -100px;
    width: 57.7vw;
    max-width: 808px; } }

@media print, screen and (min-width: 64em) {
  .p-home-layout-2.-person .p-home-layout-2__illust:first-child img {
    right: -198px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout-2.-person .p-home-layout-2__illust:nth-child(2) img {
    bottom: -13.2%;
    right: 0%;
    width: 71.47vw;
    max-width: 268px; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout-2.-person .p-home-layout-2__illust:nth-child(2) img {
    bottom: 60px;
    right: -100px;
    width: 61.2vw;
    max-width: 857px; } }

@media print, screen and (min-width: 64em) {
  .p-home-layout-2.-person .p-home-layout-2__illust:nth-child(2) img {
    bottom: 26px;
    right: -288px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout-2.-person .p-home-layout-2__fluffy {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout-2.-person .p-home-layout-2__fluffy {
    position: absolute;
    display: block; } }

.p-home-layout-2.-person .p-home-layout-2__fluffy.-large {
  top: 6.5%;
  left: -21.6%;
  width: 49.17vw;
  max-width: 688.4px; }

.p-home-layout-2.-person .p-home-layout-2__fluffy.-small {
  top: 8.7%;
  right: -10.5%;
  width: 17.16vw;
  max-width: 240.3px; }

.p-home-layout-2.-person .p-home-layout-2__bg:before, .p-home-layout-2.-person .p-home-layout-2__bg:after {
  display: block;
  position: absolute;
  z-index: -2;
  background: -webkit-radial-gradient(ellipse closest-side, #00a0e9 0%, #fff 100%);
  background: radial-gradient(ellipse closest-side, #00a0e9 0%, #fff 100%);
  opacity: 0.07;
  content: ''; }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout-2.-person .p-home-layout-2__bg:before {
    bottom: 41%;
    left: 49.6%;
    width: 176.26vw;
    height: 86.93vw; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout-2.-person .p-home-layout-2__bg:before {
    display: none; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout-2.-person .p-home-layout-2__bg:after {
    bottom: -6%;
    right: -12%;
    width: 176.26vw;
    height: 86.93vw; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout-2.-person .p-home-layout-2__bg:after {
    bottom: -26%;
    left: -71.5%;
    width: 125.43vw;
    max-width: 1756px;
    height: 48.85vw;
    max-height: 684px; } }

.p-home-layout-3 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-3 {
      padding-top: 72px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-3 {
      padding-top: 148px; } }

.p-home-layout-3__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -ms-grid;
  display: grid;
  position: relative;
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-3__inner {
      -ms-grid-rows: auto 1fr;
      -ms-grid-columns: 100%;
          grid-template: 'pHomeLayout3Head' auto 'pHomeLayout3Content' 1fr / 100%; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-3__inner {
      -ms-grid-rows: auto 1fr;
      -ms-grid-columns: 100%;
          grid-template: 'pHomeLayout3Head' auto 'pHomeLayout3Content' 1fr / 100%;
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto;
      background-repeat: no-repeat; } }

.p-home-layout-3__head {
  grid-area: pHomeLayout3Head; }

.p-home-layout-3__content {
  grid-area: pHomeLayout3Content; }

@media only screen and (max-width: 47.9375em){
    .p-home-layout-3__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-home-layout-3__content {
    -ms-grid-row: 2;
    -ms-grid-column: 1; } }

@media print, screen and (min-width: 48em){
    .p-home-layout-3__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-home-layout-3__content {
    -ms-grid-row: 2;
    -ms-grid-column: 1; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-3__content {
      margin-top: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-3__content {
      margin-top: 63px; } }

.p-home-layout-3__bottom {
  grid-area: pHomeLayout3Bottom; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-3__bottom {
      margin-top: 37px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-3__bottom {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-top: 57px; } }

.p-home-layout-3__bg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0); }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-3__bg {
      max-width: 1200px;
      margin: 0 auto; } }
  .p-home-layout-3__bg picture {
    display: block;
    position: absolute;
    width: 100%; }
  .p-home-layout-3__bg img {
    display: block;
    width: 100%; }

/* モディファイア
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .p-home-layout-3 .p-home-layout-3__bg picture:first-child {
    top: -0.2%;
    left: 52%;
    width: 68vw; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout-3 .p-home-layout-3__bg picture:first-child {
    top: -2.5%;
    right: -22.5%;
    width: 31.04vw;
    max-width: 515px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout-3 .p-home-layout-3__bg picture:last-child {
    top: -1.8%;
    left: 48%;
    width: 74vw; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout-3 .p-home-layout-3__bg picture:last-child {
    top: -7.7%;
    right: -24%;
    width: 31.04vw;
    max-width: 561px; } }

.p-home-layout-3 .p-home-layout-3__bg:after {
  display: block;
  position: absolute;
  z-index: -2;
  background: -webkit-radial-gradient(ellipse closest-side, #00a0e9 0%, #fff 100%);
  background: radial-gradient(ellipse closest-side, #00a0e9 0%, #fff 100%);
  opacity: 0.07;
  content: ''; }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout-3 .p-home-layout-3__bg:after {
    bottom: -1.5%;
    left: -65%;
    width: 176.26vw;
    height: 86.93vw; } }

@media print, screen and (min-width: 48em) {
  .p-home-layout-3 .p-home-layout-3__bg:after {
    bottom: -17%;
    left: -36.5%;
    width: 125.43vw;
    max-width: 1756px;
    height: 48.85vw;
    max-height: 684px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-layout-3.-work {
    padding-top: 135px; } }

.p-home-layout-3.-work .p-home-layout-3__fluffy {
  display: block;
  position: absolute;
  top: 8.8%; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-3.-work .p-home-layout-3__fluffy {
      top: 3vw;
      right: -16.53vw;
      width: 58.67vw; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-3.-work .p-home-layout-3__fluffy {
      right: -10.3%;
      width: 31.64vw;
      max-width: 442.7px; } }
  @media print, screen and (min-width: 87.5em) {
    .p-home-layout-3.-work .p-home-layout-3__fluffy {
      right: -19.3%; } }

.p-home-layout-4 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-4 {
      margin-top: 32px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-4 {
      margin-top: 64px; } }

.p-home-layout-4__illust {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  max-width: 1200px;
  margin: 0 auto; }
  .p-home-layout-4__illust img {
    display: block;
    position: absolute;
    width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-4__illust:first-child img {
      top: -19.3%;
      left: -5.067%;
      width: 64vw;
      max-width: 240px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-4__illust:first-child img {
      top: -17.2%;
      left: -100px;
      width: 44.4vw;
      max-width: 622px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-layout-4__illust:first-child img {
      left: -218px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-4__illust:nth-child(2) {
      display: none; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-4__illust:nth-child(2) img {
      top: 19%;
      right: 46px;
      width: 4.9vw;
      max-width: 68.5px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-4__illust:nth-child(3) {
      z-index: 1; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-4__illust:nth-child(3) {
      display: none; } }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-4__illust:nth-child(3) img {
      top: 54.2%;
      right: 15%;
      width: 17.07vw;
      max-width: 68.5px; } }

.p-home-layout-4__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-layout-4__inner {
      padding-top: 40px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-layout-4__inner {
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto;
      padding-top: 80px;
      padding-bottom: 100px; } }

.p-home-fluffy {
  position: relative;
  z-index: 10; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-fluffy {
      margin-top: 36px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-fluffy {
      margin-top: 55px; } }

@media only screen and (min-width: 37.4375em) {
  .p-home-fluffy__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around; } }

.p-home-fluffy__item {
  width: 100%;
  -webkit-transform: translate(0, -5px);
          transform: translate(0, -5px);
  opacity: 0;
  -webkit-transition: opacity linear 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity linear 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity linear 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity linear 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s; }
  @media only screen and (min-width: 37.4375em) {
    .p-home-fluffy__item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      width: 50%; } }
  @media print {
    .p-home-fluffy__item {
      opacity: 1 !important;
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  .p-home-fluffy__item.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important; }

.p-home-fluffy__bg {
  -webkit-transition: -webkit-filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: -webkit-filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }

.p-home-fluffy__base {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  width: 82.61%; }
  @media only screen and (min-width: 37.4375em) {
    .p-home-fluffy__base {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .p-home-fluffy__base svg {
      -webkit-transition: -webkit-filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
      transition: -webkit-filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
      transition: filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
      transition: filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-filter cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; } }
  .p-home-fluffy__base svg:nth-child(2) {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: auto; }
  .p-home-fluffy__base clippath {
    -webkit-transform: skewY(5deg);
            transform: skewY(5deg);
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s; }
    .p-home-fluffy__item.-visible .p-home-fluffy__base clippath {
      -webkit-transform: skewY(0);
              transform: skewY(0); }
  @media print, screen and (min-width: 64em) {
    .p-home-fluffy__base:hover svg {
      -webkit-transform: scale(1.025, 1.025);
              transform: scale(1.025, 1.025);
      -webkit-filter: drop-shadow(0 3px 20px rgba(39, 115, 174, 0.16));
              filter: drop-shadow(0 3px 20px rgba(39, 115, 174, 0.16)); } }
  @media print, screen and (min-width: 64em) {
    .p-home-fluffy__base:hover .p-home-fluffy__bg {
      -webkit-filter: drop-shadow(0 3px 30px #a5c6ff);
              filter: drop-shadow(0 3px 30px #a5c6ff); } }
  @media print, screen and (min-width: 64em) {
    .p-home-fluffy__base:hover .p-home-fluffy__bg:after {
      opacity: 0; } }

.p-home-fluffy__bg {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute; }
  .p-home-fluffy__bg span {
    position: absolute;
    z-index: 30;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 100%;
    font-weight: bold;
    color: #003953;
    text-align: center; }
    @media only screen and (min-width: 37.4375em) {
      .p-home-fluffy__bg span {
        font-size: 14px;
        font-size: 0.875rem; } }
    @media print, screen and (min-width: 48em) {
      .p-home-fluffy__bg span {
        font-size: 16px;
        font-size: 1rem; } }
    .p-home-fluffy__bg span:after {
      display: block;
      width: 12px;
      height: 9px;
      margin-top: 8px;
      margin-right: auto;
      margin-left: auto;
      background-repeat: no-repeat;
      background-position: 50% 50%;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2011.485%208.485%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M-494-267v-2h4v-4h2v6Z%22%20transform%3D%22translate%28545.351%20-152.028%29%20rotate%28-45%29%22%20fill%3D%22%23003953%22%2F%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M4%2C0H14V2H4Z%22%20transform%3D%22translate%28-4%203.2%29%22%20fill%3D%22%23003953%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E");
      content: ''; }
  .p-home-fluffy__bg:after {
    display: block;
    position: relative;
    z-index: 20;
    width: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    -webkit-transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: opacity cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    content: ''; }

@media only screen and (min-width: 37.4375em) {
  .p-home-fluffy__item:first-child {
    max-width: 491px; } }

.p-home-fluffy__item:first-child .p-home-fluffy__base {
  padding-top: 88%; }
  .p-home-fluffy__item:first-child .p-home-fluffy__base > svg image {
    -webkit-clip-path: url(#clip01);
            clip-path: url(#clip01); }

.p-home-fluffy__item:first-child .p-home-fluffy__bg {
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 100% auto;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20178%20165.5%22%3E\a%20%20%20%20%20%20%3ClinearGradient%20id%3D%22a%22%20gradientUnits%3D%22userSpaceOnUse%22%20x1%3D%22-207.536%22%20y1%3D%22504.219%22%20x2%3D%22-207.536%22%20y2%3D%22503.219%22%20gradientTransform%3D%22matrix%2814.6359%20-167.2887%20-176.5963%20-15.4502%2092082.852%20-26850.896%29%22%3E\a%20%20%20%20%20%20%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23a2b5ff%22%2F%3E\a%20%20%20%20%20%20%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23b5e8ff%22%2F%3E\a%20%20%20%20%20%20%3C%2FlinearGradient%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M30.2%2045.4c10.7-15.3%2018.7-32.6%2031-40.3%2012.3-7.7%2028.9-5.8%2043.2.4%2014.3%206.2%2026.2%2016.6%2038.6%2028.4%2012.4%2011.8%2025.3%2025%2031.2%2042.2%206%2017.2%205.1%2038.5-5%2051.7S140%20145.9%20125%20148.3c-15%202.3-25.8%201.9-38.1%205.9-12.3%203.9-26.1%2012.2-39.9%2011.4-13.8-.7-27.6-10.4-36.6-25-9-14.5-13.2-33.9-8.8-50.2%204.7-16.5%2018-29.7%2028.6-45z%22%20fill%3D%22url%28%23a%29%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E");
  bottom: -5px;
  right: -21%;
  width: 51.93%; }
  @media only screen and (min-width: 37.4375em) {
    .p-home-fluffy__item:first-child .p-home-fluffy__bg {
      bottom: 7px;
      right: 11px;
      width: 40%; } }
  @media print, screen and (min-width: 48em) {
    .p-home-fluffy__item:first-child .p-home-fluffy__bg {
      width: 148px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-fluffy__item:first-child .p-home-fluffy__bg {
      width: 178px; } }
  .p-home-fluffy__item:first-child .p-home-fluffy__bg span {
    margin-top: 8px; }
  .p-home-fluffy__item:first-child .p-home-fluffy__bg:after {
    padding-top: 93.26%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 100% auto;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20178%20165.5%22%3E\a%20%20%20%20%20%20%3ClinearGradient%20id%3D%22a%22%20gradientUnits%3D%22userSpaceOnUse%22%20x1%3D%22-207.536%22%20y1%3D%22504.219%22%20x2%3D%22-207.536%22%20y2%3D%22503.219%22%20gradientTransform%3D%22matrix%2814.6359%20-167.2887%20-176.5963%20-15.4502%2092082.852%20-26850.896%29%22%3E\a%20%20%20%20%20%20%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23b5e8ff%22%2F%3E\a%20%20%20%20%20%20%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23a2b5ff%22%2F%3E\a%20%20%20%20%20%20%3C%2FlinearGradient%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M30.2%2045.4c10.7-15.3%2018.7-32.6%2031-40.3%2012.3-7.7%2028.9-5.8%2043.2.4%2014.3%206.2%2026.2%2016.6%2038.6%2028.4%2012.4%2011.8%2025.3%2025%2031.2%2042.2%206%2017.2%205.1%2038.5-5%2051.7S140%20145.9%20125%20148.3c-15%202.3-25.8%201.9-38.1%205.9-12.3%203.9-26.1%2012.2-39.9%2011.4-13.8-.7-27.6-10.4-36.6-25-9-14.5-13.2-33.9-8.8-50.2%204.7-16.5%2018-29.7%2028.6-45z%22%20fill%3D%22url%28%23a%29%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E"); }

.p-home-fluffy__item:last-child {
  margin-top: 45px; }
  @media only screen and (min-width: 37.4375em) {
    .p-home-fluffy__item:last-child {
      margin-top: 0;
      margin-left: 42px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-fluffy__item:last-child {
      max-width: 508px; } }
  .p-home-fluffy__item:last-child .p-home-fluffy__base {
    padding-top: 95%; }
    .p-home-fluffy__item:last-child .p-home-fluffy__base > svg image {
      -webkit-clip-path: url(#clip-img-area-career);
              clip-path: url(#clip-img-area-career); }
  .p-home-fluffy__item:last-child .p-home-fluffy__bg {
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 100% auto;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20164.6%20171.4%22%3E\a%20%20%20%20%20%20%3ClinearGradient%20id%3D%22a%22%20gradientUnits%3D%22userSpaceOnUse%22%20x1%3D%22-9.601%22%20y1%3D%22178.495%22%20x2%3D%22-9.601%22%20y2%3D%22179.495%22%20gradientTransform%3D%22matrix%28-112.3629%20124.7916%20131.737%20118.6165%20-24580.057%20-19936.174%29%22%3E\a%20%20%20%20%20%20%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23a2b5ff%22%2F%3E\a%20%20%20%20%20%20%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23b5e8ff%22%2F%3E\a%20%20%20%20%20%20%3C%2FlinearGradient%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M9%2080.5C5%2098.7-2.2%20116.4.6%20130.6c2.8%2014.3%2015.4%2025.1%2029.7%2031.3%2014.2%206.2%2030%207.8%2047.2%208.9%2017.1%201%2035.5%201.4%2052.2-5.9%2016.7-7.4%2031.6-22.6%2034.4-38.9%202.8-16.3-6.7-33.8-15.2-46.3-8.6-12.5-16.2-20.2-21.7-31.9s-8.9-27.3-18.9-36.9c-9.9-9.6-26.4-13-43.2-9.7-16.8%203.4-33.9%2013.5-42.7%2027.9C13.5%2043.5%2012.9%2062.2%209%2080.5z%22%20fill%3D%22url%28%23a%29%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E");
    bottom: -20px;
    right: -21%;
    width: 53.33%; }
    @media only screen and (min-width: 37.4375em) {
      .p-home-fluffy__item:last-child .p-home-fluffy__bg {
        bottom: 10px;
        right: 11px;
        width: 40%; } }
    @media print, screen and (min-width: 48em) {
      .p-home-fluffy__item:last-child .p-home-fluffy__bg {
        width: 135px; } }
    @media print, screen and (min-width: 64em) {
      .p-home-fluffy__item:last-child .p-home-fluffy__bg {
        width: 165px; } }
    .p-home-fluffy__item:last-child .p-home-fluffy__bg span {
      margin-top: 12px; }
    .p-home-fluffy__item:last-child .p-home-fluffy__bg:after {
      padding-top: 104%;
      background-repeat: no-repeat;
      background-position: 50% 50%;
      background-size: 100% auto;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20164.6%20171.4%22%3E\a%20%20%20%20%20%20%3ClinearGradient%20id%3D%22a%22%20gradientUnits%3D%22userSpaceOnUse%22%20x1%3D%22-9.601%22%20y1%3D%22178.495%22%20x2%3D%22-9.601%22%20y2%3D%22179.495%22%20gradientTransform%3D%22matrix%28-112.3629%20124.7916%20131.737%20118.6165%20-24580.057%20-19936.174%29%22%3E\a%20%20%20%20%20%20%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23b5e8ff%22%2F%3E\a%20%20%20%20%20%20%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23a2b5ff%22%2F%3E\a%20%20%20%20%20%20%3C%2FlinearGradient%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M9%2080.5C5%2098.7-2.2%20116.4.6%20130.6c2.8%2014.3%2015.4%2025.1%2029.7%2031.3%2014.2%206.2%2030%207.8%2047.2%208.9%2017.1%201%2035.5%201.4%2052.2-5.9%2016.7-7.4%2031.6-22.6%2034.4-38.9%202.8-16.3-6.7-33.8-15.2-46.3-8.6-12.5-16.2-20.2-21.7-31.9s-8.9-27.3-18.9-36.9c-9.9-9.6-26.4-13-43.2-9.7-16.8%203.4-33.9%2013.5-42.7%2027.9C13.5%2043.5%2012.9%2062.2%209%2080.5z%22%20fill%3D%22url%28%23a%29%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E"); }

.p-home-fluffy__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-fluffy__button {
      margin-top: 52px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-fluffy__button {
      margin-top: 33px; } }

.p-employee-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-max3 {
      margin-top: -50px;
      margin-left: -40px; } }
  @media print, screen and (min-width: 64em) {
    .p-employee-list.-max3 {
      margin-left: -90px; } }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-max3 .p-employee {
      width: calc(33.33% - 40px);
      max-width: 340px;
      margin-top: 50px;
      margin-left: 40px; } }
  @media print, screen and (min-width: 64em) {
    .p-employee-list.-max3 .p-employee {
      width: calc(33.3333% - 90px);
      margin-left: 90px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-employee-list.-max3 .p-employee:first-child {
      margin-top: 0; } }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-max4 {
      margin-top: -50px;
      margin-left: -40px; } }
  @media print, screen and (min-width: 64em) {
    .p-employee-list.-max4 {
      margin-left: -60px; } }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-max4 .p-employee {
      width: calc(33.33% - 40px);
      max-width: 340px;
      margin-top: 50px;
      margin-left: 40px; } }
  @media print, screen and (min-width: 64em) {
    .p-employee-list.-max4 .p-employee {
      width: calc(25% - 60px);
      margin-left: 60px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-employee-list.-max4 .p-employee:first-child {
      margin-top: 0; } }

.p-employee-list.-recruit_top .p-employee {
  opacity: 0;
  -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }
  @media print, screen and (min-width: 64em) {
    .p-employee-list.-recruit_top .p-employee:hover:first-child .p-employee__img:after {
      -webkit-transform: scale(1.05, 1.05);
              transform: scale(1.05, 1.05); } }
  .p-employee-list.-recruit_top .p-employee.-visible {
    opacity: 1; }
  @media print {
    .p-employee-list.-recruit_top .p-employee {
      opacity: 1 !important; } }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-recruit_top .p-employee:first-child .p-employee__img:after {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      display: block;
      position: absolute;
      top: -12px;
      right: -27px;
      width: 6.14vw;
      padding-top: 115.1%;
      max-width: 86px;
      background-repeat: no-repeat;
      background-position: 0 0;
      background-image: url(/recruit/img/img_illust_05.png);
      background-size: 100% auto;
      -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
      transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
      content: ''; } }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(1), .p-employee-list.-recruit_top .p-employee:nth-child(4), .p-employee-list.-recruit_top .p-employee:nth-child(7), .p-employee-list.-recruit_top .p-employee:nth-child(10) {
      -webkit-transform: translate(0, -30px);
              transform: translate(0, -30px); } }
  @media print, screen and (min-width: 64em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(1), .p-employee-list.-recruit_top .p-employee:nth-child(4), .p-employee-list.-recruit_top .p-employee:nth-child(7), .p-employee-list.-recruit_top .p-employee:nth-child(10) {
      -webkit-transform: translate(0, -30px);
              transform: translate(0, -30px); } }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(1).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(4).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(7).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(10).-visible {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); } }
  @media print {
    .p-employee-list.-recruit_top .p-employee:nth-child(1), .p-employee-list.-recruit_top .p-employee:nth-child(4), .p-employee-list.-recruit_top .p-employee:nth-child(7), .p-employee-list.-recruit_top .p-employee:nth-child(10) {
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(2), .p-employee-list.-recruit_top .p-employee:nth-child(5), .p-employee-list.-recruit_top .p-employee:nth-child(8), .p-employee-list.-recruit_top .p-employee:nth-child(11) {
      -webkit-transform: translate(0, -80px);
              transform: translate(0, -80px); } }
  @media print, screen and (min-width: 64em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(2), .p-employee-list.-recruit_top .p-employee:nth-child(5), .p-employee-list.-recruit_top .p-employee:nth-child(8), .p-employee-list.-recruit_top .p-employee:nth-child(11) {
      -webkit-transform: translate(0, -130px);
              transform: translate(0, -130px); } }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(2).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(5).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(8).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(11).-visible {
      -webkit-transform: translate(0, -50px);
              transform: translate(0, -50px); } }
  @media print, screen and (min-width: 64em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(2).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(5).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(8).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(11).-visible {
      -webkit-transform: translate(0, -100px);
              transform: translate(0, -100px); } }
  @media print {
    .p-employee-list.-recruit_top .p-employee:nth-child(2), .p-employee-list.-recruit_top .p-employee:nth-child(5), .p-employee-list.-recruit_top .p-employee:nth-child(8), .p-employee-list.-recruit_top .p-employee:nth-child(11) {
      -webkit-transform: translate(0, -100px);
              transform: translate(0, -100px); } }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(3), .p-employee-list.-recruit_top .p-employee:nth-child(6), .p-employee-list.-recruit_top .p-employee:nth-child(9), .p-employee-list.-recruit_top .p-employee:nth-child(12) {
      -webkit-transform: translate(0, -130px);
              transform: translate(0, -130px); } }
  @media print, screen and (min-width: 64em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(3), .p-employee-list.-recruit_top .p-employee:nth-child(6), .p-employee-list.-recruit_top .p-employee:nth-child(9), .p-employee-list.-recruit_top .p-employee:nth-child(12) {
      -webkit-transform: translate(0, -230px);
              transform: translate(0, -230px); } }
  @media print, screen and (min-width: 48em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(3).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(6).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(9).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(12).-visible {
      -webkit-transform: translate(0, -100px);
              transform: translate(0, -100px); } }
  @media print, screen and (min-width: 64em) {
    .p-employee-list.-recruit_top .p-employee:nth-child(3).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(6).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(9).-visible, .p-employee-list.-recruit_top .p-employee:nth-child(12).-visible {
      -webkit-transform: translate(0, -200px);
              transform: translate(0, -200px); } }
  @media print {
    .p-employee-list.-recruit_top .p-employee:nth-child(3), .p-employee-list.-recruit_top .p-employee:nth-child(6), .p-employee-list.-recruit_top .p-employee:nth-child(9), .p-employee-list.-recruit_top .p-employee:nth-child(12) {
      -webkit-transform: translate(0, -200px);
              transform: translate(0, -200px); } }

.p-employee {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-employee {
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      margin-top: 24px; } }
  @media print, screen and (min-width: 48em) {
    .p-employee {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }
  .browser-is-ie .p-employee {
    display: block; }
  @media print, screen and (min-width: 64em) {
    .p-employee:hover .p-employee__img img {
      -webkit-transform: scale(1.05, 1.05);
              transform: scale(1.05, 1.05); } }
  @media print, screen and (min-width: 64em) {
    .p-employee:hover .p-employee__img img:last-child {
      -webkit-box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16);
              box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16); } }
  @media print, screen and (min-width: 64em) {
    .p-employee:hover .p-employee__head {
      color: #00a0e9; } }

.p-employee__img {
  position: relative;
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-employee__img {
      max-width: 162px; } }
  .p-employee__img img {
    display: block;
    height: auto;
    margin: 0 auto;
    -webkit-transform-origin: 50% 100%;
            transform-origin: 50% 100%;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }
    .p-employee__img img:first-child {
      position: relative;
      z-index: 10;
      width: 100%; }
    .p-employee__img img:last-child {
      position: absolute;
      overflow: hidden;
      z-index: 0;
      bottom: 0;
      width: 100%;
      border-radius: 10px; }

.p-employee__text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  color: #003953; }
  @media only screen and (max-width: 47.9375em) {
    .p-employee__text {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      margin-left: 20px;
      padding-top: 14px; } }
  @media print, screen and (min-width: 48em) {
    .p-employee__text {
      margin-top: 24px; } }

.p-employee__head {
  font-weight: bold;
  color: #003953; }
  @media only screen and (max-width: 47.9375em) {
    .p-employee__head {
      margin-top: 3px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.6; } }
  @media print, screen and (min-width: 48em) {
    .p-employee__head {
      margin-top: 4px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.4; } }
  @media print, screen and (min-width: 64em) {
    .p-employee__head {
      font-size: 18px;
      font-size: 1.125rem; } }

.p-employee__job {
  display: block; }
  @media only screen and (max-width: 47.9375em) {
    .p-employee__job {
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-employee__job {
      font-weight: 500;
      font-size: 14px;
      font-size: 0.875rem; } }

.p-employee__entry {
  display: block;
  margin-top: 6px; }
  @media only screen and (max-width: 47.9375em) {
    .p-employee__entry {
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-employee__entry {
      font-size: 14px;
      font-size: 0.875rem; } }

.p-employee__info {
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-employee__info {
      margin-top: 6px; } }
  @media print, screen and (min-width: 48em) {
    .p-employee__info {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      margin-top: 14px; } }
  .p-employee__info dt,
  .p-employee__info dd {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    font-size: 14px;
    font-size: 0.875rem; }
  .p-employee__info dt {
    position: relative; }
    @media print, screen and (min-width: 48em) {
      .p-employee__info dt {
        padding-right: 30px; } }
    @media print, screen and (min-width: 48em) {
      .p-employee__info dt:after {
        display: block;
        position: absolute;
        top: 0.45em;
        right: 15px;
        width: 1px;
        height: 13px;
        background-color: #ddd;
        content: ''; } }
  .p-employee__info dd {
    position: relative; }

.p-employee__link {
  display: block;
  color: #00a0e9;
  text-decoration: underline;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem; }
  @media print, screen and (min-width: 48em) {
    .p-employee__link {
      margin-top: 3px; } }

/* カレント
----------------------------------------------------------------- */
.p-employee.-current {
  pointer-events: none; }
  .p-employee.-current .p-employee__head,
  .p-employee.-current .p-employee__info {
    color: #719db8; }
  .p-employee.-current .p-employee__head .c-arrow {
    display: none; }

@media only screen and (max-width: 63.9375em) {
  .p-link-card-container .p-link-card {
    margin-top: 20px; } }

@media print, screen and (min-width: 64em) {
  .p-link-card-container .p-link-card {
    margin-top: 40px; } }

.p-link-card-container .p-link-card:first-child {
  margin-top: 0; }

.p-link-card {
  position: relative;
  width: 100%; }

.p-link-card__link {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
  @media print, screen and (min-width: 64em) {
    .p-link-card__link:hover + .p-link-card__inner {
      -webkit-box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16);
              box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16); } }
  @media print, screen and (min-width: 64em) {
    .p-link-card__link:hover + .p-link-card__inner .p-link-card__img {
      -webkit-transform: scale(1.05, 1.05);
              transform: scale(1.05, 1.05); } }
  @media print, screen and (min-width: 64em) {
    .p-link-card__link:hover + .p-link-card__inner .p-link-card__head {
      color: #00a0e9; } }
  @media print, screen and (min-width: 64em) {
    .p-link-card__link:hover + .p-link-card__inner .c-arrow.-right {
      -webkit-transform: translate(4px, 0);
              transform: translate(4px, 0); } }
  @media print, screen and (min-width: 64em) {
    .p-link-card__link:hover + .p-link-card__inner .c-arrow.-right:before {
      background-color: #00a0e9; } }
  @media print, screen and (min-width: 64em) {
    .p-link-card__link:hover + .p-link-card__inner .c-arrow.-right:after {
      border-color: #00a0e9; } }

.p-link-card__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 0;
  overflow: hidden;
  width: 100%;
  border-radius: 10px;
  background-color: #fff;
  -webkit-transition: -webkit-box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: -webkit-box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-box-shadow cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }

/* イメージ
----------------------------------------------------------------- */
.p-link-card__img {
  position: relative;
  background-repeat: no-repeat;
  background-position: top 50% left 50%;
  background-size: cover;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }
  @media only screen and (max-width: 47.9375em) {
    .p-link-card__img {
      width: 32.75%; } }
  @media print, screen and (min-width: 48em) {
    .p-link-card__img {
      width: 36%; } }
  .p-link-card__img:before {
    display: block;
    position: absolute;
    z-index: 10;
    top: -1%;
    left: -1px;
    width: 100%;
    height: 103%;
    background-image: url(/common/img/bg_link-card_wave.svg);
    background-position: 0% 50%;
    background-repeat: no-repeat;
    background-size: auto 100%;
    content: ''; }

/* テキスト
----------------------------------------------------------------- */
.p-link-card__text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }
  @media only screen and (max-width: 47.9375em) {
    .p-link-card__text {
      padding-top: 14px;
      padding-bottom: 18px;
      padding-left: 20px;
      padding-right: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-link-card__text {
      padding-top: 43px;
      padding-bottom: 42px;
      padding-left: 40px;
      padding-right: 40px; } }

.p-link-card__head {
  display: block;
  position: relative;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
  color: #003953;
  line-height: 1.55;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  /* inner */ }
  @media print, screen and (min-width: 64em) {
    .p-link-card__head {
      max-height: 48px; } }
  .p-link-card__head span {
    display: block; }
  .p-link-card__head.-over {
    overflow: hidden; }
    .p-link-card__head.-over:after {
      display: block;
      position: absolute;
      right: 0;
      bottom: 0;
      height: 50%;
      width: 48px;
      text-align: center;
      background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(33.33%, white), to(white));
      background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 33.33%, white 100%);
      background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, white 33.33%, white 100%);
      content: '…'; }
    .p-link-card__head.-over .c-arrow.-right {
      position: absolute;
      z-index: 10;
      top: auto;
      bottom: 0.45em;
      right: 0; }

.p-link-card__desc {
  line-height: 1.65;
  color: #003953; }
  @media only screen and (max-width: 47.9375em) {
    .p-link-card__desc {
      margin-top: 5px;
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-link-card__desc {
      margin-top: 8px; } }

/* インフォ
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .p-link-card__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 15px; } }

.p-link-card__date {
  font-family: montserrat, sans-serif;
  -webkit-font-feature-settings: 'palt' 1;
          font-feature-settings: 'palt' 1;
  font-weight: 400;
  font-size: 14px;
  font-size: 0.875rem; }
  @media print, screen and (min-width: 48em) {
    .p-link-card__date {
      margin-top: -1px;
      margin-right: 20px; } }

.p-link-card__tag li {
  position: relative;
  z-index: 20; }

/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 64em) {
  .p-link-card.-small:hover .p-link-card__inner {
    -webkit-box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16);
            box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16); } }

@media print, screen and (min-width: 64em) {
  .p-link-card.-small:hover .p-link-card__img {
    -webkit-transform: scale(1.05, 1.05);
            transform: scale(1.05, 1.05); } }

@media print, screen and (min-width: 64em) {
  .p-link-card.-small:hover .p-link-card__head {
    color: #00a0e9; } }

@media print, screen and (min-width: 48em) {
  .p-link-card.-small .p-link-card__text {
    padding-top: 30px;
    padding-bottom: 38px;
    padding-left: 40px;
    padding-right: 45px; } }

@media print, screen and (min-width: 48em) {
  .p-link-card.-small .p-link-card__img {
    width: 32%; } }

.p-link-card.-center {
  margin: 0 auto;
  max-width: 800px; }
  @media print, screen and (min-width: 64em) {
    .p-link-card.-center:hover .p-link-card__inner {
      -webkit-box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16);
              box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16); } }
  @media print, screen and (min-width: 64em) {
    .p-link-card.-center:hover .p-link-card__img {
      -webkit-transform: scale(1.05, 1.05);
              transform: scale(1.05, 1.05); } }
  @media print, screen and (min-width: 64em) {
    .p-link-card.-center:hover .p-link-card__head {
      color: #00a0e9; } }
  @media print, screen and (min-width: 48em) {
    .p-link-card.-center .p-link-card__text {
      padding-top: 33px;
      padding-bottom: 32px;
      padding-left: 40px;
      padding-right: 40px; } }

.p-link-card.-home .p-link-card__inner {
  -webkit-box-shadow: 0 3px 10px rgba(29, 131, 210, 0.2);
          box-shadow: 0 3px 10px rgba(29, 131, 210, 0.2); }

@media print, screen and (min-width: 64em) {
  .p-link-card.-home .p-link-card__link:hover + .p-link-card__inner {
    -webkit-box-shadow: 0 3px 30px rgba(29, 131, 210, 0.4);
            box-shadow: 0 3px 30px rgba(29, 131, 210, 0.4); } }

@media print, screen and (min-width: 64em) {
  .p-link-card.-home .p-link-card__link:hover + .p-link-card__inner .c-arrow.-right {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); } }

.p-link-card.-home .p-link-card__head {
  position: relative;
  overflow: hidden;
  max-height: 3rem; }
  .p-link-card.-home .p-link-card__head.-over {
    overflow: hidden; }
    .p-link-card.-home .p-link-card__head.-over .c-arrow.-right {
      position: absolute;
      z-index: 10;
      top: auto;
      bottom: 0.45em;
      right: 1px; }

.p-image-card-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media print, screen and (min-width: 48em) {
    .p-image-card-list.-max3 {
      margin-left: -40px; } }
  @media print, screen and (min-width: 64em) {
    .p-image-card-list.-max3 {
      margin-left: -90px; } }
  @media print, screen and (min-width: 48em) {
    .p-image-card-list.-max3 .p-image-card {
      width: calc(33.33% - 40px);
      margin-left: 40px; } }
  @media print, screen and (min-width: 64em) {
    .p-image-card-list.-max3 .p-image-card {
      width: calc(33.33% - 90px);
      margin-left: 90px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-image-card-list.-max3 .p-image-card:first-child {
      margin-top: 0; } }

.p-image-card {
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-image-card {
      width: 100%;
      margin-top: 36px; } }
  @media print, screen and (min-width: 64em) {
    .p-image-card:hover .p-image-card__img img {
      -webkit-transform: scale(1.05, 1.05);
              transform: scale(1.05, 1.05);
      -webkit-box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16);
              box-shadow: 0 3px 20px rgba(39, 115, 174, 0.16); } }
  @media print, screen and (min-width: 64em) {
    .p-image-card:hover .p-image-card__head {
      color: #00a0e9; } }

.p-image-card__img {
  position: relative;
  width: 100%; }
  .p-image-card__img img {
    display: block;
    width: 100%;
    margin: 0 auto;
    border-radius: 10px;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }
  .p-image-card__img picture {
    display: block;
    height: auto;
    -webkit-transform-origin: 50% 100%;
            transform-origin: 50% 100%;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }
    .p-image-card__img picture:first-child {
      position: relative;
      z-index: 10;
      width: 100%; }

.p-image-card__head {
  display: block;
  font-weight: bold;
  color: #003953;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s; }
  @media only screen and (max-width: 47.9375em) {
    .p-image-card__head {
      margin-top: 24px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.6; } }
  @media print, screen and (min-width: 48em) {
    .p-image-card__head {
      margin-top: 32px;
      font-size: 16px;
      font-size: 1rem;
      text-align: center; } }

.p-image-card__desc {
  display: block;
  color: #003953; }
  @media only screen and (max-width: 47.9375em) {
    .p-image-card__desc {
      margin-top: 4px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-image-card__desc {
      margin-top: 8px;
      font-size: 16px;
      font-size: 1rem;
      text-align: center; } }
  .p-image-card__desc br {
    display: none; }
    @media print, screen and (min-width: 75em) {
      .p-image-card__desc br {
        display: block; } }

/* モディファイア
----------------------------------------------------------------- */
.p-image-card.-left .p-image-card__head,
.p-image-card.-left .p-image-card__desc {
  text-align: left; }

.p-home-visual {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }

.p-home-visual__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%; }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      position: relative;
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto; } }

.p-home-visual__img {
  position: absolute;
  z-index: -1; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-visual__img {
      top: -22.5vw;
      left: -9.96vw;
      width: 139.2vw; } }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__img {
      top: 0;
      right: -17.5%;
      width: 80.5vw;
      max-width: 1127px; } }
  .p-home-visual__img clippath {
    -webkit-transform: skewY(-5deg);
            transform: skewY(-5deg);
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s; }
  .p-home-visual__img.-visible clippath {
    -webkit-transform: skewY(0);
            transform: skewY(0); }

.p-home-visual__clipped-image {
  /* カルーセルで実際に切り替わる箇所 */ }
  @media only screen and (max-width: 47.9375em) {
    .p-home-visual__clipped-image.-sp {
      width: 277.87vw;
      height: auto; } }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__clipped-image.-sp {
      display: none; } }
  .p-home-visual__clipped-image.-sp image {
    -webkit-clip-path: url(#clip-main-visual-sp);
            clip-path: url(#clip-main-visual-sp); }
  @media only screen and (max-width: 47.9375em) {
    .p-home-visual__clipped-image.-pc {
      display: none; } }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__clipped-image.-pc {
      width: 161vw;
      max-width: 2254px;
      height: auto; } }
  .p-home-visual__clipped-image.-pc image {
    -webkit-clip-path: url(#clip-main-visual-pc);
            clip-path: url(#clip-main-visual-pc); }
  .p-home-visual__clipped-image image {
    opacity: 0;
    z-index: 0;
    -webkit-transition: opacity linear 0.85s;
    transition: opacity linear 0.85s; }
    .p-home-visual__clipped-image image.-active {
      z-index: 10; }
    .p-home-visual__clipped-image image.-visible {
      opacity: 1; }

.p-home-visual__box {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-visual__box {
      padding-top: 96.27vw; } }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__box {
      padding-top: 164px;
      padding-bottom: 80px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-visual__box {
      padding-top: 264px;
      padding-bottom: 80px; } }
  @media print, screen and (min-width: 75em) {
    .p-home-visual__box {
      padding-bottom: 227px; } }

.p-home-visual__main {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-visual__main {
      padding-top: 32px;
      font-size: 28px;
      font-size: 1.75rem;
      line-height: 1.4; } }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__main {
      font-size: 28px;
      font-size: 1.75rem;
      line-height: 1.4; } }
  @media print, screen and (min-width: 64em) {
    .p-home-visual__main {
      font-size: 38px;
      font-size: 2.375rem; } }
  @media print, screen and (min-width: 75em) {
    .p-home-visual__main {
      font-size: 46px;
      font-size: 2.875rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-visual__main-inner.-pc {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-home-visual__main-inner.-pc {
    display: block; } }

.p-home-visual__main-inner.-pc span {
  display: inline-block; }

@media only screen and (max-width: 47.9375em) {
  .p-home-visual__main-inner.-sp {
    display: block; } }

@media print, screen and (min-width: 48em) {
  .p-home-visual__main-inner.-sp {
    display: none; } }

.p-home-visual__desc {
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-visual__desc {
      margin-top: 16px;
      font-size: 16px;
      font-size: 1rem;
      font-weight: bold;
      line-height: 1.65; } }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__desc {
      max-width: 360px;
      margin-top: 26px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.85; } }
  @media print, screen and (min-width: 64em) {
    .p-home-visual__desc {
      max-width: 460px;
      font-size: 18px;
      font-size: 1.125rem;
      line-height: 1.9; } }
  @media print, screen and (min-width: 75em) {
    .p-home-visual__desc {
      max-width: inherit; } }
  .p-home-visual__desc br {
    display: none; }
    @media print, screen and (min-width: 75em) {
      .p-home-visual__desc br {
        display: block; } }

.p-home-visual__button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-visual__button {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__button {
      max-width: 360px;
      margin-top: 25px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-visual__button {
      margin-top: 55px; } }

.p-home-visual__item {
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-visual__item {
      max-width: 255px;
      margin-top: 16px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__item {
      max-width: 220px;
      margin-left: 20px; } }
  .p-home-visual__item:first-child {
    margin-left: 0; }

@media only screen and (max-width: 47.9375em) {
  .p-home-visual__bg {
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    top: 81.86vw;
    left: -12vw; } }

@media print, screen and (min-width: 48em) {
  .p-home-visual__bg {
    display: none; } }

.p-home-visual__bg svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 37.33vw; }

/* カルーセルナビゲーション */
.p-home-visual__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 20; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-visual__nav {
      top: calc(100vw - 16px);
      right: 4.267%;
      -webkit-transform: translate(0, -100%);
              transform: translate(0, -100%); } }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__nav {
      top: 55vw;
      right: 0px; } }
  @media print, screen and (min-width: 87.5em) {
    .p-home-visual__nav {
      top: auto;
      bottom: 39px;
      right: -14px; } }

.p-home-visual__circle {
  display: block;
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 0;
  margin-left: 8px;
  padding: 0;
  background-color: #B3DFFB;
  border: none;
  border-radius: 50%;
  -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-visual__circle {
      width: 7px;
      height: 7px; } }
  @media print, screen and (min-width: 48em) {
    .p-home-visual__circle {
      width: 9px;
      height: 9px; } }
  @media print, screen and (min-width: 64em) {
    .p-home-visual__circle {
      cursor: pointer;
      outline: none; } }
  @media print, screen and (min-width: 64em) {
    .p-home-visual__circle:hover {
      -webkit-transform: scale(1.5, 1.5);
              transform: scale(1.5, 1.5); } }
  .p-home-visual__circle.-active {
    background-color: #00a0e9;
    -webkit-transform: scale(1.5, 1.5);
            transform: scale(1.5, 1.5); }

.p-tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -6px; }

.p-tag__item {
  padding-top: 6px;
  padding-right: 6px; }
  .p-tag__item a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    padding-right: 10px;
    padding-left: 10px;
    background-color: #d8e7ee;
    border-radius: 90px;
    color: #69788e;
    font-weight: 500;
    line-height: 1.2;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s; }
    @media only screen and (max-width: 47.9375em) {
      .p-tag__item a {
        padding-top: 4px;
        padding-bottom: 4px;
        font-size: 10px;
        font-size: 0.625rem;
        font-weight: bold; } }
    @media print, screen and (min-width: 48em) {
      .p-tag__item a {
        padding-top: 3px;
        padding-bottom: 5px;
        font-size: 12px;
        font-size: 0.75rem; } }
    @media print, screen and (min-width: 64em) {
      .p-tag__item a:hover {
        background-color: #00a0e9;
        color: #fff; } }

@media print, screen and (min-width: 64em) {
  .p-home-blog__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-left: -20px; } }

@media print, screen and (min-width: 75em) {
  .p-home-blog__inner {
    margin-left: -60px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-blog__box {
    margin-top: 40px; } }

@media print, screen and (min-width: 48em) {
  .p-home-blog__box {
    margin-top: 62px; } }

@media print, screen and (min-width: 64em) {
  .p-home-blog__box {
    margin-left: 20px;
    width: calc(50% - 20px); } }

@media print, screen and (min-width: 75em) {
  .p-home-blog__box {
    margin-left: 60px;
    width: calc(50% - 60px); } }

.p-home-blog__head {
  position: relative;
  line-height: 1.4;
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-blog__head {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-home-blog__head {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-home-blog__head.browser-is-ie,
  .browser-is-ie .p-home-blog__head {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .p-home-blog__head {
      font-size: 20px;
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 48em) {
    .p-home-blog__head {
      font-size: 24px;
      font-size: 1.5rem;
      text-align: center; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-blog__list {
    margin-top: 14px; } }

@media print, screen and (min-width: 48em) {
  .p-home-blog__list {
    margin-top: 36px; } }

@media only screen and (max-width: 47.9375em) {
  .p-home-blog__button {
    width: 100%;
    max-width: 255px;
    margin-top: 20px;
    margin-right: auto;
    margin-left: auto; } }

@media print, screen and (min-width: 48em) {
  .p-home-blog__button {
    margin-top: 50px; } }

.p-fluffy-bg {
  position: absolute;
  background: rgba(0, 0, 0, 0.1);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }
  .p-fluffy-bg svg {
    position: absolute;
    z-index: -1; }

@media print, screen and (min-width: 48em) {
  .p-fluffy-bg.-corp_about {
    top: -0%;
    right: -0vw;
    width: 30.94vw;
    max-width: 433.1px; } }

@media print, screen and (min-width: 48em) {
  .p-panel-1-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: -25px;
    margin-left: -20px; } }

@media print, screen and (min-width: 64em) {
  .p-panel-1-container {
    margin-left: -24px; } }

@media only screen and (max-width: 47.9375em) {
  .p-panel-1-container .p-panel-1 {
    margin-top: 24px;
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .p-panel-1-container .p-panel-1 {
    margin-top: 25px;
    margin-left: 20px;
    width: calc(50% - 20px); } }

@media print, screen and (min-width: 64em) {
  .p-panel-1-container .p-panel-1 {
    margin-top: 25px;
    margin-left: 24px;
    width: calc(33.33% - 24px); } }

@media only screen and (max-width: 47.9375em) {
  .p-panel-1-container .p-panel-1:first-child {
    margin-top: 0; } }

.p-panel-1 {
  position: relative;
  border-radius: 10px; }
  .p-panel-1.-current {
    pointer-events: none; }
    .p-panel-1.-current .p-panel-1__inner:before {
      -webkit-box-shadow: none;
              box-shadow: none;
      background-color: #d9ebf3; }
    .p-panel-1.-current .p-panel-1__head {
      color: #719db8; }
      .p-panel-1.-current .p-panel-1__head i {
        display: none; }
      .p-panel-1.-current .p-panel-1__head:after {
        background-color: #a4c4d5; }
    .p-panel-1.-current .p-panel-1__desc {
      color: #719db8; }

.p-panel-1__inner {
  display: block;
  position: relative; }
  @media print, screen and (min-width: 48em) {
    .p-panel-1__inner {
      height: 100%; } }
  .p-panel-1__inner:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    -webkit-box-shadow: 0 3px 10px rgba(29, 131, 210, 0.2);
            box-shadow: 0 3px 10px rgba(29, 131, 210, 0.2);
    background-color: #fff;
    border-radius: 10px;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    content: ''; }
  @media print, screen and (min-width: 64em) {
    .p-panel-1__inner:hover:before {
      -webkit-box-shadow: 0 3px 30px rgba(29, 131, 210, 0.4);
              box-shadow: 0 3px 30px rgba(29, 131, 210, 0.4);
      -webkit-transform: scale(1.025, 1.025);
              transform: scale(1.025, 1.025); } }
  @media print, screen and (min-width: 64em) {
    .p-panel-1__inner:hover .p-panel-1__head:after {
      -webkit-transform: scale(1.025, 1);
              transform: scale(1.025, 1); } }

.p-panel-1__head {
  display: block;
  position: relative;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  font-weight: bold;
  color: #003953;
  line-height: 1.55; }
  @media only screen and (max-width: 47.9375em) {
    .p-panel-1__head {
      padding-top: 14px;
      padding-bottom: 18px;
      padding-left: 20px;
      padding-right: 20px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-panel-1__head {
      padding-top: 25px;
      padding-bottom: 28px;
      padding-left: 40px;
      padding-right: 40px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .p-panel-1__head {
      font-size: 18px;
      font-size: 1.125rem; } }
  .p-panel-1__head:after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #d9ebf3;
    content: ''; }
  @media print, screen and (min-width: 64em) {
    a:hover .p-panel-1__head {
      color: #00a0e9; } }

@media only screen and (max-width: 47.9375em) {
  .p-panel-1__content {
    padding-top: 14px;
    padding-bottom: 18px;
    padding-left: 20px;
    padding-right: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-panel-1__content {
    padding-top: 31px;
    padding-bottom: 34px;
    padding-left: 40px;
    padding-right: 40px; } }

.p-panel-1__desc {
  line-height: 1.65;
  color: #003953; }
  @media only screen and (max-width: 47.9375em) {
    .p-panel-1__desc {
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-panel-1__desc {
      font-size: 16px;
      font-size: 1rem; } }

@media print, screen and (min-width: 48em) {
  .p-panel-2-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: -25px;
    margin-left: -20px; } }

@media print, screen and (min-width: 64em) {
  .p-panel-2-container {
    margin-left: -24px; } }

@media only screen and (max-width: 47.9375em) {
  .p-panel-2-container .p-panel-2 {
    margin-top: 24px;
    width: 100%; } }

@media print, screen and (min-width: 48em) {
  .p-panel-2-container .p-panel-2 {
    margin-top: 25px;
    margin-left: 20px;
    width: calc(50% - 20px); } }

@media print, screen and (min-width: 64em) {
  .p-panel-2-container .p-panel-2 {
    margin-top: 25px;
    margin-left: 24px;
    width: calc(33.33% - 24px); } }

@media only screen and (max-width: 47.9375em) {
  .p-panel-2-container .p-panel-2:first-child {
    margin-top: 0; } }

.p-panel-2 {
  position: relative;
  border-radius: 10px; }
  .p-panel-2.-current .p-panel-2__inner {
    pointer-events: none; }
    .p-panel-2.-current .p-panel-2__inner:before {
      -webkit-box-shadow: none;
              box-shadow: none;
      background-color: #e7f0f4; }
  .p-panel-2.-current .p-panel-2__head,
  .p-panel-2.-current .p-panel-2__desc {
    color: #96adbb; }
  .p-panel-2.-current .p-panel-2__head i {
    display: none; }
  .p-panel-2.-current .p-panel-2__head:after {
    background-color: #96adbb; }

.p-panel-2__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-panel-2__inner {
      padding-top: 14px;
      padding-bottom: 18px;
      padding-left: 20px;
      padding-right: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-panel-2__inner {
      height: 100%;
      padding-top: 44px;
      padding-bottom: 48px;
      padding-left: 40px;
      padding-right: 40px; } }
  .p-panel-2__inner:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    -webkit-box-shadow: 0 3px 10px rgba(39, 115, 174, 0.16);
            box-shadow: 0 3px 10px rgba(39, 115, 174, 0.16);
    background-color: #fff;
    border-radius: 10px;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    content: ''; }
  @media print, screen and (min-width: 64em) {
    .p-panel-2__inner:hover:before {
      -webkit-box-shadow: 0 3px 30px rgba(29, 131, 210, 0.4);
              box-shadow: 0 3px 30px rgba(29, 131, 210, 0.4);
      -webkit-transform: scale(1.025, 1.025);
              transform: scale(1.025, 1.025); } }

.p-panel-2__head {
  display: block;
  position: relative;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  font-weight: bold;
  color: #003953;
  line-height: 1.55; }
  @media only screen and (max-width: 47.9375em) {
    .p-panel-2__head {
      padding-bottom: 30px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-panel-2__head {
      padding-bottom: 30px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .p-panel-2__head {
      font-size: 18px;
      font-size: 1.125rem; } }
  .p-panel-2__head:after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 28px;
    height: 4px;
    border-radius: 30px;
    background-color: #add3e9;
    content: ''; }
  @media print, screen and (min-width: 64em) {
    a:hover .p-panel-2__head {
      color: #00a0e9; } }

.p-panel-2__desc {
  display: block;
  line-height: 1.65;
  color: #003953; }
  @media only screen and (max-width: 47.9375em) {
    .p-panel-2__desc {
      margin-top: 22px;
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-panel-2__desc {
      margin-top: 22px;
      font-size: 16px;
      font-size: 1rem; } }

.p-category-visual {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }
  @media print, screen and (min-width: 48em) {
    .p-category-visual {
      height: auto; } }
  @media print, screen and (min-width: 64em) {
    .p-category-visual {
      height: 430px; } }
  @media print, screen and (min-width: 75em) {
    .p-category-visual {
      height: 480px; } }
  @media print, screen and (min-width: 87.5em) {
    .p-category-visual {
      height: 70vh;
      min-height: 615px;
      max-height: 670px; } }

.p-category-visual__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-category-visual__inner {
      padding-top: 78vw;
      padding-bottom: 47px; } }
  @media print, screen and (min-width: 48em) {
    .p-category-visual__inner {
      padding-top: 300px;
      padding-bottom: 60px; } }
  @media print, screen and (min-width: 64em) {
    .p-category-visual__inner {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      position: relative;
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto;
      padding-top: 0;
      padding-bottom: 0; } }

@media print, screen and (min-width: 64em) {
  .p-category-visual__text {
    width: calc(100% - 500px);
    margin-top: 60px; } }

@media print, screen and (min-width: 75em) {
  .p-category-visual__text {
    margin-top: 60px; } }

@media print, screen and (min-width: 87.5em) {
  .p-category-visual__text {
    margin-top: 8px; } }

.p-category-visual__main {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-category-visual__main {
      font-size: 28px;
      font-size: 1.75rem;
      line-height: 1.4; } }
  @media print, screen and (min-width: 48em) {
    .p-category-visual__main {
      font-size: 36px;
      font-size: 2.25rem;
      line-height: 1.4; } }
  @media print, screen and (min-width: 75em) {
    .p-category-visual__main {
      font-size: 40px;
      font-size: 2.5rem; } }

.p-category-visual__desc {
  display: block;
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all; }
  @media only screen and (max-width: 47.9375em) {
    .p-category-visual__desc {
      margin-top: 16px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.65; } }
  @media print, screen and (min-width: 48em) {
    .p-category-visual__desc {
      width: calc(100% - 200px);
      margin-top: 23px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.85; } }
  @media print, screen and (min-width: 64em) {
    .p-category-visual__desc {
      width: 100%;
      font-size: 18px;
      font-size: 1.125rem; } }
  .p-category-visual__desc br {
    display: none; }
    @media print, screen and (min-width: 75em) {
      .p-category-visual__desc br {
        display: block; } }

.p-category-visual__img {
  position: absolute;
  z-index: -1;
  -webkit-transform: translate(0, -5px);
          transform: translate(0, -5px);
  opacity: 0;
  -webkit-transition: opacity linear 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity linear 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity linear 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
  transition: opacity linear 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s; }
  @media print {
    .p-category-visual__img {
      opacity: 1 !important;
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  .p-category-visual__img.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important; }
  @media only screen and (max-width: 47.9375em) {
    .p-category-visual__img {
      top: -46.1vw;
      left: -34vw;
      width: 163.73vw; } }
  @media print, screen and (min-width: 48em) {
    .p-category-visual__img {
      top: 3%;
      right: 0;
      width: 440px; } }
  @media print, screen and (min-width: 64em) {
    .p-category-visual__img {
      top: 14.5%;
      right: 2%;
      width: 420px; } }
  @media print, screen and (min-width: 75em) {
    .p-category-visual__img {
      width: 475px; } }
  @media print, screen and (min-width: 87.5em) {
    .p-category-visual__img {
      top: 14.5%;
      right: -4%;
      width: 50%; } }

.p-category-visual__clippath {
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s; }
  @media only screen and (max-width: 47.9375em) {
    .p-category-visual__clippath {
      -webkit-transform: skewY(-5deg);
              transform: skewY(-5deg); } }
  @media print, screen and (min-width: 48em) {
    .p-category-visual__clippath {
      -webkit-transform: skewY(3deg);
              transform: skewY(3deg); } }
  .p-category-visual__img.-visible .p-category-visual__clippath {
    -webkit-transform: skewY(0);
            transform: skewY(0); }

@media only screen and (max-width: 47.9375em) {
  .p-category-visual__clipped.-sp {
    width: 328vw;
    height: auto; } }

@media print, screen and (min-width: 48em) {
  .p-category-visual__clipped.-sp {
    display: none; } }

.p-category-visual__clipped.-sp image {
  -webkit-clip-path: url(#p-category-visual__sp-path);
          clip-path: url(#p-category-visual__sp-path); }

@media only screen and (max-width: 47.9375em) {
  .p-category-visual__clipped.-pc {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-category-visual__clipped.-pc {
    width: 200%;
    height: auto; } }

.p-category-visual__clipped.-pc image {
  -webkit-clip-path: url(#p-category-visual__path);
          clip-path: url(#p-category-visual__path); }

.p-category-visual__bg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.p-category-visual__fluffy-in {
  position: absolute;
  top: 0;
  left: 0; }

.p-category-visual__fluffy {
  position: absolute;
  /* PC（共通）
  ----------------------------------------------------------------- */
  /* SP（共通）
  ----------------------------------------------------------------- */
  /* PC（左） */
  /* PC（中央） */
  /* PC（右） */
  /* SP（左） */
  /* SP（右） */ }
  @media only screen and (max-width: 47.9375em) {
    .p-category-visual__fluffy#-pc_left_1, .p-category-visual__fluffy#-pc_left_2, .p-category-visual__fluffy#-pc_center_1, .p-category-visual__fluffy#-pc_center_2, .p-category-visual__fluffy#-pc_right_1, .p-category-visual__fluffy#-pc_right_2 {
      display: none; } }
  @media print, screen and (min-width: 48em) {
    .p-category-visual__fluffy#-pc_left_1, .p-category-visual__fluffy#-pc_left_2, .p-category-visual__fluffy#-pc_center_1, .p-category-visual__fluffy#-pc_center_2, .p-category-visual__fluffy#-pc_right_1, .p-category-visual__fluffy#-pc_right_2 {
      display: block; } }
  @media only screen and (max-width: 47.9375em) {
    .p-category-visual__fluffy#-sp_left_1, .p-category-visual__fluffy#-sp_left_2, .p-category-visual__fluffy#-sp_right_1, .p-category-visual__fluffy#-sp_right_2 {
      display: block; } }
  @media print, screen and (min-width: 48em) {
    .p-category-visual__fluffy#-sp_left_1, .p-category-visual__fluffy#-sp_left_2, .p-category-visual__fluffy#-sp_right_1, .p-category-visual__fluffy#-sp_right_2 {
      display: none; } }
  .p-category-visual__fluffy#-pc_left_1, .p-category-visual__fluffy#-pc_left_2 {
    top: -10%;
    left: -17%;
    width: 42.5vw;
    max-width: 595px; }
  .p-category-visual__fluffy#-pc_center_1, .p-category-visual__fluffy#-pc_center_2 {
    width: 10.83vw;
    max-width: 151.6px; }
    @media print, screen and (min-width: 48em) {
      .p-category-visual__fluffy#-pc_center_1, .p-category-visual__fluffy#-pc_center_2 {
        top: 55.3%;
        left: 40.5%; } }
    @media print, screen and (min-width: 64em) {
      .p-category-visual__fluffy#-pc_center_1, .p-category-visual__fluffy#-pc_center_2 {
        top: 55.3%;
        left: 30%; } }
    @media print, screen and (min-width: 75em) {
      .p-category-visual__fluffy#-pc_center_1, .p-category-visual__fluffy#-pc_center_2 {
        top: 55.3%;
        left: 40.5%; } }
  .p-category-visual__fluffy#-pc_right_1, .p-category-visual__fluffy#-pc_right_2 {
    top: 1.4%;
    right: -5.5%;
    width: 14.76vw;
    max-width: 206.7px; }
  .p-category-visual__fluffy#-sp_left_1, .p-category-visual__fluffy#-sp_left_2 {
    top: 50%;
    left: -20.9%;
    width: 43.73vw;
    max-width: 164px; }
  .p-category-visual__fluffy#-sp_right_1, .p-category-visual__fluffy#-sp_right_2 {
    top: 53%;
    right: 3.5%;
    width: 21.47vw;
    max-width: 80.5px; }

/* モディファイア
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .p-category-visual.-text_only {
    height: auto;
    min-height: inherit;
    max-height: inherit; } }

.p-category-visual.-text_only .p-category-visual__inner {
  height: auto; }
  @media only screen and (max-width: 47.9375em) {
    .p-category-visual.-text_only .p-category-visual__inner {
      padding-top: 100px; } }
  @media print, screen and (min-width: 48em) {
    .p-category-visual.-text_only .p-category-visual__inner {
      display: block;
      padding-top: 160px;
      padding-bottom: 80px; } }

@media print, screen and (min-width: 48em) {
  .p-category-visual.-text_only .p-category-visual__text {
    margin-top: 0; } }

@media print, screen and (min-width: 48em) {
  .p-category-visual.-text_only .p-category-visual__desc {
    width: 100%; } }

@media only screen and (max-width: 47.9375em) {
  .p-category-visual.-corp .p-category-visual__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    height: auto;
    padding-top: 40px; } }

.p-category-visual.-corp .p-category-visual__img {
  /* コーポレート＞カテゴリー */ }
  @media only screen and (max-width: 47.9375em) {
    .p-category-visual.-corp .p-category-visual__img {
      position: relative;
      z-index: 0;
      top: auto;
      left: auto;
      width: 100%;
      max-width: 270px;
      margin: 0 auto;
      padding-bottom: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-category-visual.-corp .p-category-visual__img {
      right: 7%;
      width: 330px; } }
  @media print, screen and (min-width: 75em) {
    .p-category-visual.-corp .p-category-visual__img {
      right: 9%;
      width: 360px; } }
  @media print, screen and (min-width: 87.5em) {
    .p-category-visual.-corp .p-category-visual__img {
      right: 9%;
      width: 400px; } }
  .p-category-visual.-corp .p-category-visual__img img {
    display: block;
    width: 100%; }
    @media print, screen and (min-width: 48em) {
      .p-category-visual.-corp .p-category-visual__img img {
        max-width: 100%; } }

.p-page-visual {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  z-index: 0;
  padding-right: 4.267%;
  padding-left: 4.267%; }
  .p-page-visual:before {
    display: block;
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 323px;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(21%, #70caf3), color-stop(66%, #94d7f6), to(#fff));
    background: -webkit-linear-gradient(top, #fff 0%, #70caf3 21%, #94d7f6 66%, #fff 100%);
    background: linear-gradient(to bottom, #fff 0%, #70caf3 21%, #94d7f6 66%, #fff 100%);
    opacity: 0.08;
    content: ''; }
  .p-page-visual:after {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(21%, #70caf3), color-stop(80%, #94d7f6), to(#fff));
    background: -webkit-linear-gradient(top, #fff 0%, #70caf3 21%, #94d7f6 80%, #fff 100%);
    background: linear-gradient(to bottom, #fff 0%, #70caf3 21%, #94d7f6 80%, #fff 100%);
    opacity: 0.08;
    content: ''; }

.p-page-visual__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 10; }
  @media only screen and (max-width: 47.9375em) {
    .p-page-visual__inner {
      padding-top: 80px;
      padding-bottom: 47px; } }
  @media print, screen and (min-width: 48em) {
    .p-page-visual__inner {
      position: relative;
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto;
      padding-top: 163px;
      padding-bottom: 66px; } }

.p-page-visual__main {
  display: block;
  position: relative;
  z-index: 20;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-page-visual__main {
      margin-top: 3px;
      font-size: 28px;
      font-size: 1.75rem;
      line-height: 1.4; } }
  @media print, screen and (min-width: 48em) {
    .p-page-visual__main {
      margin-top: 10px;
      font-size: 36px;
      font-size: 2.25rem;
      line-height: 1.4; } }
  @media print, screen and (min-width: 64em) {
    .p-page-visual__main {
      font-size: 40px;
      font-size: 2.5rem; } }

.p-page-visual__sub {
  display: block;
  position: relative;
  z-index: 20;
  color: #00a0e9;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-page-visual__sub {
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-page-visual__sub {
      font-size: 16px;
      font-size: 1rem; } }

.p-page-visual__desc {
  display: block;
  position: relative;
  z-index: 20;
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all; }
  @media only screen and (max-width: 47.9375em) {
    .p-page-visual__desc {
      margin-top: 16px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.65; } }
  @media print, screen and (min-width: 48em) {
    .p-page-visual__desc {
      margin-top: 26px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.85; } }
  @media print, screen and (min-width: 64em) {
    .p-page-visual__desc {
      font-size: 18px;
      font-size: 1.125rem; } }

.p-page-visual__bg {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.p-page-visual__fluffy-in {
  position: absolute;
  top: 0;
  left: 0; }

.p-page-visual__fluffy {
  position: absolute;
  /* PC（共通）
  ----------------------------------------------------------------- */
  /* SP（共通）
  ----------------------------------------------------------------- */ }
  @media only screen and (max-width: 47.9375em) {
    .p-page-visual__fluffy#-pc_left_1, .p-page-visual__fluffy#-pc_left_2, .p-page-visual__fluffy#-pc_right_1, .p-page-visual__fluffy#-pc_right_2 {
      display: none; } }
  @media print, screen and (min-width: 48em) {
    .p-page-visual__fluffy#-pc_left_1, .p-page-visual__fluffy#-pc_left_2, .p-page-visual__fluffy#-pc_right_1, .p-page-visual__fluffy#-pc_right_2 {
      display: block; } }
  @media only screen and (max-width: 47.9375em) {
    .p-page-visual__fluffy#-sp_left_1, .p-page-visual__fluffy#-sp_left_2, .p-page-visual__fluffy#-sp_right_1, .p-page-visual__fluffy#-sp_right_2 {
      display: block; } }
  @media print, screen and (min-width: 48em) {
    .p-page-visual__fluffy#-sp_left_1, .p-page-visual__fluffy#-sp_left_2, .p-page-visual__fluffy#-sp_right_1, .p-page-visual__fluffy#-sp_right_2 {
      display: none; } }
  .p-page-visual__fluffy#-pc_left_1, .p-page-visual__fluffy#-pc_left_2 {
    left: -25%;
    width: 55.31vw;
    max-width: 774.3px; }
    @media print, screen and (min-width: 48em) {
      .p-page-visual__fluffy#-pc_left_1, .p-page-visual__fluffy#-pc_left_2 {
        top: -22%; } }
    @media print, screen and (min-width: 64em) {
      .p-page-visual__fluffy#-pc_left_1, .p-page-visual__fluffy#-pc_left_2 {
        top: -58%; } }
  .p-page-visual__fluffy#-pc_right_1, .p-page-visual__fluffy#-pc_right_2 {
    width: 25.79vw;
    max-width: 361.1px; }
    @media print, screen and (min-width: 48em) {
      .p-page-visual__fluffy#-pc_right_1, .p-page-visual__fluffy#-pc_right_2 {
        top: 49%;
        right: -16%; } }
  .p-page-visual__fluffy#-sp_left_1, .p-page-visual__fluffy#-sp_left_2 {
    top: -36%;
    left: -23%;
    width: 70.1vw;
    max-width: 263px; }
  .p-page-visual__fluffy#-sp_right_1, .p-page-visual__fluffy#-sp_right_2 {
    top: 36%;
    right: -7%;
    width: 32vw;
    max-width: 120px; }

@media only screen and (max-width: 47.9375em) {
  .p-anchor {
    margin-bottom: 36px; } }

@media print, screen and (min-width: 48em) {
  .p-anchor {
    margin-bottom: 80px; } }

@media print, screen and (min-width: 64em) {
  .p-anchor {
    margin-bottom: 134px; } }

.p-anchor__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media only screen and (max-width: 47.9375em) {
    .p-anchor__inner {
      margin-left: -16px; } }
  @media print, screen and (min-width: 48em) {
    .p-anchor__inner {
      margin-left: -20px; } }
  @media print, screen and (min-width: 64em) {
    .p-anchor__inner {
      margin-left: -60px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-anchor__inner .p-anchor__item {
      margin-left: 16px;
      width: calc(50% - 16px); } }
  @media print, screen and (min-width: 48em) {
    .p-anchor__inner .p-anchor__item {
      margin-left: 20px;
      width: calc(33.33% - 20px); } }
  @media print, screen and (min-width: 64em) {
    .p-anchor__inner .p-anchor__item {
      margin-left: 60px;
      width: calc(33.33% - 60px); } }
  @media only screen and (max-width: 47.9375em) {
    .p-anchor__inner .p-anchor__item:first-child {
      margin-top: 0; } }

.p-anchor__item {
  position: relative;
  border-radius: 10px; }
  .p-anchor__item a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    overflow: hidden;
    height: 100%;
    color: #003953;
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .p-anchor__item a {
        padding-top: 12px;
        padding-bottom: 12px;
        padding-right: 16px;
        line-height: 1.4;
        font-size: 14px;
        font-size: 0.875rem; } }
    @media print, screen and (min-width: 48em) {
      .p-anchor__item a {
        padding-top: 15px;
        padding-bottom: 16px;
        padding-right: 16px;
        font-size: 16px;
        font-size: 1rem; } }
    .p-anchor__item a:before {
      display: block;
      position: absolute;
      z-index: 0;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background: -webkit-gradient(linear, left top, right top, from(#00a0e9), to(#575cff));
      background: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 100%);
      background: linear-gradient(to right, #00a0e9 0%, #575cff 100%);
      content: ''; }
    .p-anchor__item a:after {
      display: block;
      position: absolute;
      z-index: 10;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #d9ebf3;
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      content: ''; }
    @media print, screen and (min-width: 64em) {
      .p-anchor__item a:hover {
        color: #00a0e9; } }
    @media print, screen and (min-width: 64em) {
      .p-anchor__item a:hover:after {
        -webkit-transform: translate(100%, 0);
                transform: translate(100%, 0); } }

.wp-editor,
.p-edit-area-1 {
  hanging-punctuation: allow-end;
  /* 段落 */
  /* 見出しとの組み合わせ */
  /* 画像との組み合わせ */
  /* 強調文字 */
  /* リンク
  ----------------------------------------------------------------- */
  /* 見出し
  ----------------------------------------------------------------- */
  /* 丸リスト
  ----------------------------------------------------------------- */
  /* 数字リスト
  ----------------------------------------------------------------- */
  /* テーブル
  ----------------------------------------------------------------- */
  /* 引用文
  ----------------------------------------------------------------- */
  /* イメージ
  ----------------------------------------------------------------- */
  /* イメージがdivでくくられた場合 */
  /* イメージが並列 */
  /* 見出しに隣り合うイメージ */
  /* ソースコード
  ----------------------------------------------------------------- */
  /* editAreaに対するclearfix定義
  ----------------------------------------------------------------- */ }
  .wp-editor:first-child,
  .p-edit-area-1:first-child {
    margin-top: 0; }
  .wp-editor > *,
  .p-edit-area-1 > * {
    clear: both; }
  .wp-editor p:after,
  .wp-editor div:after,
  .p-edit-area-1 p:after,
  .p-edit-area-1 div:after {
    display: block;
    clear: both;
    content: ''; }
  .wp-editor p,
  .p-edit-area-1 p {
    font-weight: 400; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor p,
      .p-edit-area-1 p {
        margin-top: 28px;
        font-size: 15px;
        font-size: 0.9375rem;
        line-height: 2; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor p,
      .p-edit-area-1 p {
        margin-top: 32px;
        font-size: 18px;
        font-size: 1.125rem; } }
    .wp-editor p:first-child,
    .p-edit-area-1 p:first-child {
      margin-top: 0; }
    .wp-editor p b,
    .p-edit-area-1 p b {
      font-weight: 700; }
    .wp-editor p code,
    .p-edit-area-1 p code {
      padding-top: 2px;
      padding-bottom: 3px;
      padding-right: 7px;
      padding-left: 7px;
      background-color: #e6e4de;
      border-radius: 5px;
      font-family: Consolas, 'Courier New', monospace; }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor h2 + p,
    .p-edit-area-1 h2 + p {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor h2 + p,
    .p-edit-area-1 h2 + p {
      margin-top: 43px; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor h3 + p,
    .p-edit-area-1 h3 + p {
      margin-top: 18px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor h3 + p,
    .p-edit-area-1 h3 + p {
      margin-top: 27px; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor h4 + p,
    .p-edit-area-1 h4 + p {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor h4 + p,
    .p-edit-area-1 h4 + p {
      margin-top: 17px; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor .wp-caption + p,
    .wp-editor img + p,
    .p-edit-area-1 .wp-caption + p,
    .p-edit-area-1 img + p {
      margin-top: 26px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor .wp-caption + p,
    .wp-editor img + p,
    .p-edit-area-1 .wp-caption + p,
    .p-edit-area-1 img + p {
      margin-top: 31px; } }
  .wp-editor strong,
  .p-edit-area-1 strong {
    font-weight: bold; }
  .wp-editor p a,
  .wp-editor > ul a,
  .wp-editor > ol a,
  .wp-editor blockquote a,
  .p-edit-area-1 p a,
  .p-edit-area-1 > ul a,
  .p-edit-area-1 > ol a,
  .p-edit-area-1 blockquote a {
    color: #00a0e9;
    text-decoration: underline;
    word-break: break-all; }
    .wp-editor p a[target='_blank']:after,
    .wp-editor > ul a[target='_blank']:after,
    .wp-editor > ol a[target='_blank']:after,
    .wp-editor blockquote a[target='_blank']:after,
    .p-edit-area-1 p a[target='_blank']:after,
    .p-edit-area-1 > ul a[target='_blank']:after,
    .p-edit-area-1 > ol a[target='_blank']:after,
    .p-edit-area-1 blockquote a[target='_blank']:after {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      display: inline-block;
      position: relative;
      top: -0.05em;
      width: 11px;
      height: 11px;
      margin-left: 5px;
      margin-right: 6px;
      background-repeat: no-repeat;
      background-position: 50% 50%;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2012.5%2010.352%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M9.251%2010.352h-8.5A.751.751%200%20010%209.601v-6.5a.753.753%200%2001.751-.751h8.5a.751.751%200%2001.748.751v6.5a.749.749%200%2001-.748.751zm-.75-1.5v-5h-7v5zm2.5-1.6V1.5h-7.75a.75.75%200%20110-1.5h8.5a.749.749%200%2001.75.751v6.5a.75.75%200%2011-1.5%200z%22%20fill%3D%22%23d0324b%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E");
      content: ''; }
    @media print, screen and (min-width: 64em) {
      .wp-editor p a:hover,
      .wp-editor > ul a:hover,
      .wp-editor > ol a:hover,
      .wp-editor blockquote a:hover,
      .p-edit-area-1 p a:hover,
      .p-edit-area-1 > ul a:hover,
      .p-edit-area-1 > ol a:hover,
      .p-edit-area-1 blockquote a:hover {
        text-decoration: none; } }
    .wp-editor p a:hover[target='_blank']:after,
    .wp-editor > ul a:hover[target='_blank']:after,
    .wp-editor > ol a:hover[target='_blank']:after,
    .wp-editor blockquote a:hover[target='_blank']:after,
    .p-edit-area-1 p a:hover[target='_blank']:after,
    .p-edit-area-1 > ul a:hover[target='_blank']:after,
    .p-edit-area-1 > ol a:hover[target='_blank']:after,
    .p-edit-area-1 blockquote a:hover[target='_blank']:after {
      background-repeat: no-repeat;
      background-position: 50% 50%;
      background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2012.5%2010.352%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M9.251%2010.352h-8.5A.751.751%200%20010%209.601v-6.5a.753.753%200%2001.751-.751h8.5a.751.751%200%2001.748.751v6.5a.749.749%200%2001-.748.751zm-.75-1.5v-5h-7v5zm2.5-1.6V1.5h-7.75a.75.75%200%20110-1.5h8.5a.749.749%200%2001.75.751v6.5a.75.75%200%2011-1.5%200z%22%20fill%3D%22%23d0324b%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E"); }
  .wp-editor h2,
  .p-edit-area-1 h2 {
    display: inline-block;
    position: relative;
    font-weight: 600;
    line-height: 1.4;
    color: #575cff;
    background: -webkit-gradient(linear, left top, right top, from(#00a0e9), to(#575cff));
    background: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 100%);
    background: linear-gradient(to right, #00a0e9 0%, #575cff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor h2,
      .p-edit-area-1 h2 {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor h2,
      .p-edit-area-1 h2 {
        font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    .wp-editor h2.browser-is-ie,
    .browser-is-ie .wp-editor h2,
    .p-edit-area-1 h2.browser-is-ie,
    .browser-is-ie
    .p-edit-area-1 h2 {
      font-family: "メイリオ", "Meiryo"; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor h2,
      .p-edit-area-1 h2 {
        margin-top: 54px;
        padding-bottom: 20px;
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 1.5; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor h2,
      .p-edit-area-1 h2 {
        margin-top: 73px;
        padding-bottom: 36px;
        font-size: 28px;
        font-size: 1.75rem;
        line-height: 1.4; } }
    @media print, screen and (min-width: 64em) {
      .wp-editor h2,
      .p-edit-area-1 h2 {
        font-size: 34px;
        font-size: 2.125rem; } }
    .browser-is-ie .wp-editor h2, .browser-is-ie
    .p-edit-area-1 h2 {
      background: none; }
    .wp-editor h2:after,
    .p-edit-area-1 h2:after {
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 38px;
      height: 4px;
      background-color: #add3e9;
      border-radius: 4px;
      content: ''; }
    .wp-editor h2 span,
    .p-edit-area-1 h2 span {
      display: block;
      background: none;
      color: #00a0e9;
      font-size: 16px;
      font-size: 1rem; }
      @media only screen and (max-width: 47.9375em) {
        .wp-editor h2 span,
        .p-edit-area-1 h2 span {
          margin-bottom: 8px; } }
      @media print, screen and (min-width: 48em) {
        .wp-editor h2 span,
        .p-edit-area-1 h2 span {
          margin-bottom: 16px; } }
  .wp-editor h3,
  .p-edit-area-1 h3 {
    font-weight: 600;
    line-height: 1.4;
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor h3,
      .p-edit-area-1 h3 {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor h3,
      .p-edit-area-1 h3 {
        font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    .wp-editor h3.browser-is-ie,
    .browser-is-ie .wp-editor h3,
    .p-edit-area-1 h3.browser-is-ie,
    .browser-is-ie
    .p-edit-area-1 h3 {
      font-family: "メイリオ", "Meiryo"; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor h3,
      .p-edit-area-1 h3 {
        margin-top: 32px;
        font-size: 20px;
        font-size: 1.25rem;
        line-height: 1.5; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor h3,
      .p-edit-area-1 h3 {
        margin-top: 84px;
        font-size: 24px;
        font-size: 1.5rem;
        line-height: 1.5; } }
  .wp-editor h4,
  .p-edit-area-1 h4 {
    font-weight: 600;
    line-height: 1.4; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor h4,
      .p-edit-area-1 h4 {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor h4,
      .p-edit-area-1 h4 {
        font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    .wp-editor h4.browser-is-ie,
    .browser-is-ie .wp-editor h4,
    .p-edit-area-1 h4.browser-is-ie,
    .browser-is-ie
    .p-edit-area-1 h4 {
      font-family: "メイリオ", "Meiryo"; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor h4,
      .p-edit-area-1 h4 {
        margin-top: 24px;
        font-size: 16px;
        font-size: 1rem;
        line-height: 1.5; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor h4,
      .p-edit-area-1 h4 {
        margin-top: 32px;
        font-size: 20px;
        font-size: 1.25rem;
        line-height: 1.5; } }
  .wp-editor h2:first-child,
  .wp-editor h3:first-child,
  .wp-editor h4:first-child,
  .p-edit-area-1 h2:first-child,
  .p-edit-area-1 h3:first-child,
  .p-edit-area-1 h4:first-child {
    margin-top: 0; }
  @media print, screen and (min-width: 48em) {
    .wp-editor h2 + h3,
    .p-edit-area-1 h2 + h3 {
      margin-top: 31px; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor ul,
    .p-edit-area-1 ul {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor ul,
    .p-edit-area-1 ul {
      margin-top: 32px; } }
  .wp-editor ul:first-child,
  .p-edit-area-1 ul:first-child {
    margin-top: 0; }
  .wp-editor ul li,
  .p-edit-area-1 ul li {
    position: relative; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor ul li,
      .p-edit-area-1 ul li {
        margin-top: 6px;
        font-size: 15px;
        font-size: 0.9375rem;
        line-height: 1.85; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor ul li,
      .p-edit-area-1 ul li {
        margin-top: 2px;
        font-size: 18px;
        font-size: 1.125rem;
        line-height: 1.85; } }
    .wp-editor ul li:before,
    .p-edit-area-1 ul li:before {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      position: absolute;
      top: 0.75em;
      left: 0;
      border-radius: 50%;
      content: ''; }
      @media only screen and (max-width: 47.9375em) {
        .wp-editor ul li:before,
        .p-edit-area-1 ul li:before {
          width: 5px;
          height: 5px; } }
      @media print, screen and (min-width: 48em) {
        .wp-editor ul li:before,
        .p-edit-area-1 ul li:before {
          width: 6px;
          height: 6px; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor ul > li,
    .p-edit-area-1 ul > li {
      padding-left: 16px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor ul > li,
    .p-edit-area-1 ul > li {
      padding-left: 19px; } }
  .wp-editor ul > li:before,
  .p-edit-area-1 ul > li:before {
    background-color: #96ADBB; }
  .wp-editor ul > li > ul,
  .p-edit-area-1 ul > li > ul {
    margin-bottom: 10px; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor ul > li > ul > li,
      .p-edit-area-1 ul > li > ul > li {
        padding-left: 16px; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor ul > li > ul > li,
      .p-edit-area-1 ul > li > ul > li {
        padding-left: 19px; } }
    .wp-editor ul > li > ul > li:before,
    .p-edit-area-1 ul > li > ul > li:before {
      border: solid 1px #96ADBB; }
  .wp-editor > ol,
  .p-edit-area-1 > ol {
    counter-reset: number; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor > ol,
      .p-edit-area-1 > ol {
        margin-top: 28px; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor > ol,
      .p-edit-area-1 > ol {
        margin-top: 32px; } }
    .wp-editor > ol li,
    .p-edit-area-1 > ol li {
      position: relative;
      margin-top: 5px; }
      @media only screen and (max-width: 47.9375em) {
        .wp-editor > ol li,
        .p-edit-area-1 > ol li {
          font-size: 15px;
          font-size: 0.9375rem;
          line-height: 1.85; } }
      @media print, screen and (min-width: 48em) {
        .wp-editor > ol li,
        .p-edit-area-1 > ol li {
          font-size: 18px;
          font-size: 1.125rem;
          line-height: 1.85; } }
      .wp-editor > ol li:before,
      .p-edit-area-1 > ol li:before {
        display: inline-block;
        position: relative;
        font-weight: bold;
        counter-increment: number;
        content: counter(number) "."; }
        @media only screen and (max-width: 47.9375em) {
          .wp-editor > ol li:before,
          .p-edit-area-1 > ol li:before {
            top: 0em;
            margin-right: 6px;
            font-size: 16px;
            font-size: 1rem; } }
        @media print, screen and (min-width: 48em) {
          .wp-editor > ol li:before,
          .p-edit-area-1 > ol li:before {
            top: -0em;
            margin-right: 10px;
            font-size: 18px;
            font-size: 1.125rem; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor table,
    .p-edit-area-1 table {
      margin-top: 28px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor table,
    .p-edit-area-1 table {
      margin-top: 28px; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor table tr,
    .p-edit-area-1 table tr {
      border-style: solid;
      border-width: 1px 0 0 0;
      border-color: #d9ebf3; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor table tr:last-child,
    .p-edit-area-1 table tr:last-child {
      border-width: 1px 0 1px 0; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor table tr:last-child th,
    .wp-editor table tr:last-child td,
    .p-edit-area-1 table tr:last-child th,
    .p-edit-area-1 table tr:last-child td {
      border-width: 1px 0 1px 0; } }
  .wp-editor table tr th,
  .wp-editor table tr td,
  .p-edit-area-1 table tr th,
  .p-edit-area-1 table tr td {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    vertical-align: top; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor table tr th,
      .wp-editor table tr td,
      .p-edit-area-1 table tr th,
      .p-edit-area-1 table tr td {
        display: block;
        font-size: 16px;
        font-size: 1rem; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor table tr th,
      .wp-editor table tr td,
      .p-edit-area-1 table tr th,
      .p-edit-area-1 table tr td {
        padding-top: 34px;
        padding-bottom: 36px;
        border-style: solid;
        border-width: 1px 0 0 0;
        border-color: #d9ebf3;
        font-size: 16px;
        font-size: 1rem; } }
    @media print, screen and (min-width: 64em) {
      .wp-editor table tr th,
      .wp-editor table tr td,
      .p-edit-area-1 table tr th,
      .p-edit-area-1 table tr td {
        font-size: 18px;
        font-size: 1.125rem; } }
  .wp-editor table tr th,
  .wp-editor table tr td:first-child,
  .p-edit-area-1 table tr th,
  .p-edit-area-1 table tr td:first-child {
    font-weight: bold; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor table tr th,
      .wp-editor table tr td:first-child,
      .p-edit-area-1 table tr th,
      .p-edit-area-1 table tr td:first-child {
        width: 100% !important;
        padding-top: 16px; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor table tr th,
      .wp-editor table tr td:first-child,
      .p-edit-area-1 table tr th,
      .p-edit-area-1 table tr td:first-child {
        width: 250px !important;
        padding-right: 20px; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor table tr td:not(:first-child),
    .p-edit-area-1 table tr td:not(:first-child) {
      width: 100% !important;
      margin-top: 8px;
      padding-bottom: 16px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor table tr td:not(:first-child),
    .p-edit-area-1 table tr td:not(:first-child) {
      width: auto !important; } }
  .wp-editor blockquote,
  .p-edit-area-1 blockquote {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    background-color: #faf9f5;
    border-radius: 10px; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor blockquote,
      .p-edit-area-1 blockquote {
        margin-top: 20px;
        padding-top: 18px;
        padding-bottom: 22px;
        padding-right: 24px;
        padding-left: 24px;
        font-size: 14px;
        font-size: 0.875rem;
        line-height: 2; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor blockquote,
      .p-edit-area-1 blockquote {
        margin-top: 25px;
        padding-top: 24px;
        padding-bottom: 28px;
        padding-right: 32px;
        padding-left: 32px;
        font-size: 16px;
        font-size: 1rem;
        line-height: 2; } }
    .wp-editor blockquote span,
    .p-edit-area-1 blockquote span {
      display: block; }
      @media only screen and (max-width: 47.9375em) {
        .wp-editor blockquote span,
        .p-edit-area-1 blockquote span {
          margin-top: 5px;
          font-size: 14px;
          font-size: 0.875rem;
          line-height: 1.7; } }
      @media print, screen and (min-width: 48em) {
        .wp-editor blockquote span,
        .p-edit-area-1 blockquote span {
          margin-top: 5px;
          font-size: 14px;
          font-size: 0.875rem; } }
    .wp-editor blockquote a,
    .p-edit-area-1 blockquote a {
      color: #00a0e9; }
  .wp-editor img,
  .p-edit-area-1 img {
    display: block;
    max-width: 100%; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor img,
      .p-edit-area-1 img {
        margin-top: 25px; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor img,
      .p-edit-area-1 img {
        margin-top: 60px; } }
    .wp-editor img.-adjust_height,
    .p-edit-area-1 img.-adjust_height {
      width: auto; }
      @media print, screen and (min-width: 48em) {
        .wp-editor img.-adjust_height,
        .p-edit-area-1 img.-adjust_height {
          max-height: 570px; } }
    .wp-editor img.-visible,
    .p-edit-area-1 img.-visible {
      visibility: visible;
      opacity: 1; }
    .wp-editor img.alignleft,
    .p-edit-area-1 img.alignleft {
      float: left; }
    .wp-editor img.aligncenter,
    .p-edit-area-1 img.aligncenter {
      display: block;
      margin-right: auto;
      margin-left: auto; }
    .wp-editor img.alignright,
    .p-edit-area-1 img.alignright {
      float: right; }
  .wp-editor .wp-caption,
  .p-edit-area-1 .wp-caption {
    width: auto !important; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor .wp-caption,
      .p-edit-area-1 .wp-caption {
        margin-top: 20px; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor .wp-caption,
      .p-edit-area-1 .wp-caption {
        margin-top: 30px; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor .p-edit-area-1__imgflex,
    .p-edit-area-1 .p-edit-area-1__imgflex {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor .p-edit-area-1__imgflex,
    .p-edit-area-1 .p-edit-area-1__imgflex {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      margin-top: 30px;
      margin-left: -40px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor .p-edit-area-1__imgflex .p-edit-area-1__imgflex_inner,
    .p-edit-area-1 .p-edit-area-1__imgflex .p-edit-area-1__imgflex_inner {
      width: calc(50% - 20px);
      margin-left: 20px; } }
  @media print, screen and (min-width: 64em) {
    .wp-editor .p-edit-area-1__imgflex .p-edit-area-1__imgflex_inner,
    .p-edit-area-1 .p-edit-area-1__imgflex .p-edit-area-1__imgflex_inner {
      width: calc(50% - 40px);
      margin-left: 40px; } }
  .wp-editor .wp-caption-text,
  .p-edit-area-1 .wp-caption-text {
    text-align: center; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor .wp-caption-text,
      .p-edit-area-1 .wp-caption-text {
        margin-top: 8px;
        font-size: 12px;
        font-size: 0.75rem; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor .wp-caption-text,
      .p-edit-area-1 .wp-caption-text {
        margin-top: 17px;
        font-size: 14px;
        font-size: 0.875rem; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor h2 + img,
    .wp-editor h2 + .wp-caption,
    .p-edit-area-1 h2 + img,
    .p-edit-area-1 h2 + .wp-caption {
      margin-top: 38px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor h2 + img,
    .wp-editor h2 + .wp-caption,
    .p-edit-area-1 h2 + img,
    .p-edit-area-1 h2 + .wp-caption {
      margin-top: 58px; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor h4 + img,
    .wp-editor h4 + .wp-caption,
    .p-edit-area-1 h4 + img,
    .p-edit-area-1 h4 + .wp-caption {
      margin-top: 38px; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor h4 + img,
    .wp-editor h4 + .wp-caption,
    .p-edit-area-1 h4 + img,
    .p-edit-area-1 h4 + .wp-caption {
      margin-top: 58px; } }
  .wp-editor pre[class*='language-'],
  .p-edit-area-1 pre[class*='language-'] {
    border-radius: 10px !important; }
    @media only screen and (max-width: 47.9375em) {
      .wp-editor pre[class*='language-'],
      .p-edit-area-1 pre[class*='language-'] {
        margin-top: 24px !important;
        margin-bottom: 0 !important;
        font-size: 14px;
        font-size: 0.875rem; } }
    @media print, screen and (min-width: 48em) {
      .wp-editor pre[class*='language-'],
      .p-edit-area-1 pre[class*='language-'] {
        margin-top: 32px !important;
        margin-bottom: 0 !important; } }
  @media only screen and (max-width: 47.9375em) {
    .wp-editor pre[class*='language-'] + pre[class*='language-'],
    .p-edit-area-1 pre[class*='language-'] + pre[class*='language-'] {
      margin-top: 10px !important;
      margin-bottom: 0 !important; } }
  @media print, screen and (min-width: 48em) {
    .wp-editor pre[class*='language-'] + pre[class*='language-'],
    .p-edit-area-1 pre[class*='language-'] + pre[class*='language-'] {
      margin-top: 16px !important;
      margin-bottom: 0 !important; } }
  .wp-editor:after,
  .p-edit-area-1:after {
    content: '';
    clear: both;
    display: block; }

.p-edit-area-1.-center p {
  text-align: center; }

.p-next-button {
  display: -ms-grid;
  display: grid; }
  @media only screen and (max-width: 47.9375em) {
    .p-next-button {
      -ms-grid-rows: auto 0 auto 0 1fr;
      -ms-grid-columns: 70px 20px 1fr;
          grid-template: 'nextIcon nextHead' auto 'nextDesc nextDesc' auto 'nextLink nextLink' 1fr / 70px 1fr;
      gap: 0 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-next-button {
      -ms-grid-rows: auto 0 auto 0 1fr;
      -ms-grid-columns: 110px 55px 1fr;
          grid-template: 'nextIcon nextHead' auto 'nextIcon nextDesc' auto 'nextIcon nextLink' 1fr / 110px 1fr;
      gap: 0 55px; } }

.p-next-button__icon {
  grid-area: nextIcon;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative; }
  .p-next-button__icon svg {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    @media print, screen and (min-width: 64em) {
      a:hover .p-next-button__icon svg {
        -webkit-transform: translate(-50%, -50%) scale(1.12, 1.12);
                transform: translate(-50%, -50%) scale(1.12, 1.12); } }
  .p-next-button__icon span {
    display: block;
    position: relative;
    z-index: 10;
    font-family: montserrat, sans-serif;
    -webkit-font-feature-settings: 'palt' 1;
            font-feature-settings: 'palt' 1;
    font-weight: bold;
    color: #0e7eed; }
    @media only screen and (max-width: 47.9375em) {
      .p-next-button__icon span {
        font-size: 16px;
        font-size: 1rem; } }
    @media print, screen and (min-width: 48em) {
      .p-next-button__icon span {
        font-size: 16px;
        font-size: 1rem; } }

.p-next-button__head {
  grid-area: nextHead;
  font-weight: bold;
  color: #003953;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s; }
  @media only screen and (max-width: 47.9375em) {
    .p-next-button__head {
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.5; } }
  @media print, screen and (min-width: 48em) {
    .p-next-button__head {
      font-size: 24px;
      font-size: 1.5rem;
      line-height: 1.5; } }

.p-next-button__desc {
  grid-area: nextDesc;
  font-weight: 400;
  color: #003953; }
  @media only screen and (max-width: 47.9375em) {
    .p-next-button__desc {
      margin-top: 28px;
      font-size: 14px;
      font-size: 0.875rem;
      line-height: 2; } }
  @media print, screen and (min-width: 48em) {
    .p-next-button__desc {
      margin-top: 28px;
      font-size: 18px;
      font-size: 1.125rem;
      line-height: 1.7; } }

.p-next-button__link {
  grid-area: nextLink;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

@media only screen and (max-width: 47.9375em){
    .p-next-button__icon {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-next-button__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
    .p-next-button__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; }
    .p-next-button__link {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3; } }

@media print, screen and (min-width: 48em){
    .p-next-button__icon {
    -ms-grid-row: 1;
    -ms-grid-row-span: 5;
    -ms-grid-column: 1; }
    .p-next-button__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
    .p-next-button__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1; }
    .p-next-button__link {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
    -ms-grid-column-span: 1; } }
  @media only screen and (max-width: 47.9375em) {
    .p-next-button__link {
      margin-top: 10px; } }
  @media print, screen and (min-width: 48em) {
    .p-next-button__link {
      margin-top: 20px; } }
  .p-next-button__link li {
    font-weight: bold;
    color: #003953;
    -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
    transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s; }
    @media only screen and (max-width: 47.9375em) {
      .p-next-button__link li {
        margin-right: 20px;
        font-size: 14px;
        font-size: 0.875rem;
        line-height: 1.4; } }
    @media print, screen and (min-width: 48em) {
      .p-next-button__link li {
        margin-right: 34px;
        font-size: 18px;
        font-size: 1.125rem;
        line-height: 1.6; } }
  .p-next-button__link a {
    color: #003953; }
    @media print, screen and (min-width: 64em) {
      .p-next-button__link a:hover {
        color: #00a0e9; } }
  @media print, screen and (min-width: 64em) {
    a:hover .p-next-button__link li {
      color: #00a0e9; } }

.p-local-menu {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  position: relative;
  padding-right: 4.267%;
  padding-left: 4.267%; }
  @media only screen and (max-width: 47.9375em) {
    .p-local-menu {
      margin-top: 80px; } }
  @media print, screen and (min-width: 48em) {
    .p-local-menu {
      margin-top: 110px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-cta + .p-local-menu {
      margin-top: 120px; } }

.p-local-menu__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 100%; }
  @media print, screen and (min-width: 48em) {
    .p-local-menu__inner {
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto; } }

.p-local-menu__head {
  font-weight: bold;
  text-align: center;
  line-height: 1.4; }
  @media only screen and (max-width: 47.9375em) {
    .p-local-menu__head {
      font-size: 20px;
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 48em) {
    .p-local-menu__head {
      font-size: 24px;
      font-size: 1.5rem; } }
  @media print, screen and (min-width: 48em) {
    .p-local-menu__head br {
      display: none; } }

@media only screen and (max-width: 47.9375em) {
  .p-local-menu__list {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-local-menu__list {
    margin-top: 32px; } }

.p-disc-number {
  counter-reset: number; }

.p-disc-number__item {
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-disc-number__item {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-disc-number__item {
      margin-top: 80px;
      padding-left: 110px; } }
  .p-disc-number__item:first-child {
    margin-top: 0; }
  .p-disc-number__item:before, .p-disc-number__item:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    position: absolute;
    border-radius: 50%;
    content: ''; }
  .p-disc-number__item:before {
    left: 0;
    background: -webkit-gradient(linear, left top, left bottom, from(#00a0e9), to(#575cff));
    background: -webkit-linear-gradient(top, #00a0e9 0%, #575cff 100%);
    background: linear-gradient(to bottom, #00a0e9 0%, #575cff 100%); }
    @media only screen and (max-width: 47.9375em) {
      .p-disc-number__item:before {
        top: 4px;
        width: 40px;
        height: 40px; } }
    @media print, screen and (min-width: 48em) {
      .p-disc-number__item:before {
        top: 8px;
        width: 80px;
        height: 80px; } }
  .p-disc-number__item:after {
    left: 2px;
    background-color: #fff;
    font-family: montserrat, sans-serif;
    -webkit-font-feature-settings: 'palt' 1;
            font-feature-settings: 'palt' 1;
    counter-increment: number;
    content: "0" counter(number);
    font-weight: bold;
    color: #00a0e9;
    text-align: center; }
    @media only screen and (max-width: 47.9375em) {
      .p-disc-number__item:after {
        top: 6px;
        width: 36px;
        height: 36px;
        padding-top: 1px;
        font-size: 20px;
        font-size: 1.25rem; } }
    @media print, screen and (min-width: 48em) {
      .p-disc-number__item:after {
        top: 10px;
        width: 76px;
        height: 76px;
        padding-top: 9px;
        font-size: 34px;
        font-size: 2.125rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-disc-number__head {
    padding-left: 55px; } }

.p-disc-number__desc {
  font-weight: 400; }
  @media only screen and (max-width: 47.9375em) {
    .p-disc-number__desc {
      margin-top: 10px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 2; } }
  @media print, screen and (min-width: 48em) {
    .p-disc-number__desc {
      margin-top: 16px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .p-disc-number__desc {
      font-size: 18px;
      font-size: 1.125rem; } }

.p-disc-number__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media only screen and (max-width: 47.9375em) {
    .p-disc-number__link {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-disc-number__link {
      margin-top: 20px; } }
  @media print, screen and (min-width: 64em) {
    .p-disc-number__link {
      margin-top: 40px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-disc-number__link li {
      margin-top: 8px;
      margin-right: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-disc-number__link li {
      margin-right: 34px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-disc-number__link li:first-child {
      margin-top: 0; } }
  .p-disc-number__link a {
    display: block;
    color: #003953;
    font-weight: bold; }
    @media print, screen and (min-width: 48em) {
      .p-disc-number__link a {
        font-size: 16px;
        font-size: 1rem; } }
    @media print, screen and (min-width: 64em) {
      .p-disc-number__link a {
        font-size: 18px;
        font-size: 1.125rem; } }
    @media print, screen and (min-width: 64em) {
      .p-disc-number__link a:hover {
        color: #00a0e9; } }

.p-schedule__item {
  display: -ms-grid;
  display: grid;
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-schedule__item {
      -ms-grid-rows: auto auto;
      -ms-grid-columns: 80px 1fr;
          grid-template: 'scheduleTime scheduleHead' 'scheduleTime scheduleDesc' auto / 80px 1fr; } }
  @media print, screen and (min-width: 48em) {
    .p-schedule__item {
      -ms-grid-rows: auto auto;
      -ms-grid-columns: 120px 1fr;
          grid-template: 'scheduleTime scheduleHead' 'scheduleTime scheduleDesc' auto / 120px 1fr; } }
  .p-schedule__item:before {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    position: absolute;
    top: 10px;
    width: 2px;
    height: 100%;
    background-color: #d9ebf3;
    content: ''; }
    @media only screen and (max-width: 47.9375em) {
      .p-schedule__item:before {
        left: 60px; } }
    @media print, screen and (min-width: 48em) {
      .p-schedule__item:before {
        left: 91px; } }
  .p-schedule__item:last-child:before {
    display: none; }
  .p-schedule__item:last-child .p-schedule__desc {
    padding-bottom: 0; }

.p-schedule__time {
  grid-area: scheduleTime;
  position: relative;
  font-family: montserrat, sans-serif;
  -webkit-font-feature-settings: 'palt' 1;
          font-feature-settings: 'palt' 1;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-schedule__time {
      font-size: 18px;
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 48em) {
    .p-schedule__time {
      font-size: 20px;
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 64em) {
    .p-schedule__time {
      font-size: 22px;
      font-size: 1.375rem; } }
  .p-schedule__time:before, .p-schedule__time:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    position: absolute;
    border-radius: 50%;
    content: ''; }
  .p-schedule__time:before {
    top: 10px;
    background: -webkit-gradient(linear, left top, left bottom, from(#00a0e9), to(#575cff));
    background: -webkit-linear-gradient(top, #00a0e9 0%, #575cff 100%);
    background: linear-gradient(to bottom, #00a0e9 0%, #575cff 100%); }
    @media only screen and (max-width: 47.9375em) {
      .p-schedule__time:before {
        right: 13px;
        width: 12px;
        height: 12px; } }
    @media print, screen and (min-width: 48em) {
      .p-schedule__time:before {
        right: 21px;
        width: 14px;
        height: 14px; } }
  .p-schedule__time:after {
    background-color: #fff; }
    @media only screen and (max-width: 47.9375em) {
      .p-schedule__time:after {
        top: 13px;
        right: 16px;
        width: 6px;
        height: 6px; } }
    @media print, screen and (min-width: 48em) {
      .p-schedule__time:after {
        top: 14px;
        right: 25px;
        width: 6px;
        height: 6px; } }

.p-schedule__head {
  grid-area: scheduleHead;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-schedule__head {
      font-size: 18px;
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    .p-schedule__head {
      font-size: 20px;
      font-size: 1.25rem; } }

.p-schedule__desc {
  grid-area: scheduleDesc;
  font-weight: 400; }

@media only screen and (max-width: 47.9375em){
    .p-schedule__time {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1; }
    .p-schedule__head {
    -ms-grid-row: 1;
    -ms-grid-column: 2; }
    .p-schedule__desc {
    -ms-grid-row: 2;
    -ms-grid-column: 2; } }

@media print, screen and (min-width: 48em){
    .p-schedule__time {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1; }
    .p-schedule__head {
    -ms-grid-row: 1;
    -ms-grid-column: 2; }
    .p-schedule__desc {
    -ms-grid-row: 2;
    -ms-grid-column: 2; } }
  @media only screen and (max-width: 47.9375em) {
    .p-schedule__desc {
      margin-top: 12px;
      font-size: 14px;
      font-size: 0.875rem;
      padding-bottom: 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-schedule__desc {
      margin-top: 12px;
      padding-bottom: 58px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .p-schedule__desc {
      font-size: 18px;
      font-size: 1.125rem; } }

.p-voice__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  @media only screen and (max-width: 47.9375em) {
    .p-voice__item {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-voice__item {
      margin-top: 50px; } }
  @media print, screen and (min-width: 64em) {
    .p-voice__item {
      gap: 0 40px; } }
  .p-voice__item:first-child {
    margin-top: 0; }

.p-voice__person {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-voice__person {
      width: 50px;
      margin-right: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-voice__person {
      width: 80px;
      margin-right: 30px; } }
  @media print, screen and (min-width: 64em) {
    .p-voice__person {
      width: 100px;
      margin-right: 40px; } }

.p-voice__img img {
  display: block;
  width: 100%; }

.p-voice__name {
  display: block;
  font-weight: bold;
  text-align: center;
  white-space: nowrap; }
  @media only screen and (max-width: 47.9375em) {
    .p-voice__name {
      font-size: 12px;
      font-size: 0.75rem;
      margin-top: 12px; } }
  @media print, screen and (min-width: 48em) {
    .p-voice__name {
      font-size: 14px;
      font-size: 0.875rem;
      margin-top: 6px; } }

.p-voice__job {
  display: block;
  text-align: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-voice__job {
      font-size: 12px;
      font-size: 0.75rem; } }
  @media print, screen and (min-width: 48em) {
    .p-voice__job {
      font-size: 14px;
      font-size: 0.875rem;
      margin-top: -2px; } }

.p-voice__balloon {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
  background-color: #f2fafe; }
  @media only screen and (max-width: 47.9375em) {
    .p-voice__balloon {
      padding-top: 25px;
      padding-bottom: 27px;
      padding-right: 16px;
      padding-left: 16px;
      border-radius: 0 30px 30px 30px; } }
  @media print, screen and (min-width: 48em) {
    .p-voice__balloon {
      padding-top: 33px;
      padding-bottom: 45px;
      padding-right: 30px;
      padding-left: 30px;
      border-radius: 0 80px 80px 80px; } }
  @media print, screen and (min-width: 64em) {
    .p-voice__balloon {
      padding-right: 50px;
      padding-left: 50px; } }
  .p-voice__balloon:before {
    display: block;
    position: absolute;
    z-index: 0;
    top: 0;
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 100% auto;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032.999%2037.94%22%3E\a%20%20%20%20%20%20%3Cpath%20d%3D%22M33%2037.94l-6.22-7.151a51.371%2051.371%200%2000-10.55-18.3C11.23%206.736%205.575%202.428.306.352L0%200h33v37.94z%22%20fill%3D%22%23f2fafe%22%2F%3E\a%20%20%20%20%3C%2Fsvg%3E");
    content: ''; }
    @media only screen and (max-width: 47.9375em) {
      .p-voice__balloon:before {
        left: -17px;
        width: 28px;
        height: 50px; } }
    @media print, screen and (min-width: 48em) {
      .p-voice__balloon:before {
        left: -21px;
        width: 33px;
        height: 38px; } }

.p-voice__head {
  display: block;
  font-weight: bold;
  line-height: 1.5; }
  @media only screen and (max-width: 47.9375em) {
    .p-voice__head {
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-voice__head {
      font-size: 18px;
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    .p-voice__head {
      font-size: 20px;
      font-size: 1.25rem; } }

.p-voice__desc {
  display: block; }
  @media only screen and (max-width: 47.9375em) {
    .p-voice__desc {
      font-size: 16px;
      font-size: 1rem;
      margin-top: 8px;
      line-height: 1.5; } }
  @media print, screen and (min-width: 48em) {
    .p-voice__desc {
      font-size: 16px;
      font-size: 1rem;
      margin-top: 18px; } }

/* ==========================================================================
* モディファイア
========================================================================== */
@media print, screen and (min-width: 48em) {
  .p-voice.-small .p-voice__item {
    margin-top: 30px; } }

.p-voice.-small .p-voice__item:first-child {
  margin-top: 0; }

@media only screen and (max-width: 47.9375em) {
  .p-voice.-small .p-voice__person {
    width: 40px; } }

@media print, screen and (min-width: 48em) {
  .p-voice.-small .p-voice__person {
    width: 50px;
    margin-right: 40px; } }

@media print, screen and (min-width: 48em) {
  .p-voice.-small .p-voice__balloon {
    padding-top: 19px;
    padding-bottom: 22px;
    border-radius: 0 60px 60px 60px; } }

@media print, screen and (min-width: 64em) {
  .p-voice.-small .p-voice__balloon {
    padding-right: 42px;
    padding-left: 42px; } }

.p-voice.-small .p-voice__desc {
  margin-top: 0; }

@media only screen and (max-width: 47.9375em) {
  .p-voice.-small .p-voice__head + .p-voice__desc {
    margin-top: 8px; } }

@media print, screen and (min-width: 48em) {
  .p-voice.-small .p-voice__head + .p-voice__desc {
    margin-top: 18px; } }

.p-person {
  display: -ms-grid;
  display: grid; }
  @media only screen and (max-width: 47.9375em) {
    .p-person {
      -ms-grid-rows: auto auto auto auto 1fr;
      -ms-grid-columns: 100%;
          grid-template: 'personImg' auto 'personHead' auto 'personDesc' auto 'personTable' auto 'personAnchor' 1fr / 100%; } }
  @media print, screen and (min-width: 48em) {
    .p-person {
      -ms-grid-rows: auto 0 auto 0 auto 0 1fr;
      -ms-grid-columns: 1fr 20px 50%;
          grid-template: 'personHead personImg' auto 'personDesc personImg' auto 'personTable personImg' auto 'personAnchor personImg' 1fr / 1fr 50%;
      gap: 0 20px; } }
  @media print, screen and (min-width: 64em) {
    .p-person {
      gap: 0 60px; } }

.p-person__img {
  grid-area: personImg; }
  .p-person__img img {
    display: block;
    width: 100%;
    border-radius: 10px; }

@media only screen and (max-width: 47.9375em) {
  .p-person__head {
    margin-top: 34px; } }

.p-person__name {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-person__name {
      font-size: 24px;
      font-size: 1.5rem; } }
  @media print, screen and (min-width: 48em) {
    .p-person__name {
      font-size: 34px;
      font-size: 2.125rem; } }

.p-person__job {
  display: block;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-person__job {
      margin-top: 4px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-person__job {
      font-size: 18px;
      font-size: 1.125rem; } }

.p-person__desc {
  grid-area: personDesc;
  display: block;
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all; }
  @media only screen and (max-width: 47.9375em) {
    .p-person__desc {
      margin-top: 16px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.55; } }
  @media print, screen and (min-width: 48em) {
    .p-person__desc {
      margin-top: 20px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.85; } }
  @media print, screen and (min-width: 64em) {
    .p-person__desc {
      font-size: 18px;
      font-size: 1.125rem; } }

.p-person__table {
  grid-area: personTable; }
  @media only screen and (max-width: 47.9375em) {
    .p-person__table {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-person__table {
      margin-top: 42px; } }

.p-person__anchor {
  grid-area: personAnchor; }

@media only screen and (max-width: 47.9375em){
    .p-person__img {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-person__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .p-person__table {
    -ms-grid-row: 4;
    -ms-grid-column: 1; }
    .p-person__anchor {
    -ms-grid-row: 5;
    -ms-grid-column: 1; } }

@media print, screen and (min-width: 48em){
    .p-person__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 7;
    -ms-grid-column: 3; }
    .p-person__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .p-person__table {
    -ms-grid-row: 5;
    -ms-grid-column: 1; }
    .p-person__anchor {
    -ms-grid-row: 7;
    -ms-grid-column: 1; } }
  @media only screen and (max-width: 47.9375em) {
    .p-person__anchor {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      margin-top: 24px;
      margin-left: -16px; } }
  @media print, screen and (min-width: 48em) {
    .p-person__anchor {
      margin-top: 30px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-person__anchor li {
      position: relative;
      margin-left: 16px;
      width: calc(50% - 16px); } }
  @media print, screen and (min-width: 48em) {
    .p-person__anchor li {
      margin-top: 12px; } }
  .p-person__anchor li:first-child {
    margin-top: 0; }
  .p-person__anchor a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
    color: #003953; }
    @media only screen and (max-width: 47.9375em) {
      .p-person__anchor a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        position: relative;
        height: 100%;
        padding-top: 12px;
        padding-bottom: 12px;
        padding-right: 16px;
        line-height: 1.4; } }
    @media only screen and (max-width: 47.9375em) {
      .p-person__anchor a:after {
        display: block;
        position: absolute;
        z-index: 10;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: #d9ebf3;
        -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
        transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
        content: ''; } }
    @media only screen and (max-width: 47.9375em) {
      .p-person__anchor a .c-arrow.-bottom {
        display: block;
        position: absolute;
        right: 0;
        top: 50%;
        -webkit-transform: translate(0, -50%);
                transform: translate(0, -50%);
        width: 10px;
        height: 10px;
        -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
        transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
        transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
        .p-person__anchor a .c-arrow.-bottom:before, .p-person__anchor a .c-arrow.-bottom:after {
          display: block;
          position: absolute;
          content: ''; }
        .p-person__anchor a .c-arrow.-bottom:before {
          top: 0;
          left: 50%;
          -webkit-transform: translate(-50%, 0);
                  transform: translate(-50%, 0);
          width: 2px;
          height: 100%;
          background-color: #003953;
          -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
          transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
        .p-person__anchor a .c-arrow.-bottom:after {
          bottom: 0;
          left: 50%;
          -webkit-transform: translate(-50%, 0) rotate(45deg);
                  transform: translate(-50%, 0) rotate(45deg);
          width: 4px;
          height: 4px;
          border-style: solid;
          border-width: 0 2px 2px 0;
          border-color: #003953;
          -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
          transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; } }
  @media only screen and (max-width: 47.9375em) and (min-width: 64em) {
    a:hover .p-person__anchor a .c-arrow.-bottom {
      -webkit-transform: translate(0, calc(-50% + 4px));
              transform: translate(0, calc(-50% + 4px)); } }
  @media only screen and (max-width: 47.9375em) and (min-width: 64em) {
    a:hover .p-person__anchor a .c-arrow.-bottom:before {
      background-color: #00a0e9; } }
  @media only screen and (max-width: 47.9375em) and (min-width: 64em) {
    a:hover .p-person__anchor a .c-arrow.-bottom:after {
      border-color: #00a0e9; } }
    @media print, screen and (min-width: 64em) {
      .p-person__anchor a:hover {
        color: #00a0e9; } }

@media only screen and (max-width: 47.9375em) {
  .p-top-img {
    margin-bottom: 68px; } }

@media print, screen and (min-width: 48em) {
  .p-top-img {
    padding-top: 20px;
    padding-right: 20px;
    padding-left: 20px; } }

.p-top-img img {
  display: block;
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-top-img img {
      border-radius: 10px; } }
  @media print, screen and (min-width: 48em) {
    .p-top-img img {
      border-radius: 20px 20px 0 0; } }

@media print, screen and (min-width: 64em) {
  .p-culture-layout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: -40px; } }

@media print, screen and (min-width: 75em) {
  .p-culture-layout {
    margin-left: -100px; } }

@media only screen and (max-width: 63.9375em) {
  .p-culture-layout__item {
    margin-top: 40px; } }

@media print, screen and (min-width: 64em) {
  .p-culture-layout__item {
    width: calc(50% - 40px);
    margin-top: 68px;
    margin-left: 40px; } }

@media print, screen and (min-width: 75em) {
  .p-culture-layout__item {
    width: calc(50% - 100px);
    margin-left: 100px; } }

@media only screen and (max-width: 63.9375em) {
  .p-culture-layout__item:first-child {
    margin-top: 0; } }

@media print, screen and (min-width: 64em) {
  .p-culture-layout__item:nth-child(-n+2) {
    margin-top: 0; } }

@media print, screen and (min-width: 64em) {
  .p-culture-layout__desc {
    margin-top: 30px; } }

.p-culture-layout__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  @media only screen and (max-width: 63.9375em) {
    .p-culture-layout__img {
      margin-top: 20px; } }
  @media print, screen and (min-width: 64em) {
    .p-culture-layout__img {
      margin-top: 52px; } }
  .p-culture-layout__img img {
    display: block;
    width: 100%; }
    @media only screen and (max-width: 47.9375em) {
      .p-culture-layout__img img {
        max-width: 276px; } }
    @media print, screen and (min-width: 48em) {
      .p-culture-layout__img img {
        max-width: 293px; } }

@media only screen and (max-width: 63.9375em) {
  .p-culture-layout__desc {
    margin-top: 20px; } }

.p-road-map {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  position: relative;
  background: -webkit-gradient(linear, left top, right top, from(rgba(214, 242, 255, 0.5)), color-stop(6.25%, rgba(214, 242, 255, 0.5)), color-stop(26.25%, rgba(177, 221, 255, 0.5)), color-stop(97.5%, rgba(162, 181, 255, 0.5)), to(rgba(162, 181, 255, 0.5)));
  background: -webkit-linear-gradient(left, rgba(214, 242, 255, 0.5) 0%, rgba(214, 242, 255, 0.5) 6.25%, rgba(177, 221, 255, 0.5) 26.25%, rgba(162, 181, 255, 0.5) 97.5%, rgba(162, 181, 255, 0.5) 100%);
  background: linear-gradient(to right, rgba(214, 242, 255, 0.5) 0%, rgba(214, 242, 255, 0.5) 6.25%, rgba(177, 221, 255, 0.5) 26.25%, rgba(162, 181, 255, 0.5) 97.5%, rgba(162, 181, 255, 0.5) 100%); }
  @media only screen and (max-width: 47.9375em) {
    .p-road-map {
      display: none; } }
  @media print, screen and (min-width: 48em) {
    .p-road-map {
      height: 116px; } }
  .browser-is-ie .p-road-map {
    min-height: 0; }
  .p-road-map.-second:before, .p-road-map.-second:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    position: absolute;
    left: 0;
    width: 32px;
    height: 200%;
    border: none;
    background: #fff;
    content: ''; }
  .p-road-map.-second:before {
    bottom: 50%;
    -webkit-transform-origin: bottom right;
            transform-origin: bottom right;
    -webkit-transform: rotate(-24deg);
            transform: rotate(-24deg); }
  .p-road-map.-second:after {
    top: 50%;
    -webkit-transform-origin: top right;
            transform-origin: top right;
    -webkit-transform: rotate(24deg);
            transform: rotate(24deg); }
  .p-road-map.-second .p-road-map__item:last-child:before, .p-road-map.-second .p-road-map__item:last-child:after {
    display: none; }

.p-road-map__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
  z-index: 2;
  width: 100%;
  text-align: center;
  padding-left: 16px; }
  .p-road-map__item:first-child {
    padding-left: 0; }
  .p-road-map__item:last-child {
    padding-left: 0; }
    .p-road-map__item:last-child:before, .p-road-map__item:last-child:after {
      right: -35px;
      height: 200%;
      border: none;
      background: #fff; }
  .p-road-map__item:before, .p-road-map__item:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    position: absolute;
    right: -20px;
    width: 32px;
    height: 56.9%;
    border-right: solid 2px #fff;
    content: ''; }
  .p-road-map__item:before {
    bottom: 50%;
    -webkit-transform-origin: bottom right;
            transform-origin: bottom right;
    -webkit-transform: rotate(-24deg);
            transform: rotate(-24deg); }
  .p-road-map__item:after {
    top: 50%;
    -webkit-transform-origin: top right;
            transform-origin: top right;
    -webkit-transform: rotate(24deg);
            transform: rotate(24deg); }
  .browser-is-ie .p-road-map__item {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
    @media only screen and (max-width: 47.9375em) {
      .browser-is-ie .p-road-map__item {
        padding-top: 13px;
        padding-bottom: 11px; } }
    @media print, screen and (min-width: 48em) {
      .browser-is-ie .p-road-map__item {
        padding-top: 12px;
        padding-bottom: 14px; } }

.p-road-map__head {
  display: block;
  font-family: montserrat, sans-serif;
  -webkit-font-feature-settings: 'palt' 1;
          font-feature-settings: 'palt' 1;
  font-weight: bold;
  color: #00a0e9; }
  @media only screen and (max-width: 47.9375em) {
    .p-road-map__head {
      font-size: 10px;
      font-size: 0.625rem; } }
  @media print, screen and (min-width: 48em) {
    .p-road-map__head {
      margin-top: 20px;
      font-size: 16px;
      font-size: 1rem; } }
  .p-road-map__head span {
    margin-left: 4px; }
    @media only screen and (max-width: 47.9375em) {
      .p-road-map__head span {
        font-size: 12px;
        font-size: 0.75rem; } }
    @media print, screen and (min-width: 48em) {
      .p-road-map__head span {
        font-size: 18px;
        font-size: 1.125rem; } }

.p-road-map__desc {
  display: block;
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold;
  line-height: 1.4; }
  @media only screen and (max-width: 47.9375em) {
    .p-road-map__desc {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-road-map__desc {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-road-map__desc.browser-is-ie,
  .browser-is-ie .p-road-map__desc {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .p-road-map__desc {
      margin-top: -2px;
      font-size: 10px;
      font-size: 0.625rem; } }
  @media print, screen and (min-width: 48em) {
    .p-road-map__desc {
      margin-top: 8px;
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 64em) {
    .p-road-map__desc {
      font-size: 16px;
      font-size: 1rem; } }
  .p-road-map__desc span {
    display: block;
    font-weight: 500; }
    @media only screen and (max-width: 47.9375em) {
      .p-road-map__desc span {
        margin-top: 4px;
        font-size: 9px;
        font-size: 0.5625rem; } }
    @media print, screen and (min-width: 48em) {
      .p-road-map__desc span {
        margin-top: 4px;
        font-size: 13px;
        font-size: 0.8125rem; } }

.p-logo-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -3px; }
  @media only screen and (max-width: 47.9375em) {
    .p-logo-list {
      margin-left: -20px; } }

.p-logo-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 3px; }
  @media only screen and (max-width: 47.9375em) {
    .p-logo-list__item {
      width: calc(20% - 20px);
      margin-left: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-logo-list__item {
      width: 20%; } }
  @media print, screen and (min-width: 64em) {
    .p-logo-list__item {
      width: 14.28%; } }
  .p-logo-list__item img {
    display: block;
    max-width: 100%; }

.p-faq__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  overflow: hidden; }
  @media only screen and (max-width: 47.9375em) {
    .p-faq__item {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-faq__item {
      margin-top: 60px; } }
  @media print, screen and (min-width: 64em) {
    .p-faq__item {
      margin-top: 82px; } }
  .p-faq__item:first-child {
    margin-top: 0; }

.p-faq__icon {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%); }
  @media only screen and (max-width: 47.9375em) {
    .p-faq__icon {
      width: 28px;
      height: 28px; } }
  @media print, screen and (min-width: 48em) {
    .p-faq__icon {
      width: 36px;
      height: 36px; } }
  .p-faq__icon:before, .p-faq__icon:after {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    height: 2px;
    background-color: #003953;
    content: ''; }
    @media only screen and (max-width: 47.9375em) {
      .p-faq__icon:before, .p-faq__icon:after {
        width: 12px; } }
    @media print, screen and (min-width: 48em) {
      .p-faq__icon:before, .p-faq__icon:after {
        width: 16px; } }
  .p-faq__icon:after {
    -webkit-transition: -webkit-transform linear 0.15s;
    transition: -webkit-transform linear 0.15s;
    transition: transform linear 0.15s;
    transition: transform linear 0.15s, -webkit-transform linear 0.15s; }

/* -----------------------------------------------------------------
/* 質問と回答 共通
----------------------------------------------------------------- */
/* -----------------------------------------------------------------
/* 質問
----------------------------------------------------------------- */
.p-faq__question {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  display: block;
  width: 100%;
  background-color: transparent;
  border: none;
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold;
  text-align: left; }
  @media only screen and (max-width: 47.9375em) {
    .p-faq__question {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-faq__question {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-faq__question.browser-is-ie,
  .browser-is-ie .p-faq__question {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .p-faq__question {
      padding-bottom: 13px;
      padding-left: 32px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.8; } }
  @media print, screen and (min-width: 48em) {
    .p-faq__question {
      padding-bottom: 30px;
      padding-left: 46px;
      font-size: 18px;
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    .p-faq__question {
      font-size: 24px;
      font-size: 1.5rem; } }
  .p-faq__question:before {
    display: block;
    position: absolute;
    width: 25px;
    font-family: montserrat, sans-serif;
    -webkit-font-feature-settings: 'palt' 1;
            font-feature-settings: 'palt' 1;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    content: 'Q';
    color: #575cff;
    background: -webkit-gradient(linear, left top, right top, from(#00a0e9), to(#575cff));
    background: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 100%);
    background: linear-gradient(to right, #00a0e9 0%, #575cff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; }
    @media only screen and (max-width: 47.9375em) {
      .p-faq__question:before {
        font-size: 24px;
        font-size: 1.5rem; } }
    @media print, screen and (min-width: 48em) {
      .p-faq__question:before {
        font-size: 30px;
        font-size: 1.875rem; } }
    @media only screen and (max-width: 47.9375em) {
      .p-faq__question:before {
        top: 1px;
        left: 0; } }
    @media print, screen and (min-width: 48em) {
      .p-faq__question:before {
        top: -2px;
        left: 0; } }
    @media print, screen and (min-width: 64em) {
      .p-faq__question:before {
        top: 3px; } }
    .browser-is-ie .p-faq__question:before {
      top: -4px;
      background: none; }
  .p-faq__question:focus {
    outline: none; }

button.p-faq__question {
  cursor: pointer; }

/* -----------------------------------------------------------------
/* 回答
----------------------------------------------------------------- */
.p-faq__answer {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  -webkit-transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: height cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  .p-faq__answer:before {
    display: block;
    position: absolute;
    width: 25px;
    font-family: montserrat, sans-serif;
    -webkit-font-feature-settings: 'palt' 1;
            font-feature-settings: 'palt' 1;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    color: #bfd0d8;
    content: 'A'; }
    @media only screen and (max-width: 47.9375em) {
      .p-faq__answer:before {
        font-size: 24px;
        font-size: 1.5rem; } }
    @media print, screen and (min-width: 48em) {
      .p-faq__answer:before {
        font-size: 30px;
        font-size: 1.875rem; } }
    @media only screen and (max-width: 47.9375em) {
      .p-faq__answer:before {
        top: -1px;
        left: 0px; } }
    @media print, screen and (min-width: 48em) {
      .p-faq__answer:before {
        top: 0px;
        left: 1px; } }
    @media print, screen and (min-width: 64em) {
      .p-faq__answer:before {
        top: 4px; } }
    .browser-is-ie .p-faq__answer:before {
      top: 0; }

.p-faq__inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-faq__inner {
      padding-left: 32px; } }
  @media print, screen and (min-width: 48em) {
    .p-faq__inner {
      padding-top: 0;
      padding-left: 46px; } }
  .p-faq__inner > p {
    word-break: break-all; }

.p-faq__link {
  display: block; }
  @media only screen and (max-width: 47.9375em) {
    .p-faq__link {
      margin-top: 4px; } }
  @media print, screen and (min-width: 48em) {
    .p-faq__link {
      margin-top: 2px; } }
  .p-faq__link a {
    text-decoration: underline; }

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.p-faq {
  /* アコーディオン使用時 */ }
  @media only screen and (max-width: 47.9375em) {
    .p-faq.-accordion .p-faq__question {
      padding-right: 28px; } }
  @media print, screen and (min-width: 48em) {
    .p-faq.-accordion .p-faq__question {
      padding-right: 36px; } }
  .p-faq.-close .p-faq__icon:after {
    -webkit-transform: translate(-50%, -50%) rotate(-90deg);
            transform: translate(-50%, -50%) rotate(-90deg); }
  .p-faq.-close .p-faq__answer {
    height: 0; }

.p-faq-list.-noborder > li:last-child,
.p-faq-list.-feature > li:last-child {
  border-width: 1px 0 0 0; }
  .p-faq-list.-noborder > li:last-child .p-faq__inner,
  .p-faq-list.-feature > li:last-child .p-faq__inner {
    padding-bottom: 0; }

.p-check-table__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-check-table__item {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-check-table__item {
      margin-top: 24px; } }
  .p-check-table__item:first-child {
    margin-top: 0; }

.p-check-table__head {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-check-table__head {
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-check-table__head {
      font-size: 18px;
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    .p-check-table__head {
      font-size: 20px;
      font-size: 1.25rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-check-table__desc {
    margin-top: 6px; } }

@media print, screen and (min-width: 48em) {
  .p-check-table__desc {
    margin-top: 13px; } }

.p-button-set {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-width: 800px;
  margin: 0 auto;
  border-style: solid;
  border-width: 1px 0 1px 0;
  border-color: #d9ebf3; }
  @media only screen and (max-width: 47.9375em) {
    .p-button-set {
      padding-top: 20px;
      padding-bottom: 20px; } }
  @media print, screen and (min-width: 48em) {
    .p-button-set {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      padding-top: 25px;
      padding-bottom: 30px; } }

.p-button-set__text {
  display: block;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-button-set__text {
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.4;
      text-align: center; } }
  @media print, screen and (min-width: 48em) {
    .p-button-set__text {
      font-size: 18px;
      font-size: 1.125rem;
      padding-right: 20px; } }
  @media print, screen and (min-width: 64em) {
    .p-button-set__text {
      font-size: 20px;
      font-size: 1.25rem; } }

.p-button-set__button {
  width: 100%;
  max-width: 260px; }
  @media only screen and (max-width: 47.9375em) {
    .p-button-set__button {
      margin-top: 10px;
      margin-right: auto;
      margin-left: auto; } }

.p-big-profile__item {
  display: -ms-grid;
  display: grid; }
  @media only screen and (max-width: 47.9375em) {
    .p-big-profile__item {
      -ms-grid-rows: auto 0 auto 0 1fr;
      -ms-grid-columns: 100%;
          grid-template: 'bigProfHead' auto 'bigProfImg' auto 'bigProfDesc' 1fr / 100%;
      gap: 0;
      margin-top: 40px; } }
  @media print, screen and (min-width: 48em) {
    .p-big-profile__item {
      -ms-grid-rows: auto 0 1fr;
      -ms-grid-columns: 27.1% 20px 1fr;
          grid-template: 'bigProfImg bigProfHead' auto 'bigProfImg bigProfDesc' 1fr / 27.1% 1fr;
      gap: 0 20px;
      margin-top: 40px; } }
  @media print, screen and (min-width: 64em) {
    .p-big-profile__item {
      gap: 0 50px;
      margin-top: 80px; } }
  .p-big-profile__item:first-child {
    margin-top: 0; }

.p-big-profile__img {
  grid-area: bigProfImg; }
  @media only screen and (max-width: 47.9375em) {
    .p-big-profile__img {
      margin-top: 16px; } }
  .p-big-profile__img img {
    display: block;
    width: 100%;
    border-radius: 10px; }
    @media print, screen and (min-width: 48em) {
      .p-big-profile__img img {
        max-width: 260px; } }

.p-big-profile__head {
  grid-area: bigProfHead; }

.p-big-profile__job {
  display: block;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-big-profile__job {
      font-size: 12px;
      font-size: 0.75rem; } }
  @media print, screen and (min-width: 48em) {
    .p-big-profile__job {
      font-size: 16px;
      font-size: 1rem; } }

.p-big-profile__name {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-big-profile__name {
      font-size: 20px;
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 48em) {
    .p-big-profile__name {
      margin-top: 8px;
      font-size: 20px;
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 64em) {
    .p-big-profile__name {
      font-size: 24px;
      font-size: 1.5rem; } }

.p-big-profile__desc {
  grid-area: bigProfDesc;
  display: block;
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all; }

@media only screen and (max-width: 47.9375em){
    .p-big-profile__img {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
    .p-big-profile__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-big-profile__desc {
    -ms-grid-row: 5;
    -ms-grid-column: 1; } }

@media print, screen and (min-width: 48em){
    .p-big-profile__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1; }
    .p-big-profile__head {
    -ms-grid-row: 1;
    -ms-grid-column: 3; }
    .p-big-profile__desc {
    -ms-grid-row: 3;
    -ms-grid-column: 3; } }
  @media only screen and (max-width: 47.9375em) {
    .p-big-profile__desc {
      margin-top: 16px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.55; } }
  @media print, screen and (min-width: 48em) {
    .p-big-profile__desc {
      margin-top: 32px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.85; } }
  @media print, screen and (min-width: 64em) {
    .p-big-profile__desc {
      font-size: 18px;
      font-size: 1.125rem; } }

.p-member {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media only screen and (max-width: 47.9375em) {
    .p-member {
      margin-top: -20px;
      margin-left: -20px; } }
  @media print, screen and (min-width: 48em) {
    .p-member {
      margin-top: -20px;
      margin-left: -20px; } }
  @media print, screen and (min-width: 64em) {
    .p-member {
      margin-left: -32px; } }
  @media print, screen and (min-width: 75em) {
    .p-member {
      margin-left: -48px; } }

@media only screen and (max-width: 47.9375em) {
  .p-member__item {
    width: 160px;
    margin-top: 20px;
    margin-left: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-member__item {
    width: calc(25% - 20px);
    margin-top: 20px;
    margin-left: 20px; } }

@media print, screen and (min-width: 64em) {
  .p-member__item {
    width: calc(20% - 32px);
    margin-left: 32px; } }

@media print, screen and (min-width: 75em) {
  .p-member__item {
    width: calc(16.66% - 48px);
    margin-left: 48px; } }

.p-member__item img {
  display: block;
  width: 100%;
  border-radius: 10px; }

.p-member__item span {
  display: block;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-member__item span {
      margin-top: 8px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-member__item span {
      margin-top: 8px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .p-member__item span {
      font-size: 18px;
      font-size: 1.125rem; } }

/* コンテンツ側
----------------------------------------------------------------- */
.p-sitemap__large a {
  color: #fff;
  font-weight: 600;
  font-size: 15px;
  font-size: 0.9375rem; }

@media only screen and (max-width: 47.9375em) {
  .p-sitemap__blocks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 11px; } }

.p-sitemap__block {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media only screen and (max-width: 47.9375em) {
    .p-sitemap__block {
      width: 50%;
      margin-top: 4px; } }

@media print, screen and (min-width: 48em) {
  .p-sitemap__bold {
    margin-top: 14px; } }

.p-sitemap__bold:first-child {
  margin-top: 0; }

.p-sitemap__bold a {
  color: #fff; }
  @media only screen and (max-width: 47.9375em) {
    .p-sitemap__bold a {
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-sitemap__bold a {
      font-weight: 500;
      font-size: 13px;
      font-size: 0.8125rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-sitemap__list {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .p-sitemap__list {
    margin-top: 7px; } }

@media print, screen and (min-width: 48em) {
  .p-sitemap__link {
    margin-top: 2px;
    line-height: 1.4; } }

@media print, screen and (min-width: 48em) {
  .p-sitemap__link a {
    color: #fff;
    font-size: 11px;
    font-size: 0.6875rem; } }

/* フォーム完了画面
----------------------------------------------------------------- */
.p-sitemap.-form {
  border-top: solid 1px #D9EBF3; }
  @media only screen and (max-width: 47.9375em) {
    .p-sitemap.-form {
      margin-top: 40px;
      padding-top: 40px; } }
  @media print, screen and (min-width: 48em) {
    .p-sitemap.-form {
      margin-top: 92px;
      padding-top: 84px; } }
  .p-sitemap.-form .p-sitemap__large a {
    color: #003953; }
    @media print, screen and (min-width: 64em) {
      .p-sitemap.-form .p-sitemap__large a:hover {
        color: #3EB8EF; } }
  .p-sitemap.-form .p-sitemap__bold a {
    font-weight: bold;
    color: #003953; }
    @media print, screen and (min-width: 64em) {
      .p-sitemap.-form .p-sitemap__bold a:hover {
        color: #3EB8EF; } }
  @media print, screen and (min-width: 48em) {
    .p-sitemap.-form .p-sitemap__link a {
      color: #003953; } }
  @media print, screen and (min-width: 64em) {
    .p-sitemap.-form .p-sitemap__link a:hover {
      color: #3EB8EF; } }

/* フォーム完了画面（エントリー）
----------------------------------------------------------------- */
@media print, screen and (min-width: 48em) {
  .p-sitemap.-recruit .p-sitemap__blocks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: -15px; } }

@media print, screen and (min-width: 48em) {
  .p-sitemap.-recruit .p-sitemap__block {
    width: 25%;
    margin-top: 50px; } }

/* フォーム完了画面（お問い合わせ、メディア登録申請依頼）
----------------------------------------------------------------- */
.p-sitemap.-corp .p-sitemap__blocks {
  display: -ms-grid;
  display: grid;
  gap: 0; }
  @media only screen and (max-width: 47.9375em) {
    .p-sitemap.-corp .p-sitemap__blocks {
      -ms-grid-rows: auto 1fr;
      -ms-grid-columns: 50% 50%;
          grid-template: 'sitemapHome sitemapRecruit' auto 'sitemapBusiness sitemapAbout' 1fr / 50% 50%; } }
  @media print, screen and (min-width: 48em) {
    .p-sitemap.-corp .p-sitemap__blocks {
      -ms-grid-rows: auto 1fr;
      -ms-grid-columns: 33.33% 33.33% 33.33%;
          grid-template: 'sitemapHome sitemapBusiness sitemapAbout' auto 'sitemapRecruit sitemapBusiness sitemapAbout' 1fr / 33.33% 33.33% 33.33%;
      margin-top: -15px; } }

@media only screen and (max-width: 47.9375em) {
  .p-sitemap.-corp .p-sitemap__block {
    width: 100%; } }

.p-sitemap.-corp .p-sitemap__block:nth-child(1) {
  grid-area: sitemapHome; }

.p-sitemap.-corp .p-sitemap__block:nth-child(2) {
  grid-area: sitemapRecruit; }
  @media print, screen and (min-width: 48em) {
    .p-sitemap.-corp .p-sitemap__block:nth-child(2) {
      margin-top: 25px; } }

.p-sitemap.-corp .p-sitemap__block:nth-child(3) {
  grid-area: sitemapBusiness; }

.p-sitemap.-corp .p-sitemap__block:nth-child(4) {
  grid-area: sitemapAbout; }

@media only screen and (max-width: 47.9375em){
    .p-sitemap.-corp .p-sitemap__block:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-sitemap.-corp .p-sitemap__block:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2; }
    .p-sitemap.-corp .p-sitemap__block:nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
    .p-sitemap.-corp .p-sitemap__block:nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2; } }

@media print, screen and (min-width: 48em){
    .p-sitemap.-corp .p-sitemap__block:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
    .p-sitemap.-corp .p-sitemap__block:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
    .p-sitemap.-corp .p-sitemap__block:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2; }
    .p-sitemap.-corp .p-sitemap__block:nth-child(4) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3; } }

.p-feature-layout__col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature-layout__col {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  @media print, screen and (min-width: 48em) {
    .p-feature-layout__col {
      padding-top: 73px;
      padding-bottom: 80px;
      border-top: solid 1px #D9EBF3; } }
  .p-feature-layout__col:first-child {
    padding-top: 0; }
    @media print, screen and (min-width: 48em) {
      .p-feature-layout__col:first-child {
        border-top: none; } }
  .p-feature-layout__col:last-child {
    padding-bottom: 0; }

.p-feature-layout__block {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -ms-grid;
  display: grid; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature-layout__block {
      padding-top: 25px;
      padding-bottom: 33px;
      border-top: solid 1px #D9EBF3; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature-layout__col:first-child .p-feature-layout__block:first-child {
    padding-top: 0;
    border-top: none; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature-layout__col:last-child .p-feature-layout__block:last-child {
    padding-bottom: 0; } }

/* Grid並べ替え
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .p-feature-layout__block.-type_1 {
    -ms-grid-rows: auto 1fr auto;
    -ms-grid-columns: 100%;
        grid-template: 'fbHead' auto 'fbImg' 1fr 'fbText' auto / 100%; } }

@media print, screen and (min-width: 48em) {
  .p-feature-layout__block.-type_1 {
    -ms-grid-rows: auto 1fr;
    -ms-grid-columns: 56.25% 1fr;
        grid-template: 'fbHead fbHead' auto 'fbImg fbText' 1fr / 56.25% 1fr; } }

.p-feature-layout__block.-type_2 {
  -ms-grid-rows: auto 1fr auto;
  -ms-grid-columns: 100%;
      grid-template: 'fbHead' auto 'fbImg' 1fr 'fbText' auto / 100%; }
  @media print, screen and (min-width: 48em) {
    .p-feature-layout__block.-type_2:first-child {
      padding-right: 20px;
      border-right: solid 1px #D9EBF3; } }
  @media print, screen and (min-width: 64em) {
    .p-feature-layout__block.-type_2:first-child {
      padding-right: 40px; } }
  @media print, screen and (min-width: 75em) {
    .p-feature-layout__block.-type_2:first-child {
      padding-right: 70px; } }
  @media print, screen and (min-width: 48em) {
    .p-feature-layout__block.-type_2:last-child {
      padding-left: 20px; } }
  @media print, screen and (min-width: 64em) {
    .p-feature-layout__block.-type_2:last-child {
      padding-left: 40px; } }
  @media print, screen and (min-width: 75em) {
    .p-feature-layout__block.-type_2:last-child {
      padding-left: 70px; } }

.p-feature__head {
  grid-area: fbHead;
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold;
  line-height: 1.5; }

.p-feature-layout__block.-type_2 > .p-feature__head {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature__head {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-feature__head {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-feature__head.browser-is-ie,
  .browser-is-ie .p-feature__head {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature__head {
      font-size: 24px;
      font-size: 1.5rem; } }
  @media print, screen and (min-width: 48em) {
    .p-feature__head {
      margin-bottom: 40px;
      font-size: 26px;
      font-size: 1.625rem; } }

.p-feature__text {
  grid-area: fbText; }

.p-feature-layout__block.-type_2 > .p-feature__text {
  -ms-grid-row: 3;
  -ms-grid-column: 1; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature__text {
      margin-top: 10px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-circuitx .p-feature__text, .p-feature.-job .p-feature__text, .p-feature.-age .p-feature__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-circuitx .p-feature__desc, .p-feature.-job .p-feature__desc, .p-feature.-age .p-feature__desc {
    margin-top: -50px; } }

.p-feature__desc {
  font-weight: 400;
  text-align: justify;
  text-justify: inter-ideograph;
  word-break: break-all; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature__desc {
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.55; } }
  @media print, screen and (min-width: 48em) {
    .p-feature__desc {
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.85; } }
  @media print, screen and (min-width: 64em) {
    .p-feature__desc {
      font-size: 18px;
      font-size: 1.125rem; } }

/* ==========================================================================
* Img
========================================================================== */
.p-feature__img {
  grid-area: fbImg;
  display: -ms-grid;
  display: grid;
  position: relative;
  -ms-grid-rows: 1fr auto;
  -ms-grid-columns: 1fr auto;
      grid-template: 'fiNumber fiUnit' 1fr 'fiSub fiSub' auto / 1fr auto; }
.p-feature-layout__block.-type_2 > .p-feature__img {
  -ms-grid-row: 2;
  -ms-grid-column: 1; }
@media only screen and (max-width: 47.9375em){
  .p-feature__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .p-feature__text {
    -ms-grid-row: 3;
    -ms-grid-column: 1; }
  .p-feature__img {
    -ms-grid-row: 2;
    -ms-grid-column: 1; } }
@media print, screen and (min-width: 48em){
  .p-feature__head {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2; }
  .p-feature__text {
    -ms-grid-row: 2;
    -ms-grid-column: 2; }
  .p-feature__img {
    -ms-grid-row: 2;
    -ms-grid-column: 1; } }

.p-feature__illust {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0; }

.p-feature__number {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: fiNumber;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
  z-index: 10;
  font-family: montserrat, sans-serif;
  -webkit-font-feature-settings: 'palt' 1;
          font-feature-settings: 'palt' 1;
  font-weight: bold;
  line-height: 1;
  color: #00a0e9;
  text-align: right; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature__number {
      font-size: 130px;
      font-size: 8.125rem; } }
  @media print, screen and (min-width: 48em) {
    .p-feature__number {
      font-size: 130px;
      font-size: 8.125rem; } }
  @media print, screen and (min-width: 75em) {
    .p-feature__number {
      font-size: 220px;
      font-size: 13.75rem; } }

.p-feature__number-unit {
  display: block;
  text-align: center; }
  @media print, screen and (min-width: 48em) {
    .p-feature__number-unit {
      font-size: 130px;
      font-size: 8.125rem; } }
  @media print, screen and (min-width: 75em) {
    .p-feature__number-unit {
      font-size: 190px;
      font-size: 11.875rem; } }
  .p-feature__number-unit span {
    display: block;
    color: #003953;
    white-space: nowrap; }
    @media only screen and (max-width: 47.9375em) {
      .p-feature__number-unit span {
        font-family: "YakuHanJP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "arial"; } }
    @media print, screen and (min-width: 48em) {
      .p-feature__number-unit span {
        font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    .p-feature__number-unit span.browser-is-ie,
    .browser-is-ie .p-feature__number-unit span {
      font-family: "メイリオ", "Meiryo"; }
    @media only screen and (max-width: 47.9375em) {
      .p-feature__number-unit span {
        font-size: 16px;
        font-size: 1rem; } }
    @media print, screen and (min-width: 48em) {
      .p-feature__number-unit span {
        font-size: 14px;
        font-size: 0.875rem; } }
    @media print, screen and (min-width: 64em) {
      .p-feature__number-unit span {
        margin-top: -13px;
        font-size: 14px;
        font-size: 0.875rem; } }
    @media print, screen and (min-width: 75em) {
      .p-feature__number-unit span {
        font-size: 22px;
        font-size: 1.375rem; } }

.p-feature__unit {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: fiUnit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
  z-index: 10;
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold;
  line-height: 1; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature__unit {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-feature__unit {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-feature__unit.browser-is-ie,
  .browser-is-ie .p-feature__unit {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature__unit {
      font-size: 34px;
      font-size: 2.125rem; } }
  @media print, screen and (min-width: 48em) {
    .p-feature__unit {
      font-size: 34px;
      font-size: 2.125rem; } }
  @media print, screen and (min-width: 75em) {
    .p-feature__unit {
      font-size: 46px;
      font-size: 2.875rem; } }

.p-feature__main {
  grid-area: fiMain;
  position: relative;
  z-index: 10;
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold;
  line-height: 1; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature__main {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-feature__main {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-feature__main.browser-is-ie,
  .browser-is-ie .p-feature__main {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature__main {
      font-size: 34px;
      font-size: 2.125rem; } }
  @media print, screen and (min-width: 48em) {
    .p-feature__main {
      font-size: 32px;
      font-size: 2rem; } }
  @media print, screen and (min-width: 75em) {
    .p-feature__main {
      font-size: 46px;
      font-size: 2.875rem; } }

.p-feature__sub {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: fiSub;
  display: block;
  position: relative;
  z-index: 10;
  font-weight: 400;
  line-height: 1;
  text-align: right; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature__sub {
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-feature__sub {
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 75em) {
    .p-feature__sub {
      font-size: 16px;
      font-size: 1rem; } }

/* 種別ごと
----------------------------------------------------------------- */
/* Circuit Xの利用社数 */
@media print, screen and (min-width: 48em) {
  .p-feature.-circuitx .p-feature__text {
    padding-left: 55px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-circuitx .p-feature__img {
    padding-top: 65px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-circuitx .p-feature__illust img {
    width: 52.27vw;
    max-width: 196px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-circuitx .p-feature__illust img {
    width: 17.14vw;
    max-width: 240px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-circuitx .p-feature__unit {
    margin-bottom: 11px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-circuitx .p-feature__unit {
    margin-bottom: 32px;
    padding-left: 5px; } }

@media print, screen and (min-width: 75em) {
  .p-feature.-circuitx .p-feature__sub {
    margin-top: -20px; } }

/* 広告効果ランキング */
@media print, screen and (min-width: 48em) {
  .p-feature.-ad_ranking {
    width: 39%; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-ad_ranking .p-feature__img {
    padding-right: 13%; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-ad_ranking .p-feature__img {
    padding-top: 65px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-ad_ranking .p-feature__text {
    margin-top: 22px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-ad_ranking .p-feature__illust {
    top: 28px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0); } }

@media print, screen and (min-width: 48em) {
  .p-feature.-ad_ranking .p-feature__illust {
    top: 37px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-ad_ranking .p-feature__illust img {
    width: 54.67vw;
    max-width: 205px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-ad_ranking .p-feature__illust img {
    width: 16.29vw;
    max-width: 228px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-ad_ranking .p-feature__number {
    margin-top: 80px; } }

@media print, screen and (min-width: 75em) {
  .p-feature.-ad_ranking .p-feature__number {
    font-size: 190px;
    font-size: 11.875rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-ad_ranking .p-feature__unit {
    margin-bottom: 16px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-ad_ranking .p-feature__unit {
    margin-bottom: 26px;
    padding-left: 2px; } }

/* 所属メンバー数 */
@media print, screen and (min-width: 48em) {
  .p-feature.-member {
    width: 61%; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-member .p-feature__text {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-member .p-feature__text {
    margin-top: 18px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-member .p-feature__head {
    margin-bottom: 50px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-member .p-feature__img {
    padding-left: 40%;
    -ms-grid-rows: auto 1fr;
    -ms-grid-columns: 1fr auto;
        grid-template: 'fiMain fiMain' auto 'fiNumber fiUnit' 1fr / 1fr auto; }
  .p-feature.-member .p-feature__img > .p-feature__number {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
  .p-feature.-member .p-feature__img > .p-feature__unit {
    -ms-grid-row: 2;
    -ms-grid-column: 2; }
  .p-feature__main {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-member .p-feature__img {
    padding-left: 38%;
    -ms-grid-rows: auto 1fr;
    -ms-grid-columns: 1fr auto;
        grid-template: 'fiMain fiMain' auto 'fiNumber fiUnit' 1fr / 1fr auto; }
  .p-feature.-member .p-feature__img > .p-feature__number {
    -ms-grid-row: 2;
    -ms-grid-column: 1; }
  .p-feature.-member .p-feature__img > .p-feature__unit {
    -ms-grid-row: 2;
    -ms-grid-column: 2; }
  .p-feature.-member .p-feature__img > .p-feature__main {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-member .p-feature__illust {
    top: 20px;
    left: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-member .p-feature__illust {
    top: -10px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-member .p-feature__illust img {
    width: 28vw;
    max-width: 105px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-member .p-feature__illust img {
    width: 11vw;
    max-width: 154px; } }

@media print, screen and (min-width: 75em) {
  .p-feature.-member .p-feature__number {
    font-size: 220px;
    font-size: 13.75rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-member .p-feature__main {
    margin-top: 60px; } }

@media print, screen and (min-width: 75em) {
  .p-feature.-member .p-feature__main {
    margin-bottom: 26px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-member .p-feature__unit {
    margin-left: 5px;
    margin-bottom: 46px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-member .p-feature__unit {
    margin-bottom: 26px; } }

/* 職種割合 */
@media only screen and (max-width: 47.9375em) {
  .p-feature.-job .p-feature__text {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-job .p-feature__text {
    padding-left: 55px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-job .p-feature__illust {
    top: 20px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0); } }

@media print, screen and (min-width: 48em) {
  .p-feature.-job .p-feature__illust {
    top: -2px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-job .p-feature__illust img {
    width: 85.6vw;
    max-width: 321px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-job .p-feature__illust img {
    width: 38.64vw;
    max-width: 541px; } }

.p-feature.-job .p-feature__number {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature.-job .p-feature__number {
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin-top: 48px;
      font-size: 110px;
      font-size: 6.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-feature.-job .p-feature__number {
      margin-top: 52px; } }
  @media print, screen and (min-width: 75em) {
    .p-feature.-job .p-feature__number {
      font-size: 160px;
      font-size: 10rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-job .p-feature__number-unit {
    padding-right: 8px;
    padding-left: 8px;
    font-size: 130px;
    font-size: 8.125rem; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-job .p-feature__number-unit {
    padding-right: 16px;
    padding-left: 16px; } }

/* バリューの浸透スコア */
@media print, screen and (min-width: 48em) {
  .p-feature.-value_score {
    width: 61%; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-value_score .p-feature__text {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-value_score .p-feature__text {
    margin-top: 20px; } }

@media print, screen and (min-width: 64em) {
  .p-feature.-value_score .p-feature__text {
    margin-top: 40px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-value_score .p-feature__img {
    padding-right: 14%; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-value_score .p-feature__img {
    padding-right: 15%; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-value_score .p-feature__illust {
    top: 20px;
    left: 13%; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-value_score .p-feature__illust {
    top: 20px;
    left: 26px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-value_score .p-feature__illust img {
    width: 32vw;
    max-width: 120px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-value_score .p-feature__illust img {
    width: 12.21vw;
    max-width: 171px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-value_score .p-feature__number {
    margin-top: 46px;
    padding-bottom: 12px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-value_score .p-feature__unit {
    font-size: 18px;
    font-size: 1.125rem; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-value_score .p-feature__unit {
    margin-bottom: 20px;
    padding-left: 16px;
    font-size: 22px;
    font-size: 1.375rem; } }

@media print, screen and (min-width: 75em) {
  .p-feature.-value_score .p-feature__unit {
    padding-left: 8px;
    font-size: 28px;
    font-size: 1.75rem; } }

.p-feature.-value_score .p-feature__unit:before {
  display: inline-block;
  width: 3px;
  height: 63px;
  background-color: #003953;
  -webkit-transform: rotate(35deg);
          transform: rotate(35deg);
  content: ""; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature.-value_score .p-feature__unit:before {
      margin-bottom: -6px;
      margin-right: 7px;
      margin-left: 4px; } }
  @media print, screen and (min-width: 48em) {
    .p-feature.-value_score .p-feature__unit:before {
      margin-bottom: -5px;
      margin-right: 18px; } }

.p-feature.-value_score .p-feature__unit span {
  font-family: montserrat, sans-serif;
  -webkit-font-feature-settings: 'palt' 1;
          font-feature-settings: 'palt' 1; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature.-value_score .p-feature__unit span {
      font-size: 30px;
      font-size: 1.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-feature.-value_score .p-feature__unit span {
      margin-bottom: -8px;
      font-size: 48px;
      font-size: 3rem; } }
  @media print, screen and (min-width: 75em) {
    .p-feature.-value_score .p-feature__unit span {
      font-size: 63px;
      font-size: 3.9375rem; } }

/* 男女割合 */
@media print, screen and (min-width: 48em) {
  .p-feature.-sex {
    width: 39%; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-sex .p-feature__text {
    margin-top: 26px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-sex .p-feature__text {
    margin-top: 20px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-sex .p-feature__illust {
    top: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-sex .p-feature__illust {
    top: -10px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-sex .p-feature__illust img {
    width: 37.33vw;
    max-width: 140px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-sex .p-feature__illust img {
    width: 12.14vw;
    max-width: 170px; } }

.p-feature.-sex .p-feature__number {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  @media only screen and (max-width: 47.9375em) {
    .p-feature.-sex .p-feature__number {
      margin-top: 52px;
      font-size: 110px;
      font-size: 6.875rem; } }
  @media print, screen and (min-width: 48em) {
    .p-feature.-sex .p-feature__number {
      margin-top: 90px; } }
  @media print, screen and (min-width: 75em) {
    .p-feature.-sex .p-feature__number {
      font-size: 160px;
      font-size: 10rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-sex .p-feature__number-unit {
    font-size: 130px;
    font-size: 8.125rem; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-sex .p-feature__number-unit {
    padding-right: 16px;
    padding-left: 16px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-sex .p-feature__number-unit:first-child {
    margin-right: 15px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-sex .p-feature__number-unit:last-child {
    margin-left: 15px; } }

/* 平均年齢 */
@media print, screen and (min-width: 48em) {
  .p-feature.-age .p-feature__text {
    padding-left: 54px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-age .p-feature__img {
    padding-right: 9%; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-age .p-feature__img {
    padding-top: 63px;
    padding-right: 11%; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-age .p-feature__illust {
    top: 20px;
    left: 13px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-age .p-feature__illust {
    top: 8px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-age .p-feature__illust img {
    width: 42.13vw;
    max-width: 158px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-age .p-feature__illust img {
    width: 16.29vw;
    max-width: 228px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-age .p-feature__number {
    margin-top: 90px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-age .p-feature__unit {
    margin-bottom: 43px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-age .p-feature__unit {
    margin-bottom: 30px; } }

/* 育休取得率 */
@media print, screen and (min-width: 48em) {
  .p-feature.-vacation {
    width: 39%; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-vacation .p-feature__head {
    margin-bottom: 0; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-vacation .p-feature__text {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-vacation .p-feature__text {
    margin-top: 160px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-vacation .p-feature__img {
    -ms-grid-rows: 1fr auto;
    -ms-grid-columns: 100%;
        grid-template: 'fiNumber' 1fr 'fiUnit' auto / 100%; }
  .p-feature.-vacation .p-feature__img > .p-feature__number {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .p-feature.-vacation .p-feature__img > .p-feature__unit {
    -ms-grid-row: 2;
    -ms-grid-column: 1; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-vacation .p-feature__illust {
    top: 18px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-vacation .p-feature__illust {
    top: 130px;
    z-index: 20; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-vacation .p-feature__illust img {
    width: 47.47vw;
    max-width: 178px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-vacation .p-feature__illust img {
    width: 17.36vw;
    max-width: 243px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-vacation .p-feature__number {
    margin-top: 104px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-vacation .p-feature__number {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-top: -10px; } }

@media print, screen and (min-width: 75em) {
  .p-feature.-vacation .p-feature__number {
    font-size: 190px;
    font-size: 11.875rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-vacation .p-feature__unit {
    margin-bottom: 32px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-vacation .p-feature__unit {
    grid-area: none;
    position: absolute;
    bottom: -30px;
    right: 0; } }

/* 月間残業時間 */
@media print, screen and (min-width: 48em) {
  .p-feature.-overtime {
    width: 61%; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-overtime .p-feature__text {
    margin-top: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-overtime .p-feature__text {
    margin-top: 14px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-overtime .p-feature__img {
    padding-right: 7%; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-overtime .p-feature__illust {
    top: 20px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-overtime .p-feature__illust {
    top: 4px;
    left: 12px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-overtime .p-feature__illust img {
    width: 58.4vw;
    max-width: 219px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-overtime .p-feature__illust img {
    width: 20.14vw;
    max-width: 282px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-overtime .p-feature__number {
    margin-top: 68px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-overtime .p-feature__number {
    margin-right: -18px; } }

@media only screen and (max-width: 47.9375em) {
  .p-feature.-overtime .p-feature__unit {
    margin-bottom: 14px; } }

@media print, screen and (min-width: 48em) {
  .p-feature.-overtime .p-feature__unit {
    margin-bottom: 35px; } }

.p-policy {
  background-repeat: no-repeat;
  background-size: 100% auto;
  text-align: center; }
  @media print, screen and (min-width: 48em) {
    .p-policy {
      padding-top: 10px;
      background-image: url("/about/policy/img/bg_main.png"); } }
  @media print and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 48em) and (-webkit-min-device-pixel-ratio: 2), print and (-moz-min-device-pixel-ratio: 2), screen and (min-width: 48em) and (-moz-min-device-pixel-ratio: 2) {
    .p-policy {
      background-image: url("/about/policy/img/bg_main@2x.png"); } }

.p-policy__head {
  display: inline;
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold;
  color: #575cff;
  background: -webkit-gradient(linear, left top, right top, from(#00a0e9), to(#575cff));
  background: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 100%);
  background: linear-gradient(to right, #00a0e9 0%, #575cff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }
  @media only screen and (max-width: 47.9375em) {
    .p-policy__head {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-policy__head {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-policy__head.browser-is-ie,
  .browser-is-ie .p-policy__head {
    font-family: "メイリオ", "Meiryo"; }
  .browser-is-ie .p-policy__head {
    background: none; }
  @media only screen and (max-width: 47.9375em) {
    .p-policy__head {
      font-size: 36px;
      font-size: 2.25rem; } }
  @media print, screen and (min-width: 48em) {
    .p-policy__head {
      font-size: 38px;
      font-size: 2.375rem;
      margin-left: -0.35em; } }
  @media print, screen and (min-width: 64em) {
    .p-policy__head {
      font-size: 50px;
      font-size: 3.125rem; } }
  .p-policy__head span {
    margin-right: -25px;
    margin-left: -3px; }

.p-policy__sub {
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold;
  text-align: center; }
  @media only screen and (max-width: 47.9375em) {
    .p-policy__sub {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-policy__sub {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-policy__sub.browser-is-ie,
  .browser-is-ie .p-policy__sub {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .p-policy__sub {
      margin-top: 14px;
      font-size: 18px;
      font-size: 1.125rem;
      line-height: 1.55; } }
  @media print, screen and (min-width: 48em) {
    .p-policy__sub {
      margin-top: 23px;
      font-size: 20px;
      font-size: 1.25rem;
      line-height: 1.55; } }
  @media print, screen and (min-width: 64em) {
    .p-policy__sub {
      font-size: 23px;
      font-size: 1.4375rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-policy__img {
    margin-top: 6px; } }

@media print, screen and (min-width: 48em) {
  .p-policy__img {
    display: none; } }

.p-policy__img img {
  display: block;
  width: 100%; }

@media only screen and (max-width: 47.9375em) {
  .p-policy__desc {
    margin-top: 10px; } }

@media print, screen and (min-width: 48em) {
  .p-policy__desc {
    margin-top: 63px; } }

@media only screen and (max-width: 63.9375em) {
  .p-ranking {
    margin-top: 5px; } }

@media print, screen and (min-width: 64em) {
  .p-ranking {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 47px; } }

.p-ranking__img {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media print, screen and (min-width: 48em) {
    .p-ranking__img {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  @media print, screen and (min-width: 64em) {
    .p-ranking__img {
      display: block;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      padding-right: 20px; } }
  .p-ranking__img img {
    display: block;
    width: 100%; }
    @media print, screen and (min-width: 48em) {
      .p-ranking__img img {
        max-width: 503px; } }

@media only screen and (max-width: 63.9375em) {
  .p-ranking__text {
    margin-top: 20px; } }

@media print, screen and (min-width: 64em) {
  .p-ranking__text {
    min-width: 435px; } }

.p-ranking__item {
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-ranking__item {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-ranking__item {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-ranking__item.browser-is-ie,
  .browser-is-ie .p-ranking__item {
    font-family: "メイリオ", "Meiryo"; }

.p-ranking__rank {
  display: inline-block;
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold;
  text-align: right; }
  @media only screen and (max-width: 47.9375em) {
    .p-ranking__rank {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-ranking__rank {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-ranking__rank.browser-is-ie,
  .browser-is-ie .p-ranking__rank {
    font-family: "メイリオ", "Meiryo"; }
  .p-ranking__rank span {
    font-family: montserrat, sans-serif;
    -webkit-font-feature-settings: 'palt' 1;
            font-feature-settings: 'palt' 1;
    vertical-align: -3%;
    line-height: 1; }
  .p-ranking__rank.-num1 {
    color: #12a6ff;
    background: -webkit-gradient(linear, left top, left bottom, from(#00b0ff), to(#12a6ff));
    background: -webkit-linear-gradient(top, #00b0ff 0%, #12a6ff 100%);
    background: linear-gradient(to bottom, #00b0ff 0%, #12a6ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; }
  .p-ranking__rank.-num2 {
    color: #3292ff;
    background: -webkit-gradient(linear, left top, left bottom, from(#219cff), to(#3292ff));
    background: -webkit-linear-gradient(top, #219cff 0%, #3292ff 100%);
    background: linear-gradient(to bottom, #219cff 0%, #3292ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; }
  .p-ranking__rank.-num3 {
    color: #557dff;
    background: -webkit-gradient(linear, left top, left bottom, from(#4487ff), to(#557dff));
    background: -webkit-linear-gradient(top, #4487ff 0%, #557dff 100%);
    background: linear-gradient(to bottom, #4487ff 0%, #557dff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; }
  .browser-is-ie .p-ranking__rank.-num1, .browser-is-ie .p-ranking__rank.-num2, .browser-is-ie .p-ranking__rank.-num3 {
    background: none; }
  .p-ranking__rank.-num_other {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    color: #003953; }
    @media print, screen and (min-width: 48em) {
      .p-ranking__rank.-num_other {
        padding-right: 12px; } }
    @media only screen and (max-width: 47.9375em) {
      .p-ranking__rank.-num_other {
        padding-right: 24px; } }
    .p-ranking__rank.-num_other span {
      margin-right: 4px;
      font-size: 22px;
      font-size: 1.375rem; }
    .p-ranking__rank.-num_other:after {
      position: absolute;
      top: -1px;
      font-size: 18px;
      font-size: 1.125rem;
      color: #96ADBB;
      content: "…"; }
      @media only screen and (max-width: 47.9375em) {
        .p-ranking__rank.-num_other:after {
          right: 3px; } }
      @media print, screen and (min-width: 48em) {
        .p-ranking__rank.-num_other:after {
          right: -11px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-ranking__top .p-ranking__rank {
      width: 46px;
      margin-right: 12px; } }
  @media print, screen and (min-width: 48em) {
    .p-ranking__top .p-ranking__rank {
      width: 60px;
      margin-right: 15px; } }
  @media only screen and (max-width: 47.9375em) {
    .p-ranking__top .p-ranking__rank span {
      margin-right: 4px;
      font-size: 36px;
      font-size: 2.25rem; } }
  @media print, screen and (min-width: 48em) {
    .p-ranking__top .p-ranking__rank span {
      margin-right: 4px;
      font-size: 44px;
      font-size: 2.75rem; } }
  @media print, screen and (min-width: 48em) {
    .p-ranking__bottom .p-ranking__rank {
      width: 50px;
      margin-right: 15px; } }

@media only screen and (max-width: 47.9375em) {
  .p-ranking__top .p-ranking__item {
    font-size: 19px;
    font-size: 1.1875rem; } }

@media print, screen and (min-width: 48em) {
  .p-ranking__top .p-ranking__item {
    margin-top: 14px;
    font-size: 24px;
    font-size: 1.5rem; } }

.p-ranking__top .p-ranking__item:first-child {
  margin-top: 0; }

@media only screen and (max-width: 47.9375em) {
  .p-ranking__bottom {
    margin-top: 17px; } }

@media print, screen and (min-width: 48em) {
  .p-ranking__bottom {
    margin-top: 27px; } }

.p-ranking__bottom .p-ranking__item {
  font-size: 14px;
  font-size: 0.875rem; }
  @media only screen and (max-width: 47.9375em) {
    .p-ranking__bottom .p-ranking__item {
      margin-top: 12px; } }
  @media print, screen and (min-width: 48em) {
    .p-ranking__bottom .p-ranking__item {
      margin-top: 12px; } }
  .p-ranking__bottom .p-ranking__item:first-child {
    margin-top: 0; }

.p-map {
  margin-top: 40px; }
  @media only screen and (max-width: 47.9375em) {
    .p-map {
      margin-top: 20px; } }

.p-map__wrap {
  height: 0;
  overflow: hidden;
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-map__wrap {
      padding-bottom: 74.25%; } }
  @media print, screen and (min-width: 48em) {
    .p-map__wrap {
      padding-bottom: 50%; } }
  @media print, screen and (min-width: 87.5em) {
    .p-map__wrap {
      padding-bottom: 74.25%; } }

.p-map__wrap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%; }

.p-map__zoom {
  display: block;
  font-weight: 500;
  margin-top: 22px; }
  @media only screen and (max-width: 47.9375em) {
    .p-map__zoom {
      font-weight: bold;
      font-size: 14px;
      font-size: 0.875rem;
      margin-top: 22px; } }

.p-map__access {
  margin-top: 30px; }

.p-map__train {
  margin-top: 18px; }

.p-column-link {
  border-top: solid 1px #d9ebf3; }
  @media only screen and (max-width: 47.9375em) {
    .p-column-link {
      margin-top: 40px;
      padding-top: 40px; } }
  @media print, screen and (min-width: 48em) {
    .p-column-link {
      margin-top: 58px;
      padding-top: 52px; } }
  @media print, screen and (min-width: 48em) {
    .p-column-link.-max2 .c-column__item {
      width: calc(50% - 20px);
      margin-left: 20px; } }
  @media print, screen and (min-width: 64em) {
    .p-column-link.-max2 .c-column__item {
      width: calc(50% - 60px);
      margin-left: 60px; } }

@media only screen and (max-width: 47.9375em) {
  .p-column-link__inner {
    margin-top: 30px; } }

@media print, screen and (min-width: 48em) {
  .p-column-link__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 30px;
    margin-left: -20px; } }

@media print, screen and (min-width: 64em) {
  .p-column-link__inner {
    margin-left: -60px; } }

@media only screen and (max-width: 47.9375em) {
  .p-column-link__item {
    border-bottom: solid 1px #d9ebf3; } }

@media print, screen and (min-width: 48em) {
  .p-column-link__item {
    margin-left: 20px; } }

@media print, screen and (min-width: 64em) {
  .p-column-link__item {
    margin-left: 60px; } }

@media only screen and (max-width: 47.9375em) {
  .p-column-link__item:first-child {
    border-top: solid 1px #d9ebf3; } }

.p-column-link__link {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  height: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .p-column-link__link {
      padding-top: 16px;
      padding-bottom: 16px; } }

.p-column-link__head {
  display: block;
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold;
  color: #003953;
  -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
  transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s; }
  @media only screen and (max-width: 47.9375em) {
    .p-column-link__head {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .p-column-link__head {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .p-column-link__head.browser-is-ie,
  .browser-is-ie .p-column-link__head {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .p-column-link__head {
      margin-top: 4px;
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-column-link__head {
      font-size: 16px;
      font-size: 1rem;
      margin-top: 8px; } }
  @media print, screen and (min-width: 64em) {
    .p-column-link__head {
      font-size: 18px;
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    a:hover .p-column-link__head {
      color: #3EB8EF; } }

.p-column-link__desc {
  display: block;
  color: #003953; }
  @media only screen and (max-width: 47.9375em) {
    .p-column-link__desc {
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .p-column-link__desc {
      margin-top: 3px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.7; } }

.p-sign {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.p-sign__sub {
  display: block;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-sign__sub {
      font-size: 12px;
      font-size: 0.75rem; } }
  @media print, screen and (min-width: 48em) {
    .p-sign__sub {
      font-size: 16px;
      font-size: 1rem; } }

.p-sign__name {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .p-sign__name {
      margin-left: 16px;
      font-size: 20px;
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 48em) {
    .p-sign__name {
      margin-left: 20px;
      font-size: 20px;
      font-size: 1.25rem; } }
  @media print, screen and (min-width: 64em) {
    .p-sign__name {
      font-size: 24px;
      font-size: 1.5rem; } }

@media print, screen and (min-width: 48em) {
  .p-vision {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; } }

.p-vision__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative; }
  @media only screen and (max-width: 47.9375em) {
    .p-vision__item {
      padding-top: 18px;
      padding-bottom: 34px;
      border-top: solid 1px #D9EBF3; } }
  @media print, screen and (min-width: 48em) {
    .p-vision__item {
      width: 50%;
      padding-top: 43px;
      padding-bottom: 60px;
      border-top: solid 1px #D9EBF3; } }
  @media only screen and (max-width: 47.9375em) {
    .p-vision__item:first-child {
      border-top: none; } }
  @media only screen and (max-width: 47.9375em) {
    .p-vision__item:last-child {
      padding-bottom: 0; } }
  @media print, screen and (min-width: 48em) {
    .p-vision__item:nth-child(-n+2) {
      border-top: none; } }
  @media print, screen and (min-width: 48em) {
    .p-vision__item:nth-child(odd) {
      padding-right: 60px; } }
  @media print, screen and (min-width: 48em) {
    .p-vision__item:nth-child(odd):before {
      display: block;
      position: absolute;
      top: 50px;
      right: 0;
      width: 1px;
      height: calc(100% - 50px - 50px);
      background-color: #D9EBF3;
      content: ""; } }
  @media print, screen and (min-width: 48em) {
    .p-vision__item:nth-child(even) {
      padding-left: 60px; } }
  @media print, screen and (min-width: 48em) {
    .p-vision__item:nth-last-child(-n+2) {
      padding-bottom: 0; } }
  @media print, screen and (min-width: 48em) {
    .p-vision__item:nth-last-child(-n+2):before {
      height: calc(100% - 50px); } }

.p-vision__number {
  display: inline;
  font-family: montserrat, sans-serif;
  -webkit-font-feature-settings: 'palt' 1;
          font-feature-settings: 'palt' 1;
  font-weight: bold;
  color: #575cff;
  background: -webkit-gradient(linear, left top, right top, from(#00a0e9), to(#575cff));
  background: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 100%);
  background: linear-gradient(to right, #00a0e9 0%, #575cff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 46px;
  font-size: 2.875rem; }
  .browser-is-ie .p-vision__number {
    background: none; }

.p-vision__head {
  display: block; }
  @media only screen and (max-width: 47.9375em) {
    .p-vision__head {
      margin-top: 4px; } }
  @media print, screen and (min-width: 48em) {
    .p-vision__head {
      margin-top: 10px; } }

@media only screen and (max-width: 47.9375em) {
  .p-vision__desc {
    margin-top: 16px; } }

@media print, screen and (min-width: 48em) {
  .p-vision__desc {
    margin-top: 16px; } }

@media only screen and (max-width: 47.9375em) {
  .p-link-cta {
    font-weight: bold;
    color: #003953; } }

@media print, screen and (min-width: 48em) {
  .p-link-cta {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    display: block;
    width: 100%;
    border-bottom: solid 1px #D9EBF3;
    font-weight: bold;
    color: #003953;
    padding-top: 7px;
    padding-bottom: 7px;
    font-size: 16px;
    font-size: 1rem; } }

@media print, screen and (min-width: 64em) {
  .p-link-cta {
    font-size: 18px;
    font-size: 1.125rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-link-cta .c-arrow.-right.-absolute {
    display: inline-block;
    position: relative;
    top: 0.25em;
    margin-left: 4px; } }

.p-org-member {
  width: 100%;
  border-top: solid 1px #bfd0d8; }
  @media print, screen and (min-width: 48em) {
    .p-org-member {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      max-width: 780px;
      margin-right: auto;
      margin-left: auto;
      padding-top: 24px; } }

.p-org-member__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media only screen and (max-width: 47.9375em) {
    .p-org-member__item {
      margin-top: 30px;
      padding-top: 20px;
      padding-bottom: 20px;
      border-top: solid 1px #d9ebf3; } }
  @media print, screen and (min-width: 48em) {
    .p-org-member__item {
      width: 50%;
      padding-left: 30px;
      border-left: solid 1px #d9ebf3; } }
  .p-org-member__item:first-child {
    padding-left: 0;
    border-left: none; }
    @media only screen and (max-width: 47.9375em) {
      .p-org-member__item:first-child {
        padding-top: 0;
        border-top: none; } }
  @media only screen and (max-width: 47.9375em) {
    .p-org-member__item:last-child {
      padding-bottom: 0; } }

@media only screen and (max-width: 47.9375em) {
  .p-org-member__head {
    font-size: 20px;
    font-size: 1.25rem; } }

@media only screen and (max-width: 47.9375em) {
  .p-org-member__list {
    margin-top: 12px; } }

@media print, screen and (min-width: 48em) {
  .p-org-member__list {
    margin-top: 8px; } }

.p-org-member__line {
  margin-top: 2px; }

.p-org-member__name {
  font-weight: bold; }
  .p-org-member__name:after {
    display: inline;
    content: "："; }

.f-button-block {
  text-align: center; }
  @media only screen and (max-width: 47.9375em) {
    .f-button-block {
      margin-top: 35px; } }
  @media print, screen and (min-width: 48em) {
    .f-button-block {
      margin-top: 75px; } }

.f-button-block__desc {
  font-weight: 400;
  text-align: justify;
  text-justify: inter-ideograph;
  text-align: center; }
  @media only screen and (max-width: 47.9375em) {
    .f-button-block__desc {
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.55; } }
  @media print, screen and (min-width: 48em) {
    .f-button-block__desc {
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.6; } }
  @media print, screen and (min-width: 64em) {
    .f-button-block__desc {
      font-size: 18px;
      font-size: 1.125rem; } }
  .f-button-block__desc a {
    font-weight: bold;
    margin-right: 13px; }

.f-button-block__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media only screen and (max-width: 47.9375em) {
    .f-button-block__content {
      margin-top: 20px; } }
  @media print, screen and (min-width: 48em) {
    .f-button-block__content {
      margin-top: 36px; } }

.f-button-block__button {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  max-width: 220px; }

.f-checkbox {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: relative;
  /* label */
  /* input */ }
  .f-checkbox > label {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    height: 100%;
    padding-left: 25px;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.4;
    cursor: pointer; }
    .device-is-mobile.browser-is-safari .f-checkbox > label {
      padding-left: 22px; }
    .f-checkbox > label:before {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      display: block;
      position: absolute;
      left: 0;
      width: 16px;
      height: 16px;
      border-style: solid;
      border-color: #ccc;
      border-width: 1px;
      border-radius: 0;
      color: green;
      -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      content: ''; }
      @media only screen and (max-width: 47.9375em) {
        .f-checkbox > label:before {
          top: 1px; } }
      @media print, screen and (min-width: 48em) {
        .f-checkbox > label:before {
          top: 2px; } }
    .f-checkbox > label:after {
      display: block;
      position: absolute;
      left: 4px;
      width: 5px;
      height: 9px;
      border-style: solid;
      border-width: 2px;
      border-color: currentColor;
      border-left: 0;
      border-top: 0;
      color: transparent;
      -webkit-transform: translateY(-40%) rotate(30deg);
              transform: translateY(-40%) rotate(30deg);
      -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      content: ''; }
      @media only screen and (max-width: 47.9375em) {
        .f-checkbox > label:after {
          top: 7px; } }
      @media print, screen and (min-width: 48em) {
        .f-checkbox > label:after {
          top: 8px; } }
    .f-checkbox > label span {
      color: red; }
    @media print, screen and (min-width: 64em) {
      .f-checkbox > label:hover:before {
        border-color: #00a0e9; } }
    .-error .f-checkbox > label:before {
      background-color: rgba(209, 0, 0, 0.06);
      border-color: #d10000; }
  .f-checkbox > input {
    display: none;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    position: absolute;
    overflow: hidden;
    top: auto;
    left: auto;
    width: 0;
    height: 0;
    vertical-align: middle; }
    @media print, screen and (min-width: 64em) {
      .f-checkbox > input {
        display: block; } }
    .f-checkbox > input:checked + label {
      font-weight: bold;
      color: blue; }
      .f-checkbox > input:checked + label:before {
        background-color: blue;
        border-color: blue; }
      .f-checkbox > input:checked + label:after {
        color: #fff;
        -webkit-transform: translateY(-50%) rotate(45deg);
                transform: translateY(-50%) rotate(45deg); }
    .f-checkbox > input:focus + label:before {
      border-color: blue; }
    .device-is-mobile.browser-is-safari .f-checkbox > input {
      top: 1px;
      left: 1px; }
  @media print, screen and (min-width: 48em) {
    .f-checkbox.-block {
      margin-top: 8px; } }
  .f-checkbox.-block:first-child {
    margin-top: 0; }
  .f-checkbox.-block > label {
    padding-top: 4px;
    padding-bottom: 6px;
    padding-left: 32px; }
    @media only screen and (max-width: 47.9375em) {
      .f-checkbox.-block > label {
        font-size: 14px;
        font-size: 0.875rem; } }
    .f-checkbox.-block > label:before {
      top: 6px;
      left: 4px;
      width: 20px;
      height: 20px; }
    .f-checkbox.-block > label:after {
      top: 14px;
      left: 10px;
      width: 6px;
      height: 11px; }
    .device-is-mobile .f-checkbox.-block > label {
      padding-top: 6px;
      padding-left: 28px; }
      .device-is-mobile .f-checkbox.-block > label:before {
        left: 0; }
      .device-is-mobile .f-checkbox.-block > label:after {
        left: 6px; }
    @media print, screen and (min-width: 64em) {
      .f-checkbox.-block > label:hover {
        background-color: rgba(170, 143, 123, 0.2); } }

@media only screen and (max-width: 47.9375em) {
  .f-form {
    margin-top: 45px; } }

@media print, screen and (min-width: 48em) {
  .f-form {
    margin-top: 74px; } }

.f-file {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  width: 100%;
  /* アイコン要素 */
  /* エラーアイコン */
  /* サクセスアイコン */ }
  @media print, screen and (min-width: 48em) {
    .f-file {
      font-size: 14px;
      font-size: 0.875rem; } }
  .f-file:after {
    display: block;
    position: absolute;
    z-index: 20;
    visibility: hidden;
    opacity: 0;
    top: 50%;
    right: 16px;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 22px;
    height: 22px;
    -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    content: '';
    background-repeat: no-repeat;
    background-position: 0 0; }
  .-error .f-file:after {
    visibility: visible;
    opacity: 1;
    background-image: url(/recruit_info/common/svg/icon_error.svg); }
  .-error .f-file > input {
    color: #d10000; }
  .-success .f-file:after {
    visibility: visible;
    opacity: 1;
    background-image: url(/recruit_info/common/svg/icon_success.svg); }
  .f-file > input {
    display: block;
    /*@include baseSentence;*/
    position: relative;
    top: 1px;
    font-size: 14px;
    font-size: 0.875rem; }

.f-file__cancel {
  visibility: hidden;
  opacity: 0;
  position: relative;
  width: 20px;
  height: 20px;
  cursor: pointer;
  -webkit-transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
  .f-file__cancel:before, .f-file__cancel:after {
    position: absolute;
    top: 50%;
    left: 50%;
    background-color: #333333;
    width: 10px;
    height: 2px;
    content: ''; }
  .f-file__cancel:before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg); }
  .f-file__cancel:after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg); }
  .f-file__cancel.-visible {
    visibility: visible;
    opacity: 1; }

.f-heading-1 {
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .f-heading-1 {
      font-size: 26px;
      font-size: 1.625rem; } }
  @media print, screen and (min-width: 48em) {
    .f-heading-1 {
      font-size: 36px;
      font-size: 2.25rem; } }
  @media print, screen and (min-width: 64em) {
    .f-heading-1 {
      font-size: 40px;
      font-size: 2.5rem; } }

.f-heading-1.-color {
  display: inline;
  color: #575cff;
  background: -webkit-gradient(linear, left top, right top, from(#00a0e9), to(#575cff));
  background: -webkit-linear-gradient(left, #00a0e9 0%, #575cff 100%);
  background: linear-gradient(to right, #00a0e9 0%, #575cff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }
  .browser-is-ie .f-heading-1.-color {
    background: none; }
  .f-heading-1.-color:after {
    display: block;
    clear: both;
    content: ''; }

/* -----------------------------------------------------------------
/* モディファイア
----------------------------------------------------------------- */
.f-heading-1.-center {
  text-align: center; }

.f-input-text {
  position: relative;
  z-index: 0;
  /* アイコン要素 */
  /* エラーアイコン */
  /* サクセスアイコン */ }
  .f-input-text > input {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    position: relative;
    z-index: 10;
    width: 100%;
    background-color: #fff;
    border: solid 1px #BFD0D8;
    border-radius: 4px;
    text-justify: inter-ideograph;
    -webkit-font-feature-settings: normal;
            font-feature-settings: normal;
    font-size: 16px;
    font-size: 1rem;
    color: #003953;
    -webkit-transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    @media only screen and (max-width: 47.9375em) {
      .f-input-text > input {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
    @media print, screen and (min-width: 48em) {
      .f-input-text > input {
        font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    .f-input-text > input.browser-is-ie,
    .browser-is-ie .f-input-text > input {
      font-family: "メイリオ", "Meiryo"; }
    @media only screen and (max-width: 47.9375em) {
      .f-input-text > input {
        padding-top: 10px;
        padding-bottom: 10px;
        padding-right: 18px;
        padding-left: 18px; } }
    @media print, screen and (min-width: 48em) {
      .f-input-text > input {
        padding-top: 12px;
        padding-bottom: 12px;
        padding-right: 20px;
        padding-left: 20px; } }
    .f-input-text > input[type='number']::-webkit-outer-spin-button, .f-input-text > input[type='number']::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0; }
    .f-input-text > input[type='number'] {
      -moz-appearance: textfield; }
    .f-input-text > input::-webkit-input-placeholder {
      color: #BFD0D8; }
    .f-input-text > input:-ms-input-placeholder {
      color: #BFD0D8; }
    .f-input-text > input::-moz-placeholder {
      color: #BFD0D8; }
    .f-input-text > input:focus {
      outline: none;
      border-color: #00a0e9;
      background-color: #fff; }
    .-error .f-input-text > input {
      background-color: rgba(209, 0, 0, 0.06);
      border-color: #d10000; }
    .-success .f-input-text > input {
      background-color: #fff;
      border-color: #ddd; }
  .f-input-text:before, .f-input-text:after {
    display: block;
    position: absolute;
    z-index: 20;
    visibility: hidden;
    opacity: 0;
    content: ''; }
  .-error .f-input-text > input {
    background-repeat: no-repeat;
    background-position: right 15px top 50%;
    background-size: 22px auto;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20width%3D%2222%22%20height%3D%2222%22%20viewBox%3D%220%200%2022%2022%22%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3Cdefs%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3CclipPath%20id%3D%22form-error-icon%22%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Crect%20width%3D%2222%22%20height%3D%2222%22%20fill%3D%22none%22%2F%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2FclipPath%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fdefs%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3Cg%20id%3D%22icon_form%22%20clip-path%3D%22url%28%23form-error-icon%29%22%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Crect%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23d10000%22%2F%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fg%3E\a%20%20%20%20%20%20%20%20%20%20%3C%2Fsvg%3E"); }
  .-error .f-input-text:before, .-error .f-input-text:after {
    visibility: visible;
    opacity: 1;
    top: 50%;
    right: 21px;
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    width: 12px;
    height: 2px;
    background-color: #fff;
    border-radius: 2px; }
  .-error .f-input-text:before {
    -webkit-transform: translate(0, -50%) rotate(-45deg);
            transform: translate(0, -50%) rotate(-45deg); }
  .-error .f-input-text:after {
    -webkit-transform: translate(0, -50%) rotate(45deg);
            transform: translate(0, -50%) rotate(45deg); }
  .-success .f-input-text:before, .-success .f-input-text:after {
    visibility: visible;
    opacity: 1; }
  .-success .f-input-text:before {
    top: 50%;
    right: 16px;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 22px;
    height: 22px;
    background-color: #00c41e;
    border-radius: 50%; }
  .-success .f-input-text:after {
    top: 20px;
    right: 21px;
    width: 10px;
    height: 5px;
    border-style: solid;
    border-width: 0 0 2px 2px;
    border-color: #fff;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg); }

.f-label {
  position: relative;
  margin-right: 8px;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .f-label {
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 48em) {
    .f-label {
      font-size: 16px;
      font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .f-label {
      font-size: 18px;
      font-size: 1.125rem; } }
  .f-label:after {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: none;
    position: relative;
    color: #FF0000;
    font-weight: normal;
    content: '（必須）'; }
    @media only screen and (max-width: 47.9375em) {
      .f-label:after {
        font-size: 14px;
        font-size: 0.875rem; } }
    @media print, screen and (min-width: 48em) {
      .f-label:after {
        font-size: 16px;
        font-size: 1rem; } }
    .-required .f-label:after {
      display: inline; }

.f-label.-absolute {
  margin-right: 0; }
  @media print, screen and (min-width: 48em) {
    .f-label.-absolute {
      padding-right: 46px; } }
  .f-label.-absolute:after {
    position: absolute;
    right: 0;
    top: 2px;
    margin-left: 0; }

.f-label-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media print, screen and (min-width: 48em) {
    .f-label-container {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; } }

.f-label-msg {
  width: 100%;
  text-justify: inter-ideograph;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  color: #d10000; }
  @media only screen and (max-width: 47.9375em) {
    .f-label-msg {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .f-label-msg {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .f-label-msg.browser-is-ie,
  .browser-is-ie .f-label-msg {
    font-family: "メイリオ", "Meiryo"; }
  @media only screen and (max-width: 47.9375em) {
    .f-label-msg {
      font-size: 14px;
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 48em) {
    .f-label-msg {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      width: auto;
      font-size: 16px;
      font-size: 1rem; } }
  @media only screen and (max-width: 47.9375em) {
    .f-unit.-file .f-label-msg {
      margin-top: 6px; } }
  @media print, screen and (min-width: 48em) {
    .f-unit.-file .f-label-msg {
      -webkit-box-flex: 1;
          -ms-flex: auto;
              flex: auto;
      width: 100%; } }

.f-radio {
  display: inline-block;
  width: 47.5%; }
  .f-radio:first-child {
    margin-left: 0; }
  .f-radio:not(:first-child) {
    padding-left: 3%; }
  .f-radio input {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none; }
    @media only screen and (max-width: 47.9375em) {
      .f-radio input {
        display: none; } }
    .f-radio input:checked + label {
      border: 1px solid #222;
      color: #003953;
      background-color: #fff; }
      .f-radio input:checked + label:before {
        border-color: #003953; }
      .f-radio input:checked + label:after {
        -webkit-transform: translate(-50%, -50%) scale(1);
                transform: translate(-50%, -50%) scale(1); }
  .f-radio label {
    display: block;
    position: relative;
    width: 100%;
    background-color: #f7f7f7;
    border: 1px solid #ddd;
    color: #aaa;
    text-align: center;
    -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    cursor: pointer; }
    @media only screen and (max-width: 47.9375em) {
      .f-radio label {
        padding-top: 10px;
        padding-right: 3%;
        padding-bottom: 10px;
        font-size: 14px;
        font-size: 0.875rem; } }
    @media print, screen and (min-width: 48em) {
      .f-radio label {
        padding-top: 14px;
        padding-right: 3%;
        padding-bottom: 14px; }
        .browser-is-ie .f-radio label {
          padding-top: 18px;
          padding-right: 3%;
          padding-bottom: 10px; } }
    @media print, screen and (min-width: 64em) {
      .f-radio label:hover {
        background-color: #fff;
        border: 1px solid #222;
        color: #003953; } }
    @media print, screen and (min-width: 64em) {
      .f-radio label:hover:before {
        border-color: #003953; } }
    .f-radio label:before, .f-radio label:after {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      display: block;
      position: absolute;
      border-radius: 50%;
      content: ''; }
    .f-radio label:before {
      top: 20px;
      width: 20px;
      height: 20px;
      border-style: solid;
      border-width: 2px;
      border-color: #ddd;
      -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
      @media only screen and (max-width: 47.9375em) {
        .f-radio label:before {
          top: 30%;
          left: 20px; } }
      @media print, screen and (min-width: 48em) {
        .f-radio label:before {
          top: 34%;
          left: 20px; } }
    .f-radio label:after {
      top: 20px;
      width: 10px;
      height: 10px;
      background-color: #003953;
      -webkit-transform: translate(-50%, -50%) scale(0);
              transform: translate(-50%, -50%) scale(0);
      -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s; }
      @media only screen and (max-width: 47.9375em) {
        .f-radio label:after {
          top: 53%;
          left: 30px; } }
      @media print, screen and (min-width: 48em) {
        .f-radio label:after {
          top: 52%;
          left: 30px; } }

/*****************************************
* モディファイア
*****************************************/
.f-radio--sp-block {
  margin-top: 8px; }
  @media only screen and (max-width: 47.9375em) {
    .f-radio--sp-block {
      display: block;
      margin-left: 0; } }

.f-sentence {
  font-weight: 400;
  text-align: justify;
  text-justify: inter-ideograph; }
  @media only screen and (max-width: 47.9375em) {
    .f-sentence {
      margin-top: 18px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.55; } }
  @media print, screen and (min-width: 48em) {
    .f-sentence {
      margin-top: 26px;
      font-size: 16px;
      font-size: 1rem;
      line-height: 1.6; } }
  @media print, screen and (min-width: 64em) {
    .f-sentence {
      margin-top: 28px;
      font-size: 18px;
      font-size: 1.125rem; } }
  .f-sentence:first-child {
    margin-top: 0; }

/* モディファイア
----------------------------------------------------------------- */
.f-sentence.-center {
  text-align: center; }

@media only screen and (max-width: 47.9375em) {
  .f-sentence.-small {
    font-size: 14px;
    font-size: 0.875rem; } }

@media print, screen and (min-width: 48em) {
  .f-sentence.-small {
    font-size: 16px;
    font-size: 1rem;
    margin-top: 23px; } }

.f-sentence.-small span {
  font-weight: 500;
  color: #E10000; }

.f-unit {
  width: 100%;
  /* 幅
  ----------------------------------------------------------------- */
  /* マージン系
  ----------------------------------------------------------------- */
  /* ボーダー
  ----------------------------------------------------------------- */
  /* レイアウト
  ----------------------------------------------------------------- */ }
  @media only screen and (max-width: 47.9375em) {
    .f-unit {
      margin-top: 12px; } }
  @media print, screen and (min-width: 48em) {
    .f-unit {
      width: auto;
      margin-top: 13px; } }
  @media print, screen and (min-width: 48em) {
    .f-unit.-max {
      width: 100%; } }
  @media print, screen and (min-width: 48em) {
    .f-unit.-half {
      width: 48%;
      margin-left: 4%; } }
  @media print, screen and (min-width: 48em) {
    .f-unit.-half:first-child {
      margin-left: 0; } }
  @media print, screen and (min-width: 48em) {
    .f-unit.-small {
      width: 245px;
      margin-left: 42px; } }
  @media print, screen and (min-width: 48em) {
    .f-unit.-small:first-child {
      margin-left: 0; } }
  .f-unit.-mtop_0 {
    margin-top: 0; }
  @media print, screen and (min-width: 48em) {
    .f-unit.-mleft {
      margin-left: 42px; } }
  @media only screen and (max-width: 47.9375em) {
    .f-unit.-mtop {
      margin-top: 16px; } }
  .f-unit.-border {
    border-style: solid;
    border-width: 0 0 1px 0;
    border-color: #BFD0D8; }
    @media only screen and (max-width: 47.9375em) {
      .f-unit.-border {
        padding-top: 14px;
        padding-bottom: 14px; } }
    @media print, screen and (min-width: 48em) {
      .f-unit.-border {
        padding-top: 16px;
        padding-bottom: 16px; } }
    .f-unit.-border:first-child {
      border-width: 1px 0 1px 0; }
  .f-unit.-file {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    @media only screen and (max-width: 47.9375em) {
      .f-unit.-file {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }
    @media print, screen and (min-width: 48em) {
      .f-unit.-file {
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
    @media only screen and (max-width: 47.9375em) {
      .f-unit.-file .f-unit__label {
        margin-bottom: 8px; } }
    @media only screen and (max-width: 47.9375em) {
      .f-unit.-file:not(.-border) {
        margin-top: 14px; } }
    @media print, screen and (min-width: 48em) {
      .f-unit.-file:not(.-border) {
        margin-top: 14px; } }
    .f-unit.-file:not(.-border):first-child {
      margin-top: 0; }
  .f-unit.-lineup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    @media print, screen and (min-width: 48em) {
      .f-unit.-lineup {
        margin-top: 0; } }
  @media print, screen and (min-width: 48em) {
    .f-unit.-max3 {
      width: calc(33.33% - 42px);
      margin-left: 42px; } }
  @media print, screen and (min-width: 48em) {
    .f-unit.-max3:first-child {
      margin-left: 0; } }
  @media print, screen and (min-width: 48em) {
    .f-unit.-max3:nth-child(3n + 1) {
      margin-left: 0; } }

.f-unit__label {
  font-weight: 600;
  line-height: 1.4;
  font-weight: bold; }
  @media only screen and (max-width: 47.9375em) {
    .f-unit__label {
      font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
  @media print, screen and (min-width: 48em) {
    .f-unit__label {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
  .f-unit__label.browser-is-ie,
  .browser-is-ie .f-unit__label {
    font-family: "メイリオ", "Meiryo"; }
  @media print, screen and (min-width: 48em) {
    .f-unit__label {
      min-width: 110px;
      font-size: 14px;
      font-size: 0.875rem; } }

.f-unit__list {
  margin-top: 5px; }

.f-unit-radio {
  width: 100%; }
  @media only screen and (max-width: 47.9375em) {
    .f-unit-radio {
      margin-top: 12px; } }
  @media print, screen and (min-width: 48em) {
    .f-unit-radio {
      margin-top: 22px; } }

.f-field {
  border: none; }
  @media only screen and (max-width: 47.9375em) {
    .f-field {
      margin-top: 40px; } }
  @media print, screen and (min-width: 48em) {
    .f-field {
      margin-top: 32px; } }
  .f-field:first-child {
    margin-top: 0; }

.f-textarea {
  position: relative;
  z-index: 0;
  /* アイコン要素 */
  /* エラーアイコン */
  /* サクセスアイコン */ }
  .f-textarea > textarea {
    display: block;
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    -webkit-tap-highlight-color: transparent;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    overflow: hidden;
    z-index: 10;
    width: 100%;
    max-width: 100%;
    background-color: #fff;
    border-width: 1px;
    border-style: solid;
    border-color: #BFD0D8;
    border-radius: 4px;
    text-justify: inter-ideograph;
    -webkit-font-feature-settings: normal;
            font-feature-settings: normal;
    font-size: 16px;
    font-size: 1rem;
    color: #003953;
    resize: vertical;
    -webkit-transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, background-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    @media only screen and (max-width: 47.9375em) {
      .f-textarea > textarea {
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "arial"; } }
    @media print, screen and (min-width: 48em) {
      .f-textarea > textarea {
        font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; } }
    .f-textarea > textarea.browser-is-ie,
    .browser-is-ie .f-textarea > textarea {
      font-family: "メイリオ", "Meiryo"; }
    @media only screen and (max-width: 47.9375em) {
      .f-textarea > textarea {
        min-height: 120px;
        padding-top: 10px;
        padding-bottom: 10px;
        padding-right: 18px;
        padding-left: 18px; } }
    @media print, screen and (min-width: 48em) {
      .f-textarea > textarea {
        min-height: 200px;
        padding-top: 12px;
        padding-bottom: 12px;
        padding-right: 16px;
        padding-left: 16px; } }
    .f-textarea > textarea::-webkit-input-placeholder {
      color: #BFD0D8; }
    .f-textarea > textarea:-ms-input-placeholder {
      color: #BFD0D8; }
    .f-textarea > textarea::-moz-placeholder {
      color: #BFD0D8; }
    .browser-is-ie .f-textarea > textarea {
      overflow: auto; }
    .f-textarea > textarea:focus {
      outline: none;
      background-color: #fff;
      border-color: #00a0e9; }
    .-error .f-textarea > textarea {
      background-color: rgba(209, 0, 0, 0.06);
      border-color: #d10000; }
    .-success .f-textarea > textarea {
      background-color: #fff;
      border-color: #eae8e4; }
  .f-textarea:before, .f-textarea:after {
    display: block;
    position: absolute;
    z-index: 20;
    visibility: hidden;
    opacity: 0;
    content: ''; }
  .-error .f-textarea > textarea {
    background-repeat: no-repeat;
    background-size: 22px auto;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20width%3D%2222%22%20height%3D%2222%22%20viewBox%3D%220%200%2022%2022%22%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3Cdefs%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3CclipPath%20id%3D%22form-error-icon%22%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Crect%20width%3D%2222%22%20height%3D%2222%22%20fill%3D%22none%22%2F%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2FclipPath%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fdefs%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3Cg%20id%3D%22icon_form%22%20clip-path%3D%22url%28%23form-error-icon%29%22%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Crect%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23d10000%22%2F%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fg%3E\a%20%20%20%20%20%20%20%20%20%20%3C%2Fsvg%3E"); }
    @media only screen and (max-width: 47.9375em) {
      .-error .f-textarea > textarea {
        background-position: right 15px top 0.7em; } }
    @media print, screen and (min-width: 48em) {
      .-error .f-textarea > textarea {
        background-position: right 15px top 0.8em; } }
  .-error .f-textarea:before, .-error .f-textarea:after {
    visibility: visible;
    opacity: 1;
    right: 21px;
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
    width: 12px;
    height: 2px;
    background-color: #fff;
    border-radius: 2px; }
    @media only screen and (max-width: 47.9375em) {
      .-error .f-textarea:before, .-error .f-textarea:after {
        top: 1.45em; } }
    @media print, screen and (min-width: 48em) {
      .-error .f-textarea:before, .-error .f-textarea:after {
        top: 1.55em; } }
  .-error .f-textarea:before {
    -webkit-transform: translate(0, -50%) rotate(-45deg);
            transform: translate(0, -50%) rotate(-45deg); }
  .-error .f-textarea:after {
    -webkit-transform: translate(0, -50%) rotate(45deg);
            transform: translate(0, -50%) rotate(45deg); }
  .-success .f-textarea:before, .-success .f-textarea:after {
    visibility: visible;
    opacity: 1; }
  .-success .f-textarea:before {
    right: 16px;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 22px;
    height: 22px;
    background-color: #00c41e;
    border-radius: 50%; }
    @media only screen and (max-width: 47.9375em) {
      .-success .f-textarea:before {
        top: 1.45em; } }
    @media print, screen and (min-width: 48em) {
      .-success .f-textarea:before {
        top: 1.55em; } }
  .-success .f-textarea:after {
    right: 21px;
    width: 10px;
    height: 5px;
    border-style: solid;
    border-width: 0 0 2px 2px;
    border-color: #fff;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg); }
    @media only screen and (max-width: 47.9375em) {
      .-success .f-textarea:after {
        top: 1.15em; } }
    @media print, screen and (min-width: 48em) {
      .-success .f-textarea:after {
        top: 20px; } }

.f-select {
  display: block;
  position: relative;
  width: 100%;
  background-color: #fff;
  /* 三角アイコン */
  /* アイコン要素 */ }
  .f-select > select {
    z-index: 1;
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    height: 44px;
    background-color: transparent;
    border: solid 1px #BFD0D8;
    border-radius: 4px;
    font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo";
    font-size: 16px;
    font-size: 1rem;
    color: #003953;
    line-height: 1.5;
    -webkit-box-shadow: none;
            box-shadow: none;
    cursor: pointer; }
    @media only screen and (max-width: 47.9375em) {
      .f-select > select {
        padding-top: 10px;
        padding-bottom: 10px;
        padding-right: 18px;
        padding-left: 18px; } }
    @media print, screen and (min-width: 48em) {
      .f-select > select {
        height: 100%;
        padding-top: 12px;
        padding-bottom: 12px;
        padding-right: 20px;
        padding-left: 20px; } }
    .f-select > select::-ms-expand {
      display: none; }
    .f-select > select:focus {
      color: #003953;
      outline: none;
      border-color: #00a0e9; }
    .f-select > select > option {
      font-family: "Noto Sans", "Noto Sans CJK JP", "Noto Sans CJK JP Subset", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo"; }
    .-error .f-select > select {
      border-color: #d10000; }
  .f-select:before {
    display: block;
    position: absolute;
    top: 19px;
    right: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    width: 8px;
    height: 8px;
    border-style: solid;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    border-color: #003953;
    -webkit-transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, border-color cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    content: '';
    content: ""; }
  .f-select svg {
    display: block;
    position: absolute;
    top: 1.4em;
    right: 20px;
    width: 11px;
    height: 11px;
    fill: #003953; }
    @media only screen and (max-width: 47.9375em) {
      .f-select svg {
        top: 1rem; } }
    @media print, screen and (min-width: 48em) {
      .f-select svg {
        top: 1.5rem; } }
  .f-select:after {
    display: block;
    position: absolute;
    z-index: 20;
    visibility: hidden;
    opacity: 0;
    top: 50%;
    right: 40px;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    width: 22px;
    height: 22px;
    content: '';
    background-repeat: no-repeat;
    background-position: 0 0; }
  .-error .f-select > select,
  .-success .f-select > select {
    color: #003953; }
  .-error .f-select {
    border-color: #d10000;
    background-repeat: no-repeat;
    background-position: right 16px top 50%;
    background-color: rgba(209, 0, 0, 0.06);
    background-size: 22px auto;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20width%3D%2222%22%20height%3D%2222%22%20viewBox%3D%220%200%2022%2022%22%3E\a%20%20%20%20%20%20%20%20%20%20%3Cdefs%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3CclipPath%20id%3D%22form-error-icon%22%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Crect%20width%3D%2222%22%20height%3D%2222%22%20fill%3D%22none%22%2F%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3C%2FclipPath%3E\a%20%20%20%20%20%20%20%20%20%20%3C%2Fdefs%3E\a%20%20%20%20%20%20%20%20%20%20%3Cg%20id%3D%22icon_form%22%20clip-path%3D%22url%28%23form-error-icon%29%22%3E\a%20%20%20%20%20%20%20%20%20%20%20%20%3Crect%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23d10000%22%2F%3E\a%20%20%20%20%20%20%20%20%20%20%3C%2Fg%3E\a%20%20%20%20%20%20%20%20%3C%2Fsvg%3E"); }
    .-error .f-select:before, .-error .f-select:after {
      visibility: visible;
      opacity: 1;
      top: 50%;
      right: 21px;
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
      width: 12px;
      height: 2px;
      background-color: #fff;
      border: none;
      border-radius: 2px; }
    .-error .f-select:before {
      -webkit-transform: translate(0, -50%) rotate(-45deg);
              transform: translate(0, -50%) rotate(-45deg); }
    .-error .f-select:after {
      -webkit-transform: translate(0, -50%) rotate(45deg);
              transform: translate(0, -50%) rotate(45deg); }
  .-success .f-select {
    background-color: #fff;
    border-color: #eae8e4; }
    .-success .f-select:before, .-success .f-select:after {
      visibility: visible;
      opacity: 1; }
    .-success .f-select:before {
      top: 50%;
      right: 16px;
      -webkit-transform: translate(0, -50%);
              transform: translate(0, -50%);
      width: 22px;
      height: 22px;
      background-color: #00c41e;
      border: none;
      border-radius: 50%; }
    .-success .f-select:after {
      right: 21px;
      width: 10px;
      height: 5px;
      border-style: solid;
      border-width: 0 0 2px 2px;
      border-color: #fff;
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg); }
      @media only screen and (max-width: 47.9375em) {
        .-success .f-select:after {
          top: 1.05em; } }
      @media print, screen and (min-width: 48em) {
        .-success .f-select:after {
          top: 20px; } }

.u-show-XS {
  display: none; }
  @media only screen and (max-width: 47.9375em) {
    .u-show-XS {
      display: block; } }

.u-show-S {
  display: none; }
  @media print, screen and (min-width: 48em) {
    .u-show-S {
      display: block; } }

.u-show-M {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .u-show-M {
      display: block; } }

.u-show-L {
  display: none; }
  @media print, screen and (min-width: 75em) {
    .u-show-L {
      display: block; } }

.u-show-XL {
  display: none; }
  @media print, screen and (min-width: 87.5em) {
    .u-show-XL {
      display: block; } }

.u-show-full {
  display: none; }
  @media print, screen and (min-width: 93.75em) {
    .u-show-full {
      display: block; } }

/* -----------------------------------------------------------------
/* .u-show-**to**
/* **サイズ～**サイズの区間内のみで表示する
----------------------------------------------------------------- */
.u-show-m_to_l {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .u-show-m_to_l {
      display: block; } }
  @media print, screen and (min-width: 75em) {
    .u-show-m_to_l {
      display: none; } }

/* -----------------------------------------------------------------
/* .u-hide-**to**
/* **サイズ～**サイズの区間内のみで非表示にする
----------------------------------------------------------------- */
@media only screen and (max-width: 47.9375em) {
  .u-hide-StoM {
    display: block; } }

@media print, screen and (min-width: 48em) {
  .u-hide-StoM {
    display: none; } }

@media print, screen and (min-width: 64em) {
  .u-hide-StoM {
    display: block; } }

@media only screen and (max-width: 47.9375em) {
  .u-hide-XS {
    display: none; } }

@media print, screen and (min-width: 48em) {
  .u-hide-S {
    display: none; } }

@media print, screen and (min-width: 75em) {
  .u-hide-L {
    display: none; } }

/* -----------------------------------------------------------------
/* プリント時に非表示にする
----------------------------------------------------------------- */
@media print {
  .u-hide-print {
    display: none; } }

/* ==========================================================================
* フェードイン
========================================================================== */
.u-fade-in {
  opacity: 0;
  -webkit-transition: opacity linear 0.25s;
  transition: opacity linear 0.25s;
  /* Duration
  ----------------------------------------------------------------- */
  /* Delay
  ----------------------------------------------------------------- */ }
  @media print {
    .u-fade-in {
      opacity: 1 !important; } }
  .u-fade-in.-visible {
    opacity: 1; }
  .u-fade-in.-duration01 {
    -webkit-transition-duration: 0.1s;
            transition-duration: 0.1s; }
  .u-fade-in.-duration02 {
    -webkit-transition-duration: 0.2s;
            transition-duration: 0.2s; }
  .u-fade-in.-duration03 {
    -webkit-transition-duration: 0.3s;
            transition-duration: 0.3s; }
  .u-fade-in.-duration04 {
    -webkit-transition-duration: 0.4s;
            transition-duration: 0.4s; }
  .u-fade-in.-duration05 {
    -webkit-transition-duration: 0.5s;
            transition-duration: 0.5s; }
  .u-fade-in.-duration06 {
    -webkit-transition-duration: 0.6s;
            transition-duration: 0.6s; }
  .u-fade-in.-duration07 {
    -webkit-transition-duration: 0.7s;
            transition-duration: 0.7s; }
  .u-fade-in.-duration08 {
    -webkit-transition-duration: 0.8s;
            transition-duration: 0.8s; }
  .u-fade-in.-duration09 {
    -webkit-transition-duration: 0.9s;
            transition-duration: 0.9s; }
  .u-fade-in.-duration10 {
    -webkit-transition-duration: 1s;
            transition-duration: 1s; }
  .u-fade-in.-delay01 {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s; }
  .u-fade-in.-delay02 {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s; }
  .u-fade-in.-delay03 {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s; }
  .u-fade-in.-delay04 {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s; }
  .u-fade-in.-delay05 {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s; }
  .u-fade-in.-delay06 {
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s; }
  .u-fade-in.-delay07 {
    -webkit-transition-delay: 0.7s;
            transition-delay: 0.7s; }
  .u-fade-in.-delay08 {
    -webkit-transition-delay: 0.8s;
            transition-delay: 0.8s; }
  .u-fade-in.-delay09 {
    -webkit-transition-delay: 0.9s;
            transition-delay: 0.9s; }
  .u-fade-in.-delay10 {
    -webkit-transition-delay: 1s;
            transition-delay: 1s; }
  .u-fade-in.-delay11 {
    -webkit-transition-delay: 1.1s;
            transition-delay: 1.1s; }
  .u-fade-in.-delay12 {
    -webkit-transition-delay: 1.2s;
            transition-delay: 1.2s; }
  .u-fade-in.-delay13 {
    -webkit-transition-delay: 1.3s;
            transition-delay: 1.3s; }
  .u-fade-in.-delay14 {
    -webkit-transition-delay: 1.4s;
            transition-delay: 1.4s; }
  .u-fade-in.-delay15 {
    -webkit-transition-delay: 1.5s;
            transition-delay: 1.5s; }
  .u-fade-in.-delay16 {
    -webkit-transition-delay: 1.6s;
            transition-delay: 1.6s; }
  .u-fade-in.-delay17 {
    -webkit-transition-delay: 1.7s;
            transition-delay: 1.7s; }
  .u-fade-in.-delay18 {
    -webkit-transition-delay: 1.8s;
            transition-delay: 1.8s; }
  .u-fade-in.-delay19 {
    -webkit-transition-delay: 1.9s;
            transition-delay: 1.9s; }
  .u-fade-in.-delay20 {
    -webkit-transition-delay: 2s;
            transition-delay: 2s; }

/* ==========================================================================
* スクロール量に応じて可視化される
========================================================================== */
.u-fade-each {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  overflow: hidden;
  opacity: 0;
  -webkit-transform: translate(-5%, 0);
          transform: translate(-5%, 0);
  -webkit-transition: opacity linear 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  transition: opacity linear 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s, opacity linear 0.2s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s, opacity linear 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  /* Speed
  ----------------------------------------------------------------- */ }
  @media print {
    .u-fade-each {
      opacity: 1 !important;
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  .u-fade-each > span {
    opacity: 0;
    -webkit-transition: opacity linear 0.2s;
    transition: opacity linear 0.2s; }
    @media print {
      .u-fade-each > span {
        opacity: 1 !important; } }
    .u-fade-each > span.-visible {
      opacity: 1; }
  .u-fade-each.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  .u-fade-each.-slow {
    -webkit-transition: opacity linear 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: opacity linear 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, opacity linear 0.2s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, opacity linear 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  .u-fade-each.-superslow {
    -webkit-transition: opacity linear 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: opacity linear 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s, opacity linear 0.2s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s, opacity linear 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s; }

.u-su {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  overflow: hidden;
  -webkit-transform: translate(-5%, 0);
          transform: translate(-5%, 0);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 2s; }
  .u-su > span {
    opacity: 0; }
    .u-su > span:nth-child(1) {
      -webkit-transition: opacity linear 0.2s 0.05s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.05s;
      transition: opacity linear 0.2s 0.05s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.05s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.05s, opacity linear 0.2s 0.05s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.05s, opacity linear 0.2s 0.05s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.05s; }
    .u-su > span:nth-child(2) {
      -webkit-transition: opacity linear 0.2s 0.1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.1s;
      transition: opacity linear 0.2s 0.1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.1s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.1s, opacity linear 0.2s 0.1s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.1s, opacity linear 0.2s 0.1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.1s; }
    .u-su > span:nth-child(3) {
      -webkit-transition: opacity linear 0.2s 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.15s;
      transition: opacity linear 0.2s 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.15s, opacity linear 0.2s 0.15s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.15s, opacity linear 0.2s 0.15s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.15s; }
    .u-su > span:nth-child(4) {
      -webkit-transition: opacity linear 0.2s 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.2s;
      transition: opacity linear 0.2s 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.2s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.2s, opacity linear 0.2s 0.2s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.2s, opacity linear 0.2s 0.2s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.2s; }
    .u-su > span:nth-child(5) {
      -webkit-transition: opacity linear 0.2s 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.25s;
      transition: opacity linear 0.2s 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.25s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.25s, opacity linear 0.2s 0.25s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.25s, opacity linear 0.2s 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.25s; }
    .u-su > span:nth-child(6) {
      -webkit-transition: opacity linear 0.2s 0.3s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.3s;
      transition: opacity linear 0.2s 0.3s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.3s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.3s, opacity linear 0.2s 0.3s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.3s, opacity linear 0.2s 0.3s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.3s; }
    .u-su > span:nth-child(7) {
      -webkit-transition: opacity linear 0.2s 0.35s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.35s;
      transition: opacity linear 0.2s 0.35s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.35s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.35s, opacity linear 0.2s 0.35s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.35s, opacity linear 0.2s 0.35s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.35s; }
    .u-su > span:nth-child(8) {
      -webkit-transition: opacity linear 0.2s 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.4s;
      transition: opacity linear 0.2s 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.4s, opacity linear 0.2s 0.4s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.4s, opacity linear 0.2s 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.4s; }
    .u-su > span:nth-child(9) {
      -webkit-transition: opacity linear 0.2s 0.45s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.45s;
      transition: opacity linear 0.2s 0.45s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.45s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.45s, opacity linear 0.2s 0.45s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.45s, opacity linear 0.2s 0.45s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.45s; }
    .u-su > span:nth-child(10) {
      -webkit-transition: opacity linear 0.2s 0.5s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.5s;
      transition: opacity linear 0.2s 0.5s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.5s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.5s, opacity linear 0.2s 0.5s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.5s, opacity linear 0.2s 0.5s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.5s; }
    .u-su > span:nth-child(11) {
      -webkit-transition: opacity linear 0.2s 0.55s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.55s;
      transition: opacity linear 0.2s 0.55s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.55s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.55s, opacity linear 0.2s 0.55s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.55s, opacity linear 0.2s 0.55s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.55s; }
    .u-su > span:nth-child(12) {
      -webkit-transition: opacity linear 0.2s 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.6s;
      transition: opacity linear 0.2s 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.6s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.6s, opacity linear 0.2s 0.6s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.6s, opacity linear 0.2s 0.6s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.6s; }
    .u-su > span:nth-child(13) {
      -webkit-transition: opacity linear 0.2s 0.65s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.65s;
      transition: opacity linear 0.2s 0.65s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.65s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.65s, opacity linear 0.2s 0.65s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.65s, opacity linear 0.2s 0.65s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.65s; }
    .u-su > span:nth-child(14) {
      -webkit-transition: opacity linear 0.2s 0.7s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.7s;
      transition: opacity linear 0.2s 0.7s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.7s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.7s, opacity linear 0.2s 0.7s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.7s, opacity linear 0.2s 0.7s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.7s; }
    .u-su > span:nth-child(15) {
      -webkit-transition: opacity linear 0.2s 0.75s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.75s;
      transition: opacity linear 0.2s 0.75s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.75s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.75s, opacity linear 0.2s 0.75s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.75s, opacity linear 0.2s 0.75s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.75s; }
    .u-su > span:nth-child(16) {
      -webkit-transition: opacity linear 0.2s 0.8s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.8s;
      transition: opacity linear 0.2s 0.8s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.8s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.8s, opacity linear 0.2s 0.8s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.8s, opacity linear 0.2s 0.8s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.8s; }
    .u-su > span:nth-child(17) {
      -webkit-transition: opacity linear 0.2s 0.85s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.85s;
      transition: opacity linear 0.2s 0.85s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.85s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.85s, opacity linear 0.2s 0.85s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.85s, opacity linear 0.2s 0.85s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.85s; }
    .u-su > span:nth-child(18) {
      -webkit-transition: opacity linear 0.2s 0.9s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.9s;
      transition: opacity linear 0.2s 0.9s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.9s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.9s, opacity linear 0.2s 0.9s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.9s, opacity linear 0.2s 0.9s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.9s; }
    .u-su > span:nth-child(19) {
      -webkit-transition: opacity linear 0.2s 0.95s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.95s;
      transition: opacity linear 0.2s 0.95s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.95s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.95s, opacity linear 0.2s 0.95s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.95s, opacity linear 0.2s 0.95s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 0.95s; }
    .u-su > span:nth-child(20) {
      -webkit-transition: opacity linear 0.2s 1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 1s;
      transition: opacity linear 0.2s 1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 1s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 1s, opacity linear 0.2s 1s;
      transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 1s, opacity linear 0.2s 1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s 1s; }
  .u-su.-visible {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
    .u-su.-visible > span {
      opacity: 1;
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }

/* -----------------------------------------------------------------
/* 下からスワイプ
----------------------------------------------------------------- */
.u-swipe-in {
  opacity: 0;
  -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  /* Speed
  ----------------------------------------------------------------- */ }
  @media print {
    .u-swipe-in {
      opacity: 1 !important;
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  .u-swipe-in.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important; }
  .u-swipe-in.-slow {
    -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }
  .u-swipe-in.-superslow {
    -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s; }
  .browser-is-ie .u-swipe-in {
    -webkit-transition: none;
    transition: none; }

.u-swipe {
  opacity: 0;
  -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
  /* Speed
  ----------------------------------------------------------------- */
  /* Delay
  ----------------------------------------------------------------- */ }
  .u-swipe.-bottom30 {
    -webkit-transform: translate(0, 30px);
            transform: translate(0, 30px); }
  .u-swipe.-top5 {
    -webkit-transform: translate(0, -5px);
            transform: translate(0, -5px); }
  .u-swipe.-top30 {
    -webkit-transform: translate(0, -30px);
            transform: translate(0, -30px); }
  .u-swipe.-visible {
    opacity: 1;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important; }
  @media print {
    .u-swipe {
      opacity: 1 !important;
      -webkit-transform: translate(0, 0) !important;
              transform: translate(0, 0) !important; } }
  .u-swipe.-slow {
    -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s;
    transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.25s; }
  .u-swipe.-superslow {
    -webkit-transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: opacity linear 0.25s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: opacity linear 0.25s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s; }
  .u-swipe.-ultraslow {
    -webkit-transition: opacity linear 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
    transition: opacity linear 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
    transition: opacity linear 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s;
    transition: opacity linear 0.4s, transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 1s; }
  .u-swipe.-delay01 {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s; }
  .u-swipe.-delay02 {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s; }
  .u-swipe.-delay03 {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s; }
  .u-swipe.-delay04 {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s; }
  .u-swipe.-delay05 {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s; }
  .u-swipe.-delay06 {
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s; }
  .u-swipe.-delay07 {
    -webkit-transition-delay: 0.7s;
            transition-delay: 0.7s; }
  .u-swipe.-delay08 {
    -webkit-transition-delay: 0.8s;
            transition-delay: 0.8s; }
  .u-swipe.-delay09 {
    -webkit-transition-delay: 0.9s;
            transition-delay: 0.9s; }
  .u-swipe.-delay10 {
    -webkit-transition-delay: 1s;
            transition-delay: 1s; }
  .u-swipe.-delay11 {
    -webkit-transition-delay: 1.1s;
            transition-delay: 1.1s; }
  .u-swipe.-delay12 {
    -webkit-transition-delay: 1.2s;
            transition-delay: 1.2s; }
  .u-swipe.-delay13 {
    -webkit-transition-delay: 1.3s;
            transition-delay: 1.3s; }
  .u-swipe.-delay14 {
    -webkit-transition-delay: 1.4s;
            transition-delay: 1.4s; }
  .u-swipe.-delay15 {
    -webkit-transition-delay: 1.5s;
            transition-delay: 1.5s; }
  .u-swipe.-delay16 {
    -webkit-transition-delay: 1.6s;
            transition-delay: 1.6s; }
  .u-swipe.-delay17 {
    -webkit-transition-delay: 1.7s;
            transition-delay: 1.7s; }
  .u-swipe.-delay18 {
    -webkit-transition-delay: 1.8s;
            transition-delay: 1.8s; }
  .u-swipe.-delay19 {
    -webkit-transition-delay: 1.9s;
            transition-delay: 1.9s; }
  .u-swipe.-delay20 {
    -webkit-transition-delay: 2s;
            transition-delay: 2s; }

/* -----------------------------------------------------------------
/* 左からスワイプ（テキスト）
----------------------------------------------------------------- */
.u-swipe-left {
  display: block;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
  overflow: hidden;
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s; }
  .u-swipe-left span {
    display: block;
    width: 100%;
    height: 100%;
    -webkit-transform: translate(100%, 0);
            transform: translate(100%, 0);
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.85s; }
  .u-swipe-left.-visible {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
    .u-swipe-left.-visible span {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }

/* -----------------------------------------------------------------
/* 文字が下から1文字ずつスワイプ出現
----------------------------------------------------------------- */
.u-text-from-bottom-container {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important; }

.u-text-from-bottom {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  position: relative;
  overflow: hidden; }
  .u-text-from-bottom.-active:before {
    -webkit-transform: translate(50%, 0);
            transform: translate(50%, 0); }
  .u-text-from-bottom span {
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    -webkit-transform: translate(0, 100%);
            transform: translate(0, 100%);
    -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
    .u-text-from-bottom span.-active {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }

.u-anim.-rotate10 {
  -webkit-animation: fluffyRotate 10s linear infinite;
          animation: fluffyRotate 10s linear infinite; }

.u-anim.-rotate20 {
  -webkit-animation: fluffyRotate 20s linear infinite;
          animation: fluffyRotate 20s linear infinite; }

.u-anim.-rotate30 {
  -webkit-animation: fluffyRotate 30s linear infinite;
          animation: fluffyRotate 30s linear infinite; }

.u-anim.-rotate40 {
  -webkit-animation: fluffyRotate 40s linear infinite;
          animation: fluffyRotate 40s linear infinite; }

.u-anim.-rotate50 {
  -webkit-animation: fluffyRotate 50s linear infinite;
          animation: fluffyRotate 50s linear infinite; }

.u-anim.-rotate60 {
  -webkit-animation: fluffyRotate 60s linear infinite;
          animation: fluffyRotate 60s linear infinite; }

.u-anim.-rotate70 {
  -webkit-animation: fluffyRotate 70s linear infinite;
          animation: fluffyRotate 70s linear infinite; }

.u-anim.-rotate80 {
  -webkit-animation: fluffyRotate 80s linear infinite;
          animation: fluffyRotate 80s linear infinite; }

.u-anim.-rotate90 {
  -webkit-animation: fluffyRotate 90s linear infinite;
          animation: fluffyRotate 90s linear infinite; }

.u-anim.-rotate100 {
  -webkit-animation: fluffyRotate 100s linear infinite;
          animation: fluffyRotate 100s linear infinite; }

.u-anim.-rotate110 {
  -webkit-animation: fluffyRotate 110s linear infinite;
          animation: fluffyRotate 110s linear infinite; }

.u-anim.-rotate120 {
  -webkit-animation: fluffyRotate 120s linear infinite;
          animation: fluffyRotate 120s linear infinite; }

.u-anim.-rotate130 {
  -webkit-animation: fluffyRotate 130s linear infinite;
          animation: fluffyRotate 130s linear infinite; }

.u-anim.-rotate140 {
  -webkit-animation: fluffyRotate 140s linear infinite;
          animation: fluffyRotate 140s linear infinite; }

.u-anim.-rotate150 {
  -webkit-animation: fluffyRotate 150s linear infinite;
          animation: fluffyRotate 150s linear infinite; }

.u-anim.-rotate160 {
  -webkit-animation: fluffyRotate 160s linear infinite;
          animation: fluffyRotate 160s linear infinite; }

.u-anim.-rotate170 {
  -webkit-animation: fluffyRotate 170s linear infinite;
          animation: fluffyRotate 170s linear infinite; }

.u-anim.-rotate180 {
  -webkit-animation: fluffyRotate 180s linear infinite;
          animation: fluffyRotate 180s linear infinite; }

.u-anim.-rotate190 {
  -webkit-animation: fluffyRotate 190s linear infinite;
          animation: fluffyRotate 190s linear infinite; }

.u-anim.-rotate200 {
  -webkit-animation: fluffyRotate 200s linear infinite;
          animation: fluffyRotate 200s linear infinite; }

.u-anim.-rotate_reverse10 {
  -webkit-animation: fluffyRotateReverse 10s linear infinite;
          animation: fluffyRotateReverse 10s linear infinite; }

.u-anim.-rotate_reverse20 {
  -webkit-animation: fluffyRotateReverse 20s linear infinite;
          animation: fluffyRotateReverse 20s linear infinite; }

.u-anim.-rotate_reverse30 {
  -webkit-animation: fluffyRotateReverse 30s linear infinite;
          animation: fluffyRotateReverse 30s linear infinite; }

.u-anim.-rotate_reverse40 {
  -webkit-animation: fluffyRotateReverse 40s linear infinite;
          animation: fluffyRotateReverse 40s linear infinite; }

.u-anim.-rotate_reverse50 {
  -webkit-animation: fluffyRotateReverse 50s linear infinite;
          animation: fluffyRotateReverse 50s linear infinite; }

.u-anim.-rotate_reverse60 {
  -webkit-animation: fluffyRotateReverse 60s linear infinite;
          animation: fluffyRotateReverse 60s linear infinite; }

.u-anim.-rotate_reverse70 {
  -webkit-animation: fluffyRotateReverse 70s linear infinite;
          animation: fluffyRotateReverse 70s linear infinite; }

.u-anim.-rotate_reverse80 {
  -webkit-animation: fluffyRotateReverse 80s linear infinite;
          animation: fluffyRotateReverse 80s linear infinite; }

.u-anim.-rotate_reverse90 {
  -webkit-animation: fluffyRotateReverse 90s linear infinite;
          animation: fluffyRotateReverse 90s linear infinite; }

.u-anim.-rotate_reverse100 {
  -webkit-animation: fluffyRotateReverse 100s linear infinite;
          animation: fluffyRotateReverse 100s linear infinite; }

.u-anim.-rotate_reverse110 {
  -webkit-animation: fluffyRotateReverse 110s linear infinite;
          animation: fluffyRotateReverse 110s linear infinite; }

.u-anim.-rotate_reverse120 {
  -webkit-animation: fluffyRotateReverse 120s linear infinite;
          animation: fluffyRotateReverse 120s linear infinite; }

.u-anim.-rotate_reverse130 {
  -webkit-animation: fluffyRotateReverse 130s linear infinite;
          animation: fluffyRotateReverse 130s linear infinite; }

.u-anim.-rotate_reverse140 {
  -webkit-animation: fluffyRotateReverse 140s linear infinite;
          animation: fluffyRotateReverse 140s linear infinite; }

.u-anim.-rotate_reverse150 {
  -webkit-animation: fluffyRotateReverse 150s linear infinite;
          animation: fluffyRotateReverse 150s linear infinite; }

.u-anim.-rotate_reverse160 {
  -webkit-animation: fluffyRotateReverse 160s linear infinite;
          animation: fluffyRotateReverse 160s linear infinite; }

.u-anim.-rotate_reverse170 {
  -webkit-animation: fluffyRotateReverse 170s linear infinite;
          animation: fluffyRotateReverse 170s linear infinite; }

.u-anim.-rotate_reverse180 {
  -webkit-animation: fluffyRotateReverse 180s linear infinite;
          animation: fluffyRotateReverse 180s linear infinite; }

.u-anim.-rotate_reverse190 {
  -webkit-animation: fluffyRotateReverse 190s linear infinite;
          animation: fluffyRotateReverse 190s linear infinite; }

.u-anim.-rotate_reverse200 {
  -webkit-animation: fluffyRotateReverse 200s linear infinite;
          animation: fluffyRotateReverse 200s linear infinite; }

.u-anim.-skew1 {
  animation: fluffySkew 1s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew2 {
  animation: fluffySkew 2s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew3 {
  animation: fluffySkew 3s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew4 {
  animation: fluffySkew 4s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5 {
  animation: fluffySkew 5s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew6 {
  animation: fluffySkew 6s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew7 {
  animation: fluffySkew 7s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew8 {
  animation: fluffySkew 8s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew9 {
  animation: fluffySkew 9s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew10 {
  animation: fluffySkew 10s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew11 {
  animation: fluffySkew 11s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew12 {
  animation: fluffySkew 12s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew13 {
  animation: fluffySkew 13s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew14 {
  animation: fluffySkew 14s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew15 {
  animation: fluffySkew 15s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew16 {
  animation: fluffySkew 16s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew17 {
  animation: fluffySkew 17s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew18 {
  animation: fluffySkew 18s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew19 {
  animation: fluffySkew 19s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew20 {
  animation: fluffySkew 20s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration1 {
  animation: fluffySkew5deg 1s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration2 {
  animation: fluffySkew5deg 2s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration3 {
  animation: fluffySkew5deg 3s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration4 {
  animation: fluffySkew5deg 4s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration5 {
  animation: fluffySkew5deg 5s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration6 {
  animation: fluffySkew5deg 6s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration7 {
  animation: fluffySkew5deg 7s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration8 {
  animation: fluffySkew5deg 8s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration9 {
  animation: fluffySkew5deg 9s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration10 {
  animation: fluffySkew5deg 10s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration11 {
  animation: fluffySkew5deg 11s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration12 {
  animation: fluffySkew5deg 12s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration13 {
  animation: fluffySkew5deg 13s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration14 {
  animation: fluffySkew5deg 14s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration15 {
  animation: fluffySkew5deg 15s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration16 {
  animation: fluffySkew5deg 16s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration17 {
  animation: fluffySkew5deg 17s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration18 {
  animation: fluffySkew5deg 18s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration19 {
  animation: fluffySkew5deg 19s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skew5deg.-duration20 {
  animation: fluffySkew5deg 20s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite alternate-reverse; }

.u-anim.-skewY3 {
  -webkit-transform: skewY(3deg);
          transform: skewY(3deg);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s; }
  .u-anim.-skewY3.-visible {
    -webkit-transform: skewY(0);
            transform: skewY(0); }

.u-anim.-skewY5 {
  -webkit-transform: skewY(5deg);
          transform: skewY(5deg);
  -webkit-transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  transition: -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s;
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s, -webkit-transform cubic-bezier(0.215, 0.61, 0.355, 1) 3s; }
  .u-anim.-skewY5.-visible {
    -webkit-transform: skewY(0);
            transform: skewY(0); }

.browser-is-ie .u-anim {
  -webkit-animation: none !important;
          animation: none !important; }

/* ==========================================================================
Form
========================================================================== */
/* ==========================================================================
Vendor
========================================================================== */
/* ==========================================================================
Print
========================================================================== */
@media print {
  body {
    padding-left: 0;
    width: 1400px;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0; }
    body.browser-is-ff {
      -webkit-transform: none;
      transform: none;
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%; }
    body.browser-is-ie {
      -webkit-transform: none;
      transform: none;
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
      zoom: 0.77; }
    body.browser-is-edge {
      -webkit-transform: none;
      transform: none;
      -webkit-transform-origin: 50% 50%;
              transform-origin: 50% 50%;
      zoom: 0.6; }
    body .l-page-top {
      display: none; } }
