@charset "UTF-8";
/*  common
================================================ */
/* =====================================================
 * reset.css
 * - Edit html5doctor.com's CSS
 * - http://html5doctor.com/html-5-reset-stylesheet/
 * Last Updated:2017-03-01
====================================================== */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, input, select, textarea {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-style: normal;
  font-weight: 400;
  vertical-align: bottom;
  background: transparent; }

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

html {
  font-size: 62.5%; }

body {
  font-family: sans-serif;
  line-height: 1; }

ul, ol {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

a {
  margin: 0;
  padding: 0;
  vertical-align: bottom;
  background: transparent;
  outline: none; }

img {
  vertical-align: bottom; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%; }

th, td {
  text-align: left;
  vertical-align: top; }

input, select, textarea {
  font-family: inherit; }

input[type="submit"] {
  cursor: pointer; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

/*  02_base
================================================ */
html {
  overflow: auto; }

body {
  min-width: 320px;
  font-family: -apple-system, Poppins, "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  color: #151515;
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0;
  overflow: hidden; }
  @media all and (min-width: 600px) {
    body {
      min-width: 1040px;
      font-size: 1.5rem; } }
  body.sg {
    height: auto; }

a {
  color: inherit;
  text-decoration: underline; }
  @media all and (min-width: 600px) {
    a:hover {
      text-decoration: none; } }

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

strong,
strong span {
  font-weight: 600; }

.l-wrapper {
  position: relative; }

.l-container {
  padding: 0; }
  @media all and (min-width: 600px) {
    .l-container {
      padding: 0; }
      .l-container.col2 .l-contents {
        display: flex;
        justify-content: space-between;
        width: 1000px;
        margin: 0 auto; }
      .l-container.col2 .l-main {
        width: calc(100% - 300px - 20px); }
      .l-container.col2 .l-sidebar {
        width: 300px; } }

.l-inner-box {
  background: #fff; }
  @media all and (min-width: 600px) {
    .l-inner-box {
      padding: 0 50px 100px; } }
  @media all and (max-width: 599px) {
    .l-inner-box {
      padding: 0 10px 50px; } }

/*  utility
================================================ */
/* pc <--> sp
-------------------------------------- */
.u-media-query {
  display: none;
  font-family: 'sp'; }
  @media all and (min-width: 600px) {
    .u-media-query {
      font-family: 'pc'; } }

@media all and (max-width: 599px) {
  .u-view-pc {
    display: none !important; } }

@media all and (min-width: 600px) {
  .u-view-sp {
    display: none !important; } }

/* link
-------------------------------------- */
.u-alpha {
  display: block;
  text-decoration: none; }
  @media all and (min-width: 600px) {
    .u-alpha {
      transition: all 0.3s ease; }
      .u-alpha:hover {
        opacity: .7; } }

/* bg
-------------------------------------- */
.u-bg01 {
  background: #F0F3F5; }

/* layout
-------------------------------------- */
.u-cf::after {
  content: "";
  display: block;
  clear: both; }

.u-inner {
  box-sizing: border-box; }
  @media all and (max-width: 599px) {
    .u-inner {
      padding-left: 20px;
      padding-right: 20px; } }
  @media all and (min-width: 600px) {
    .u-inner {
      width: 100%;
      max-width: 1100px;
      max-width: 1120px;
      margin: auto; } }

@media all and (max-width: 599px) {
  .u-inner02 {
    padding-left: 15px;
    padding-right: 15px; } }
@media all and (min-width: 600px) {
  .u-inner02 {
    padding-left: 55px;
    padding-right: 55px; } }

/* Wordpress
-------------------------------------- */
.aligncenter {
  display: block;
  margin: 0 auto;
  text-align: center; }

.alignright {
  float: right; }

.alignleft {
  float: left; }

img.aligncenter {
  display: block;
  margin: auto; }

p + figure img.aligncenter,
figure + * {
  margin-top: 2em; }

img.alignright {
  margin: auto 0 1em 1em; }

img.alignleft {
  margin: auto 1em 1em 0; }

.page-template-default .l-contents p + p {
  margin-top: 2em; }

.l-inner-box > section + section {
  margin-top: 50px; }

/*  common
@import "03_layout/_mainimg.scss";
================================================ */
/* .l-footer
================================================ */
.l-footer {
  position: relative; }
  .l-footer .footer__inner {
    position: relative; }
  .l-footer .pagetop {
    position: absolute;
    bottom: 360px;
    right: 0px;
    width: 6px; }
  .l-footer .footer__cr {
    font-size: 1.1rem;
    text-align: center;
    letter-spacing: 0.08em;
    color: #838487; }
  @media all and (max-width: 599px) {
    .l-footer .footer__inner {
      padding: 40px 0 20px; }
    .l-footer .footer__logo {
      margin-bottom: 30px;
      width: 100px; }
    .l-footer .address {
      font-size: 1.2rem;
      line-height: calc(20/12); }
    .l-footer .footer__menu-list {
      margin-top: 30px;
      display: flex;
      flex-wrap: wrap;
      align-items: center; }
      .l-footer .footer__menu-list li {
        margin-bottom: 15px;
        width: 50%;
        padding: 0 10px 0 0;
        box-sizing: border-box; }
        .l-footer .footer__menu-list li:nth-child(2n) {
          padding: 0 0 0 10px; }
        .l-footer .footer__menu-list li:last-child {
          width: 100%;
          padding: 0; }
        .l-footer .footer__menu-list li a {
          display: block;
          padding: 7px;
          font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
          font-size: 1.5rem;
          letter-spacing: 0.08em;
          text-align: center;
          text-decoration: none;
          border-bottom: 1px solid #D1D3D5; }
    .l-footer .footer__cr {
      margin-top: 35px; } }
  @media all and (min-width: 600px) {
    .l-footer .footer__inner {
      display: flex;
      padding: 80px 0 70px; }
    .l-footer .pagetop {
      bottom: 40px;
      right: -45px;
      width: 6px; }
    .l-footer .footer__left {
      width: 50%; }
    .l-footer .footer__logo {
      width: 124px; }
    .l-footer .footer__head-area {
      margin-top: 50px; }
    .l-footer .address {
      font-size: 1.3rem;
      line-height: calc(22/13); }
    .l-footer .footer__right {
      width: 50%; }
    .l-footer .footer__menu-list {
      float: right;
      display: flex;
      align-items: center;
      justify-content: items-end; }
      .l-footer .footer__menu-list li {
        margin-left: 24px;
        letter-spacing: 0.08em; }
        .l-footer .footer__menu-list li a {
          transition: all 0.3s ease;
          padding: 0 5px;
          text-decoration: none;
          background: #fff;
          border-bottom: 1px solid transparent; }
          .l-footer .footer__menu-list li a:hover {
            border-bottom: 1px solid #151515; }
    .l-footer .footer__cr {
      margin-top: 110px;
      font-size: 1.2rem;
      text-align: right; } }

/* .footerBtm
================================================ */
.footerBtm {
  background: #0E62C1;
  padding: 12px 0;
  font-size: 1rem;
  color: #fff; }
  @media all and (min-width: 600px) {
    .footerBtm {
      padding: 19px 0 22px;
      font-size: 1.1rem; } }

/* .c-pagetop
================================================ */
@media all and (max-width: 599px) {
  .ft-pagetop {
    position: static !important; } }
.ft-pagetop__link {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  padding: 5px 0 12px;
  background: #b72d8c;
  color: #fff;
  text-align: center;
  text-decoration: none;
  overflow: hidden;
  white-space: nowrap; }
.ft-pagetop__img {
  width: 20px;
  margin: 0 auto; }
@media all and (min-width: 600px) {
  .ft-pagetop__link {
    padding: 8px 0 15px; }
  .ft-pagetop__img {
    width: 27px;
    margin: 0 auto; } }

/* .l-header
================================================ */
.l-header {
  position: relative;
  min-width: 320px; }
  @media all and (max-width: 599px) {
    .l-header .u-inner {
      padding: 0; } }
  @media all and (min-width: 600px) {
    .l-header {
      width: 100%;
      min-width: 1000px; }
      .l-header__inner {
        display: flex;
        align-items: center;
        height: 90px; } }

/* .l-header .hd-info
-------------------------------------- */
.l-header .hd-info {
  position: relative;
  z-index: 50;
  height: 58px; }
  @media all and (max-width: 599px) {
    .l-header .hd-info__logo {
      padding: 12px 0 0 20px;
      width: 95px; } }
  @media all and (min-width: 600px) {
    .l-header .hd-info {
      width: 177px;
      padding: 0;
      display: flex;
      align-items: center; }
      .l-header .hd-info__logo {
        margin-top: 5px;
        width: 124px; } }

/* .l-header .nav-btn
-------------------------------------- */
.l-header .nav-btn {
  position: absolute;
  top: 0;
  right: 0;
  width: 58px;
  height: 58px;
  background: #0E62C1;
  cursor: pointer;
  z-index: 99999; }
  .l-header .nav-btn__line {
    position: absolute;
    left: 17px;
    width: 28px;
    height: 2px;
    content: '';
    background: #fff;
    transition: all 0.3s ease; }
    .l-header .nav-btn__line:nth-child(1) {
      top: 21px; }
    .l-header .nav-btn__line:nth-child(2) {
      top: 28px; }
    .l-header .nav-btn__line:nth-child(3) {
      top: 35px; }
  .l-header .nav-btn.is-open .nav-btn__line:nth-child(1) {
    top: 28px;
    transform: rotate(-45deg); }
  .l-header .nav-btn.is-open .nav-btn__line:nth-child(2) {
    opacity: 0; }
  .l-header .nav-btn.is-open .nav-btn__line:nth-child(3) {
    top: 28px;
    transform: rotate(45deg); }

/* .l-nav
================================================ */
.l-nav .nav-list__link01 {
  position: relative;
  text-decoration: none;
  display: block;
  font-family: "Poppins", "Helvetica Neue", HelveticaNeue; }
.l-nav .nav-list__link01::before, .l-nav .nav-list__link01::after, .l-nav .nav-list__link02::before, .l-nav .nav-list__link02::after {
  display: block;
  position: absolute;
  content: "";
  transition: all 0.3s ease; }
.l-nav .nav-list__link02 {
  display: flex;
  align-items: center;
  background: #fff;
  padding: 7px;
  text-decoration: none;
  box-sizing: border-box;
  @trans include; }
  .l-nav .nav-list__link02:hover {
    background: #838487; }
  .l-nav .nav-list__link02 .nav-child__img {
    width: 40px;
    margin-right: 10px; }
  .l-nav .nav-list__link02 .nav-child__txt {
    font-size: 1.3rem;
    font-weight: 600; }
    .l-nav .nav-list__link02 .nav-child__txt.is-small {
      font-size: 1.2rem; }
.l-nav .nav-list__child li:last-child .nav-list__link02 {
  margin-right: 0; }
.l-nav .nav__btn-list {
  display: flex;
  justify-content: center;
  box-sizing: border-box; }
  .l-nav .nav__btn-list li {
    padding: 0 7px;
    width: 50%;
    box-sizing: border-box; }
    .l-nav .nav__btn-list li a {
      display: block;
      padding: 10px 0;
      text-align: center;
      background: #fff; }
      .l-nav .nav__btn-list li a img {
        vertical-align: middle; }
    .l-nav .nav__btn-list li.line a {
      border: 1px solid #00B900; }
      .l-nav .nav__btn-list li.line a img {
        width: 125px; }
      .l-nav .nav__btn-list li.line a:hover {
        background: #00B900; }
    .l-nav .nav__btn-list li.mail a {
      border: 1px solid #0E62C1; }
      .l-nav .nav__btn-list li.mail a img {
        width: 131px; }
      .l-nav .nav__btn-list li.mail a:hover {
        background: #0E62C1; }
@media all and (max-width: 599px) {
  .l-nav {
    position: fixed;
    display: none;
    top: 58px;
    left: 0;
    z-index: 50;
    width: 100%;
    max-height: calc(100vh - 58px);
    min-width: 320px;
    border-top: 1px solid #D1D3D5;
    box-sizing: border-box;
    text-align: center;
    -webkit-overflow-scrolling: touch;
    max-height: auto;
    overflow: auto;
    background: #fff;
    transition: all 0.3s ease; }
    .l-nav::-webkit-scrollbar {
      display: none; }
    .l-nav.is-open {
      display: block;
      transform: translateX(0); }
    .l-nav__close {
      color: #fff;
      background: #0E62C1;
      padding: 8px 0 9px;
      text-align: center; }
      .l-nav__close-txt::before, .l-nav__close-txt::after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        left: 0;
        width: 8px;
        height: 1px;
        background: #fff; }
      .l-nav__close-txt::before {
        transform: rotate(45deg); }
      .l-nav__close-txt::after {
        transform: rotate(-45deg); }
    .l-nav .nav-list__link01 {
      padding: 14px 20px;
      letter-spacing: 0.08em;
      font-weight: 500;
      text-align: left;
      background: #F0F3F5;
      border-bottom: 2px solid #fff; }
      .l-nav .nav-list__link01::after {
        top: 22px;
        right: 23px;
        width: 10px;
        height: 10px;
        background: #F0F3F5;
        transform: rotate(45deg); }
      .l-nav .nav-list__link01::before {
        top: 22px;
        right: 20px;
        width: 10px;
        height: 10px;
        background: #151515;
        transform: rotate(45deg); }
    .l-nav .nav-list__item01.item01 .nav-list__link01 {
      color: #0E62C1; }
    .l-nav .nav-list__item01.item01 .nav-list__link01 {
      border-bottom: 0px solid #fff; }
    .l-nav .nav-list__link02 {
      padding-left: 20px;
      border-top: 1px solid #F0F3F5; }
    .l-nav .nav-list__link01, .l-nav .nav-list__link02 {
      position: relative; }
      .l-nav .nav-list__link01::after, .l-nav .nav-list__link02::after {
        top: 22px;
        right: 23px;
        width: 10px;
        height: 10px;
        background: #F0F3F5;
        transform: rotate(45deg); }
      .l-nav .nav-list__link01::before, .l-nav .nav-list__link02::before {
        top: 22px;
        right: 20px;
        width: 10px;
        height: 10px;
        background: #151515;
        transform: rotate(45deg); }
    .l-nav .nav-list__item01.item01 .nav-list__link01::after {
      top: 29px;
      right: 18px; }
    .l-nav .nav-list__item01.item01 .nav-list__link01::before {
      top: 26px;
      right: 18px;
      background: #0E62C1; }
    .l-nav .nav-list__link02::after {
      background: #fff; }
    .l-nav .nav__btn-list {
      padding: 30px 13px 60px;
      width: 100%; } }
@media all and (min-width: 600px) {
  .l-nav {
    display: flex;
    align-items: center; }
    .l-nav .nav-list {
      margin-right: 30px;
      display: flex;
      align-items: center; }
      .l-nav .nav-list__child-area {
        opacity: 0;
        visibility: hidden;
        position: absolute;
        padding: 40px 0;
        top: 90px;
        left: 0;
        width: 100%;
        background: #f0f3f5;
        z-index: +1;
        transition: all 0.3s ease; }
      .l-nav .nav-list__link01 {
        display: flex;
        align-items: center;
        height: 90px;
        padding: 0 15px;
        font-size: 1.6rem;
        font-weight: 600;
        letter-spacing: 0.08em;
        text-decoration: none;
        box-sizing: border-box;
        transition: all 0.3s ease; }
        .l-nav .nav-list__link01:hover {
          color: #0E62C1; }
      .l-nav .nav-list .item01 .nav-list__link01 {
        position: relative;
        margin-right: 20px; }
        .l-nav .nav-list .item01 .nav-list__link01::after {
          top: 37px;
          right: 0;
          width: 5px;
          height: 5px;
          border: 2px solid transparent;
          border-right: 2px solid #151515;
          border-bottom: 2px solid #151515;
          transform: rotate(45deg); }
      .l-nav .nav-list .item01:hover {
        transition: all 0.3s ease; }
        .l-nav .nav-list .item01:hover .nav-list__link01::after {
          top: 42px;
          border-right: 2px solid #0E62C1;
          border-bottom: 2px solid #0E62C1;
          transform: rotate(225deg); }
        .l-nav .nav-list .item01:hover .nav-list__child-area {
          transition: all 0.3s ease;
          opacity: 1;
          visibility: visible;
          padding: 37px 0; }
      .l-nav .nav-list__child {
        display: flex; }
      .l-nav .nav-list__link02 {
        padding: 10px;
        width: 265px;
        margin-right: 15px;
        transition: all 0.3s ease; }
        .l-nav .nav-list__link02:hover {
          color: #fff;
          background: #0E62C1; }
        .l-nav .nav-list__link02 .nav-child__img {
          width: 65px; }
        .l-nav .nav-list__link02 .nav-child__txt {
          font-size: 1.5rem; }
          .l-nav .nav-list__link02 .nav-child__txt.is-small {
            font-size: 1.2rem; }
      .l-nav .nav-list__child li:last-child .nav-list__link02 {
        margin-right: 0; }
    .l-nav .nav__btn-list li a {
      width: 180px;
      height: 52px;
      box-sizing: border-box; }
    .l-nav .nav__btn-list li.line a img {
      width: 139px; }
    .l-nav .nav__btn-list li.mail a img {
      width: 146px; } }

/* .l-sub
================================================ */
.l-sub {
  color: #fff;
  background: #0E62C1; }
  .l-sub__head-en {
    font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
    font-weight: 600;
    letter-spacing: 0.15em;
    line-height: 1.7; }
  .l-sub__head-jp {
    letter-spacing: 0.04em; }
  @media all and (max-width: 599px) {
    .l-sub {
      margin-bottom: 40px;
      padding: 23px 0;
      height: 110px;
      box-sizing: border-box; }
      .l-sub__head-en {
        font-size: 2.4rem; }
      .l-sub__head-jp {
        font-size: 1.3rem; } }
  @media all and (min-width: 600px) {
    .l-sub {
      height: 182px; }
      .l-sub__head-en {
        padding: 60px 60px 0;
        font-size: 4rem;
        line-height: 1.2; }
      .l-sub__head-jp {
        padding: 0 60px;
        font-size: 1.5rem; } }

/* .nav-overlay
================================================ */
.nav-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  z-index: 10; }
  @media all and (min-width: 600px) {
    .nav-overlay {
      display: none !important; } }

/* .l-breadcrumbs
================================================ */
.breadcrumb-list {
  width: 1000px;
  margin: 0 auto 70px; }
  .breadcrumb-list li {
    display: inline-block;
    font-size: 1.1rem;
    letter-spacing: 0.01em;
    line-height: 1;
    vertical-align: middle; }
    .breadcrumb-list li + li {
      padding-left: 20px;
      position: relative; }
      .breadcrumb-list li + li::before {
        position: absolute;
        content: '';
        width: 5px;
        height: 5px;
        top: calc(50% - 3px);
        left: 3px;
        border: 0px;
        border-top: solid 1px #333;
        border-right: solid 1px #333;
        -ms-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg); }
  .breadcrumb-list a {
    text-decoration: none; }

/* #sidebar
================================================ */
@media all and (max-width: 599px) {
  .sidebar {
    padding: 0 20px; } }
.sidebar .sd-head {
  font-size: 1.7rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #0E62C1; }
.sidebar .sd-post {
  border-bottom: 1px solid #D1D3D5; }
.sidebar .sd-post__link01 {
  padding: 10px 0 13px;
  display: flex;
  text-decoration: none; }
.sidebar .sd-post__img {
  padding-top: 3px;
  width: 73px;
  height: 73px;
  overflow: hidden;
  align-items: start; }
.sidebar .sd-post__text {
  padding-left: 15px;
  width: calc(100% - 73px);
  box-sizing: border-box; }
.sidebar .sd-post__title {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.1em; }
.sidebar .sd-post__txt {
  font-size: 1.4rem;
  line-height: calc(24/14);
  color: #3A3A3A; }
@media all and (max-width: 599px) {
  .sidebar .sd__list {
    margin-bottom: 30px; }
  .sidebar .sd-cat {
    margin-top: 10px; }
    .sidebar .sd-cat .sd-cat__item {
      margin: 0 16px 13px 0; }
    .sidebar .sd-cat .sd-cat__item a {
      padding: 4px 11px;
      font-size: 1rem; } }
@media all and (max-width: 599px) {
  .sidebar .sd-post:first-of-type .sd-post__link01 {
    padding-top: 0; } }
@media all and (min-width: 600px) {
  .sidebar .sd-post__link01 {
    padding: 12px 0 15px; }
  .sidebar .sd-head {
    font-size: 2rem; }
  .sidebar .sd-post__title {
    font-size: 1.8rem; }
  .sidebar .sd__list {
    margin-bottom: 35px; }
  .sidebar .sd-cat {
    margin-top: 10px; }
    .sidebar .sd-cat .sd-cat__item {
      margin: 0 16px 13px 0; }
    .sidebar .sd-cat .sd-cat__item a {
      padding: 6px 15px;
      font-size: 1.3rem; } }

/*  component
@import "04_component/_list.scss";
================================================ */
/*
c-head01
*/
.c-head01.is-center {
  text-align: center; }
.c-head01-en {
  margin-bottom: 7px;
  font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  color: #0E62C1;
  letter-spacing: 0.15em;
  text-transform: uppercase; }
  @media all and (min-width: 600px) {
    .c-head01-en {
      margin-bottom: 13px;
      font-size: 3rem; } }
.c-head01-jp {
  font-size: 1.3rem; }
  @media all and (min-width: 600px) {
    .c-head01-jp {
      font-size: 1.5rem; } }

.c-head02 {
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 2; }
  .c-head02.is-txt-large {
    font-size: 1.8rem;
    line-height: calc(32/18); }
  @media all and (max-width: 599px) {
    .c-head02 {
      margin: 20px 0; }
      .c-head02.is-txt-large {
        margin: 25px 0; } }
  @media all and (min-width: 600px) {
    .c-head02 {
      margin-bottom: 40px;
      font-size: 2.2rem;
      font-weight: 600; }
      .c-head02.is-txt-large {
        margin-bottom: 55px;
        font-size: 2.8rem;
        line-height: calc(50/28);
        letter-spacing: 0.05em; } }

/*
c-head02
*/
/*
c-head03
*/
/*
c-table01
*/
.c-table01 th {
  font-weight: 600;
  white-space: nowrap; }
@media all and (max-width: 599px) {
  .c-table01 {
    border-bottom: 1px solid #D1D3D5; }
    .c-table01 th,
    .c-table01 td {
      display: block; }
    .c-table01 th {
      padding: 10px 20px 5px;
      font-size: 1.4rem;
      border-top: 1px solid #D1D3D5; }
    .c-table01 td {
      padding: 0px 0 10px 20px;
      font-size: 1.5rem; } }
@media all and (min-width: 600px) {
  .c-table01 {
    border-bottom: 1px solid #D1D3D5; }
    .c-table01 th,
    .c-table01 td {
      padding: 24px 25px;
      font-size: 1.6rem;
      line-height: calc(27/16);
      border-top: 1px solid #D1D3D5; } }

/*
Button

.c-btn01 - base style

Markup:
<p class="c-btn01"><a href="#" class="c-btn01__link">MORE</a></p>

Styleguide 2.0.0
*/
.c-btn01 {
  text-align: center; }
  .c-btn01__link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Open Sans", -apple-system,YuGothic, "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
    padding: 5px 60px;
    font-size: 1.4rem;
    font-weight: 500;
    text-decoration: none;
    text-align: center;
    background: #021933;
    color: #fff;
    transition: all 0.3s ease;
    box-sizing: border-box; }
    .c-btn01__link::after {
      content: '';
      width: 6px;
      height: 6px;
      border: 0px;
      border-top: solid 2px #fff;
      border-right: solid 2px #fff;
      -ms-transform: rotate(45deg);
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      position: absolute;
      top: 50%;
      right: 20px;
      margin-top: -3px; }
  @media all and (min-width: 600px) {
    .c-btn01 {
      max-width: 300px; }
      .c-btn01.is-center {
        margin: auto; }
      .c-btn01__link {
        height: 42px; }
        .c-btn01__link:hover {
          background: #838487; } }

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none; }

textarea {
  resize: vertical; }

input[type='checkbox'],
input[type='radio'] {
  display: none; }

input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer; }

select::-ms-expand {
  display: none; }

/*
Form

c-form01

.c-form01 - base style

Markup:
<div></div>

Styleguide 3.0.0
*/
.c-form01 th {
  font-weight: 600;
  line-height: 1;
  background: #F0F3F5; }
.c-form01 th,
.c-form01 td {
  box-sizing: border-box; }
.c-form01 .required {
  display: inline-block;
  position: relative;
  font-size: 1rem;
  line-height: 1;
  color: #fff;
  background: #0E62C1;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  white-space: nowrap;
  min-width: 42px;
  padding: 4px 0;
  width: 42px;
  height: 21px;
  text-align: center;
  box-sizing: border-box; }
.c-form01 input::placeholder {
  color: #D1D3D5; }
.c-form01 input:-ms-input-placeholder {
  color: #D1D3D5; }
.c-form01 input::-ms-input-placeholder {
  color: #D1D3D5; }
.c-form01 textarea::placeholder {
  color: #D1D3D5; }
.c-form01 textarea:-ms-textarea-placeholder {
  color: #D1D3D5; }
.c-form01 textarea::-ms-textarea-placeholder {
  color: #D1D3D5; }
.c-form01 .c-form01__area-agree {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center; }
  .c-form01 .c-form01__area-agree .horizontal-item {
    margin: 0 20px 35px; }
.c-form01 .c-form01__area-btn {
  position: relative;
  display: flex;
  justify-content: center; }
  .c-form01 .c-form01__area-btn::before, .c-form01 .c-form01__area-btn::after {
    position: absolute;
    display: block;
    content: "";
    width: 2px;
    height: 6px;
    background: #fff;
    z-index: 2; }
  .c-form01 .c-form01__area-btn::before {
    top: 25px;
    left: calc(50% + 130px);
    transform: rotate(45deg); }
  .c-form01 .c-form01__area-btn::after {
    top: 21px;
    left: calc(50% + 130px);
    transform: rotate(-45deg); }
  .c-form01 .c-form01__area-btn input[type=submit] {
    position: relative;
    padding-right: 40px;
    width: 295px;
    height: 54px;
    font-size: 1.3rem;
    color: #fff;
    background: #021933;
    box-sizing: border-box; }
.c-form01__select {
  position: relative;
  border: 1px solid #D1D3D5;
  width: 220px;
  height: 46px;
  overflow: hidden; }
  .c-form01__select::before {
    display: block;
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    right: 17px;
    top: 20px;
    border: 8px solid transparent;
    border-top: 8px solid #151515; }
  .c-form01__select select {
    width: calc(100% + 50px);
    height: 46px;
    padding: 5px;
    color: #151515; }
  .c-form01__select select:invalid option {
    color: #D1D3D5; }
.c-form01 .mwform-radio-field input[type=radio] {
  appearance: none;
  display: none; }
.c-form01 .mwform-radio-field input[type=radio] + span {
  position: relative;
  cursor: pointer;
  padding-left: 25px; }
.c-form01 .mwform-radio-field input[type=radio] + span::before {
  position: absolute;
  display: block;
  content: "";
  top: 4px;
  left: 0;
  width: 14px;
  height: 14px;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  border: 2px solid #0E62C1; }
.c-form01 .mwform-radio-field input[type=radio]:checked + span:before {
  background: url(../img/contact/contact__btn-checed.png) center center/18px no-repeat; }
.c-form01 table {
  margin: auto;
  width: 100%; }
.c-form01 textarea,
.c-form01 input[type="email"],
.c-form01 input[type="date"],
.c-form01 input[type="text"] {
  width: 100%;
  height: 46px;
  font-size: 1.4rem;
  padding: 6px;
  border: 1px solid #D1D3D5;
  box-sizing: border-box; }
@media all and (max-width: 599px) {
  .c-form01 th,
  .c-form01 td {
    display: block; }
  .c-form01 .required {
    margin-right: 5px;
    top: -3px;
    display: inline-block;
    font-size: 1.2rem;
    text-align: center; }
  .c-form01 th .required {
    float: right; }
  .c-form01 th {
    padding: 15px 20px;
    font-size: 1.5rem; }
  .c-form01 td {
    padding: 13px 0; }
  .c-form01__select {
    width: 100%;
    height: 46px; }
    .c-form01__select select {
      padding: 0 10px; }
  .c-form01 textarea,
  .c-form01 input[type="email"],
  .c-form01 input[type="date"],
  .c-form01 input[type="text"] {
    padding: 10px;
    font-size: 1.6rem; }
  .c-form01 textarea {
    font-size: 1.6rem;
    height: 160px; }
  .c-form01 .mwform-radio-field {
    font-size: 1.6rem; } }
@media all and (min-width: 600px) {
  .c-form01 .required {
    font-size: 1.4rem; }
  .c-form01 th {
    padding: 31px 18px 27px;
    width: 250px;
    border: 1px solid #D1D3D5; }
    .c-form01 th .required {
      float: right;
      top: -2px; }
  .c-form01 td {
    padding: 17px  25px;
    width: 750px;
    border: 1px solid #D1D3D5; }
  .c-form01 textarea,
  .c-form01 input[type="text"] {
    padding: 9px;
    font-size: 1.5rem;
    box-sizing: border-box; }
  .c-form01 input[type="email"],
  .c-form01 input[type="text"] {
    width: 400px; }
  .c-form01 textarea {
    height: 200px; }
  .c-form01 .c-form01__area-agree .horizontal-item {
    margin: 0 43px 50px; }
  .c-form01 .c-form01__area-btn::before, .c-form01 .c-form01__area-btn::after {
    width: 2px;
    height: 8px; }
  .c-form01 .c-form01__area-btn::before {
    top: 25px;
    left: calc(50% + 95px); }
  .c-form01 .c-form01__area-btn::after {
    top: 20px;
    left: calc(50% + 95px); }
  .c-form01 .c-form01__area-btn input[type=submit] {
    padding-right: 40px;
    width: 260px;
    height: 54px;
    font-size: 1.6rem; }
  .c-form01 .mwform-radio-field input[type=radio] + span::before {
    top: 4px;
    left: 0;
    width: 16px;
    height: 16px; }
  .c-form01 .mwform-radio-field input[type=radio]:checked + span:before {
    background: url(../img/contact/contact__btn-checed.png) center center/18px no-repeat; } }

/* WP  */
.mwform-checkbox-field label,
.mwform-radio-field label {
  display: flex;
  align-items: center; }

/* 確認画面 */
.mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview .c-form01__select {
  border: 0px;
  width: auto;
  height: auto; }
.mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview .c-form01__select::before {
  display: none; }
.mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview td {
  vertical-align: middle; }
.mw_wp_form.mw_wp_form_confirm.mw_wp_form_preview .c-form01__area-agree {
  margin-bottom: 50px; }

/*
pagenation

.pagenation - base style

Markup:
<div class="pagenation">
<a class="prev page-numbers" href="https://marianet-kt.com/wp/column/">&laquo; 前へ</a>
<span aria-current="page" class="page-numbers current">1</span>
<a class="page-numbers" href="https://marianet-kt.com/wp/column/page/2/">2</a>
<a class="next page-numbers" href="https://marianet-kt.com/wp/column/page/2/">次へ &raquo;</a>
</div><!-- /pagenation -->


<div class='wp-pagenavi' role='navigation'>
<span class='pages'>1 / 2</span>
<a class="previouspostslink" rel="prev" href="https://marianet-kt.com/wp/cat1/">&laquo;</a>
<span aria-current='page' class='current'>1</span>
<a class="page larger" title="Page 2" href="https://marianet-kt.com/wp/cat1/page/2/">2</a>
<a class="nextpostslink" rel="next" href="https://marianet-kt.com/wp/cat1/page/2/">&raquo;</a>
</div>


*/
.c-navi01 {
  min-height: 123px; }
  @media all and (min-width: 600px) {
    .c-navi01 {
      min-height: 162px; } }

.wp-pagenavi,
.pagenation {
  padding: 58px 0 68px;
  clear: both;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto; }
  .wp-pagenavi a, .wp-pagenavi span,
  .pagenation a,
  .pagenation span {
    margin: 0 10px;
    width: 32px;
    padding: 6px 0;
    font-size: 2.2rem;
    font-family: "DIN Alternate";
    line-height: 1;
    text-align: center;
    text-decoration: none;
    color: #0E62C1;
    box-sizing: border-box; }
  .wp-pagenavi a,
  .pagenation a {
    background: #fff;
    border: 1px solid #0E62C1;
    transition: all 0.3s ease; }
    .wp-pagenavi a:hover,
    .pagenation a:hover {
      color: #fff;
      background: #639ABF; }
      .wp-pagenavi a:hover::before, .wp-pagenavi a:hover::after,
      .pagenation a:hover::before,
      .pagenation a:hover::after {
        background: #fff; }
  .wp-pagenavi span,
  .pagenation span {
    color: #fff;
    background: #0E62C1;
    border: 1px solid #0E62C1; }
  .wp-pagenavi .pages,
  .pagenation .pages {
    display: none; }
  .wp-pagenavi .prev.page-numbers,
  .wp-pagenavi .next.page-numbers,
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink,
  .pagenation .prev.page-numbers,
  .pagenation .next.page-numbers,
  .pagenation .previouspostslink,
  .pagenation .nextpostslink {
    position: relative;
    text-indent: -9999px; }
    .wp-pagenavi .prev.page-numbers::before, .wp-pagenavi .prev.page-numbers::after,
    .wp-pagenavi .next.page-numbers::before,
    .wp-pagenavi .next.page-numbers::after,
    .wp-pagenavi .previouspostslink::before,
    .wp-pagenavi .previouspostslink::after,
    .wp-pagenavi .nextpostslink::before,
    .wp-pagenavi .nextpostslink::after,
    .pagenation .prev.page-numbers::before,
    .pagenation .prev.page-numbers::after,
    .pagenation .next.page-numbers::before,
    .pagenation .next.page-numbers::after,
    .pagenation .previouspostslink::before,
    .pagenation .previouspostslink::after,
    .pagenation .nextpostslink::before,
    .pagenation .nextpostslink::after {
      position: absolute;
      display: block;
      content: "";
      width: 9px;
      height: 2px; }
    .wp-pagenavi .prev.page-numbers::before,
    .wp-pagenavi .next.page-numbers::before,
    .wp-pagenavi .previouspostslink::before,
    .wp-pagenavi .nextpostslink::before,
    .pagenation .prev.page-numbers::before,
    .pagenation .next.page-numbers::before,
    .pagenation .previouspostslink::before,
    .pagenation .nextpostslink::before {
      background: #0E62C1; }
    .wp-pagenavi .prev.page-numbers::after,
    .wp-pagenavi .next.page-numbers::after,
    .wp-pagenavi .previouspostslink::after,
    .wp-pagenavi .nextpostslink::after,
    .pagenation .prev.page-numbers::after,
    .pagenation .next.page-numbers::after,
    .pagenation .previouspostslink::after,
    .pagenation .nextpostslink::after {
      background: #0E62C1; }
  .wp-pagenavi .prev.page-numbers::before,
  .wp-pagenavi .previouspostslink::before,
  .pagenation .prev.page-numbers::before,
  .pagenation .previouspostslink::before {
    transform: rotate(-45deg);
    top: calc(50% - 4px);
    left: calc(50% - 6px); }
  .wp-pagenavi .prev.page-numbers::after,
  .wp-pagenavi .previouspostslink::after,
  .pagenation .prev.page-numbers::after,
  .pagenation .previouspostslink::after {
    transform: rotate(45deg);
    top: calc(50% + 2px);
    left: calc(50% - 6px); }
  .wp-pagenavi .next.page-numbers::before,
  .wp-pagenavi .nextpostslink::before,
  .pagenation .next.page-numbers::before,
  .pagenation .nextpostslink::before {
    transform: rotate(45deg);
    top: calc(50% - 4px);
    left: calc(50% - 4px); }
  .wp-pagenavi .next.page-numbers::after,
  .wp-pagenavi .nextpostslink::after,
  .pagenation .next.page-numbers::after,
  .pagenation .nextpostslink::after {
    transform: rotate(135deg);
    top: calc(50% + 2px);
    left: calc(50% - 4px); }
  @media all and (max-width: 599px) {
    .wp-pagenavi,
    .pagenation {
      padding: 20px 0 70px; }
      .wp-pagenavi a, .wp-pagenavi span,
      .pagenation a,
      .pagenation span {
        width: 31px;
        height: 33px;
        font-size: 1.7rem; } }

/*
pagenation
<nav class="pagenation02" role="navigation">
	<div class="pagenation02-links">
		<div class="pagenation02-previous">
			<a href="#" rel="prev">前の記事</a>
		</div>
		<div class="pagenation02-list">
			<a href="#">一覧に戻る</a>
		</div>
		<div class="pagenation02-next">
			<a href="#" rel="next">次の記事</a>
		</div>
	</div>
</nav>
*/
.pagenation02 {
  margin: 50px 0 70px; }
  .pagenation02-links {
    display: flex;
    align-items: center;
    justify-content: center; }
    .pagenation02-links a {
      position: relative;
      display: block;
      font-size: 1.3rem;
      font-weight: 600;
      line-height: 1;
      letter-spacing: 0.1em;
      text-decoration: none; }
  .pagenation02-previous a::before, .pagenation02-previous a::after, .pagenation02-next a::before, .pagenation02-next a::after {
    position: absolute;
    display: block;
    content: "";
    width: 9px;
    height: 2px;
    background: #0E62C1; }
  .pagenation02-list a {
    margin: 0 4vw; }
  .pagenation02-previous a {
    margin-right: 3vw;
    padding-left: 8vw; }
  .pagenation02-next a {
    margin-left: 3vw;
    padding-right: 8vw; }
  .pagenation02-previous a::before {
    top: 9px;
    left: 0;
    transform: rotate(45deg); }
  .pagenation02-previous a::after {
    top: 3px;
    left: 0;
    transform: rotate(-45deg); }
  .pagenation02-next a::before {
    top: 9px;
    right: 0;
    transform: rotate(-45deg); }
  .pagenation02-next a::after {
    top: 3px;
    right: 0;
    transform: rotate(45deg); }
  .pagenation02-list {
    position: relative; }
    .pagenation02-list::before, .pagenation02-list::after {
      position: absolute;
      display: block;
      content: "";
      width: 1px;
      top: 0;
      bottom: 0px;
      background: #D1D3D5; }
    .pagenation02-list::before {
      left: 0; }
    .pagenation02-list::after {
      right: 0; }
  @media all and (min-width: 600px) {
    .pagenation02-links a {
      margin: 0 32px;
      padding-bottom: 5px;
      font-size: 2rem;
      border-bottom: 1px solid transparent;
      transition: all 0.3s ease; }
      .pagenation02-links a:hover {
        border-bottom: 1px solid #151515; }
    .pagenation02-previous a::before, .pagenation02-previous a::after, .pagenation02-next a::before, .pagenation02-next a::after {
      width: 13px;
      height: 2px;
      background: #0E62C1; }
    .pagenation02-previous a {
      padding-left: 45px; }
    .pagenation02-next a {
      padding-right: 45px; }
    .pagenation02-previous a::before, .pagenation02-next a::before {
      top: 14px; }
    .pagenation02-previous a::after, .pagenation02-next a::after {
      top: 6px; }
    .pagenation02-list {
      position: relative; }
      .pagenation02-list::before, .pagenation02-list::after {
        bottom: 5px; } }

/*
List
c-list01
.c-list01 - base style
Markup:
<ul class="c-list01">
	<li>カテゴリー</li>
</ul>
Styleguide 3.0.0
*/
.c-list01 {
  display: flex;
  flex-wrap: wrap; }
  .c-list01 .c-list01__item {
    position: relative; }
    .c-list01 .c-list01__item a,
    .c-list01 .c-list01__item .nolink {
      display: flex;
      padding: 6px 15px 4px;
      font-size: 1.2rem;
      line-height: 1.2;
      color: #fff;
      background: #0E62C1;
      text-decoration: none;
      transition: all 0.3s ease;
      -webkit-border-radius: 15px;
      border-radius: 15px; }
    .c-list01 .c-list01__item a:hover {
      background: #838487; }
    @media all and (min-width: 600px) {
      .c-list01 .c-list01__item a,
      .c-list01 .c-list01__item .nolink {
        padding: 8px 20px;
        font-size: 1.3rem;
        -webkit-border-radius: 15px;
        border-radius: 15px; } }

/*
List
c-list02
.c-list02 - base style
Markup:
Styleguide 3.0.1
*/
.c-list02__link {
  display: block;
  text-decoration: none; }
@media all and (max-width: 599px) {
  .c-list02 .c-list02__item + .c-list02__item {
    margin-top: 30px; } }
@media all and (min-width: 600px) {
  .c-list02 {
    display: flex; }
    .c-list02__item {
      margin-right: 42px; }
      .c-list02__item:last-child {
        margin-right: 0; } }

.c-cv01 {
  text-align: center;
  color: #fff;
  box-sizing: border-box; }
  .c-cv01__btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff; }
  .c-cv01__head-en {
    font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
    font-size: 2.4rem;
    font-weight: 600;
    letter-spacing: 0.15em; }
  .c-cv01__head-jp {
    font-size: 1.3rem; }
  .c-cv01__copy {
    font-weight: 600;
    letter-spacing: 0.02em; }
  @media all and (max-width: 599px) {
    .c-cv01 {
      padding-top: 50px;
      height: 406px;
      background: url(../img/common/inc/contact__bg_sp.png) top center/cover no-repeat; }
      .c-cv01__copy {
        margin: 20px 0 30px;
        font-size: 1.5rem; }
      .c-cv01__btn a {
        margin: 20px auto;
        width: 295px;
        max-width: 100%;
        height: 50px;
        transition: all 0.3s ease; }
        .c-cv01__btn a img {
          width: 147px; } }
  @media all and (min-width: 600px) {
    .c-cv01 {
      padding-top: 85px;
      padding-bottom: 110px;
      height: 489px;
      box-sizing: border-box;
      background: url(../img/common/inc/contact__bg_pc.png) center center/1280px no-repeat; }
      .c-cv01__head-en {
        font-size: 3.3rem;
        letter-spacing: 0.06em; }
      .c-cv01__head-jp {
        font-size: 1.5rem; }
      .c-cv01__copy {
        margin: 15px 0 60px;
        font-size: 2rem;
        font-weight: 600;
        letter-spacing: 0.02em; }
      .c-cv01__btn-list {
        display: flex;
        align-items: center;
        justify-content: center; }
      .c-cv01__btn a {
        margin: 0 10px;
        width: 350px;
        height: 63px;
        transition: all 0.3s ease; }
      .c-cv01__btn.line a:hover {
        background: #00B900; }
      .c-cv01__btn.mail a:hover {
        background: #0E62C1; }
      .c-cv01 .line img {
        width: 139px; }
      .c-cv01 .mail img {
        width: 147px; } }

/*
<div class="c-link01">
	<div class="c-link01__item item01"><a href="/service/" class="c-link01__link01">
		<div class="c-link01__head"><span class="c-link01__head-en">SERVICE</span><span class="c-link01__head-jp">サービス</span></div>
		<div class="c-link01__img"><img src="<?php echo $root;?>/img/common/inc/service__btn.png" alt=""></div>
	</a></div>
	<div class="c-link01__item item02"><a href="/works/" class="c-link01__link01">
		<div class="c-link01__head"><span class="c-link01__head-en">WORKS</span><span class="c-link01__head-jp">実績</span></div>
		<div class="c-link01__img"><img src="<?php echo $root;?>/img/common/inc/service__btn.png" alt=""></div>
	</a></div>
</div>
*/
.c-link01__item.item01 .c-link01__link01 {
  background: #06264B; }
  .c-link01__item.item01 .c-link01__link01:hover {
    background: #838487; }
.c-link01__item.item02 .c-link01__link01 {
  background: #639ABF; }
  .c-link01__item.item02 .c-link01__link01:hover {
    background: #838487; }
.c-link01__item {
  width: 100%;
  height: 80px; }
.c-link01__link01 {
  position: relative;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  width: 100%;
  height: 80px;
  color: #fff;
  text-decoration: none;
  overflow: hidden; }
  .c-link01__link01 img {
    transition: all 0.3s ease; }
  .c-link01__link01:hover img {
    transform: scale(1.1); }
.c-link01__head {
  width: 190px;
  display: flex;
  align-items: center; }
.c-link01__head-en {
  margin-left: 20px;
  margin-right: 8px;
  font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.15em; }
.c-link01__head-jp {
  font-size: 0.9rem; }
@media all and (max-width: 599px) {
  .c-link01 {
    margin-bottom: 70px; }
    .c-link01__item + .c-link01__item {
      margin-top: 20px; }
    .c-link01__img img {
      position: absolute;
      top: 0;
      right: 0;
      width: auto;
      height: 80px; } }
@media all and (min-width: 600px) {
  .c-link01 {
    display: flex;
    justify-content: center;
    margin-bottom: 120px; }
    .c-link01__item {
      margin: 0 20px;
      width: 480px;
      height: 114px; }
    .c-link01__link01 {
      width: 480px;
      height: 114px;
      transition: all 0.3s ease; }
    .c-link01__img {
      width: 290px; }
    .c-link01__head {
      width: 190px; }
    .c-link01__head-en {
      margin-left: 26px;
      margin-right: 10px;
      font-size: 2rem; }
    .item02 .c-link01__head-en {
      margin-right: 26px; } }

/*
<article class="c-post01">
	<div class="c-post01__img"><img src="<?php echo $root;?>/img/news/news__img01.png" alt=""></div>
	<header class="c-post01__header">
		<h1 class="c-post01__head"><a href="" class="c-post01__link01">記事タイトル記事タイトル記事タイトル</a></h1>
		<div class="c-post01__header-data">
			<p class="c-post01__date">2020.03.04（水）</p>
			<ul class="c-post01__category c-list01">
				<li class="c-post01__category-item c-list01__item"><a href="#" class="c-post01__category-link">カテゴリー</a></li>
				<li class="c-post01__category-item c-list01__item"><a href="#" class="c-post01__category-link">カテゴリー</a></li>
			</ul>
		</div>
	</header>
	<div class="c-post01__body">
	</div>
</article>
*/
.c-post01__header {
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap; }
.c-post01__head, .c-post01__header-data {
  width: 100%; }
.c-post01__head {
  margin: 15px 0 17px 0;
  padding-bottom: 10px;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: calc(30/18);
  border-bottom: 1px solid #151515; }
.c-post01__header-data {
  display: flex;
  align-items: center; }
.c-post01__date {
  margin-right: 30px;
  font-size: 1.4rem;
  color: #838487; }
.c-post01 .c-post01__category-item {
  margin-right: 15px; }
  .c-post01 .c-post01__category-item a,
  .c-post01 .c-post01__category-item .c-post01__category-link {
    padding: 4px 11px;
    font-size: 1rem; }
@media all and (min-width: 600px) {
  .c-post01 {
    width: 615px; }
    .c-post01__date {
      margin-right: 10px; }
    .c-post01__head {
      margin: 15px 0 10px 0;
      padding-bottom: 10px;
      font-size: 2rem; }
    .c-post01__header .c-post01.is-reverse .c-post01__head {
      margin: 10px 0 30px 0;
      order: 2; }
    .c-post01__header .c-post01.is-reverse .c-post01__header-data {
      order: 1; }
    .c-post01__header .c-post01.is-reverse__header-data {
      margin-top: 34px; } }

.c-post01__body {
  margin: 10px 0 30px;
  font-size: 1.4rem;
  line-height: calc(24/14);
  min-height: 100px; }
  .c-post01__body p + p {
    margin-top: 1.3em; }
  .c-post01__body h2 {
    margin: 20px 0 20px 0;
    padding: 10px;
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.5;
    background: #F0F3F5; }
  .c-post01__body h3 {
    position: relative;
    margin-bottom: 20px;
    padding-left: 15px;
    font-size: 1.7rem;
    font-weight: 600;
    border-bottom: 1px solid #0E62C1; }
    .c-post01__body h3::before {
      position: absolute;
      display: block;
      content: "";
      top: 3px;
      bottom: 0;
      left: 0;
      width: 4px;
      background: #0E62C1; }
  .c-post01__body a {
    color: #0E62C1; }
  .c-post01__body strong {
    position: relative;
    font-weight: 600;
    background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #F0F3F5 0%) repeat scroll 0 0; }
  .c-post01__body ul {
    margin-top: 7px; }
    .c-post01__body ul li {
      position: relative;
      padding-left: 20px; }
      .c-post01__body ul li::before {
        position: absolute;
        display: block;
        content: "";
        top: 10px;
        left: 7px;
        width: 6px;
        height: 6px;
        background: #0E62C1;
        transform: rotate(45deg); }
  .c-post01__body ol {
    margin-top: 7px;
    counter-reset: item; }
    .c-post01__body ol li {
      position: relative;
      padding-left: 20px; }
    .c-post01__body ol li::before {
      position: absolute;
      top: 0;
      left: 0;
      width: 15px;
      text-align: center;
      counter-increment: item;
      content: counter(item) "."; }
    @media all and (min-width: 600px) {
      .c-post01__body ol {
        margin-top: 10px;
        margin-bottom: 15px; } }
  @media all and (min-width: 600px) {
    .c-post01__body {
      margin-top: 30px;
      font-size: 1.6rem;
      line-height: calc(27/16); }
      .c-post01__body h2 {
        margin: 30px 0 20px 0;
        padding: 11px 17px;
        font-size: 2rem; } }

.col2-link {
  margin: 60px 0 70px 0; }
  @media all and (min-width: 600px) {
    .col2-link {
      margin: 40px 0 120px 0; } }

/*  helper
================================================ */
.js-switch-tab {
  cursor: pointer; }

.js-switch-content {
  display: none; }
  .js-switch-content.is-active {
    display: block; }

.js-toggle-trigger {
  cursor: pointer; }

.js-toggle-content {
  display: none; }

/*  page
================================================ */
body#home {
  background: url(../img/common/bg01_sp.png) 0 0/100% no-repeat; }
  @media all and (min-width: 600px) {
    body#home {
      background: url(../img/common/bg01_pc.png) top right/1500px fixed no-repeat; } }

.mv-inner {
  position: relative; }
  .mv-inner::before, .mv-inner::after {
    position: absolute;
    display: block; }
  .mv-inner::before {
    font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
    content: "Scroll";
    letter-spacing: 0.08em;
    color: #0E62C1;
    transform: rotate(-90deg); }
  .mv-inner::after {
    content: "";
    width: 1px;
    background: #0E62C1;
    z-index: +1; }
  @media all and (max-width: 599px) {
    .mv-inner {
      padding: 120px 0px 165px; }
      .mv-inner::before {
        top: 385px;
        right: -17px;
        font-size: 1.1rem; }
      .mv-inner::after {
        top: 420px;
        right: 0px;
        height: 85px; } }
  @media all and (min-width: 600px) {
    .mv-inner {
      height: 480px; }
      .mv-inner::before {
        top: 300px;
        left: calc(50% + 535px);
        font-size: 1.3rem; }
      .mv-inner::after {
        top: 345px;
        left: calc(50% + 555px);
        height: 120px; } }

.l-main-img {
  position: relative; }
  .l-main-img::before {
    position: absolute;
    display: block;
    font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
    content: "WADAI";
    font-weight: 700;
    line-height: 1;
    color: #F1F5F8;
    z-index: -1; }
  @media all and (max-width: 599px) {
    .l-main-img::before {
      bottom: -12px;
      left: -5px;
      font-size: 8rem;
      font-weight: 700; } }
  .l-main-img .mv-copy {
    font-size: 3.3rem;
    font-weight: 600;
    line-height: 1.5; }
  .l-main-img .mv-txt {
    margin: 20px 0;
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 2;
    letter-spacimg: 0.06em; }
  .l-main-img .mv-movie {
    position: absolute;
    display: block;
    bottom: -30px;
    right: 10px;
    width: 186px;
    padding-top: 14px;
    text-align: center;
    color: #fff;
    z-index: +1; }
    .l-main-img .mv-movie__inner {
      padding: 15px;
      width: 176px;
      height: 165px;
      background: #021933;
      box-sizing: border-box; }
    .l-main-img .mv-movie__close {
      position: absolute;
      top: 0;
      right: 0;
      width: 23px; }
    .l-main-img .mv-movie__txt01 {
      margin: 8px 0 3px 0;
      font-size: 1.1rem;
      letter-spacing: 0.06em; }
    .l-main-img .mv-movie__txt02 {
      position: relative;
      padding-left: 8px;
      font-size: 1.2rem;
      font-weight: 600;
      letter-spacing: 0.02em; }
      .l-main-img .mv-movie__txt02::before, .l-main-img .mv-movie__txt02::after {
        position: absolute;
        dislay: block;
        content: "";
        width: 7px;
        height: 7px;
        transform: rotate(45deg); }
      .l-main-img .mv-movie__txt02::before {
        top: 7px;
        left: 8px;
        background: #fff; }
      .l-main-img .mv-movie__txt02::after {
        top: 7px;
        left: 5px;
        background: #021933; }
  @media all and (min-width: 600px) {
    .l-main-img {
      padding: 120px 20px 0;
      height: 600px;
      box-sizing: border-box; }
      .l-main-img::before {
        bottom: -35px;
        left: calc(50% - 580px);
        font-size: 20rem; }
      .l-main-img .mv-copy {
        font-size: 6.6rem; }
      .l-main-img .mv-txt {
        font-size: 1.8rem; }
      .l-main-img .mv-movie {
        width: 243px;
        right: 0;
        left: calc(50% + 250px); }
        .l-main-img .mv-movie__inner {
          width: 230px;
          height: 216px;
          padding: 20px; }
        .l-main-img .mv-movie__close {
          width: 30px; }
        .l-main-img .mv-movie__txt01 {
          margin: 12px 0 5px;
          font-size: 1.3rem; }
        .l-main-img .mv-movie__txt02 {
          font-size: 1.5rem; }
          .l-main-img .mv-movie__txt02::before, .l-main-img .mv-movie__txt02::after {
            width: 8px;
            height: 8px; }
          .l-main-img .mv-movie__txt02::before {
            top: 10px;
            left: 18px; }
          .l-main-img .mv-movie__txt02::after {
            top: 10px;
            left: 15px; } }

.mv-movie.is-close {
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease; }

/*  home-news
================================================ */
.home-news {
  position: relative;
  min-height: 422px;
  padding: 55px 0;
  box-sizing: border-box; }
  .home-news__list {
    border-top: 1px dotted #D1D3D5; }
  .home-news__item {
    display: flex;
    align-items: center;
    border-bottom: 1px dotted #D1D3D5; }
  .home-news__date {
    color: #838487; }
  @media all and (max-width: 599px) {
    .home-news__list {
      margin-top: 25px; }
    .home-news__item {
      padding: 25px 0;
      flex-wrap: wrap; }
    .home-news__head {
      margin-bottom: 15px;
      width: 100%;
      font-size: 1.4rem; }
    .home-news__date {
      margin-right: 5px;
      font-size: 1.3rem; }
    .home-news__btn {
      margin: 50px 20px 0; }
      .home-news__btn a {
        height: 50px; } }
  @media all and (min-width: 600px) {
    .home-news {
      padding: 110px 0 120px; }
      .home-news__inner {
        position: relative;
        padding: 0 60px; }
      .home-news__header {
        position: absolute;
        top: 0;
        left: 60px; }
      .home-news__list {
        margin-left: 250px;
        width: 760px; }
      .home-news__item {
        padding: 30px 20px;
        display: flex;
        align-items: center;
        border-bottom: 1px dotted #D1D3D5; }
      .home-news__head {
        width: 485px; }
      .home-news__date {
        width: 120px;
        font-size: 1.4rem; }
      .home-news__btn {
        position: absolute;
        top: 120px;
        left: 60px;
        width: 160px; } }

/*  home-about
================================================ */
.home-about__txt {
  letter-spacing: 0.06em; }
.home-about__head-en {
  font-family: "Poppins", "Helvetica Neue", HelveticaNeue; }
@media all and (max-width: 599px) {
  .home-about {
    padding-top: 90px;
    padding-bottom: 45px; }
    .home-about__img {
      margin: 0 auto 70px;
      width: 174px; }
    .home-about__txt {
      font-size: 1.4rem;
      line-height: calc(31/14); } }
@media all and (min-width: 600px) {
  .home-about {
    padding-top: 45px;
    padding-bottom: 45px; }
    .home-about__head {
      margin-bottom: 45px;
      display: flex;
      align-items: center; }
      .home-about__head-en {
        margin: 0 22px 0 0;
        line-height: 1; }
      .home-about__head-jp {
        line-height: 1; }
    .home-about__wrap {
      position: relative;
      padding-top: 85px;
      padding-bottom: 85px;
      display: flex;
      align-items: center;
      background: #fff; }
    .home-about__img {
      padding-left: 60px;
      width: 220px;
      margin-right: 144px; }
    .home-about__text {
      width: 680px; }
    .home-about__txt {
      font-size: 1.7rem;
      line-height: calc(38/17);
      letter-spacing: 0.06em; } }

/*  home-service
================================================ */
.home-service {
  position: relative; }
  .home-service::before {
    position: absolute;
    display: block;
    content: "";
    width: 100%;
    height: 536px;
    background: #F0F3F5; }
  .home-service__inner {
    position: relative; }
  .home-service__list {
    position: relative; }
  .home-service__item {
    background: #021933; }
    .home-service__item:nth-child(2n) {
      background: #06264B; }
    .home-service__item-img {
      background: #fff; }
  .home-service__link {
    display: block;
    color: #fff;
    text-decoration: none; }
  .home-service__item-txt {
    padding: 14px 20px; }
  .home-service__item-txt-en {
    margin-bottom: 2px;
    font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
    font-size: 1.1rem;
    font-weight: 400;
    letter-spacing: 0.08em; }
  .home-service__item-txt-jp {
    font-size: 1.5rem;
    font-weight: 600; }
  @media all and (max-width: 599px) {
    .home-service__inner {
      padding-top: 50px;
      padding-bottom: 65px; }
    .home-service__txt {
      margin-bottom: 30px;
      font-size: 1.4rem;
      letter-spacing: 0.06em;
      line-height: calc(31/14); }
    .home-service__item-txt-jp.is-small {
      font-size: 1.4rem; } }
  @media all and (min-width: 600px) {
    .home-service__inner {
      padding-top: 108px;
      padding-bottom: 130px; }
    .home-service__txt {
      margin-bottom: 60px;
      font-size: 1.6rem;
      line-height: 2; }
    .home-service__link:hover img {
      transition: all 0.3s ease;
      transform: scale(1.05); }
    .home-service__list {
      display: flex;
      flex-wrap: wrap;
      margin-right: -80px;
      margin-left: 60px; }
      .home-service__list::before {
        display: block;
        position: absolute;
        top: 412px;
        left: -130px;
        font-size: 1.3rem;
        letter-spacing: 0.08em;
        color: #CFDFE8;
        content: "Creative & Marketing";
        transform: rotate(-90deg); }
    .home-service__item {
      width: 50%; }
      .home-service__item-img {
        widh: 564px;
        height: 324px;
        overflow: hidden; }
        .home-service__item-img img {
          transition: all 0.3s ease; }
      .home-service__item-txt {
        padding: 20px 30px; }
      .home-service__item-txt-en {
        margin-bottom: 3px;
        font-size: 1.3rem; }
      .home-service__item-txt-jp {
        font-size: 2rem; } }

/*  home-works
================================================ */
.home-works {
  position: relative; }
  .home-works__txt {
    line-height: 2; }
  .home-works__list {
    position: relative;
    margin-bottom: 55px; }
  .home-works__item-img {
    background: #fff; }
  .home-works__item-head {
    margin: 10px 0 5px;
    font-size: 1.5rem;
    font-weight: 600; }
  .home-works__item-name {
    font-size: 1.4rem;
    line-height: 2; }
  .home-works__item-cast {
    letter-spacing: 0.08em; }
    .home-works__item-cast dt {
      font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
      font-size: 1.5rem;
      font-weight: 600;
      color: #0E62C1; }
    .home-works__item-cast dd {
      font-size: 1.4rem;
      line-height: 2; }
  @media all and (max-width: 599px) {
    .home-works {
      padding-top: 50px;
      padding-bottom: 65px; }
      .home-works__txt {
        margin-bottom: 30px;
        font-size: 1.4rem;
        letter-spacing: 0.06em; }
      .home-works__item-name {
        margin-bottom: 13px; } }
  @media all and (min-width: 600px) {
    .home-works__inner {
      position: relative;
      padding-top: 108px;
      padding-bottom: 130px; }
    .home-works__txt {
      margin-bottom: 60px;
      font-size: 1.6rem; }
    .home-works__list {
      display: flex;
      margin-bottom: 70px; }
    .home-works__item-img {
      widh: 345px;
      height: 212px;
      overflow: hidden; }
      .home-works__item-img img {
        transition: all 0.3s ease; }
    .home-works__item-head {
      margin: 10px 0 5px;
      font-size: 1.8rem; }
    .home-works__item-name {
      font-size: 1.4rem;
      line-height: 2; }
    .home-works__item-cast {
      letter-spacing: 0.08em; }
      .home-works__item-cast dt {
        font-size: 1.5rem; }
      .home-works__item-cast dd {
        font-size: 1.4rem;
        line-height: 2; }
    .home-works__link:hover img {
      transition: all 0.3s ease;
      transform: scale(1.05); }
    .home-works__btn {
      margin: 75px auto 0;
      width: 350px; }
      .home-works__btn a {
        width: 350px;
        height: 64px;
        font-size: 1.5rem;
        letter-spacing: 0.06em; } }

/*  home-company
================================================ */
@media all and (max-width: 599px) {
  .home-company {
    padding-top: 60px;
    padding-bottom: 64px; } }
@media all and (min-width: 600px) {
  .home-company {
    padding-top: 130px; } }

/*  home-recruit
================================================ */
@media all and (max-width: 599px) {
  .home-recruit {
    padding-bottom: 74px; } }
@media all and (min-width: 600px) {
  .home-recruit {
    padding-top: 135px;
    padding-bottom: 130px; } }

/*  home__btn01
================================================ */
@media all and (max-width: 599px) {
  .home__btn01 {
    margin: 30px 20px 0; }
    .home__btn01 a {
      height: 50px; } }
@media all and (min-width: 600px) {
  .home__btn01 {
    margin-top: 25px;
    width: 260px; }
    .home__btn01 a {
      width: 260px;
      height: 54px;
      font-size: 1.5rem;
      letter-spacing: 0.06em; }
    .home__btn01.is-large {
      width: 350px; }
      .home__btn01.is-large a {
        width: 350px;
        height: 64px; } }

/*  home__set01
================================================ */
@media all and (min-width: 600px) {
  .home__set01 {
    display: flex;
    align-items: start;
    padding: 0 60px; }
    .home__set01-head {
      padding-top: 8px;
      width: calc(100% - 750px); }
    .home__set01-text {
      width: 750px; } }

/*  home__set02
================================================ */
.home__set02-txt {
  line-height: 2; }
@media all and (max-width: 599px) {
  .home__set02-img {
    margin-bottom: 30px; }
  .home__set02-txt {
    font-size: 1.4rem;
    letter-spacing: 0.06em; } }
@media all and (min-width: 600px) {
  .home__set02 {
    display: flex;
    align-items: stretch;
    padding: 0 60px; }
    .home__set02-img {
      width: 440px; }
    .home__set02-head {
      margin: 25px 0; }
    .home__set02-text {
      width: 560px;
      display: flex;
      align-items: center;
      padding-left: 60px;
      box-sizing: border-box;
      background: #fff; }
    .home__set02-txt {
      font-size: 1.6rem; }
    .home__set02.is-reverse .home__set02-img {
      order: 2; }
    .home__set02.is-reverse .home__set02-text {
      order: 1;
      padding-left: 0;
      padding-right: 60px; } }

#contact .l-sub {
  background: url("../img/contact/contact__mv01_sp.png") no-repeat center/100%; }
  @media all and (min-width: 600px) {
    #contact .l-sub {
      background: url("../img/contact/contact__mv01_pc.png") no-repeat center/cover; } }

/*	contact-form
================================================ */
.contact-form {
  border-bottom: 2px solid #F0F3F5; }
  .contact-form .contact-form__txt02 {
    display: flex;
    align-items: flex-end;
    justify-content: center; }
    .contact-form .contact-form__txt02 .required {
      margin-right: 10px; }
    .contact-form .contact-form__txt02 a {
      transition: all 0.3s ease;
      text-decoration: none;
      border-bottom: 1px solid #151515; }
      .contact-form .contact-form__txt02 a:hover {
        border-bottom: 1px solid #fff; }
  @media all and (max-width: 599px) {
    .contact-form {
      padding-bottom: 70px; }
      .contact-form__txt01 {
        margin-bottom: 20px;
        display: flex;
        font-size: 1.2rem; }
        .contact-form__txt01 .required {
          top: 0; }
      .contact-form .contact-form__txt02 {
        margin: 15px 0 30px;
        font-size: 1.5rem;
        line-height: 1.4; }
        .contact-form .contact-form__txt02 .required {
          top: 0; } }
  @media all and (min-width: 600px) {
    .contact-form {
      padding-bottom: 120px; }
      .contact-form__inner {
        margin: auto;
        width: 1000px; }
      .contact-form__txt01 {
        margin-bottom: 50px;
        font-size: 1.6rem; }
        .contact-form__txt01 .required {
          top: -6px;
          margin-right: 5px; }
      .contact-form .contact-form__txt02 {
        margin: 40px 0 27px; } }

#works-single .l-sub,
#works .l-sub {
  background: url("../img/works/works__mv01_sp.png") no-repeat center/100%; }
  @media all and (min-width: 600px) {
    #works-single .l-sub,
    #works .l-sub {
      background: url("../img/works/works__mv01_pc.png") no-repeat center/cover; } }

.works-archive {
  display: flex;
  align-items: start;
  flex-wrap: wrap; }
  .works-archive a {
    display: block;
    text-decoration: none; }
  .works-archive__item {
    width: 50%; }
  .works-archive__img {
    margin-bottom: 7px;
    overflow: hidden; }
  .works-archive__img img {
    display: block;
    transition: all 0.3s ease; }
  a:hover .works-archive__img img {
    transition: all 0.3s ease;
    transform: scale(1.1); }
  .works-archive__txt {
    font-size: 1.2rem;
    line-height: calc(24/14); }
  .works-archive__date {
    text-align: right;
    color: #838487; }
  .works-archive .works-archive__category {
    margin-bottom: 7px; }
    .works-archive .works-archive__category .works-archive__category-item a {
      padding: 4px 11px;
      font-size: 1rem; }
  @media all and (max-width: 599px) {
    .works-archive__item {
      margin-bottom: 20px;
      width: 50%;
      padding-right: 10px;
      box-sizing: border-box; }
      .works-archive__item:nth-child(2n) {
        padding: 0 0 0 10px; }
    .works-archive__date {
      margin-right: -10px;
      font-size: 1rem;
      transform: scale(0.8); } }
  @media all and (min-width: 600px) {
    .works-archive {
      position: relative;
      margin-left: -20px; }
      .works-archive__item {
        margin: 0 20px 40px 0;
        width: 213px; }
        .works-archive__item:nth-child(3n) {
          margin-right: 0; }
      .works-archive__txt {
        font-size: 1.4rem;
        line-height: calc(24/14); }
      .works-archive .works-archive__category {
        margin-bottom: 5px; }
        .works-archive .works-archive__category .works-archive__category-item {
          margin: 0 10px 5px 0; }
        .works-archive .works-archive__category .works-archive__category-item a {
          padding: 5px 18px;
          font-sizze: 1.3rem; } }

.works-single__img {
  margin: 25px 0; }

#recruit .l-sub {
  background: url("../img/recruit/recruit__mv01_sp.png") no-repeat center/100%; }
  @media all and (min-width: 600px) {
    #recruit .l-sub {
      background: url("../img/recruit/recruit__mv01_pc.png") no-repeat center/cover; } }

@media all and (max-width: 599px) {
  #recruit .l-container {
    position: relative;
    margin-top: -40px;
    padding-top: 40px;
    background: url("../img/recruit/recriuit__bg01_sp.png") no-repeat top right/100%; } }

@media all and (min-width: 600px) {
  #recruit .l-container {
    background: url("../img/recruit/recriuit__bg01_pc.png") no-repeat top right/650px; } }

.recruit-visual__inner {
  position: relative;
  padding: 0 0px 65px;
  z-index: 2; }
  .recruit-visual__inner::before {
    position: absolute;
    display: block;
    bottom: -14px;
    left: -20px;
    font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
    content: "WADAI";
    font-size: 8rem;
    font-weight: 700;
    line-height: 1;
    color: #F1F5F8;
    z-index: -1; }
.recruit-visual__head {
  font-weight: 600; }
.recruit-visual__txt {
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 2; }
@media all and (max-width: 599px) {
  .recruit-visual__head {
    padding-left: 0.5em;
    font-size: 2.6rem;
    line-height: 1.6;
    text-indent: -0.5em; }
  .recruit-visual__txt {
    margin: 10px 0 0 15px; } }
@media all and (min-width: 600px) {
  .recruit-visual__inner {
    padding: 0 60px 150px;
    z-index: 2; }
    .recruit-visual__inner::before {
      bottom: -30px;
      left: 0;
      font-size: 20rem; }
  .recruit-visual__head {
    font-size: 4.4rem;
    line-height: 1.4; }
  .recruit-visual__txt {
    margin-top: 20px;
    font-size: 1.8rem; } }

.recruit-statue {
  padding: 60px 0 45px; }
  .recruit-statue__head {
    margin-top: 10px;
    font-size: 1.6rem;
    font-weight: 600; }
  .recruit-statue__text {
    margin-top: 5px; }
    .recruit-statue__text li {
      position: relative;
      padding-left: 16px;
      font-size: 1.4rem;
      line-height: 2; }
      .recruit-statue__text li::before {
        position: absolute;
        display: block;
        content: "";
        width: 2px;
        height: 2px;
        background: #151515;
        top: 12px;
        left: 8px; }
  @media all and (max-width: 599px) {
    .recruit-statue__list01 {
      margin-top: 25px; }
    .recruit-statue__item + .recruit-statue__item {
      margin-top: 25px; } }
  @media all and (min-width: 600px) {
    .recruit-statue {
      padding: 120px 0 75px; }
      .recruit-statue__list01 {
        display: flex;
        justify-content: center; }
      .recruit-statue__item {
        width: 412px;
        margin: 35px 21px; }
      .recruit-statue__head {
        margin-top: 15px;
        font-size: 1.8rem; }
      .recruit-statue__text {
        margin-top: 8px; } }

.recruit-requirement {
  padding: 65px 0 45px; }
  .recruit-requirement__head {
    margin: 20px 20px 10px;
    font-size: 2rem;
    font-weight: 600;
    color: #0E62C1; }
  .recruit-requirement__sec + .recruit-requirement__sec {
    margin-top: 35px; }
  @media all and (min-width: 600px) {
    .recruit-requirement {
      padding: 130px 0 120px; }
      .recruit-requirement__inner {
        padding: 0 60px; }
      .recruit-requirement__head {
        font-size: 2.4rem;
        margin: 30px 20px 10px; }
      .recruit-requirement__sec + .recruit-requirement__sec {
        margin-top: 95px; } }

.recruit-information {
  padding: 60px 0 66px; }
  .recruit-information__list {
    border-top: 1px solid #D1D3D5; }
    .recruit-information__list li {
      border-bottom: 1px solid #D1D3D5; }
  .recruit-information__list {
    margin-top: 22px; }
    .recruit-information__list li {
      padding: 10px 20px; }
  @media all and (max-width: 599px) {
    .recruit-information .c-head01 {
      margin-left: -20px;
      margin-right: -20px; }
    .recruit-information__list li {
      font-size: 1.4rem; } }
  @media all and (min-width: 600px) {
    .recruit-information {
      padding: 130px 0 120px 0; }
      .recruit-information__inner {
        padding: 0 60px; }
      .recruit-information__list {
        margin-top: 30px; }
        .recruit-information__list li {
          padding: 23px 25px; } }

.recruit-faq {
  padding: 65px 0 66px; }
  .recruit-faq__head {
    margin-bottom: 30px; }
  .recruit-faq__list {
    border-top: 1px solid #D1D3D5; }
    .recruit-faq__list li {
      border-bottom: 1px solid #D1D3D5; }
  .recruit-faq__item dt, .recruit-faq__item dd {
    position: relative; }
    .recruit-faq__item dt::before, .recruit-faq__item dd::before {
      position: absolute;
      display: block;
      font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
      font-weight: 600;
      color: #0E62C1;
      top: 0;
      left: 0; }
  .recruit-faq__item dt {
    padding: 7px 10px 6px 49px;
    font-size: 1.4rem;
    font-weight: 600;
    background: #F0F3F5; }
    .recruit-faq__item dt::before {
      content: "Q";
      font-size: 2.2rem;
      top: 2px;
      left: 16px; }
  .recruit-faq__item dd {
    padding: 8px 15px 6px 49px;
    font-size: 1.3rem; }
    .recruit-faq__item dd::before {
      content: "A";
      font-size: 2.2rem;
      top: 8px;
      left: 16px; }
  .recruit-faq__item + .recruit-faq__item {
    margin-top: 10px; }
  @media all and (min-width: 600px) {
    .recruit-faq {
      padding: 125px 0 125px 0; }
      .recruit-faq__inner {
        padding: 0 60px; }
      .recruit-faq__list {
        margin-top: 30px; }
        .recruit-faq__list li {
          padding: 23px 25px; }
      .recruit-faq__item dt {
        padding: 22px 20px 22px 65px;
        font-size: 1.6rem; }
        .recruit-faq__item dt::before {
          font-size: 3rem;
          top: 8px;
          left: 20px; }
      .recruit-faq__item dd {
        font-size: 1.6rem;
        line-height: calc(27/16);
        padding: 25px 20px 20px 65px; }
        .recruit-faq__item dd::before {
          font-size: 3rem;
          top: 24px;
          left: 20px; }
      .recruit-faq__item + .recruit-faq__item {
        margin-top: 15px; } }

#service .l-sub {
  background: url("../img/service/service__mv01_sp.png") no-repeat center/100%; }
  @media all and (min-width: 600px) {
    #service .l-sub {
      background: url("../img/service/service__mv01_pc.png") no-repeat center/cover; } }

@media all and (max-width: 599px) {
  #service .c-cv01 + section {
    margin-top: 60px; } }
@media all and (min-width: 600px) {
  #service .c-cv01 + section {
    margin-top: 120px; } }

.service__set01 {
  margin-bottom: 60px; }
  .service__set01 .service__head01 {
    margin-bottom: 20px; }
  .service__set01-text .service__txt {
    font-size: 1.4rem;
    line-height: 2; }
  .service__set01-text .service__txt + .service__txt {
    margin-top: 25px; }
  @media all and (max-width: 599px) {
    .service__set01 .service__head02 {
      margin-bottom: 25px;
      margin-right: -10px;
      font-size: 1.8rem;
      letter-spacing: 0;
      line-height: calc(32/18); }
    .service__set01-img {
      margin-bottom: 28px; }
    .service__set01-text .service__txt {
      letter-spacing: 0.06em; } }
  @media all and (min-width: 600px) {
    .service__set01 {
      margin-bottom: 120px;
      display: flex;
      justify-content: center; }
      .service__set01-img {
        width: 440px; }
      .service__set01-text {
        width: 560px;
        padding-top: 20px;
        padding-left: 60px;
        box-sizing: border-box; }
        .service__set01-text .service__txt {
          font-size: 1.6rem;
          line-height: 2; }
        .service__set01-text .service__txt + .service__txt {
          margin-top: 3rem; }
      .service__set01 .service__head01 {
        margin-bottom: 20px; }
      .service__set01 .service__head02 {
        margin-bottom: 30px; } }
  @media all and (min-width: 600px) {
    .service__set01.is-reverse .service__set01-text {
      order: 1;
      padding: 20px 40px 0 0; }
    .service__set01.is-reverse .service__set01-img {
      order: 2; } }

/*  service__btn01
================================================ */
@media all and (max-width: 599px) {
  .service__btn01 {
    margin: 30px 20px 0; }
    .service__btn01 a {
      height: 50px;
      font-size: 1.3rem; } }
@media all and (min-width: 600px) {
  .service__btn01 {
    margin-top: 35px;
    width: 260px; }
    .service__btn01 a {
      width: 260px;
      height: 54px;
      font-size: 1.5rem;
      letter-spacing: 0.06em; } }

/*  service-point
================================================ */
.service-point {
  margin: 30px 0 60px; }
  .service-point__item-head {
    margin: 15px 0 2px;
    font-size: 1.5rem;
    line-height: calc(34/15);
    font-weight: 600; }
  .service-point__item-txt {
    font-size: 1.4rem;
    line-height: calc(24/14); }
  @media all and (min-width: 600px) {
    .service-point {
      margin: 30px 0 90px; }
      .service-point__item {
        width: 343px;
        margin-right: 46px; }
        .service-point__item:nth-child(3n) {
          margin-right: 0; }
      .service-point__item-head {
        margin: 10px 0 15px;
        font-size: 1.8rem;
        line-height: calc(34/18); } }

/*  service-step
================================================ */
.service-step__wrap {
  margin: 30px 0 60px;
  padding: 30px 20px 25px; }
  @media all and (min-width: 600px) {
    .service-step__wrap {
      margin: 30px 0 120px;
      padding: 17px 25px; } }

.service-step__item {
  position: relative; }
  .service-step__item::after {
    display: block;
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border: 10px solid transparent; }
  .service-step__item:last-child::after {
    display: none; }
.service-step__num {
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #0E62C1; }
  .service-step__num .txt-large {
    font-size: 2.2rem;
    line-height: 1.4;
    margin-left: 3px;
    font-family: "DIN Alternate"; }
.service-step__head {
  padding: 6px 15px;
  font-size: 1.5rem;
  font-weight: 600;
  background: #fff; }
.service-step__txt {
  padding: 8px 0;
  font-size: 1.4rem;
  line-height: calc(24/14); }
@media all and (max-width: 599px) {
  .service-step__item::after {
    bottom: -40px;
    left: calc(50% - 18px);
    border: 18px solid transparent;
    border-top: 12px solid #0E62C1; }
  .service-step__item + .service-step__item {
    margin-top: 35px; } }
@media all and (min-width: 600px) {
  .service-step {
    display: flex;
    justify-content: center; }
    .service-step__num .txt-large {
      font-size: 2.7rem;
      line-height: 1.2; }
    .service-step__item {
      width: 260px;
      margin: 0 20px 25px 0; }
      .service-step__item:last-child {
        margin-right: 0; }
      .service-step__item::after {
        top: 38px;
        right: -35px;
        border: 18px solid transparent;
        border-left: 12px solid #0E62C1; }
    .service-step__head {
      padding: 8px 22px 7px;
      font-size: 1.8rem; }
    .service-step.is-col5 {
      flex-wrap: wrap; }
      .service-step.is-col5 .service-step__item:nth-child(3) {
        margin-right: 0; }
    .service-step__txt {
      padding: 15px 18px 15px 20px;
      font-size: 1.6rem;
      line-height: calc(27/16); } }

#news-single .l-sub,
#news .l-sub {
  background: url("../img/news/news__mv01_sp.png") no-repeat center/100%; }
  @media all and (min-width: 600px) {
    #news-single .l-sub,
    #news .l-sub {
      background: url("../img/news/news__mv01_pc.png") no-repeat center/cover; } }

/**/
.news-category-list .news-category-list__item {
  margin-right: 15px; }
  .news-category-list .news-category-list__item .news-category-list__link {
    padding: 4px 11px;
    font-size: 1rem; }
@media all and (max-width: 599px) {
  .news-category-list {
    padding-bottom: 10px;
    margin-right: -15px; }
    .news-category-list .news-category-list__item {
      margin-bottom: 5px; } }
@media all and (min-width: 600px) {
  .news-category-list {
    width: 1000px;
    padding-bottom: 35px;
    margin: auto; }
    .news-category-list .news-category-list__item .news-category-list__link {
      padding: 7px 18px;
      font-size: 1.3rem; } }

.news-archive a {
  display: block;
  text-decoration: none;
  border-bottom: 1px solid #D1D3D5; }
.news-archive__date {
  color: #838487;
  font-size: 1.4rem;
  letter-spacing: 0.02em;
  white-space: nowrap; }
.news-archive__img {
  display: block;
  overflow: hidden; }
  .news-archive__img img {
    transition: all 0.3s ease; }
a:hover .news-archive__img img {
  transform: scale(1.1); }
.news-archive__data {
  display: flex;
  align-items: center; }
.news-archive__head {
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid #151515; }
.news-archive .news-archive__category-item {
  margin: 2px 8px 2px 0; }
  .news-archive .news-archive__category-item:last-child {
    margin-righht: 0; }
  .news-archive .news-archive__category-item a,
  .news-archive .news-archive__category-item .news-archive__category-link {
    padding: 4px 10px;
    font-size: 1rem; }
@media all and (max-width: 599px) {
  .news-archive {
    padding-bottom: 18px;
    margin-bottom: 20px; }
    .news-archive__head {
      margin: 10px 20px 10px 0;
      padding-bottom: 3px;
      font-size: 1.8rem;
      line-height: calc(30/18); }
    .news-archive:first-of-type {
      padding-top: 20px;
      border-top: 1px solid #D1D3D5; }
    .news-archive__date {
      margin-right: 15px; }
    .news-archive__txt {
      margin-top: 10px;
      font-size: 1.4rem;
      line-height: calc(24/14); } }
@media all and (min-width: 600px) {
  .news-archive a {
    display: flex;
    align-items: start;
    margin: auto;
    width: 1000px;
    padding: 35px 20px;
    box-sizing: border-box; }
  .news-archive__img {
    width: 222px;
    min-width: 222px; }
  .news-archive__text {
    width: 778px;
    padding-left: 23px; }
  .news-archive__head {
    float: left;
    padding-bottom: 4px;
    font-size: 2rem;
    line-height: calc(34/20);
    width: 360px;
    border-bottom: 1px solid #151515; }
  .news-archive__data {
    float: right;
    max-width: 300px;
    margin-top: 5px; }
  .news-archive__date {
    font-size: 1.4rem;
    margin-right: 8px; }
  .news-archive__txt {
    margin-top: 17px;
    font-size: 1.4rem;
    line-height: 2; } }
.news-archive:last-child {
  border-bottom: 1px solid #D1D3D5; }

#company .l-sub {
  background: url("../img/company/company__mv01_sp.png") no-repeat center/100%; }
  @media all and (min-width: 600px) {
    #company .l-sub {
      background: url("../img/company/company__mv01_pc.png") no-repeat center/cover; } }

.company-philosophy {
  padding: 0 0 30px 0; }
  .company-philosophy__head02 {
    margin-top: 20px;
    font-size: 1.3rem;
    font-weight: 600;
    line-height: calc(32/13);
    text-align: center; }
  @media all and (max-width: 599px) {
    .company-philosophy__head01-en {
      letter-spacing: 0.15em;
      line-height: calc(35/24); } }
  @media all and (min-width: 600px) {
    .company-philosophy {
      padding: 10px 0 50px; }
      .company-philosophy__head02 {
        margin-top: 25px;
        font-size: 1.8rem;
        line-height: calc(39/18); } }

@media all and (max-width: 599px) {
  .company-greeting__inner {
    padding: 50px 0px; }
  .company-greeting__head02 {
    margin: 20px 0 30px; }
  .company-greeting__set01-img {
    margin-bottom: 30px; }
  .company-greeting__txt {
    font-size: 1.4rem;
    line-height: calc(31/14);
    letter-spacing: 0.06em; } }
@media all and (min-width: 600px) {
  .company-greeting__inner {
    padding: 85px 60px; }
  .company-greeting__head02 {
    margin: 20px 0 40px; }
  .company-greeting__txt {
    font-size: 1.6rem;
    line-height: 2; }
  .company-greeting__set01 {
    display: flex;
    align-items: center; }
    .company-greeting__set01-text {
      order: 1;
      padding-right: 45px;
      width: calc(100% - 440px);
      box-sizing: border-box; }
    .company-greeting__set01-img {
      order: 2;
      width: 440px; } }

.company-outline__dl dt {
  margin-bottom: 2px;
  font-weight: 600; }
.company-outline__dl dd {
  margin-bottom: 17px; }
  .company-outline__dl dd:last-child {
    margin-bottom: 5px; }
.company-outline__table th {
  font-weight: 600;
  white-space: nowrap; }
@media all and (max-width: 599px) {
  .company-outline__inner {
    padding: 65px 0px 60px; }
  .company-outline__table {
    margin-top: 25px; }
  .company-outline__dl dt {
    font-size: 1.3rem; }
  .company-outline__dl dd {
    margin-bottom: 10px;
    font-size: 1.2rem; } }
@media all and (min-width: 600px) {
  .company-outline {
    padding: 130px 0; }
    .company-outline__inner {
      padding: 0 60px; }
    .company-outline__table {
      margin-top: 30px; } }

.company-access {
  position: relative;
  z-index: 2; }
  .company-access__head {
    font-family: "Poppins", "Helvetica Neue", HelveticaNeue;
    font-size: 1.5rem;
    letter-spacing: 0.08em;
    color: #0E62C1; }
  .company-access__txt {
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #707070; }
  @media all and (max-width: 599px) {
    .company-access {
      background: #F0F3F5; }
      .company-access__inner {
        margin-bottom: 70px;
        padding: 55px 0px 50px; }
      .company-access__map {
        margin: 25px 0 15px; }
        .company-access__map iframe {
          width: 100%;
          height: 177px; } }
  @media all and (min-width: 600px) {
    .company-access {
      padding-top: 80px;
      padding-bottom: 80px; }
      .company-access:before {
        position: absolute;
        display: block;
        content: "";
        top: 0;
        left: 0;
        width: 100%;
        height: 377px;
        background: #F0F3F5;
        z-index: -1; }
      .company-access__inner {
        padding: 0 60px; }
      .company-access__map {
        margin: 30px 0; }
      .company-access__set {
        display: flex;
        margin: 30px 0 50px; }
      .company-access__head {
        padding-right: 20px;
        font-size: 1.5rem;
        border-bottom: 1px solid #707070; }
      .company-access__txt {
        font-size: 1.6rem;
        letter-spacing: 0.1em;
        border-bottom: 1px solid #707070; } }

#policy .l-sub {
  background: url("../img/policy/policy__mv01_sp.png") no-repeat center/100%; }
  @media all and (min-width: 600px) {
    #policy .l-sub {
      background: url("../img/policy/policy__mv01_pc.png") no-repeat center/cover; } }

@media all and (max-width: 599px) {
  .policy__inner {
    padding: 0 20px 50px; } }
@media all and (min-width: 600px) {
  .policy__inner {
    padding-bottom: 90px;
    margin: auto;
    width: 1000px;
    max-width: 100%; } }

.policy__head01 {
  margin-bottom: 15px;
  padding-bottom: 8px;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1;
  border-bottom: 1px solid #151515; }
  @media all and (min-width: 600px) {
    .policy__head01 {
      margin-bottom: 15px;
      padding-bottom: 5px;
      font-size: 2rem; } }

.policy__head02 {
  padding-top: 15px;
  font-size: 1.6rem;
  font-weight: 600;
  color: #0E62C1;
  border-top: 1px solid #D1D3D5; }
  @media all and (min-width: 600px) {
    .policy__head02 {
      padding-top: 25px;
      font-size: 1.8rem;
      letter-spacing: 0.08em; } }

.policy__text {
  margin-top: 3px;
  margin-bottom: 15px;
  font-size: 1.4rem;
  line-height: calc(24/14); }
  .policy__text:first-of-type {
    margin-bottom: 40px; }
  @media all and (min-width: 600px) {
    .policy__text {
      margin-bottom: 30px;
      font-size: 1.6rem;
      line-height: calc(27/16); }
      .policy__text:first-of-type {
        margin-bottom: 60px; } }

ol.policy-list01 {
  counter-reset: item; }
  ol.policy-list01 li {
    position: relative;
    padding-left: 20px; }
  ol.policy-list01 li::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    text-align: center;
    counter-increment: item;
    content: counter(item) "."; }
  ol.policy-list01 ol.policy-list01 {
    margin-top: 7px; }
    @media all and (min-width: 600px) {
      ol.policy-list01 ol.policy-list01 {
        margin-top: 10px;
        margin-bottom: 15px; } }

.policy-company {
  margin: 15px 0;
  padding: 20px 20px 10px;
  background: #F0F3F5; }
  .policy-company th {
    width: 85px;
    font-weight: 600; }
  @media all and (max-width: 599px) {
    .policy-company th, .policy-company td {
      display: block; }
    .policy-company td {
      padding-bottom: 10px; } }
  @media all and (min-width: 600px) {
    .policy-company {
      padding: 25px 35px 20px; }
      .policy-company th, .policy-company td {
        padding: 5px 0; } }

/*  20230802 Worksページ実績追加*/
/*  l-works-results
================================================ */
	.l-works-results {
		margin-bottom: 100px;
		display: flex;
    	flex-wrap: wrap;
    	gap: 20px;}
	.l-works-results__item {
    	padding: 20px;
		box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.16);
    	background: #F0F3F5;
    	width: 100%;
		box-sizing: border-box;}
	  @media all and (min-width: 600px) {
		  	.l-works-results {
				gap: 30px;
		  		margin: 0px 30px 100px;}
		  	.l-works-results__item {
				display: flex;}}
	.l-works-results__item:nth-child(1) .l-works-results__img img {
		width: 100%;}
	.l-works-results__img {
		display: flex;	
		aspect-ratio: 504 / 140;
		width: 100%;}
	.l-works-results__img img {
		width: 50%;
		object-fit: contain;}
	.l-works-results__text {
		margin: 20px 0;
		width: 100%;}
	@media all and (min-width: 600px) {
		.l-works-results__img {
			width: 50%;}
		.l-works-results__text {
			margin: 20px;
			width: 50%;}}