@charset 'UTF-8';
/* =============================================================================
   #Foundation
   ========================================================================== */
/*!
 * ress.css • v1.1.1
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
@import url(http://fonts.googleapis.com/css?family=Roboto%20+%20Condensed:400,%20700);
@import url(http://fonts.googleapis.com/css?family=Sumana:400,%20700);

html {
    box-sizing: border-box;
    overflow-y: scroll;
    /* All browsers without overlaying scrollbars */
    -webkit-text-size-adjust: 100%;
    /* iOS 8+ */
}

*,
::before,
::after {
    box-sizing: inherit;
}

::before,
::after {
    text-decoration: inherit;
    /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
    vertical-align: inherit;
}

/* Remove margin, padding of all elements and set background-no-repeat as default */
* {
    background-repeat: no-repeat;
    /* Set `background-repeat: no-repeat` to all elements */
    padding: 0;
    /* Reset `padding` and `margin` of all elements */
    margin: 0;
}

/* # =================================================================
   # General elements
   # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
    display: none;
    height: 0;
}

hr {
    overflow: visible;
    /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

summary {
    display: list-item;
    /* Add the correct display in all browsers */
}

small {
    font-size: 80%;
    /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
    display: none;
    /* Add the correct display in IE */
}

abbr[title] {
    border-bottom: 1px dotted;
    /* Add a bordered underline effect in all browsers */
    text-decoration: none;
    /* Remove text decoration in Firefox 40+ */
}

a {
    background-color: transparent;
    /* Remove the gray background on active links in IE 10 */
    -webkit-text-decoration-skip: objects;
    /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
    outline-width: 0;
    /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    /* Specify the font family of code elements */
}

b,
strong {
    font-weight: bolder;
    /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
    font-style: italic;
    /* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
    background-color: #ff0;
    color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
    border-radius: 0;
}

/* Apply cursor pointer to button elements */
button,
[type="button"],
[type="reset"],
[type="submit"] [role="button"] {
    cursor: pointer;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
    cursor: default;
}

[type="number"] {
    width: auto;
    /* Firefox 36+ */
}

[type="search"] {
    -webkit-appearance: textfield;
    /* Safari 8+ */
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
    /* Safari 8 */
}

textarea {
    overflow: auto;
    /* Internet Explorer 11+ */
    resize: vertical;
    /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
    font: inherit;
    /* Specify font inheritance of form elements */
}

optgroup {
    font-weight: bold;
    /* Restore the font weight unset by the previous rule. */
}

button {
    overflow: visible;
    /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    border-style: 0;
    padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
    outline: 1px dotted ButtonText;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
    /* Correct the inability to style clickable types in iOS */
}

button,
select {
    text-transform: none;
    /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
    background-color: transparent;
    border-style: none;
    color: inherit;
}

/* Style select like a standard input */
select {
    -moz-appearance: none;
    /* Firefox 36+ */
    -webkit-appearance: none;
    /* Chrome 41+ */
}

select::-ms-expand {
    display: none;
    /* Internet Explorer 11+ */
}

select::-ms-value {
    color: currentColor;
    /* Internet Explorer 11+ */
}

legend {
    border: 0;
    /* Correct `color` not being inherited in IE 8/9/10/11 */
    color: inherit;
    /* Correct the color inheritance from `fieldset` elements in IE */
    display: table;
    /* Correct the text wrapping in Edge and IE */
    max-width: 100%;
    /* Correct the text wrapping in Edge and IE */
    white-space: normal;
    /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* Correct the inability to style clickable types in iOS and Safari */
    font: inherit;
    /* Change font properties to `inherit` in Chrome and Safari */
}

[type="search"] {
    -webkit-appearance: textfield;
    /* Correct the odd appearance in Chrome and Safari */
    outline-offset: -2px;
    /* Correct the outline style in Safari */
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
    border-style: none;
    /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
    vertical-align: baseline;
}

svg:not(:root) {
    overflow: hidden;
    /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
    display: inline-block;
    /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
    [hidden~="screen"] {
        display: inherit;
    }

    [hidden~="screen"]:not(:active):not(:focus):not(:target) {
        position: absolute !important;
        clip: rect(0 0 0 0) !important;
    }
}

/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
    cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
    cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
    cursor: default;
}

/* # =================================================================
   # Selection
   # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection {
    background-color: #b3d4fc;
    /* Required when declaring ::selection */
    color: #000;
    text-shadow: none;
}

::selection {
    background-color: #b3d4fc;
    /* Required when declaring ::selection */
    color: #000;
    text-shadow: none;
}

/*
# gradient
グラデーション用 mixin
## 使用方法
```
$start-color: 始点のカラー
$end-color: 終点のカラー
$orientation: グラデーションの方向

div {
 @include gradient(#ff00ff, #ff00cc, vertical);
 }
```
*/
@font-face {
    font-family: "Noto Sans Japanese";
    font-style: normal;
    font-weight: 400;
    src: url("font/NotoSansJP-Regular.woff") format("woff");
}

@font-face {
    font-family: "Noto Sans Japanese";
    font-style: normal;
    font-weight: 500;
    src: url("font/NotoSansJP-Medium.woff") format("woff");
}

@font-face {
    font-family: "Noto Sans Japanese";
    font-style: normal;
    font-weight: 700;
    src: url("font/NotoSansJP-Bold.woff") format("woff");
}

html {
    min-width: 1000px;
    box-sizing: border-box;
    font-size: 62.5%;
}

*,
*:before,
*:after {
    box-sizing: inherit;
}

body {
    color: #444;
    font-size: 1.4rem;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",
        Meiryo, sans-serif;
    font-weight: 500;
    line-height: 1.8;
    /* アンチエイリアスを指定 */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* 文字サイズの自動調整をOFF */
    -webkit-text-size-adjust: 100%;
}

a {
    color: #444;
}

a:hover {
    text-decoration: none;
}

img {
    vertical-align: bottom;
}

.br-sp {
    display: none;
}

.br-sp-m {
    display: none;
}

.pc {
    display: block;
}

.sp {
    display: none;
}
.sp2 {
    display: none;
}
.w80 {
    width: 80%;
}

@media (max-width: 768px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }

    .sp2 {
        display: inline-block;
    }
}

/* =============================================================================
   #Layout
   ========================================================================== */
.l-header {
    position: fixed;
    width: 100%;
    height: 90px;
    background-color: #fff;
    box-shadow: 0 1px 1px -1px rgba(0, 0, 0, 0.4);
    z-index: 999;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.l-header__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 1000px;
    margin: 0 auto;
}

.l-header__siteLogo {
    width: 148px;
    height: 58px;
    margin-top: 16px;
}

.l-header__gNavi {
    height: 90px;
    list-style: none;
}

.l-header__gNaviList {
    position: relative;
    display: table-cell;
}

.l-header__gNaviList.about::before {
    content: "";
    position: absolute;
    top: 31px;
    left: 0;
    display: block;
    width: 1px;
    height: 39px;
    background-color: #e5e5e5;
}

.l-header__gNaviList::after {
    content: "";
    position: absolute;
    top: 31px;
    right: 0;
    display: block;
    width: 1px;
    height: 39px;
    background-color: #e5e5e5;
}

.l-header__gNaviList.about,
.l-header__gNaviList.contact {
    width: 137px;
}

.l-header__gNaviList.service,
.l-header__gNaviList.company,
.l-header__gNaviList.access {
    width: 127px;
}

.l-header__gNaviList.is-current > a::before {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
}

.l-header__gNaviList:hover > a::before {
    -webkit-transform-origin: left;
    -ms-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition: 0.2s;
    transition: 0.2s;
}

.l-header__gNaviList > a {
    position: relative;
    display: block;
    height: 90px;
    text-decoration: none;
    padding: 28px 0 0 0;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.3rem;
    font-weight: 500;
    color: #222;
    text-align: center;
    letter-spacing: 0.5px;
}

.l-header__gNaviList > a::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    display: block;
    height: 4px;
    width: 100%;
	background-color: #00A0C6;
    /*background-color: #922a8a;*/
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
}

.l-header__gNaviList > a .sub_text {
    display: block;
    font-family: "Sumana", serif;
    font-size: 1rem;
    font-weight: bold;
    color: #00A0C6;
	/*color: #9a3e93;*/
}

.l-footer__backTop {
    display: none;
    position: fixed;
    right: 15px;
    bottom: 140px;
}

.l-footer__backTop__btn {
    position: relative;
    display: block;
    width: 40px;
    height: 40px;
    border: 1px solid #00A0C6;
    /*border: 1px solid #8b2d95;*/
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.l-footer__backTop__btn::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -2px;
    margin-left: -5px;
    width: 10px;
    height: 10px;
    border-bottom: 2px solid #00A0C6;
    border-left: 2px solid #00A0C6;
   /* border-bottom: 2px solid #8b2d95;
    border-left: 2px solid #8b2d95;*/
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.l-footer__backTop__btn:hover {
    /*background-color: #8b2d95;*/
    background-color: #00A0C6;
}

.l-footer__backTop__btn:hover::after {
    margin-top: -5px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
}

.l-footer__wrap {
    width: 100%;
    background-color: #e9e9e9;
}

.l-footer__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 1000px;
    margin: 0 auto;
    padding: 45px 0 50px;
}

.l-footer__column {
    letter-spacing: 1px;
}

.l-footer__column:nth-child(1) {
    width: 220px;
}

.l-footer__column:nth-child(2) {
    width: 150px;
}

.l-footer__column:nth-child(3) {
    width: 160px;
}

.l-footer__column:nth-child(4) {
    width: 190px;
}

.l-footer__column:nth-child(5) {
    width: 170px;
}

.l-footer__column:nth-child(6) {
    width: 110px;
    padding: 20px 10px 0 0;
    text-align: right;
}

.l-footer__nav {
    list-style: none;
    margin: 0;
    padding: 0;
}

.l-footer__nav__parent > a {
    display: inline-block;
    margin-bottom: 12px;
    font-size: 1.3rem;
    font-weight: bold;
    color: #222;
    text-decoration: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.l-footer__nav__parent > a:hover {
    color: #666;
}

.l-footer__nav__child {
    margin: 0;
    padding: 0;
    font-size: 1.3rem;
    line-height: 2.4;
    list-style: none;
}

.l-footer__nav__child li {
    position: relative;
    padding-left: 13px;
}

.l-footer__nav__child li a {
    display: inline-block;
    color: #333;
    text-decoration: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.l-footer__nav__child li a:hover {
    color: #7f7f7f;
}

.l-footer__nav__child li::before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    width: 4px;
    height: 1px;
    background-color: #666;
}

.l-footer__copyRight {
    background-color: #2e2e2e;
}

.l-footer__copyRight .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 1000px;
    margin: 0 auto;
    padding: 15px 0 13px;
}

.l-footer__copyRight ul li {
    display: inline-block;
}

.l-footer__copyRight ul li:not(:last-child) {
    margin-right: 45px;
}

.l-footer__copyRight ul li a {
    font-size: 1.2rem;
    color: #ccc;
    text-decoration: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.l-footer__copyRight ul li a:hover {
    color: #fff;
}

.l-footer__copyRight small {
    padding-top: 3px;
    font-size: 1.1rem;
    color: #999;
}

/* フッター02 */
footer.footer02 {
  padding: 2rem 1rem 1rem;
  background-image: linear-gradient(145deg, #e0c3fc 0%, #8ec5fc 100%);
}

.footer-container {
  display: flex;
  justify-content: center;
  max-width: 960px;
  margin: 0 auto 3rem;
}
.footer-sp {
display:none;
}

div.logo {
width: 110px;
margin-right: auto;
vertical-align:top;
/*    width: 60px;
  height: 30px;
  margin-right: auto;*/
}

div.logo img {
width: 100%;
height: 100%;
object-fit: contain;
}

nav.nav {
  margin-right: 10rem;
}

nav.nav ul.item li.list {
  padding-bottom: 1rem;
}

nav.nav ul.item li.list a {
  font-weight: bold;
  color: #fff;
  font-size: 0.8rem;
}

ul.sns-container {
  display: flex;
}

ul.sns-container li.list {
  padding-left: 1rem;
}

ul.sns-container li.list img.icon-twitter {
  width: 30px;
  height: auto;
}

ul.sns-container li.list img.icon-facebook {
  width: 25px;
  height: auto;
}

ul.sns-container li.list img.icon-instagram {
  width: 25px;
  height: auto;
}


.list__nav__parent {
list-style:none;
line-height: 1;
}

.list__nav__parent > a {
    display: inline-block;
    margin-bottom: 12px;
    font-size: 1.3rem;
    font-weight: bold;
    color: #222;
    text-decoration: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.list__nav__parent > a:hover {
    color: #666;
}
.list__nav__child {
    margin: 0;
    padding: 0;
    font-size: 1.3rem;
    line-height: 2.2;
    list-style: none;
}

.list__nav__child li {
    position: relative;
    padding-left: 13px;
}

.list__nav__child li a {
    display: inline-block;
    color: #333;
    text-decoration: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.list__nav__child li a:hover {
    color: #7f7f7f;
}

.list__nav__child li::before {
    content: "";
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    width: 4px;
    height: 1px;
    background-color: #666;
}





p.copyright {
text-align: center;
color: #fff;
}
p.copyright a{
text-decoration:none;
color: #fff;
}

/*ここまで*/




.l-main {
    width: 100%;
    padding-top: 90px;
}

.l-main2 {
    width: 100%;
    padding-top: 120px;
}

/* =============================================================================
   #Object
   ========================================================================== */
/**
 * 1. Component（`c-`）
 * 2. Project（`p-`）
 * 3. Utility（`u-`）

 * ..Library
 */
/* -----------------------------------------------------------------------------
   #Component
   -------------------------------------------------------------------------- */
.c-section_title {
    position: relative;
    margin-bottom: 50px;
    padding-bottom: 15px;
    border-bottom: 2px solid #dfdfdf;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    color: #222;
    line-height: 1;
    letter-spacing: 1px;
}

.c-section_title::after {
    position: absolute;
    bottom: -2px;
    left: 0;
    z-index: 2;
    content: "";
    width: 20%;
    height: 2px;
	background-color: #00A0C6;
    /*background-color: #9d5898;*/
}

.c-section_title span {
    margin-left: 18px;
    font-family: "Sumana", serif;
    font-size: 1.2rem;
    font-weight: bold;
    color: #8a8a8a;
    letter-spacing: 0;
}

.c-page_header {
    height: 196px;
    padding-top: 70px;
    margin-bottom: 45px;
    background: url("/images/common/bg_02_03.png");
    border-bottom: 6px solid #efefef;
	background-size:cover;
}

.c-page_header__title {
    text-align: center;
    line-height: 1;
}

.c-page_header__title__main {
    display: block;
    margin-bottom: 5px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 2.6rem;
    font-weight: 500;
    color: #1d1e1f;
    text-align: center;
    letter-spacing: 0.2rem;
}

.c-page_header__title__sub {
    position: relative;
    display: inline-block;
    padding: 0 25px;
    font-family: "Sumana", serif;
    font-size: 1.5rem;
    color: #992e91;
}

.c-page_header__title__sub::before {
    content: "";
    position: absolute;
    bottom: 40%;
    left: 0;
    display: block;
    width: 15px;
    height: 1px;
    background-color: #992e91;
}

.c-page_header__title__sub::after {
    content: "";
    position: absolute;
    bottom: 40%;
    right: 0;
    display: block;
    width: 15px;
    height: 1px;
    background-color: #992e91;
}

.c-section_anchor {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-bottom: 30px;
    list-style: none;
}

.c-section_anchor li {
    margin-right: 15px;
    padding-right: 15px;
    border-right: 1px solid #dadada;
    line-height: 1.2;
}

.c-section_anchor li:last-child {
    margin-right: 0;
    padding-right: 5px;
    border: none;
}

.c-section_anchor li a {
    display: inline-block;
    position: relative;
    padding-right: 20px;
    font-size: 1.3rem;
    font-weight: bold;
    text-decoration: none;
    letter-spacing: 0.5px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.c-section_anchor li a::after {
    position: absolute;
    content: "";
    top: 50%;
    right: 0;
    width: 6px;
    height: 6px;
    margin-top: -5px;
    border-right: 1px solid #00A0C6;
    border-top: 1px solid #00A0C6;
   /* border-right: 1px solid #8b2d95;
    border-top: 1px solid #8b2d95;*/
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
}

.c-section_anchor li a:hover {
    color: #992e91;
}

@media all and (-ms-high-contrast: none) {
    .c-section_anchor li a {
        padding-top: 5px;
    }
}

.c-mincho_title {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
        "ＭＳ 明朝", serif;
    font-size: 3.1rem;
    font-weight: normal;
    color: #111;
    letter-spacing: 1px;
}

.c-mincho_title.medium {
    font-size: 2.6rem;
}

.c-mincho_title span {
    display: block;
}

.c-mincho_title span.indent {
    text-indent: -1.2rem;
}

.c-table--row {
    display: table;
    width: 100%;
    border-top: 1px solid #dcdcdc;
}

.c-table--row:last-child {
    border-bottom: 1px solid #dcdcdc;
}

.c-table--th {
    display: table-cell;
    width: 150px;
    padding: 18px 15px 0 18px;
    background-color: #E8F9FF;
    /*background-color: #ece9f1;*/
    font-weight: bold;
}

.c-table--td {
    display: table-cell;
    padding: 18px 0 18px 30px;
}

.c-btn {
    overflow: hidden;
    position: relative;
    display: inline-block;
    border: 2px solid #00A0C6;
    /*border: 2px solid #8b2d95;*/
    text-align: center;
    text-decoration: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.c-btn.medium {
    width: 170px;
    height: 40px;
    padding-top: 6px;
}

.c-btn.large {
    width: 230px;
    height: 52px;
    padding-top: 10px;
}

.c-btn.large span {
    font-size: 1.6rem;
}

.c-btn.map {
    width: 150px;
    height: 36px;
    padding-top: 4px;
}

.c-btn.map span {
    margin-left: -3px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.2rem;
    font-weight: 500;
}

.c-btn.map::after {
    margin-left: 6px;
}

.c-btn.recruit {
    width: 230px;
    height: 52px;
    padding-top: 11px;
    background-color: #fff;
}

.c-btn.recruit span {
    margin-left: -8px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.4rem;
    font-weight: 500;
}

.c-btn.recruit::after {
    margin-left: 8px;
}

.c-btn.privacy {
    width: 230px;
    height: 52px;
    padding-top: 11px;
}

.c-btn.privacy span {
    font-family: "Noto Sans Japanese", sans-serif;
    font-weight: 500;
}

.c-btn.privacy::after {
    display: none;
}

.c-btn.submit {
    width: 190px;
    height: 48px;
}

.c-btn.submit span {
    font-family: "Noto Sans Japanese", sans-serif;
    font-weight: 500;
}

.c-btn.submit_back {
    width: 190px;
    height: 48px;
    border: 2px solid #555;
}

.c-btn.submit_back span {
    font-family: "Noto Sans Japanese", sans-serif;
    font-weight: 500;
    color: #444;
}

.c-btn.submit_back::before {
    background-color: #555;
}

.c-btn.submit_back::after {
    display: none;
}

.c-btn span {
    position: relative;
    font-family: "Roboto Condensed", sans-serif;
    color: #00A0C6;
    /*color: #8b2d95;*/
}

.c-btn::before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: #00A0C6;
    /*background-color: #8b2d95;*/
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.c-btn::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    margin-left: 15px;
    border-right: 1px solid #00A0C6;
    border-top: 1px solid #00A0C6;
    /*border-right: 1px solid #8b2d95;
    border-top: 1px solid #8b2d95;*/
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.c-btn:hover span {
    color: #fff;
}

.c-btn:hover::before {
    width: 100%;
}

.c-btn:hover::after {
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
}

/* -----------------------------------------------------------------------------
   #Project
   -------------------------------------------------------------------------- */
.p-section_title {
    margin-bottom: 55px;
    text-align: center;
    line-height: 1;
}

.p-section_title__main {
    display: block;
    margin-bottom: 13px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 2.8rem;
    font-weight: 500;
    color: #232323;
    text-align: center;
    letter-spacing: 0.15rem;
}

.p-section_title__sub {
    position: relative;
    display: inline-block;
    padding: 0 25px;
    font-family: "Sumana", serif;
    font-size: 1.5rem;
    font-weight: bold;
    color: #FF0000;
    /*color: #992e91;*/
}

.p-section_title__sub::before {
    content: "";
    position: absolute;
    bottom: 40%;
    left: 0;
    display: block;
    width: 15px;
    height: 1px;
	background-color: #FF0000;
    /*background-color: #992e91;*/
}

.p-section_title__sub::after {
    content: "";
    position: absolute;
    bottom: 40%;
    right: 0;
    display: block;
    width: 15px;
    height: 1px;
	background-color: #FF0000;
    /*background-color: #992e91;*/
}

/*.p-cover {
    position: relative;
    width: 100%;
    height: 566px;
    padding-top: 258px;
    border-bottom: 6px solid #efefef;
    background-image: url("../images/top/bg_maincover.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    text-align: center;
}

*/
.p-cover {
    position: relative;
    width: 100%;
    height: 566px;
    padding-top: 100px;
    border-bottom: 6px solid #efefef;
    background-image: url("/images/top/bg_maincover.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    text-align: center;
}

.p-cover__title {
    overflow: hidden;
    position: relative;
    display: inline-block;
    margin: 0 auto 13px;
    padding-bottom: 25px;
    font-family: "Sumana", serif;
    font-size: 4rem;
    font-weight: normal;
    color: #28272a;
    /*color: #992e91; 紫色*/
    line-height: 1;
}

.p-cover__title div {
    -webkit-transform: translateY(80px);
    -ms-transform: translateY(80px);
    transform: translateY(80px);
    -webkit-animation: coverTitleUp 0.6s 1.2s forwards;
    animation: coverTitleUp 0.6s 1.2s forwards;
}

.p-cover__title span {
    /*color: #28272a;*/
	color: #FF0000;
	
}

.p-cover__title::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 1.8px;
	/*background-color: #992e91;
	background-color: #00A0C6;*/
    background-color: #FFF;
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-animation: coverLine 0.5s 0.5s forwards;
    animation: coverLine 0.5s 0.5s forwards;
}

.p-cover__sub_title {
    margin-bottom: 22px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.7rem;
    font-weight: normal;
    /*color: #000;*/
	color: #666666;
    text-align: center;
    letter-spacing: 3px;
    opacity: 0;
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
    -webkit-animation: coverFadeInDown 0.5s 2.1s forwards;
    animation: coverFadeInDown 0.5s 2.1s forwards;
}

.p-cover__read {
    width: 740px;
    margin: 0 auto;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.3rem;
    font-weight: normal;
    color: #1f1f1f;
    text-align: center;
    line-height: 1.9;
    letter-spacing: 0.1em;
    opacity: 0;
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
    -webkit-animation: coverFadeInDown 0.5s 2.9s forwards;
    animation: coverFadeInDown 0.5s 2.9s forwards;
}

.p-cover__scroll {
    position: absolute;
    bottom: -50px;
    left: 50%;
    width: 50px;
    margin-left: -25px;
    opacity: 0;
    -webkit-animation: coverFade 0.5s 4s forwards;
    animation: coverFade 0.5s 4s forwards;
}

.p-cover__scroll .text {
    display: block;
    margin-bottom: 7px;
    font-family: "Roboto Condensed", sans-serif;
    font-size: 1.2rem;
    font-weight: bold;
	/*color: #222;*/
    color: #00A0C6;
    text-align: center;
    letter-spacing: 0.3px;
}

.p-cover__scroll .icon {
    position: relative;
    display: block;
    width: 32px;
    height: 32px;
    margin: 0 auto;
    /*background-color: #a075c8;*/
	background-color: #00A0C6;
    border-radius: 50%;
    z-index: 1;
}

.p-cover__scroll .icon::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 8px;
    margin-top: -6px;
    margin-left: -4px;
    border-right: 2px solid #eee;
    border-top: 2px solid #eee;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    z-index: 2;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation: arrow-ud 1.7s 1s ease-out infinite;
    animation: arrow-ud 1.7s 1s ease-out infinite;
}

.p-cover__scroll .icon::after {
    content: "";
    opacity: 0;
    position: absolute;
    left: -9px;
    top: -9px;
    width: 50px;
    height: 50px;
    background-color: #80F3FF;
	/*background-color: #a075c8;*/
    border-radius: 100%;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation: scroll-circle 1.7s 0.2s ease-out infinite;
    animation: scroll-circle 1.7s 0.2s ease-out infinite;
}

@-webkit-keyframes coverLine {
    0% {
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}

@keyframes coverLine {
    0% {
        -webkit-transform: scaleX(0);
        transform: scaleX(0);
    }

    100% {
        -webkit-transform: scaleX(1);
        transform: scaleX(1);
    }
}

@-webkit-keyframes coverTitleUp {
    0% {
        -webkit-transform: translateY(75px);
        transform: translateY(75px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes coverTitleUp {
    0% {
        -webkit-transform: translateY(75px);
        transform: translateY(75px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes coverFadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes coverFadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes coverFade {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes coverFade {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-webkit-keyframes arrow-ud {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-6px) rotate(135deg);
        transform: translateY(-6px) rotate(135deg);
    }

    30% {
        opacity: 1;
    }

    70% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(4px) rotate(135deg);
        transform: translateY(4px) rotate(135deg);
    }
}

@keyframes arrow-ud {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-6px) rotate(135deg);
        transform: translateY(-6px) rotate(135deg);
    }

    30% {
        opacity: 1;
    }

    70% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        -webkit-transform: translateY(4px) rotate(135deg);
        transform: translateY(4px) rotate(135deg);
    }
}

@-webkit-keyframes scroll-circle {
    0% {
        opacity: 0;
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    25% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes scroll-circle {
    0% {
        opacity: 0;
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    25% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}









.p-about {
    padding: 75px 0 80px;
}

.p-about__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 1000px;
    margin: 0 auto;
}

.p-about__box01 {
    width: 550px;
    padding-left: 30px;
}

.p-about__box01 .title {
    margin-bottom: 40px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
        "ＭＳ 明朝", serif;
    font-weight: bold;
    color: #002a5d;
}

.p-about__box01 .title span {
    display: inline-block;
    padding-bottom: 15px;
    border-bottom: 1px solid #002a5d;
    font-size: 2.6rem;
    line-height: 1;
}

.p-about__box01 .title span:nth-child(1) {
    margin-bottom: 20px;
}

.p-about__box01 .text {
    margin-bottom: 40px;
    font-size: 1.5rem;
    line-height: 2.1;
    letter-spacing: 1.3px;
}

/*追加202501*/
.p-about_01 {
    padding: 75px 0 80px;
}

.p-about_01__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 1000px;
    margin: 0 auto;
}

.p-about_01__box01 {
    width: 550px;
    padding-left: 30px;
}

.p-about_01__box01 .title {
    margin-bottom: 40px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
        "ＭＳ 明朝", serif;
    font-weight: bold;
    color: #002a5d;
}

.p-about_01__box01 .title span {
    display: inline-block;
    padding-bottom: 15px;
    border-bottom: 1px solid #002a5d;
    font-size: 2.6rem;
    line-height: 2;
}

.p-about_01__box01 .title span:nth-child(1) {
    margin-bottom: 20px;
}

.p-about_01__box01 .text {
    margin-bottom: 40px;
    font-size: 1.5rem;
    line-height: 2.1;
    letter-spacing: 1.3px;
}
.p-about_01__box03 {
    width: 450px;
   /* padding-left: 40px;
	padding-top:40px;*/
}

.p-about_01__box03 img{
    padding-left: 120px;
	padding-top: 120px;
}






.p-about_02 {
    padding: 75px 0 80px;
    background: url("/images/common/bg_02_03.png");
	background-size:cover;
}

.p-about_02__inner {
    position: relative;

    width: 1000px;
    margin: 0 auto;
}

.p-about_02__unit {
    position: relative;
    width: 1000px;
    padding: 0 20px;
    /*text-align: center;*/
	
	/*ストライプアニメーションのグラデーション 追加202501　*/
display: inline-block;
  font-size: 28px;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  background-image: linear-gradient(45deg, #d79f09 30%, #d1ba7c 50%, #7e6b37 30%);
  background-size: 300% 100%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation-name: gradationTextAnimation;
  animation-duration: 7s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

@keyframes gradationTextAnimation{
    0%{
        background-position: 0 0;
    }
    50%{
        background-position: 100% 0;
    }
    100%{
        background-position: 0 0;
    }
}

.p-about_02__unit .title {
    margin-left: 150px;
    font-family: "League Gothic","游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
        "ＭＳ 明朝", serif;
    font-size: 8rem;
    font-weight: 500;
    color: #002a5d;
    /*color: #333;*/
    letter-spacing: 0.2px;
}

// <uniquifier>: Use a unique and descriptive class name

.league-gothic-<uniquifier> {
  font-family: "League Gothic", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

.p-about_02__unit .title span {
    /*display: block;*/
    font-family: "Sumana", serif;
    font-size: 2.5rem;
    font-weight: bold;
    color: #8a8a8a;
	padding-left:70px;
}

.p-about_02__unit .text {
    font-size: 2.2rem;
    margin-bottom: 50px;
	margin-left: 450px;
    text-align: left;
    line-height: 1.2;
}

.p-about_02__box01 {
    width: 550px;
    padding-left: 30px;
}

.p-about_02__box01 .title {
    margin-left: 200px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
        "ＭＳ 明朝", serif;
    font-size: 6rem;
    font-weight: 500;
    color: #002a5d;
    /*color: #333;*/
    letter-spacing: 0.2px;
}

.p-about_02__box01 .title span {
    display: block;
    font-family: "Sumana", serif;
    font-size: 2rem;
    font-weight: bold;
    color: #8a8a8a;
}

.p-about_02__box01 .title span:nth-child(1) {
    margin-bottom: 20px;
}

.p-about_02__box01 .text {
    margin-bottom: 40px;
    font-size: 1.5rem;
    line-height: 2.1;
    letter-spacing: 1.3px;
}




.p-about_03 {
    padding: 75px 5px 80px 10px;
}

.p-about_03__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 1000px;
    margin: 0 auto;
}

.p-about_03__unit {
width:31%;
}
.p-about_03__unit .text{
padding-bottom:70px;
font-size:1.1em;
}

.p-about_03__box01 {
   
}

.p-about_03__box01 .title {
    margin-bottom: 40px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
        "ＭＳ 明朝", serif;
    font-weight: bold;
    color: #002a5d;
}

.p-about_03__box01 .title span {
    display: inline-block;
    padding-bottom: 15px;
    border-bottom: 1px solid #002a5d;
    font-size: 2.6rem;
    line-height: 1;
}

.p-about_03__box01 .title span:nth-child(1) {
    margin-bottom: 20px;
}

.p-about_03__box01 .text {
    margin-bottom: 40px;
    font-size: 1.5rem;
    line-height: 2.1;
    letter-spacing: 1.3px;
}


/*ここまで*/













.p-about__box02 {
    width: 450px;
    padding: 20px 0 0 30px;
}

.p-about__box02 .figure {
    position: relative;
    width: 400px;
    height: 378px;
}

.p-about__box02 .figure img {
    position: absolute;
}

.p-about__box02 .figure .logo {
    top: 154px;
    left: 140px;
    width: 120px;
    height: 120px;
    z-index: 4;
    opacity: 0;
    -webkit-transition: 0.3s 0.7s;
    transition: 0.3s 0.7s;
}

.p-about__box02 .figure .circle01 {
    top: 0;
    left: 90px;
    width: 220px;
    height: 220px;
    z-index: 3;
    opacity: 0;
    -webkit-transform: translate(0, 80px);
    -ms-transform: translate(0, 80px);
    transform: translate(0, 80px);
    -webkit-transition: 0.6s 1s;
    transition: 0.6s 1s;
}

.p-about__box02 .figure .circle02 {
    top: 158px;
    right: 0;
    width: 220px;
    height: 220px;
    z-index: 2;
    opacity: 0;
    -webkit-transform: translate(-90px, -50px);
    -ms-transform: translate(-90px, -50px);
    transform: translate(-90px, -50px);
    -webkit-transition: 0.6s 1.3s;
    transition: 0.6s 1.3s;
}

.p-about__box02 .figure .circle03 {
    top: 158px;
    left: 0;
    width: 220px;
    height: 220px;
    z-index: 1;
    opacity: 0;
    -webkit-transform: translate(90px, -50px);
    -ms-transform: translate(90px, -50px);
    transform: translate(90px, -50px);
    -webkit-transition: 0.6s 1.6s;
    transition: 0.6s 1.6s;
}

.p-about__box02 .figure .circle04 {
    top: 158px;
    left: 0;
    width: 220px;
    height: 220px;
    z-index: 1;
    opacity: 0;
    -webkit-transform: translate(90px, -50px);
    -ms-transform: translate(90px, -50px);
    transform: translate(90px, -50px);
    -webkit-transition: 0.6s 1.9s;
    transition: 0.6s 1.9s;
}


.p-about__box02 .figure.animation .logo {
    opacity: 1;
}

.p-about__box02 .figure.animation .circle01 {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

.p-about__box02 .figure.animation .circle02 {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

.p-about__box02 .figure.animation .circle03 {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
}

.p-service {
    padding: 75px 0 80px;
    background: url("/images/common/bg_02_03.png");
	background-size:cover;
	
}

.p-service__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 1000px;
    margin: 0 auto;
}



/*.p-service__unit {
    position: relative;
    width: 300px;
    padding: 0 20px;
    text-align: center;
}
*/
.p-service__unit {
    position: relative;
    width: 1000px;
    padding: 0;
}

.p-service__unit.animation:nth-of-type(1) {
    -webkit-transition: 0.8s 0.3s;
    transition: 0.8s 0.3s;
}

/*.p-service__unit.animation:nth-of-type(2) {
    -webkit-transition: 0.8s 0.6s;
    transition: 0.8s 0.6s;
}
*/
.p-service__unit.animation:nth-of-type(2) {
    -webkit-transition: 1s 0.8s;
    transition: 1s 0.6s;
}

.p-service__unit.animation:nth-of-type(3) {
    -webkit-transition: 0.8s 0.9s;
    transition: 0.8s 0.9s;
}

.p-service__unit.animation:nth-of-type(4) {
    -webkit-transition: 0.8s 1.2s;
    transition: 0.8s 1.2s;
}


/*.p-service__unit .title {
    margin: 13px 0 20px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    color: #333;
    letter-spacing: 0.5px;
}*/
.p-service__unit .title {
    margin-left: 200px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
        "ＭＳ 明朝", serif;
    font-size: 6rem;
    font-weight: 500;
    color: #002a5d;
    /*color: #333;*/
    letter-spacing: 0.2px;
}

.p-service__unit .title span {
    display: block;
    font-family: "Sumana", serif;
    font-size: 2rem;
    font-weight: bold;
    color: #8a8a8a;
}

/*.p-service__unit .text {
    margin-bottom: 30px;
    text-align: left;
    line-height: 2;
}
*/
.p-service__unit .text {
    font-size: 2.2rem;
    margin-bottom: 50px;
	margin-left: 450px;
    text-align: left;
    line-height: 2;
}

.p-service__operation_btn {
    position: absolute;
    bottom: 2.1%;
    left: 50%;
    margin-left: -85px;
}

.p-company {
    padding: 75px 0 80px;
    background: url("../images/top/bg_company.jpg") no-repeat left bottom;
}

.p-company__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 1000px;
    margin: 0 auto;
}

.p-company__box01 {
    width: 480px;
    margin-left: 10px;
    line-height: 2.3;
}

.p-company__box02 {
    width: 430px;
    margin-right: 30px;
}

.p-company__unit {
    position: relative;
    border-top: 1px solid #dfdfdf;
}

.p-company__unit:hover::before {
    width: 100%;
}

.p-company__unit::before {
    position: absolute;
    z-index: 0;
    content: "";
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: #f2f2f2;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.p-company__unit:nth-child(4) {
    margin-bottom: 50px;
    border-bottom: 1px solid #dfdfdf;
}

.p-company__unit a {
    display: block;
    position: relative;
    height: 90px;
    padding: 28px 0 0 95px;
    text-decoration: none;
    line-height: 1;
}
.p-company__unit.operation {
    display: block;
    position: relative;
    /*height: 360px;*/
    padding: 28px 0;
    text-decoration: none;
    line-height: 1;
}

.p-company__unit a::before {
    position: absolute;
    content: "";
    top: 30px;
    left: 30px;
    width: 32px;
    height: 30px;
    background-size: 32px 30px;
}
.p-company__unit.operation::before {
    position: absolute;
    content: "";
    top: 30px;
    left: 30px;
    width: 32px;
    height: 30px;
    background-size: 32px 30px;
}
.p-company__unit.operation h3 {
    padding-left: 95px;
}

.p-company__unit a.message::before {
    background: url("../images/top/icon_company01.png") center center no-repeat;
}

.p-company__unit a.company::before {
    background: url("../images/top/icon_company02.png") center center no-repeat;
}

.p-company__unit a.group::before {
    background: url("../images/top/icon_company03.png") center center no-repeat;
}

.p-company__unit.operation::before {
    background: url("../images/top/icon_company04.png") center center no-repeat;
}

.p-company__unit a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 40px;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    margin-left: 15px;
    border-right: 1px solid #00A0C6;
    border-top: 1px solid #00A0C6;
    /*border-right: 1px solid #8b2d95;
    border-top: 1px solid #8b2d95;*/
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 0.25s;
    transition: all 0.25s;
}
.p-company__unit a.logo::after {
    display: none;
}
.p-company__unit a.logo {
    height: auto;
}
.p-company__unit .company_logo {
    -js-display: flex;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.p-company__unit .company_logo p {
    width: 50%;
}
.p-company__unit .company_logo p:last-child {
    width: 40%;
    padding-left: 10%;
}
.p-company__unit .company_logo p:last-child img {
    width: 100%;
    height: auto;
}
.p-company__unit .title {
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.6rem;
    font-weight: 500;
    color: #333;
    letter-spacing: 0.5px;
}

.p-company__unit .title span {
    display: block;
    margin-top: 10px;
    font-family: "Sumana", serif;
    font-size: 1.1rem;
    font-weight: bold;
    color: #8a8a8a;
}

.p-company__bnr {
    text-align: right;
}

.p-company__bnr a {
    display: inline-block;
    border: 2px solid #e4e4e4;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.p-company__bnr a:hover {
    border: 2px solid #b8b8b8;
}
.p-company__logo {
text-align:left;
padding-left:250px;
}
.p-company__logo .c-logo_01 img {
width:450px;
padding-bottom:50px;
}
.p-company__logo p {
font-size:1.2em;
}



.p-bgimage {
    height: 300px;
    background: url("../images/top/bg_section.jpg") center no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

.p-column {
    margin: 0 auto;
    width: 1000px;
    margin-bottom: 40px;
    padding: 75px 0 0px;
    text-decoration: none;
}

.p-column a {
    text-decoration: none;
}

.p-column .column h2 {
    text-align: center;
    margin-bottom: 60px;
}

.p-column .column .con {
    width: 100%;
    position: relative;
    -js-display: flex;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-right: 0px;
    margin-left: 0px;
    margin-bottom: 100px;
}

.p-column .con .block-point {
    width: 300px;
    margin-bottom: 60px;
    /* margin-right: 50px; */
}

.p-column .con .block-point:nth-child(3),
.p-column .con .block-point:nth-child(6) {
    margin-right: 0;
}

.p-column .con .block-point img {
    width: 100%;
    height: auto;
}

.p-column .con .block-point .day {
    font-size: 1.3rem;
    margin-top: 1em;
}

.p-column .con .block-point h3 {
    font-size: 1.8rem;
    font-weight: bold;
    color: #992e91;
}

.p-column .con .block-point p {
    font-size: 1.6rem;
    text-decoration: none;
}

.p-column .con .block-point a:hover {
    opacity: 0.7;
    color: #9c9c9c;
    display: block;
}

.list_btn {
    width: 100%;
    margin-top: 15px;
}

.list_btn a {
    width: 25%;
    margin-left: auto;
    margin-right: auto;
    text-decoration: none;
    text-align: center;
    display: block;
    border: 1px solid #000000;
    margin-top: 15px;
    padding-top: 13px;
    padding-bottom: 13px;
    font-size: 1.6rem;
}

.list_btn a:hover {
    background-color: #333333;
    color: #ffffff;
}

.p-recruit {
    margin-bottom: 40px;
    padding: 75px 0 80px;
}

.p-recruit .read {
    width: 1000px;
    margin: 0 auto 55px;
    text-align: center;
}

.p-recruit__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 760px;
    margin: 0 auto;
}

.p-recruit__unit {
    width: 340px;
}

.p-recruit__unit a {
    overflow: hidden;
    position: relative;
    display: block;
}

.p-recruit__unit a::before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.45);
    z-index: 1;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.p-recruit__unit a:hover::before {
    background-color: rgba(0, 0, 0, 0.7);
}

.p-recruit__unit a:hover h3::before {
    opacity: 1;
    -webkit-transform: translateY(-17px);
    -ms-transform: translateY(-17px);
    transform: translateY(-17px);
}

.p-recruit__unit a:hover h3::after {
    opacity: 1;
    -webkit-transform: translateY(18px);
    -ms-transform: translateY(18px);
    transform: translateY(18px);
}

.p-recruit__title {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    width: 200px;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.6rem;
    font-weight: 500;
    color: #fff;
    text-align: center;
    letter-spacing: 2px;
    line-height: 1;
}

.p-recruit__title::before {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    content: "";
    width: 100%;
    height: 1px;
    background-color: #d3d3d3;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.p-recruit__title::after {
    opacity: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    content: "";
    width: 100%;
    height: 1px;
    background-color: #d3d3d3;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.p-mission {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 950px;
    margin: 0 auto;
}

.p-mission__figure {
    position: relative;
    width: 310px;
    padding-bottom: 50px;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    opacity: 0;
    -webkit-transition: 0.7s 0.3s;
    transition: 0.7s 0.3s;
}

.p-mission__figure h4 {
    position: absolute;
    top: 326px;
    width: 100%;
    text-align: center;
    line-height: 1;
}

.p-mission__figure h4 span {
    display: inline-block;
    padding-bottom: 5px;
    font-size: 1.5rem;
    color: #111;
    border-bottom: 1px solid #ad5dbe;
    letter-spacing: 1px;
}

.p-mission__figure.animation {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
}

.p-mission__line {
    position: relative;
    width: 140px;
}

.p-mission__line span {
    position: absolute;
    background-color: #b7b7b7;
}

.p-mission__line span:nth-of-type(1) {
    top: 209px;
    left: 0;
    width: 0;
    height: 2px;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transition: 0.3s 1s;
    transition: 0.3s 1s;
}

.p-mission__line span:nth-of-type(2) {
    bottom: 191px;
    left: 62px;
    width: 2px;
    height: 0;
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transition: 0.3s 1.3s;
    transition: 0.3s 1.3s;
}

.p-mission__line span:nth-of-type(3) {
    top: 211px;
    left: 62px;
    width: 2px;
    height: 0;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transition: 0.3s 1.3s;
    transition: 0.3s 1.3s;
}

.p-mission__line span:nth-of-type(4) {
    top: 209px;
    left: 62px;
    width: 0;
    height: 2px;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transition: 0.3s 1.6s;
    transition: 0.3s 1.6s;
}

.p-mission__line span:nth-of-type(5) {
    top: 87px;
    left: 62px;
    width: 0;
    height: 2px;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transition: 0.3s 1.6s;
    transition: 0.3s 1.6s;
}

.p-mission__line span:nth-of-type(6) {
    top: 331px;
    left: 62px;
    width: 0;
    height: 2px;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
    -webkit-transition: 0.3s 1.6s;
    transition: 0.3s 1.6s;
}

.p-mission__line.animation span:nth-of-type(1) {
    width: 64px;
}

.p-mission__line.animation span:nth-of-type(2) {
    height: 122px;
}

.p-mission__line.animation span:nth-of-type(3) {
    height: 122px;
}

.p-mission__line.animation span:nth-of-type(4) {
    width: 78px;
}

.p-mission__line.animation span:nth-of-type(5) {
    width: 78px;
}

.p-mission__line.animation span:nth-of-type(6) {
    width: 78px;
}

.p-mission__function {
    width: 500px;
}

.p-mission__function h4 {
    margin-bottom: 18px;
    color: #111;
    line-height: 1;
    letter-spacing: 1px;
    opacity: 0;
    -webkit-transition: 0.6s 2s;
    transition: 0.6s 2s;
}

.p-mission__function .unit {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
}

.p-mission__function .unit:nth-of-type(1) {
    -webkit-transition: 0.6s 2.3s;
    transition: 0.6s 2.3s;
}

.p-mission__function .unit:nth-of-type(2) {
    -webkit-transition: 0.6s 2.6s;
    transition: 0.6s 2.6s;
}

.p-mission__function .unit:nth-of-type(3) {
    -webkit-transition: 0.6s 3s;
    transition: 0.6s 3s;
}

.p-mission__function .unit dt {
    padding: 10px 20px;
    background-color: #ccc;
    border-radius: 5px 5px 0 0 / 5px 5px 0 0;
    font-family: "Noto Sans Japanese", sans-serif;
    font-weight: 500;
    color: #fff;
    line-height: 1;
    letter-spacing: 1px;
}

.p-mission__function .unit dt.title01 {
    background-color: #a474c5;
}

.p-mission__function .unit dt.title02 {
    background-color: #8b71c6;
}

.p-mission__function .unit dt.title03 {
    background-color: #7478c4;
}

.p-mission__function .unit dd {
    padding: 18px 13px 18px 19px;
    border-right: 1px solid #bcbcbc;
    border-bottom: 1px solid #bcbcbc;
    border-left: 1px solid #bcbcbc;
    border-radius: 0 0 5px 5px / 0 0 5px 5px;
    font-size: 1.3rem;
}

.p-mission__function .unit:not(:last-child) {
    margin-bottom: 20px;
}

.p-mission__function.animation h4 {
    opacity: 1;
}

.p-mission__function.animation .unit {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.p-value_zone {
    padding: 45px 0 50px;
    background-color: #f3f2ec;
}

.p-value_zone__unit:nth-of-type(1) {
    width: 320px;
    padding: 0 50px 0 5px;
}

.p-value_zone__unit:nth-of-type(2) {
    width: 360px;
    padding: 0 50px;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
}

.p-value_zone__unit:nth-of-type(3) {
    width: 320px;
    padding: 0 5px 0 50px;
}

.p-value_zone__unit h3 {
    margin-bottom: 30px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.7rem;
    font-weight: 500;
    color: #222;
    text-align: center;
}

.p-value_zone__unit h3 span {
    position: relative;
    display: inline-block;
    padding: 0 20px;
    z-index: 1;
}

.p-value_zone__unit h3 span::before {
    content: url("../images/about/img_valuetitle_mark01.png");
    position: absolute;
    bottom: 5px;
    left: 0;
}

.p-value_zone__unit h3 span::after {
    content: url("../images/about/img_valuetitle_mark02.png");
    position: absolute;
    bottom: -5px;
    right: 0;
}

.p-ideabox {
    position: relative;
}

.p-ideabox .figure_idea {
    position: absolute;
    top: 5px;
    right: 30px;
}

.p-ideabox__unit {
    border: 1px solid #c5c5c5;
    border-radius: 5px;
}

.p-ideabox__unit h3 {
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    color: #8a3e9a;
}

.p-ideabox__unit:nth-of-type(1),
.p-ideabox__unit:nth-of-type(2) {
    width: 530px;
    margin-bottom: 30px;
    padding: 32px 0 32px 40px;
}

.p-ideabox__unit:nth-of-type(1) h3,
.p-ideabox__unit:nth-of-type(2) h3 {
    display: inline-block;
    width: 120px;
    vertical-align: top;
}

.p-ideabox__unit:nth-of-type(1) p,
.p-ideabox__unit:nth-of-type(2) p {
    display: inline-block;
    width: 330px;
    padding-top: 3px;
}

.p-ideabox__unit:nth-of-type(1) p.first,
.p-ideabox__unit:nth-of-type(2) p.first {
    font-size: 1.6rem;
}

.p-ideabox__unit:nth-of-type(3) {
    padding: 35px 50px 0;
}

.p-ideabox__unit:nth-of-type(3) h3 {
    margin-bottom: 40px;
    text-align: center;
}

.p-ideabox__vision_row {
    display: table;
    width: 100%;
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px solid #dadada;
}

.p-ideabox__vision_row:last-child {
    margin-bottom: 0;
    border: none;
}

.p-ideabox__vision_row .th {
    display: table-cell;
    width: 350px;
    padding-left: 60px;
    vertical-align: middle;
    color: #222;
}

.p-ideabox__vision_row .th .vision_num {
    display: inline-block;
    margin: 0 20px 0 0;
    font-family: "Times New Roman", Serif;
    font-size: 3rem;
    font-style: italic;
    font-weight: normal;
    vertical-align: middle;
}

.p-ideabox__vision_row .th .vision_title {
    display: inline-block;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.5rem;
    font-weight: 500;
    vertical-align: middle;
}

.p-ideabox__vision_row .td {
    display: table-cell;
}

.p-service__textbox {
    /*width: 590px;*/
	width: 400px;
}


/*追加　202501*/
.p-service__textbox_right {
background-color:#9933CC;
    width: 500px;
}



.p-service__textbox__list {
    padding: 1.1em 2.2em;
    background: #f1f1f1;
    border-radius: 3px;
}



.p-service__textbox p {
    line-height: 2;
}

.p-service__image {
    width: 330px;
}

.p-service__flow {
    /*width: 360px;*/
	width: 550px;
  padding-top:80px;
}

.p-service__flow img{
width:100px;

}

.p-service__flow .title {
    margin-bottom: 20px;
    color: #222;
    text-align: center;
    letter-spacing: 1px;
}

.p-service__flow .sub_text {
    font-size: 1.2rem;
    letter-spacing: 0.5px;
}

/*追加　202501*/
.p-service__list dl{
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.p-service__list dt{
width:20%;
padding-bottom:15px;
}
.p-service__list dd{
width:80%;
padding-bottom:30px;
padding-left:120px;
  line-height:1.5em;
  font-size:1.2em;
 
}

.p-service__list .ect {
font-size:3rem;
}
/*ここまで*/	


/*追加*/
/*.p-service__textbox .list_service {
width:700px;
}
.p-service__textbox .list_service dt {
width:400px;
margin-left:250px;
}
.p-service__textbox .list_service dd {
margin-left:200px;
font-size:1.2em;
margin-bottom:60px;
letter-spacing: 1px;
line-height:2em
}*/


.p-flow_figure {
    position: relative;
    width: 360px;
    margin-bottom: 15px;
}

.p-flow_figure__gname {
    display: block;
    width: 80px;
    height: 24px;
    margin: 0 auto;
    background-color: #fff;
    border-style: solid;
    border-width: 1px;
    border-radius: 12px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
    font-size: 1.1rem;
    font-weight: bold;
    text-align: center;
    line-height: 22px;
    letter-spacing: 1.5px;
}

.p-flow_figure__customer {
    width: 180px;
    height: 550px;
    padding-top: 15px;
    background-color: #dbe9fa;
}

.p-flow_figure__customer span {
    border-color: #bbd1f9;
}

.p-flow_figure__ourcompany {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 180px;
    height: 550px;
    padding-top: 15px;
    background-color: #f9ead9;
    -webkit-transition: 0.5s 0.2s;
    transition: 0.5s 0.2s;
}

.p-flow_figure__ourcompany span {
    border-color: #fcc1aa;
}

.p-flow_figure__itemgroup {
    position: absolute;
    top: 64px;
    left: 0;
    padding: 0 15px;
}

.p-flow_figure__item {
    position: relative;
    z-index: 1;
    width: 150px;
    height: 40px;
    margin-bottom: 24px;
    padding-top: 6px;
    background-color: #6880d8;
    border-radius: 3px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
    color: #fff;
    letter-spacing: 0.5px;
    -webkit-transition: 0.8s 0.3s;
    transition: 0.8s 0.3s;
}

.p-flow_figure__item.order2,
.p-flow_figure__item.order6,
.p-flow_figure__item.order7 {
    background: #6880d8;
    background: -webkit-gradient(linear, left top, right top, color-stop(0%, #6880d8), color-stop(100%, #c171bb));
    background: -webkit-linear-gradient(left, #6880d8 0%, #c171bb 100%);
    background: linear-gradient(to right, #6880d8 0%, #c171bb 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='$start-color', endColorstr='$end-color', GradientType=1);
}

.p-flow_figure__item.order2::after,
.p-flow_figure__item.order6::after,
.p-flow_figure__item.order7::after {
    content: "";
    position: absolute;
    z-index: 0;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #6880d8;
    border-radius: 3px;
    -webkit-transition: 0.8s 0.3s;
    transition: 0.8s 0.3s;
}

.p-flow_figure__item.order3 {
    height: 75px;
}

.p-flow_figure__item span {
    display: inline-block;
    margin-right: 7px;
    font-family: "Arial", sans-serif;
    font-size: 1.7rem;
    font-weight: bold;
    vertical-align: middle;
}

.p-flow_figure__item .item_title {
    position: relative;
    z-index: 1;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
}

.p-flow_figure__item .item_subtext {
    margin-top: -3px;
    font-size: 1.1rem;
    text-align: center;
    line-height: 1.5;
}

.p-flow_figure__line {
    position: absolute;
    z-index: 0;
    left: 88px;
    display: block;
    width: 4px;
    height: 30px;
    background-color: #5c78ac;
    -webkit-transition: 0.9s 0.2s;
    transition: 0.9s 0.2s;
}

.p-flow_figure__line.line1 {
    top: 39px;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
}

.p-flow_figure__line.line2 {
    top: 103px;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
}

.p-flow_figure__line.line3 {
    bottom: 254px;
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
}

.p-flow_figure__line.line4 {
    top: 265px;
    -webkit-transform-origin: left top;
    -ms-transform-origin: left top;
    transform-origin: left top;
}

.p-flow_figure__line.line5 {
    bottom: 127px;
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
}

.p-flow_figure__line.line6 {
    top: 394px;
}

.p-flow_figure.animation .p-flow_figure__ourcompany {
    -webkit-transform: translateX(180px);
    -ms-transform: translateX(180px);
    transform: translateX(180px);
}

.p-flow_figure.animation .p-flow_figure__item.order2,
.p-flow_figure.animation .p-flow_figure__item.order6,
.p-flow_figure.animation .p-flow_figure__item.order7 {
    -webkit-transform: translateX(90px);
    -ms-transform: translateX(90px);
    transform: translateX(90px);
}

.p-flow_figure.animation .p-flow_figure__item.order2::after,
.p-flow_figure.animation .p-flow_figure__item.order6::after,
.p-flow_figure.animation .p-flow_figure__item.order7::after {
    opacity: 0;
}

.p-flow_figure.animation .p-flow_figure__item.order3,
.p-flow_figure.animation .p-flow_figure__item.order5 {
    -webkit-transform: translateX(180px);
    -ms-transform: translateX(180px);
    transform: translateX(180px);
    background-color: #c171bb;
}

.p-flow_figure.animation .p-flow_figure__line.line1 {
    height: 100px;
    -webkit-transform: rotate(-73deg);
    -ms-transform: rotate(-73deg);
    transform: rotate(-73deg);
}

.p-flow_figure.animation .p-flow_figure__line.line2 {
    height: 100px;
    -webkit-transform: translateX(90px) rotate(-73deg);
    -ms-transform: translateX(90px) rotate(-73deg);
    transform: translateX(90px) rotate(-73deg);
}

.p-flow_figure.animation .p-flow_figure__line.line3 {
    height: 200px;
    -webkit-transform: rotate(81deg);
    -ms-transform: rotate(81deg);
    transform: rotate(81deg);
}

.p-flow_figure.animation .p-flow_figure__line.line4 {
    -webkit-animation: line_rotate 0.9s 0.2s forwards;
    animation: line_rotate 0.9s 0.2s forwards;
}

.p-flow_figure.animation .p-flow_figure__line.line5 {
    height: 100px;
    -webkit-transform: translateX(90px) rotate(73deg);
    -ms-transform: translateX(90px) rotate(73deg);
    transform: translateX(90px) rotate(73deg);
}

.p-flow_figure.animation .p-flow_figure__line.line6 {
    -webkit-transform: translateX(90px);
    -ms-transform: translateX(90px);
    transform: translateX(90px);
}

@-webkit-keyframes line_rotate {
    0% {
        height: 30px;
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    50% {
        height: 90px;
    }

    100% {
        height: 200px;
        -webkit-transform: rotate(-81deg);
        transform: rotate(-81deg);
    }
}

@keyframes line_rotate {
    0% {
        height: 30px;
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    50% {
        height: 90px;
    }

    100% {
        height: 200px;
        -webkit-transform: rotate(-81deg);
        transform: rotate(-81deg);
    }
}



.p-message__textbox {
    width: 640px;
}

.p-message__textbox p {
    margin-bottom: 20px;
    line-height: 2.1;
}

.p-message__photo {
    width: 220px;
    padding-top: 80px;
}

/*追加　202501*/
.p-message__comment {
font-size:1.5em;
margin-left:100px;
margin-bottom:80px;
line-height:2em;
text-align: center;

}
.p-message__comment p span{
font-size:0.9em;
}

.p-message__photo-sp {
    display: none;
}
.p-message__profile {
line-height:1.2em;
font-size:0.8em;
padding:10px 5px 10px 5px;
}



.p-message__profile dl{
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.p-message__profile dt{
width:20%;
}
.p-message__profile dd{
width:80%;
padding-bottom:5px;

}








.p-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 50px;
    padding: 16px;
    background-color: #f2f2f2;
}

.p-group--unit {
    width: 312px;
    padding: 20px 20px 20px 25px;
    background-color: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 5px;
}

.p-group--unit h3 {
    margin-bottom: 30px;
}

.p-group--unit h3 a {
    -webkit-transition: 0.25s;
    transition: 0.25s;
}

.p-group--unit h3 a:hover {
    opacity: 0.6;
}

.p-group--unit:nth-of-type(1) {
    margin-bottom: 12px;
}

.p-group--unit:nth-of-type(2) {
    width: 640px;
    margin-bottom: 12px;
}

.p-group--unit .block01 {
    display: inline-block;
    width: 270px;
    vertical-align: top;
}

.p-group--unit .block02 {
    display: inline-block;
    width: 310px;
    text-align: right;
}

.p-job_info {
    position: relative;
    margin-bottom: 70px;
}

.p-job_info__title {
    margin-bottom: 50px;
    padding-top: 40px;
    font-size: 3rem;
    letter-spacing: 0;
}

.p-job_info__title span:nth-child(1) {
    padding-left: 5px;
}

.p-job_info__block.block01 {
    width: 610px;
    margin-bottom: 220px;
    padding: 30px 40px 0 40px;
    background-color: #fff;
}

.p-job_info__block.block02 {
    float: right;
    width: 570px;
    padding: 30px 40px 0 40px;
    background-color: #fff;
}

.p-job_info__block.block03 {
    position: relative;
    top: -120px;
    left: 50px;
    width: 560px;
    padding: 30px 40px 0 40px;
    background-color: #fff;
}

.p-job_info__block.block04 {
    width: 520px;
    margin: 0 0 70px 300px;
    padding: 30px 40px 0 40px;
    background-color: #fff;
}

.p-job_info__block h4 {
    position: relative;
    margin-bottom: 32px;
    padding-left: 20px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    color: #8a3e9a;
    letter-spacing: 1px;
}

.p-job_info__block h4::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    display: inline-block;
    width: 3px;
    height: 3em;
    margin-top: -1.5em;
    background: #8a3e9a;
}

.p-job_info__block p {
    line-height: 2.2;
}

.p-job_info__img {
    position: absolute;
    z-index: -1;
}

.p-job_info__img.photo01 {
    top: 0;
    right: 0;
}

.p-job_info__img.photo02 {
    top: 490px;
    right: 50px;
}

.p-job_info__img.photo03 {
    top: 665px;
    left: 100px;
}

.p-job_info__img.photo05 {
    top: 510px;
    right: 0;
}

.p-job_info__img.photo06 {
    top: 700px;
    left: 0;
}

.recuit_sec01 {
    min-height: 2750px;
}

.p-requirement {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.p-requirement__unit {
    width: 320px;
    padding: 25px;
    background-color: #efefef;
    border-bottom: 1px solid #e4e4e4;
    border-radius: 3px;
}

.p-requirement__unit h3 {
    position: relative;
    margin-bottom: 32px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    color: #222;
    text-align: center;
    letter-spacing: 1px;
}

.p-requirement__unit h3::after {
    position: absolute;
    bottom: -10px;
    left: 50%;
    content: "";
    width: 40px;
    height: 1px;
    margin-left: -20px;
    background-color: #666;
}

.p-requirement__unit p {
    font-size: 1.3rem;
    letter-spacing: 1px;
}

.p-requirement__unit.fresh p {
    color: #e70012;
    text-align: center;
}

.p-requirement__unit.fresh p:nth-of-type(1) {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 20px;
}

.p-requirement__unit.career p {
    margin-bottom: 10px;
}

.p-requirement__unit.career a {
    display: block;
    border: 2px solid #e4e4e4;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.p-requirement__unit.career a:hover {
    border: 2px solid #b8b8b8;
}

.p-requirement__unit.part_time .part_contact_area {
    text-align: center;
}

.p-requirement__unit.part_time .part_contact_area .telephone {
    display: inline-block;
    font-family: "Roboto Condensed", sans-serif;
    font-size: 2.6rem;
    font-weight: bold;
    color: #8b2d95;
    letter-spacing: -0.3px;
}

.p-requirement__unit.part_time .part_contact_area .telephone::before {
    content: url(../images/recruit/icon_telephone.png);
    position: relative;
    top: 2px;
    margin-right: 6px;
}

.p-registration {
    margin-bottom: 150px;
    padding-top: 50px;
}

.p-registration .c-table--th {
    width: 190px;
}

.p-registration .c-table--td {
    padding-left: 20px;
}

.p-contact_info__question {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 30px;
}

.p-contact_info__text {
    width: 65%;
}

.p-contact_info__tel {
    font-family: "Roboto Condensed", sans-serif;
    font-size: 3rem;
    font-weight: bold;
    color: #992e91;
    letter-spacing: -0.5px;
}

.p-contact_info__tel span {
    margin-right: 5px;
    font-size: 2.3rem;
    vertical-align: middle;
}

.p-contact_info__tel a {
    color: #992e91;
    text-decoration: none;
}

a[href^="tel:"] {
    cursor: default;
}

.p-contact_info__personal {
    position: relative;
    margin-bottom: 50px;
    padding: 1.7em 2.3em 1.8em;
    background: #f1f1f1;
    border-radius: 3px;
}

.p-contact_info__personal dt {
    margin-bottom: 10px;
    font-weight: bold;
}

.p-contact_info__personal .privacy_btn {
    position: absolute;
    top: 50%;
    right: 8.5em;
    margin-top: -26px;
}

/*追加　202501*/
.p-contact_inner {
position:relative;

}

.p-contact_inner.contact_img_01 {
position:absolute;
top:100px;
left:50px;

}
.p-contact_inner.contact_img_02 {
position:absolute;
top:100px;
left:500px;
}

.p-contact__textbox {
position:absolute;
	text-align:center;
	width:50%;
	/*margin-left:250px;*/
	top:200px;
	left:250px;
	background-color:#FFFFFF;
	border:solid 1px #999999;
	padding:50px 0 50px 0;
	z-index: 1;
	
}
.p-contact__textbox h3 {
	border-bottom: 1px solid #000;
	display: inline-block;
	padding-bottom: 8px;
}
.p-contact__textbox p{
    font-family: "Roboto Condensed", sans-serif;
    font-size: 2em;
    color: #007D8B;
	padding-bottom:12px;
}
.p-contact__textbox span{
    font-size: 1.3em;
}
p.p-contact__tel {
font-weight:bold;
}


/*ここまで*/







.p-form.js-fadeIn {
    -webkit-transition: 1s 1s;
    transition: 1s 1s;
}

.p-form__row {
    display: table;
    width: 100%;
    margin: 0 0 15px 0;
    padding: 0 0 15px 0;
    border-bottom: 1px solid #e3e3e3;
}

.p-form__th {
    position: relative;
    display: table-cell;
    width: 30%;
    padding-left: 60px;
    font-weight: bold;
    color: #222;
    vertical-align: middle;
}

.p-form__th .sub_text {
    font-size: 1.2rem;
    font-weight: normal;
    color: #666;
}

.p-form__th .require {
    float: right;
    padding: 5px 8px;
    border-radius: 2px;
    border: 1px solid #e22c2c;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
    font-size: 1.1rem;
    line-height: 1;
    color: #e22c2c;
}

.p-form__td {
    display: table-cell;
    width: 70%;
    padding-left: 80px;
}

.p-form__td input,
.p-form__td textarea,
.p-form__td label {
    color: #444;
    font-size: 1.4rem;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",
        Meiryo, sans-serif;
    -webkit-font-smoothing: antialiased;
}

.p-form__td input[type="checkbox"] {
    margin-right: 7px;
}

.p-form__td input[type="text"],
.p-form__td input[type="email"] {
    width: 80%;
}

.p-form__td input[type="text"],
.p-form__td input[type="email"],
.p-form__td textarea {
    border-radius: 3px;
    border-style: solid;
    border-width: 1px;
    border-color: #ccc;
    box-sizing: border-box;
    background-color: #fff;
    padding: 0.375rem 0.85rem;
}

.p-form__td input[type="text"]:focus,
.p-form__td input[type="email"]:focus,
.p-form__td textarea:focus {
    border-color: #66afe9;
    box-shadow: 0 0 3px #a5cdec inset;
    outline: 0;
}

.p-form__td textarea {
    width: 95%;
    height: 130px;
}

.p-form__td label {
    margin-right: 20px;
}

.p-form__td label span {
    vertical-align: middle;
}

.p-form__foot {
    padding-top: 20px;
    padding-bottom: 40px;
    text-align: center;
}

.p-form__foot button {
    margin: 0 10px;
    outline: none;
}

.p-form__finish {
    width: 700px;
    margin: 0 auto 80px;
    padding-top: 30px;
}

.p-form__finish p {
    line-height: 2;
}

/* -----------------------------------------------------------------------------
   #Utility
   -------------------------------------------------------------------------- */
.u-fw--nm {
    font-weight: normal;
}

.u-fw--b {
    font-weight: bold;
}

.u-m--auto {
    margin: auto;
}

.u-m--none {
    margin: 0;
}

.u-mb--10 {
    margin-bottom: 10px;
}

.u-mb--15 {
    margin-bottom: 15px;
}

.u-mb--20 {
    margin-bottom: 20px;
}

.u-mb--25 {
    margin-bottom: 25px;
}

.u-mb--30 {
    margin-bottom: 30px;
}

.u-mb--35 {
    margin-bottom: 35px;
}

.u-mb--40 {
    margin-bottom: 40px;
}

.u-mb--50 {
    margin-bottom: 50px;
}

.u-mb--60 {
    margin-bottom: 60px;
}

.u-mb--70 {
    margin-bottom: 70px;
}

.u-mb--80 {
    margin-bottom: 80px;
}

.u-mb--90 {
    margin-bottom: 90px;
}

.u-clearFix {
    *zoom: 1;
}

.u-clearFix:after {
    clear: both;
}

.u-clearFix:before,
.u-clearFix:after {
    content: " ";
    display: table;
}

.u-float--left {
    float: left;
}

.u-float--right {
    float: right;
}

.u-float--none {
    float: none;
}

.u-float--clear {
    clear: both;
}

.u-d--n {
    display: none;
}

.u-d--i {
    display: inline;
}

.u-d--ib {
    display: inline-block;
}

.u-d--b {
    float: block;
}

.u-d--f {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.u-d--tb {
    display: table;
}

.u-d--tbc {
    display: table-cell;
}

.u-jc--fs {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.u-jc--fe {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.u-jc--sb {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.u-jc--sa {
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.u-ai--fs {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    -ms-grid-row-align: flex-start;
    align-items: flex-start;
}

.u-ai--fe {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    -ms-grid-row-align: flex-end;
    align-items: flex-end;
}

.u-ai--c {
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    -ms-grid-row-align: center;
    align-items: center;
}

.u-ai--c {
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
    -ms-flex-align: baseline;
    -ms-grid-row-align: baseline;
    align-items: baseline;
}

.u-align--left {
    text-align: left;
}

.u-align--right {
    text-align: right;
}

.u-align--center {
    text-align: center;
}

.u-va--top {
    vertical-align: top;
}

.u-va--middle {
    vertical-align: middle;
}

.u-va--bottom {
    vertical-align: bottom;
}

.u-list--normal {
    margin: 0;
    padding: 0;
    list-style: none;
}

.u-list--mark {
    margin: 0;
    padding: 0;
    list-style: none;
}

.u-list--mark li {
    position: relative;
    padding-left: 1.1em;
}

.u-list--mark li::before {
    position: absolute;
    content: "";
    top: 0.9em;
    left: 0;
    display: inline-block;
    width: 5px;
    height: 5px;
    margin-top: -3px;
    background: #444;
    border-radius: 50%;
}

.u-list--mark.purple li::before {
    background: #922a8a;
}

.u-list--mark.blue li::before {
    background: #006ebc;
}

.u-list--mark.green li::before {
    background: #00948d;
}

.u-list--mark.orange li::before {
    background: #ff6b00;
}

.u-box--center {
    width: 1000px;
    margin-right: auto;
    margin-left: auto;
}

.u-box--w480 {
    width: 480px;
}

/* -----------------------------------------------------------------------------
   #State
   -------------------------------------------------------------------------- */
.js-fadeIn {
    opacity: 0;
    -webkit-transition: 1s 0.3s;
    transition: 1s 0.3s;
}

.js-fadeIn.animation {
    opacity: 1;
}

.js-fadeInUp {
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
    -webkit-transition: 0.8s 0.3s;
    transition: 0.8s 0.3s;
}

.js-fadeInUp.animation {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.js-fadeInRight {
    opacity: 0;
    -webkit-transform: translateX(-50px);
    -ms-transform: translateX(-50px);
    transform: translateX(-50px);
    -webkit-transition: 0.8s 0.3s;
    transition: 0.8s 0.3s;
}

.js-fadeInRight.animation {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}

.js-fadeInLeft {
    opacity: 0;
    -webkit-transform: translateX(50px);
    -ms-transform: translateX(50px);
    transform: translateX(50px);
    -webkit-transition: 0.8s 0.3s;
    transition: 0.8s 0.3s;
}

.js-fadeInLeft.animation {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
}

.js-ZoomIn {
    opacity: 0;
    -webkit-transform: scale(0.1, 0.1);
    -ms-transform: scale(0.1, 0.1);
    transform: scale(0.1, 0.1);
    -webkit-transition: 0.6s 0.3s;
    transition: 0.6s 0.3s;
}

.js-ZoomIn.animation {
    opacity: 1;
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
}

/* ぼかしから出現 */
.js-Blur{
	animation-name:blurAnime;
	animation-duration:6s;
	animation-fill-mode:forwards;
}

@keyframes blurAnime{
  from {
	filter: blur(10px);
	transform: scale(1.02);
  }

  to {
	filter: blur(0);
	transform: scale(1);
  }
}



/* -----------------------------------------------------------------------------
   #Library
   -------------------------------------------------------------------------- */
/* Z-INDEX */
.formError {
    z-index: 990;
}

.formError .formErrorContent {
    z-index: 991;
}

.formError .formErrorArrow {
    z-index: 996;
}

.ui-dialog .formError {
    z-index: 5000;
}

.ui-dialog .formError .formErrorContent {
    z-index: 5001;
}

.ui-dialog .formError .formErrorArrow {
    z-index: 5006;
}

.inputContainer {
    position: relative;
    float: left;
}

.formError {
    position: absolute;
    top: 300px;
    left: 300px;
    display: block;
    cursor: pointer;
    text-align: left;
    opacity: 1 !important;
}

.formError.inline {
    position: relative;
    top: 0;
    left: 0;
    display: inline-block;
}

.ajaxSubmit {
    padding: 20px;
    background: #55ea55;
    border: 1px solid #999;
    display: none;
}

.formError .formErrorContent {
    width: 100%;
    background: #e22c2c;
    position: relative;
    color: #fff;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
    font-size: 1.1rem;
    font-weight: bold;
    padding: 6px 12px;
    border-radius: 2px;
}

.formError .formErrorContent::after {
    position: absolute;
    content: "";
    display: block;
    bottom: -16px;
    left: 15px;
    width: 0;
    height: 0;
    border-top: 10px solid #e22c2c;
    border-right: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid transparent;
}

.formError.inline .formErrorContent {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
    border: none;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    -o-border-radius: 0;
}

.greenPopup .formErrorContent {
    background: #33be40;
}

.blackPopup .formErrorContent {
    background: #393939;
    color: #fff;
}

.formError .formErrorArrow {
    display: none;
    width: 15px;
    margin: -2px 0 0 13px;
    position: relative;
}

body[dir="rtl"] .formError .formErrorArrow,
body.rtl .formError .formErrorArrow {
    margin: -2px 13px 0 0;
}

.formError .formErrorArrowBottom {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
    margin: 0 0 0 12px;
    top: 2px;
}

.formError .formErrorArrow div {
    font-size: 0;
    height: 1px;
    margin: 0 auto;
    line-height: 0;
    font-size: 0;
    display: block;
}

.formError .formErrorArrowBottom div {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
}

.greenPopup .formErrorArrow div {
    background: #33be40;
}

.blackPopup .formErrorArrow div {
    background: #393939;
    color: #fff;
}

.formError .formErrorArrow .line10 {
    width: 13px;
    border: none;
}

.formError .formErrorArrow .line9 {
    width: 11px;
    border: none;
}

.formError .formErrorArrow .line8 {
    width: 11px;
}

.formError .formErrorArrow .line7 {
    width: 9px;
}

.formError .formErrorArrow .line6 {
    width: 7px;
}

.formError .formErrorArrow .line5 {
    width: 5px;
}

.formError .formErrorArrow .line4 {
    width: 3px;
}

.formError .formErrorArrow .line3 {
    width: 1px;
    border-left: 2px solid #ddd;
    border-right: 2px solid #ddd;
    border-bottom: 0 solid #ddd;
}

.formError .formErrorArrow .line2 {
    width: 3px;
    border: none;
    background: #ddd;
}

.formError .formErrorArrow .line1 {
    width: 1px;
    border: none;
    background: #ddd;
}

/*追加　202501*/
.img-gallery{
    background:url("../img/border.png") repeat-x top left,url("../img/border.png") repeat-x bottom left;
    background-size: 50px 16px;
    padding:50px 0;
    margin: 0 0 100px 0;
}

.img-gallery img{
    border-radius: 10px;
}

/*複数画像を流して見せる*/
.slider2 img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
}
.slider2 .slick-slide {
    margin:0 10px;/*スライド左右の余白調整*/
}

.fadeUpTrigger,
/*.zoomInTrigger,
.flipLeftTopTrigger,
.flipRightTopTrigger*/{
    opacity: 0;
}




/* -----------------------------------------------------------------------------
   # Media Queries
   -------------------------------------------------------------------------- */

@media screen and (max-width: 768px) {
    html {
        overflow-x: hidden;
        min-width: 320px;
    }

    .br-pc {
        display: none;
    }

    .br-sp {
        display: block;
    }

    section {
        overflow-x: hidden;
    }

    nav {
        display: none;
        position: absolute;
        top: 65px;
        width: 100%;
        background: #fff;
        left: 0;
        z-index: 30;
    }

    .l-main {
        padding-top: 65px;
    }

    .l-header {
        height: 65px;
    }

    .l-header__inner {
        width: 100%;
    }

    .l-header__siteLogo {
        margin-left: 26px;
        margin-top: 13px;
        height: auto;
    }

    .l-header__siteLogo img {
        width: auto;
        height: 40px;
    }

    h1.l-header__siteLogo {
        line-height: 40px;
    }

    .l-header__gNaviList > a {
        height: auto;
        padding: 15px 15px;
    }
    .l-main2 {
        padding-top: 65px;
    }

    #nav_toggle {
        display: block;
        width: 40px;
        height: 40px;
        margin-left: auto;
        position: relative;
        top: 20px;
        right: 30px;
        z-index: 1000;
    }

    #nav_toggle div {
        position: relative;
    }

    #nav_toggle span {
        display: block;
        height: 3px;
        background: #303030;
        position: absolute;
        width: 100%;
        left: 0;
        -webkit-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        transition: 0.5s ease-in-out;
    }

    #nav_toggle span:nth-child(1) {
        top: 0px;
    }

    #nav_toggle span:nth-child(2) {
        top: 12px;
    }

    #nav_toggle span:nth-child(3) {
        top: 24px;
    }

    .open #nav_toggle span:nth-child(1) {
        top: 12px;
        -webkit-transform: rotate(135deg);
        -moz-transform: rotate(135deg);
        transform: rotate(135deg);
    }

    .open #nav_toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }

    .open #nav_toggle span:nth-child(3) {
        top: 12px;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    .l-header__gNavi {
        height: auto;
        padding-top: 15px;
    }

    .l-header__gNaviList {
        display: block;
        width: 100%;
    }

    .l-header__gNaviList.about,
    .l-header__gNaviList.contact,
    .l-header__gNaviList.service,
    .l-header__gNaviList.company,
    .l-header__gNaviList.access {
        width: 100%;
    }

    .l-header__gNaviList > a::before {
        top: 63px;
        width: 60%;
        left: 20%;
    }

    .title-center {
        text-align: center;
    }

    .p-cover__title div {
        -webkit-transform: translateY(135px);
        -ms-transform: translateY(135px);
        transform: translateY(135px);
    }

    .p-cover {
        height: 300px;
		/*height: 100px;*/
    }

    .p-cover__title {
		font-size:2em;
        margin-top: 30px;
        position: relative;
        /*top: -150px;*/
		top: -100px;
		padding-bottom:15px;
    }

    .p-cover__sub_title {
        margin: 0 auto;
        width: 90%;
        margin-bottom: 30px;
        margin-top: -110px;
		/*margin-top: -50px;*/
    }

    .p-cover__read {
        width: 90%;
        text-align: left;
    }

    .p-about {
        background: #fff;
        padding-top: 350px;
        padding-bottom: 0;
    }

    .p-about__inner {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .p-about__box01,
    .p-about__box02 {
        width: 90%;
        padding: 0;
        margin: 0 auto;
    }

    .p-about__box01 .title {
        margin-bottom: 20px;
    }

    .p-about__box01 .title span {
        border: none;
        font-size: 1.8rem;
        padding-bottom: 0;
    }

    .p-about__box02 {
        padding-top: 40px;
    }

    .p-about__box02 .figure {
        padding-bottom: 83%;
        height: 0;
        margin: 0 auto;
    }

    .p-about__box02 .figure .circle02 {
        right: auto;
        left: 180px;
    }
	
/*追加　202501*/
	p-about_01 {
        background: #fff;
        padding-top: 350px;
        padding-bottom: 0;
    }

    .p-about_01__inner {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .p-about_01__box01,
    .p-about_01__box02 {
        width: 90%;
        padding: 0;
        margin: 0 auto;
    }

    .p-about_01__box01 .title {
        margin-bottom: 20px;
    }

    .p-about_01__box01 .title span {
        border: none;
        font-size: 1.8rem;
        padding-bottom: 0;
    }

    .p-about_01__box02 {
        padding-top: 40px;
    }

    .p-about_01__box02 .figure {
        padding-bottom: 83%;
        height: 0;
        margin: 0 auto;
    }

    .p-about_01__box02 .figure .circle02 {
        right: auto;
        left: 180px;
    }
	
.p-about_01__box03 img{
padding-top:5px;
}

.p-about_02 {
padding-bottom:30px;
    /*padding: 75px 0 80px;*/
}

    .p-about_02__inner {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

.p-about_02__unit h3.title{


}

.p-about_02__unit h3.title span {
padding:0;
}


    .p-about_02__box01,
    .p-about_02__box02 {
        width: 90%;
        padding: 0;
        margin: 0 auto;
    }

    .p-about_02__box01 .title {
        margin-bottom: 20px;
    }

    .p-about_02__box01 .title span {
        border: none;
        font-size: 1.8rem;
        padding-bottom: 0;
    }

    .p-about_02__box02 {
        padding-top: 40px;
    }

    .p-about_02__box02 .figure {
        padding-bottom: 83%;
        height: 0;
        margin: 0 auto;
    }

    .p-about_02__box02 .figure .circle02 {
        right: auto;
        left: 180px;
    }
	
	
/*ここまで*/	






    .p-service__inner {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .p-service__unit {
        width: 100%;
        padding-bottom: 30px;
    }
	







    .c-btn.medium {
        width: 90%;
    }

    .c-btn.large {
        width: 100%;
    }

    .p-service__operation_btn {
        position: relative;
        left: auto;
        margin-left: 0;
    }

    .p-company {
        background: #fff;
        padding-bottom: 0;
    }

    .p-company__inner {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .p-company__box01 {
        width: 90%;
        margin: 0 auto 40px;
    }

    .p-company__box02 {
        width: 90%;
        margin: 0 auto;
    }

    .p-company__bnr {
        text-align: center;
    }

    .p-company__bnr a,
    .p-company__bnr a img {
        width: 100%;
    }

    .p-column {
        width: 100%;
        background: #fff;
    }

    .p-column .column {
        width: 90%;
        margin: 0 auto;
    }

    .p-column .con .block-point {
        width: 100%;
        max-width: 450px;
        margin: 0 auto 40px;
    }

    .p-column .con .block-point img {
        width: 100%;
        height: auto;
    }

    .list_btn a {
        width: 90%;
    }

    .p-recruit {
        width: 100%;
        padding-top: 20px;
        background: #fff;
        margin-bottom: 0;
    }

    .p-recruit .read {
        width: 90%;
        text-align: left;
    }

    .p-recruit__inner {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .p-recruit__unit {
        width: 90%;
        margin: 0 auto 20px;
    }

    .p-recruit__unit img {
        width: 100%;
    }

    .p-bgimage {
        background: none;
        height: 150px;
    }

    .p-bgimage::before {
        background-position: center center;
        background-size: cover;
        background: url("../images/top/bg_section.jpg") no-repeat;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: "";
        z-index: -1;
    }

    .l-footer__inner {
        width: 100%;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .l-footer__column:nth-child(1),
    .l-footer__column:nth-child(2),
    .l-footer__column:nth-child(3),
    .l-footer__column:nth-child(4) {
        display: none;
    }

    .l-footer__column:nth-child(5) {
        width: 70%;
        padding-left: 30px;
    }

    .l-footer__column:nth-child(6) {
        padding: 0 30px 0 0;
    }

    .l-footer__column:nth-child(5) .l-footer__nav__child li:nth-child(1) {
        display: none;
    }

    .l-footer__column:nth-child(5) .l-footer__nav__child li a {
        font-size: 1.6rem;
    }

    .p-column .column .con {
        margin-bottom: 20px;
    }

    .l-footer__copyRight .inner {
        width: 100%;
    }

    .u-list--normal {
        display: none;
    }

    .l-footer__copyRight small {
        display: block;
        width: 90%;
        margin: 0 auto;
        text-align: center;
    }

    .l-footer {
        width: 100%;
    }

    .l-footer__backTop {
        bottom: 35px;
    }

    .l-header__gNaviList:hover.is-current > a::before {
        -webkit-transform-origin: left;
        -ms-transform-origin: left;
        transform-origin: left;
        -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1);
        -webkit-transition: 0.2s;
        transition: 0.2s;
    }

    .l-header__gNaviList.is-current > a::before {
        -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
        transform: scaleX(0);
    }

    .u-box--center {
        width: 90%;
        overflow: hidden;
    }

    .u-jc--sb {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .c-page_header {
        height: 140px;
        padding-top: 40px;
        margin-bottom: 20px;
    }

    .p-service__textbox {
        width: 100%;
        order: 1;
    }

    .p-service__flow {
        width: 100%;
        margin-top: 30px;
        order: 2;
    }

    .p-flow_figure {
        margin: 0 auto;
        margin-bottom: 20px;
    }

    .u-jc--sb .p-service__image {
        order: 2;
        margin-top: 30px;
        width: 100%;
    }

    .u-jc--sb .p-service__image img {
        width: 100%;
    }

    .p-message__textbox {
        width: 100%;
    }

    .c-mincho_title {
        font-size: 2rem;
    }

    .u-d--f.fl--c .p-message__photo {
        /*display: none;*/
        flex-direction: unset;
    }

    .p-message__photo-sp {
        display: block;
        float: right;
        padding: 0 0 20px 20px;
    }

    .u-box--w480 {
        width: 100%;
    }

    .c-table--th {
        display: block;
        width: 100%;
        padding: 10px 15px 10px 30px;
    }

    .c-table--td {
        display: block;
        padding-right: 30px;
    }

    .c-table--row:last-child {
        border-bottom: none;
    }

    .c-btn.map {
        margin: 0 auto;
        margin-top: 30px;
    }

    .p-group--unit {
        width: 100%;
    }

    .p-group--unit .block01,
    .p-group--unit:nth-of-type(2) {
        width: 100%;
    }

    .p-group--unit .block02 {
        width: 100%;
        text-align: center;
        padding-top: 30px;
        margin-bottom: 20px;
    }

    .p-group--unit .block02 img {
        width: 100%;
        max-width: 310px;
    }

    .p-company-groupimg {
        display: none;
    }

    #section03.u-mb--90 {
        margin-bottom: 0;
    }

    .p-job_info {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .p-job_info__title {
        padding-top: 0;
    }

    .p-job_info__block.block01 {
        width: 100%;
        margin-bottom: 40px;
        padding: 0;
    }

    .p-job_info__block.block01 img {
        padding-right: 20px;
    }

    .p-job_info__img {
        position: static;
        padding: 15px 0;
    }

    .p-job_info img {
        width: 100%;
    }

    .p-job_info .w50 {
        width: 50%;
    }

    .p-job_info__img.photo01 {
        order: 1;
    }

    .p-job_info__img.photo02 {
        order: 2;
    }

    .p-job_info__img.photo03 {
        order: 3;
    }

    .p-job_info__img.photo01,
    .p-job_info__img.photo01 img,
    .p-job_info__img.photo02,
    .p-job_info__img.photo02 img,
    .p-job_info__img.photo03,
    .p-job_info__img.photo03 img {
        width: 100%;
        padding: 5px 0;
    }

    .p-job_info__block.block02 {
        width: 100%;
        float: none;
        order: 4;
        padding: 0;
    }

    .p-job_info__block.block03,
    .p-job_info__block.block04 {
        top: 0;
        left: 0;
        width: 100%;
        padding: 30px 0 0 0;
    }

    .p-job_info__block.block04 {
        margin: 0 0 40px 0;
        order: 5;
    }

    .photo07 {
        order: 6;
    }

    .photo07 img {
        width: 100%;
        height: auto;
    }

    .p-requirement {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .p-requirement__unit {
        width: 100%;
    }

    .p-requirement__unit.part_time .part_contact_area .telephone {
        display: block;
        width: 100%;
    }

    .p-mission {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .p-mission__line {
        display: none;
    }

    .p-mission__figure {
        width: 100%;
        text-align: center;
        margin-bottom: 30px;
        transition: 0.6s 0.1s;
    }

    .p-mission__figure img {
        width: 100%;
        max-width: 310px;
    }

    .p-mission__function {
        width: 100%;
    }

    .p-value_zone .u-d--f {
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .p-value_zone {
        padding: 0;
    }

    .p-value_zone__unit:nth-of-type(1),
    .p-value_zone__unit:nth-of-type(2),
    .p-value_zone__unit:nth-of-type(3) {
        width: 100%;
        padding: 40px 20px;
        border-bottom: 2px solid #dfdfdf;
    }

    .p-value_zone__unit:nth-of-type(3) {
        border: none;
    }

    .p-value_zone__unit h3 {
        text-align: left;
    }

    .p-ideabox {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .p-ideabox .figure_idea {
        position: relative;
        order: 3;
        top: 0;
        right: 0;
        width: 100%;
        max-width: 512px;
        margin: 0 auto 30px;
    }

    .p-mission__function.animation .unit {
        transition: 0.6s 1s;
    }

    .p-ideabox__unit:nth-of-type(3) h3 {
        margin-bottom: 20px;
    }

    .p-ideabox__unit:nth-of-type(1) {
        width: 100%;
        order: 1;
        padding: 32px 15px;
    }

    .p-ideabox__unit:nth-of-type(2) {
        width: 100%;
        order: 2;
        padding: 32px 15px;
    }

    .p-ideabox__unit:nth-of-type(3) {
        width: 100%;
        order: 4;
        padding: 35px 20px 0;
        margin-bottom: 40px;
    }

    .p-ideabox__unit:nth-of-type(1) p,
    .p-ideabox__unit:nth-of-type(2) p {
        width: 100%;
    }

    .p-ideabox__vision_row .th,
    .p-ideabox__vision_row .td {
        display: block;
        width: 100%;
        padding-left: 0;
    }

    .p-contact_info__text {
        width: 100%;
    }

    .p-contact_info__question {
        display: block;
        margin-bottom: 30px;
    }

    .p-contact_info__personal {
        position: static;
    }

    .p-contact_info__personal dt {
        text-align: center;
    }

    .p-contact_info__personal .privacy_btn {
        position: static;
        margin-top: 20px;
    }

    .p-contact_info__personal .privacy_btn a {
        width: 100%;
    }

    .p-form__th {
        position: static;
        display: block;
        width: 60%;
        padding-left: 0px;
    }

    .p-form__td {
        display: block;
        width: 100%;
        padding-left: 0px;
        margin-top: 10px;
    }

    .p-form__foot {
        /* padding-bottom: 40px; */
    }
	
/* フッター02 */
  footer.footer02 {
    padding: 2rem 1rem 1rem;
  }

  .footer-container {
    flex-wrap: wrap;
    justify-content: center;
    max-width: 180px;
    margin-bottom: 2rem;
	
  }

  div.logo {
    width: 60px;
    height: auto;
    margin: 0 0 1.5rem;
  }

  nav.nav {
    margin-right: 0;
    margin-bottom: 1.2rem;
    width: 100%;
  }

  nav.nav ul.item li.list__nav__parent {
    padding-bottom: 0.8rem;
    text-align: center;
	list-style:none;
  }

  nav.nav ul.item li.list__nav__parent a {
    font-weight: bold;
    color: #fff;
    font-size: 0.8rem;
  }

  ul.sns-container li.list {
    padding: 0 0.5rem;
	
  }

  ul.sns-container li.list img.icon-twitter {
    width: 20px;
  }

  ul.sns-container li.list img.icon-facebook {
    width: 20px;
  }

  ul.sns-container li.list img.icon-instagram {
    width: 20px;
  }

}

@media screen and (max-width: 500px) {

.p-cover {
}

.p-cover__title {
font-size:1.6em;
font-weight:bold;
top: -100px;
line-height:1.5em;
text-align:left;

/*        margin-top: 30px;
position: relative;
padding-bottom:15px;*/
}

.p-cover__sub_title {
font-size:0.7em;
margin-top: -110px;
letter-spacing:0.1em;
}

.p-contact_inner.contact_img_01 {
top:25px;
left:75px;
/*position:absolute;*/

}
.p-contact_inner.contact_img_02 {
position:absolute;
top:200px;
left:500px;
}

.p-contact__textbox {
	width:50%;
	/*margin-left:250px;*/
	top:250px;
	left:0px;
/*
	opacity: 95%;	
position:absolute;
	text-align:center;
	background-color:#FFFFFF;
	border:solid 1px #999999;
	padding:50px 0 50px 0;
	z-index: 1;
*/
}


.p-section_title {
margin-bottom: 40px;
/*    margin-bottom: 55px;
    text-align: center;
    line-height: 1;
*/
}

.p-section_title__main {
padding-left:5px;;
}

/*.p-about_01__box03 {
    width: 450px;
    padding-left: 40px;
	padding-top:40px;
}
*/

.p-about_03__box01 {
padding-bottom:30px;
}
.p-about_03__box01 img{
width:85%;
margin-left:25px;
   
}



.p-about_01__box03 img{
    padding-left: 80px;
	padding-top: 0px;
	width:250px;
}


.p-section_title__main {
    font-size: 2rem;
    margin-bottom: 10px;
/*    display: block;
    margin-bottom: 13px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 2.8rem;
    font-weight: 500;
    color: #232323;
    text-align: center;
    letter-spacing: 0.2rem;*/
}





.p-about_02__inner {
}
.p-about_02__unit {
}

.p-about_02__unit .title {
text-align:left;
    margin-left: 5px;
    /*font-family: "League Gothic","游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
        "ＭＳ 明朝", serif;
	*/
    font-size: 7rem;
    font-weight: 500;
    color: #002a5d;
    /*color: #333;*/
    letter-spacing: 0.6px;
	line-height:0.7em;
	padding-bottom:20px;
}

.p-about_02__unit .title span {
    font-weight: 300;
font-size:0.22em;

}


.p-about_02__unit .title .br-sp {
}



    .p-about__box02 .figure .circle01,
    .p-about__box02 .figure .circle02,
    .p-about__box02 .figure .circle03, 
	.p-about__box02 .figure .circle04 {
        width: 160px;
        height: 160px;
    }



    .p-about__box02 {
        padding-bottom: 40px;
    }

    .p-about__box02 .figure {
        width: 300px;
    }

    .p-about__box02 .figure .logo {
        width: 81px;
        height: 81px;
        top: 105px;
        left: 105px;
    }

    .p-about__box02 .figure .circle01 {
        left: 68px;
    }

    .p-about__box02 .figure .circle02 {
        top: 115px;
        left: auto;
        right: 0;
    }

    .p-about__box02 .figure .circle03 {
        top: 115px;
    }

.p-about_03__inner {
/*display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
*/
display: inline-block;
width: 100%;
/*margin: 0 auto;*/
}
.p-about_03__unit {
padding-left:15px;
width:90%;
}
.p-about_03__unit .text{
padding-bottom:30px;
/*font-size:1.2em;*/
}




    .c-mincho_title.medium {
        font-size: 2rem;
    }

    .br-sp-m {
        display: block;
    }

    .c-section_anchor li a {
        font-size: 1.1rem;
    }
	
/*.p-company__logo img{
width:100%;
}
*/
.p-company__logo {
text-align:left;
padding-left:15px;
padding-bottom:80px;
}
.p-company__logo .c-logo_01 img {
width:300px;
padding-bottom:30px;
}
.p-company__logo p {
font-size:1em;
}





.p-message__comment {
font-size:1.1em;
margin-left:20px;
margin-bottom:10px;
line-height:1em;
text-align: left;
font-weight: bold;
color:#007D8B;
}
.p-message__comment p span{
font-size:0.9em;
}

.p-message__photo img{
width:250px;
padding-left:35px;

}
.p-message__profile {
width:300px;
line-height:1.4em;
font-size:0.8em;
padding-left:20px;
padding-top:15px;
/*padding:10px 5px 10px 5px;*/
}

.p-service__flow {
width: 100%;
margin-top: 30px;
/*order: 2;*/
}



.p-service__list img {
width:70px;

}

.p-service__list {
width:100%;
}
.p-service__list dl{
position:relative;
}
.p-service__list dt{
padding-bottom:5px;
width:20%;

}
.p-service__list dd{
width:100%;
/*padding-bottom:30px;
padding-left:120px;*/
line-height:1.7em;
font-size:1em;
 
}
.p-service__list .ect {
font-size:2rem;
}

.p-contact__textbox {
width:315px;
	margin-left:5px;
	text-align:center;
	padding:25px 0 25px 0;*/
	/*width:50%;
	margin-left:250px;
	border:solid 1px #999999;
	padding:50px 0 50px 0;*/
}

.p-contact__textbox p{
    font-size: 1.8em;
	font-weight:700;
    /*font-family: "Roboto Condensed", sans-serif;
    color: #007D8B;
	padding-bottom:12px;*/
}
.p-contact__textbox span{
    font-size: 1em;
}

.l-footer__wrap {
display: none;
}

.l-footer__copyRight {
width: 100%;
text-align:left;
}
.l-footer__copyRight .inner {
/*    display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
margin: 0 auto;
padding: 15px 0 13px;
width: 1000px;


*/

}

.footer-container {
display:none;
}



}

@media screen and (max-width: 400px) {
    .p-flow_figure {
        width: 100%;
    }

    .p-flow_figure__itemgroup {
        padding: 8px;
    }

    .p-flow_figure__customer {
        width: 50%;
    }

    .p-flow_figure__ourcompany {
        width: 50%;
    }

    .p-flow_figure__line {
        height: 35px;
    }

    .p-flow_figure.animation .p-flow_figure__ourcompany {
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%);
    }

    .p-flow_figure.animation .p-flow_figure__item.order2,
    .p-flow_figure.animation .p-flow_figure__item.order6,
    .p-flow_figure.animation .p-flow_figure__item.order7 {
        -webkit-transform: translateX(50%);
        -ms-transform: translateX(50%);
        transform: translateX(50%);
    }

    .p-flow_figure.animation .p-flow_figure__item.order3,
    .p-flow_figure.animation .p-flow_figure__item.order5 {
        -webkit-transform: translateX(115%);
        -ms-transform: translateX(115%);
        transform: translateX(115%);
    }

    .p-flow_figure.animation .p-flow_figure__line.line6 {
        -webkit-transform: translateX(80px);
        -ms-transform: translateX(80px);
        transform: translateX(80px);
    }

    .p-flow_figure.animation .p-flow_figure__line.line1 {
        -webkit-transform: rotate(-63deg);
        -ms-transform: rotate(-63deg);
        transform: rotate(-63deg);
    }

    .p-flow_figure.animation .p-flow_figure__line.line2 {
        -webkit-transform: translateX(90px) rotate(-63deg);
        -ms-transform: translateX(90px) rotate(-63deg);
        transform: translateX(90px) rotate(-63deg);
    }

    .p-flow_figure.animation .p-flow_figure__line.line3 {
        -webkit-transform: rotate(71deg);
        -ms-transform: rotate(71deg);
        transform: rotate(71deg);
    }

    .p-flow_figure.animation .p-flow_figure__line.line4 {
        animation: none;
        -webkit-transform: rotate(-71deg);
        -ms-transform: rotate(-71deg);
        transform: rotate(-71deg);
        height: 140px;
    }

    .p-flow_figure.animation .p-flow_figure__line.line5 {
        -webkit-transform: translateX(90px) rotate(63deg);
        -ms-transform: translateX(90px) rotate(63deg);
        transform: translateX(90px) rotate(63deg);
    }
}

@media screen and (max-width: 320px) {
    .p-flow_figure__item {
        width: 127px;
    }
    .p-flow_figure__item .item_title {
        font-size: 1.1rem;
    }
    .p-group--unit img {
        width: 100%;
    }
    .c-mincho_title {
        font-size: 1.6rem;
    }
    .p-job_info__block h4 {
        font-size: 1.4rem;
        letter-spacing: 0px;
    }
    .c-mincho_title.medium {
        font-size: 1.6rem;
    }
}

.mfp_err {
    display: none;
    color: red;
}

#mfp_hidden,
#mfp_phase_stat {
    display: none;
}
