@charset "UTF-8";
/*
Theme Name: 田中組_test
Theme URI: 
Description: 田中組テーマ test
Version: 9.0
Author: huevo
*/
/*////////////////////////////////////////////////////////////

Foundation

////////////////////////////////////////////////////////////*/
@import url(assets/css/normalize.css);
/**
/* Base
============================================================*/
/**
* box-sizing,
*
* padding、borderをwidthに含める
--------------------------------------------------*/
html {
  box-sizing: border-box;
}

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

/**
* フォントの基本設定
--------------------------------------------------*/
html {
  font-size: 10px;
  line-height: 1.8;
  font-family: "YuGothic", "游ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

body {
  font-size: 1.6rem;
  color: #111111;
  letter-spacing: 0.1em;
}

/**
* 斜体をリセット
- - - - - - - - - - - - - - - - - - - - */
i,
cite,
em,
address,
dfn {
  font-style: normal;
}

/**
* 見出しの基本設定
- - - - - - - - - - - - - - - - - - - - */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: inherit;
  color: inherit;
  line-height: 2rem;
  font-weight: bold;
}

p {
  text-align: justify;
}

h1 {
  font-size: 36px;
}

h2 {
  font-size: 32px;
}

h3 {
  font-size: 28px;
}

h4 {
  font-size: 24px;
}

h5 {
  font-size: 20px;
}

h6 {
  font-size: 16px;
}

/**
* margin, paddingをリセット
--------------------------------------------------*/
/**
* 見出し
- - - - - - - - - - - - - - - - - - - - */
html, body {
  margin: 0;
}

h1, h2, h3, h4, h5, h6,
ul, ol, dl,
blockquote, p, address,
hr,
table,
fieldset, figure,
pre {
  margin-top: 0;
  margin-bottom: 0;
}

/**
* list
- - - - - - - - - - - - - - - - - - - - */
li > ul, li > li {
  margin-left: 0;
}

/**
* dd
- - - - - - - - - - - - - - - - - - - - */
dd {
  margin-left: 0;
}

/**
* table
--------------------------------------------------*/
table {
  width: 100%;
}

table th {
  text-align: left;
}

/**
* リンクの基本設定
--------------------------------------------------*/
a {
  color: #00316c;
  text-decoration: none;
  outline: none;
}

a:hover {
  text-decoration: underline;
}

/*////////////////////////////////////////////////////////////

Layout

////////////////////////////////////////////////////////////*/
/*
/* flex-grid
============================================================*/
body {
  padding: 0;
  position: relative;
}

/**
/* font setting
============================================================*/
.l-wrapper {
  width: 100%;
}

/**
/* header
============================================================*/
.l-header {
  width: 100%;
  height: auto;
  background-color: #00316c;
  overflow: scroll;
  position: fixed;
  top: 0;
  z-index: 20;
}

@media only screen and (min-width: 480px) {
  .l-header {
    overflow: visible;
  }
}

@media only screen and (min-width: 768px) {
  .l-header {
    padding-top: 1.95312vw;
    padding-bottom: 2.73438vw;
    padding-left: 1.5625vw;
    padding-right: 1.5625vw;
    background-color: rgba(7, 48, 118, 0.8);
    position: relative;
  }
}

@media only screen and (min-width: 960px) {
  .l-header {
    padding-top: 25px;
    padding-bottom: 35px;
    padding-right: 0;
    padding-left: 0;
    display: block;
  }
}

@media only screen and (min-width: 960px) {
  .l-header {
    padding-left: 25px;
    padding-right: 25px;
  }
}

.p-slide-header {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
}

/* main
------------------------------------------------------------*/
.main {
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .main {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

/**
/* contents
============================================================*/
.l-contents {
  padding-top: 5.41667vw;
  padding-bottom: 60px;
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .l-contents {
    padding-top: 0;
  }
}

@media only screen and (min-width: 768px) {
  .l-contents {
    width: 100%;
  }
}

/**
/* inner
============================================================*/
.l-inner {
  padding: 0 20px;
}

@media only screen and (min-width: 960px) {
  .l-inner {
    margin: 0 auto;
    padding: 0;
    max-width: 980px;
    position: relative;
  }
}

/* sidebar
------------------------------------------------------------*/
.l-sidebar {
  padding-bottom: 70px;
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .l-sidebar {
    display: block;
  }
}

@media only screen and (min-width: 768px) {
  .l-sidebar {
    width: 28vw;
  }
}

@media only screen and (min-width: 960px) {
  .l-sidebar {
    width: 285px;
  }
}

@media only screen and (min-width: 480px) {
  .l-sidebar__inner {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .l-sidebar__inner {
    padding-top: 50px;
    padding-right: 3.125vw;
    padding-left: 3.125vw;
    padding-bottom: 40px;
    display: block;
  }
}

@media only screen and (min-width: 960px) {
  .l-sidebar__inner {
    padding-top: 3vh;
    padding-right: 30px;
    padding-left: 30px;
  }
}

.l-sidebar_fixed {
  position: fixed;
  top: 0;
  right: 0;
}

.l-sidebar_blog {
  padding-top: 160px;
}

/**
/* footer
============================================================*/
.l-footer {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .l-footer {
    width: 100%;
  }
}

.l-footer_full {
  width: 100%;
}

/*////////////////////////////////////////////////////////////

Object - Project

////////////////////////////////////////////////////////////*/
/*
/* page common
============================================================*/
/* color
------------------------------------------------------------*/
.p-color_yellow {
  color: #ffe86c !important;
}

/* text
------------------------------------------------------------*/
.p-text__marker_black {
  background-color: #000 !important;
  color: #fff !important;
}

.p-text__underline_yellow {
  padding-bottom: 3px;
  border-bottom: 3px solid #ffe86c;
}

.p-text_underline_white {
  padding-bottom: 3px;
  background: linear-gradient(transparent 60%, #fff 40%);
}

/* headding 
------------------------------------------------------------*/
.p-page__logo {
  margin: 0 auto;
  width: 14.89583vw !important;
  height: auto;
  display: block;
  max-width: none !important;
}

@media only screen and (min-width: 480px) {
  .p-page__logo {
    display: none;
  }
}

.p-page__heading_lv1 {
  padding-top: 10.83333vw;
  padding-bottom: 9.47917vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
  text-align: center;
  position: relative;
}

.p-page__heading_lv1::before, .p-page__heading_lv1::after {
  content: '';
  background-color: #00316c;
  display: block;
  position: absolute;
  box-sizing: content-box;
  bottom: 0;
}

.p-page__heading_lv1::before {
  width: 100%;
  height: 0.54167vw;
  min-height: 1px;
  left: 0;
}

.p-page__heading_lv1::after {
  border-right: 1.35417vw solid #fff;
  border-left: 1.35417vw solid #fff;
  width: 72%;
  height: 1.08333vw;
  max-height: 660px;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv1 {
    padding-top: 8.33333vw;
    padding-bottom: 5.72917vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
  .p-page__heading_lv1::before {
    height: 0.41667vw;
  }
  .p-page__heading_lv1::after {
    border-width: 1.5625vw;
    height: 0.625vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv1 {
    padding-top: 80px;
    padding-bottom: 55px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
  .p-page__heading_lv1::before {
    height: 4px;
  }
  .p-page__heading_lv1::after {
    border-width: 15px;
    height: 6px;
  }
}

.p-page__heading_lv1 span {
  margin-bottom: 4.0625vw;
  font-size: 49.4px;
  font-size: 10.29167vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  display: block;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv1 span {
    margin-bottom: 2.08333vw;
    font-size: 42px;
    font-size: 4.375vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv1 span {
    margin-bottom: 20px;
    font-size: 42px;
    font-size: 4.2rem;
    line-height: 42px;
    line-height: 4.2rem;
  }
}

.p-page__heading_lv2 {
  margin-bottom: 13.54167vw;
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 1.5;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv2 {
    margin-bottom: 5.20833vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv2 {
    margin-bottom: 50px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

.p-page__heading_lv2 span {
  padding-bottom: 2.08333vw;
  border-bottom: 2px solid #000;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv2 span {
    padding-bottom: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv2 span {
    padding-bottom: 10px;
  }
}

.p-page__heading_lv2_en {
  margin-bottom: 4.0625vw;
  font-size: 84.5px;
  font-size: 17.60417vw;
  line-height: 0.84615;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
  text-transform: uppercase;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv2_en {
    margin-bottom: 2.03125vw;
    font-size: 110px;
    font-size: 11.45833vw;
    line-height: 0.90909;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv2_en {
    margin-bottom: 15px;
    font-size: 110px;
    font-size: 11rem;
    line-height: 100px;
    line-height: 10rem;
  }
}

.p-page__heading_lv2_black {
  color: #00316c;
}

.p-page__heading_lv2_small {
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 1.5;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv2_small {
    font-size: 22px;
    font-size: 2.29167vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv2_small {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.p-page__heading_lv2_small span {
  display: inline-block;
}

.p-page__heading_sideline {
  margin-bottom: 5.41667vw;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1.625;
  color: #00316c;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_sideline {
    margin-bottom: 3.125vw;
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_sideline {
    margin-bottom: 30px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 18px;
    line-height: 1.8rem;
  }
}

.p-page__heading_sideline span {
  position: relative;
  display: inline-block;
}

.p-page__heading_sideline span::before, .p-page__heading_sideline span::after {
  content: '';
  width: 2.70833vw;
  height: 5.95833vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  bottom: -5px;
}

.p-page__heading_sideline span::before {
  background-image: url(assets/images/common/heading_dotline_l_blue.png);
  left: -20px;
}

.p-page__heading_sideline span::after {
  background-image: url(assets/images/common/heading_dotline_r_blue.png);
  right: -20px;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_sideline span {
    position: relative;
  }
  .p-page__heading_sideline span::before, .p-page__heading_sideline span::after {
    width: 1.5625vw;
    height: 2.8125vw;
  }
  .p-page__heading_sideline span::before {
    left: -2.08333vw;
  }
  .p-page__heading_sideline span::after {
    right: -2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_sideline span::before, .p-page__heading_sideline span::after {
    width: 15px;
    height: 27px;
  }
  .p-page__heading_sideline span::before {
    left: -40px;
  }
  .p-page__heading_sideline span::after {
    right: -40px;
  }
}

.p-page__heading_sideline_double span {
  display: inline-block;
  position: relative;
}

.p-page__heading_sideline_double span::before, .p-page__heading_sideline_double span::after {
  content: '';
  width: 5.41667vw;
  height: 7.29167vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: block;
  position: absolute;
  bottom: 0;
}

.p-page__heading_sideline_double span::before {
  background-image: url(assets/images/common/heading_sideline_2_l.png);
  left: -33px;
}

.p-page__heading_sideline_double span::after {
  background-image: url(assets/images/common/heading_sideline_2_r.png);
  right: -33px;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_sideline_double span::before, .p-page__heading_sideline_double span::after {
    width: 2.39583vw;
    height: 3.33333vw;
  }
  .p-page__heading_sideline_double span::before {
    left: -5.72917vw;
  }
  .p-page__heading_sideline_double span::after {
    right: -5.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_sideline_double span::before, .p-page__heading_sideline_double span::after {
    width: 23px;
    height: 32px;
  }
  .p-page__heading_sideline_double span::before {
    left: -55px;
  }
  .p-page__heading_sideline_double span::after {
    right: -55px;
  }
}

.p-page__heading_sideline_double_blue {
  color: #00316c;
}

.p-page__heading_sideline_double_blue span::before {
  background-image: url(assets/images/common/heading_sideline_2_l_blue.png);
}

.p-page__heading_sideline_double_blue span::after {
  background-image: url(assets/images/common/heading_sideline_2_r_blue.png);
}

/* button
------------------------------------------------------------*/
.p-button {
  text-align: center;
  font-weight: bold;
  display: block;
  background-color: #fff;
}

.p-button span {
  display: block;
}

.p-button span::after {
  padding-left: 10px;
  content: '>';
}

.p-button_solid_yellow span {
  background-color: #ffe86c;
  color: #000;
}

.p-button_solid_white span {
  background-color: #fff;
  color: #000;
}

.p-button_border span {
  border: 3px solid #000;
}

.hover_reverse:hover {
  background-color: #00316c;
  color: #fff;
  text-decoration: none;
  transition: background-color 0.3s linear;
}

/* color
------------------------------------------------------------*/
.p-bg_red {
  background-color: #00316c;
  color: #fff;
}

/* background
------------------------------------------------------------*/
.p-bg_dot {
  background-image: url(assets/images/works/works_single_story_bg2.png);
  background-size: 32px;
}

/* 404
------------------------------------------------------------*/
.notfound {
  padding-top: 80px;
  padding-bottom: 80px;
}

/**
/* project - global navigation
============================================================*/
.p-global {
  display: none;
}

@media only screen and (min-width: 768px) {
  .p-global {
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
  }
}

.p-global ul {
  list-style-type: none;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.p-global ul li {
  position: relative;
}

.p-global ul li::before {
  content: '';
  width: 1px;
  height: 2.08333vw;
  background-color: #fff;
  display: block;
  position: absolute;
  top: -3px;
  left: 0;
}

.p-global ul li:last-of-type {
  position: relative;
}

.p-global ul li:last-of-type::after {
  content: '';
  width: 1px;
  height: 20px;
  background-color: #fff;
  display: block;
  position: absolute;
  top: -3px;
  right: 0;
}

@media only screen and (min-width: 960px) {
  .p-global ul li::before, .p-global ul li::after {
    height: 1.5625vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-global ul li::before, .p-global ul li::after {
    height: 20px;
  }
}

.p-global ul li a {
  padding: 0 1.5625vw;
  font-size: 10px;
  font-size: 0.78125vw;
  line-height: 1;
  color: #ccc;
  text-align: center;
  font-weight: bold;
  display: block;
}

@media only screen and (min-width: 960px) {
  .p-global ul li a {
    padding: 0 1.5625vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-global ul li a {
    padding: 0 15px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 10px;
    line-height: 1rem;
  }
}

.p-global ul li a span {
  padding-bottom: 10px;
  font-size: 16px;
  font-size: 1.25vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #fff;
  display: block;
}

@media only screen and (min-width: 1280px) {
  .p-global ul li a span {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.p-global ul li a.has-arrow {
  position: relative;
}

.p-global ul li a.has-arrow::after {
  content: '';
  width: 8px;
  height: 8px;
  border: 2px solid;
  border-color: transparent transparent #fff #fff;
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: rotate(-45deg) translateX(-50%);
}

.p-global ul li a.has-arrow:hover {
  text-decoration: none;
}

.p-global ul li a.has-border::after {
  content: '';
  margin: 0 auto;
  width: 60%;
  height: 2px;
  background-color: #ffe86c;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10px;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: 0.5s transform cubic-bezier(0.52, 0.08, 0.18, 1);
}

.p-global ul li a.has-border:hover {
  text-decoration: none;
  opacity: 1;
}

.p-global ul li a.has-border:hover::after {
  transform: scale(1, 1);
  transform-origin: left top;
}

.p-global__contact {
  background-color: #ffe86c;
  font-size: 12px;
  font-size: 2.5vw;
  line-height: 3.33333;
  border-radius: 2.08333vw;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-self: flex-start;
}

@media only screen and (min-width: 768px) {
  .p-global__contact {
    margin-top: 6px;
    width: 16.32653vw;
    border-radius: 1.02041vw;
    font-size: 12px;
    font-size: 1.22449vw;
    line-height: 3.33333;
    position: relative;
  }
  .p-global__contact::before {
    content: '';
    margin-right: 5px;
    width: 1.73469vw;
    height: 1.32653vw;
    background-image: url(assets/images/common/icon_nmail_blue.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    display: inline-block;
  }
  .p-global__contact::after {
    content: "";
    margin-left: 5px;
    width: 8px;
    height: 8px;
    border: 2px solid;
    border-color: #00316c #00316c transparent transparent;
    transform: rotate(45deg);
    display: inline-block;
  }
}

@media only screen and (min-width: 960px) {
  .p-global__contact {
    width: 14.0625vw;
    font-size: 12px;
    font-size: 0.9375vw;
    line-height: 3.33333;
  }
}

@media only screen and (min-width: 1280px) {
  .p-global__contact {
    width: 190px;
    border-radius: 10px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 40px;
    line-height: 4rem;
  }
  .p-global__contact::before {
    width: 17px;
    height: 13px;
  }
}

.p-global__contact--noicon {
  width: auto;
  padding: 0 20px;
}

.p-global__contact--noicon::before {
  display: none;
}

.p-global_en {
  border-bottom: 1px solid #fff;
  width: 50%;
  font-size: 1.6rem;
  line-height: 5vh;
  font-family: futura-pt, sans-serif;
  color: #fff;
  font-weight: 700;
  text-transform: uppercase;
}

.p-global_en::before {
  content: '-';
  padding-right: 5px;
}

@media only screen and (min-width: 768px) {
  .p-global_en {
    width: 45%;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
    color: #000;
  }
}

@media only screen and (min-width: 960px) {
  .p-global_en {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.p-global_ja {
  border-bottom: 1px solid #fff;
  width: 50%;
  font-size: 1rem;
  line-height: 5vh;
}

@media only screen and (min-width: 768px) {
  .p-global_ja {
    width: 55%;
    font-size: 10px;
    font-size: 1rem;
    line-height: 16px;
    line-height: 1.6rem;
    color: #cccccc;
  }
}

.p-global__text {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
  color: #fff;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 768px) {
  .p-global__text {
    margin-bottom: 1vh;
    color: #000;
  }
}

.p-global__tel {
  margin-bottom: 1vh;
  font-size: 3.5vh;
  font-family: futura-pt, sans-serif;
  font-weight: 700;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .p-global__tel {
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-global__tel {
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.p-global__tel a {
  color: #fff;
}

@media only screen and (min-width: 768px) {
  .p-global__tel a {
    color: #000;
  }
}

.p-global__sns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.p-global__sns a {
  margin: 0 5px;
  width: 5.5vh;
  height: 5.5vh;
  display: block;
}

@media only screen and (min-width: 768px) {
  .p-global__sns a {
    width: 30px;
    height: 30px;
  }
}

.p-global__sns a img {
  width: 100%;
  height: auto;
  display: block;
}

.p-global_hassub ul {
  padding-top: 20px;
  padding-bottom: 25px;
  padding-left: 20px;
  padding-right: 35px;
  width: 180px;
  height: 231px;
  background-color: #fff;
  border-left: 2px solid #fadf00;
  display: none;
  position: absolute;
  top: 42px;
  z-index: 10;
}

.p-global_hassub ul li {
  width: 100%;
  border-bottom: 1px solid #d5d5d5;
}

.p-global_hassub ul li::before {
  display: none;
}

.p-global_hassub ul li a {
  padding: 0 0 0 10px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 30px;
  line-height: 3rem;
  text-align: left;
  color: #000;
}

.p-global_hassub ul li a::after {
  display: none;
}

.p-global_hassub ul li a::before {
  content: "";
  margin-top: calc((8px * 1.414) *-1 / 2);
  width: 8px;
  height: 8px;
  border: 2px solid;
  border-color: #000 #000 transparent transparent;
  transform: rotate(45deg);
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
}

.p-global_hassub ul li a:hover {
  opacity: .5;
  transition: opacity .2s linear;
}

.p-global_sp {
  padding-top: 4vh;
  padding-bottom: 3vh;
  width: 100%;
  height: calc(100vh - 60px);
  background-color: #00316c;
  display: none;
  /* display: block; */
  overflow: scroll;
}

.p-global_sp ul {
  list-style-type: none;
  margin-bottom: 3vh;
  padding: 0;
}

.p-global_sp ul li a {
  padding: 0 40px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  position: relative;
}

.p-global_sp ul li a:hover {
  text-decoration: none;
}

.p-global_sp ul li ul {
  margin-top: -1px;
  display: none;
  background-color: #fff;
}

.p-global_sp ul li ul li:last-of-type .p-global_hassub_line {
  border: none !important;
}

.p-global_sp ul li ul li a {
  color: #00316c;
  font-weight: bold;
}

.p-global_sp_hassub .p-global_ja {
  position: relative;
}

.p-global_sp_hassub .p-global_ja::after {
  content: '';
  width: 8px;
  height: 7px;
  background-image: url(assets/images/common/triangle_down_white.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}

.p-global_sp_hassub_line {
  padding-left: 15px;
  width: 100%;
  border-bottom: 1px solid #00316c;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 32px;
  line-height: 3.2rem;
  display: block;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

.p-global_sp_hassub_line::before {
  content: '';
  margin-right: 10px;
  width: 20px;
  height: 20px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: inline-block;
}

.p-global_sp_hassub_line_noicon::before {
  display: none !important;
}

.p-global_sp_hassub_line_blog::before {
  background-image: url(assets/images/common/icon_blog.png);
}

.p-global_sp_hassub_line_syacho-blog::before {
  background-image: url(assets/images/blog/blog_icon_syacho-blog.png);
}

.p-global_sp_hassub_line_staff-blog::before {
  background-image: url(assets/images/blog/blog_icon_staff-blog.png);
}

.p-global_sp_hassub_line_event::before {
  background-image: url(assets/images/blog/blog_icon_event.png);
}

.p-global_sp_hassub_line_project-report::before {
  background-image: url(assets/images/blog/blog_icon_project-report.png);
}

.p-global_sp_hassub_line_regional-activity::before {
  background-image: url(assets/images/blog/blog_icon_regional-activity.png);
}

.p-global_sp_hassub_line_recruit::before {
  background-image: url(assets/images/blog/blog_icon_recruit.png);
}

.p-global_sp_hassub_line_interview::before {
  background-image: url(assets/images/blog/blog_icon_interview.png);
}

.p-global_sp_hassub_line_estate::before {
  background-image: url(assets/images/blog/blog_icon_estate.png);
}

.p-global_sp_hassub_line_public::before {
  background-image: url(assets/images/works/works_icon_public.png);
}

.p-global_sp_hassub_line_apartment::before {
  background-image: url(assets/images/works/works_icon_apartment.png);
}

.p-global_sp_hassub_line_apartment-re::before {
  background-image: url(assets/images/works/works_icon_apartment-re.png);
}

.p-global_sp_hassub_line_facilities::before {
  background-image: url(assets/images/works/works_icon_facilities.png);
}

.p-global_sp_hassub_line_factory::before {
  background-image: url(assets/images/works/works_icon_factory.png);
}

.p-global_sp_hassub_line_office::before {
  background-image: url(assets/images/works/works_icon_office.png);
}

.p-global_sp_hassub_line_house::before {
  background-image: url(assets/images/works/works_icon_house.png);
}

.p-global_sp_hassub._open .p-global_ja::after {
  background-image: url(assets/images/common/triangle_up_white.png);
}

.p-button__contact_global {
  margin: 0 auto 2vh;
  width: 200px;
  border-radius: 10px;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 40px;
  line-height: 4rem;
  font-family: futura-pt, sans-serif;
}

@media only screen and (min-width: 768px) {
  .p-button__contact_global {
    font-size: 1.4rem;
    line-height: 4vh;
  }
}

.p-button__contact_global span {
  border-radius: 10px;
}

/* global button
- - - - - - - - - - - - - - - - - - */
.p-global-btn, .p-close-btn {
  width: 55px;
  height: 55px;
  position: fixed;
  top: 0;
  right: 0;
}

.p-global-btn img, .p-close-btn img {
  width: 100%;
  height: auto;
  display: block;
}

.p-global-btn {
  z-index: 9;
}

@media only screen and (min-width: 768px) {
  .p-global-btn {
    display: none;
  }
}

/**
/* project - header items
============================================================*/
.p-logo {
  margin: 0 auto 1.95312vw;
  width: 3.75vw;
  display: none;
}

@media only screen and (min-width: 768px) {
  .p-logo {
    display: block;
  }
}

@media only screen and (min-width: 1280px) {
  .p-logo {
    width: 48px;
  }
}

.p-logo a {
  display: block;
}

.p-logo img {
  width: 100%;
  height: auto;
  display: block;
}

.p-logo__slider {
  width: 3.125vw;
}

.p-logo__slider a {
  display: block;
}

.p-logo__slider a img {
  width: 100%;
  height: auto;
  display: block;
}

.p-logo_sp {
  margin: 0 auto 2vh;
  width: 10vh;
  height: 12.5vh;
}

.p-logo_sp a img {
  width: auto;
  height: 100%;
  display: block;
}

.p-header__inner {
  display: none;
}

@media only screen and (min-width: 768px) {
  .p-header__inner {
    margin: 0 auto;
    width: 100%;
    max-width: 1050px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
  }
}

.p-header__item {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  position: absolute;
  top: 5px;
  right: 0;
}

.p-header__sns {
  margin-right: 1.5625vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media only screen and (min-width: 960px) {
  .p-header__sns {
    margin-right: 20px;
  }
}

.p-header__sns a {
  margin: 0 5px;
  width: 2.34375vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 1280px) {
  .p-header__sns a {
    width: 30px;
  }
}

.p-header__sns a img {
  width: 100%;
  height: auto;
  display: block;
}

.p-header__tel {
  margin-bottom: 0.78125vw;
  font-size: 20px;
  font-size: 1.5625vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #fff;
  text-align: center;
  position: relative;
}

.p-header__tel::before {
  content: '';
  margin-right: 5px;
  width: 22px;
  height: 22px;
  background-image: url(assets/images/common/icon_tel_white.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: inline-block;
  position: relative;
  top: 2px;
}

@media only screen and (min-width: 960px) {
  .p-header__tel {
    margin-bottom: 10px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.p-header__biztime {
  margin-bottom: 0.78125vw;
  font-size: 11px;
  font-size: 0.85938vw;
  line-height: 1;
  color: #fff;
  text-align: center;
}

@media only screen and (min-width: 960px) {
  .p-header__biztime {
    margin-bottom: 10px;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem;
  }
}

.header__iso--sp {
  margin: 20px auto 0;
  padding: 10px 0;
  width: 220px;
  display: flex;
  gap: 0 15px;
  justify-content: center;
  align-items: center;
  border: 1px solid #fff;
  border-radius: 10px;
}

.header__iso {
  display: none;
}

@media only screen and (min-width: 768px) {
  .header__iso {
    padding: 5px 22px 10px;
    background-color: rgba(229, 229, 229, 0.7);
    border-radius: 0 0 10px 10px;
    width: 160px;
    display: block;
    position: absolute;
    bottom: -189px;
    right: 30px;
  }
  .header__iso img.iso{
    margin: auto;
    width: 79px;
  }
  .header__iso img.text{
    margin: 8px auto 0;
    width: 73px;
  }
  .header__iso p{
    margin-top: 10px;
    font-size: 0.8rem;
    letter-spacing: 0.1em;
    text-align: center;
    line-height: 1.5;
  }
}

.header__iso img {
  width: 100%;
  height: auto;
  display: block;
}

/**
/* project - footer items
============================================================*/
/* totop
------------------------------------------------------------*/
.p-to-top {
  width: 40px;
  height: 40px;
  position: absolute;
  z-index: 10;
  right: 10px;
}

@media only screen and (min-width: 768px) {
  .p-to-top {
    width: 40px;
    height: 40px;
    right: 40px;
  }
}

.p-to-top img {
  width: 100%;
  height: auto;
  display: block;
}

.p-to-top_blog {
  width: 80px;
  height: 80px;
  right: 33px;
}

@media only screen and (min-width: 480px) {
  .p-to-top_blog {
    width: 12.5vw;
    height: 12.5vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-to-top_blog {
    width: 120px;
    height: 120px;
  }
}

.p-footer-sec1 {
  padding-top: 18.95833vw;
  padding-bottom: 18.95833vw;
  padding-left: 20px;
  padding-right: 20px;
  background-image: url(assets/images/common/footer_sec1_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1 {
    padding-top: 10.41667vw;
    padding-bottom: 10.41667vw;
  }
}

@media only screen and (min-width: 768px) {
  .p-footer-sec1 {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

.p-footer-sec1__heading_lv1 {
  margin-bottom: 8.33333vw;
  font-size: 117px;
  font-size: 24.375vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  color: #fff;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__heading_lv1 {
    margin-bottom: 3.90625vw;
    font-size: 110px;
    font-size: 14.32292vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 768px) {
  .p-footer-sec1__heading_lv1 {
    margin-bottom: 3.125vw;
    font-size: 110px;
    font-size: 11.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__heading_lv1 {
    margin-bottom: 30px;
    font-size: 110px;
    font-size: 11rem;
    line-height: 110px;
    line-height: 11rem;
  }
}

.p-footer-sec1__heading_lv1 span {
  display: inline-block;
  position: relative;
}

.p-footer-sec1__heading_lv1 span::before {
  content: '';
  width: 19.375vw;
  height: 9.375vw;
  background-image: url(assets/images/common/footer_sec1_text.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -35px;
  left: -28px;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__heading_lv1 span::before {
    width: 12.10938vw;
    height: 5.85938vw;
  }
}

@media only screen and (min-width: 768px) {
  .p-footer-sec1__heading_lv1 span::before {
    width: 13.33333vw;
    height: 6.5625vw;
    left: -11.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__heading_lv1 span::before {
    width: 128px;
    height: 63px;
    left: -108px;
  }
}

.p-footer-sec1__heading_lv2 {
  margin-bottom: 10.41667vw;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__heading_lv2 {
    margin-bottom: 5.20833vw;
  }
}

@media only screen and (min-width: 768px) {
  .p-footer-sec1__heading_lv2 {
    margin-bottom: 4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__heading_lv2 {
    margin-bottom: 40px;
  }
}

.p-footer-sec1__heading_lv2 span {
  padding-bottom: 10px;
  border-bottom: 3px solid #fff;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1;
  color: #fff;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__heading_lv2 span {
    font-size: 20px;
    font-size: 2.60417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 768px) {
  .p-footer-sec1__heading_lv2 span {
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__heading_lv2 span {
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.p-footer-sec1__heading_lv3 {
  margin-bottom: 2.08333vw;
  font-size: 18px;
  font-size: 3.75vw;
  line-height: 1.55556;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__heading_lv3 {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.57143;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__heading_lv3 {
    margin-bottom: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.p-footer-sec1__text {
  margin-bottom: 8.33333vw;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 28px;
  line-height: 2.8rem;
  color: #fff;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__text {
    margin-bottom: 5.20833vw;
    font-size: 14px;
    font-size: 1.82292vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 768px) {
  .p-footer-sec1__text {
    margin-bottom: 4.16667vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__text {
    margin-bottom: 40px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.p-footer-sec1__card {
  margin: 0 auto 6.25vw;
  padding: 20px;
  width: 70.41667vw;
  background-color: #fff;
  display: block;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__card {
    margin-bottom: 4.16667vw;
    padding: 3.125vw;
    width: 58.33333vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 560px;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__card {
    margin-bottom: 40px;
    padding: 30px;
  }
}

.p-footer-sec1__img {
  width: 100%;
  height: 24.375vw;
  margin-bottom: 10px;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__img {
    margin-bottom: 0;
    width: 45%;
    height: 15.625vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__img {
    height: 150px;
  }
}

.p-footer-sec1 img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.p-footer-sec1__category {
  padding: 0 5px;
  background-color: #00316c;
  font-size: 12px;
  font-size: 2.5vw;
  line-height: 2;
  color: #fff;
  text-align: center;
  position: absolute;
  right: 0;
  bottom: 0;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__category {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2;
    position: static;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__category {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__body {
    width: 50%;
  }
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__meta {
    margin-bottom: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

.p-footer-sec1__date {
  margin-bottom: 2.08333vw;
  font-size: 12px;
  font-size: 2.5vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__date {
    margin-bottom: 0;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__date {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.p-footer-sec1__author {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

.p-footer-sec1__author .author__img {
  width: 10.41667vw;
  height: 10.41667vw;
  display: block;
  align-self: flex-start;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__author .author__img {
    width: 5.20833vw;
    height: 5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__author .author__img {
    width: 50px;
    height: 50px;
  }
}

.p-footer-sec1__author .author__img img {
  width: 100%;
  height: auto;
  border-radius: 50%;
  display: block;
}

.p-footer-sec1__author .author__body {
  padding-left: 15px;
}

.p-footer-sec1__author .author__title {
  margin-bottom: 5px;
  font-size: 14px;
  font-size: 2.91667vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__author .author__title {
    font-size: 11px;
    font-size: 1.14583vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__author .author__title {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem;
  }
}

.p-footer-sec1__author .author__name {
  font-size: 16px;
  font-size: 3.33333vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec1__author .author__name {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec1__author .author__name {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
  }
}

.p-footer-sec2 {
  background-color: #00316c;
  color: #fff;
}

.p-footer-sec2__inner {
  margin: 0 auto;
  padding-top: 13.54167vw;
  padding-bottom: 13.54167vw;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec2__inner {
    padding-top: 5.72917vw;
    padding-bottom: 5.20833vw;
    width: 44.79167vw;
    max-width: 430px;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec2__inner {
    padding-top: 55px;
    padding-bottom: 50px;
  }
}

.p-footer-sec2__balloon {
  margin: 0 auto;
  width: 38.45833vw;
  height: 42.52083vw;
  display: block;
  position: absolute;
  top: -55px;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec2__balloon {
    width: 13.67188vw;
    height: 13.67188vw;
    top: -3.125vw;
    left: auto;
    right: -10.9375vw;
  }
}

@media only screen and (min-width: 1280px) {
  .p-footer-sec2__balloon {
    width: 175px;
    height: 175px;
    top: -40px;
    right: -160px;
  }
}

.p-footer-sec2__heading {
  margin-bottom: 6.25vw;
  font-size: 23px;
  font-size: 4.79167vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec2__heading {
    margin-bottom: 2.60417vw;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec2__heading {
    margin-bottom: 25px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.p-footer-sec2__heading span {
  position: relative;
  display: inline-block;
}

.p-footer-sec2__heading span::before, .p-footer-sec2__heading span::after {
  content: '';
  width: 14px;
  height: 27px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: block;
  position: absolute;
  bottom: -5px;
}

.p-footer-sec2__heading span::before {
  background-image: url(assets/images/common/heading_side_l.png);
  left: -36px;
}

.p-footer-sec2__heading span::after {
  background-image: url(assets/images/common/heading_side_r.png);
  right: -36px;
}

.p-footer-sec2__tel {
  margin-bottom: 4.16667vw;
  font-size: 42px;
  font-size: 8.75vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec2__tel {
    margin-bottom: 2.08333vw;
    font-size: 40px;
    font-size: 4.16667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec2__tel {
    margin-bottom: 20px;
    font-size: 40px;
    font-size: 4rem;
    line-height: 40px;
    line-height: 4rem;
  }
}

.p-footer-sec2__tel a {
  color: #fff;
}

.p-footer-sec2__biztime {
  margin-bottom: 4.16667vw;
  font-size: 15px;
  font-size: 3.125vw;
  line-height: 1.8;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec2__biztime {
    margin-bottom: 2.08333vw;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1.83333;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec2__biztime {
    margin-bottom: 20px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.p-footer-sec2__button {
  margin: 0 auto;
  width: 200px;
  font-size: 21px;
  font-size: 4.375vw;
  line-height: 2.57143;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec2__button {
    width: 22.91667vw;
    max-width: 220px;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 4;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec2__button {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 64px;
    line-height: 6.4rem;
  }
}

.p-footer-sec3 {
  display: none;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec3 {
    margin: 0 auto;
    padding-top: 4.16667vw;
    padding-bottom: 7.29167vw;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
    max-width: 780px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec3 {
    padding-top: 40px;
    padding-bottom: 70px;
  }
}

@media only screen and (min-width: 1280px) {
  .p-footer-sec3 {
    padding-left: 0;
    padding-right: 0;
  }
}

.p-footer-sec3 .p-footer-sec3__col {
  width: 50%;
}

.p-footer-sec3 .p-footer-sec3__col:nth-of-type(1) {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.p-footer-sec3 .p-footer-sec3__col:nth-of-type(2) {
  padding-left: 3.64583vw;
  border-left: 1px solid #000;
}

@media only screen and (min-width: 960px) {
  .p-footer-sec3 .p-footer-sec3__col:nth-of-type(2) {
    padding-left: 35px;
  }
}

.p-footer-sec3 .p-footer__logo {
  width: 20%;
  display: block;
}

.p-footer-sec3 .p-footer__logo:hover {
  opacity: 0.7;
  transition: opacity 0.2s ease-out;
}

.p-footer-sec3 .p-footer__logo img {
  width: 100%;
  height: auto;
  display: block;
}

.p-footer-sec3 .p-footer__info {
  width: 73%;
}

.p-footer-sec3 .p-footer__name {
  margin-bottom: 1.04167vw;
  font-size: 13px;
  font-size: 1.35417vw;
  line-height: 1.23077;
  font-weight: bold;
}

@media only screen and (min-width: 960px) {
  .p-footer-sec3 .p-footer__name {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
  }
}

.p-footer-sec3 .p-footer__address {
  margin-bottom: 1.5625vw;
  padding-right: 2.08333vw;
  font-size: 12px;
  font-size: 1.25vw;
  line-height: 2;
}

@media only screen and (min-width: 960px) {
  .p-footer-sec3 .p-footer__address {
    margin-bottom: 15px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.p-footer-sec3 .p-footer__button_gmap {
  margin-bottom: 1.5625vw;
  width: 15.625vw;
  background-color: #000;
  font-size: 12px;
  font-size: 1.25vw;
  line-height: 3;
  color: #fff;
  text-align: center;
  display: block;
}

@media only screen and (min-width: 960px) {
  .p-footer-sec3 .p-footer__button_gmap {
    margin-bottom: 15px;
    width: 150px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 36px;
    line-height: 3.6rem;
  }
}

.p-footer-sec3 .p-footer__button_sns {
  width: 3.125vw;
  height: 3.125vw;
  display: inline-block;
}

.p-footer-sec3 .p-footer__button_sns:hover {
  opacity: 0.7;
  transition: opacity 0.2s ease-out;
}

@media only screen and (min-width: 960px) {
  .p-footer-sec3 .p-footer__button_sns {
    width: 30px;
    height: 30px;
  }
}

.p-footer-sec3 .p-footer__button_sns img {
  width: 100%;
  height: auto;
  display: block;
}

.p-footer-sec3 .p-footer__global {
  list-style-type: none;
  margin: 0 0 1.04167vw 0;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media only screen and (min-width: 960px) {
  .p-footer-sec3 .p-footer__global {
    margin-bottom: 10px;
  }
}

.p-footer-sec3 .p-footer__global li {
  width: calc(100% / 2);
}

@media only screen and (min-width: 960px) {
  .p-footer-sec3 .p-footer__global li {
    width: calc(100% / 3);
  }
}

.p-footer-sec3 .p-footer__global li a {
  font-size: 12px;
  font-size: 1.25vw;
  line-height: 1;
  color: #000;
  font-weight: bold;
  letter-spacing: 0.05rem;
}

@media only screen and (min-width: 960px) {
  .p-footer-sec3 .p-footer__global li a {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.p-footer-sec3__button {
  width: 25vw;
  max-width: 240px;
  font-size: 12px;
  font-size: 1.25vw;
  line-height: 3.66667;
  color: #000;
  font-weight: bold;
}

@media only screen and (min-width: 960px) {
  .p-footer-sec3__button {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 44px;
    line-height: 4.4rem;
  }
}

.p-footer-sec4 {
  margin-top: 80px;
  padding-top: 16.66667vw;
  padding-left: 20px;
  padding-right: 20px;
  background-color: #FAF6F2;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec4 {
    padding-top: 8.33333vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec4 {
    padding-top: 80px;
  }
}

.p-footer-sec4__num {
  margin: 0 auto;
  width: 35.47917vw;
  font-size: 117px;
  font-size: 24.375vw;
  line-height: 0.76923;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  text-align: center;
  color: #00316c;
  position: absolute;
  top: -9.47917vw;
  left: 50%;
  transform: translateX(-50%);
}

.p-footer-sec4__num::after {
  content: '';
  width: 56px;
  height: 36px;
  background-image: url(assets/images/common/footer_sec4_text.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  bottom: 5px;
  right: -100px;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec4__num {
    width: 18.22917vw;
    max-width: 175px;
    font-size: 120px;
    font-size: 12.5vw;
    line-height: 1;
    top: -6.25vw;
  }
  .p-footer-sec4__num::after {
    width: 9.89583vw;
    height: 6.25vw;
    bottom: 5px;
    right: -9.89583vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec4__num {
    font-size: 120px;
    font-size: 12rem;
    line-height: 120px;
    line-height: 12rem;
    top: -60px;
  }
  .p-footer-sec4__num::after {
    width: 95px;
    height: 60px;
    bottom: 5px;
    right: -140px;
  }
}

.p-footer-sec4__heading {
  margin-bottom: 8.125vw;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.5;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec4__heading {
    margin-bottom: 3.125vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec4__heading {
    margin-bottom: 30px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

.p-footer-sec4__heading span {
  padding-bottom: 5px;
  border-bottom: 3px solid #00316c;
  display: inline-block;
}

.p-footer-sec4__lead {
  margin-bottom: 6.25vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1.53846;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec4__lead {
    margin-bottom: 3.125vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec4__lead {
    margin-bottom: 30px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.p-footer-sec4__imgs {
  margin: 0 auto;
  width: 65vw;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec4__imgs {
    width: 58.33333vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec4__imgs {
    width: 280px;
  }
}

.p-footer-sec4__board {
  width: 100%;
  height: auto;
  display: block;
}

.p-footer-sec4__balloon {
  margin-bottom: 15px;
  width: 100%;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec4__balloon {
    width: 11.66667vw;
    height: 11.66667vw;
    position: absolute;
    top: 0;
    right: -13.75vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec4__balloon {
    width: 112px;
    height: 112px;
    right: -132px;
  }
}

.p-footer-sec5 {
  padding-top: 9.375vw;
  background-color: #0058a4;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec5 {
    padding-top: 5.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec5 {
    padding-top: 55px;
  }
}

.p-footer-sec5__board {
  margin: 0 auto;
  padding-top: 8.125vw;
  width: 81.25vw;
  height: 35.20833vw;
  background-image: url(assets/images/common/footer_sec4_board.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  top: -35.20833vw;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec5__board {
    padding-top: 3.125vw;
    width: 31.25vw;
    height: 13.54167vw;
    top: -13.54167vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec5__board {
    padding-top: 30px;
    width: 300px;
    height: 130px;
    top: -130px;
  }
}

.p-footer-sec5__board p {
  font-size: 16px;
  font-size: 3.33333vw;
  line-height: 2.125;
  color: #fff;
  text-align: center;
  letter-spacing: 0.05rem;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec5__board p {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec5__board p {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.p-footer-sec5__board p em {
  font-size: 52px;
  font-size: 10.83333vw;
  line-height: 0.30769;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 480px) {
  .p-footer-sec5__board p em {
    font-size: 40px;
    font-size: 4.16667vw;
    line-height: 0.3;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer-sec5__board p em {
    font-size: 40px;
    font-size: 4rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.p-footer__link_famlife {
  margin: 0 auto 6.66667vw;
  width: 250px;
  display: block;
}

.p-footer__link_famlife:hover {
  opacity: 0.7;
  transition: opacity .2s ease-out;
  text-decoration: none;
}

.p-footer__link_famlife img {
  width: 100%;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .p-footer__link_famlife {
    margin-bottom: 5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer__link_famlife {
    margin-bottom: 50px;
  }
}

.p-footer__links {
  margin-bottom: 8.33333vw;
}

@media only screen and (min-width: 480px) {
  .p-footer__links {
    margin-bottom: 4.16667vw;
    margin-left: -10px;
    margin-right: -10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer__links {
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 40px;
  }
}

.p-footer__link {
  margin-bottom: 20px;
  color: #fff;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
}

.p-footer__link:hover {
  opacity: 0.7;
  transition: opacity .2s ease-out;
  text-decoration: none;
}

.p-footer__link img {
  width: 13.54167vw;
  height: auto;
  max-width: 50px;
  display: block;
}

.p-footer__link p {
  padding-left: 20px;
  font-size: 17px;
  font-size: 3.54167vw;
  line-height: 1;
  letter-spacing: 0.05em;
  font-weight: bold;
}

.p-footer__link p span {
  padding-bottom: 5px;
  font-size: 15px;
  font-size: 3.125vw;
  line-height: 1;
  font-weight: normal;
  display: block;
}

@media only screen and (min-width: 480px) {
  .p-footer__link {
    margin-bottom: 0;
    padding: 0 10px;
    width: calc( 100% / 3);
    max-width: 300px;
  }
  .p-footer__link p {
    padding-left: 10px;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1.25;
  }
  .p-footer__link p span {
    font-size: 10px;
    font-size: 1.04167vw;
    line-height: 1.3;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer__link p {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
  .p-footer__link p span {
    font-size: 10px;
    font-size: 1rem;
    line-height: 10px;
    line-height: 1rem;
  }
}

.p-footer__button_fixed {
  display: block;
}

@media only screen and (min-width: 480px) {
  .p-footer__button_fixed {
    display: none;
  }
}

.p-footer__button_fixed img {
  width: 100%;
  height: auto;
  display: block;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 9;
}

.p-footer__fufumaru {
  margin: 0 auto;
  width: 25.9375vw;
  height: 24.58333vw;
  display: block;
}

@media only screen and (min-width: 480px) {
  .p-footer__fufumaru {
    width: 11.66667vw;
    height: 11.875vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-footer__fufumaru {
    width: 120px;
    height: 114px;
  }
}

.p-footer__famnet {
  display: none;
}

@media only screen and (min-width: 768px) {
  .p-footer__famnet {
    width: 141px;
    height: 260px;
    display: block;
    position: fixed;
    bottom: 0;
    left: 20px;
    z-index: 9999;
  }
}

.p-footer__famnet img {
  width: 100%;
  height: auto;
  display: block;
}

/* copylight
------------------------------------------------------------*/
.p-copy {
  margin: 0 auto;
  padding: 15px 0 65px;
  width: 100%;
  border-top: 1px solid #fff;
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 2;
  color: #fff;
  text-align: center;
  letter-spacing: 0.05rem;
}

@media only screen and (min-width: 480px) {
  .p-copy {
    padding-bottom: 15px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

/**
/* project - sidebar items
============================================================*/
.p-sidebar img {
  max-width: 100%;
}

.p-sidebar__item {
  margin-bottom: 8.125vw;
  padding-right: 20px;
  padding-left: 20px;
}

@media only screen and (min-width: 480px) {
  .p-sidebar__item {
    margin-bottom: 3.125vw;
    padding-right: 3.125vw;
    padding-left: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-sidebar__item {
    margin-bottom: 25px;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.p-sidebar__heading {
  margin-bottom: 8.125vw;
  font-size: 22px;
  font-size: 4.58333vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-sidebar__heading {
    margin-bottom: 3.125vw;
    font-size: 22px;
    font-size: 2.29167vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-sidebar__heading {
    margin-bottom: 30px;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.p-sidebar__heading span {
  border-bottom: 2px solid #00316c;
}

.p-sidebar__heading_tags {
  margin-bottom: 4.0625vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-sidebar__heading_tags {
    margin-bottom: 1.5625vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-sidebar__heading_tags {
    margin-bottom: 15px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

/**
/* form
============================================================*/
.p-form {
  margin: 0 auto;
  width: 100%;
  max-width: 680px;
  padding-right: 20px;
  padding-left: 20px;
}

@media only screen and (min-width: 1280px) {
  .p-form {
    padding-right: 0;
    padding-left: 0;
  }
}

/* フォームレイアウト 
------------------------------------------------------------*/
.p-form__lead {
  margin-bottom: 30px;
  padding-right: 20px;
  padding-left: 20px;
  font-size: 16px;
  font-size: 3.33333vw;
  line-height: 1.75;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-form__lead {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1.75;
  }
}

@media only screen and (min-width: 960px) {
  .p-form__lead {
    margin-bottom: 50px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 28px;
    line-height: 2.8rem;
    text-align: center;
  }
}

@media only screen and (min-width: 1280px) {
  .p-form__lead {
    padding-right: 0;
    padding-left: 0;
  }
}

.p-form__lead-confirm {
  display: none;
}

.p-form__required {
  padding-right: 3px;
  font-size: 16px;
  font-size: 3.33333vw;
  line-height: 1;
  color: #ffe86c;
}

@media only screen and (min-width: 480px) {
  .p-form__required {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.07143;
  }
}

@media only screen and (min-width: 768px) {
  .p-form__required {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 15px;
    line-height: 1.5rem;
  }
}

.p-form__wrap {
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .p-form__wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

.p-form__item {
  padding: 15px 0;
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .p-form__item_half {
    width: 46.5%;
  }
}

@media only screen and (min-width: 960px) {
  .p-form__item_half {
    padding: 20px 0;
  }
}

.p-form__label {
  margin-bottom: 18px;
  width: 100%;
  font-size: 19px;
  font-size: 3.95833vw;
  line-height: 1;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .p-form__label {
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 768px) {
  .p-form__label {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 15px;
    line-height: 1.5rem;
  }
}

.p-form__label_time {
  display: none;
}

@media only screen and (min-width: 768px) {
  .p-form__label_time {
    display: block;
  }
}

.p-form__label ._red {
  padding-top: 5px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 13px;
  line-height: 1.3rem;
  color: #ff0000;
  display: inline-block;
}

@media only screen and (min-width: 480px) {
  .p-form__label ._red {
    padding-top: 0;
  }
}

.p-form__input {
  margin-bottom: 10px;
}

@media only screen and (min-width: 768px) {
  .p-form__input {
    margin-bottom: 0;
    width: 100%;
  }
}

.p-form__input_date {
  position: relative;
}

.p-form__input_date::after {
  content: "";
  margin-top: -7px;
  width: 10px;
  height: 10px;
  border: 1px solid;
  border-color: transparent transparent #000 #000;
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: rotate(-45deg);
}

.p-form__input_date input:placeholder-shown {
  color: #000;
}

.p-form__input_date input::-webkit-input-placeholder {
  color: #000;
}

.p-form__input_date input:-moz-placeholder {
  color: #000;
  opacity: 1;
}

.p-form__input_date input::-moz-placeholder {
  color: #000;
  opacity: 1;
}

.p-form__input_date input:-ms-input-placeholder {
  color: #000;
}

.p-form__input_time {
  background-color: #fff;
  position: relative;
}

.p-form__input_time::after {
  content: "";
  margin-top: -7px;
  width: 10px;
  height: 10px;
  border: 1px solid;
  border-color: transparent transparent #000 #000;
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: rotate(-45deg);
}

.p-form__input_job {
  position: relative;
}

.p-form__input_job::after {
  content: "";
  margin-top: -7px;
  width: 10px;
  height: 10px;
  border: 1px solid;
  border-color: transparent transparent #000 #000;
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: rotate(-45deg);
}

.p-form__buttons {
  margin: 0 auto;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media only screen and (min-width: 480px) {
  .p-form__buttons {
    margin: 0 auto;
    width: 100%;
    max-width: 620px;
  }
}

.p-form__button-confirm, .p-form__button-back, .p-form__button-submit {
  outline: none;
  border: 3px solid #000;
  font-size: 16px;
  font-size: 3.33333vw;
  line-height: 3.75;
  font-weight: bold;
  cursor: pointer;
}

@media only screen and (min-width: 480px) {
  .p-form__button-confirm, .p-form__button-back, .p-form__button-submit {
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 3.5;
  }
}

@media only screen and (min-width: 768px) {
  .p-form__button-confirm, .p-form__button-back, .p-form__button-submit {
    font-size: 20px;
    font-size: 2rem;
    line-height: 70px;
    line-height: 7rem;
  }
}

.p-form__button-confirm {
  margin: auto;
  width: 100%;
  max-width: 250px;
  background-color: transparent;
  display: block;
}

.p-form__button-back {
  margin: 0 10px;
  width: 37%;
  background-color: transparent;
  border: 3px solid #00316c;
  color: #00316c;
  display: block;
}

.p-form__button-submit {
  margin: 0 10px;
  width: 47%;
  background-color: transparent;
  display: block;
}

.p-form__button-confirm_r, .p-form__button-back_r, .p-form__button-submit_r {
  outline: none;
  border: none;
}

.p-form__button-confirm_r {
  background: #FFDC00;
  width: 43.875vw;
  display: block;
  margin: 0 auto;
  text-align: left;
  font-weight: bold;
  position: relative;
  padding: 0 20px;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 3.3956;
}

.p-form__button-confirm_r:after {
  content: '';
  display: inline-block;
  background: url(assets/images/recruit/recruit_arrow_right.png) no-repeat center center;
  width: 7px;
  height: 11px;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}

@media only screen and (min-width: 480px) {
  .p-form__button-confirm_r {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 3.4;
  }
}

@media only screen and (min-width: 960px) {
  .p-form__button-confirm_r {
    width: 230px;
    font-size: 1.8rem;
  }
}

.p-form__button-back_r {
  width: 48%;
  background-color: transparent;
  border: 3px solid #FFDC00;
  font-weight: bold;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 3.3956;
}

@media only screen and (min-width: 480px) {
  .p-form__button-back_r {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 3.4;
  }
}

@media only screen and (min-width: 960px) {
  .p-form__button-back_r {
    font-size: 1.8rem;
  }
}

.p-form__button-submit_r {
  background: #FFDC00;
  width: 48%;
  display: block;
  margin: 0 auto;
  font-weight: bold;
  padding: 0 20px;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 3.3956;
  position: relative;
  text-align: center;
}

.p-form__button-submit_r:after {
  content: '';
  display: inline-block;
  background: url(assets/images/recruit/recruit_arrow_right.png) no-repeat center center;
  width: 7px;
  height: 11px;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}

@media only screen and (min-width: 480px) {
  .p-form__button-submit_r {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 3.4;
  }
}

@media only screen and (min-width: 960px) {
  .p-form__button-submit_r {
    font-size: 1.8rem;
  }
}

.p-form__check,
.p-form__check .mwform-checkbox-field label,
.p-form__check .error {
  font-weight: bold!important;
}

/* input要素 
------------------------------------------------------------*/
.p-form input:focus, .p-form textarea:focus {
  outline: none;
}

.p-form input:focus::placeholder, .p-form textarea:focus::placeholder {
  color: transparent;
}

.p-form input[type='text'],
.p-form input[type='email'] {
  padding: 0 10px;
  border: 1px solid #cdcdcd;
  color: #000;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 50px;
  line-height: 5rem;
  line-height: 40px;
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .p-form input[type='text'],
  .p-form input[type='email'] {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 50px;
    line-height: 5rem;
  }
}

.p-form textarea {
  padding: 10px;
  width: 100%;
  height: 180px;
  border: 1px solid #cdcdcd;
  resize: vertical;
}

.p-form select {
  margin: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  padding: 10px 15px;
  width: 100%;
  height: 40px;
  background-color: transparent;
  background-size: 30px 7px;
  border: 1px solid #cdcdcd;
  color: #000;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .p-form select {
    height: 50px;
    text-align: left;
    margin: 0;
  }
}

.p-form label {
  margin-bottom: 10px !important;
  padding: 0 15px 0 0;
  display: inline-block;
  font-size: 20px;
  font-size: 4.16667vw;
  line-height: 1;
  text-align: left !important;
}

@media only screen and (min-width: 480px) {
  .p-form label {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 768px) {
  .p-form label {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.p-form input[type=radio] {
  display: none;
  margin-right: 10px;
  margin-bottom: 10px;
  position: relative;
}

.p-form .mwform-radio-field .horizontal-item {
  margin-right: 0;
}

.p-form input[type=radio] + span.mwform-radio-field-text:before,
.p-form input[type=radio]:checked + span.mwform-radio-field-text:before {
  content: '';
  margin-right: 8px;
  background-repeat: no-repeat;
  background-size: contain;
  width: 16px;
  height: 16px;
  display: inline-block;
  position: relative;
  top: 2px;
}

.p-form input[type=radio] + span.mwform-radio-field-text:before {
  background-image: url(assets/images/contact/input_radio_off.png);
}

.p-form input[type=radio]:checked + span.mwform-radio-field-text:before {
  background-image: url(assets/images/contact/input_radio_on.png);
}

.p-form .mwform-checkbox-field .horizontal-item {
  margin-right: 0 !important;
}

.p-form input[type=checkbox] {
  display: none;
}

.p-form input[type=checkbox] + .mwform-checkbox-field-text {
  position: relative;
}

.p-form input[type=checkbox] + .mwform-checkbox-field-text:before,
.p-form input[type=checkbox]:checked + .mwform-checkbox-field-text:before {
  content: '';
  margin-right: 8px;
  width: 16px;
  height: 16px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: inline-block;
  position: relative;
  top: 2px;
}

.p-form input[type=checkbox] + .mwform-checkbox-field-text:before {
  background-image: url(assets/images/contact/input_check_off.svg);
}

.p-form input[type=checkbox]:checked + .mwform-checkbox-field-text:before {
  background-image: url(assets/images/contact/input_check_on.svg);
}

/* placeholder
- - - - - - - - - - - - - - - - - - */
.p-form :placeholder-shown {
  color: 000;
}

.p-form ::-webkit-input-placeholder {
  color: #a0a0a0;
}

.p-form :-moz-placeholder {
  color: #a0a0a0;
  opacity: 1;
}

.p-form ::-moz-placeholder {
  color: #a0a0a0;
  opacity: 1;
}

.p-form :-ms-input-placeholder {
  color: #a0a0a0;
}

/* mw wp form
------------------------------------------------------------*/
.mwform-checkbox-field {
  display: inline-block;
}

.mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0;
}

.mw_wp_form span.error {
  margin: 10px 0 0;
  color: #ff0000;
  display: inline;
}

.mw_wp_form_preview .p-form__input_date::after,
.mw_wp_form_preview .p-form__input_time::after {
  display: none;
}

/*////////////////////////////////////////////////////////////

Object - page

////////////////////////////////////////////////////////////*/
/*
/* page common
============================================================*/
/* color
------------------------------------------------------------*/
.p-color_yellow {
  color: #ffe86c !important;
}

/* text
------------------------------------------------------------*/
.p-text__marker_black {
  background-color: #000 !important;
  color: #fff !important;
}

.p-text__underline_yellow {
  padding-bottom: 3px;
  border-bottom: 3px solid #ffe86c;
}

.p-text_underline_white {
  padding-bottom: 3px;
  background: linear-gradient(transparent 60%, #fff 40%);
}

/* headding 
------------------------------------------------------------*/
.p-page__logo {
  margin: 0 auto;
  width: 14.89583vw !important;
  height: auto;
  display: block;
  max-width: none !important;
}

@media only screen and (min-width: 480px) {
  .p-page__logo {
    display: none;
  }
}

.p-page__heading_lv1 {
  padding-top: 10.83333vw;
  padding-bottom: 9.47917vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
  text-align: center;
  position: relative;
}

.p-page__heading_lv1::before, .p-page__heading_lv1::after {
  content: '';
  background-color: #00316c;
  display: block;
  position: absolute;
  box-sizing: content-box;
  bottom: 0;
}

.p-page__heading_lv1::before {
  width: 100%;
  height: 0.54167vw;
  min-height: 1px;
  left: 0;
}

.p-page__heading_lv1::after {
  border-right: 1.35417vw solid #fff;
  border-left: 1.35417vw solid #fff;
  width: 72%;
  height: 1.08333vw;
  max-height: 660px;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv1 {
    padding-top: 8.33333vw;
    padding-bottom: 5.72917vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
  .p-page__heading_lv1::before {
    height: 0.41667vw;
  }
  .p-page__heading_lv1::after {
    border-width: 1.5625vw;
    height: 0.625vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv1 {
    padding-top: 80px;
    padding-bottom: 55px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
  .p-page__heading_lv1::before {
    height: 4px;
  }
  .p-page__heading_lv1::after {
    border-width: 15px;
    height: 6px;
  }
}

.p-page__heading_lv1 span {
  margin-bottom: 4.0625vw;
  font-size: 49.4px;
  font-size: 10.29167vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  display: block;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv1 span {
    margin-bottom: 2.08333vw;
    font-size: 42px;
    font-size: 4.375vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv1 span {
    margin-bottom: 20px;
    font-size: 42px;
    font-size: 4.2rem;
    line-height: 42px;
    line-height: 4.2rem;
  }
}

.p-page__heading_lv2 {
  margin-bottom: 13.54167vw;
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 1.5;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv2 {
    margin-bottom: 5.20833vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv2 {
    margin-bottom: 50px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

.p-page__heading_lv2 span {
  padding-bottom: 2.08333vw;
  border-bottom: 2px solid #000;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv2 span {
    padding-bottom: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv2 span {
    padding-bottom: 10px;
  }
}

.p-page__heading_lv2_en {
  margin-bottom: 4.0625vw;
  font-size: 84.5px;
  font-size: 17.60417vw;
  line-height: 0.84615;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
  text-transform: uppercase;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv2_en {
    margin-bottom: 2.03125vw;
    font-size: 110px;
    font-size: 11.45833vw;
    line-height: 0.90909;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv2_en {
    margin-bottom: 15px;
    font-size: 110px;
    font-size: 11rem;
    line-height: 100px;
    line-height: 10rem;
  }
}

.p-page__heading_lv2_black {
  color: #00316c;
}

.p-page__heading_lv2_small {
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 1.5;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_lv2_small {
    font-size: 22px;
    font-size: 2.29167vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_lv2_small {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.p-page__heading_lv2_small span {
  display: inline-block;
}

.p-page__heading_sideline {
  margin-bottom: 5.41667vw;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1.625;
  color: #00316c;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_sideline {
    margin-bottom: 3.125vw;
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_sideline {
    margin-bottom: 30px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 18px;
    line-height: 1.8rem;
  }
}

.p-page__heading_sideline span {
  position: relative;
  display: inline-block;
}

.p-page__heading_sideline span::before, .p-page__heading_sideline span::after {
  content: '';
  width: 2.70833vw;
  height: 5.95833vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  bottom: -5px;
}

.p-page__heading_sideline span::before {
  background-image: url(assets/images/common/heading_dotline_l_blue.png);
  left: -20px;
}

.p-page__heading_sideline span::after {
  background-image: url(assets/images/common/heading_dotline_r_blue.png);
  right: -20px;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_sideline span {
    position: relative;
  }
  .p-page__heading_sideline span::before, .p-page__heading_sideline span::after {
    width: 1.5625vw;
    height: 2.8125vw;
  }
  .p-page__heading_sideline span::before {
    left: -2.08333vw;
  }
  .p-page__heading_sideline span::after {
    right: -2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_sideline span::before, .p-page__heading_sideline span::after {
    width: 15px;
    height: 27px;
  }
  .p-page__heading_sideline span::before {
    left: -40px;
  }
  .p-page__heading_sideline span::after {
    right: -40px;
  }
}

.p-page__heading_sideline_double span {
  display: inline-block;
  position: relative;
}

.p-page__heading_sideline_double span::before, .p-page__heading_sideline_double span::after {
  content: '';
  width: 5.41667vw;
  height: 7.29167vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: block;
  position: absolute;
  bottom: 0;
}

.p-page__heading_sideline_double span::before {
  background-image: url(assets/images/common/heading_sideline_2_l.png);
  left: -33px;
}

.p-page__heading_sideline_double span::after {
  background-image: url(assets/images/common/heading_sideline_2_r.png);
  right: -33px;
}

@media only screen and (min-width: 480px) {
  .p-page__heading_sideline_double span::before, .p-page__heading_sideline_double span::after {
    width: 2.39583vw;
    height: 3.33333vw;
  }
  .p-page__heading_sideline_double span::before {
    left: -5.72917vw;
  }
  .p-page__heading_sideline_double span::after {
    right: -5.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-page__heading_sideline_double span::before, .p-page__heading_sideline_double span::after {
    width: 23px;
    height: 32px;
  }
  .p-page__heading_sideline_double span::before {
    left: -55px;
  }
  .p-page__heading_sideline_double span::after {
    right: -55px;
  }
}

.p-page__heading_sideline_double_blue {
  color: #00316c;
}

.p-page__heading_sideline_double_blue span::before {
  background-image: url(assets/images/common/heading_sideline_2_l_blue.png);
}

.p-page__heading_sideline_double_blue span::after {
  background-image: url(assets/images/common/heading_sideline_2_r_blue.png);
}

/* button
------------------------------------------------------------*/
.p-button {
  text-align: center;
  font-weight: bold;
  display: block;
  background-color: #fff;
}

.p-button span {
  display: block;
}

.p-button span::after {
  padding-left: 10px;
  content: '>';
}

.p-button_solid_yellow span {
  background-color: #ffe86c;
  color: #000;
}

.p-button_solid_white span {
  background-color: #fff;
  color: #000;
}

.p-button_border span {
  border: 3px solid #000;
}

.hover_reverse:hover {
  background-color: #00316c;
  color: #fff;
  text-decoration: none;
  transition: background-color 0.3s linear;
}

/* color
------------------------------------------------------------*/
.p-bg_red {
  background-color: #00316c;
  color: #fff;
}

/* background
------------------------------------------------------------*/
.p-bg_dot {
  background-image: url(assets/images/works/works_single_story_bg2.png);
  background-size: 32px;
}

/* 404
------------------------------------------------------------*/
.notfound {
  padding-top: 80px;
  padding-bottom: 80px;
}

/**
/* page - index
============================================================*/
.l-contents__index {
  padding-bottom: 0;
  position: relative;
}

/* index common
------------------------------------------------------------*/
.index__heading {
  margin-bottom: 8.125vw;
}

@media only screen and (min-width: 480px) {
  .index__heading {
    margin-bottom: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .index__heading {
    margin-bottom: 30px;
  }
}

.index__heading span {
  padding-bottom: 5px;
  border-bottom: 3px solid #00316c;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.7;
  color: #00316c;
  text-align: center;
  display: inline-block;
}

@media only screen and (min-width: 480px) {
  .index__heading span {
    padding-bottom: 1.04167vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index__heading span {
    padding-bottom: 10px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

.index__heading_white span {
  color: #fff;
  border-color: #fff;
}

.p-button__index {
  margin: 0 auto;
  width: 200px;
  font-size: 21px;
  font-size: 4.375vw;
  line-height: 3.42857;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #000;
}

@media only screen and (min-width: 480px) {
  .p-button__index {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 3.375;
  }
}

@media only screen and (min-width: 960px) {
  .p-button__index {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 54px;
    line-height: 5.4rem;
  }
}

/* hero
------------------------------------------------------------*/
.p-hero {
  padding-top: 5.41667vw;
  padding-bottom: 0;
  width: 100%;
}

.p-hero__logo {
  margin: 0 auto 5.41667vw;
  width: 14.89583vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .p-hero__logo {
    display: none;
  }
}

.p-hero__header {
  margin-bottom: 5.41667vw;
  background-image: url(assets/images/index/hero_bg02.png);
  background-repeat: no-repeat;
  background-position: center 9.47917vw;
  background-size: 38.45833vw 31.95833vw;
}

@media only screen and (min-width: 480px) {
  .p-hero__header {
    margin-bottom: 5.20833vw;
    background-position: center 4.16667vw;
    background-size: 14.79167vw 12.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__header {
    margin-bottom: 25px;
    padding-bottom: 15px;
    background-position: center 40px;
    background-size: 142px 118px;
  }
}

.p-hero__heading {
  margin-bottom: 8.33333vw;
  font-size: 24px;
  font-size: 5vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-hero__heading {
    margin-bottom: 4.16667vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__heading {
    margin-bottom: 40px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

.p-hero__heading span {
  position: relative;
}

.p-hero__heading span::before, .p-hero__heading span::after {
  content: '';
  width: 5.41667vw;
  height: 7.29167vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: block;
  position: absolute;
  top: -2px;
}

.p-hero__heading span::before {
  background-image: url(assets/images/common/heading_sideline_2_l.png);
  left: -33px;
}

.p-hero__heading span::after {
  background-image: url(assets/images/common/heading_sideline_2_r.png);
  right: -33px;
}

@media only screen and (min-width: 480px) {
  .p-hero__heading span::before, .p-hero__heading span::after {
    width: 2.39583vw;
    height: 3.33333vw;
  }
  .p-hero__heading span::before {
    left: -5.72917vw;
  }
  .p-hero__heading span::after {
    right: -5.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__heading span::before, .p-hero__heading span::after {
    width: 23px;
    height: 32px;
  }
  .p-hero__heading span::before {
    left: -55px;
  }
  .p-hero__heading span::after {
    right: -55px;
  }
}

.p-hero__heading_en {
  margin-bottom: 4.16667vw;
  font-size: 44px;
  font-size: 9.16667vw;
  line-height: 1.32955;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-hero__heading_en {
    margin-bottom: 1.5625vw;
    font-size: 42px;
    font-size: 4.375vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__heading_en {
    margin-bottom: 15px;
    font-size: 42px;
    font-size: 4.2rem;
    line-height: 42px;
    line-height: 4.2rem;
  }
}

.p-hero__lead {
  font-size: 14px;
  font-size: 2.91667vw;
  line-height: 2;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .p-hero__lead {
    font-size: 11px;
    font-size: 1.14583vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__lead {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.p-hero__dots {
  position: relative;
}

.p-hero__dots::after {
  content: '';
  width: 12.5vw;
  height: 12.5vw;
  background-image: url(assets/images/index/hero_bg01.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -4.0625vw;
  right: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .p-hero__dots::after {
    width: 12.5vw;
    height: 12.5vw;
    top: -3.125vw;
    right: 4.6875vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__dots::after {
    width: 120px;
    height: 120px;
    top: -30px;
    right: 45px;
  }
}

.p-hero__dots .slick-slider {
  margin-bottom: 0;
  overflow: visible !important;
}

.p-hero__dots .slick-slide {
  outline: none;
}

.p-hero__dots .slick-my-dots {
  list-style-type: none;
  padding: 5.41667vw 0 0 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media only screen and (min-width: 480px) {
  .p-hero__dots .slick-my-dots {
    padding-top: 2.60417vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__dots .slick-my-dots {
    padding-top: 25px;
  }
}

.p-hero__dots .slick-my-dots li {
  margin: 0 10px;
}

.p-hero__dots .slick-my-dots li button {
  padding: 0;
  width: 10px;
  height: 10px;
  background-color: #ccc;
  border-radius: 50%;
  border: none;
  text-indent: -9999px;
  display: block;
  outline: none;
}

.p-hero__dots .slick-my-dots li.slick-active button {
  border-radius: 50%;
  background-color: #00316c;
}

.p-hero__col {
  padding-bottom: 27.08333vw;
  width: 100%;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .p-hero__col {
    padding-bottom: 0;
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__col {
    padding-left: 80px;
    padding-right: 80px;
  }
}

.p-hero__img {
  margin: 0 auto;
  width: 91%;
  height: 83.33333vw;
  border-radius: 15px;
  display: block;
  object-fit: cover;
}

@media only screen and (min-width: 480px) {
  .p-hero__img {
    width: 100%;
    height: 39.0625vw;
  }
}

.p-hero__body {
  position: absolute;
  bottom: 0;
  left: 0;
}

@media only screen and (min-width: 480px) {
  .p-hero__body {
    bottom: 1.04167vw;
    left: 4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__body {
    bottom: 40px;
    left: 40px;
  }
}

.p-hero__num {
  margin-bottom: 4.875vw;
  padding-left: 8.33333vw;
  font-size: 117px;
  font-size: 24.375vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  position: relative;
}

.p-hero__num::before {
  content: '';
  width: 16.52083vw;
  height: 6.77083vw;
  background-image: url(assets/images/index/hero_bg03.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -5.20833vw;
  left: 30px;
}

@media only screen and (min-width: 480px) {
  .p-hero__num {
    margin-bottom: 1.04167vw;
    padding-left: 0;
    font-size: 168px;
    font-size: 17.5vw;
    line-height: 1;
  }
  .p-hero__num::before {
    width: 11.04167vw;
    height: 4.47917vw;
    top: -2.60417vw;
    left: 0;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__num {
    margin-bottom: 10px;
    font-size: 168px;
    font-size: 16.8rem;
    line-height: 168px;
    line-height: 16.8rem;
  }
  .p-hero__num::before {
    width: 106px;
    height: 43px;
    top: -25px;
  }
}

.p-hero__heading_lv2 {
  margin-bottom: 5.20833vw;
  font-size: 21px;
  font-size: 4.375vw;
  line-height: 1;
  color: #fff;
}

@media only screen and (min-width: 480px) {
  .p-hero__heading_lv2 {
    margin-bottom: 1.875vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__heading_lv2 {
    margin-bottom: 18px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.p-hero__heading_lv2 span {
  padding: 11px 10px;
}

.p-hero__text {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2.91667;
}

@media only screen and (min-width: 480px) {
  .p-hero__text {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2.91667;
  }
}

@media only screen and (min-width: 960px) {
  .p-hero__text {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 35px;
    line-height: 3.5rem;
  }
}

.p-hero__text span {
  padding: 8px 10px;
}

/* index NEWS
------------------------------------------------------------*/
.index-sec1 {
  margin-bottom: 10.83333vw;
}

@media only screen and (min-width: 480px) {
  .index-sec1 {
    margin-bottom: 4.6875vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec1 {
    margin-bottom: 45px;
  }
}

.index-sec1__inner {
  margin: 0 auto;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  max-width: 700px;
}

@media only screen and (min-width: 480px) {
  .index-sec1__inner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
  }
}

.index-sec1__heading {
  margin-bottom: 6.25vw;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec1__heading {
    margin-bottom: 0;
    padding-right: 7.8125vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
    text-align: left;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec1__heading {
    padding-right: 75px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

.index-sec1__list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.index-sec1__item {
  margin-bottom: 3.125vw;
}

.index-sec1__item:last-of-type {
  margin-bottom: 0;
}

@media only screen and (min-width: 480px) {
  .index-sec1__item {
    margin-bottom: 3.125vw;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec1__item {
    margin-bottom: 20px;
  }
}

.index-sec1__date {
  margin-bottom: 2.08333vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
  display: block;
}

@media only screen and (min-width: 480px) {
  .index-sec1__date {
    margin-bottom: 0;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec1__date {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.index-sec1__link {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
  color: #000;
  text-align: left;
  text-decoration: underline;
  font-weight: bold;
  display: block;
}

.index-sec1__link:hover {
  text-decoration: none;
}

@media only screen and (min-width: 480px) {
  .index-sec1__link {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec1__link {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

/* index バナー
------------------------------------------------------------*/
.index-sec2 {
  margin-bottom: 8.125vw;
}

@media only screen and (min-width: 480px) {
  .index-sec2 {
    margin-bottom: 8.33333vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec2 {
    margin-bottom: 80px;
  }
}

.index-sec2__inner {
  margin: 0 auto;
  padding-left: 10.41667vw;
  padding-right: 10.41667vw;
  width: 100%;
  max-width: 780px;
}

@media only screen and (min-width: 480px) {
  .index-sec2__inner {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media only screen and (min-width: 1280px) {
  .index-sec2__inner {
    padding-right: 0;
    padding-left: 0;
  }
}

@media only screen and (min-width: 480px) {
  .index-sec2__row {
    margin-right: -10px;
    margin-left: -10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}

.index-sec2__link {
  margin-bottom: 5.41667vw;
  display: block;
}

@media only screen and (min-width: 480px) {
  .index-sec2__link {
    margin-bottom: 0;
    padding: 10px;
    width: 31%;
  }
}

.index-sec2__link img {
  width: 100%;
  height: auto;
  display: block;
}

/* index 会社概要
------------------------------------------------------------*/
.index-sec3 {
  padding-top: 8.125vw;
  padding-bottom: 45.83333vw;
  padding-right: 20px;
  padding-left: 20px;
  background-image: url(assets/images/index/index_sec3_bg01.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 56.25vw 56.45833vw;
  position: relative;
}

.index-sec3::before, .index-sec3::after {
  content: '';
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
}

.index-sec3::before {
  width: 54.16667vw;
  height: 38.1875vw;
  background-image: url(assets/images/index/index_sec3_bg02.png);
  left: 5.41667vw;
  bottom: 15.20833vw;
}

.index-sec3::after {
  width: 17.60417vw;
  height: 32.77083vw;
  background-image: url(assets/images/index/index_sec3_bg03.png);
  right: 13.54167vw;
  bottom: 16.25vw;
}

@media only screen and (min-width: 480px) {
  .index-sec3 {
    padding-top: 3.125vw;
    padding-bottom: 11.45833vw;
    background-size: 22.91667vw 23.02083vw;
  }
  .index-sec3::before {
    width: 29.375vw;
    height: 20.625vw;
    left: 0;
    bottom: 1.5625vw;
  }
  .index-sec3::after {
    width: 10vw;
    height: 18.4375vw;
    right: 4.89583vw;
    bottom: 25.52083vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec3 {
    padding-top: 30px;
    padding-bottom: 110px;
    background-size: 220px 221px;
  }
  .index-sec3::before {
    width: 282px;
    height: 198px;
    background-image: url(assets/images/index/index_sec3_bg02.png);
    left: 0;
    bottom: 15px;
  }
  .index-sec3::after {
    width: 96px;
    height: 177px;
    background-image: url(assets/images/index/index_sec3_bg03.png);
    right: 47px;
    bottom: 245px;
  }
}

@media only screen and (min-width: 480px) {
  .index-sec3 {
    padding-right: 0;
    padding-left: 0;
  }
}

.index-sec3__heading_lv1 {
  margin-bottom: 5.41667vw;
  font-size: 65px;
  font-size: 13.54167vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec3__heading_lv1 {
    margin-bottom: 3.125vw;
    font-size: 80px;
    font-size: 8.33333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec3__heading_lv1 {
    margin-bottom: 30px;
    font-size: 80px;
    font-size: 8rem;
    line-height: 80px;
    line-height: 8rem;
  }
}

.index-sec3__heading_lv2 {
  margin-bottom: 2.08333vw;
  font-size: 33.8px;
  font-size: 7.04167vw;
  line-height: 1.84615;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec3__heading_lv2 {
    margin-bottom: 3.125vw;
    font-size: 32px;
    font-size: 3.33333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec3__heading_lv2 {
    margin-bottom: 30px;
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 32px;
    line-height: 3.2rem;
  }
}

.index-sec3__heading_lv3 {
  margin-bottom: 6.77083vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.85714;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec3__heading_lv3 {
    margin-bottom: 3.64583vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec3__heading_lv3 {
    margin-bottom: 35px;
    font-size: 16mpx;
    font-size: 1.6mrem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.index-sec3__text {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .index-sec3__text {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
    text-align: center;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec3__text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.index-sec3__text a {
  text-decoration: underline;
}

.index-sec3__text a:hover {
  font-weight: bold;
}

/* index おしながき
------------------------------------------------------------*/
.index-sec4 {
  padding-top: 18.95833vw;
  padding-bottom: 10.83333vw;
  background-color: #faf6f2;
  text-align: center;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .index-sec4 {
    padding-top: 10.41667vw;
    padding-bottom: 6.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec4 {
    padding-top: 100px;
    padding-bottom: 60px;
  }
}

.index-sec4__num {
  font-size: 117px;
  font-size: 24.375vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
  position: absolute;
  top: -9.375vw;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .index-sec4__num {
    font-size: 140px;
    font-size: 14.58333vw;
    line-height: 1;
    top: -7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec4__num {
    font-size: 140px;
    font-size: 14rem;
    line-height: 140px;
    line-height: 14rem;
    top: -70px;
  }
}

.index-sec4__num img {
  width: 15.16667vw;
  height: auto;
  display: block;
  position: absolute;
  top: 0;
  right: -15.16667vw;
}

@media only screen and (min-width: 480px) {
  .index-sec4__num img {
    width: 12.08333vw;
    top: 4.6875vw;
    right: -13.54167vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec4__num img {
    width: 116px;
    top: 45px;
    right: -130px;
  }
}

.index-sec4__lead {
  margin-bottom: 8.125vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec4__lead {
    margin-bottom: 3.125vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec4__lead {
    margin-bottom: 30px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.index-sec4__balloon {
  margin: 0 auto 9.75vw;
  width: 81.25vw;
  background-color: #00316c;
  border-radius: 10px;
  font-size: 31.2px;
  font-size: 6.5vw;
  line-height: 2.83333;
  color: #fff;
  text-align: center;
  font-weight: bold;
  position: relative;
}

.index-sec4__balloon::after {
  content: '';
  width: 4.79167vw;
  height: 2.5vw;
  background-image: url(assets/images/index/index_sec4_tail.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  display: block;
  position: absolute;
  bottom: -2.5vw;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .index-sec4__balloon {
    margin-bottom: 7.29167vw;
    width: 46.25vw;
    max-width: 444px;
    font-size: 38px;
    font-size: 3.95833vw;
    line-height: 2.63158;
  }
  .index-sec4__balloon::after {
    width: 3.54167vw;
    height: 1.875vw;
    bottom: -1.875vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec4__balloon {
    margin-bottom: 70px;
    font-size: 38px;
    font-size: 3.8rem;
    line-height: 100px;
    line-height: 10rem;
  }
}

.index-sec4__imgs {
  list-style-type: none;
  margin-bottom: 10.83333vw;
  padding: 0;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .index-sec4__imgs {
    margin-bottom: 6.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec4__imgs {
    margin-bottom: 60px;
  }
}

.index-sec4__imgs li {
  margin: 0;
}

.index-sec4__imgs li img {
  width: 100%;
  height: auto;
  display: block;
  transform: scale(0.8);
  transition: .5s ease-out;
}

.index-sec4__imgs .slick-current img {
  transform: scale(1.1);
}

.index-sec4__labels {
  list-style-type: none;
  margin: 0 auto;
  padding: 0 20px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media only screen and (min-width: 480px) {
  .index-sec4__labels {
    display: block;
  }
}

.index-sec4__labels li {
  margin-bottom: 10px;
  width: 48%;
  background-color: #fff;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2.85714;
  font-weight: bold;
  display: inline-block;
}

@media only screen and (min-width: 480px) {
  .index-sec4__labels li {
    margin: 0 5px 10px;
    width: 16.66667vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 2.5;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec4__labels li {
    width: 160px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 40px;
    line-height: 4rem;
  }
}

.index-sec4__labels li a {
  display: block;
}

.index-sec4__labels li a:hover {
  color: #fff;
  background-color: #00316c !important;
  transition: background-color .2s linear;
  text-decoration: none;
}

.index-sec4 ._active {
  background-color: #00316c;
  color: #fff;
  transition: background-color .3s ease-out;
}

.index-sec4 ._active a {
  color: #fff !important;
}

/* index 新潟のなんでも相談できる、田中組
------------------------------------------------------------*/
.index-sec5 {
  padding-top: 10.83333vw;
  text-align: center;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .index-sec5 {
    padding-top: 7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec5 {
    padding-top: 70px;
  }
}

.index-sec5__heading {
  margin-bottom: 8.33333vw;
  font-size: 24px;
  font-size: 5vw;
  line-height: 1.625;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec5__heading {
    margin-bottom: 4.16667vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1.68;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec5__heading {
    margin-bottom: 40px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 42px;
    line-height: 4.2rem;
  }
}

.index-sec5__lead {
  margin-bottom: 8.125vw;
  padding-right: 20px;
  padding-left: 20px;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .index-sec5__lead {
    margin-bottom: 3.125vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
    text-align: center;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec5__lead {
    margin-bottom: 30px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

@media only screen and (min-width: 1280px) {
  .index-sec5__lead {
    padding-right: 0;
    padding-left: 0;
  }
}

.index-sec5__row {
  margin: 0 auto;
  padding-right: 30px;
  padding-left: 30px;
  width: 100%;
  max-width: 630px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
}

@media only screen and (min-width: 960px) {
  .index-sec5__row {
    padding-right: 0;
    padding-left: 0;
  }
}

.index-sec5__col {
  margin-bottom: 4.16667vw;
  padding-top: 9.375vw;
  width: 36.5625vw;
  height: 41.4375vw;
  display: block;
  background-image: url(assets/images/index/index_sec5_balloon_off.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  transition: background-image .3s ease-out;
}

.index-sec5__col:hover {
  background-image: url(assets/images/index/index_sec5_balloon_on.png);
  text-decoration: none;
}

.index-sec5__col:hover .index-sec5__text {
  color: #fff;
}

@media only screen and (min-width: 480px) {
  .index-sec5__col {
    margin-bottom: 0;
    padding-top: 3.64583vw;
    width: 14.27083vw;
    height: 16.14583vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec5__col {
    padding-top: 35px;
    width: 137px;
    height: 155px;
  }
  .index-sec5__col:nth-of-type(3) {
    margin-top: 20px;
  }
}

.index-sec5__text {
  margin-bottom: 5px;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.69231;
  color: #000;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .index-sec5__text {
    margin-bottom: 3px;
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1.69231;
    text-align: center;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec5__text {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.index-sec5_link {
  line-height: 3.52083vw;
}

@media only screen and (min-width: 480px) {
  .index-sec5_link {
    line-height: 1.875vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec5_link {
    line-height: 1.8rem;
  }
}

.index-sec5__label {
  padding: 0 10px;
  background-color: #fff;
  border-radius: 3.52083vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1.08974;
  color: #00316c;
  font-weight: bold;
  letter-spacing: 0;
  display: inline-block;
}

@media only screen and (min-width: 480px) {
  .index-sec5__label {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1.33333;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec5__label {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.index-sec5__label_link {
  background-color: transparent;
  line-height: 3.25vw;
}

@media only screen and (min-width: 480px) {
  .index-sec5__label_link {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1.33333;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec5__label_link {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.index-sec5__img {
  margin: 0 auto;
  width: 100%;
  max-width: 760px;
  height: auto;
  display: block;
}

.index-sec5__link {
  padding: 15px 0;
  width: 100%;
  background-color: #ffe86c;
  display: block;
}

@media only screen and (min-width: 480px) {
  .index-sec5__link {
    padding-top: 3.125vw;
    padding-bottom: 0;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec5__link {
    padding-top: 30px;
  }
}

@media only screen and (min-width: 768px) {
  .index-sec5__link {
    width: 14.27083vw;
    height: 14.27083vw;
    background-color: transparent;
    background-image: url(assets/images/index/index_sec5_link.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    top: -155px;
    right: -80px;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec5__link {
    width: 137px;
    height: 137px;
  }
}

.index-sec5__link img {
  width: 100%;
  height: auto;
  display: block;
}

/* index 
------------------------------------------------------------*/
.index-sec6 {
  padding-top: 10.83333vw;
  padding-bottom: 10.83333vw;
  padding-right: 20px;
  padding-left: 20px;
  background-color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec6 {
    padding-top: 6.25vw;
    padding-bottom: 6.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec6 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.index-sec6__num {
  margin-bottom: 8.125vw;
  font-size: 117px;
  font-size: 24.375vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #fff;
  position: relative;
  display: inline-block;
}

@media only screen and (min-width: 480px) {
  .index-sec6__num {
    margin-bottom: 4.16667vw;
    font-size: 140px;
    font-size: 14.58333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec6__num {
    margin-bottom: 40px;
    font-size: 140px;
    font-size: 14rem;
    line-height: 140px;
    line-height: 14rem;
  }
}

.index-sec6__num img {
  width: 19.79167vw;
  height: auto;
  display: block;
  position: absolute;
  top: 0;
  right: -20.83333vw;
}

@media only screen and (min-width: 480px) {
  .index-sec6__num img {
    width: 15.72917vw;
    right: -17.70833vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec6__num img {
    width: 151px;
    right: -170px;
  }
}

.index-sec6__heading_lv1 {
  margin-bottom: 8.125vw;
  padding-bottom: 5px;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.7;
  color: #fff;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec6__heading_lv1 {
    margin-bottom: 3.125vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec6__heading_lv1 {
    margin-bottom: 30px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

.index-sec6__heading_lv1 span {
  padding-bottom: 2.08333vw;
  border-bottom: 3px solid #fff;
}

@media only screen and (min-width: 480px) {
  .index-sec6__heading_lv1 span {
    padding-bottom: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec6__heading_lv1 span {
    padding-bottom: 10px;
  }
}

.index-sec6__heading_lv2 {
  margin: 3.125vw 0;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.49451;
  color: #fff;
}

@media only screen and (min-width: 480px) {
  .index-sec6__heading_lv2 {
    margin: 1.5625vw 0;
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 1.53333;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec6__heading_lv2 {
    margin: 15px 0;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 23px;
    line-height: 2.3rem;
  }
}

.index-sec6__lead {
  margin-bottom: 10.83333vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2;
  color: #fff;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec6__lead {
    margin-bottom: 4.16667vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec6__lead {
    margin-bottom: 40px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.index-sec6__inner {
  margin: 0 auto 5.41667vw;
  width: 100%;
  max-width: 780px;
}

@media only screen and (min-width: 480px) {
  .index-sec6__inner {
    margin-bottom: 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec6__inner {
    margin-bottom: 20px;
  }
}

.index-sec6__row {
  margin-right: -10px;
  margin-left: -10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.index-sec6__col {
  padding: 10px;
  width: 50%;
  text-align: left;
}

@media only screen and (min-width: 480px) {
  .index-sec6__col {
    width: calc(100% / 3);
  }
}

.index-sec6__figure {
  padding-top: 100%;
  width: 100%;
  height: auto;
  display: block;
  position: relative;
  overflow: hidden;
}

.index-sec6__figure img {
  width: 100%;
  height: auto;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.index-sec6__icon {
  width: 12.1875vw;
  height: 12.1875vw;
  background-color: #ffe86c;
  position: absolute;
  display: block;
  bottom: 0;
  left: 0;
}

.index-sec6__icon::before {
  content: '';
  width: 12.1875vw;
  height: 12.1875vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
}

@media only screen and (min-width: 480px) {
  .index-sec6__icon {
    width: 5.72917vw;
    height: 5.72917vw;
  }
  .index-sec6__icon::before {
    width: 5.72917vw;
    height: 5.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec6__icon {
    width: 55px;
    height: 55px;
  }
  .index-sec6__icon::before {
    width: 55px;
    height: 55px;
  }
}

.index-sec6__icon_apartment::before {
  background-image: url(assets/images/works/works_icon_apartment.png);
}

.index-sec6__icon_apartment-re::before {
  background-image: url(assets/images/works/works_icon_apartment-re.png);
}

.index-sec6__icon_public::before {
  background-image: url(assets/images/works/works_icon_public.png);
}

.index-sec6__icon_factory::before {
  background-image: url(assets/images/works/works_icon_factory.png);
}

.index-sec6__icon_facilities::before {
  background-image: url(assets/images/works/works_icon_facilities.png);
}

.index-sec6__icon_hospital::before {
  background-image: url(assets/images/works/works_icon_hospital.png);
}

.index-sec6__icon_office::before {
  background-image: url(assets/images/works/works_icon_office.png);
}

.index-sec6__icon_house::before {
  background-image: url(assets/images/works/works_icon_house.png);
}

.index-sec6__text {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1.5;
  color: #fff;
}

@media only screen and (min-width: 480px) {
  .index-sec6__text {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec6__text {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 18px;
    line-height: 1.8rem;
  }
}

/* index 
------------------------------------------------------------*/
.index-sec7 {
  padding-top: 10.83333vw;
  padding-bottom: 17.60417vw;
  padding-right: 20px;
  padding-left: 20px;
  background-color: #faf6f2;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec7 {
    padding-top: 6.25vw;
    padding-bottom: 9.89583vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec7 {
    padding-top: 60px;
    padding-bottom: 95px;
  }
}

.index-sec7__num {
  margin-bottom: 10.83333vw;
  font-size: 117px;
  font-size: 24.375vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  display: inline-block;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .index-sec7__num {
    margin-bottom: 5.20833vw;
    font-size: 140px;
    font-size: 14.58333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec7__num {
    margin-bottom: 50px;
    font-size: 140px;
    font-size: 14rem;
    line-height: 140px;
    line-height: 14rem;
  }
}

.index-sec7__num img {
  width: 30.875vw;
  height: auto;
  display: block;
  position: absolute;
  top: 8.125vw;
  right: -32.22917vw;
}

@media only screen and (min-width: 480px) {
  .index-sec7__num img {
    width: 21.14583vw;
    top: 3.125vw;
    right: -22.1875vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec7__num img {
    width: 203px;
    top: 30px;
    right: -213px;
  }
}

.index-sec7__heading {
  margin: -4.33333vw auto 9.47917vw;
  background-color: #faf6f2;
}

@media only screen and (min-width: 480px) {
  .index-sec7__heading {
    margin-top: -2.60417vw;
    margin-bottom: 4.16667vw;
    width: 37.5vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec7__heading {
    margin-top: -15px;
    margin-bottom: 40px;
    width: 360px;
  }
}

.index-sec7__heading_bgw {
  background-color: #fff;
}

.index-sec7__inner {
  margin: 0 auto;
  padding-bottom: 13.54167vw;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  border: 2px solid #00316c;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .index-sec7__inner {
    padding-bottom: 9.375vw;
    width: 62.5vw;
  }
}

@media only screen and (min-width: 768px) {
  .index-sec7__inner {
    width: 70vw;
    max-width: 878px;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec7__inner {
    padding-bottom: 90px;
  }
}

.index-sec7__img {
  display: block;
}

.index-sec7__img01 {
  margin: 0 auto 6.77083vw;
  width: 32.5vw;
}

@media only screen and (min-width: 480px) {
  .index-sec7__img01 {
    margin-bottom: 2.60417vw;
    width: 15.83333vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec7__img01 {
    margin-bottom: 25px;
    width: 152px;
  }
}

.index-sec7__img02 {
  width: 24.375vw;
  position: absolute;
  top: 20.3125vw;
  right: 4.0625vw;
}

@media only screen and (min-width: 480px) {
  .index-sec7__img02 {
    width: 13.64583vw;
    height: 9.0625vw;
    top: -4.16667vw;
    right: -2.60417vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec7__img02 {
    width: 131px;
    height: 87px;
    top: -40px;
    right: -25px;
  }
}

.index-sec7__img03 {
  display: none;
}

@media only screen and (min-width: 480px) {
  .index-sec7__img03 {
    width: 12.5vw;
    display: block;
    position: absolute;
    top: 15.625vw;
    right: -3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec7__img03 {
    top: 150px;
    right: -30px;
  }
}

@media only screen and (min-width: 1280px) {
  .index-sec7__img03 {
    width: 160px;
  }
}

.index-sec7__img04 {
  display: none;
}

@media only screen and (min-width: 480px) {
  .index-sec7__img04 {
    width: 11.25vw;
    display: block;
    position: absolute;
    bottom: -4.16667vw;
    left: -2.29167vw;
  }
}

@media only screen and (min-width: 768px) {
  .index-sec7__img04 {
    bottom: -24px;
    left: -22px;
  }
}

@media only screen and (min-width: 1280px) {
  .index-sec7__img04 {
    width: 144px;
  }
}

.index-sec7__text {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .index-sec7__text {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
    text-align: center;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec7__text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.index-sec7__button {
  position: absolute;
  bottom: -8.125vw;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .index-sec7__button {
    bottom: -4.0625vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec7__button {
    bottom: -30px;
  }
}

/* index 田中組のスタッフ
------------------------------------------------------------*/
.index-sec8 {
  padding-top: 10.83333vw;
  padding-bottom: 40.625vw;
  padding-right: 20px;
  padding-left: 20px;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec8 {
    padding-top: 7.29167vw;
    padding-bottom: 20.83333vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec8 {
    padding-top: 70px;
    padding-bottom: 200px;
  }
}

.index-sec8__num {
  margin-bottom: 10.83333vw;
  font-size: 117px;
  font-size: 24.375vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  display: inline-block;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .index-sec8__num {
    margin-bottom: 5.20833vw;
    font-size: 140px;
    font-size: 14.58333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec8__num {
    margin-bottom: 50px;
    font-size: 140px;
    font-size: 14rem;
    line-height: 140px;
    line-height: 14rem;
  }
}

.index-sec8__num img {
  width: 25.45833vw;
  height: 11.10417vw;
  position: absolute;
  top: 2.08333vw;
  right: -28.16667vw;
}

@media only screen and (min-width: 480px) {
  .index-sec8__num img {
    width: 16.25vw;
    height: 6.97917vw;
    right: -17.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec8__num img {
    width: 156px;
    height: 67px;
    top: 20px;
    right: -166px;
  }
}

.index-sec8__lead {
  margin-bottom: 10.83333vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec8__lead {
    margin-bottom: 4.16667vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec8__lead {
    margin-bottom: 40px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.wp-staff__slide {
  list-style-type: none;
  padding-left: 0;
  width: 100%;
}

.wp-staff__inner {
  margin: 0 auto 13.54167vw;
  width: 100%;
  max-width: 800px;
}

@media only screen and (min-width: 480px) {
  .wp-staff__inner {
    margin-bottom: 5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-staff__inner {
    margin-bottom: 50px;
  }
}

.wp-staff__row {
  margin-right: -15px;
  margin-left: -15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.wp-staff__col {
  padding: 15px;
  width: 50%;
  color: #000;
}

@media only screen and (min-width: 480px) {
  .wp-staff__col {
    width: calc( 100% / 3);
  }
}

@media only screen and (min-width: 960px) {
  .wp-staff__col {
    width: 20%;
  }
}

.wp-staff__img {
  margin: 0 auto 5.41667vw;
  width: 120px;
  height: 120px;
}

@media only screen and (min-width: 480px) {
  .wp-staff__img {
    margin: 0 auto 2.60417vw;
    width: 13.54167vw;
    height: 13.54167vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-staff__img {
    margin-bottom: 15px;
    width: 130px;
    height: 130px;
  }
}

.wp-staff__img img {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-staff__img img {
    width: 13.54167vw;
    height: 13.54167vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-staff__img img {
    width: 130px;
    height: 130px;
  }
}

.wp-staff__title {
  margin-bottom: 2.70833vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0;
}

@media only screen and (min-width: 480px) {
  .wp-staff__title {
    margin-bottom: 1.5625vw;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-staff__title {
    margin-bottom: 10px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.wp-staff__name {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .wp-staff__name {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-staff__name {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.js-slick-author .wp-staff__img {
  transform: scale(0.9);
  transition: .5s ease-out;
}

.js-slick-author .slick-current .wp-staff__img {
  transform: scale(1.1);
}

/* index ブログ
------------------------------------------------------------*/
.index-sec9 {
  padding-top: 75vw;
  padding-bottom: 10.83333vw;
  text-align: center;
  background-color: #faf6f2;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .index-sec9 {
    padding-top: 29.16667vw;
    padding-bottom: 4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec9 {
    padding-top: 280px;
    padding-bottom: 40px;
  }
}

.index-sec9__header {
  margin: 0 auto;
  padding: 0 20px;
  position: absolute;
  top: -37.5vw;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .index-sec9__header {
    top: -21.875vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec9__header {
    top: -210px;
  }
}

.index-sec9__num {
  margin-bottom: 5.41667vw;
  font-size: 117px;
  font-size: 24.375vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  display: inline-block;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .index-sec9__num {
    margin-bottom: 5.20833vw;
    font-size: 140px;
    font-size: 14.58333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec9__num {
    margin-bottom: 50px;
    font-size: 140px;
    font-size: 14rem;
    line-height: 140px;
    line-height: 14rem;
  }
}

.index-sec9__num span {
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .index-sec9__num span {
    font-size: 22px;
    font-size: 2.29167vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec9__num span {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.index-sec9__num img {
  width: 16.79167vw;
  height: 10.5625vw;
  position: absolute;
  top: 39.58333vw;
  right: -13.27083vw;
}

@media only screen and (min-width: 480px) {
  .index-sec9__num img {
    width: 11.25vw;
    height: 6.97917vw;
    top: 10.41667vw;
    right: -17.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec9__num img {
    width: 156px;
    height: 67px;
    top: 180px;
    right: -166px;
  }
}

.index-sec9__lead {
  margin-bottom: 10.83333vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .index-sec9__lead {
    margin-bottom: 4.16667vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec9__lead {
    margin-bottom: 40px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.index-sec9__inner {
  margin: 0 auto 4.16667vw;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  max-width: 780px;
}

@media only screen and (min-width: 480px) {
  .index-sec9__inner {
    margin: 0 auto 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .index-sec9__inner {
    margin-bottom: 20px;
  }
}

@media only screen and (min-width: 1280px) {
  .index-sec9__inner {
    padding-right: 0;
    padding-left: 0;
  }
}

/**
/* page - about
============================================================*/
.l-contents__about {
  padding-bottom: 0;
}

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

.l-contents__about .br-sp {
  display: block;
}

@media only screen and (min-width: 960px) {
  .l-contents__about .br-sp {
    display: none;
  }
}

.l-contents__about .p-button:hover {
  text-decoration: none;
}

.l-contents__about .p-button:hover span {
  opacity: .6;
}

.l-contents__about .p-button span {
  transition: .2s;
}

/* about common
------------------------------------------------------------*/
.about-pagelink {
  display: none;
}

@media only screen and (min-width: 960px) {
  .about-pagelink {
    display: block;
    max-width: 720px;
    width: 100%;
    margin: 55px auto 0;
    list-style-type: none;
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 960px) {
  .about-pagelink li {
    width: 16.6%;
    position: relative;
    padding-bottom: 10px;
  }
  .about-pagelink li:after {
    content: '';
    width: 8px;
    height: 4px;
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -4px;
    background: url(assets/images/about/arrow_down.png) no-repeat center bottom;
    background-size: contain;
  }
  .about-pagelink li a {
    color: #000;
    display: block;
    text-align: center;
    border-left: 1px solid #00316c;
    font-size: 1.3rem;
    font-weight: bold;
  }
  .about-pagelink li a span {
    padding-bottom: .2em;
    background: -webkit-linear-gradient(left, #FADF00 50%, transparent 50%) 100% bottom/200% 50% no-repeat;
    background: linear-gradient(to right, #FADF00 50%, transparent 50%) 100% bottom/200% 50% no-repeat;
    -webkit-transition: background-position .3s ease-out;
    transition: background-position .3s ease-out;
  }
  .about-pagelink li a:hover {
    text-decoration: none;
  }
  .about-pagelink li a:hover span {
    background-position: 0% bottom;
  }
  .about-pagelink li:last-child a {
    border-right: 1px solid #00316c;
  }
}

.about__heading {
  text-align: center;
  margin-bottom: 40px;
  position: relative;
}

.about__heading--lv1 {
  color: #00316c;
  text-align: center;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  line-height: 1;
  font-size: 50px;
  font-size: 10.41667vw;
  line-height: 1;
  margin-bottom: 2.08333vw;
}

@media only screen and (min-width: 480px) {
  .about__heading--lv1 {
    margin-bottom: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .about__heading--lv1 {
    font-size: 110px;
    font-size: 11rem;
    line-height: 110px;
    line-height: 11rem;
  }
}

.about__heading--lv2 {
  font-size: 2.5rem;
  border-bottom: none;
  padding-bottom: 5px;
  border-bottom: 3px solid #00316c;
  font-size: 20px;
  font-size: 4.16667vw;
  line-height: 1.8;
  color: #00316c;
  text-align: center;
  display: inline-block;
  white-space: nowrap;
}

@media only screen and (min-width: 480px) {
  .about__heading--lv2 {
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1.6;
  }
}

@media only screen and (min-width: 960px) {
  .about__heading--lv2 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

/* #about-company
------------------------------------------------------------*/
.about-company {
  padding-top: 6.25vw;
  padding-bottom: 20.83333vw;
}

@media only screen and (min-width: 960px) {
  .about-company {
    margin-bottom: 120px;
    padding-bottom: 0;
  }
}

.about-company__list {
  list-style-type: none;
  padding: 0;
  max-width: 660px;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 10.41667vw;
  padding-left: 4.16667vw;
  padding-right: 4.16667vw;
}

@media only screen and (min-width: 960px) {
  .about-company__list {
    max-width: 650px;
    width: 100%;
    margin: 0 auto 50px;
    padding: 0;
  }
}

.about-company__list li {
  font-weight: bold;
  border-bottom: 1px solid #00316c;
  padding: 2.08333vw;
  padding-left: 1.04167vw;
  padding-right: 1.04167vw;
}

@media only screen and (min-width: 960px) {
  .about-company__list li {
    border-bottom: none;
    padding: 0;
  }
}

@media only screen and (min-width: 960px) {
  .about-company__list dl {
    display: flex;
    justify-content: space-between;
  }
}

.about-company__list dt {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.53846;
  padding-bottom: 2.08333vw;
  padding-bottom: 2.08333vw;
  padding-top: 1.04167vw;
  font-size: 14px;
  font-size: 2.91667vw;
  line-height: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

@media only screen and (min-width: 480px) {
  .about-company__list dt {
    margin-bottom: 0;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
    padding-bottom: 1.04167vw;
    padding-top: 0.52083vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-company__list dt {
    border-bottom: 1px solid #00316c;
    width: 125px;
    padding: 20px;
    border-bottom: 1px solid #00316c;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.about-company__list dd {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.64835;
}

@media only screen and (min-width: 480px) {
  .about-company__list dd {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .about-company__list dd {
    width: calc(100% - 150px);
    padding: 20px;
    border-bottom: 1px solid #00316c;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.about-company__print {
  width: 30px;
  height: 30px;
  margin: 0 auto;
  display: block;
  transition: .2s;
}

.about-company__print:hover {
  opacity: .6;
}

/* #about-vision
------------------------------------------------------------*/
.p-anchor {
  margin-top: -180px;
  padding-top: 180px;
}

.about-vision {
  padding-top: 16.66667vw;
  padding-bottom: 40.625vw;
  background: url(assets/images/about/about_bg_im_01_sp.jpg) no-repeat bottom center;
  background-size: 100% auto;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .about-vision {
    padding-top: 10.41667vw;
    padding-bottom: 20.83333vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-vision {
    background: url(assets/images/about/about_bg_im_01.jpg) no-repeat bottom center;
    background-size: 100% auto;
    padding-top: 100px;
    padding-bottom: 200px;
  }
}

.about-vision .about__heading {
  position: relative;
}

.about-vision .about__heading img {
  position: absolute;
  width: 14.85417vw;
  height: auto;
  top: -4.79167vw;
  right: 50%;
  margin-right: 12.1875vw;
}

@media only screen and (min-width: 960px) {
  .about-vision .about__heading img {
    width: 171px;
    height: auto;
    top: -50px;
    right: 50%;
    left: auto;
    margin-right: 113px;
  }
}

.about-vision h4 {
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1;
  margin-bottom: 4.0625vw;
}

@media only screen and (min-width: 480px) {
  .about-vision h4 {
    margin-bottom: 15px;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .about-vision h4 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.about-vision p {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.53846;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .about-vision p {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .about-vision p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.about-vision section {
  margin-bottom: 8.33333vw;
  padding-right: 5.41667vw;
  padding-left: 5.41667vw;
}

.about-vision section:last-child {
  margin-bottom: 0;
}

@media only screen and (min-width: 960px) {
  .about-vision section {
    margin-bottom: 60px;
  }
}

/* #about-service
------------------------------------------------------------*/
.about-service {
  background-color: #faf6f2;
  padding-top: 20.83333vw;
  padding-bottom: 20.41667vw;
  padding-left: 2.70833vw;
  padding-right: 2.70833vw;
}

.about-service-his {
  margin-bottom: 80px;
  background-color: #fff;
  text-align: center;
}

.about-service-his .index-sec4__labels {
  padding: 0;
}

.about-service-his .index-sec4__labels li {
  background-color: #faf6f2;
}

.about-service-his ._active {
  background-color: #00316c !important;
  color: #fff;
  transition: background-color .3s ease-out;
}

.about-service-his ._active a {
  color: #fff;
}

@media only screen and (min-width: 480px) {
  .about-service {
    padding-top: 11.45833vw;
    padding-bottom: 10.20833vw;
    padding-left: 1.35417vw;
    padding-right: 1.35417vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-service {
    padding: 113px 40px 40px;
  }
}

.about-service__inner {
  background: #fff;
  position: relative;
  padding-top: 38.33333vw;
  padding-left: 2.70833vw;
  padding-right: 2.70833vw;
  padding-bottom: 21.66667vw;
}

@media only screen and (min-width: 480px) {
  .about-service__inner {
    padding-top: 19.16667vw;
    padding-left: 1.35417vw;
    padding-right: 1.35417vw;
    padding-bottom: 10.83333vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__inner {
    padding: 140px 60px 100px;
    max-width: 830px;
    width: 100%;
    margin: 0 auto;
  }
}

.about-service .about__heading {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -5vw;
}

@media only screen and (min-width: 480px) {
  .about-service .about__heading {
    top: -50px;
  }
}

.about-service__lead {
  margin-bottom: 8.125vw;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .about-service__lead {
    margin-bottom: 3.125vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__lead {
    margin-bottom: 30px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.about-service h4 {
  color: #00316c;
  text-align: center;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1;
  margin-bottom: 8.125vw;
}

@media only screen and (min-width: 480px) {
  .about-service h4 {
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
    margin-bottom: 4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-service h4 {
    margin-bottom: 30px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.about-service h5 {
  text-align: center;
  margin-bottom: 16.875vw;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .about-service h5 {
    margin-bottom: 10.41667vw;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .about-service h5 {
    margin-bottom: 20px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.has-anchor {
  margin-top: -108px;
  padding-top: 8.9375vw;
}
.about-service__can {
  background-color: #faf6f2;
  text-align: center;
  position: relative;
  padding-top: 8.9375vw;
  padding-left: 5.41667vw;
  padding-right: 5.41667vw;
  padding-bottom: 16.25vw;
  margin-bottom: 16.25vw;
}

@media only screen and (min-width: 480px) {
  .about-service__can {
    padding-top: 6.25vw;
    padding-left: 4.16667vw;
    padding-right: 4.16667vw;
    padding-bottom: 10.41667vw;
    margin-bottom: 10.41667vw;
  }
}

.about-service__can {
  background-color: #faf6f2;
  text-align: center;
  position: relative;
  padding-top: 8.9375vw;
  padding-left: 5.41667vw;
  padding-right: 5.41667vw;
  padding-bottom: 16.25vw;
  margin-bottom: 16.25vw;
}

@media only screen and (min-width: 480px) {
  .about-service__can {
    padding-top: 6.25vw;
    padding-left: 4.16667vw;
    padding-right: 4.16667vw;
    padding-bottom: 10.41667vw;
    margin-bottom: 10.41667vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__can {
    margin-bottom: 75px;
    padding: 50px 60px 60px;
  }
}

.about-service__can:before {
  content: '';
  display: inline-block;
  position: absolute;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  z-index: 1;
  width: 21.66667vw;
  height: 15.41667vw;
  top: 21.04167vw;
  left: 50%;
  margin-left: -10.83333vw;
}

@media only screen and (min-width: 480px) {
  .about-service__can:before {
    top: 10.41667vw;
    width: 14.58333vw;
    margin-left: -7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__can:before {
    right: 20px;
    top: 20px;
    width: 152px;
    height: 125px;
    margin-left: 0;
    left: auto;
  }
}

.has-anchor {
  margin-top: -108px;
  padding-top: 108px;
}

.about-service__can1::before {
  background-image: url(assets/images/about/about_im_01.png);
}

.about-service__can2::before {
  background-image: url(assets/images/about/about_im_02.png);
}

.about-service__can3::before {
  background-image: url(assets/images/about/about_im_03.png);
}

.about-service__can4::before {
  background-image: url(assets/images/about/about_im_04.png);
}
@media only screen and (min-width: 480px) {
  .about-service__can4 {
  }
}

.about-service__baloon {
  background: #fff;
  border: 3px solid #FADF00;
  position: relative;
  padding-top: 12.1875vw;
  padding-left: 5.95833vw;
  padding-right: 5.95833vw;
  padding-bottom: 10.83333vw;
  margin-bottom: 12.5vw;
}

@media only screen and (min-width: 480px) {
  .about-service__baloon {
    padding-top: 8.33333vw;
    padding-left: 4.16667vw;
    padding-right: 4.16667vw;
    padding-bottom: 4.16667vw;
    margin-bottom: 8.33333vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__baloon {
    margin-bottom: 40px;
    padding: 20px 15px;
  }
}

.about-service__baloon:after, .about-service__baloon:before {
  top: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.about-service__baloon:after {
  border-color: rgba(255, 255, 255, 0);
  border-top-color: #ffffff;
  border-width: 15px;
  margin-left: -15px;
}

.about-service__baloon:before {
  border-color: rgba(250, 223, 0, 0);
  border-top-color: #FADF00;
  border-width: 19px;
  margin-left: -19px;
}

.about-service__baloon h6 {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
  color: #00316c;
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .about-service__baloon h6 {
    margin-bottom: 3.125vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__baloon h6 {
    margin-bottom: 15px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.about-service__baloon ul {
  list-style-type: none;
  padding-left: 0;
}

.about-service__baloon li {
  margin-bottom: 1.35417vw;
  text-align: left;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.84615;
  text-indent: -1.1em;
  margin-left: 1.1em;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .about-service__baloon li {
    margin-bottom: 0.52083vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.42857;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__baloon li {
    margin-bottom: 5px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.about-service__baloon li:before {
  content: '・';
}

.about-service__emtxt {
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 1.72222;
  text-align: center;
  color: #00316c;
  font-weight: bold;
  margin-bottom: 7.85417vw;
}

@media only screen and (min-width: 480px) {
  .about-service__emtxt {
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 1;
    margin-bottom: 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__emtxt {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 30px;
    line-height: 3rem;
    margin-bottom: 15px;
  }
}

.about-service__txt {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.85714;
  padding-left: 2.70833vw;
  padding-right: 2.70833vw;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .about-service__txt {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.42857;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__txt {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.serviceanchor {
  margin-top: -30px;
  padding-top: 30px;
}

.about-service__button {
  margin: 0 auto;
  width: 75.83333vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
  position: absolute;
  bottom: -7.29167vw;
  left: 50%;
  line-height: 54px;
  max-width: 300px;
  width: 90%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .about-service__button {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
    line-height: 54px;
    bottom: -27px;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__button {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
    bottom: -35px;
    line-height: 64px !important;
  }
}

.about-service__option {
  background: #ffe86c;
  position: relative;
  padding: 8.125vw;
  padding-bottom: 13.54167vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.85714;
}

@media only screen and (min-width: 480px) {
  .about-service__option {
    padding: 4.0625vw;
    padding-bottom: 6.77083vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.42857;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__option {
    padding: 30px 40px 60px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.about-service__option h5 {
  margin-bottom: 5.41667vw;
  font-size: 20px;
  font-size: 4.16667vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .about-service__option h5 {
    margin-bottom: 2.70833vw;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__option h5 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__option .txt {
    width: calc(100% - 200px);
  }
}

@media only screen and (min-width: 960px) {
  .about-service__col {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.about-service__col .img {
  line-height: 0;
  display: none;
}

@media only screen and (min-width: 960px) {
  .about-service__col .img {
    width: 170px;
    display: block;
  }
}

.about-service__col .img img {
  width: 100%;
  height: auto;
}

.about-service .spimg {
  line-height: 0;
  width: 35.20833vw;
  margin: 0 auto;
  margin-bottom: 5.41667vw;
  max-width: 90%;
}

@media only screen and (min-width: 480px) {
  .about-service .spimg {
    width: 14.58333vw;
    margin-bottom: 2.70833vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-service .spimg {
    display: none;
  }
}

.about-service__en {
  width: 23.125vw;
  position: absolute;
  top: -3.52083vw;
  left: 8.125vw;
}

@media only screen and (min-width: 480px) {
  .about-service__en {
    width: 11.5625vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-service__en {
    top: -15px;
    left: 15px;
  }
}

/* #about-message
------------------------------------------------------------*/
.about-message {
  background: #FAF6F2 url(assets/images/about/about_bg_im_02_sp.jpg) no-repeat top center;
  background-size: 100% auto;
  position: relative;
  padding-top: 8.125vw;
  padding-left: 5.41667vw;
  padding-right: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .about-message {
    background: #FAF6F2 url(assets/images/about/about_bg_im_02.jpg) no-repeat top center;
    background-size: 100% auto;
  }
}

@media only screen and (min-width: 960px) {
  .about-message {
    padding: 60px 20px;
    background-size: 100% auto;
  }
}

.about-message .about__heading {
  margin-bottom: 46.25vw;
}

@media only screen and (min-width: 480px) {
  .about-message .about__heading {
    margin-bottom: 20.83333vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-message .about__heading {
    margin-bottom: 260px;
  }
}

.about-message__name {
  position: absolute;
  top: 45.625vw;
  left: 5.20833vw;
}

@media only screen and (min-width: 480px) {
  .about-message__name {
    top: 33.33333vw;
    left: 10.41667vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-message__name {
    left: 23%;
    top: 31%;
  }
}

.about-message__name p {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
  margin-bottom: 2.08333vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .about-message__name p {
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 1;
    margin-bottom: 10px;
  }
}

@media only screen and (min-width: 960px) {
  .about-message__name p {
    font-size: 1.5rem;
    margin-bottom: 10px;
  }
}

.about-message__name h4 {
  font-size: 22.1px;
  font-size: 4.60417vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .about-message__name h4 {
    font-size: 24px;
    font-size: 2.5vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .about-message__name h4 {
    font-size: 2.4rem;
  }
}

.about-message__copy {
  background: #fff url(assets/images/about/about_bg_im_03_01_sp.png) no-repeat top center;
  background-size: 100% auto;
  position: relative;
  z-index: 2;
  padding: 8.125vw;
}

@media only screen and (min-width: 960px) {
  .about-message__copy {
    background: #fff url(assets/images/about/about_bg_im_03.png) no-repeat center center;
    background-size: 100% 100%;
    padding: 50px;
    width: 100%;
    max-width: 760px;
    margin: 37% auto 50px;
    text-align: center;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.about-message__copy:after {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: url(assets/images/about/about_bg_im_03_02_sp.png) no-repeat bottom center;
  background-size: 100% auto;
}

.about-message__copy p {
  text-align: left;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .about-message__copy p {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .about-message__copy p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
    text-align: center;
  }
}

.about-message__copy p + p {
  margin-top: 30px;
}

/* #about-famlife
------------------------------------------------------------*/
.about-famlife {
  padding-top: 10.02083vw;
  background: #0058a4;
  text-align: center;
  line-height: 0;
  z-index: 1;
  position: relative;
  overflow: hidden;
  margin-top: -4.6875vw;
}

@media only screen and (min-width: 480px) {
  .about-famlife {
    padding-top: 9.375vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-famlife {
    padding-top: 90px;
    margin-top: -150px;
  }
}

.about-famlife h3 {
  width: 62.29167vw;
  margin: 0 auto;
  margin-bottom: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .about-famlife h3 {
    max-width: 230px;
  }
}

@media only screen and (min-width: 960px) {
  .about-famlife h3 {
    width: 230px;
    margin: 0 auto 40px;
  }
}

.about-famlife h3 img {
  width: 100%;
  height: auto;
}

.about-famlife__arrow {
  width: 46.3125vw;
  margin: 0 auto;
  margin-bottom: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .about-famlife__arrow {
    max-width: 177px;
  }
}

@media only screen and (min-width: 960px) {
  .about-famlife__arrow {
    position: absolute;
    width: 170px;
    left: 50%;
    bottom: 60px;
    margin-left: 100px;
  }
}

.about-famlife__arrow img {
  width: 100%;
  height: auto;
}

.about-famlife__illu {
  width: 32.5vw;
  margin: 0 auto;
}

@media only screen and (min-width: 480px) {
  .about-famlife__illu {
    width: 12.5vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-famlife__illu {
    width: 130px;
  }
}

/* #about-office
------------------------------------------------------------*/
.about-office {
  padding: 10.83333vw;
}

@media only screen and (min-width: 960px) {
  .about-office {
    padding: 60px 0;
  }
}

@media only screen and (min-width: 960px) {
  .about-office__col {
    padding: 50px 0 0;
    width: 100%;
    max-width: 780px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
  }
}

.about-office__col section {
  margin-bottom: 13.54167vw;
  padding: 5.41667vw;
  padding-top: 8.125vw;
  padding-bottom: 13.54167vw;
  text-align: center;
  background: #FAF6F2;
  position: relative;
}

.about-office__col section:last-of-type {
  margin-bottom: 0;
}

@media only screen and (min-width: 480px) {
  .about-office__col section {
    margin-right: 1.5625vw;
    margin-left: 1.5625vw;
    margin-bottom: 6.77083vw;
    padding: 2.70833vw;
    padding-top: 4.0625vw;
    padding-bottom: 6.77083vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-office__col section {
    margin-right: 15px;
    margin-left: 15px;
    width: 46%;
    padding: 40px 20px 60px;
    margin-bottom: 0;
  }
}

.about-office__col section:before {
  content: '';
  display: inline-block;
  background: url(assets/images/about/icon_office.png) no-repeat center center;
  background-size: contain;
  position: absolute;
  margin-left: -17px;
  width: 35px;
  height: 35px;
  top: -17px;
  left: 50%;
}

@media only screen and (min-width: 960px) {
  .about-office__col section:before {
    width: 35px;
    height: 35px;
    top: -17px;
    left: 50%;
  }
}

.about-office__col section h4 {
  font-size: 16px;
  font-size: 3.33333vw;
  line-height: 1;
  border-bottom: 1px solid #000;
  padding-bottom: 2.70833vw;
  margin-bottom: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .about-office__col section h4 {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .about-office__col section h4 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
    width: 170px;
    margin: 0 auto 20px;
    padding-bottom: 5px;
  }
}

.about-office__col section p {
  text-align: center;
  font-size: 14px;
  font-size: 2.91667vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .about-office__col section p {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .about-office__col section p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.about-office__button {
  margin: 0 auto;
  width: 220px;
  font-size: 21px;
  font-size: 4.375vw;
  line-height: 1;
  line-height: 50px;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #000;
  position: absolute;
  bottom: -20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .about-office__button {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 3.375;
  }
}

@media only screen and (min-width: 960px) {
  .about-office__button {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 54px;
    line-height: 5.4rem;
  }
}

/* #about-group
------------------------------------------------------------*/
.about-group {
  background: #FAF6F2;
  padding: 10.83333vw 20px;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .about-group {
    padding: 5.41667vw;
  }
}

@media only screen and (min-width: 960px) {
  .about-group {
    padding: 100px 50px 50px;
  }
}

.about-group .about__heading--lv1 {
  position: relative;
}

.about-group .about__heading--lv1 img {
  position: absolute;
  display: block;
  width: 25vw;
  top: -9.79167vw;
  left: 8.125vw;
}

@media only screen and (min-width: 960px) {
  .about-group .about__heading--lv1 img {
    width: 193px;
    height: 84px;
    top: -70px;
    right: 50%;
    margin-right: 100px;
    left: auto;
  }
}

.about-group .about__heading--lv1 span {
  background: #FAF6F2;
  display: inline-block;
}

.about-group__col {
  margin: -105px auto 0;
  border: 1px solid #00316c;
  padding: 100px 20px 20px;
}

@media only screen and (min-width: 480px) {
  .about-group__col {
    margin: -140px auto 0;
    width: 100%;
    padding: 1.04167vw;
    padding: 150px 30px 50px;
    display: inline-block;
  }
}

@media only screen and (min-width: 960px) {
  .about-group__col {
    padding: 150px 30px 50px;
    display: flex;
    justify-content: center;
    max-width: 780px;
    margin: -140px auto 0;
  }
}

.about-group__col a {
  line-height: 0;
  display: block;
  margin: 0 auto;
  transition: .2s;
}

.about-group__col a img {
  max-width: 290px;
  width: 100%;
  height: auto;
}

.about-group__col a:hover {
  opacity: .6;
}

@media only screen and (min-width: 960px) {
  .about-group__col a {
    max-width: 47%;
    margin: 0;
    padding: 20px 0;
  }
}

.about-group__col a + a {
  margin-top: 1.25vw;
}

@media only screen and (min-width: 960px) {
  .about-group__col a + a {
    margin-top: 0;
    margin-left: 50px;
  }
}

/**
/* page - works 施工実績
============================================================*/
/* works - structure
------------------------------------------------------------*/
.l-contents__works {
  padding-bottom: 0;
}

@media only screen and (min-width: 768px) {
  .l-contents__works {
    width: calc(100% - 28vw);
  }
}

@media only screen and (min-width: 960px) {
  .l-contents__works {
    width: calc(100% - 285px);
  }
}

.works-wrapper {
  width: 100%;
  padding-bottom: 120px;
  background-color: #faf6f2;
}

.works-header {
  display: none;
}

@media only screen and (min-width: 768px) {
  .works-header {
    position: static;
    display: block;
  }
}

.works-sidebar {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .works-sidebar {
    width: 28vw;
    order: 2;
  }
}

@media only screen and (min-width: 960px) {
  .works-sidebar {
    width: 285px;
  }
}

.works-sidebar__item {
  width: 100%;
}

.works-ranking {
  padding-top: 10.83333vw;
  padding-bottom: 8.125vw;
  padding-right: 30px;
  padding-left: 30px;
  background-color: #ffe86c;
}

@media only screen and (min-width: 480px) {
  .works-ranking {
    padding-top: 220px;
    padding-bottom: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-ranking {
    padding-bottom: 30px;
  }
}

.works-ranking__heading_img {
  margin: 0 auto 10px;
  width: 25.1875vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .works-ranking__heading_img {
    width: 9.6875vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-ranking__heading_img {
    width: 93px;
  }
}

.works-ranking__heading_lv1 {
  margin-bottom: 6.77083vw;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .works-ranking__heading_lv1 {
    margin-bottom: 2.60417vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .works-ranking__heading_lv1 {
    margin-bottom: 25px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.works-ranking__heading_lv2 {
  margin-bottom: 1.35417vw;
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1.46667;
}

@media only screen and (min-width: 480px) {
  .works-ranking__heading_lv2 {
    margin-bottom: 0.52083vw;
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 1.46667;
  }
}

@media only screen and (min-width: 960px) {
  .works-ranking__heading_lv2 {
    margin-bottom: 5;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.works-ranking__row {
  margin-right: -15px;
  margin-left: -15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.works-ranking__col {
  padding: 15px;
  width: 50%;
  position: relative;
  display: block;
}

@media only screen and (min-width: 480px) {
  .works-ranking__col {
    width: 25%;
  }
}

@media only screen and (min-width: 768px) {
  .works-ranking__col {
    width: 100%;
  }
}

.works-ranking__img {
  margin-bottom: 10px;
  padding-top: 75%;
  width: 100%;
  height: 0;
  position: relative;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .works-ranking__img {
    margin-bottom: 1.04167vw;
    padding-top: 75%;
    width: 100%;
  }
}

.works-ranking__img img {
  width: 100%;
  height: auto;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.works-ranking__body {
  width: 52%;
}

@media only screen and (min-width: 480px) {
  .works-ranking__body {
    width: 100%;
  }
}

.works-ranking__meta {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1.5;
}

@media only screen and (min-width: 480px) {
  .works-ranking__meta {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 960px) {
  .works-ranking__meta {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 18px;
    line-height: 1.8rem;
  }
}

.works-inner {
  margin: 0 auto;
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 1px;
  width: 100%;
  max-width: 780px;
}

.works-inner_bg-l {
  background-color: #fff;
}

@media only screen and (min-width: 480px) {
  .works-inner_bg-l {
    background-image: url(assets/images/works/works_catagory_bg.png);
    background-repeat: repeat-y;
    background-position: center left;
    background-size: 24px;
  }
}

.works-inner_bg-r {
  margin-bottom: 13.54167vw;
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 1px;
}

@media only screen and (min-width: 480px) {
  .works-inner_bg-r {
    margin-bottom: 5.20833vw;
    padding-right: 0;
    padding-left: 0;
    background-image: url(assets/images/works/works_catagory_bg.png);
    background-repeat: repeat-y;
    background-position: center right;
    background-size: 24px;
  }
}

@media only screen and (min-width: 960px) {
  .works-inner_bg-r {
    margin-bottom: 50px;
  }
}

/* works - タグリスト
------------------------------------------------------------*/
.works-taglist {
  margin: 0 auto;
  padding-top: 21.66667vw;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  max-width: 740px;
}

@media only screen and (min-width: 480px) {
  .works-taglist {
    padding-bottom: 9.47917vw;
    padding-top: 12.5vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-taglist {
    padding-top: 120px;
    padding-bottom: 40px;
  }
}

@media only screen and (min-width: 1280px) {
  .works-taglist {
    padding-right: 0;
    padding-left: 0;
  }
}

.works-taglist ul {
  list-style-type: none;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.works-taglist ul li {
  margin-bottom: 13.54167vw;
  border-left: 1px solid #00316c;
  width: calc( 100% / 2);
}

.works-taglist ul li:nth-of-type(2n) {
  border-right: 1px solid #00316c;
}

.works-taglist ul li:last-of-type {
  border-right: 1px solid #00316c;
}

@media only screen and (min-width: 480px) {
  .works-taglist ul li {
    margin-bottom: 0;
    width: calc( 100% / 7);
  }
  .works-taglist ul li:nth-of-type(2n) {
    border-right: none;
  }
}

.works-taglist ul li a {
  min-height: 8.66667vw;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.23077;
  text-align: center;
  font-weight: bold;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative;
}

.works-taglist ul li a::before {
  content: '';
  margin: 0 auto;
  width: 10.83333vw;
  height: 10.83333vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
}

.works-taglist ul li a span {
  width: 85%;
  min-height: 32px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 12;
}

.works-taglist ul li a span::after {
  content: '';
  width: 100%;
  height: 6px;
  background-color: #FADF00;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: -1;
  transition: transform .3s ease-out;
  transform-origin: left top;
  transform: scaleX(0);
}

.works-taglist ul li a:hover {
  text-decoration: none;
}

.works-taglist ul li a:hover span::after {
  transform: scaleX(1);
}

@media only screen and (min-width: 480px) {
  .works-taglist ul li a {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1.23077;
    min-height: 3.33333vw;
  }
  .works-taglist ul li a::before {
    width: 4.16667vw;
    height: 4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-taglist ul li a {
    min-height: 32px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
  .works-taglist ul li a::before {
    width: 40px;
    height: 40px;
  }
}

.works-taglist ul li a._current span::after {
  transform: scaleX(1);
}

.works-taglist_public::before {
  background-image: url(assets/images/works/works_icon_public.png);
}

.works-taglist_apartment::before {
  background-image: url(assets/images/works/works_icon_apartment.png);
}

.works-taglist_apartment-re::before {
  background-image: url(assets/images/works/works_icon_apartment-re.png);
}

.works-taglist_facilities::before {
  background-image: url(assets/images/works/works_icon_facilities.png);
}

.works-taglist_factory::before {
  background-image: url(assets/images/works/works_icon_factory.png);
}

.works-taglist_office::before {
  background-image: url(assets/images/works/works_icon_office.png);
}

.works-taglist_house::before {
  background-image: url(assets/images/works/works_icon_house.png);
}

/* works - 
------------------------------------------------------------*/
.works-sec1 {
  padding-bottom: 21.66667vw;
}

@media only screen and (min-width: 480px) {
  .works-sec1 {
    padding-bottom: 13.54167vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-sec1 {
    padding-bottom: 100px;
  }
}

.works-sec1__row {
  margin-right: -7px;
  margin-left: -7px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

@media only screen and (min-width: 480px) {
  .works-sec1__row {
    margin-right: -0.72917vw;
    margin-left: -0.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-sec1__row {
    margin-right: -7px;
    margin-left: -7px;
  }
}

.works-sec1__col {
  padding: 15px 7px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .works-sec1__col {
    width: calc(100% / 3);
    display: block;
    position: static;
  }
}

.works-sec1__figure {
  padding-top: 39%;
  width: 37.91667vw;
  height: 0;
  background-color: #ffe86c;
  border-right: 2.70833vw solid #ffe86c;
  border-bottom: 2.70833vw solid #ffe86c;
  position: relative;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .works-sec1__figure {
    margin-bottom: 2.08333vw;
    padding-top: 100%;
    width: 100%;
    border-width: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-sec1__figure {
    margin-bottom: 20px;
    border-width: 10px;
  }
}

.works-sec1__img {
  width: 100%;
  height: auto;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.works-sec1__category {
  width: 13.54167vw;
  height: 13.54167vw;
  background-color: #ffe86c;
  border: 1.35417vw solid #fff;
  border-radius: 50%;
  position: absolute;
  bottom: 1.35417vw;
  left: 0vw;
}

@media only screen and (min-width: 480px) {
  .works-sec1__category {
    width: 8.125vw;
    height: 8.125vw;
    border-width: 1.04167vw;
    top: -9.47917vw;
    left: -1.35417vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-sec1__category {
    width: 60px;
    height: 60px;
    border-width: 10px;
    top: -70px;
    left: -10px;
  }
}

.works-sec1__category span {
  background-color: #ffe86c;
  border-radius: 50%;
  display: block;
}

.works-sec1__category span img {
  width: 100%;
  height: auto;
  display: block;
}

.works-sec1__body {
  width: 52%;
}

@media only screen and (min-width: 480px) {
  .works-sec1__body {
    width: 100%;
    position: relative;
  }
}

.works-sec1__heading {
  margin-bottom: 1.35417vw;
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1.46667;
}

@media only screen and (min-width: 480px) {
  .works-sec1__heading {
    margin-bottom: 0.52083vw;
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 1.46667;
  }
}

@media only screen and (min-width: 960px) {
  .works-sec1__heading {
    margin-bottom: 5;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.works-sec1__meta {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1.5;
}

@media only screen and (min-width: 480px) {
  .works-sec1__meta {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 960px) {
  .works-sec1__meta {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 18px;
    line-height: 1.8rem;
  }
}

.works-post__row {
  margin-right: -15px;
  margin-left: -15px;
  margin-bottom: 16.25vw;
}

@media only screen and (min-width: 480px) {
  .works-post__row {
    margin-bottom: 8.33333vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}

@media only screen and (min-width: 960px) {
  .works-post__row {
    margin-bottom: 80px;
  }
}

.works-post__col {
  padding: 15px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .works-post__col {
    width: calc( 100% / 3);
    display: block;
  }
}

.works-post__figure {
  padding-top: 30%;
  width: 42%;
  height: 0;
  position: relative;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .works-post__figure {
    margin-bottom: 1.04167vw;
    padding-top: 75%;
    width: 100%;
  }
}

@media only screen and (min-width: 960px) {
  .works-post__figure {
    margin-bottom: 10px;
  }
}

.works-post__img {
  width: 100%;
  height: auto;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.works-post__category {
  width: 10.83333vw;
  height: 10.83333vw;
  background-color: #ffe86c;
  border-radius: 50%;
  position: absolute;
  top: 1.35417vw;
  left: 5px;
  z-index: 2;
}

@media only screen and (min-width: 480px) {
  .works-post__category {
    width: 5.41667vw;
    height: 5.41667vw;
    border-width: 1.04167vw;
    top: 0;
    right: 0;
    left: auto;
  }
}

@media only screen and (min-width: 960px) {
  .works-post__category {
    width: 40px;
    height: 40px;
    border-width: 10px;
  }
}

.works-post__category img {
  width: 100%;
  height: auto;
  display: block;
}

.works-post__body {
  width: 52%;
}

@media only screen and (min-width: 480px) {
  .works-post__body {
    width: 100%;
  }
}

.works-post__heading {
  margin-bottom: 1.35417vw;
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1.46667;
}

@media only screen and (min-width: 480px) {
  .works-post__heading {
    margin-bottom: 0.52083vw;
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 1.46667;
  }
}

@media only screen and (min-width: 960px) {
  .works-post__heading {
    margin-bottom: 5;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.works-post__meta {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1.5;
}

@media only screen and (min-width: 480px) {
  .works-post__meta {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 960px) {
  .works-post__meta {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 18px;
    line-height: 1.8rem;
  }
}

/* works category
------------------------------------------------------------*/
.works-category__heading {
  margin-bottom: 13.54167vw;
}

@media only screen and (min-width: 480px) {
  .works-category__heading {
    margin-bottom: 7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-category__heading {
    margin-bottom: 70px;
  }
}

.works-category__heading-img {
  margin: 0 auto;
  display: block;
}

.works-category-header {
  margin: 0 auto 18.95833vw;
  width: 100%;
  max-width: 600px;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .works-category-header {
    margin-bottom: 7.29167vw;
    padding: 0 30px;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-header {
    margin-bottom: 70px;
  }
}

.works-category-header__heading {
  margin: 0 auto;
  margin-bottom: 2.70833vw;
  width: 65vw;
  background-color: #ffe86c;
  font-size: 14.3px;
  font-size: 2.97917vw;
  line-height: 2.90909;
  text-align: center;
  transform: skewX(-20deg);
  position: absolute;
  top: -4.33333vw;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .works-category-header__heading {
    margin-bottom: 1.04167vw;
    width: 34.375vw;
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2.46154;
    top: -2.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-header__heading {
    margin-bottom: 10px;
    width: 330px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 32px;
    line-height: 3.2rem;
    top: -16px;
  }
}

.works-category-header__heading span {
  transform: skewX(20deg);
  display: block;
}

.works-category-header__row1 {
  margin: 0 auto;
  padding-top: 13.54167vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media only screen and (min-width: 480px) {
  .works-category-header__row1 {
    margin-bottom: 3.125vw;
    padding-top: 6.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-header__row1 {
    margin-bottom: 30px;
    padding-top: 60px;
  }
}

.works-category-header__col {
  margin-bottom: 9.47917vw;
  width: calc(100% / 3);
}

@media only screen and (min-width: 480px) {
  .works-category-header__col {
    margin-bottom: 0;
    width: calc(100% / 6);
  }
}

.works-category-header__col img {
  margin: 0 auto 2.70833vw;
  width: 16.25vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .works-category-header__col img {
    margin-bottom: 1.04167vw;
    width: 6.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-header__col img {
    margin-bottom: 10px;
    width: 60px;
  }
}

.works-category-header__col p {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.30769;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .works-category-header__col p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1.30769;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-header__col p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 17px;
    line-height: 1.7rem;
  }
}

.works-category-header__row2 {
  margin-bottom: 8.125vw;
}

@media only screen and (min-width: 480px) {
  .works-category-header__row2 {
    padding-right: 20px;
    padding-left: 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-header__row2 {
    margin-bottom: 30px;
  }
}

.works-category-header__img {
  margin: 0 auto 5.41667vw;
  width: 32.5vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .works-category-header__img {
    margin: 0;
    width: 33%;
    align-self: flex-start;
  }
}

.works-category-header__text {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .works-category-header__text {
    width: 60%;
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-header__text {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.works-category-column {
  margin: 0 auto;
  padding: 20px 20px 45px;
  width: 100%;
  background-color: #faf6f2;
  position: relative;
}

.works-category-column::before {
  content: '';
  width: 73px;
  height: 41px;
  background-image: url(assets/images/works/works_column_point.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -5.95833vw;
  left: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .works-category-column::before {
    top: -2.29167vw;
    left: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-column::before {
    top: -22px;
    left: 100px;
  }
}

.works-category-column .column__heading {
  margin-bottom: 5.41667vw;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.84615;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .works-category-column .column__heading {
    margin-bottom: 2.08333vw;
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1.84615;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-column .column__heading {
    margin-bottom: 20px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.works-category-column .column__text {
  margin-bottom: 5.41667vw;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .works-category-column .column__text {
    margin-bottom: 2.08333vw;
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-column .column__text {
    margin-bottom: 20px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.works-category-column .column__logo {
  margin: 0 auto;
  width: 220px;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .works-category-column .column__logo {
    width: 22.91667vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-column .column__logo {
    width: 220px;
  }
}

.works-category-column .column__button {
  margin: 0 auto;
  width: 120px;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2.42857;
  color: #00316c;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -4.60417vw;
}

@media only screen and (min-width: 480px) {
  .works-category-column .column__button {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2.42857;
    bottom: -1.77083vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-category-column .column__button {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 34px;
    line-height: 3.4rem;
    bottom: -17px;
  }
}

/* works - single
------------------------------------------------------------*/
/* hero画像
- - - - - - - - - - - - - - - - - - */
.works-single-hero {
  margin-bottom: 6.77083vw;
  height: 58.5vw;
  border-bottom: 6px solid #ffe86c;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .works-single-hero {
    margin-bottom: 5.72917vw;
    height: 56.25vw;
    border-bottom: 4.60417vw solid #ffe86c;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-hero {
    margin-bottom: 55px;
    height: 540px;
    border-bottom: 17px solid #ffe86c;
  }
}

.works-single-hero__img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.works-single-hero__meta {
  padding-left: 20px;
  padding-bottom: 4.0625vw;
  position: absolute;
  bottom: 0;
  left: 0;
}

@media only screen and (min-width: 480px) {
  .works-single-hero__meta {
    padding-left: 5.20833vw;
    padding-bottom: 0;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-hero__meta {
    padding-left: 50px;
  }
}

.works-single-hero__date {
  margin-bottom: 2.70833vw;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #ffe86c;
}

@media only screen and (min-width: 480px) {
  .works-single-hero__date {
    margin-bottom: 1.04167vw;
    font-size: 50px;
    font-size: 5.20833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-hero__date {
    margin-bottom: 10px;
    font-size: 50px;
    font-size: 5rem;
    line-height: 50px;
    line-height: 5rem;
  }
}

.works-single-hero__categoryname {
  font-size: 45.5px;
  font-size: 9.47917vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #ffe86c;
  text-transform: uppercase;
}

@media only screen and (min-width: 480px) {
  .works-single-hero__categoryname {
    font-size: 88px;
    font-size: 9.16667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-hero__categoryname {
    font-size: 88px;
    font-size: 8.8rem;
    line-height: 88px;
    line-height: 8.8rem;
  }
}

.works-single-hero__category {
  width: 13.54167vw;
  bottom: -7.3125vw;
  right: 20px;
  position: absolute;
}

@media only screen and (min-width: 480px) {
  .works-single-hero__category {
    width: 12.5vw;
    bottom: -8.125vw;
    right: 6.09375vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-hero__category {
    width: 120px;
    bottom: -60px;
    right: 45px;
  }
}

.works-single-hero__category p {
  display: none;
}

@media only screen and (min-width: 480px) {
  .works-single-hero__category p {
    width: 100%;
    font-size: 10px;
    font-size: 2.08333vw;
    line-height: 1.9;
    text-align: center;
    font-weight: bold;
    display: block;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-hero__category p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 19px;
    line-height: 1.9rem;
  }
}

.works-single-hero__icon {
  width: 13.54167vw;
  height: 13.54167vw;
  background-color: #ffe86c;
  border: 2.16667vw solid #fff;
  border-radius: 50%;
}

@media only screen and (min-width: 480px) {
  .works-single-hero__icon {
    margin-bottom: 1.04167vw;
    width: 12.5vw;
    height: 12.5vw;
    border-width: 1.875vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-hero__icon {
    margin-bottom: 10px;
    width: 120px;
    height: 120px;
    border-width: 18px;
  }
}

.works-single-hero__icon span {
  background-color: #ffe86c;
  border-radius: 50%;
  display: block;
}

.works-single-hero__icon span img {
  width: 100%;
  height: auto;
  display: block;
}

/* ヘッダー
- - - - - - - - - - - - - - - - - - */
.works-single__header {
  margin-bottom: 9.47917vw;
  padding-bottom: 2.70833vw;
  border-bottom: 1px solid #000;
  position: relative;
}

.works-single__header::after {
  content: '';
  width: 1px;
  height: 13.54167vw;
  background-color: #000;
  display: block;
  position: absolute;
  bottom: -16.25vw;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
}

@media only screen and (min-width: 480px) {
  .works-single__header {
    margin-bottom: 5.20833vw;
    padding-bottom: 2.08333vw;
    position: relative;
  }
  .works-single__header::after {
    height: 6.77083vw;
    bottom: -7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__header {
    margin-bottom: 50px;
    padding-bottom: 20px;
  }
  .works-single__header::after {
    bottom: -70px;
    height: 50px;
  }
}

.works-single__heading {
  margin-bottom: 4.0625vw;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.5;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .works-single__heading {
    margin-bottom: 2.08333vw;
    font-size: 30px;
    font-size: 3.125vw;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__heading {
    margin-bottom: 20px;
    font-size: 30px;
    font-size: 3rem;
    line-height: 45px;
    line-height: 4.5rem;
  }
}

.works-single__meta {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.8;
  font-weight: bold;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .works-single__meta {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1.8;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__meta {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

/* 
- - - - - - - - - - - - - - - - - - */
.works-single__inner {
  margin: 0 auto;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  max-width: 780px;
}

@media only screen and (min-width: 1280px) {
  .works-single__inner {
    padding-right: 0;
    padding-left: 0;
  }
}

.works-single__inner_white {
  margin-bottom: 40px;
  padding-top: 13.54167vw;
  padding-bottom: 8.125vw;
  background-color: #fff;
  position: relative;
}

.works-single__inner_white::before {
  content: '';
  width: 24.64583vw;
  height: 10.29167vw;
  background-image: url(assets/images/works/works_single_ourworks.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -5.41667vw;
  left: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .works-single__inner_white {
    padding-top: 6.25vw;
    padding-bottom: 3.125vw;
  }
  .works-single__inner_white::before {
    width: 19.16667vw;
    height: 7.91667vw;
    top: -2.08333vw;
    left: 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__inner_white {
    margin-bottom: 0;
    padding-top: 60px;
    padding-bottom: 30px;
  }
  .works-single__inner_white::before {
    width: 184px;
    height: 76px;
    top: -20px;
    left: 20px;
  }
}

/* アイコンリスト
- - - - - - - - - - - - - - - - - - */
.works-single-help {
  margin: 0 auto;
  width: 67.70833vw;
}

@media only screen and (min-width: 480px) {
  .works-single-help {
    width: 56.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-help {
    width: 540px;
  }
}

.works-single-help .help__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media only screen and (min-width: 480px) {
  .works-single-help .help__row {
    margin-bottom: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-help .help__row {
    margin-bottom: 30px;
  }
}

.works-single-help .help__col {
  margin-bottom: 9.47917vw;
  width: calc(100% / 3);
}

@media only screen and (min-width: 480px) {
  .works-single-help .help__col {
    margin-bottom: 0;
    width: calc(100% / 6);
  }
}

.works-single-help .help__col img {
  margin: 0 auto 2.70833vw;
  width: 16.25vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .works-single-help .help__col img {
    margin-bottom: 1.04167vw;
    width: 6.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-help .help__col img {
    margin-bottom: 10px;
    width: 60px;
  }
}

.works-single-help .help__col p {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.30769;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .works-single-help .help__col p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1.30769;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-help .help__col p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 17px;
    line-height: 1.7rem;
  }
}

.works-single__contents {
  padding-right: 20px;
  padding-left: 20px;
}

@media only screen and (min-width: 480px) {
  .works-single__contents {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
  }
}

.works-single__aside {
  margin-bottom: 21.66667vw;
  padding: 16.25vw 5.41667vw 10.83333vw;
  background-color: #00316c;
  color: #fff;
}

@media only screen and (min-width: 480px) {
  .works-single__aside {
    margin-bottom: 3.125vw;
    padding: 8.125vw 4.0625vw 5.41667vw;
    width: 100%;
    align-self: flex-start;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__aside {
    margin-bottom: 0;
    padding: 60px 30px 40px;
    width: 38%;
    position: relative;
    top: 0;
    left: -30px;
  }
}

.works-single__aside .aside__heading {
  margin-bottom: 6.77083vw;
  padding-bottom: 5.41667vw;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.5;
  border-bottom: 1px solid #fff;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .works-single__aside .aside__heading {
    margin-bottom: 2.60417vw;
    padding-bottom: 5.41667vw;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__aside .aside__heading {
    margin-bottom: 25px;
    padding-bottom: 20px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 30px;
    line-height: 3rem;
  }
}

.works-single__aside .aside__info {
  padding-top: 2.70833vw;
  padding-bottom: 9.47917vw;
  font-size: 12px;
  font-size: 2.5vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .works-single__aside .aside__info {
    padding-top: 1.04167vw;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2;
    padding-bottom: 3.64583vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__aside .aside__info {
    padding-top: 10px;
    padding-bottom: 35px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.works-single__aside .aside__meta {
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .works-single__aside .aside__meta {
    margin-bottom: 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__aside .aside__meta {
    margin-bottom: 20px;
  }
}

.works-single__aside .aside__label {
  margin-bottom: 5.41667vw;
  width: 25.72917vw;
  background-color: #fff;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  color: #00316c;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .works-single__aside .aside__label {
    margin-bottom: 2.08333vw;
    width: 9.89583vw;
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__aside .aside__label {
    width: 95px;
    margin-bottom: 20px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.works-single__aside .aside__content {
  margin-bottom: 5.41667vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .works-single__aside .aside__content {
    margin-bottom: 2.08333vw;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__aside .aside__content {
    margin-bottom: 20px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.works-single__aside .aside__staff dl {
  border-bottom: 1px dotted #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.works-single__aside .aside__staff dt {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 3.07692;
}

@media only screen and (min-width: 480px) {
  .works-single__aside .aside__staff dt {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 3.07692;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__aside .aside__staff dt {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 40px;
    line-height: 4rem;
  }
}

.works-single__aside .aside__staff dd {
  padding-left: 2.70833vw;
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 2.66667;
}

@media only screen and (min-width: 480px) {
  .works-single__aside .aside__staff dd {
    padding-left: 1.04167vw;
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 2.66667;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__aside .aside__staff dd {
    padding-left: 10px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 40px;
    line-height: 4rem;
  }
}

@media only screen and (min-width: 480px) {
  .works-single__body {
    width: 100%;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__body {
    width: 60%;
  }
}

.works-single__body .body-before {
  margin-bottom: 5.20833vw;
  padding: 30px;
  border: 1px solid #00316c;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .works-single__body .body-before {
    margin-bottom: 5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__body .body-before {
    margin-bottom: 50px;
  }
}

.works-single__body .body-before__label {
  width: 100px;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 2.5;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
  background-color: #fff;
  transform: rotate(90deg);
  position: absolute;
  top: 23px;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .works-single__body .body-before__label {
    width: 10.41667vw;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 2.5;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__body .body-before__label {
    width: 100px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 50px;
    line-height: 5rem;
  }
}

.works-single__body .body-before__img {
  margin-bottom: 6.77083vw;
  width: 100%;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .works-single__body .body-before__img {
    margin-bottom: 2.60417vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__body .body-before__img {
    margin-bottom: 25px;
  }
}

.works-single__body .body-before__text {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .works-single__body .body-before__text {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__body .body-before__text {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.works-single__body .postbody p {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .works-single__body .postbody p {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__body .postbody p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

/* works - 担当スタッフからのコメント
------------------------------------------------------------*/
.works-single-staff {
  padding-right: 20px;
  padding-left: 20px;
}

@media only screen and (min-width: 480px) {
  .works-single-staff {
    bottom: -4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-staff {
    bottom: -40px;
    margin-top: 40px;
  }
}

.works-single-staff .staff__card {
  padding-top: 13.54167vw;
  padding-bottom: 6.77083vw;
  padding-right: 5.41667vw;
  padding-left: 5.41667vw;
  background-color: #fff;
  border: 1px solid #00316c;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__card {
    padding-top: 5.72917vw;
    padding-bottom: 3.125vw;
    padding-right: 5.20833vw;
    padding-left: 5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-staff .staff__card {
    padding-top: 55px;
    padding-bottom: 30px;
    padding-right: 50px;
    padding-left: 50px;
  }
}

.works-single-staff .staff__heading_lv1 {
  margin: 0 auto;
  background-color: #ffe86c;
  width: 67.70833vw;
  text-align: center;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2.57143;
  transform: skewX(-15deg);
  position: absolute;
  top: -4.875vw;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__heading_lv1 {
    width: 35.41667vw;
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 2.22222;
    top: -2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-staff .staff__heading_lv1 {
    width: 340px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 40px;
    line-height: 4rem;
    top: -20px;
  }
}

.works-single-staff .staff__heading_lv1 span {
  transform: skewX(15deg);
  display: block;
}

.works-single-staff .staff__heading_lv1 span::after {
  content: '';
  width: 7.04167vw;
  height: 10.5625vw;
  background-image: url(assets/images/works/works_single_staff_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -2.70833vw;
  right: -1.35417vw;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__heading_lv1 span::after {
    width: 2.70833vw;
    height: 4.0625vw;
    top: -0.52083vw;
    right: 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-staff .staff__heading_lv1 span::after {
    width: 26px;
    height: 39px;
    top: -5px;
    right: 10px;
  }
}

.works-single-staff .staff__heading_lv2 {
  margin-bottom: 5.41667vw;
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1.4;
  color: #00316c;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__heading_lv2 {
    margin-bottom: 2.60417vw;
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-staff .staff__heading_lv2 {
    margin-bottom: 25px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 27px;
    line-height: 2.7rem;
  }
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

.works-single-staff .staff__body {
  margin-bottom: 8.125vw;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__body {
    margin-bottom: 0;
    width: 70%;
  }
}

.works-single-staff .staff__text {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__text {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-staff .staff__text {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.works-single-staff .staff__author {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__author {
    width: 25%;
    display: block;
  }
}

.works-single-staff .staff__author .author__img {
  width: 32%;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__author .author__img {
    margin: 0 auto;
    width: 100%;
    margin-bottom: 1.04167vw;
    width: 10.41667vw;
    height: 10.41667vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-staff .staff__author .author__img {
    margin-bottom: 10px;
    width: 100px;
    height: 100px;
  }
}

.works-single-staff .staff__author .author__img img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 50%;
}

.works-single-staff .staff__author .author__body {
  width: 53%;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__author .author__body {
    width: 100%;
  }
}

.works-single-staff .staff__author .author__title {
  margin-bottom: 2.70833vw;
  font-size: 14.3px;
  font-size: 2.97917vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__author .author__title {
    margin-bottom: 1.04167vw;
    font-size: 11px;
    font-size: 1.14583vw;
    line-height: 1;
    text-align: center;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-staff .staff__author .author__title {
    margin-bottom: 10px;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem;
  }
}

.works-single-staff .staff__author .author__name {
  margin-bottom: 2.70833vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__author .author__name {
    margin-bottom: 1.04167vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
    text-align: center;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-staff .staff__author .author__name {
    margin-bottom: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.works-single-staff .staff__author .author__link {
  width: 32.5vw;
  background-color: #ffe86c;
  border-radius: 4.60417vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2.42857;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  text-align: center;
  font-weight: bold;
  display: block;
}

@media only screen and (min-width: 480px) {
  .works-single-staff .staff__author .author__link {
    margin: 0 auto;
    width: 12.5vw;
    border-radius: 1.77083vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2.42857;
  }
}

@media only screen and (min-width: 960px) {
  .works-single-staff .staff__author .author__link {
    width: 120px;
    border-right: 17px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 34px;
    line-height: 3.4rem;
  }
}

/* works ingle - ストーリー
------------------------------------------------------------*/
.works-single__story {
  margin-bottom: 24.375vw;
  padding-top: 32.5vw;
  padding-right: 20px;
  padding-left: 20px;
  background-color: #fff;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .works-single__story {
    margin-bottom: 15.625vw;
    padding-top: 13.02083vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__story {
    margin-bottom: 150px;
    padding-top: 125px;
  }
}

@media only screen and (min-width: 1280px) {
  .works-single__story {
    padding-right: 0;
    padding-left: 0;
  }
}

.works-single__story .story__inner {
  margin: 0 auto;
  width: 100%;
  max-width: 600px;
}

.works-single__story .story__headings {
  margin: 0 auto;
  position: absolute;
  top: -6.77083vw;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .works-single__story .story__headings {
    top: -4.16667vw;
  }
}

.works-single__story .story__heading_en {
  margin: 0 auto 10px;
  width: 56.875vw;
  position: relative;
}

.works-single__story .story__heading_en::after {
  content: '';
  width: 16.79167vw;
  height: 10.29167vw;
  background-image: url(assets/images/works/works_single_story_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -8.125vw;
  right: -17.60417vw;
}

@media only screen and (min-width: 480px) {
  .works-single__story .story__heading_en {
    width: 37.5vw;
  }
  .works-single__story .story__heading_en::after {
    width: 11.45833vw;
    height: 6.97917vw;
    top: 1.04167vw;
    right: -12.5vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__story .story__heading_en {
    width: 360px;
  }
  .works-single__story .story__heading_en::after {
    width: 110px;
    height: 67px;
    top: 10px;
    right: -120px;
  }
}

.works-single__story .story__heading_lv2 span {
  display: inline-block;
}

.works-single__story .story__lead {
  margin-bottom: 9.47917vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .works-single__story .story__lead {
    margin-bottom: 3.64583vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__story .story__lead {
    margin-bottom: 35px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.works-single__story .story__button {
  margin: 0 auto;
  width: 54.16667vw;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 3.5;
  position: absolute;
  bottom: -7.58333vw;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .works-single__story .story__button {
    width: 22.91667vw;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 3.3;
    bottom: -3.4375vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__story .story__button {
    width: 220px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 66px;
    line-height: 6.6rem;
    bottom: -33px;
  }
}

/* works ingle - その他実績
------------------------------------------------------------*/
.works-single__other {
  position: relative;
}

.works-single__other::before {
  content: '';
  width: 21.39583vw;
  height: 18.14583vw;
  background-image: url(assets/images/works/works_catagory_header_img.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -18.6875vw;
  right: 2.70833vw;
  z-index: 2;
}

@media only screen and (min-width: 480px) {
  .works-single__other::before {
    width: 15.3125vw;
    height: 13.02083vw;
    top: -13.54167vw;
    right: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__other::before {
    width: 147px;
    height: 125px;
    top: -130px;
    right: 10px;
  }
}

.works-single__other .other__img {
  margin-bottom: 27.08333vw;
  width: 100%;
  height: 32.5vw;
  position: relative;
}

.works-single__other .other__img::after {
  content: '';
  width: 10px;
  height: 10px;
  background-image: url(assets/images/works/works_catagory_header_img.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

@media only screen and (min-width: 480px) {
  .works-single__other .other__img {
    margin-bottom: 25vw;
    height: 25vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__other .other__img {
    margin-bottom: 180px;
    height: 240px;
  }
}

.works-single__other .other__img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.works-single__other .other__inner {
  margin: 0 auto;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  max-width: 780px;
}

@media only screen and (min-width: 1280px) {
  .works-single__other .other__inner {
    padding-right: 0;
    padding-left: 0;
  }
}

.works-single__other .other__headings {
  margin: 0 auto;
  padding-bottom: 20px;
  width: 81.25vw;
  background-color: #fff;
  position: absolute;
  top: 21.66667vw;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .works-single__other .other__headings {
    width: 41.66667vw;
    top: 18.75vw;
  }
}

@media only screen and (min-width: 960px) {
  .works-single__other .other__headings {
    top: 200px;
    width: 400px;
  }
}

.works-single__other .other__row {
  padding-bottom: 60px;
  margin-right: -15px;
  margin-left: -15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

/**
/* page - staff
============================================================*/
.staff-post {
  margin: 0 auto;
  padding-top: 17.60417vw;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  max-width: 780px;
}

@media only screen and (min-width: 480px) {
  .staff-post {
    padding-top: 10.15625vw;
    padding-bottom: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post {
    padding-top: 75px;
    padding-bottom: 10px;
  }
}

@media only screen and (min-width: 1280px) {
  .staff-post {
    padding-right: 0;
    padding-left: 0;
  }
}

.staff-post_pt {
  padding-top: 36.5625vw;
}

@media only screen and (min-width: 480px) {
  .staff-post_pt {
    padding-top: 19.63542vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post_pt {
    padding-top: 145px;
  }
}

.staff-post__heading {
  margin: 0 auto 8.125vw;
  width: 100%;
  max-width: 780px;
  text-align: center;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .staff-post__heading {
    margin-bottom: 10.83333vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post__heading {
    margin-bottom: 40px;
  }
}

.staff-post__heading::after {
  content: '';
  width: 50%;
  height: 3px;
  background-color: #000;
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 0;
}

.staff-post__heading span {
  padding: 0 9.47917vw;
  background-color: #fff;
  border-top: 3px solid #000;
  border-right: 3px solid #000;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2.14286;
  display: inline-block;
  position: relative;
  z-index: 1;
  position: relative;
}

.staff-post__heading span::after {
  content: '';
  width: 10px;
  height: 3px;
  background-color: #000;
  display: block;
  position: absolute;
  bottom: 0;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .staff-post__heading span {
    padding: 0 7.8125vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 2.52;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post__heading span {
    padding: 0 75px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 63px;
    line-height: 6.3rem;
  }
}

.staff-post__balloon {
  display: none;
}

@media only screen and (min-width: 480px) {
  .staff-post__balloon {
    width: 12.5vw;
    height: auto;
    display: block;
    position: absolute;
    bottom: -3.125vw;
    right: -18.75vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post__balloon {
    width: 120px;
    bottom: -30px;
    right: -180px;
  }
}

.staff-post__balloon_wide {
  display: none;
}

@media only screen and (min-width: 480px) {
  .staff-post__balloon_wide {
    width: 19.16667vw;
    height: auto;
    display: block;
    position: absolute;
    bottom: 0;
    right: -18.75vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post__balloon_wide {
    width: 160px;
    bottom: 0;
    right: -180px;
  }
}

.staff-post__balloon_sp {
  margin: 0 auto 4.0625vw;
  width: 43.33333vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .staff-post__balloon_sp {
    display: none;
  }
}

.staff-post__header {
  margin: 0 auto 8.125vw;
  width: 85%;
}

@media only screen and (min-width: 480px) {
  .staff-post__header {
    margin-bottom: 5.20833vw;
    width: 100%;
    max-width: 740px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post__header {
    margin-bottom: 50px;
  }
}

.staff-post__header .header__img {
  margin-bottom: 5.41667vw;
  width: 100%;
  align-self: flex-start;
}

@media only screen and (min-width: 480px) {
  .staff-post__header .header__img {
    width: 30%;
    margin-bottom: 0;
  }
}

.staff-post__header .header__text {
  width: 100%;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .staff-post__header .header__text {
    width: 65%;
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post__header .header__text {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.staff-post__row {
  margin-right: -15px;
  margin-left: -15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media only screen and (min-width: 480px) {
  .staff-post__row {
    width: auto;
    justify-content: flex-start;
  }
}

.staff-post__loading {
  display: none;
}

.staff-post__loading img {
  margin: 0 auto;
  width: 30px;
  height: 30px;
  display: block;
}

.staff-post__loading.is-show {
  display: block;
}

.staff-post__col {
  padding: 15px;
  width: 50%;
}

@media only screen and (min-width: 480px) {
  .staff-post__col {
    width: 20%;
  }
}

.staff-post__img {
  margin-bottom: 5.41667vw;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  display: block;
  object-fit: cover;
}

@media only screen and (min-width: 480px) {
  .staff-post__img {
    margin-bottom: 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post__img {
    margin-bottom: 15px;
  }
}

.staff-post__meta {
  margin-bottom: 2.70833vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
  color: #000;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .staff-post__meta {
    margin-bottom: 1.04167vw;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post__meta {
    margin-bottom: 10px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.staff-post__name {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
  color: #000;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0;
}

@media only screen and (min-width: 480px) {
  .staff-post__name {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .staff-post__name {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

/* staff - single
------------------------------------------------------------*/
.staff-single {
  padding-top: 10.83333vw;
  padding-bottom: 13.54167vw;
  padding-right: 20px;
  padding-left: 20px;
  background-color: #faf6f2;
}

@media only screen and (min-width: 480px) {
  .staff-single {
    padding-top: 3.125vw;
    padding-bottom: 7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single {
    padding-top: 30px;
    padding-bottom: 70px;
  }
}

@media only screen and (min-width: 1280px) {
  .staff-single {
    padding-right: 0;
    padding-left: 0;
  }
}

.staff-single__department {
  margin-bottom: 5.41667vw;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .staff-single__department {
    margin-bottom: 2.60417vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single__department {
    margin-bottom: 25px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

.staff-single__img {
  margin: 0 auto 6.77083vw;
  width: 24.375vw;
  height: 24.375vw;
  border-radius: 50%;
  display: block;
}

@media only screen and (min-width: 480px) {
  .staff-single__img {
    margin-bottom: 2.60417vw;
    width: 12.5vw;
    height: 12.5vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single__img {
    margin-bottom: 25px;
    width: 120px;
    height: 120px;
  }
}

.staff-single__meta {
  margin-bottom: 4.0625vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .staff-single__meta {
    margin-bottom: 1.5625vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single__meta {
    margin-bottom: 15px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.staff-single__name {
  margin-bottom: 13.54167vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .staff-single__name {
    margin-bottom: 3.125vw;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single__name {
    margin-bottom: 30px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.staff-single__inner {
  margin: 0 auto 10.83333vw;
  padding-top: 10.83333vw;
  padding-right: 4.0625vw;
  padding-left: 4.0625vw;
  padding-bottom: 10.83333vw;
  background-color: #fff;
  width: 100%;
  max-width: 860px;
}

@media only screen and (min-width: 480px) {
  .staff-single__inner {
    margin-bottom: 4.16667vw;
    padding-top: 4.16667vw;
    padding-bottom: 4.16667vw;
    padding-right: 1.5625vw;
    padding-left: 1.5625vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single__inner {
    margin-bottom: 40px;
    padding-top: 40px;
    padding-bottom: 40px;
    padding-right: 3.64583vw;
    padding-left: 3.64583vw;
  }
}

@media only screen and (min-width: 1280px) {
  .staff-single__inner {
    padding-right: 70px;
    padding-left: 70px;
  }
}

.staff-single__table {
  margin: 0 auto 17.60417vw;
  border-collapse: collapse;
  border-spacing: 1px;
  width: 100%;
  max-width: 550px;
}

@media only screen and (min-width: 480px) {
  .staff-single__table {
    margin-bottom: 6.77083vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single__table {
    margin-bottom: 65px;
  }
}

.staff-single__table tr {
  border-bottom: 1px solid #000;
}

.staff-single__table tr:last-of-type {
  border-bottom: none;
}

.staff-single__table th, .staff-single__table td {
  padding: 4.0625vw 0;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.85714;
}

@media only screen and (min-width: 480px) {
  .staff-single__table th, .staff-single__table td {
    padding: 1.5625vw 0;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.85714;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single__table th, .staff-single__table td {
    padding: 15px 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.staff-single__table th {
  width: 28%;
}

.staff-single__table td {
  width: 72%;
}

.staff-single-posts__heading {
  margin-bottom: 16.25vw;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .staff-single-posts__heading {
    margin-bottom: 6.25vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single-posts__heading {
    margin-bottom: 60px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.staff-single-posts__heading span {
  padding-bottom: 2.70833vw;
  border-bottom: 3px solid #000;
}

@media only screen and (min-width: 480px) {
  .staff-single-posts__heading span {
    padding-bottom: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single-posts__heading span {
    margin-bottom: 10px;
  }
}

@media only screen and (min-width: 480px) {
  .staff-single-posts__row {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}

.staff-single-others__heading {
  margin-bottom: 10.83333vw;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1.75;
  text-align: center;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .staff-single-others__heading {
    margin-bottom: 7.29167vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1.68;
  }
}

@media only screen and (min-width: 960px) {
  .staff-single-others__heading {
    margin-bottom: 70px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 42px;
    line-height: 4.2rem;
  }
}

.staff-single-others__inner {
  margin: 0 auto;
  width: 100%;
  max-width: 780px;
}

.staff-single-others__row {
  margin-right: -15px;
  margin-left: -15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.staff-single-others__col {
  padding: 15px;
  width: 50%;
  display: block;
}

@media only screen and (min-width: 480px) {
  .staff-single-others__col {
    width: 20%;
  }
}

/**
/* page - company
============================================================*/
.l-contents__company {
  padding-bottom: 0;
  overflow-x: hidden;
}

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

.l-contents__company .br-sp {
  display: block;
}

@media only screen and (min-width: 960px) {
  .l-contents__company .br-sp {
    display: none;
  }
}

.l-contents__company .p-button:hover {
  text-decoration: none;
}

.l-contents__company .p-button:hover span {
  opacity: .6;
}

.l-contents__company .p-button span {
  transition: .2s;
}

.l-contents__company em {
  font-weight: bold;
}

/* company common
------------------------------------------------------------*/
.company__heading {
  text-align: center;
  margin-bottom: 40px;
  position: relative;
}

.company__heading--lv1 {
  color: #00316c;
  text-align: center;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  line-height: 1;
  font-size: 50px;
  font-size: 10.41667vw;
  line-height: 1;
  margin-bottom: 10px;
}

@media only screen and (min-width: 480px) {
  .company__heading--lv1 {
    font-size: 110px;
    font-size: 9.16667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .company__heading--lv1 {
    font-size: 110px;
    font-size: 11rem;
    line-height: 110px;
    line-height: 11rem;
  }
}

.company__heading--lv2 {
  font-size: 2.5rem;
  border-bottom: none;
  padding-bottom: 5px;
  border-bottom: 3px solid #00316c;
  font-size: 20px;
  font-size: 4.16667vw;
  line-height: 1.8;
  color: #00316c;
  text-align: center;
  display: inline-block;
  white-space: nowrap;
}

@media only screen and (min-width: 480px) {
  .company__heading--lv2 {
    padding-bottom: 10px;
    font-size: 25px;
    font-size: 2.08333vw;
    line-height: 1.44;
  }
}

@media only screen and (min-width: 960px) {
  .company__heading--lv2 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

/* .company-taoffice
------------------------------------------------------------*/
.company-taoffice {
  text-align: center;
  background: url(assets/images/company/company_bg_01_sp.jpg) no-repeat bottom center;
  background-size: 100% auto;
  position: relative;
  padding-top: 16.25vw;
  padding-bottom: 41.66667vw;
}

@media only screen and (min-width: 480px) {
  .company-taoffice {
    background: url(assets/images/company/company_bg_01.jpg) no-repeat bottom center;
    background-size: 100% auto;
    padding-top: 8.125vw;
    padding-bottom: 32.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-taoffice {
    padding-top: 70px;
    padding-bottom: 38%;
  }
}

.company-taoffice .company__heading p {
  text-align: center;
  color: #00316c;
  font-weight: bold;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .company-taoffice .company__heading p {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .company-taoffice .company__heading p {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 20px;
    line-height: 2rem;
    margin-bottom: 30px;
  }
}

.company-taoffice .company__heading p:before, .company-taoffice .company__heading p:after {
  content: '';
  display: inline-block;
  width: 2.70833vw;
  height: 4.0625vw;
}

@media only screen and (min-width: 480px) {
  .company-taoffice .company__heading p:before, .company-taoffice .company__heading p:after {
    width: 1.35417vw;
    height: 2.03125vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-taoffice .company__heading p:before, .company-taoffice .company__heading p:after {
    width: 20px;
    height: 29px;
  }
}

.company-taoffice .company__heading p:before {
  background: url(assets/images/company/company_line_02.png) no-repeat bottom center;
  background-size: contain;
  margin-right: 10px;
}

.company-taoffice .company__heading p:after {
  background: url(assets/images/company/company_line_01.png) no-repeat bottom center;
  background-size: contain;
  margin-left: 10px;
}

.company-taoffice ul {
  list-style-type: none;
}

.company-taoffice li {
  position: absolute;
  width: 8.54167vw;
}

@media only screen and (min-width: 480px) {
  .company-taoffice li {
    width: 4.27083vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-taoffice li {
    width: 71px;
  }
}

.company-taoffice__lead {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .company-taoffice__lead {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .company-taoffice__lead {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

/* .company-can
------------------------------------------------------------*/
.company-can {
  padding-top: 4.16667vw;
  background: url(assets/images/company/company_bg_05.jpg) repeat left top;
}

@media only screen and (min-width: 960px) {
  .company-can {
    margin-top: -50px;
    transform: rotate(-3deg);
    width: 120%;
    left: -10%;
    position: relative;
  }
  .company-can__wrapper {
    transform: rotate(3deg);
  }
}

.company-can h3 {
  width: 82.70833vw;
  margin: 0 auto;
  margin-bottom: 8.125vw;
  text-align: center;
}

@media only screen and (min-width: 960px) {
  .company-can h3 {
    margin-bottom: 35px;
    width: 340px;
  }
}

.company-can__inner {
  padding-left: 6.45833vw;
  padding-right: 6.45833vw;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media only screen and (min-width: 960px) {
  .company-can__inner {
    max-width: 850px;
    margin: 0 auto;
    padding: 0 20px;
  }
}

.company-can section {
  width: 48%;
  font-weight: bold;
  position: relative;
  padding-top: 16.25vw;
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .company-can section {
    padding-top: 8.125vw;
    margin-bottom: 2.70833vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-can section {
    width: 23%;
    padding-top: 77px;
  }
}

.company-can__num {
  width: 18.14583vw;
  height: 20.04167vw;
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .company-can__num {
    width: 9.07292vw;
    height: 10.02083vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-can__num {
    width: 84px;
    height: 84px;
  }
}

.company-can__num img {
  width: 100%;
  height: auto;
}

.company-can p {
  font-size: 13.5px;
  font-size: 2.8125vw;
  line-height: 1;
  text-align: center;
  letter-spacing: -.01em;
  margin-bottom: 0.8125vw;
}

@media only screen and (min-width: 480px) {
  .company-can p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .company-can p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
  }
}

.company-can p em {
  font-size: 17.6px;
  font-size: 3.66667vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .company-can p em {
    font-size: 17px;
    font-size: 1.77083vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .company-can p em {
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 17px;
    line-height: 1.7rem;
  }
}

.company-can h4 {
  background: #FADF00;
  color: #00316c;
  text-align: center;
  padding: 0.8125vw;
  font-size: 18.7px;
  font-size: 3.89583vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .company-can h4 {
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .company-can h4 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 22px;
    line-height: 2.2rem;
    padding: 5px 10px;
  }
}

/* .company-renewal
------------------------------------------------------------*/
.company-renewal {
  padding-top: 11.375vw;
  background: url(assets/images/company/company_bg_02_sp.jpg) no-repeat center top;
  background-size: 100% auto;
}

@media only screen and (min-width: 960px) {
  .company-renewal {
    background: url(assets/images/company/company_bg_02.jpg) no-repeat center top;
    background-size: 100% auto;
    padding: 90px 0;
    position: relative;
  }
}

.company-renewal .company__heading h2 {
  color: #000;
  font-size: 117px;
  font-size: 24.375vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .company-renewal .company__heading h2 {
    font-size: 90px;
    font-size: 9.375vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .company-renewal .company__heading h2 {
    font-size: 110px;
    font-size: 11rem;
    line-height: 110px;
    line-height: 11rem;
  }
}

.company-renewal .company__heading h3 {
  color: #000;
}

.company-renewal__inner {
  padding: 6.77083vw;
  padding-top: 0;
  position: relative;
}

@media only screen and (min-width: 960px) {
  .company-renewal__inner {
    max-width: 720px;
    width: 100%;
    margin: 0 auto;
    padding: 0;
    position: relative;
  }
}

@media only screen and (min-width: 960px) {
  .company-renewal__col {
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 960px) {
  .company-renewal__col > * {
    width: 48%;
  }
}

.company-renewal__illu {
  text-align: right;
}

@media only screen and (min-width: 960px) {
  .company-renewal__illu {
    position: absolute;
    top: -170px;
    right: 0;
  }
}

.company-renewal__illu img {
  width: 41.97917vw;
}

@media only screen and (min-width: 480px) {
  .company-renewal__illu img {
    width: 20.98958vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-renewal__illu img {
    width: 194px;
    height: 174px;
  }
}

.company-renewal p {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  padding: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .company-renewal p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
    padding: 1.35417vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-renewal p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
    padding: 50px 0 0 0;
  }
}

/* .company-feature
------------------------------------------------------------*/
.company-feature {
  background: url(assets/images/company/company_bg_03.jpg) repeat left top;
  transform: rotate(-2deg);
  width: 120%;
  left: -10%;
  position: relative;
}

@media only screen and (min-width: 960px) {
  .company-feature {
    padding: 70px 40px;
    transform: rotate(-3deg);
    position: relative;
    margin-top: -30px;
    width: 120%;
    left: -10%;
  }
}

.company-feature__wrapper {
  transform: rotate(2deg);
  padding-top: 12.5vw;
  padding-left: 14.58333vw;
  padding-right: 14.58333vw;
  padding-bottom: 14.58333vw;
}

@media only screen and (min-width: 480px) {
  .company-feature__wrapper {
    padding: 12.5vw;
    padding-top: 10.41667vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature__wrapper {
    transform: rotate(3deg);
    padding: 0 80px 80px;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature .company__heading {
    margin-bottom: 50px;
  }
}

.company-feature .company__heading p {
  width: 57.6875vw;
  margin: 0 auto;
  position: relative;
  top: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .company-feature .company__heading p {
    width: 28.84375vw;
    top: 2.70833vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature .company__heading p {
    width: 304px;
    top: 20px;
  }
}

.company-feature .company__heading h2 {
  color: #000;
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .company-feature .company__heading h2 {
    font-size: 23.4px;
    font-size: 2.4375vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature .company__heading h2 {
    font-size: 2.6rem;
  }
}

.company-feature .company__heading h2 em {
  font-size: 100px;
  font-size: 20.83333vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .company-feature .company__heading h2 em {
    font-size: 100px;
    font-size: 10.41667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature .company__heading h2 em {
    font-size: 11rem;
    margin-right: 5px;
  }
}

.company-feature .company__heading h2 .img-ta {
  width: 24.64583vw;
  margin-left: 1.45833vw;
}

@media only screen and (min-width: 480px) {
  .company-feature .company__heading h2 .img-ta {
    width: 12.32292vw;
    margin-left: 0.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature .company__heading h2 .img-ta {
    width: 130px;
    margin-left: 0;
  }
}

.company-feature .company__heading h2 .img-en {
  width: 29.79167vw;
  margin-left: 3.54167vw;
}

@media only screen and (min-width: 480px) {
  .company-feature .company__heading h2 .img-en {
    width: 14.89583vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature .company__heading h2 .img-en {
    width: 158px;
    margin-left: 20px;
  }
}

.company-feature .company__heading h3 {
  color: #000;
}

.company-feature__inner {
  background: #fff;
  padding-top: 37.5vw;
  padding-left: 8.125vw;
  padding-right: 8.125vw;
  margin-top: -37.5vw;
}

@media only screen and (min-width: 480px) {
  .company-feature__inner {
    padding-top: 22.91667vw;
    padding-left: 4.0625vw;
    padding-right: 4.0625vw;
    margin-top: -21.875vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature__inner {
    max-width: 830px;
    width: 100%;
    margin: -170px auto 0;
    padding: 190px 60px 15px;
  }
}

.company-feature__num {
  width: 16.25vw;
  position: absolute;
  top: -3.52083vw;
  left: -3.52083vw;
  z-index: 2;
}

@media only screen and (min-width: 480px) {
  .company-feature__num {
    width: 8.125vw;
    top: -1.76042vw;
    left: -1.76042vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature__num {
    width: 72px;
    top: -23px;
    left: -23px;
  }
}

.company-feature section {
  position: relative;
  padding-bottom: 13.54167vw;
}

@media only screen and (min-width: 480px) {
  .company-feature section {
    padding-bottom: 6.77083vw;
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature section {
    padding-bottom: 65px;
  }
}

@media only screen and (min-width: 480px) {
  .company-feature section:nth-child(even) {
    flex-direction: row-reverse;
  }
}

@media only screen and (min-width: 480px) {
  .company-feature section:nth-child(even) .company-feature__num {
    left: auto;
    right: -2.27083vw;
  }
}

.company-feature section h4 {
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1;
  position: relative;
  line-height: 12.08333vw;
  padding-left: 14.58333vw;
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .company-feature section h4 {
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
    line-height: 6.04167vw;
    margin-bottom: 2.60417vw;
    padding-left: 7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature section h4 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
    line-height: 48px;
    padding-left: 55px;
    margin-bottom: 30px;
  }
}

.company-feature section h4 .img-ta {
  width: 12.08333vw;
  position: absolute;
  left: 0;
}

@media only screen and (min-width: 480px) {
  .company-feature section h4 .img-ta {
    width: 6.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature section h4 .img-ta {
    width: 48px;
  }
}

.company-feature section p {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .company-feature section p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature section p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

@media only screen and (min-width: 480px) {
  .company-feature__thumb {
    width: 30%;
  }
}

@media only screen and (min-width: 768px) {
  .company-feature__thumb {
    width: 38%;
  }
}

@media only screen and (min-width: 960px) {
  .company-feature__thumb {
    width: 36%;
  }
}

@media only screen and (min-width: 480px) {
  .company-feature__txt {
    width: calc(100% - 34%);
  }
}

@media only screen and (min-width: 768px) {
  .company-feature__txt {
    width: calc(100% - 40%);
  }
}

@media only screen and (min-width: 960px) {
  .company-feature__txt {
    margin-top: -30px;
    width: calc(100% - 45%);
  }
}

/* .company-negai
------------------------------------------------------------*/
.company-negai {
  padding-top: 18.14583vw;
  padding-left: 8.125vw;
  padding-right: 8.125vw;
  padding-bottom: 21.66667vw;
  background: #FAF6F2;
  margin-top: -30px;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .company-negai {
    padding-top: 9.07292vw;
    padding-left: 4.0625vw;
    padding-right: 4.0625vw;
    padding-bottom: 10.83333vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-negai {
    transform: rotate(-3deg);
    width: 120%;
    left: -10%;
  }
  .company-negai__wrapper {
    transform: rotate(3deg);
  }
}

.company-negai h2 {
  font-size: 22px;
  font-size: 4.58333vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .company-negai h2 {
    font-size: 22px;
    font-size: 2.29167vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .company-negai h2 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

.company-negai h2 em {
  font-size: 40.3px;
  font-size: 8.39583vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .company-negai h2 em {
    font-size: 40.3px;
    font-size: 4.19792vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .company-negai h2 em {
    font-size: 45px;
    font-size: 4.5rem;
    line-height: 45px;
    line-height: 4.5rem;
    display: inline-block;
    margin: 0 10px;
  }
}

.company-negai__inner {
  position: relative;
}

@media only screen and (min-width: 960px) {
  .company-negai__inner {
    max-width: 650px;
    margin: 0 auto;
  }
}

.company-negai .img {
  line-height: 0;
  margin-bottom: 8.125vw;
  text-align: center;
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .company-negai .img {
    margin-bottom: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-negai .img {
    width: 100%;
  }
}

.company-negai .img img {
  width: 100%;
  height: auto;
}

.company-negai__circle {
  width: 35.20833vw;
  line-height: 0;
  position: absolute;
  right: -2.70833vw;
  top: 37.5vw;
  padding: 0 !important;
  z-index: 2;
}

@media only screen and (min-width: 480px) {
  .company-negai__circle {
    width: 17.60417vw;
    right: -1.04167vw;
    top: 59.375vw;
  }
}

@media only screen and (min-width: 768px) {
  .company-negai__circle {
    top: 35.20209vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-negai__circle {
    width: 170px;
    height: 170px;
    top: -130px;
    right: -130px;
  }
}

@media only screen and (min-width: 960px) {
  .company-negai .txt {
    z-index: 1;
    width: 300px;
    margin-left: 250px;
    position: absolute;
    top: 10px;
  }
}

.company-negai ol {
  padding: 0;
  list-style-type: none;
  counter-reset: item;
}

.company-negai ol li {
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 1;
  background: #fff;
  margin-bottom: 2.70833vw;
  padding: 2.70833vw;
  padding-left: 16.25vw;
  line-height: 3.3rem;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .company-negai ol li {
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 1;
    padding: 1.04167vw;
    padding-left: 7.29167vw;
    margin-bottom: 1.45833vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-negai ol li {
    font-size: 1.8rem;
    padding: 14px 10px 14px 60px;
    margin-bottom: 10px;
  }
}

.company-negai ol li:last-child {
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .company-negai ol li:last-child {
    margin-bottom: 4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-negai ol li:last-child {
    margin-bottom: 15px;
  }
}

.company-negai ol li:before {
  counter-increment: item;
  content: counter(item, decimal-leading-zero);
  display: inline-block;
  margin-right: 3px;
  font-family: 'futura-pt', sans-serif;
  font-size: 42.9px;
  font-size: 8.9375vw;
  line-height: 1;
  font-weight: 700;
  color: #00316c;
  position: absolute;
  left: 2.70833vw;
  top: 50%;
  transform: translateY(-50%);
}

@media only screen and (min-width: 480px) {
  .company-negai ol li:before {
    font-size: 33px;
    font-size: 3.4375vw;
    line-height: 1;
    left: 1.5625vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-negai ol li:before {
    font-size: 3.3rem;
    left: 10px;
  }
}

.company-negai p {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  font-weight: bold;
  color: #00316c;
  padding-left: 6.66667vw;
  padding-right: 6.66667vw;
}

@media only screen and (min-width: 480px) {
  .company-negai p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
    padding-top: 0;
    padding-left: 2.60417vw;
    padding-right: 2.60417vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-negai p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
    padding: 20px;
  }
}

/* .company-story
------------------------------------------------------------*/
.company-story {
  background: url(assets/images/company/company_bg_05.jpg) repeat left top;
  padding-bottom: 21.66667vw;
}

@media only screen and (min-width: 480px) {
  .company-story {
    padding-bottom: 6.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-story {
    padding-bottom: 40px;
    position: relative;
    margin-top: -50px;
  }
}

.company-story .company__heading {
  top: -4.16667vw;
  margin-bottom: 0;
}

.company-story h2 {
  position: relative;
}

.company-story h2 img {
  width: 16.25vw;
  top: 1.04167vw;
  padding-left: 2.70833vw;
  position: absolute;
}

@media only screen and (min-width: 480px) {
  .company-story h2 img {
    width: 8.125vw;
    top: 1.35417vw;
    padding-left: 1.5625vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-story h2 img {
    width: 107px;
    top: 30px;
  }
}

.company-story__inner {
  padding-left: 20px;
  padding-right: 20px;
}

@media only screen and (min-width: 480px) {
  .company-story__inner {
    max-width: 750px;
    padding: 0 20px;
    margin: 0 auto;
  }
}

.company-story__lead {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2;
  margin-bottom: 8.125vw;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .company-story__lead {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
    margin-bottom: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-story__lead {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
    margin-bottom: 30px;
  }
}

.company-story__row {
  margin-right: -15px;
  margin-left: -15px;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.company-story__col {
  padding: 15px;
  width: 50%;
  display: block;
}

@media only screen and (min-width: 480px) {
  .company-story__col {
    width: calc(100% / 3);
  }
}

.company-story__date {
  font-size: 12.8px;
  font-size: 2.66667vw;
  line-height: 1;
  margin-bottom: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .company-story__date {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .company-story__date {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
    margin-bottom: 10px;
  }
}

.company-story__heading {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.57143;
}

@media only screen and (min-width: 480px) {
  .company-story__heading {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.57143;
  }
}

@media only screen and (min-width: 960px) {
  .company-story__heading {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

/* .company-recruit
------------------------------------------------------------*/
.company-recruit {
  background: #00316c;
}

.company-recruit__img {
  line-height: 0;
}

.company-recruit h2 {
  line-height: 0;
  text-align: center;
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .company-recruit h2 {
    margin-bottom: 2.1875vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-recruit h2 {
    margin-bottom: 28px;
  }
}

.company-recruit h2 img {
  width: 76.64583vw;
}

@media only screen and (min-width: 480px) {
  .company-recruit h2 img {
    width: 34.79167vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-recruit h2 img {
    width: 339px;
  }
}

.company-recruit h3 {
  color: #fff;
  border-color: #fff;
}

.company-recruit .company__heading {
  margin-top: -3.52083vw;
}

@media only screen and (min-width: 960px) {
  .company-recruit .company__heading {
    margin-bottom: 25px;
    margin-top: -13px;
  }
}

.company-recruit__inner {
  text-align: center;
  padding-left: 8.125vw;
  padding-right: 8.125vw;
  padding-bottom: 8.125vw;
}

@media only screen and (min-width: 960px) {
  .company-recruit__inner {
    padding-bottom: 35px;
  }
}

.company-recruit__inner p {
  color: #fff;
  text-align: center;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  margin-bottom: 9.47917vw;
}

@media only screen and (min-width: 480px) {
  .company-recruit__inner p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
    margin-bottom: 6.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-recruit__inner p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 30px;
    line-height: 3rem;
    margin-bottom: 45px;
  }
}

.company-recruit .p-button {
  width: 54.16667vw;
  line-height: 12.5vw;
  margin: 0 auto;
}

@media only screen and (min-width: 480px) {
  .company-recruit .p-button {
    width: 20.83333vw;
    line-height: 6.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .company-recruit .p-button {
    width: 220px;
    line-height: 64px;
    margin: 0 auto;
  }
}

/**
/* page - about
============================================================*/
.l-contents__history {
  padding-bottom: 0;
}

/* history common
------------------------------------------------------------*/
#history .br-pc {
  display: none;
}

@media only screen and (min-width: 960px) {
  #history .br-pc {
    display: block;
  }
}

#history .index-sec7__heading {
  background: #fff;
}

#history .index-sec7__heading span {
  color: #000;
  border-bottom: 3px solid #000;
}

#history .index-sec7__inner:before {
  content: '';
  display: inline-block;
  width: 200px;
  height: 10px;
  background: #fff;
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%);
}

#history .index-sec7__inner:after {
  content: '';
  display: inline-block;
  width: 1px;
  background: #000;
  position: absolute;
  left: 50%;
  height: 20.83333vw;
  bottom: -20.83333vw;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  #history .index-sec7__inner:after {
    height: 14.58333vw;
    bottom: -14.58333vw;
  }
}

@media only screen and (min-width: 960px) {
  #history .index-sec7__inner:after {
    bottom: -140px;
    height: 140px;
  }
}

.history__heading {
  margin-bottom: 40px;
  position: relative;
  margin-bottom: 8.33333vw;
  font-size: 24px;
  font-size: 5vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .history__heading {
    margin-bottom: 4.16667vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .history__heading {
    margin-bottom: 120px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

.history__heading span {
  position: relative;
  border-bottom: 3px solid #000;
}

/* .history-year
------------------------------------------------------------*/
.history-year {
  padding: 21.66667vw 0;
  background: #faf6f2;
}

@media only screen and (min-width: 480px) {
  .history-year {
    padding: 9.375vw 0;
  }
}

@media only screen and (min-width: 960px) {
  .history-year {
    padding: 90px 0 200px 0;
  }
}

.history-year .history__heading {
  margin-bottom: 80px;
}

@media only screen and (min-width: 960px) {
  .history-year .history__heading {
    margin-bottom: 130px;
  }
}

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

.history-year p {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .history-year p {
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .history-year p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.history-year__container {
  padding: 8.125vw;
}

@media only screen and (min-width: 480px) {
  .history-year__container {
    padding: 5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__container {
    max-width: 820px;
    margin: 0 auto;
    padding: 0 30px;
  }
}

.history-year__sec {
  position: relative;
  z-index: 1;
  padding-left: 8.125vw;
  padding-bottom: 24.375vw;
}

@media only screen and (min-width: 480px) {
  .history-year__sec {
    padding-bottom: 12.5vw;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__sec {
    max-width: 820px;
    padding-left: 100px;
    padding-bottom: 120px;
  }
}

.history-year__sec:before {
  width: 1px;
  height: 100%;
  background: #000;
  content: '';
  position: absolute;
  display: inline-block;
  left: 0;
  top: 37px;
}

.history-year__sec:after {
  content: '';
  display: inline-block;
  background: #000;
  position: absolute;
  top: 8.125vw;
  left: -4.0625vw;
  width: 8.125vw;
  height: 8.125vw;
  border-radius: 100%;
}

@media only screen and (min-width: 480px) {
  .history-year__sec:after {
    top: 3.75vw;
    left: -1.875vw;
    width: 3.75vw;
    height: 3.75vw;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__sec:after {
    width: 36px;
    height: 36px;
    border-radius: 18px;
    left: -18px;
    top: 30px;
  }
}

.history-year__l .history-year__heading--lv1 {
  font-size: 91px;
  font-size: 18.95833vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .history-year__l .history-year__heading--lv1 {
    font-size: 110px;
    font-size: 11.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__l .history-year__heading--lv1 {
    font-size: 110px;
    font-size: 8.59375vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 1280px) {
  .history-year__l .history-year__heading--lv1 {
    font-size: 110px;
    font-size: 11rem;
    line-height: 110px;
    line-height: 11rem;
    margin-bottom: 10px;
  }
}

.history-year__m .history-year__heading--lv1, .history-year__s .history-year__heading--lv1 {
  font-size: 91px;
  font-size: 18.95833vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .history-year__m .history-year__heading--lv1, .history-year__s .history-year__heading--lv1 {
    font-size: 110px;
    font-size: 11.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__m .history-year__heading--lv1, .history-year__s .history-year__heading--lv1 {
    font-size: 110px;
    font-size: 8.59375vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 1280px) {
  .history-year__m .history-year__heading--lv1, .history-year__s .history-year__heading--lv1 {
    font-size: 80px;
    font-size: 8rem;
    line-height: 80px;
    line-height: 8rem;
    margin-bottom: 10px;
  }
}

.history-year__heading--lv1 {
  color: #000000;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  line-height: 1;
  font-size: 156px;
  font-size: 32.5vw;
  line-height: 1;
}

.history-year__heading--lv2 {
  border-bottom: none;
  padding-bottom: 5px;
  border-bottom: 3px solid #00316c;
  color: #000;
  display: inline-block;
  margin-bottom: 8.125vw;
  margin-top: 5.41667vw;
  font-size: 31px;
  font-size: 6.45833vw;
  line-height: 1;
  word-wrap: break-word;
}

@media only screen and (min-width: 480px) {
  .history-year__heading--lv2 {
    font-size: 30px;
    font-size: 3.125vw;
    line-height: 1;
    margin-bottom: 3.125vw;
    margin-top: 2.60417vw;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__heading--lv2 {
    font-size: 30px;
    font-size: 3rem;
    line-height: 30px;
    line-height: 3rem;
    margin-bottom: 30px;
    margin-top: 25px;
  }
}

.history-year__heading--year {
  color: #ccc;
  font-size: 14px;
  font-size: 2.91667vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .history-year__heading--year {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__heading--year {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.history-year__heading + .history-year__content {
  margin-top: 20px;
}

@media only screen and (min-width: 960px) {
  .history-year__heading + .history-year__content {
    margin-top: 0;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__row {
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__row-s {
    width: 90%;
  }
}

.history-year__title {
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 960px) {
  .history-year__title {
    width: 48%;
    margin-bottom: 0;
  }
}

.history-year__title h4 {
  font-size: 31px;
  font-size: 6.45833vw;
  line-height: 1.6129;
}

@media only screen and (min-width: 480px) {
  .history-year__title h4 {
    font-size: 30px;
    font-size: 3.125vw;
    line-height: 1.66667;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__title h4 {
    font-size: 30px;
    font-size: 3rem;
    line-height: 50px;
    line-height: 5rem;
    padding-top: 20px;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__content {
    width: 47%;
  }
}

.history-year__content + .history-year__content {
  margin-top: 20px;
}

@media only screen and (min-width: 960px) {
  .history-year__content + .history-year__content {
    margin-top: 0;
  }
}

.history-year__content + .history-year__title {
  margin-top: 20px;
}

@media only screen and (min-width: 960px) {
  .history-year__content + .history-year__title {
    margin-top: 0;
  }
}

.history-year__img {
  margin-top: 5.41667vw;
  text-align: center;
}

@media only screen and (min-width: 960px) {
  .history-year__img {
    width: 48%;
    margin-top: 0;
  }
}

.history-year__img div + div {
  margin-top: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .history-year__img div + div {
    margin-top: 4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__img div + div {
    margin-top: 20px;
  }
}

.history-year__img img {
  max-width: 360px;
  width: 100%;
  height: auto;
}

.history-year__spimg {
  display: block;
}

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

.history-year__pcimg {
  display: none;
}

@media only screen and (min-width: 960px) {
  .history-year__pcimg {
    display: block;
  }
}

.history-year__w .history-year__inner {
  background: #fff;
  position: relative;
  border: 1px dotted #ccc;
  padding: 13.54167vw 5.41667vw 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .history-year__w .history-year__inner {
    padding: 5.72917vw 3.64583vw 3.64583vw;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__w .history-year__inner {
    padding: 55px 35px 35px;
  }
}

.history-year__w h4 {
  width: 28.125vw;
  height: 27.08333vw;
  position: absolute;
  top: -18.75vw;
  left: -5.41667vw;
}

@media only screen and (min-width: 480px) {
  .history-year__w h4 {
    width: 13.54167vw;
    height: 12.8125vw;
    top: -7.29167vw;
    left: -5.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__w h4 {
    width: 130px;
    height: 123px;
    top: -67px;
    left: -55px;
  }
}

.history-year__w h5 {
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1;
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .history-year__w h5 {
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
    margin-bottom: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__w h5 {
    font-size: 2rem;
    margin-bottom: 30px;
  }
}

.history-year__w p {
  margin-bottom: 5.41667vw;
}

.history-year h4 {
  font-size: 31px;
  font-size: 6.45833vw;
  line-height: 1.6129;
}

@media only screen and (min-width: 480px) {
  .history-year h4 {
    font-size: 30px;
    font-size: 3.125vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .history-year h4 {
    font-size: 30px;
    font-size: 3rem;
    line-height: 30px;
    line-height: 3rem;
  }
}

.history-year__tiy {
  background: #FADF00;
  color: #00316c;
  text-align: center;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 13px;
  line-height: 1.3rem;
  padding: 10px;
}

.history-year__img {
  text-align: center;
}

.history-year__cap {
  font-weight: bold;
  text-align: center;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
  margin-bottom: 0 !important;
}

@media only screen and (min-width: 480px) {
  .history-year__cap {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.42857;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__cap {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.history-year__column3 {
  text-align: center;
  margin-top: -16.04167vw;
}

@media only screen and (min-width: 480px) {
  .history-year__column3 {
    margin-top: -8.02083vw;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__column3 {
    margin-top: -60px;
  }
}

.history-year__column3 .history-year__inner {
  padding-bottom: 8.125vw;
}

@media only screen and (min-width: 960px) {
  .history-year__column3 .history-year__inner {
    padding-bottom: 35px;
  }
}

@media only screen and (min-width: 768px) {
  .history-year__column3 .history-year__row {
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__column3 .history-year__img {
    margin-top: 0;
    width: 100%;
  }
}

@media only screen and (min-width: 768px) {
  .history-year__item {
    width: 32%;
  }
}

.history-year__item h6 {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  margin: 10px 0;
}

@media only screen and (min-width: 480px) {
  .history-year__item h6 {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__item h6 {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.history-year__item p {
  margin-bottom: 0;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .history-year__item p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__item p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.history-year__item + .history-year__item {
  margin-top: 20px;
}

@media only screen and (min-width: 768px) {
  .history-year__item + .history-year__item {
    margin-top: 0;
  }
}

.history-year__list {
  list-style-type: none;
  padding-left: 0;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .history-year__list {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.42857;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__list {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.history-year__list li {
  margin-bottom: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .history-year__list li {
    margin-bottom: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__list li {
    margin-bottom: 10px;
  }
}

.history-year__list dl {
  display: flex;
}

.history-year__list dt {
  padding-right: 10px;
}

@media only screen and (min-width: 960px) {
  .history-year__list dt {
    width: 80px;
    padding-right: 0;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__list dd {
    width: calc(100% - 90px);
  }
}

.history-year__arrow {
  max-width: 300px;
  width: 96%;
  position: absolute;
  top: -57px;
}

@media only screen and (min-width: 960px) {
  .history-year__arrow {
    max-width: 360px;
    top: -70px;
    left: 200px;
  }
}

.history-year__illu01 {
  position: absolute;
  width: 74px;
  height: 65px;
  left: -40px;
  bottom: -40px;
}

@media only screen and (min-width: 480px) {
  .history-year__illu01 {
    width: 148px;
    height: 130px;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__illu01 {
    bottom: -30px;
  }
}

.history-year__illu02 {
  position: absolute;
  width: 83px;
  height: 60px;
  right: 0;
  bottom: -40px;
}

@media only screen and (min-width: 480px) {
  .history-year__illu02 {
    width: 167px;
    height: 120px;
    bottom: -60px;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__illu02 {
    bottom: -30px;
    right: -30px;
  }
}

.history-year__illu03 {
  position: absolute;
  width: 88px;
  height: 57px;
  right: 20px;
  bottom: -50px;
}

@media only screen and (min-width: 480px) {
  .history-year__illu03 {
    width: 176px;
    height: 115px;
    bottom: -80px;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__illu03 {
    top: -70px;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__top {
    margin-top: -50px;
  }
}

@media only screen and (min-width: 1280px) {
  .history-year__top {
    margin-top: -165px;
    z-index: 0;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__top .history-year__content + .history-year__content {
    padding-top: 50px;
  }
}

.history-year__txt h4 {
  font-size: 31px;
  font-size: 6.45833vw;
  line-height: 1.6129;
}

@media only screen and (min-width: 480px) {
  .history-year__txt h4 {
    font-size: 30px;
    font-size: 3.125vw;
    line-height: 1.66667;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__txt h4 {
    padding-top: 20px;
    font-size: 21px;
    font-size: 2.1rem;
    line-height: 42px;
    line-height: 4.2rem;
  }
}

.history-year__txt p {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .history-year__txt p {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__txt p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__mb0 p {
    margin-bottom: 0;
  }
}

.history-year__button {
  margin: 20px auto 0;
  width: 220px;
  font-size: 21px;
  font-size: 4.375vw;
  line-height: 3.42857;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #000;
  transition: .3s;
}

@media only screen and (min-width: 480px) {
  .history-year__button {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 3.375;
  }
}

@media only screen and (min-width: 960px) {
  .history-year__button {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 54px;
    line-height: 5.4rem;
  }
}

.history-year__button:hover {
  text-decoration: none;
  opacity: .7;
}

.history-year__item:hover {
  text-decoration: none;
  opacity: .7;
}

/* #history-dna
------------------------------------------------------------*/
#history-dna {
  background: #fff;
  position: relative;
}

#history-dna .history-year__arrow {
  position: relative;
  margin: 0 auto;
  left: 0;
  top: 0;
  max-width: 280px;
  margin-bottom: 15px;
}

@media only screen and (min-width: 960px) {
  #history-dna .history-year__arrow {
    width: 360px;
    margin-bottom: 15px;
  }
}

#history-dna .history-year__arrow img {
  max-width: 100%;
}

.history__commingsoon {
  font-size: 60px;
  font-size: 6rem;
  line-height: 65px;
  line-height: 6.5rem;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .history__commingsoon {
    font-size: 120px;
    font-size: 12rem;
    line-height: 120px;
    line-height: 12rem;
  }
}

.hsitory_line {
  position: relative;
  position: relative;
  position: relative;
}

.hsitory_line::before {
  content: '';
  width: 100px;
  height: 50px;
  background-color: #fff;
  display: block;
  position: absolute;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 768px) {
  .hsitory_line::before {
    width: 200px;
  }
}

.hsitory_line::after {
  content: '';
  width: 1px;
  height: 120px;
  background-color: #000;
  display: block;
  position: absolute;
  top: -70px;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 768px) {
  .hsitory_line::after {
    height: 150px;
    top: -100px;
  }
}

/**
/* page - blog
============================================================*/
/* blog - 共通
------------------------------------------------------------*/
.blog__heading {
  margin-bottom: 27.08333vw;
  font-size: 84.5px;
  font-size: 17.60417vw;
  line-height: 0.84615;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
  text-transform: uppercase;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .blog__heading {
    margin-bottom: 13.54167vw;
    font-size: 110px;
    font-size: 11.45833vw;
    line-height: 0.90909;
  }
}

@media only screen and (min-width: 960px) {
  .blog__heading {
    margin-bottom: 130px;
    font-size: 110px;
    font-size: 11rem;
    line-height: 100px;
    line-height: 10rem;
  }
}

.blog__heading span {
  padding-bottom: 2.70833vw;
  font-size: 16.25px;
  font-size: 3.38542vw;
  line-height: 1.6;
  border-bottom: 2px solid #00316c;
  display: inline-block;
  position: absolute;
  letter-spacing: 0;
  bottom: -17.60417vw;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .blog__heading span {
    padding-bottom: 1.04167vw;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
    bottom: -5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog__heading span {
    padding-bottom: 10px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
    bottom: -50px;
  }
}

.blog__heading_small {
  font-size: 58.5px;
  font-size: 12.1875vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .blog__heading_small {
    font-size: 143px;
    font-size: 14.89583vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .blog__heading_small {
    font-size: 110px;
    font-size: 11rem;
    line-height: 110px;
    line-height: 11rem;
  }
}

.blog__heading_archive {
  margin-bottom: 13.54167vw;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .blog__heading_archive {
    margin-bottom: 5.20833vw;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .blog__heading_archive {
    margin-bottom: 50px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.blog__heading_archive span {
  padding-bottom: 2.70833vw;
  border-bottom: 2px solid #00316c;
}

@media only screen and (min-width: 480px) {
  .blog__heading_archive span {
    padding-bottom: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog__heading_archive span {
    padding-bottom: 10px;
  }
}

.blog__inner {
  margin: 0 auto;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  max-width: 740px;
}

@media only screen and (min-width: 1280px) {
  .blog__inner {
    padding-right: 0;
    padding-left: 0;
  }
}

/* blog - structure
------------------------------------------------------------*/
.l-wrapper__blog {
  width: 100%;
  position: relative;
}

.l-contents__blog {
  padding-bottom: 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

/* blog - header
------------------------------------------------------------*/
.blog-header {
  width: 100%;
  background-color: rgba(7, 48, 118, 0.8);
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
}

@media only screen and (min-width: 768px) {
  .blog-header {
    padding-right: 1.95312vw;
    padding-left: 1.95312vw;
    display: flex !important;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
}

@media only screen and (min-width: 960px) {
  .blog-header {
    padding: 0 25px;
  }
}

.blog-contents {
  width: 100%;
  background-color: #faf6f2;
}

@media only screen and (min-width: 768px) {
  .blog-contents {
    width: calc(100% - 28vw);
  }
}

@media only screen and (min-width: 960px) {
  .blog-contents {
    width: calc(100% - 285px);
  }
}

.blog-contents_category {
  padding-top: 10.41667vw;
  background-color: #fff;
}

@media only screen and (min-width: 480px) {
  .blog-contents_category {
    padding-top: 5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-contents_category {
    padding-top: 50px;
  }
}

.blog-contents_single {
  background-color: #fff;
}

/* blog - global
------------------------------------------------------------*/
.blog-logo {
  margin-right: 3.125vw;
  width: 3.75vw;
  display: block;
}

@media only screen and (min-width: 1280px) {
  .blog-logo {
    margin-right: 40px;
    width: 48px;
  }
}

.blog-logo a {
  display: block;
}

.blog-logo img {
  width: 100%;
  height: auto;
  display: block;
}

.blog-global {
  display: none;
}

@media only screen and (min-width: 768px) {
  .blog-global {
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
  }
}

.blog-global ul {
  list-style-type: none;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.blog-global ul li {
  position: relative;
}

.blog-global ul li::before {
  content: '';
  width: 1px;
  height: 2.08333vw;
  background-color: #fff;
  display: block;
  position: absolute;
  top: -3px;
  left: 0;
}

.blog-global ul li:last-of-type {
  position: relative;
}

.blog-global ul li:last-of-type::after {
  content: '';
  width: 1px;
  height: 2.08333vw;
  background-color: #fff;
  display: block;
  position: absolute;
  top: -3px;
  right: 0;
}

@media only screen and (min-width: 960px) {
  .blog-global ul li::before, .blog-global ul li::after {
    height: 1.5625vw;
  }
}

@media only screen and (min-width: 1280px) {
  .blog-global ul li {
    position: relative;
  }
  .blog-global ul li::before, .blog-global ul li::after {
    height: 20px;
  }
}

.blog-global ul li a {
  padding: 0 1.17188vw;
  font-size: 10px;
  font-size: 0.78125vw;
  line-height: 1;
  color: #ccc;
  text-align: center;
  font-weight: bold;
  display: block;
}

.blog-global ul li a::after {
  content: '';
  margin: 0 auto;
  width: 60%;
  height: 2px;
  background-color: #ffe86c;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -10px;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: 0.5s transform cubic-bezier(0.52, 0.08, 0.18, 1);
}

.blog-global ul li a:hover {
  text-decoration: none;
  opacity: 1;
}

.blog-global ul li a:hover::after {
  transform: scale(1, 1);
  transform-origin: left top;
}

@media only screen and (min-width: 960px) {
  .blog-global ul li a {
    padding: 0 1.5625vw;
  }
}

@media only screen and (min-width: 1280px) {
  .blog-global ul li a {
    padding: 0 20px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 10px;
    line-height: 1rem;
  }
}

.blog-global ul li a span {
  padding-bottom: 10px;
  font-size: 16px;
  font-size: 1.25vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #fff;
  display: block;
}

@media only screen and (min-width: 1280px) {
  .blog-global ul li a span {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

/* blog - header item
------------------------------------------------------------*/
.blog-header__item {
  display: none;
}

@media only screen and (min-width: 768px) {
  .blog-header__item {
    padding: 1.5625vw 0;
    display: block;
    top: 2.34375vw;
    right: 0;
  }
}

@media only screen and (min-width: 960px) {
  .blog-header__item {
    padding: 20px 0;
    top: 30px;
  }
}

.blog-header__tel {
  margin-bottom: 0.78125vw;
  font-size: 20px;
  font-size: 1.5625vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #fff;
  text-align: center;
  position: relative;
}

.blog-header__tel::before {
  content: '';
  margin-right: 5px;
  width: 22px;
  height: 22px;
  background-image: url(assets/images/common/icon_tel_white.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: inline-block;
  position: relative;
  top: 2px;
}

@media only screen and (min-width: 960px) {
  .blog-header__tel {
    margin-bottom: 10px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.blog-header__biztime {
  margin-bottom: 0.78125vw;
  font-size: 11px;
  font-size: 0.85938vw;
  line-height: 1;
  color: #fff;
  text-align: center;
}

@media only screen and (min-width: 960px) {
  .blog-header__biztime {
    margin-bottom: 10px;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem;
  }
}

.blog-header__sns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.blog-header__sns a {
  margin: 0 10px;
  width: 2.34375vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 1280px) {
  .blog-header__sns a {
    width: 30px;
  }
}

.blog-header__sns a img {
  width: 100%;
  height: auto;
  display: block;
}

/* blog - hero
------------------------------------------------------------*/
.blog-hero {
  width: 100%;
  height: calc(100vh - 135px);
  position: relative;
}

@media only screen and (min-width: 480px) {
  .blog-hero {
    height: 50vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero {
    height: 480px;
  }
}

.blog-hero__inner {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 2;
}

@media only screen and (min-width: 480px) {
  .blog-hero__inner {
    padding-top: 5.72917vw;
    padding-bottom: 17.70833vw;
    padding-left: 7.29167vw;
    width: 43.22917vw;
    background-image: url(assets/images/blog/blog_hero_heading_bg.png);
    background-size: 6px 6px;
    top: 1.04167vw;
    transform: translateY(0);
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__inner {
    padding-top: 55px;
    padding-bottom: 170px;
    padding-left: 70px;
    width: 415px;
    top: 10px;
  }
}

.blog-hero__logo {
  margin: 0 auto;
  width: 14.89583vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .blog-hero__logo {
    display: none;
  }
}

.blog-hero__heading {
  margin-bottom: 2.70833vw;
  font-size: 71.5px;
  font-size: 14.89583vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #fff;
  text-align: center;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
}

@media only screen and (min-width: 480px) {
  .blog-hero__heading {
    margin-bottom: 1.04167vw;
    font-size: 110px;
    font-size: 11.45833vw;
    line-height: 0.90909;
    text-align: left;
    text-shadow: none;
    color: #00316c;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__heading {
    margin-bottom: 10px;
    font-size: 110px;
    font-size: 11rem;
    line-height: 100px;
    line-height: 10rem;
  }
}

.blog-hero__lead {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2.33333;
  color: #fff;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .blog-hero__lead {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
    color: #00316c;
    text-align: left;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__lead {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.blog-hero__slide_img {
  list-style-type: none;
  padding-left: 0;
  margin: 0;
  width: 100%;
  height: calc(100vh - 135px);
  position: relative;
  z-index: 1;
}

@media only screen and (min-width: 480px) {
  .blog-hero__slide_img {
    height: 50vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__slide_img {
    height: 480px;
  }
}

.blog-hero__slide_img .slide_img_item {
  width: 100%;
  height: calc(100vh - 135px);
}

@media only screen and (min-width: 480px) {
  .blog-hero__slide_img .slide_img_item {
    height: 50vw;
    display: flex !important;
    flex-wrap: wrap;
    justify-content: flex-end;
  }
}

@media only screen and (min-width: 480px) and (min-width: 960px) {
  .blog-hero__slide_img .slide_img_item {
    height: 480px;
  }
}

.blog-hero__slide_img .slide_img_item img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

@media only screen and (min-width: 480px) {
  .blog-hero__slide_img .slide_img_item img {
    width: 78%;
    height: 50vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__slide_img .slide_img_item img {
    height: 480px;
  }
}

.blog-hero__slide_text {
  list-style-type: none;
  padding-left: 0;
  width: 100%;
  height: 17.60417vw;
  position: absolute;
  bottom: 13.54167vw;
  left: 0;
  z-index: 4;
}

@media only screen and (min-width: 480px) {
  .blog-hero__slide_text {
    height: 10.41667vw;
    bottom: 3.64583vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__slide_text {
    height: 100px;
    bottom: 35px;
  }
}

.blog-hero__slide_text li {
  padding-left: 4.0625vw;
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .blog-hero__slide_text li {
    padding-left: 7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__slide_text li {
    padding-left: 70px;
  }
}

.blog-hero__body {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

.blog-hero__icon {
  padding-top: 5px;
  width: 18.95833vw;
  height: 18.95833vw;
  background-color: #ffe86c;
}

@media only screen and (min-width: 480px) {
  .blog-hero__icon {
    padding-top: 1.04167vw;
    width: 10.41667vw;
    height: 10.41667vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__icon {
    padding-top: 10px;
    width: 100px;
    height: 100px;
  }
}

.blog-hero__icon img {
  margin: 0 auto 5px;
  width: 6.77083vw;
  height: 6.77083vw;
  display: block;
}

@media only screen and (min-width: 480px) {
  .blog-hero__icon img {
    width: 3.64583vw;
    height: 3.64583vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__icon img {
    width: 35px;
    height: 35px;
  }
}

.blog-hero__icon p {
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 1.3;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.05rem;
}

@media only screen and (min-width: 480px) {
  .blog-hero__icon p {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.42857;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__icon p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.blog-hero__text {
  padding-left: 2.70833vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2.75;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .blog-hero__text {
    padding-left: 2.03125vw;
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 2.77778;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero__text {
    padding-left: 20px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 50px;
    line-height: 5rem;
  }
}

.blog-hero__text span {
  padding: 8px 5px;
  background-color: #fff;
}

.blog-hero .slick-blog-dots {
  list-style-type: none;
  padding: 5.41667vw 0 0 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

@media only screen and (min-width: 480px) {
  .blog-hero .slick-blog-dots {
    padding-top: 2.60417vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-hero .slick-blog-dots {
    padding-top: 25px;
  }
}

.blog-hero .slick-blog-dots li {
  margin: 0 10px;
}

.blog-hero .slick-blog-dots li button {
  padding: 0;
  width: 10px;
  height: 10px;
  background-color: #ccc;
  border-radius: 50%;
  border: none;
  text-indent: -9999px;
  display: block;
  outline: none;
}

.blog-hero .slick-blog-dots li.slick-active button {
  border-radius: 50%;
  background-color: #00316c;
}

/* blog - pick up
------------------------------------------------------------*/
.blog-sec1 {
  padding-top: 16.25vw;
  background: linear-gradient(transparent 90%, #ffe86c 10%);
}

@media only screen and (min-width: 480px) {
  .blog-sec1 {
    padding-top: 8.33333vw;
    background: linear-gradient(transparent 65%, #ffe86c 35%);
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec1 {
    padding-top: 80px;
  }
}

@media only screen and (min-width: 480px) {
  .blog-sec1__row {
    margin-right: -10px;
    margin-left: -10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
}

/* blog - about tana blog
------------------------------------------------------------*/
.blog-sec2 {
  padding-bottom: 22px;
  padding-top: 10.83333vw;
  padding-right: 20px;
  padding-left: 20px;
  position: relative;
  overflow: hidden;
}

.blog-sec2::before {
  content: '';
  margin: 0 auto;
  width: 200%;
  height: 500px;
  background-image: url(assets/images/blog/blog_sec2_bg.png);
  display: block;
  position: absolute;
  top: -250px;
  left: -100px;
  z-index: 0;
  transform: rotate(-10deg);
  transform-origin: center center;
}

@media only screen and (min-width: 480px) {
  .blog-sec2 {
    padding-top: 10.41667vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec2 {
    padding-top: 100px;
  }
}

@media only screen and (min-width: 1280px) {
  .blog-sec2 {
    padding-right: 0;
    padding-left: 0;
  }
}

.blog-sec2__card {
  margin: 0 auto;
  padding: 30px 20px;
  width: 100%;
  max-width: 740px;
  background-color: #fff;
  border-radius: 5.41667vw;
  position: relative;
  top: -1.35417vw;
  z-index: 1;
  position: relative;
}

.blog-sec2__card::after {
  content: '';
  width: 10.29167vw;
  height: 5.95833vw;
  background-image: url(assets/images/blog/blog_sec2_tail.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  left: 50%;
  bottom: -5.95833vw;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .blog-sec2__card {
    padding: 4.16667vw;
    border-radius: 2.08333vw;
    top: -0.83333vw;
  }
  .blog-sec2__card::after {
    width: 5.14583vw;
    height: 2.97917vw;
    left: 53.125vw;
    bottom: -2.97917vw;
    transform: translateX(0);
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec2__card {
    padding: 40px;
    border-radius: 20px;
    top: -8px;
  }
  .blog-sec2__card::after {
    width: 38px;
    height: 22px;
    left: 510px;
    bottom: -21px;
  }
}

.blog-sec2__heading_lv1 {
  font-size: 31.2px;
  font-size: 6.5vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #fff;
  text-align: center;
  position: relative;
  z-index: 2;
}

@media only screen and (min-width: 480px) {
  .blog-sec2__heading_lv1 {
    font-size: 42px;
    font-size: 4.375vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec2__heading_lv1 {
    font-size: 42px;
    font-size: 4.2rem;
    line-height: 42px;
    line-height: 4.2rem;
  }
}

.blog-sec2__heading_lv2 {
  margin-bottom: 5.41667vw;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1.625;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .blog-sec2__heading_lv2 {
    margin-bottom: 3.125vw;
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec2__heading_lv2 {
    margin-bottom: 30px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 18px;
    line-height: 1.8rem;
  }
}

.blog-sec2__heading_lv2 span {
  position: relative;
  display: inline-block;
}

.blog-sec2__heading_lv2 span::before, .blog-sec2__heading_lv2 span::after {
  content: '';
  width: 2.70833vw;
  height: 5.95833vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  bottom: -5px;
}

.blog-sec2__heading_lv2 span::before {
  background-image: url(assets/images/common/heading_dotline_l_blue.png);
  left: -20px;
}

.blog-sec2__heading_lv2 span::after {
  background-image: url(assets/images/common/heading_dotline_r_blue.png);
  right: -20px;
}

@media only screen and (min-width: 480px) {
  .blog-sec2__heading_lv2 span {
    position: relative;
  }
  .blog-sec2__heading_lv2 span::before, .blog-sec2__heading_lv2 span::after {
    width: 1.5625vw;
    height: 2.8125vw;
  }
  .blog-sec2__heading_lv2 span::before {
    left: -2.08333vw;
  }
  .blog-sec2__heading_lv2 span::after {
    right: -2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec2__heading_lv2 span::before, .blog-sec2__heading_lv2 span::after {
    width: 15px;
    height: 27px;
  }
  .blog-sec2__heading_lv2 span::before {
    left: -40px;
  }
  .blog-sec2__heading_lv2 span::after {
    right: -40px;
  }
}

.blog-sec2__heading_lv3 {
  margin-bottom: 2.70833vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.85714;
}

@media only screen and (min-width: 480px) {
  .blog-sec2__heading_lv3 {
    margin-bottom: 1.5625vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
    text-align: center;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec2__heading_lv3 {
    margin-bottom: 15px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.blog-sec2__lead {
  margin-bottom: 8.125vw;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  text-align: center;
  letter-spacing: 0.02rem;
}

@media only screen and (min-width: 480px) {
  .blog-sec2__lead {
    margin-bottom: 4.6875vw;
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec2__lead {
    margin-bottom: 45px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

@media only screen and (min-width: 480px) {
  .blog-sec2__row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

.blog-sec2__col {
  padding-bottom: 6.77083vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media only screen and (min-width: 480px) {
  .blog-sec2__col {
    padding-bottom: 0;
    width: 22%;
    display: block;
  }
}

.blog-sec2__num {
  width: 100%;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
}

@media only screen and (min-width: 480px) {
  .blog-sec2__num {
    font-size: 30px;
    font-size: 3.125vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec2__num {
    font-size: 30px;
    font-size: 3rem;
    line-height: 30px;
    line-height: 3rem;
  }
}

.blog-sec2__img {
  padding-top: 10px;
  width: 33%;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .blog-sec2__img {
    margin-bottom: 10px;
    width: 100%;
  }
}

.blog-sec2__img img {
  width: 100%;
  height: auto;
  display: block;
}

.blog-sec2__body {
  width: 61%;
}

@media only screen and (min-width: 480px) {
  .blog-sec2__body {
    width: 100%;
  }
}

.blog-sec2__text {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .blog-sec2__text {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec2__text {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

/* blog - NEW
------------------------------------------------------------*/
.blog-sec3 {
  padding-top: 14.89583vw;
  padding-bottom: 37.91667vw;
}

@media only screen and (min-width: 480px) {
  .blog-sec3 {
    padding-top: 7.29167vw;
    padding-bottom: 20.83333vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec3 {
    padding-top: 70px;
    padding-bottom: 200px;
  }
}

.blog-sec3__inner {
  margin: 0 auto 9.47917vw;
}

@media only screen and (min-width: 480px) {
  .blog-sec3__inner {
    margin-bottom: 4.6875vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec3__inner {
    margin-bottom: 45px;
  }
}

.blog-sec3__button {
  margin: 0 auto;
  width: 40.625vw;
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 3.46154;
}

@media only screen and (min-width: 480px) {
  .blog-sec3__button {
    width: 22.91667vw;
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 3.5;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec3__button {
    width: 220px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 66px;
    line-height: 6.6rem;
  }
}

/* blog - TOP3
------------------------------------------------------------*/
.blog-sec4 {
  padding-top: 21.125vw;
  padding-bottom: 12.1875vw;
  background-color: #fff;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .blog-sec4 {
    padding-top: 10.41667vw;
    padding-bottom: 5.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec4 {
    padding-top: 100px;
    padding-bottom: 55px;
  }
}

.blog-sec4__heading {
  margin-bottom: 2.70833vw;
  font-size: 91px;
  font-size: 18.95833vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
  position: absolute;
  top: -28.4375vw;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .blog-sec4__heading {
    margin-bottom: 1.04167vw;
    font-size: 110px;
    font-size: 11.45833vw;
    line-height: 1;
    top: -17.1875vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec4__heading {
    margin-bottom: 10px;
    font-size: 110px;
    font-size: 11rem;
    line-height: 110px;
    line-height: 11rem;
    top: -165px;
  }
}

.blog-sec4__heading span {
  padding-bottom: 10px;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1;
  display: inline-block;
  position: relative;
}

.blog-sec4__heading span::before {
  content: '';
  width: 27.625vw;
  height: 11.375vw;
  background-image: url(assets/images/blog/blog_sec4_heading_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -6.875vw;
  left: -11.875vw;
}

@media only screen and (min-width: 480px) {
  .blog-sec4__heading span {
    padding-bottom: 1.04167vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
  }
  .blog-sec4__heading span::before {
    width: 16.25vw;
    height: 6.77083vw;
    top: -5.52083vw;
    left: -8.85417vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec4__heading span {
    padding-bottom: 10px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
  .blog-sec4__heading span::before {
    width: 156px;
    height: 65px;
    top: -53px;
    left: -85px;
  }
}

.blog-sec4__icon {
  width: 23px;
  height: 21px;
  position: absolute;
  top: 0px;
  left: 0px;
}

@media only screen and (min-width: 480px) {
  .blog-sec4__icon {
    width: 4.79167vw;
    height: 4.27083vw;
    top: -2.08333vw;
    left: -2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec4__icon {
    width: 46px;
    height: 41px;
    top: -3px;
    left: -3px;
  }
}

.blog-sec4__icon_lg {
  width: 41px;
  height: 35px;
}

@media only screen and (min-width: 480px) {
  .blog-sec4__icon_lg {
    width: 4.79167vw;
    height: 4.27083vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec4__icon_lg {
    width: 46px;
    height: 41px;
  }
}

/* blog - 厳選TOP5
------------------------------------------------------------*/
.blog-sec5 {
  padding-top: 70.41667vw;
  padding-bottom: 13.54167vw;
  background-color: #ffe86c;
  position: relative;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .blog-sec5 {
    padding-top: 5.20833vw;
    padding-bottom: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec5 {
    padding-top: 50px;
    padding-bottom: 30px;
  }
}

.blog-sec5__inner {
  margin: 0 auto;
  width: 100%;
  height: 0;
  max-width: 740px;
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.2);
}

@media only screen and (min-width: 480px) {
  .blog-sec5__inner {
    padding-left: 20px;
    z-index: 3;
  }
}

@media only screen and (min-width: 1280px) {
  .blog-sec5__inner {
    padding-left: 0;
  }
}

.blog-sec5__header {
  margin: 0 auto;
  padding-top: 200%;
  width: 91%;
  height: 95%;
  background-color: rgba(255, 255, 255, 0.9);
  text-align: center;
  position: relative;
  top: 0;
  left: 0;
}

@media only screen and (min-width: 480px) {
  .blog-sec5__header {
    margin: 0;
    padding-top: 70%;
    width: 22.91667vw;
    height: 100%;
    left: 0;
    right: auto;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec5__header {
    width: 220px;
  }
}

.blog-sec5__body {
  padding: 25px 30px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .blog-sec5__body {
    padding: 2.08333vw 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec5__body {
    padding: 20px 30px;
  }
}

.blog-sec5__img {
  margin: 0 auto 2.70833vw;
  width: 24.375vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .blog-sec5__img {
    margin-bottom: 1.5625vw;
    width: 15vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec5__img {
    margin-bottom: 15px;
    width: 144px;
  }
}

.blog-sec5__heading {
  margin-bottom: 2.70833vw;
  font-size: 45.5px;
  font-size: 9.47917vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  display: inline-block;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .blog-sec5__heading {
    margin-bottom: 1.04167vw;
    font-size: 43px;
    font-size: 4.47917vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec5__heading {
    margin-bottom: 10px;
    font-size: 43px;
    font-size: 4.3rem;
    line-height: 43px;
    line-height: 4.3rem;
  }
}

.blog-sec5__year {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  position: absolute;
  top: 15px;
  left: 0;
}

@media only screen and (min-width: 480px) {
  .blog-sec5__year {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec5__year {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.blog-sec5__num {
  font-size: 91px;
  font-size: 18.95833vw;
  line-height: 1;
  padding-left: 5px;
}

@media only screen and (min-width: 480px) {
  .blog-sec5__num {
    font-size: 88px;
    font-size: 9.16667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec5__num {
    font-size: 88px;
    font-size: 8.8rem;
    line-height: 88px;
    line-height: 8.8rem;
  }
}

.blog-sec5__lead {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1.83333;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .blog-sec5__lead {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1.83333;
    text-align: left;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec5__lead {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.blog-sec5__slider {
  position: relative;
  z-index: 2;
  align-items: flex-start !important;
}

@media only screen and (min-width: 480px) {
  .blog-sec5__slider .wp-post__col {
    width: 25vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec5__slider .wp-post__col {
    width: 240px;
  }
}

/* blog - staff
------------------------------------------------------------*/
.blog-sec6 {
  padding-top: 27.08333vw;
  padding-bottom: 80px;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .blog-sec6 {
    padding-top: 14.58333vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec6 {
    padding-top: 140px;
  }
}

.blog-sec6__heading span::before {
  content: '';
  width: 23.5625vw;
  height: 12.45833vw;
  background-image: url(assets/images/blog/blog_sec6_heading_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -29.79167vw;
  left: 0;
}

@media only screen and (min-width: 480px) {
  .blog-sec6__heading span::before {
    width: 39.54167vw;
    height: 20.85417vw;
    top: -17.70833vw;
    left: -1.5625vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec6__heading span::before {
    width: 146px;
    height: 77px;
    top: -170px;
    left: -15px;
  }
}

.blog-sec6__slide_author {
  margin-bottom: 50px;
  position: relative;
}

.blog-sec6__slide_author::after {
  content: '';
  width: 5px;
  height: 27px;
  background-image: url(assets/images/blog/blog_sec6_dot.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(50%);
}

.blog-sec6__slide_post {
  margin: 0 auto;
  padding-right: 20px;
  padding-left: 20px;
  padding-bottom: 13.54167vw;
  width: 100%;
  max-width: 740px;
}

@media only screen and (min-width: 480px) {
  .blog-sec6__slide_post {
    padding-bottom: 5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec6__slide_post {
    padding-bottom: 50px;
  }
}

.blog-sec6__row {
  margin: 0 auto;
  width: 100%;
  padding: 6.77083vw 4.0625vw 16.25vw;
  width: 91%;
  background-color: #fff;
  display: flex !important;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .blog-sec6__row {
    padding: 4.0625vw 4.0625vw 10.83333vw;
    border-radius: 10px;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec6__row {
    padding: 30px 30px 80px;
  }
}

.blog-sec6__col {
  margin-bottom: 20px;
  width: 48%;
  color: #000;
}

@media only screen and (min-width: 480px) {
  .blog-sec6__col {
    margin-bottom: 0;
    width: 22%;
  }
}

.blog-sec6__img {
  margin-bottom: 2.16667vw;
  width: 100%;
  height: 25.72917vw;
}

@media only screen and (min-width: 480px) {
  .blog-sec6__img {
    margin-bottom: 0.83333vw;
    height: 9.89583vw;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec6__img {
    margin-bottom: 8px;
    height: 95px;
  }
}

.blog-sec6__img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.blog-sec6__date {
  margin-bottom: 1.35417vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .blog-sec6__date {
    margin-bottom: 0.52083vw;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec6__date {
    margin-bottom: 5px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.blog-sec6__category {
  margin-bottom: 1.04167vw;
  padding: 0 3px;
  background-color: #00316c;
  font-size: 12px;
  font-size: 2.5vw;
  line-height: 2;
  color: #fff;
  text-align: center;
  font-weight: bold;
  display: inline-block;
}

@media only screen and (min-width: 480px) {
  .blog-sec6__category {
    margin-bottom: 0.52083vw;
    font-size: 11px;
    font-size: 1.14583vw;
    line-height: 2.18182;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec6__category {
    margin-bottom: 5px;
    padding: 0 5px;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.blog-sec6__label {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.42857;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .blog-sec6__label {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.42857;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec6__label {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.blog-sec6__button {
  margin: 0 auto;
  width: 40.625vw;
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 3.46154;
}

@media only screen and (min-width: 480px) {
  .blog-sec6__button {
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 3.3;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec6__button {
    font-size: 20px;
    font-size: 2rem;
    line-height: 66px;
    line-height: 6.6rem;
    width: 220px;
  }
}

.blog-sec6__button_more {
  width: 21.66667vw;
  background-color: #000;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2.28571;
  color: #fff;
  text-align: center;
  display: block;
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .blog-sec6__button_more {
    width: 8.33333vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2.28571;
  }
}

@media only screen and (min-width: 960px) {
  .blog-sec6__button_more {
    width: 80px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 32px;
    line-height: 3.2rem;
  }
}

.blog-sec6 .slick-list {
  overflow-x: hidden;
  overflow-y: visible;
}

/**
/* page - news
============================================================*/
.news-wrapper {
  margin: 0 auto;
  padding-top: 8.125vw;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  max-width: 780px;
}

@media only screen and (min-width: 480px) {
  .news-wrapper {
    padding-top: 9.375vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 960px) {
  .news-wrapper {
    padding-top: 90px;
  }
}

@media only screen and (min-width: 1280px) {
  .news-wrapper {
    padding-right: 0;
    padding-left: 0;
  }
}

.news-sidebar {
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .news-sidebar {
    width: 13.54167vw;
    width: 17%;
    order: 1;
  }
}

.news-sidebar__heading {
  margin-bottom: 2.70833vw;
  border-bottom: 2px solid #00316c;
  padding-bottom: 2.70833vw;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
}

@media only screen and (min-width: 480px) {
  .news-sidebar__heading {
    margin-bottom: 1.04167vw;
    padding-bottom: 1.04167vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .news-sidebar__heading {
    margin-bottom: 10px;
    padding-top: 10px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.news-contents {
  margin: 0 auto;
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .news-contents {
    margin: 0;
    width: 77%;
    order: 2;
  }
}

.news__date {
  margin-bottom: 2.70833vw;
  font-size: 14.3px;
  font-size: 2.97917vw;
  line-height: 1;
  color: #00316c;
}

@media only screen and (min-width: 480px) {
  .news__date {
    margin-bottom: 1.04167vw;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .news__date {
    margin-bottom: 10px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.news__heading {
  margin-bottom: 5.41667vw;
  padding-bottom: 2.70833vw;
  border-bottom: 1px dotted #00316c;
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1.4;
  color: #00316c;
}

@media only screen and (min-width: 480px) {
  .news__heading {
    margin-bottom: 2.08333vw;
    padding-bottom: 1.04167vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1.375;
  }
}

@media only screen and (min-width: 960px) {
  .news__heading {
    margin-bottom: 20px;
    padding-bottom: 10px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.news__body .postbody p {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2.14286;
}

@media only screen and (min-width: 480px) {
  .news__body .postbody p {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2.14286;
  }
}

@media only screen and (min-width: 960px) {
  .news__body .postbody p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 30px;
    line-height: 3rem;
    font-size: 14px !important;
  }
}

/**
/* page - recruit
============================================================*/
#recruit .l-wrapper {
  width: 100%;
}

#recruit ul, #recruit ol {
  padding: 0;
  list-style-type: none;
}

#recruit .p-global-btn {
  z-index: 10 !important;
  display: block !important;
}

@media only screen and (min-width: 768px) {
  #recruit .p-global-btn {
    display: none !important;
  }
}

#recruit .p-footer__button_fixed {
  display: flex;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  border: 1px solid #FFDC00;
  z-index: 101;
}

@media only screen and (min-width: 768px) {
  #recruit .p-footer__button_fixed {
    display: none;
  }
}

#recruit .p-footer__button_fixed a {
  width: 50%;
  background: #fff;
  line-height: 46px;
  text-align: center;
  border: 2px solid #FFDC00;
  color: #505050;
  font-weight: bold;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 3.82692;
  position: relative;
}

@media only screen and (min-width: 480px) {
  #recruit .p-footer__button_fixed a {
    font-size: 12px;
    font-size: 1.5625vw;
    line-height: 3.825;
  }
}

#recruit .p-footer__button_fixed a:after {
  content: '';
  width: 8px;
  height: 13px;
  display: inline-block;
  background: url(assets/images/recruit/recruit_arrow_right_04.png) no-repeat center center;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 6px;
}

@media only screen and (min-width: 480px) {
  #recruit .p-footer__button_fixed a:after {
    right: 10px;
  }
}

#recruit .p-footer__button_fixed span {
  display: inline-block;
}

#recruit .p-footer__button_fixed .recruit-header__en {
  margin-right: 0.625vw;
  margin-bottom: 0;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  #recruit .p-footer__button_fixed .recruit-header__en {
    margin-right: 0.39062vw;
    font-size: 20px;
    font-size: 2.60417vw;
    line-height: 1;
  }
}

#recruit .p-footer__button_fixed .recruit-header__ja {
  font-size: 1rem;
  color: #505050;
}

#recruit .p-to-top {
  bottom: 60px !important;
}

@media only screen and (min-width: 960px) {
  #recruit .p-to-top {
    bottom: 40px !important;
  }
}

.l-contents__recruit {
  padding-bottom: 0;
  padding-top: 0;
  overflow-x: hidden;
  width: 100%;
}

@media only screen and (min-width: 960px) {
  .l-contents__recruit {
    padding-top: 60px;
  }
}

.l-contents__recruit p, .l-contents__recruit a, .l-contents__recruit li {
  color: #505050;
}

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

.l-contents__recruit .br-sp {
  display: block;
}

.l-contents__recruit .br-pc {
  display: none;
}

@media only screen and (min-width: 960px) {
  .l-contents__recruit .br-sp {
    display: none;
  }
  .l-contents__recruit .br-pc {
    display: block;
  }
}

.l-contents__recruit .p-button:hover {
  text-decoration: none;
}

.l-contents__recruit .p-button:hover span {
  opacity: .6;
}

.l-contents__recruit .p-button span {
  transition: .2s;
}

.l-contents__recruit em {
  font-weight: bold;
}

.l-contents__recruit .spimg {
  display: block;
}

@media only screen and (min-width: 960px) {
  .l-contents__recruit .spimg {
    display: none;
  }
}

.l-contents__recruit .p-page__heading_lv1 img.spimg {
  width: 17.60417vw;
  position: absolute;
  top: -1vw;
  left: 50%;
  margin-left: -40%;
  z-index: -1;
}

@media only screen and (min-width: 480px) {
  .l-contents__recruit .p-page__heading_lv1 img.spimg {
    width: 8.80208vw;
    top: 11%;
    margin-left: -20%;
  }
}

@media only screen and (min-width: 768px) {
  .l-contents__recruit .p-page__heading_lv1 img.spimg {
    margin-left: -27%;
  }
}

.l-contents__recruit h2, .l-contents__recruit h3, .l-contents__recruit h4 {
  color: #505050;
}

/* tanamaga common
------------------------------------------------------------*/
.recruit__heading {
  text-align: center;
}

.recruit__heading--lv1 {
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1;
  text-align: center;
  padding-top: 16.25vw;
  position: relative;
  padding-bottom: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .recruit__heading--lv1 {
    font-size: 22px;
    font-size: 2.29167vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit__heading--lv1 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
    padding: 110px 0 20px;
  }
}

.recruit__heading--lv1:after {
  content: '';
  display: inline-block;
  width: 42.08333vw;
  height: 0.65vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background: url(assets/images/recruit/recruit_ln_01.png) no-repeat top center;
}

@media only screen and (min-width: 960px) {
  .recruit__heading--lv1:after {
    width: 260px;
    height: 4px;
    background-size: cover;
  }
}

.l-recruit__inner {
  padding-right: 5.41667vw;
  padding-left: 5.41667vw;
}

@media only screen and (min-width: 960px) {
  .l-recruit__inner {
    max-width: 1010px;
    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
  }
}

/* .recruit-header
------------------------------------------------------------*/
.recruit-header {
  background: url(assets/images/recruit/recruit_header_bg_sp.png) no-repeat top center;
  background-size: 100% 100%;
  width: 100%;
  top: -2px;
  right: 0;
  left: 0;
  z-index: 100;
  height: 87px;
  position: absolute;
}

@media only screen and (min-width: 768px) {
  .recruit-header {
    background: url(assets/images/recruit/recruit_header_bg.png) no-repeat top center;
    background-size: 100% 100%;
    position: fixed;
    height: auto;
  }
}

.recruit-header .js-toggle-menu {
  display: none;
  z-index: 100;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
}

@media only screen and (min-width: 768px) {
  .recruit-header .js-toggle-menu {
    display: block;
    position: relative;
    width: 100%;
  }
}

.recruit-header__inner {
  display: none;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .recruit-header__inner {
    max-width: 1150px;
    width: 100%;
    margin: 0 auto;
    padding: 18px 20px 50px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.recruit-header__logo {
  width: 4.6875vw;
}

@media only screen and (min-width: 1280px) {
  .recruit-header__logo {
    width: 60px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-header__logo a {
    width: 60px;
  }
}

.recruit-header__logo a img {
  width: 100%;
  height: auto;
}

.recruit-header__logo-sp {
  display: block;
  position: relative;
  width: 50px;
  top: 10px;
  left: 20px;
}

@media only screen and (min-width: 768px) {
  .recruit-header__logo-sp {
    display: none;
  }
}

.recruit-header__logo-sp img {
  width: 100%;
  height: auto;
}

@media only screen and (min-width: 768px) {
  .recruit-header__gnav {
    display: flex;
  }
}

.recruit-header li {
  margin-right: 1.5625vw;
  position: relative;
}

@media only screen and (min-width: 1280px) {
  .recruit-header li {
    margin-right: 20px;
  }
}

.recruit-header a {
  font-weight: bold;
  transition: .3s;
}

.recruit-header a:hover {
  opacity: .7;
}

@media only screen and (min-width: 768px) {
  .recruit-header__snav {
    width: 200px;
    display: none;
    position: absolute;
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
    padding-top: 20px;
  }
}

.recruit-header__snav ul {
  position: relative;
  background: #fff;
}

.recruit-header__snav ul:after, .recruit-header__snav ul:before {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.recruit-header__snav ul:after {
  border-color: rgba(0, 0, 0, 0);
  border-width: 10px;
  margin-left: -10px;
}

.recruit-header__snav ul:before {
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: #ffffff;
  border-width: 13px;
  margin-left: -13px;
}

.recruit-header__snav li {
  border-bottom: 1px solid #CCD5E3;
  margin-right: 0;
}

.recruit-header__snav a {
  color: #505050;
  text-decoration: none;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 16px;
  line-height: 1.6rem;
  padding: 20px 15px;
  width: 100%;
  display: block;
  position: relative;
}

.recruit-header__snav a:after {
  position: absolute;
  top: 50%;
  right: 10px;
  display: inline-block;
  width: 13px;
  height: 21px;
  content: '';
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(assets/images/recruit/recruit_header_arrow_01.png) no-repeat center center;
  background-size: contain;
}

.recruit-header__snav a:hover {
  background: #FFDC00;
  color: #fff;
}

.recruit-header__snav a:hover:after {
  background: url(assets/images/recruit/recruit_header_arrow_03.png) no-repeat center center;
  background-size: contain;
}

.recruit-header .recruit-header__nav .u-hlt5 {
  position: relative;
}

@media only screen and (min-width: 960px) {
  .recruit-header .recruit-header__nav .u-hlt5 {
    display: block;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-header .recruit-header__nav .u-hlt5:hover:before {
    content: '';
    display: inline-block;
    background: url(assets/images/recruit/recruit_header_arrow_02.png) no-repeat center center;
    background-size: contain;
    width: 42px;
    height: 26px;
    position: absolute;
    top: -38px;
    left: 50%;
    transform: translateX(-50%);
  }
}

.recruit-header__en {
  color: #505050;
  font-family: 'futura-pt', sans-serif;
  display: block;
  text-align: center;
  margin-bottom: 0.78125vw;
  font-size: 16px;
  font-size: 1.25vw;
  line-height: 1;
}

@media only screen and (min-width: 1280px) {
  .recruit-header__en {
    display: block;
    text-align: center;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
    margin-bottom: 10px;
  }
}

.recruit-header__ja {
  font-size: 12px;
  font-size: 0.9375vw;
  line-height: 1;
  display: block;
  text-align: center;
  color: #FFDC00;
}

@media only screen and (min-width: 960px) {
  .recruit-header__ja {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

@media only screen and (min-width: 1280px) {
  .recruit-header__ja {
    display: block;
    text-align: center;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
  }
}

.recruit-header__fb {
  width: 3.125vw;
  height: 3.125vw;
}

@media only screen and (min-width: 1280px) {
  .recruit-header__fb {
    width: 40px;
    height: 40px;
  }
}

.recruit-header__fb img {
  width: 100%;
  height: auto;
}

.recruit-header__entry a {
  background: #fff;
  border: 1px solid #FFDC00;
  display: block;
  position: relative;
  padding-top: 0.78125vw;
  padding-left: 1.5625vw;
  padding-right: 4.6875vw;
  padding-bottom: 0.78125vw;
}

@media only screen and (min-width: 1280px) {
  .recruit-header__entry a {
    padding: 10px 60px 10px 20px;
  }
}

.recruit-header__entry a:after {
  content: '';
  background: url(assets/images/recruit/recruit_header_arrow_01.png) no-repeat center center;
  background-size: contain;
  position: absolute;
  right: 10px;
  top: 50%;
  width: 1.01562vw;
  height: 1.64062vw;
  transform: translateY(-50%);
}

@media only screen and (min-width: 1280px) {
  .recruit-header__entry a:after {
    display: inline-block;
    width: 13px;
    height: 21px;
  }
}

.recruit-header__entry a:hover {
  text-decoration: none;
  background: #FFDC00;
}

.recruit-header__entry a:hover:after {
  background: url(assets/images/recruit/recruit_header_arrow_03.png) no-repeat center center;
  background-size: contain;
}

.recruit-header__entry a:hover span {
  color: #fff;
}

.recruit-header__entry .recruit-header__en {
  font-size: 16px;
  font-size: 1.25vw;
  line-height: 1;
  text-align: left;
}

@media only screen and (min-width: 1280px) {
  .recruit-header__entry .recruit-header__en {
    margin-bottom: 5px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.recruit-header__entry .recruit-header__ja {
  color: #505050;
  text-decoration: none !important;
  text-align: left;
  font-size: 13px;
  font-size: 1.01562vw;
  line-height: 1;
}

@media only screen and (min-width: 1280px) {
  .recruit-header__entry .recruit-header__ja {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
  }
}

.recruit-header__sp {
  background: #FFDC00;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media only screen and (min-width: 768px) {
  .recruit-header__sp {
    display: none;
  }
}

.recruit-header__sp .recruit-header__logo {
  margin: 0 auto 10px;
  width: 63px;
}

.recruit-header .recruit-header__spinner {
  width: 100%;
  overflow: scroll;
  padding: 20px 0 30px;
}

.recruit-header .recruit-header__spinner > ul {
  margin-bottom: 30px;
}

.recruit-header .recruit-header__spinner > ul > li {
  margin-bottom: 10px;
}

@media only screen and (min-width: 768px) {
  .recruit-header .recruit-header__spinner > ul > li {
    margin-bottom: 50px;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-header .recruit-header__spinner > ul > li {
    margin-bottom: 15px;
  }
}

.recruit-header .recruit-header__spinner > ul > li.open .u-hlt5:after {
  background: url(assets/images/recruit/recruit_arrow_up.png) no-repeat center center;
  background-size: contain;
}

.recruit-header .recruit-header__spinner > ul > li > .u-hlt5 {
  border-bottom: 1px solid #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 80%;
  min-width: 280px;
  margin: 0 auto;
  padding: 0 10px 10px;
  font-weight: bold;
}

@media only screen and (min-width: 768px) {
  .recruit-header .recruit-header__spinner > ul > li > .u-hlt5 {
    padding-bottom: 15px;
  }
}

.recruit-header .recruit-header__spinner > ul > li > .u-hlt5:hover {
  opacity: 1;
}

.recruit-header .recruit-header__spinner > ul > li span.u-hlt5 {
  position: relative;
}

.recruit-header .recruit-header__spinner > ul > li span.u-hlt5:after {
  content: '';
  width: 8px;
  height: 7px;
  display: inline-block;
  background: url(assets/images/recruit/recruit_arrow_down_03.png) no-repeat center center;
  background-size: contain;
  position: absolute;
  right: 10px;
}

.recruit-header .recruit-header__spinner > ul .recruit-header__en {
  width: 50%;
  text-align: left;
  font-size: 1.6rem;
}

.recruit-header .recruit-header__spinner > ul .recruit-header__ja {
  width: 42%;
  text-align: left;
  color: #505050;
  font-size: 1rem;
}

.recruit-header .recruit-header__spinner > ul ul {
  background: #fff;
  margin-top: -1px;
  display: none;
}

.recruit-header .recruit-header__spinner > ul ul a {
  font-size: 1.2rem;
  width: 80%;
  min-width: 280px;
  margin: 0 auto;
  display: block;
  padding: 10px 0;
  color: #505050;
  border-bottom: 1px solid #FFDC00;
  position: relative;
}

.recruit-header .recruit-header__spinner > ul ul a:after {
  content: '';
  display: inline-block;
  width: 7px;
  height: 8px;
  background: url(assets/images/recruit/recruit_arrow_right_03.png) no-repeat center center;
  background-size: contain;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}

.recruit-header .recruit-header__spinner > ul ul a:hover {
  text-decoration: none;
}

.recruit-header .recruit-header__spinner > ul ul li:last-child a {
  border-bottom: none;
}

.recruit-header + .p-global-btn {
  display: block;
}

@media only screen and (min-width: 960px) {
  .recruit-header + .p-global-btn {
    display: none;
  }
}

/* .recruit-hero
------------------------------------------------------------*/
.recruit-hero {
  position: relative;
  background: url(assets/images/recruit/recruit_bg_01_sp.jpg) no-repeat center center;
  background-size: cover;
  padding-top: 55.20833vw;
  padding-bottom: 55.20833vw;
}

@media only screen and (min-width: 480px) {
  .recruit-hero {
    background: url(assets/images/recruit/recruit_bg_01.jpg) no-repeat center center;
    background-size: cover;
    padding-top: 192px;
    padding-bottom: 100px;
  }
}

.recruit-hero h1 {
  width: 81.25vw;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .recruit-hero h1 {
    width: 28.64583vw;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-hero h1 {
    width: 555px;
  }
}

.recruit-hero__btn {
  display: none;
}

@media only screen and (min-width: 768px) {
  .recruit-hero__btn {
    display: block;
    width: 60px;
    position: fixed;
    right: 10px;
    top: 190px;
    line-height: 0;
    z-index: 10;
  }
}

.recruit-hero__txt {
  position: absolute;
  width: 37.91667vw;
  bottom: -10.41667vw;
  left: 5.41667vw;
  line-height: 0;
  z-index: 1;
}

@media only screen and (min-width: 480px) {
  .recruit-hero__txt {
    width: 18.75vw;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-hero__txt {
    bottom: -40px;
    left: 50%;
    margin-left: -420px;
    width: 178px;
  }
}

/* recruit-guide
------------------------------------------------------------*/
.recruit-guide {
  padding-top: 14.89583vw;
  background: url(assets/images/recruit/recruit_bg_03.jpg) repeat top left;
}

@media only screen and (min-width: 960px) {
  .recruit-guide {
    padding: 50px 0 0;
  }
}

.recruit-guide h2 {
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1;
  text-align: center;
  padding-top: 11.04167vw;
  padding-bottom: 2.70833vw;
  margin-bottom: 10.83333vw;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .recruit-guide h2 {
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1;
    padding-bottom: 25px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-guide h2 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
    padding-top: 65px;
    margin-bottom: 40px;
  }
}

.recruit-guide h2:before {
  content: '';
  display: inline-block;
  width: 14.08333vw;
  height: 6.25vw;
  position: absolute;
  background: url(assets/images/recruit/recruit_ti_02.png) no-repeat top center;
  background-size: 100% 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 960px) {
  .recruit-guide h2:before {
    width: 86px;
    height: 39px;
  }
}

.recruit-guide h2:after {
  content: '';
  display: inline-block;
  width: 42.08333vw;
  height: 0.65vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background: url(assets/images/recruit/recruit_ln_01.png) no-repeat top center;
}

.recruit-guide__inner {
  padding-left: 4.0625vw;
  padding-right: 4.0625vw;
}

@media only screen and (min-width: 960px) {
  .recruit-guide__inner {
    width: 780px;
    margin: 0 auto;
  }
}

.recruit-guide__row {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: relative;
}

.recruit-guide__row::before {
  content: '';
  width: 50px;
  height: 50px;
  background-image: url(assets/images/recruit/recruit_label_01.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: 0;
  left: 10px;
  z-index: 3;
}

@media only screen and (min-width: 480px) {
  .recruit-guide__row::before {
    width: 6.25vw;
    height: 6.25vw;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-guide__row {
    margin-bottom: 50px;
  }
  .recruit-guide__row::before {
    width: 60px;
    height: 60px;
  }
}

.recruit-guide__col {
  width: 48%;
  margin-bottom: 6.77083vw;
}

@media only screen and (min-width: 768px) {
  .recruit-guide__col {
    width: 32% !important;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-guide__col {
    margin-bottom: 0;
  }
}

.recruit-guide__col:first-child {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .recruit-guide__col:first-child {
    margin-bottom: 0;
  }
}

.recruit-guide__col:first-child .recruit-guide__heading {
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .recruit-guide__col:first-child .recruit-guide__heading {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-guide__col:first-child .recruit-guide__heading {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.recruit-guide a {
  color: #505050;
  position: relative;
  transition: .3s;
}

.recruit-guide a:hover {
  text-decoration: none;
  opacity: .7;
}

.recruit-guide__new {
  content: '';
  display: inline-block;
}

.recruit-guide__label {
  position: absolute;
  top: -7px;
  left: 0;
}

.recruit-guide__label img {
  width: 16.25vw;
  height: 16.25vw;
}

@media only screen and (min-width: 480px) {
  .recruit-guide__label img {
    width: 8.125vw;
    height: 8.125vw;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-guide__label img {
    width: 60px;
    height: 60px;
  }
}

.recruit-guide__img {
  text-align: center;
}

.recruit-guide__img img {
  width: 100%;
  height: auto;
}

.recruit-guide__meta {
  margin-bottom: 3.95833vw;
}

@media only screen and (min-width: 480px) {
  .recruit-guide__meta {
    margin-bottom: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-guide__meta {
    margin-bottom: 10px;
  }
}

.recruit-guide__date {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .recruit-guide__date {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-guide__date {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.recruit-guide__heading {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .recruit-guide__heading {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-guide__heading {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.recruit-guide__button {
  background: #FFDC00;
  width: 43.875vw;
  display: block;
  margin: 0 auto;
  text-align: left;
  padding-left: 6.22917vw;
  font-weight: bold;
  font-style: italic;
  position: relative;
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 2.5641;
}

.recruit-guide__button:after {
  content: '';
  display: inline-block;
  background: url(assets/images/recruit/recruit_arrow_right.png) no-repeat center center;
  width: 1.89583vw;
  height: 2.97917vw;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 6.22917vw;
}

@media only screen and (min-width: 960px) {
  .recruit-guide__button:after {
    width: 7px;
    height: 11px;
    right: 20px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-guide__button {
    width: 162px;
    height: 46px;
    font-size: 1.8rem;
    padding: 0 20px;
  }
}

/* .recruit-challenge
------------------------------------------------------------*/
.recruit-challenge {
  background: url(assets/images/recruit/recruit_bg_02_sp.jpg) no-repeat bottom center;
  padding-bottom: 59.79167vw;
  background-size: 100% auto;
}

@media only screen and (min-width: 960px) {
  .recruit-challenge {
    padding-bottom: 220px;
    background: url(assets/images/recruit/recruit_bg_02.jpg) no-repeat bottom center;
    background-size: 100% auto;
  }
}

.recruit-challenge:before {
  content: '';
  display: block;
  width: 100%;
  background: url(assets/images/recruit/recruit_bg_10_sp.png) no-repeat bottom center;
  background-size: 100% 100%;
  height: 100px;
}

@media only screen and (min-width: 768px) {
  .recruit-challenge:before {
    height: 200px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-challenge:before {
    height: 300px;
    background: url(assets/images/recruit/recruit_bg_10.png) no-repeat bottom center;
    background-size: 100% 100%;
  }
}

.recruit-challenge h2 {
  margin-bottom: 8.125vw;
  width: 81.875vw;
  margin: 0 auto;
}

@media only screen and (min-width: 480px) {
  .recruit-challenge h2 {
    max-width: 500px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-challenge h2 {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto 0;
  }
}

.recruit-challenge .l-recruit__inner {
  text-align: center;
}

@media only screen and (min-width: 960px) {
  .recruit-challenge .l-recruit__inner {
    margin-top: -270px;
  }
}

.recruit-challenge p {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2.15385;
  text-align: center;
  font-weight: bold;
  text-shadow: #fff 0 0 10px;
}

@media only screen and (min-width: 480px) {
  .recruit-challenge p {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-challenge p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.recruit-challenge p + p {
  margin-top: 10.20833vw;
}

@media only screen and (min-width: 480px) {
  .recruit-challenge p + p {
    margin-top: 5.10417vw;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-challenge p + p {
    margin-top: 40px;
  }
}

/* .recruit-about
------------------------------------------------------------*/
.recruit-about {
  position: relative;
}

@media only screen and (min-width: 960px) {
  .recruit-about {
    padding: 40px 0;
  }
}

.recruit-about__inner {
  padding-left: 5.41667vw;
  padding-right: 5.41667vw;
}

@media only screen and (min-width: 960px) {
  .recruit-about__inner {
    max-width: 850px;
    padding: 0 20px;
    margin: 0 auto;
  }
}

.recruit-about h2:before {
  content: '';
  display: inline-block;
  width: 11.66667vw;
  height: 11.25vw;
  position: absolute;
  background: url(assets/images/recruit/recruit_ti_04.png) no-repeat top center;
  background-size: contain;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 960px) {
  .recruit-about h2:before {
    width: 86px;
    height: 72px;
  }
}

.recruit-about h3 {
  text-align: center;
  margin-bottom: 16.25vw;
  position: relative;
}

@media only screen and (min-width: 960px) {
  .recruit-about h3 {
    font-size: 60px;
    margin-bottom: 110px;
    display: inline-block;
  }
}

.recruit-about h3 span {
  position: absolute;
  width: 17.875vw;
  left: 47%;
  margin-left: -41.66667vw;
  top: -17.70833vw;
}

@media only screen and (min-width: 960px) {
  .recruit-about h3 span {
    width: 150px;
    top: -50px;
    left: 50%;
    margin-left: -330px;
  }
}

.recruit-about h3 em {
  font-size: 93.6px;
  font-size: 19.5vw;
  line-height: 1;
  letter-spacing: .1em;
  font-style: italic;
  margin-right: 1.45833vw;
  font-weight: bold;
  font-family: 'Open Sans', sans-serif;
}

@media only screen and (min-width: 480px) {
  .recruit-about h3 em {
    font-size: 120px;
    margin-right: 10px;
  }
}

.recruit-about ol {
  list-style-type: none;
  counter-reset: item;
  padding: 0;
}

@media only screen and (min-width: 480px) {
  .recruit-about ol {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

.recruit-about li {
  margin-right: 3px;
  background: rgba(80, 80, 80, 0.08);
  display: block;
  margin-bottom: 16.25vw;
  padding-top: 8.125vw;
  padding-bottom: 8.125vw;
  margin-left: 2.70833vw;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .recruit-about li {
    border-left: 12px solid #fff;
    width: 47%;
    margin-left: 0;
    padding: 40px 0 30px;
    margin-bottom: 100px;
  }
}

.recruit-about li:nth-child(1) {
  background: #F0EFEE url(assets/images/recruit/recruit_pic_01.png) no-repeat bottom right;
  background-size: 140px 130px;
}

@media only screen and (min-width: 768px) {
  .recruit-about li:nth-child(1) {
    background-size: 180px 170px;
  }
}

.recruit-about li:nth-child(2) {
  background: #F0EFEE url(assets/images/recruit/recruit_pic_02.png) no-repeat bottom right;
  background-size: 140px 130px;
}

@media only screen and (min-width: 768px) {
  .recruit-about li:nth-child(2) {
    background-size: 180px 170px;
  }
}

.recruit-about li:nth-child(3) {
  background: #F0EFEE url(assets/images/recruit/recruit_pic_03.png) no-repeat bottom right;
  background-size: 140px 130px;
}

@media only screen and (min-width: 768px) {
  .recruit-about li:nth-child(3) {
    background-size: 180px 170px;
  }
}

.recruit-about li:nth-child(4) {
  background: #F0EFEE url(assets/images/recruit/recruit_pic_04.png) no-repeat bottom right;
  background-size: 140px 130px;
}

@media only screen and (min-width: 768px) {
  .recruit-about li:nth-child(4) {
    background-size: 180px 170px;
  }
}

.recruit-about li:before {
  counter-increment: item;
  content: counter(item, decimal-leading-zero);
  color: #FFDC00;
  font-size: 78px;
  font-size: 16.25vw;
  line-height: 1;
  font-weight: bold;
  font-family: 'Open Sans', sans-serif;
  font-style: italic;
  position: absolute;
  left: -2.70833vw;
  top: -9.375vw;
}

@media only screen and (min-width: 480px) {
  .recruit-about li:before {
    font-size: 78px;
    font-size: 8.125vw;
    line-height: 1;
    left: -1.35417vw;
    top: -4.46875vw;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-about li:before {
    font-size: 11rem;
    left: -20px;
    top: -77px;
  }
}

.recruit-about__txt {
  position: relative;
  margin-left: -2.70833vw;
}

@media only screen and (min-width: 960px) {
  .recruit-about__txt {
    margin-left: -12px;
  }
}

.recruit-about__txt h4 {
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.5;
  margin-bottom: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .recruit-about__txt h4 {
    font-size: 23px;
    font-size: 2.39583vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-about__txt h4 {
    font-size: 23px;
    font-size: 2.3rem;
    line-height: 32px;
    line-height: 3.2rem;
    margin-bottom: 15px;
  }
}

.recruit-about__txt p {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .recruit-about__txt p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-about__txt p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.recruit-about__copy {
  text-align: center;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  font-weight: bold;
  padding-bottom: 13.54167vw;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .recruit-about__copy {
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-about__copy {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 36px;
    line-height: 3.6rem;
    padding-bottom: 60px;
  }
}

.recruit-about__copy em {
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.53846;
  margin-top: 1.35417vw;
  display: block;
}

@media only screen and (min-width: 480px) {
  .recruit-about__copy em {
    font-size: 30px;
    font-size: 3.125vw;
    line-height: 1.5;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-about__copy em {
    font-size: 30px;
    font-size: 3rem;
    line-height: 36px;
    line-height: 3.6rem;
  }
}

.recruit-about__copy em mark {
  color: #505050;
  background: linear-gradient(transparent 50%, #FFDC00 50%);
  padding: 0 10px;
}

.recruit-about:after {
  content: '';
  display: inline-block;
  width: 4.0625vw;
  height: 15.70833vw;
  position: absolute;
  background: url(assets/images/recruit/recruit_arrow_down.png) no-repeat center center;
  background-size: contain;
  left: 50%;
  transform: translateX(-50%);
  bottom: -8.125vw;
  z-index: 1;
}

@media only screen and (min-width: 960px) {
  .recruit-about:after {
    width: 26px;
    bottom: -105px;
  }
}

/* .recruit-initiative
------------------------------------------------------------*/
.recruit-initiative {
  counter-reset: item;
  background: url(assets/images/recruit/recruit_bg_03.jpg) repeat left center;
  padding-left: 9vw;
  padding-right: 9vw;
  padding-top: 14.89583vw;
}

@media only screen and (min-width: 960px) {
  .recruit-initiative {
    padding: 70px 20px 0;
  }
}

.recruit-initiative .l-recruit__inner {
  background: url(assets/images/recruit/recruit_bg_04_sp.png) repeat left center;
  background-size: 100% 100%;
  padding: 8.125vw;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .recruit-initiative .l-recruit__inner {
    padding: 4.0625vw;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-initiative .l-recruit__inner {
    background: url(assets/images/recruit/recruit_bg_04.png) repeat left center;
    background-size: 100% 100%;
    padding: 50px 90px 20px;
  }
}

.recruit-initiative h2 {
  margin-bottom: 4.60417vw;
}

.recruit-initiative h2:before {
  content: '';
  display: inline-block;
  width: 22.5vw;
  height: 12.70833vw;
  position: absolute;
  background: url(assets/images/recruit/recruit_ti_05.png) no-repeat top center;
  background-size: 100% 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 960px) {
  .recruit-initiative h2:before {
    width: 141px;
    height: 82px;
  }
}

@media only screen and (min-width: 480px) {
  .recruit-initiative__row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .recruit-initiative__row section {
    width: 48%;
  }
}

@media only screen and (min-width: 480px) and (min-width: 768px) {
  .recruit-initiative__row section {
    width: 32%;
  }
}

@media only screen and (min-width: 480px) and (min-width: 768px) {
  .recruit-initiative__row:after {
    content: "";
    display: block;
    width: 32%;
  }
}

.recruit-initiative section {
  margin-bottom: 13.54167vw;
}

@media only screen and (min-width: 768px) {
  .recruit-initiative section {
    margin-bottom: 80px;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-initiative section:nth-child(3n-1) {
    margin-top: 40px;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-initiative section:nth-child(3n) {
    margin-top: 80px;
  }
}

.recruit-initiative ol {
  list-style-type: none;
  padding: 0;
}

.recruit-initiative ol li {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  margin-bottom: 2.70833vw;
  position: relative;
  padding-left: 0;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .recruit-initiative ol li {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-initiative ol li {
    padding-left: 55px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 30px;
    line-height: 3rem;
    margin-bottom: 20px;
  }
}

.recruit-initiative ol li:before {
  font-family: 'Open Sans', sans-serif;
  font-style: italic;
  counter-increment: item;
  content: counter(item, decimal-leading-zero);
  color: #FFDC00;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1;
  font-weight: bold;
  margin-right: 10px;
  top: 4px;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .recruit-initiative ol li:before {
    font-size: 30px;
    font-size: 3.125vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-initiative ol li:before {
    font-size: 30px;
    font-size: 3rem;
    line-height: 30px;
    line-height: 3rem;
    position: absolute;
    left: 0;
    top: 0;
    margin-right: 0;
  }
}

.recruit-initiative h3 {
  margin-bottom: 10px;
  padding-top: 15px;
  width: 203px;
  height: 90px;
  background-image: url(assets/images/recruit/recruit_ti_s.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 13px;
  line-height: 1.3rem;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 768px) {
  .recruit-initiative h3 {
    width: 205px;
    height: 104px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 15px;
    line-height: 1.5rem;
  }
}

.recruit-initiative h3 span {
  padding-top: 5px;
  font-size: 10px;
  font-size: 1rem;
  line-height: 10px;
  line-height: 1rem;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #fadf00;
  text-transform: uppercase;
  display: block;
}

@media only screen and (min-width: 480px) {
  .recruit-initiative h3 {
    width: 27.08333vw;
    max-width: 100%;
    min-width: auto;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-initiative h3 {
    width: 235px;
    margin-bottom: 25px;
  }
}

.recruit-initiative__illu01 {
  position: absolute;
  width: 17.33333vw;
  top: 7%;
  right: 10px;
}

@media only screen and (min-width: 960px) {
  .recruit-initiative__illu01 {
    width: 173px;
    top: 120px;
    right: 45px;
  }
}

.recruit-initiative__illu02 {
  position: absolute;
  width: 35.41667vw;
  max-width: 170px;
  bottom: -60px;
  right: 0;
}

@media only screen and (min-width: 960px) {
  .recruit-initiative__illu02 {
    width: 218px;
    max-width: 218px;
    bottom: -30px;
    right: 50px;
    z-index: 3;
  }
}

.recruit-initiative__illu03 {
  position: absolute;
  width: 29.16667vw;
  max-width: 130px;
  bottom: -40px;
  left: 20px;
}

@media only screen and (min-width: 960px) {
  .recruit-initiative__illu03 {
    width: 140px;
    bottom: -70px;
    left: 45px;
    z-index: 3;
  }
}

/* .recruit-interview
------------------------------------------------------------*/
@media only screen and (min-width: 960px) {
  .recruit-interview {
    padding: 0;
  }
}

.recruit-interview:before {
  display: block;
  width: 100%;
  height: 100px;
  content: '';
  background: url(assets/images/recruit/recruit_bg_10_sp.png) no-repeat bottom center;
  background-size: 100% 100%;
}

@media only screen and (min-width: 960px) {
  .recruit-interview:before {
    height: 300px;
    background: url(assets/images/recruit/recruit_bg_10.png) no-repeat bottom center;
    background-size: 100% 100%;
  }
}

.recruit-interview h2 {
  margin-bottom: 4.60417vw;
}

.recruit-interview h2:before {
  content: '';
  display: inline-block;
  width: 20.04167vw;
  height: 13vw;
  position: absolute;
  background: url(assets/images/recruit/recruit_ti_08.png) no-repeat top center;
  background-size: 100% 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 960px) {
  .recruit-interview h2:before {
    width: 140px;
    height: 93px;
  }
}

.recruit-interview__lead {
  text-align: center;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .recruit-interview__lead {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
    margin-bottom: 2.70833vw;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-interview__lead {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 28px;
    line-height: 2.8rem;
    margin-bottom: 35px;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-interview__row {
    margin-right: -5px;
    margin-left: -5px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}

.recruit-interview__overlay {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  transition: .3s;
}

.recruit-interview section {
  transition: .3s;
  width: 100%;
  margin: 0 auto 20px;
  padding: 5px;
}

.recruit-interview section:hover {
  text-decoration: none;
}

.recruit-interview section:hover .recruit-interview__overlay {
  background-color: rgba(255, 231, 76, 0.7);
}

.recruit-interview section:hover a {
  text-decoration: none;
}

.recruit-interview section:hover p, .recruit-interview section:hover h3 {
  color: #000;
}

.recruit-interview section:hover span:before {
  background: #000;
}

@media only screen and (min-width: 768px) {
  .recruit-interview section {
    margin: 0;
    width: 50%;
    max-width: 100%;
  }
}

.recruit-interview section a {
  color: #fff;
  display: block;
  padding: 5.41667vw 29.16667vw 5.41667vw 5.41667vw;
  height: 100%;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .recruit-interview section a {
    padding: 4.16667vw 16.66667vw 4.16667vw 4.16667vw;
    min-height: 24.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-interview section a {
    padding: 40px 180px 40px 30px;
    min-height: 232px;
  }
}

.recruit-interview section p {
  color: #fff;
  transition: .3s;
}

.recruit-interview__body {
  display: block;
  position: relative;
  z-index: 2;
}

@media only screen and (min-width: 960px) {
  .recruit-interview__num {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
    margin-bottom: 15px;
  }
}

.recruit-interview__num span:before {
  content: '';
  display: inline-block;
  width: 40px;
  height: 1px;
  background: #fff;
  margin: 0 5px 0 3px;
  position: relative;
  top: -4px;
  transition: .3s;
}

.recruit-interview h3 {
  color: #fff;
  transition: .3s;
  font-size: 24px;
  font-size: 5vw;
  line-height: 1.66667;
  margin-bottom: 15px;
}

@media only screen and (min-width: 480px) {
  .recruit-interview h3 {
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 1.6;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-interview h3 {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 30px;
    line-height: 3rem;
    margin-bottom: 30px;
  }
}

.recruit-interview__dept {
  font-size: 11px;
  font-size: 2.29167vw;
  line-height: 1;
}

@media only screen and (min-width: 768px) {
  .recruit-interview__dept {
    font-size: 11px;
    font-size: 1.14583vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-interview__dept {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem;
    margin-bottom: 10px;
  }
}

.recruit-interview__name {
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 1;
}

@media only screen and (min-width: 768px) {
  .recruit-interview__name {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-interview__name {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
  }
}

.recruit-interview__name span {
  font-size: 11px;
  font-size: 2.29167vw;
  line-height: 2;
}

@media only screen and (min-width: 768px) {
  .recruit-interview__name span {
    font-size: 11px;
    font-size: 1.14583vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-interview__name span {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem;
    margin-left: 15px;
  }
}

/* .recruit-message
------------------------------------------------------------*/
.recruit-message {
  background: url(assets/images/recruit/recruit_bg_05.jpg) no-repeat bottom right;
  background-size: 140% auto;
  padding: 70px 0 70%;
}

@media only screen and (min-width: 960px) {
  .recruit-message {
    background: url(assets/images/recruit/recruit_bg_05.jpg) no-repeat bottom center;
    background-size: 100% auto;
    padding: 70px 20px 115px;
  }
}

.recruit-message h2 {
  margin-bottom: 4.60417vw;
}

.recruit-message h2:before {
  content: '';
  display: inline-block;
  width: 18.95833vw;
  height: 13.95833vw;
  position: absolute;
  background: url(assets/images/recruit/recruit_ti_06.png) no-repeat top center;
  background-size: 100% 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 960px) {
  .recruit-message h2:before {
    width: 118px;
    height: 90px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-message h2:after {
    width: 143px;
  }
}

.recruit-message h3 {
  color: #FFDC00;
  font-size: 23px;
  font-size: 4.79167vw;
  line-height: 1.30435;
  text-align: center;
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .recruit-message h3 {
    font-size: 23px;
    font-size: 2.39583vw;
    line-height: 1.30435;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-message h3 {
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 46px;
    line-height: 4.6rem;
    padding: 40px 40px 0;
    text-align: left;
    margin-bottom: 10px;
  }
}

.recruit-message__txt {
  background: #fff;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
  padding: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .recruit-message__txt {
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 2;
    text-align: center;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-message__txt {
    max-width: 660px;
    width: 60%;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
    padding: 40px;
  }
}

.recruit-message__txt em {
  font-weight: bold;
}

.recruit-message__txt p + p {
  margin-top: 20px;
}

/* .recruit-requirements
------------------------------------------------------------*/
.recruit-requirements {
  background: url(assets/images/recruit/recruit_bg_06.jpg) repeat left top;
  padding-top: 14.89583vw;
  padding-bottom: 14.89583vw;
  position: relative;
}

.recruit-requirements::before {
  content: '';
  width: 85px;
  height: 48px;
  background-image: url(assets/images/recruit/recruit_bg11.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: 16.66667vw;
  left: 0;
}

@media only screen and (min-width: 480px) {
  .recruit-requirements::before {
    width: 17.60417vw;
    height: 10vw;
    top: 10.41667vw;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-requirements {
    padding: 60px 0 0;
  }
  .recruit-requirements::before {
    width: 169px;
    height: 96px;
    top: 100px;
  }
}

.recruit-requirements__inner {
  position: relative;
  padding-right: 5.41667vw;
  padding-left: 5.41667vw;
}

@media only screen and (min-width: 960px) {
  .recruit-requirements__inner {
    max-width: 920px;
    width: 100%;
    padding: 0 20px;
    margin: 0 auto;
  }
}

.recruit-requirements h2 {
  margin-bottom: 4.60417vw;
}

.recruit-requirements h2:before {
  content: '';
  display: inline-block;
  width: 20.83333vw;
  height: 10.875vw;
  position: absolute;
  background: url(assets/images/recruit/recruit_ti_07.png) no-repeat top center;
  background-size: 100% 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 960px) {
  .recruit-requirements h2:before {
    width: 172px;
    height: 90px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-requirements h2:after {
    width: 143px;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-requirements__row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}

.recruit-requirements section {
  margin-bottom: 8.125vw;
}

@media only screen and (min-width: 480px) {
  .recruit-requirements section {
    margin-bottom: 5.20833vw;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-requirements section {
    width: 48%;
    margin-bottom: 70px;
  }
}

.recruit-requirements__head {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}

@media only screen and (min-width: 960px) {
  .recruit-requirements__head {
    margin-bottom: 30px;
  }
}

.recruit-requirements__dept {
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .recruit-requirements__dept {
    width: 70px;
  }
}

.recruit-requirements__dept img {
  line-height: 0;
  width: 51px;
}

.recruit-requirements__dept p {
  color: #FFDC00;
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 17px;
  line-height: 1.7rem;
  text-align: center;
}

.recruit-requirements__info {
  padding-left: 10px;
}

@media only screen and (min-width: 960px) {
  .recruit-requirements__info {
    width: calc(100% - 80px);
  }
}

.recruit-requirements__info h3 {
  font-size: 23px;
  font-size: 4.79167vw;
  line-height: 1;
  margin-bottom: 10px;
}

@media only screen and (min-width: 480px) {
  .recruit-requirements__info h3 {
    font-size: 23px;
    font-size: 2.39583vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-requirements__info h3 {
    font-size: 23px;
    font-size: 2.3rem;
    line-height: 23px;
    line-height: 2.3rem;
    margin-bottom: 15px;
  }
}

.recruit-requirements__info p {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .recruit-requirements__info p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-requirements__info p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.recruit-requirements__content {
  background: #fff;
  position: relative;
  padding: 50px 25px 25px;
}

@media only screen and (min-width: 960px) {
  .recruit-requirements__content {
    padding: 60px 25px;
  }
}

.recruit-requirements__content h4 {
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1.53846;
  margin-bottom: 10px;
}

@media only screen and (min-width: 480px) {
  .recruit-requirements__content h4 {
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-requirements__content h4 {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 30px;
    line-height: 3rem;
    margin-bottom: 30px;
  }
}

.recruit-requirements__content p {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.53846;
}

@media only screen and (min-width: 480px) {
  .recruit-requirements__content p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-requirements__content p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.recruit-requirements__cat {
  display: flex;
  justify-content: flex-end;
  position: absolute;
  right: 0;
  top: -12px;
}

.recruit-requirements__cat li {
  width: 61.5px;
}

@media only screen and (min-width: 960px) {
  .recruit-requirements__cat li {
    width: 62.5px;
    margin-left: 10px;
  }
}

.recruit-requirements__illu01 {
  display: none;
}

@media only screen and (min-width: 960px) {
  .recruit-requirements__illu01 {
    position: absolute;
    left: -20px;
    top: 0;
    width: 151px;
  }
}

/* .recruit-data
------------------------------------------------------------*/
.recruit-data {
  position: relative;
}

@media only screen and (min-width: 960px) {
  .recruit-data {
    padding-bottom: 50px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-data:before {
    content: '';
    display: block;
    width: 100%;
    height: 140px;
    background: url(assets/images/recruit/recruit_bg_06_2.png) repeat-x top left;
    background-size: auto 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
  }
}

.recruit-data__wrapper {
  position: relative;
  padding: 5.41667vw;
  padding-right: 0;
  padding-left: 0;
}

.recruit-data__illu01 {
  display: none;
}

@media only screen and (min-width: 960px) {
  .recruit-data__illu01 {
    display: block;
    position: absolute;
    left: 0;
    top: 80px;
    width: 162px;
  }
}

.recruit-data__illu02 {
  display: none;
}

@media only screen and (min-width: 960px) {
  .recruit-data__illu02 {
    display: block;
    position: absolute;
    right: 0;
    top: 80px;
    width: 162px;
    overflow: hidden;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-data .l-recruit__inner {
    margin-top: -30px;
    position: relative;
    z-index: 3;
  }
}

.recruit-data:after {
  content: '';
  display: block;
  width: 100%;
  height: 40px;
  background: url(assets/images/recruit/recruit_edge_bottom.png) repeat-x top left;
  position: absolute;
  left: 0;
  bottom: -37px;
}

.recruit-data__head {
  position: relative;
}

@media only screen and (min-width: 960px) {
  .recruit-data__head {
    padding-top: 70px;
  }
}

.recruit-data__head img {
  width: 100%;
  height: auto;
}

@media only screen and (min-width: 960px) {
  .recruit-data__head:before {
    content: '';
    width: 100%;
    max-width: 1200px;
    height: 100%;
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    background: url(assets/images/recruit/recruit_bg_08.png) no-repeat bottom center;
    background-size: contain;
  }
}

.recruit-data h2 {
  margin-bottom: 4.60417vw;
}

.recruit-data h2:before {
  content: '';
  display: inline-block;
  width: 10.29167vw;
  height: 13.27083vw;
  position: absolute;
  background: url(assets/images/recruit/recruit_ti_09.png) no-repeat top center;
  background-size: 100% 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 960px) {
  .recruit-data h2:before {
    width: 61px;
    height: 83px;
  }
}

.recruit-data__tab-list {
  display: flex;
  justify-content: center;
}

.recruit-data__tab-list li {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer;
  width: 150px;
  height: 64px;
  margin: 0 7px;
}

@media only screen and (min-width: 960px) {
  .recruit-data__tab-list li {
    width: 235px;
    height: 105px;
    margin: 0 20px;
  }
}

.recruit-data__tab-list li.new {
  background: url(assets/images/recruit/recruit_tab_01.png) no-repeat top center;
  background-size: contain;
}

.recruit-data__tab-list li.new.active, .recruit-data__tab-list li.new:hover {
  background: url(assets/images/recruit/recruit_tab_01_active.png) no-repeat top center;
  background-size: contain;
}

.recruit-data__tab-list li.mid {
  background: url(assets/images/recruit/recruit_tab_02.png) no-repeat top center;
  background-size: contain;
}

.recruit-data__tab-list li.mid.active, .recruit-data__tab-list li.mid:hover {
  background: url(assets/images/recruit/recruit_tab_02_active.png) no-repeat top center;
  background-size: contain;
}

.recruit-data__content {
  display: none;
  border: 2px solid #FFDC00;
  padding: 5.41667vw;
}

@media only screen and (min-width: 960px) {
  .recruit-data__content {
    margin-top: -2px;
    padding: 90px 70px;
    border: 3px solid #FFDC00;
  }
}

.recruit-data__content.open {
  display: block;
}

@media only screen and (min-width: 960px) {
  .recruit-data__list dl {
    display: flex;
    justify-content: space-between;
  }
}

.recruit-data__list dl dt {
  font-weight: bold;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.42857;
  margin-bottom: 5px;
}

@media only screen and (min-width: 480px) {
  .recruit-data__list dl dt {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-data__list dl dt {
    margin-bottom: 0;
    width: 144px;
    padding: 25px 10px;
    background: url(assets/images/recruit/recruit_ln_02.png) no-repeat center bottom;
  }
}

.recruit-data__list dl dd {
  border-bottom: 2px solid #FFDC00;
  padding-bottom: 10px;
  margin-bottom: 10px;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.42857;
}

@media only screen and (min-width: 480px) {
  .recruit-data__list dl dd {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-data__list dl dd {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-data__list dl dd {
    width: calc(100% - 200px);
    padding: 25px 10px;
    margin-bottom: 0;
    font-weight: bold;
  }
}

/* .recruit-data
------------------------------------------------------------*/
.recruit-parttime {
  background: url(assets/images/recruit/recruit_bg_03.jpg) repeat left center;
  padding: 120px 0 60px;
}

@media only screen and (min-width: 960px) {
  .recruit-parttime__inner {
    max-width: 1100px;
    width: 100%;
    padding: 0 20px;
    margin: 0 auto;
  }
}

.recruit-parttime h2 {
  padding-top: 0;
  margin-bottom: 20px;
}

.recruit-parttime__content {
  background: #fff;
  padding: 5.41667vw;
}

@media only screen and (min-width: 960px) {
  .recruit-parttime__content {
    padding: 30px 70px 90px;
  }
}

.recruit-parttime .recruit-data__list dl dd {
  border-bottom: 2px solid #CCD5E3;
}

/* .recruit flow
------------------------------------------------------------*/
.recruit-flow {
  background: #FFE660;
  padding-top: 14.89583vw;
  padding-bottom: 14.89583vw;
}

@media only screen and (min-width: 768px) {
  .recruit-flow {
    padding: 60px 0 0;
  }
}

.recruit-flow h2 {
  margin-bottom: 40px;
}

.recruit-flow h2::before {
  content: '';
  display: inline-block;
  width: 11.10417vw;
  height: 13.8125vw;
  position: absolute;
  background: url(assets/images/recruit/recruit_ti_10.png) no-repeat top center;
  background-size: 100% 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 768px) {
  .recruit-flow h2::before {
    width: 70px;
    height: 89px;
  }
}

.recruit-flow__heading {
  margin: 0 auto 20px;
  padding: 15px 20px;
  width: 100%;
  max-width: 200px;
  text-align: center;
  border: 2px solid #505050;
  font-size: 20px;
  font-size: 2rem;
  line-height: 20px;
  line-height: 2rem;
}

.recruit-flow__list {
  margin-bottom: 50px;
}

@media only screen and (min-width: 768px) {
  .recruit-flow__list {
    margin-bottom: 40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}

.recruit-flow__item {
  margin-bottom: 40px;
  position: relative;
}

.recruit-flow__item:last-of-type .recruit-flow__card::after {
  display: none;
}

@media only screen and (min-width: 768px) {
  .recruit-flow__item {
    margin-bottom: 0;
    padding: 0 20px;
    width: 25%;
  }
  .recruit-flow__item:first-of-type {
    width: 127px;
  }
  .recruit-flow__item:first-of-type .recruit-flow__card {
    margin: 0 auto;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }
  .recruit-flow__item:first-of-type .recruit-flow__card .card__heading {
    writing-mode: vertical-rl;
  }
}

.recruit-flow__num {
  margin-bottom: 5px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 16px;
  line-height: 1.6rem;
  text-align: center;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
}

@media only screen and (min-width: 768px) {
  .recruit-flow__num {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-flow__num em {
    padding-left: 5px;
    font-size: 30px;
    font-size: 3rem;
    line-height: 30px;
    line-height: 3rem;
  }
}

.recruit-flow__card {
  padding: 20px;
  background-color: #fff;
  border: 2px solid #dbe1eb;
  height: calc(100% - 35px);
  position: relative;
}

.recruit-flow__card::after {
  content: '';
  background: url(assets/images/recruit/recruit_arrow_down_04.png) no-repeat center center;
  background-size: contain;
  display: block;
  position: absolute;
  bottom: -23px;
  left: 50%;
  transform: translateX(-50%);
  width: 30px;
  height: 14px;
}

@media only screen and (min-width: 768px) {
  .recruit-flow__card::after {
    width: 14px;
    height: 30px;
    display: inline-block;
    background: url(assets/images/recruit/recruit_arrow_right_02.png) no-repeat center center;
    background-size: contain;
    top: 50%;
    transform: translateY(-50%);
    right: -30px;
    left: auto !important;
  }
}

.recruit-flow__card .card__heading {
  margin-bottom: 10px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 28px;
  line-height: 2.8rem;
  text-align: center;
}

.recruit-flow__card .card__heading span {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 26px;
  line-height: 2.6rem;
  display: block !important;
}

.recruit-flow__card .card__text {
  margin-bottom: 5px;
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 24px;
  line-height: 2.4rem;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .recruit-flow__card .card__text {
    text-align: left;
  }
}

.recruit-flow__card .card__note {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 18px;
  line-height: 1.8rem;
  text-align: center;
  font-weight: bold;
}

.recruit-flow__card .card__note::before {
  content: '※';
}

@media only screen and (min-width: 768px) {
  .recruit-flow__card .card__note {
    text-align: left;
  }
}

.recruit-flow .recruit-flow__note {
  text-align: center;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.53846;
}

@media only screen and (min-width: 480px) {
  .recruit-flow .recruit-flow__note {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-flow .recruit-flow__note {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.recruit-flow .recruit-flow__inner__sec2 .recruit-flow__note {
  letter-spacing: 0;
}

/* .recruit-entry
------------------------------------------------------------*/
.recruit-entry {
  background: url(assets/images/recruit/recruit_bg_03.jpg) repeat left center;
  position: relative;
  padding-top: 14.89583vw;
  padding-bottom: 14.89583vw;
}

@media only screen and (min-width: 960px) {
  .recruit-entry {
    padding: 200px 0 100px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry:before {
    content: '';
    display: block;
    width: 100%;
    height: 300px;
    background: url(assets/images/recruit/recruit_bg_09.png) no-repeat bottom center;
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
}

.recruit-entry h2 {
  margin-bottom: 20px;
}

.recruit-entry h2:before {
  content: '';
  display: inline-block;
  width: 13.54167vw;
  height: 15.4375vw;
  position: absolute;
  background: url(assets/images/recruit/recruit_ti_11.png) no-repeat top center;
  background-size: 100% 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 960px) {
  .recruit-entry h2:before {
    width: 86px;
    height: 99px;
  }
}

.recruit-entry__inner {
  padding-right: 5.41667vw;
  padding-left: 5.41667vw;
  position: relative;
}

@media only screen and (min-width: 960px) {
  .recruit-entry__inner {
    max-width: 840px;
    width: 100%;
    padding: 0 20px;
    margin: 0 auto;
  }
}

.recruit-entry__lead {
  text-align: center;
  font-weight: bold;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.53846;
  margin-bottom: 20px;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__lead {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__lead {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
    margin-bottom: 60px;
  }
}

.recruit-entry__txt {
  position: absolute;
  width: 105px;
  top: 0;
  right: 5.41667vw;
}

@media only screen and (min-width: 960px) {
  .recruit-entry__txt {
    top: 40px;
    right: 0;
    width: 210px;
  }
}

.recruit-entry section {
  background: #fff;
  border: 2px solid #FFDC00;
  padding: 5.41667vw;
}

.recruit-entry section + section {
  margin-top: 20px;
}

@media only screen and (min-width: 960px) {
  .recruit-entry section + section {
    margin-top: 40px;
  }
}

.recruit-entry__address {
  font-weight: bold;
  text-align: center;
}

@media only screen and (min-width: 960px) {
  .recruit-entry__address {
    padding: 30px !important;
  }
}

.recruit-entry__address h4 {
  text-align: center;
  font-weight: bold;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.64835;
  margin-bottom: 5px;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__address h4 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
    margin-bottom: 20px;
  }
}

.recruit-entry__address p {
  text-align: center;
  font-weight: normal;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.64835;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__address p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form {
    padding: 55px;
  }
}

.recruit-entry__form h3 {
  position: relative;
  text-align: center;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.64835;
  padding-bottom: 2.70833vw;
  margin-bottom: 2.70833vw;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__form h3 {
    font-size: 22px;
    font-size: 2.29167vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form h3 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
    margin-bottom: 25px;
    padding-bottom: 20px;
  }
}

.recruit-entry__form h3:after {
  position: absolute;
  bottom: 0;
  left: 50%;
  display: inline-block;
  width: 42.08333vw;
  height: .65vw;
  content: '';
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url(assets/images/recruit/recruit_ln_01.png) no-repeat top center;
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form h3:after {
    width: 260px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form li {
    margin-bottom: 30px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form .recruit-entry__lead {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
    text-align: center;
    margin-bottom: 40px;
  }
}

.recruit-entry__form dl {
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__form dl {
    margin-bottom: 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form dl {
    margin-bottom: 0;
  }
}

.recruit-entry__form dt {
  font-weight: bold;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.84615;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__form dt {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form dt {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 15px;
    line-height: 1.5rem;
    margin-bottom: 15px;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form dt .required {
    margin-right: 5px;
  }
}

.recruit-entry__form input[type="text"], .recruit-entry__form input[type="email"] {
  width: 100%;
  border: 1px solid #CDCDCD;
  padding: 10px;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.84615;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__form input[type="text"], .recruit-entry__form input[type="email"] {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form input[type="text"], .recruit-entry__form input[type="email"] {
    padding: 14px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.recruit-entry__form label {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.84615;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__form label {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 768px) {
  .recruit-entry__form label {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form label {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.recruit-entry__form .select {
  overflow: hidden;
  border: 1px solid #CDCDCD;
  position: relative;
}

.recruit-entry__form .select:after {
  content: '';
  background: url(assets/images/recruit/recruit_arrow_down_02.png) no-repeat center center;
  background-size: contain;
  position: absolute;
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form .select:after {
    width: 15px;
    height: 8px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
  }
}

.recruit-entry__form .select select {
  width: 120%;
  padding: 10px;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.84615;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__form .select select {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form .select select {
    padding: 14px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.recruit-entry__form textarea {
  width: 100%;
  border: 1px solid #CDCDCD;
  padding: 10px;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.84615;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__form textarea {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form textarea {
    padding: 14px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.recruit-entry__form .radio {
  display: inline-block;
  margin-right: 10px;
}

.recruit-entry__form .radio input[type="radio"] {
  position: absolute;
  opacity: 0;
}

.recruit-entry__form .radio input[type="radio"] + .radio-label {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.84615;
}

@media only screen and (min-width: 480px) {
  .recruit-entry__form .radio input[type="radio"] + .radio-label {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__form .radio input[type="radio"] + .radio-label {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.recruit-entry__form .radio input[type="radio"] + .radio-label:before {
  content: '';
  background: #fff;
  border-radius: 100%;
  border: 1px solid #CDCDCD;
  display: inline-block;
  width: 18px;
  height: 18px;
  position: relative;
  top: 5px;
  margin-right: 7px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  transition: all 250ms ease;
}

.recruit-entry__form .radio input[type="radio"]:checked + .radio-label:before {
  background-color: #FFDC00;
  box-shadow: inset 0 0 0 3px #fff;
}

.recruit-entry__form .radio input[type="radio"] + .radio-label:empty:before {
  margin-right: 0;
}

.recruit-entry .required {
  color: #FFDC00;
}

@media only screen and (min-width: 960px) {
  .recruit-entry__row {
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry__row dl {
    width: 48%;
  }
}

.recruit-entry .submit {
  position: relative;
  display: inline-block;
  left: 50%;
  transform: translateX(-50%);
}

.recruit-entry .submit:after {
  content: '';
  display: inline-block;
  background: url(assets/images/recruit/recruit_arrow_right.png) no-repeat center center;
  width: 7px;
  height: 11px;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}

.recruit-entry .form-button {
  background: #FFDC00;
  width: 43.875vw;
  display: block;
  margin: 0 auto;
  text-align: left;
  font-weight: bold;
  position: relative;
  padding: 0 20px;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 3.3956;
}

@media only screen and (min-width: 480px) {
  .recruit-entry .form-button {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 3.4;
  }
}

@media only screen and (min-width: 960px) {
  .recruit-entry .form-button {
    width: 230px;
    font-size: 1.8rem;
  }
}

/**
/* page - tanamaga
============================================================*/
.l-contents__tanamaga {
  padding-bottom: 0;
  overflow-x: hidden;
}

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

.l-contents__tanamaga .br-sp {
  display: block;
}

.l-contents__tanamaga .br-pc {
  display: none;
}

@media only screen and (min-width: 960px) {
  .l-contents__tanamaga .br-sp {
    display: none;
  }
  .l-contents__tanamaga .br-pc {
    display: block;
  }
}

.l-contents__tanamaga .p-button:hover {
  text-decoration: none;
}

.l-contents__tanamaga .p-button:hover span {
  opacity: .6;
}

.l-contents__tanamaga .p-button span {
  transition: .2s;
}

.l-contents__tanamaga em {
  font-weight: bold;
}

.l-contents__tanamaga .spimg {
  display: block;
}

@media only screen and (min-width: 960px) {
  .l-contents__tanamaga .spimg {
    display: none;
  }
}

.l-contents__tanamaga .p-page__heading_lv1 img.spimg {
  width: 17.60417vw;
  position: absolute;
  top: -1vw;
  left: 50%;
  margin-left: -40%;
  z-index: -1;
}

@media only screen and (min-width: 480px) {
  .l-contents__tanamaga .p-page__heading_lv1 img.spimg {
    width: 8.80208vw;
    top: 11%;
    margin-left: -20%;
  }
}

@media only screen and (min-width: 768px) {
  .l-contents__tanamaga .p-page__heading_lv1 img.spimg {
    margin-left: -27%;
  }
}

/* tanamaga common
------------------------------------------------------------*/
.tanamaga__heading {
  text-align: center;
  margin-bottom: 40px;
  position: relative;
}

.tanamaga__heading--lv1 {
  color: #00316c;
  text-align: center;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  line-height: 1;
  font-size: 50px;
  font-size: 10.41667vw;
  line-height: 1;
  margin-bottom: 10px;
}

@media only screen and (min-width: 480px) {
  .tanamaga__heading--lv1 {
    font-size: 110px;
    font-size: 9.16667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga__heading--lv1 {
    font-size: 110px;
    font-size: 11rem;
    line-height: 110px;
    line-height: 11rem;
  }
}

.tanamaga__heading--lv2 {
  font-size: 2.5rem;
  border-bottom: none;
  padding-bottom: 5px;
  border-bottom: 3px solid #00316c;
  font-size: 20px;
  font-size: 4.16667vw;
  line-height: 1.8;
  color: #00316c;
  text-align: center;
  display: inline-block;
  white-space: nowrap;
}

@media only screen and (min-width: 480px) {
  .tanamaga__heading--lv2 {
    padding-bottom: 10px;
    font-size: 25px;
    font-size: 2.08333vw;
    line-height: 1.44;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga__heading--lv2 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 25px;
    line-height: 2.5rem;
  }
}

/* tanamaga-hero
------------------------------------------------------------*/
.tanamaga-hero {
  position: relative;
}

@media only screen and (min-width: 960px) {
  .tanamaga-hero {
    background: url(assets/images/tanamaga/tamanaga_bg_01.jpg) no-repeat right center;
    background-size: auto 100%;
    min-height: 400px;
  }
}

@media screen and (min-width: 1201px) {
  .tanamaga-hero {
    min-height: 500px;
  }
}

.tanamaga-hero .tanamaga__heading {
  display: none;
}

@media only screen and (min-width: 960px) {
  .tanamaga-hero .tanamaga__heading {
    display: block;
    position: absolute;
    left: 7%;
    top: 24%;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1201px) {
  .tanamaga-hero .tanamaga__heading {
    left: 12%;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-hero .tanamaga__heading p {
    position: absolute;
    width: 126px;
    height: 126px;
    left: -40px;
    top: -90px;
    z-index: 0;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-hero .tanamaga__heading h2 {
    text-align: left;
    z-index: 1;
    position: relative;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-hero .tanamaga__heading h3 {
    text-align: left;
    border: none;
    display: block;
    padding-bottom: 0;
  }
}

.tanamaga-hero .spimg {
  line-height: 0;
}

.tanamaga-hero .spimg img {
  max-width: 100%;
  height: auto;
}

/* tanamaga-info
------------------------------------------------------------*/
.tanamaga-info {
  background: #FAF6F2;
  padding-top: 16.25vw;
  padding-left: 10.83333vw;
  padding-right: 10.83333vw;
  padding-bottom: 16.25vw;
}

@media only screen and (min-width: 480px) {
  .tanamaga-info {
    padding-top: 8.125vw;
    padding-left: 5.41667vw;
    padding-right: 5.41667vw;
    padding-bottom: 8.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-info {
    padding: 60px 0;
  }
}

.tanamaga-info .tanamaga__heading--lv2 {
  color: #000;
  border: none;
}

.tanamaga-info .tanamaga__heading--lv2 span {
  position: relative;
}

.tanamaga-info .tanamaga__heading--lv2 span::before, .tanamaga-info .tanamaga__heading--lv2 span::after {
  content: '';
  width: 5.41667vw;
  height: 7.29167vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: block;
  position: absolute;
  top: -2px;
}

.tanamaga-info .tanamaga__heading--lv2 span::before {
  background-image: url(assets/images/common/heading_sideline_2_l.png);
  left: -33px;
}

.tanamaga-info .tanamaga__heading--lv2 span::after {
  background-image: url(assets/images/common/heading_sideline_2_r.png);
  right: -33px;
}

@media only screen and (min-width: 480px) {
  .tanamaga-info .tanamaga__heading--lv2 span::before, .tanamaga-info .tanamaga__heading--lv2 span::after {
    width: 2.39583vw;
    height: 3.33333vw;
  }
  .tanamaga-info .tanamaga__heading--lv2 span::before {
    left: -5.72917vw;
  }
  .tanamaga-info .tanamaga__heading--lv2 span::after {
    right: -5.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-info .tanamaga__heading--lv2 span::before, .tanamaga-info .tanamaga__heading--lv2 span::after {
    width: 23px;
    height: 32px;
  }
  .tanamaga-info .tanamaga__heading--lv2 span::before {
    left: -55px;
  }
  .tanamaga-info .tanamaga__heading--lv2 span::after {
    right: -55px;
  }
}

.tanamaga-info__lead {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  text-align: center;
  margin-bottom: 13.54167vw;
}

@media only screen and (min-width: 480px) {
  .tanamaga-info__lead {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
    margin-bottom: 6.77083vw;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-info__lead {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 20px;
    line-height: 2rem;
    margin-bottom: 60px;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-info__inner {
    max-width: 808px;
    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-info__row {
    display: flex;
    justify-content: space-between;
  }
}

.tanamaga-info section {
  text-align: center;
  border: 2.3px solid #000;
  position: relative;
  padding-top: 10.29167vw;
  padding-left: 6.77083vw;
  padding-right: 6.77083vw;
  padding-bottom: 10.29167vw;
  margin-bottom: 13.54167vw;
}

@media only screen and (min-width: 480px) {
  .tanamaga-info section {
    padding-top: 5.14583vw;
    padding-left: 3.38542vw;
    padding-right: 3.38542vw;
    padding-bottom: 5.14583vw;
    margin-bottom: 6.77083vw;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-info section {
    padding: 40px 25px 25px;
    width: 32%;
    margin-bottom: 0;
  }
}

.tanamaga-info section:last-child {
  margin-bottom: 0;
}

.tanamaga-info section .num {
  text-align: center;
  position: absolute;
  left: 50%;
  top: -.5em;
  transform: translateX(-50%);
  padding-left: 9.375vw;
  padding-right: 9.375vw;
  background: #faf6f2;
  font-size: 52px;
  font-size: 10.83333vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
}

@media only screen and (min-width: 480px) {
  .tanamaga-info section .num {
    font-size: 52px;
    font-size: 5.41667vw;
    line-height: 1;
    padding-left: 4.6875vw;
    padding-right: 4.6875vw;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-info section .num {
    font-size: 55px;
    font-size: 5.5rem;
    line-height: 55px;
    line-height: 5.5rem;
    padding: 0 20px;
  }
}

.tanamaga-info section h3 {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.85714;
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .tanamaga-info section h3 {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.42857;
    margin-bottom: 2.70833vw;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-info section h3 {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 20px;
    line-height: 2rem;
    margin-bottom: 25px;
  }
}

.tanamaga-info section p {
  text-align: center;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .tanamaga-info section p {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-info section p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

/* tanamaga-backnum
------------------------------------------------------------*/
.tanamaga-backnum a {
  font-family: 'futura-pt', sans-serif;
  transition: .3s;
}

.tanamaga-backnum a:hover {
  opacity: .6;
}

.tanamaga-backnum__inner {
  padding-top: 10.29167vw;
  padding-left: 9.47917vw;
  padding-right: 9.47917vw;
  padding-bottom: 10.29167vw;
}

@media only screen and (min-width: 480px) {
  .tanamaga-backnum__inner {
    padding-top: 5.14583vw;
    padding-left: 4.73958vw;
    padding-right: 4.73958vw;
    padding-bottom: 5.14583vw;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__inner {
    padding: 20px 20px 90px;
    width: 690px;
    margin: 0 auto;
  }
}

.tanamaga-backnum__arrow {
  margin-bottom: 18.95833vw;
}

@media only screen and (min-width: 480px) {
  .tanamaga-backnum__arrow {
    max-width: 280px;
    margin: 0 auto;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__arrow {
    max-width: 100%;
    width: 568px;
    margin: 0 auto 50px;
  }
}

.tanamaga-backnum__article {
  list-style-type: none;
  padding-left: 0;
  margin-bottom: 8.125vw;
  padding-left: 2.70833vw;
  padding-right: 2.70833vw;
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__article {
    margin-bottom: 30px;
    padding: 0;
  }
}

.tanamaga-backnum__article a {
  display: flex;
  justify-content: space-between;
  color: #00316c;
  text-decoration: none;
}

.tanamaga-backnum__article a:hover {
  text-decoration: none;
}

.tanamaga-backnum__article a > div {
  width: 47%;
}

.tanamaga-backnum__article .tanamaga-backnum__date {
  border-bottom: 1px solid #000;
  display: inline-block;
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__article .tanamaga-backnum__date {
    font-size: 1.5rem;
    margin-bottom: 10px;
  }
}

.tanamaga-backnum h4 {
  margin-top: 2.70833vw;
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum h4 {
    font-size: 5.6rem;
    padding-bottom: 25px;
    border-bottom: 10px solid #FADF00;
    display: inline-block;
  }
}

.tanamaga-backnum__circle {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2;
  text-align: center;
  background: #FADF00;
  width: 13.54167vw;
  height: 13.54167vw;
  border-radius: 50%;
  line-height: 13.54167vw;
  margin-bottom: 2.70833vw;
  text-decoration: none;
  font-weight: 700;
}

@media only screen and (min-width: 480px) {
  .tanamaga-backnum__circle {
    width: 6.77083vw;
    height: 6.77083vw;
    margin-bottom: 1.35417vw;
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1;
    line-height: 6.77083vw;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__circle {
    width: 100px;
    height: 100px;
    line-height: 100px;
    font-size: 2.6rem;
    margin-bottom: 30px;
  }
}

.tanamaga-backnum__list {
  list-style-type: none;
  padding: 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.tanamaga-backnum__list li {
  width: 48%;
  border-bottom: 1px solid #00316c;
  margin-bottom: 1.45833vw;
  padding-bottom: 1.45833vw;
}

@media only screen and (min-width: 480px) {
  .tanamaga-backnum__list li {
    margin-bottom: 0.72917vw;
    padding-bottom: 0.72917vw;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__list li {
    margin-bottom: 10px;
    padding-bottom: 10px;
  }
}

.tanamaga-backnum__list a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-right: 4.0625vw;
  background: url(assets/images/tanamaga/arrow_right.png) no-repeat right center;
  background-size: 1.66667vw;
  text-decoration: none;
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__list a {
    padding-right: 30px;
  }
}

.tanamaga-backnum__list a:hover {
  text-decoration: none;
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__list a {
    background-size: 10px 11px;
  }
}

.tanamaga-backnum__info {
  padding-top: 2.70833vw;
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__info {
    width: 33% !important;
  }
}

.tanamaga-backnum__img {
  line-height: 0;
  border: 3px solid #00316c;
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__img {
    width: 60% !important;
  }
}

.tanamaga-backnum__date {
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 2.30769;
  font-weight: bold;
  color: #000;
}

@media only screen and (min-width: 480px) {
  .tanamaga-backnum__date {
    font-size: 11px;
    font-size: 1.14583vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__date {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.tanamaga-backnum__vol {
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 1;
  color: #00316c;
  font-weight: bold;
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__vol {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 15px;
    line-height: 1.5rem;
  }
}

.tanamaga-backnum__vol em {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.85714;
}

@media only screen and (min-width: 480px) {
  .tanamaga-backnum__vol em {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .tanamaga-backnum__vol em {
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 32px;
    line-height: 3.2rem;
  }
}

/**
/* page - contact
============================================================*/
.contact__heading span {
  position: relative;
}

.contact__heading span::before {
  content: '';
  width: 30px;
  height: 30px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: inline-block;
  position: relative;
  top: 6px;
}

@media only screen and (min-width: 480px) {
  .contact__heading span {
    position: relative;
  }
  .contact__heading span::before {
    width: 3.75vw;
    height: 3.75vw;
  }
}

@media only screen and (min-width: 960px) {
  .contact__heading span::before {
    width: 36px;
    height: 36px;
  }
}

.contact__heading._tel span::before {
  background-image: url(assets/images/contact/contact_nav_icon_tel_blue.png);
}

.contact__heading._mail span::before {
  background-image: url(assets/images/contact/contact_nav_icon_mail_blue.png);
}

.contact__heading_en {
  margin-bottom: 0;
}

.contact-nav {
  margin: 0 auto 0vw;
  padding-top: 13.54167vw;
  padding-right: 20px;
  padding-left: 20px;
  width: 100%;
  max-width: 530px;
}

@media only screen and (min-width: 480px) {
  .contact-nav {
    padding-top: 9.375vw;
  }
}

@media only screen and (min-width: 960px) {
  .contact-nav {
    padding-top: 90px;
  }
}

@media only screen and (min-width: 1280px) {
  .contact-nav {
    padding-right: 0;
    padding-left: 0;
  }
}

.contact-nav ul {
  list-style-type: none;
  padding-left: 0;
  border-left: 1px solid #00316c;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.contact-nav ul li {
  width: 50%;
  border-right: 1px solid #00316c;
}

.contact-nav ul li a {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.5;
  text-align: center;
  font-weight: bold;
  display: block;
  position: relative;
}

.contact-nav ul li a::before {
  content: '';
  margin: 0 auto;
  width: 36px;
  height: 36px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
}

.contact-nav ul li a::after {
  content: "";
  margin-left: 20px;
  width: 8px;
  height: 8px;
  border: 2px solid;
  border-color: #000 #000 transparent transparent;
  transform: rotate(45deg);
  display: inline-block;
  position: relative;
  top: -1px;
}

@media only screen and (min-width: 480px) {
  .contact-nav ul li a {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .contact-nav ul li a {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.contact-nav ul li a._tel::before {
  background-image: url(assets/images/contact/contact_nav_icon_tel.png);
}

.contact-nav ul li a._mail::before {
  background-image: url(assets/images/contact/contact_nav_icon_mail.png);
}

.contact-sec1 {
  padding: 10.41667vw 20px 14.58333vw;
}

@media only screen and (min-width: 480px) {
  .contact-sec1 {
    padding-top: 8.33333vw;
    padding-bottom: 11.45833vw;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec1 {
    padding-top: 80px;
    padding-bottom: 0px;
  }
}

@media only screen and (min-width: 1280px) {
  .contact-sec1 {
    padding-left: 0;
    padding-right: 0;
  }
}

.contact-sec1__card {
  margin: 0 auto;
  padding: 30px 20px 40px;
  width: 100%;
  max-width: 640px;
  background-color: #ffe86c;
  position: relative;
}

.contact-sec1__card::before {
  content: '';
  width: 80px;
  height: 37px;
  background-image: url(assets/images/contact/contact_sec1_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}

@media only screen and (min-width: 480px) {
  .contact-sec1__card {
    padding-top: 3.64583vw;
    padding-bottom: 6.25vw;
  }
  .contact-sec1__card::before {
    width: 12.60417vw;
    height: 5.83333vw;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec1__card {
    padding-top: 35px;
    padding-bottom: 60px;
  }
  .contact-sec1__card::before {
    width: 121px;
    height: 56px;
  }
}

.contact-sec1__heading {
  margin-bottom: 8.33333vw;
  color: #00316c;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .contact-sec1__heading {
    margin-bottom: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec1__heading {
    margin-bottom: 30px;
  }
}

.contact-sec1__heading span {
  font-size: 18px;
  font-size: 3.75vw;
  line-height: 1.55556;
  display: inline-block;
  position: relative;
}

.contact-sec1__heading span::before, .contact-sec1__heading span::after {
  content: '';
  width: 15px;
  height: 23px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  bottom: 0;
}

.contact-sec1__heading span::before {
  background-image: url(assets/images/common/heading_dotline_l_blue.png);
  left: -30px;
}

.contact-sec1__heading span::after {
  background-image: url(assets/images/common/heading_dotline_r_blue.png);
  right: -30px;
}

@media only screen and (min-width: 480px) {
  .contact-sec1__heading span {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
  .contact-sec1__heading span::before, .contact-sec1__heading span::after {
    width: 1.5625vw;
    height: 2.39583vw;
  }
  .contact-sec1__heading span::before {
    left: -2.08333vw;
  }
  .contact-sec1__heading span::after {
    right: -2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec1__heading span {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
  .contact-sec1__heading span::before, .contact-sec1__heading span::after {
    width: 15px;
    height: 23px;
  }
  .contact-sec1__heading span::before {
    left: -30px;
  }
  .contact-sec1__heading span::after {
    right: -30px;
  }
}

.contact-sec1__lead {
  font-size: 22px;
  font-size: 4.58333vw;
  line-height: 2;
  color: #00316c;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .contact-sec1__lead {
    font-size: 20px;
    font-size: 2.08333vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec1__lead {
    font-size: 20px;
    font-size: 2rem;
    line-height: 40px;
    line-height: 4rem;
  }
}

.contact-sec1__lead span {
  font-size: 19px;
  font-size: 3.95833vw;
  line-height: 2.10526;
}

@media only screen and (min-width: 480px) {
  .contact-sec1__lead span {
    font-size: 17px;
    font-size: 1.77083vw;
    line-height: 2.35294;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec1__lead span {
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 40px;
    line-height: 4rem;
  }
}

.contact-sec1__button {
  margin: 0 auto;
  letter-spacing: 0;
  width: 280px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -25px;
  font-size: 14px;
  font-size: 2.91667vw;
  line-height: 4.28571;
}

@media only screen and (min-width: 480px) {
  .contact-sec1__button {
    width: 39.58333vw;
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 4.375;
    max-width: 320px;
    bottom: -3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec1__button {
    bottom: -30px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 70px;
    line-height: 7rem;
  }
}

.contact-sec2 {
  padding-top: 10.83333vw;
  padding-bottom: 10.83333vw;
  background-color: #faf6f2;
}

@media only screen and (min-width: 480px) {
  .contact-sec2 {
    padding-top: 8.33333vw;
    padding-bottom: 7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec2 {
    padding-top: 80px;
    padding-bottom: 70px;
  }
}

.contact-sec2__inner {
  margin: 0 auto;
  width: 100%;
  max-width: 640px;
  position: relative;
}

.contact-sec2__tel {
  margin-bottom: 5.41667vw;
  font-size: 41.6px;
  font-size: 8.66667vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .contact-sec2__tel {
    margin-bottom: 3.125vw;
    font-size: 40px;
    font-size: 4.16667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec2__tel {
    margin-bottom: 30px;
    font-size: 40px;
    font-size: 4rem;
    line-height: 40px;
    line-height: 4rem;
  }
}

.contact-sec2__biztime {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 2;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .contact-sec2__biztime {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec2__biztime {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.contact-sec2__balloon {
  margin: 0 auto 5.41667vw;
  width: 38.45833vw;
  height: 42.52083vw;
  display: block;
}

@media only screen and (min-width: 480px) {
  .contact-sec2__balloon {
    width: 18.22917vw;
    height: 18.22917vw;
    position: absolute;
    top: -1.04167vw;
    right: 8.33333vw;
  }
}

@media only screen and (min-width: 768px) {
  .contact-sec2__balloon {
    top: -1.04167vw;
    right: 0vw;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec2__balloon {
    width: 175px;
    height: 175px;
    top: -10px;
    right: -20px;
  }
}

/* 
------------------------------------------------------------*/
#contact-famnet{
  margin: 50px auto 110px;
  max-width: 640px;
}
#contact-famnet .fukidashi {
  text-align: center;
}
#contact-famnet .fukidashi span {
  padding: 0 30px;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.55556;
  display: inline-block;
  position: relative;
  color: #00316c;
}
#contact-famnet .fukidashi span::before,
#contact-famnet .fukidashi span::after {
  content: '';
  width: 15px;
  height: 23px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  bottom: 0;
}
#contact-famnet .fukidashi span::before {
  background-image: url(assets/images/common/heading_dotline_l_blue.png);
  left: 0px;
}
#contact-famnet .fukidashi span::after {
  background-image: url(assets/images/common/heading_dotline_r_blue.png);
  right: 0px;
}
#contact-famnet a{
  margin-top: 10px;
  padding: 15px;
  display: block;
  position: relative;
  border-radius: 5px;
  background-color: #00316c;
  text-align: center;
  color: #ffe86c;
  font-weight: 600;
  text-decoration: none;
  transition: 500ms;
}
#contact-famnet a:hover{
  opacity: 0.6;
}
#contact-famnet a img{
  width: 100px;
  position: absolute;
  left: 10px;
  bottom: 0;
}
#contact-famnet a::after {
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg);
    content: "";
    border-top: 2px solid #ffe86c;
    border-right: 2px solid #ffe86c;
}
@media only screen and (max-width: 767px) {
  #contact-famnet{
    margin: -20px auto 50px;
    padding: 0 20px;
  }
  #contact-famnet a img{
    width: 70px;
  }
}


/* 
------------------------------------------------------------*/
.contact-sec3 {
  padding-top: 13.54167vw;
  padding-bottom: 13.54167vw;
}

@media only screen and (min-width: 480px) {
  .contact-sec3 {
    padding-top: 10.41667vw;
    padding-bottom: 7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .contact-sec3 {
    padding-top: 100px;
    padding-bottom: 70px;
  }
}

/**
/* page - partner
============================================================*/
.partner-contents {
  margin: 0 auto;
  padding-top: 8.125vw;
  width: 100%;
  max-width: 780px;
}

@media only screen and (min-width: 480px) {
  .partner-contents {
    padding-top: 9.375vw;
  }
}

@media only screen and (min-width: 960px) {
  .partner-contents {
    padding-top: 90px;
  }
}

.partner__lead {
  margin-bottom: 13.54167vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
  color: #00316c;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .partner__lead {
    margin-bottom: 5.20833vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .partner__lead {
    margin-bottom: 50px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.partner__row {
  text-align: center;
}

.partner__row ul {
  list-style-type: none;
  padding-left: 0;
  display: inline-block;
}

.partner__row ul li {
  text-align: left;
  position: relative;
}

.partner__row ul li::before {
  content: '・';
}

.partner-single__heading {
  margin-bottom: 13.54167vw;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1;
  color: #00316c;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .partner-single__heading {
    margin-bottom: 5.20833vw;
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .partner-single__heading {
    margin-bottom: 50px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 18px;
    line-height: 1.8rem;
  }
}

.partner-single__row {
  text-align: center;
}

.partner-single__body p {
  margin-bottom: 30px;
  text-align: center;
}

.wp-post-menu {
  margin-bottom: 13.54167vw;
  padding: 30px 30px 15px;
  width: 100%;
  border: 1px solid #ccd5e3;
}

@media only screen and (min-width: 480px) {
  .wp-post-menu {
    margin-bottom: 7.29167vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-menu {
    bottom: 70px;
  }
}

.wp-post-menu__roupe {
  margin: 0 auto 6.25vw;
  width: 7.91667vw;
  height: auto;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-post-menu__roupe {
    margin-bottom: 3.125vw;
    width: 3.95833vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-menu__roupe {
    margin-bottom: 30px;
    width: 38px;
  }
}

.wp-post-menu__heading {
  margin-top: -37px;
  margin-bottom: 23px;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1;
  color: #00316c;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .wp-post-menu__heading {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-menu__heading {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
  }
}

.wp-post-menu__heading span {
  padding: 0 20px;
  background-color: #fff;
}

.wp-post-menu__tags {
  margin-right: -2px;
  margin-left: -2px;
  margin-bottom: 4.16667vw;
  list-style-type: none;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .wp-post-menu__tags {
    margin-bottom: 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-menu__tags {
    margin-bottom: 20px;
  }
}

.wp-post-menu__tags li {
  padding: 0.41667vw;
  display: inline-block;
}

@media only screen and (min-width: 480px) {
  .wp-post-menu__tags li {
    padding: 0.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-menu__tags li {
    padding: 2px;
  }
}

.wp-post-menu__tags li a {
  padding: 0 2.08333vw;
  border: 1px solid #00316c;
  border-radius: 5px;
  font-size: 10px;
  font-size: 2.08333vw;
  line-height: 3;
  font-weight: bold;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-post-menu__tags li a {
    padding: 0 1.04167vw;
    font-size: 10px;
    font-size: 1.04167vw;
    line-height: 3;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-menu__tags li a {
    padding: 0 10px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 30px;
    line-height: 3rem;
  }
}

.wp-post-menu__tags li a::before {
  content: '#';
  display: inline-block;
}

.wp-post-menu__tags_more {
  text-align: center;
}

.wp-post-menu__tags_more a {
  font-size: 12px;
  font-size: 1.25vw;
  line-height: 1;
  font-weight: bold;
  display: inline-block;
  position: relative;
}

.wp-post-menu__tags_more a::after {
  content: '';
  width: 15px;
  height: 15px;
  background-image: url(assets/images/common/arrow_circle_blue_down.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: inline-block;
  position: relative;
  top: 2px;
}

@media only screen and (min-width: 960px) {
  .wp-post-menu__tags_more a {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.wp-post-menu__tags_more a._close::after {
  background-image: url(assets/images/common/arrow_circle_blue_up.png);
}

/* single
------------------------------------------------------------*/
.wp-single__img {
  width: 100%;
  height: 75.83333vw;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .wp-single__img {
    height: 56.77083vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__img {
    height: 545px;
  }
}

.wp-single__img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

@media only screen and (min-width: 480px) {
  .wp-single__header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

.wp-single__body {
  padding-bottom: 5.41667vw;
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .wp-single__body {
    padding-bottom: 0;
    width: 75%;
  }
}

@media only screen and (min-width: 1280px) {
  .wp-single__body {
    width: 79%;
  }
}

.wp-single__meta {
  margin-bottom: 8.125vw;
  padding-top: 2.70833vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .wp-single__meta {
    margin-bottom: 4.73958vw;
    padding-top: 1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__meta {
    margin-bottom: 35px;
    padding-top: 10px;
  }
}

.wp-single__category {
  background-color: #fff;
  color: #000;
  display: block;
  position: absolute;
  bottom: 0;
}

.wp-single__category span {
  width: 23.02083vw;
  height: 23.02083vw;
  padding-top: 1.35417vw;
  font-size: 14.3px;
  font-size: 2.97917vw;
  line-height: 1.45455;
  background-color: #ffe86c;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0;
  display: block;
  position: relative;
}

.wp-single__category span::before {
  content: '';
  margin: 0 auto 3px;
  width: 35px;
  height: 35px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-single__category span {
    padding-top: 0.83333vw;
    width: 10.41667vw;
    height: 10.41667vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.42857;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__category span {
    padding-top: 8px;
    width: 100px;
    height: 100px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.wp-single__category_syacho-blog span::before {
  background-image: url(assets/images/blog/blog_icon_syacho-blog.png);
}

.wp-single__category_staff-blog span::before {
  background-image: url(assets/images/blog/blog_icon_staff-blog.png);
}

.wp-single__category_event span::before {
  background-image: url(assets/images/blog/blog_icon_event.png);
}

.wp-single__category_project-report span::before {
  background-image: url(assets/images/blog/blog_icon_project-report.png);
}

.wp-single__category_regional-activity span::before {
  background-image: url(assets/images/blog/blog_icon_regional-activity.png);
}

.wp-single__category_recruit span::before {
  background-image: url(assets/images/blog/blog_icon_recruit.png);
}

.wp-single__category_interview span::before {
  background-image: url(assets/images/blog/blog_icon_interview.png);
}

.wp-single__category_estate span::before {
  background-image: url(assets/images/blog/blog_icon_estate.png);
}

.wp-single__date {
  padding-left: 24.375vw;
  font-size: 12px;
  font-size: 2.5vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .wp-single__date {
    padding-left: 11.45833vw;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__date {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
    padding-left: 110px;
  }
}

.wp-single__heading {
  margin-bottom: 2.70833vw;
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 1.5;
}

@media only screen and (min-width: 480px) {
  .wp-single__heading {
    margin-bottom: 1.04167vw;
    font-size: 26px;
    font-size: 2.70833vw;
    line-height: 1.61538;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__heading {
    margin-bottom: 10px;
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 42px;
    line-height: 4.2rem;
  }
}

.wp-single__author {
  margin: 0 auto 30px;
  padding-top: 6.77083vw;
  width: 40.625vw;
}

@media only screen and (min-width: 480px) {
  .wp-single__author {
    padding-top: 2.60417vw;
    margin: 0;
    width: 15.625vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__author {
    padding-top: 25px;
    width: 150px;
  }
}

.wp-single__author .author__label {
  margin-bottom: 2.70833vw;
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1;
  color: #00316c;
  text-align: center;
  font-weight: bold;
}

.wp-single__author .author__label span {
  position: relative;
}

.wp-single__author .author__label span::before, .wp-single__author .author__label span::after {
  content: '';
  width: 1px;
  height: 18px;
  background-color: #00316c;
  display: block;
  position: absolute;
  bottom: 0;
}

.wp-single__author .author__label span::before {
  left: -15px;
  transform: rotate(-30deg);
}

.wp-single__author .author__label span::after {
  right: -15px;
  transform: rotate(30deg);
}

@media only screen and (min-width: 480px) {
  .wp-single__author .author__label {
    margin-bottom: 1.04167vw;
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__author .author__label {
    margin-bottom: 10px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 15px;
    line-height: 1.5rem;
  }
}

.wp-single__author .author__img {
  margin: 0 auto 2.70833vw;
  width: 21.66667vw;
}

@media only screen and (min-width: 480px) {
  .wp-single__author .author__img {
    margin-bottom: 1.04167vw;
    width: 8.33333vw;
    height: auto;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__author .author__img {
    margin-bottom: 10px;
    width: 80px;
  }
}

.wp-single__author .author__img img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 50%;
}

.wp-single__author .author__title {
  margin-bottom: 2.70833vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .wp-single__author .author__title {
    margin-bottom: 1.04167vw;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__author .author__title {
    margin-bottom: 10px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.wp-single__author .author__name {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .wp-single__author .author__name {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__author .author__name {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.wp-single__tags {
  margin-bottom: 10.83333vw;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .wp-single__tags {
    margin-bottom: 4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__tags {
    margin-bottom: 40px;
  }
}

.wp-single__tags a {
  position: relative;
}

.wp-single__tags a::before {
  content: '#';
}

.wp-single__project {
  margin-bottom: 21.66667vw;
}

@media only screen and (min-width: 480px) {
  .wp-single__project {
    margin-bottom: 10.41667vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__project {
    margin-bottom: 100px;
  }
}

.wp-single__project .project__heading {
  margin-bottom: 10.83333vw;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 3.75;
  color: #00316c;
  text-align: center;
  position: relative;
}

.wp-single__project .project__heading::after {
  content: '';
  width: 100%;
  height: 3px;
  background-color: #00316c;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 0;
}

@media only screen and (min-width: 480px) {
  .wp-single__project .project__heading {
    margin-bottom: 6.25vw;
    font-size: 25px;
    font-size: 2.60417vw;
    line-height: 3.2;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__project .project__heading {
    margin-bottom: 60px;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 80px;
    line-height: 8rem;
  }
}

.wp-single__project .project__heading span {
  border: 10px solid #fff;
  border-bottom: none;
  display: inline-block;
  position: relative;
  z-index: 2;
}

@media only screen and (min-width: 480px) {
  .wp-single__project .project__heading span {
    border-width: 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__project .project__heading span {
    border-width: 20px;
  }
}

.wp-single__project .project__heading span span {
  padding: 0 4.0625vw;
  background-color: #fff;
  border: 3px solid #00316c;
  border-bottom: none;
}

.wp-single__project .project__col {
  margin-bottom: 5.41667vw;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media only screen and (min-width: 480px) {
  .wp-single__project .project__col {
    margin-bottom: 2.70833vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__project .project__col {
    margin-bottom: 20px;
  }
}

.wp-single__project .project__img {
  padding-top: 25%;
  width: 35%;
  position: relative;
  overflow: hidden;
  align-self: flex-start;
}

@media only screen and (min-width: 480px) {
  .wp-single__project .project__img {
    padding-top: 20%;
    width: 30%;
  }
}

.wp-single__project .project__img img {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: cover;
}

.wp-single__project .project__body {
  width: 60%;
}

@media only screen and (min-width: 480px) {
  .wp-single__project .project__body {
    width: 66%;
  }
}

.wp-single__project .project__date {
  margin-bottom: 1.89583vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .wp-single__project .project__date {
    margin-bottom: 1.04167vw;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__project .project__date {
    margin-bottom: 10px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.wp-single__project .project__heading_lv2 {
  margin-bottom: 1.89583vw;
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1.46667;
}

@media only screen and (min-width: 480px) {
  .wp-single__project .project__heading_lv2 {
    margin-bottom: 1.04167vw;
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 1.46667;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__project .project__heading_lv2 {
    margin-bottom: 10px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.wp-single__project .project__author {
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .wp-single__project .project__author {
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__project .project__author {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.wp-single__project .project__author strong {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .wp-single__project .project__author strong {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__project .project__author strong {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.wp-single__profile {
  margin-bottom: 10.83333vw;
}

@media only screen and (min-width: 480px) {
  .wp-single__profile {
    margin-bottom: 4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__profile {
    margin-bottom: 40px;
  }
}

.wp-single__profile .profile__heading {
  margin-bottom: 8.125vw;
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .wp-single__profile .profile__heading {
    margin-bottom: 3.125vw;
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__profile .profile__heading {
    margin-bottom: 30px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 18px;
    line-height: 1.8rem;
  }
}

.wp-single__profile .profile__heading span {
  padding-bottom: 2.70833vw;
  border-bottom: 2px solid #00316c;
}

@media only screen and (min-width: 480px) {
  .wp-single__profile .profile__heading span {
    padding-bottom: 1.35417vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__profile .profile__heading span {
    padding-bottom: 10px;
  }
}

.wp-single__profile .profile__card {
  padding: 20px 30px;
  background-color: #faf6f2;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .wp-single__profile .profile__card {
    padding: 5.20833vw 6.77083vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__profile .profile__card {
    padding: 50px 65px;
  }
}

.wp-single__profile .profile__author {
  margin-bottom: 5.41667vw;
}

@media only screen and (min-width: 480px) {
  .wp-single__profile .profile__author {
    margin-bottom: 2.08333vw;
    width: 26%;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__profile .profile__author {
    margin-bottom: 20px;
  }
}

.wp-single__profile .profile__author .author__img {
  margin: 0 auto 2.70833vw;
  width: 32.5vw;
}

@media only screen and (min-width: 480px) {
  .wp-single__profile .profile__author .author__img {
    margin-bottom: 1.04167vw;
    width: 12.5vw;
    height: auto;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__profile .profile__author .author__img {
    margin-bottom: 10px;
    width: 120px;
  }
}

.wp-single__profile .profile__author .author__img img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 50%;
}

.wp-single__profile .profile__author .author__title {
  margin-bottom: 2.70833vw;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .wp-single__profile .profile__author .author__title {
    margin-bottom: 1.04167vw;
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__profile .profile__author .author__title {
    margin-bottom: 10px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
  }
}

.wp-single__profile .profile__author .author__name {
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .wp-single__profile .profile__author .author__name {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__profile .profile__author .author__name {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
  }
}

.wp-single__profile .profile__text {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2.15385;
}

@media only screen and (min-width: 480px) {
  .wp-single__profile .profile__text {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2.15385;
    width: 70%;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__profile .profile__text {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.wp-single__profile .profile__link {
  width: 21.66667vw;
  height: auto;
  display: block;
  position: absolute;
  top: -20px;
  right: -10px;
}

@media only screen and (min-width: 480px) {
  .wp-single__profile .profile__link {
    width: 12.5vw;
    top: -9.375vw;
    right: 0.52083vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__profile .profile__link {
    width: 120px;
    top: -90px;
    right: 5px;
  }
}

.wp-single__profile .profile__link img {
  width: 100%;
  height: auto;
  display: block;
}

.wp-single__fb {
  margin-bottom: 30px;
  background-color: #000;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media only screen and (min-width: 480px) {
  .wp-single__fb {
    margin-bottom: 3.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__fb {
    margin-bottom: 30px;
  }
}

.wp-single__fb .fb__img {
  width: 50%;
  height: 32.5vw;
}

@media only screen and (min-width: 480px) {
  .wp-single__fb .fb__img {
    height: 21.875vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__fb .fb__img {
    height: 210px;
  }
}

.wp-single__fb .fb__img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.wp-single__fb .fb__body {
  width: 50%;
  text-align: center;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.wp-single__fb .fb__comment {
  margin-bottom: 2.70833vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1.66667;
  color: #fff;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .wp-single__fb .fb__comment {
    margin-bottom: 1.04167vw;
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 1.73333;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__fb .fb__comment {
    margin-bottom: 10px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 26px;
    line-height: 2.6rem;
  }
}

.wp-single__button_twitter {
  margin: 0 auto 5.41667vw;
  width: 280px;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-single__button_twitter {
    margin-bottom: 2.08333vw;
    width: 29.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-single__button_twitter {
    margin-bottom: 20px;
    width: 280px;
  }
}

.wp-single__button_twitter img {
  width: 100%;
  height: auto;
  display: block;
}

.fb_iframe_widget span {
  width: 135px !important;
}

.fb_iframe_widget span iframe {
  width: 135px !important;
}

.postbody {
  margin-bottom: 16.25vw;
}

@media only screen and (min-width: 480px) {
  .postbody {
    margin-bottom: 8.33333vw;
  }
}

@media only screen and (min-width: 960px) {
  .postbody {
    margin-bottom: 80px;
  }
}

.postbody h1,
.postbody h2,
.postbody h3,
.postbody h4,
.postbody h5,
.postbody h6 {
  margin: 0 0 25px !important;
}

.postbody h1 {
  padding: 0 0 0 15px;
  height: 40px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 40px;
  line-height: 4rem;
  line-height: 40px;
}

.postbody h2 {
  padding: 0 0 0 15px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 40px;
  line-height: 4rem;
  line-height: 40px;
}

.postbody h3 {
  padding-bottom: 5px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 22px;
  line-height: 2.2rem;
}

.postbody h4 {
  padding: 0 0 0 30px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 27px;
  line-height: 2.7rem;
}

.postbody h5 {
  padding: 10px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 30px;
  line-height: 3rem;
}

.postbody h6 {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 30px;
  line-height: 3rem;
}

.postbody p {
  padding: 20px 0;
  width: 100%;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 32px;
  line-height: 3.2rem;
}

.postbody img {
  padding: 20px 0;
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 40px;
}

.postbody a {
  color: #00316c;
  text-decoration: underline;
}

.postbody a:hover {
  text-decoration: none;
}

.postbody .single_meta {
  margin-bottom: 25px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
}

.postbody blockquote {
  margin: 0;
  padding: 20px;
  border: 1px dashed #ccc;
}

.postbody blockquote p {
  margin-bottom: 0;
}

.postbody .heading {
  margin: 5.41667vw 0 10.83333vw;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.5;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .postbody .heading {
    margin: 2.70833vw 0 5.41667vw;
    font-size: 24px;
    font-size: 2.5vw;
    line-height: 1.41667;
  }
}

@media only screen and (min-width: 960px) {
  .postbody .heading {
    margin: 20px 0 40px;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 34px;
    line-height: 3.4rem;
  }
}

.postbody .line_y {
  margin: 5.41667vw 0 10.83333vw;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.5;
  border-bottom: 5px solid #fff000;
  font-weight: bold;
  display: inline-block;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .postbody .line_y {
    margin: 2.70833vw 0 5.41667vw;
    font-size: 24px;
    font-size: 2.5vw;
    line-height: 1.41667;
  }
}

@media only screen and (min-width: 960px) {
  .postbody .line_y {
    margin: 20px 0 40px;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 34px;
    line-height: 3.4rem;
  }
}

.postbody .voice {
  margin: 13.54167vw 0;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.5;
  font-weight: bold;
  position: relative;
}

.postbody .voice::before, .postbody .voice::after {
  content: '';
  width: 37px;
  height: 14px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: block;
  position: absolute;
  left: 0;
}

.postbody .voice::before {
  background-image: url(assets/images/blog/blog_voice_line_top.png);
  top: -20px;
}

.postbody .voice::after {
  background-image: url(assets/images/blog/blog_voice_line_bottom.png);
  bottom: -20px;
}

@media only screen and (min-width: 480px) {
  .postbody .voice {
    margin: 6.77083vw 0;
    font-size: 22px;
    font-size: 2.29167vw;
    line-height: 1.5;
    position: relative;
  }
  .postbody .voice::before, .postbody .voice::after {
    width: 3.85417vw;
    height: 1.45833vw;
  }
  .postbody .voice::before {
    top: -2.60417vw;
  }
  .postbody .voice::after {
    bottom: -2.60417vw;
  }
}

@media only screen and (min-width: 960px) {
  .postbody .voice {
    margin: 50px 0;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 33px;
    line-height: 3.3rem;
  }
  .postbody .voice::before, .postbody .voice::after {
    width: 37px;
    height: 14px;
  }
  .postbody .voice::before {
    top: -20px;
  }
  .postbody .voice::after {
    bottom: -20px;
  }
}

.postbody .underline {
  border-bottom: 5px solid #ffe86c;
}

.interview__heading_q {
  margin-bottom: 8.125vw;
  font-size: 22.1px;
  font-size: 4.60417vw;
  line-height: 1.52941;
  border-bottom: 1px solid #00316c;
}

@media only screen and (min-width: 480px) {
  .interview__heading_q {
    font-size: 24px;
    font-size: 2.5vw;
    line-height: 1.41667;
  }
}

@media only screen and (min-width: 960px) {
  .interview__heading_q {
    margin-bottom: 50px;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 34px;
    line-height: 3.4rem;
  }
}

.interview__heading_q span {
  text-indent: -2.2rem;
  margin-left: 2.2rem;
  display: block;
  padding-bottom: 2.16667vw;
}

@media only screen and (min-width: 480px) {
  .interview__heading_q span {
    padding-bottom: 0.83333vw;
  }
}

@media only screen and (min-width: 960px) {
  .interview__heading_q span {
    padding-bottom: 8px;
  }
}

.interview__heading_q span em {
  color: #00316c;
}

.interview__heading_a {
  margin-bottom: 5.41667vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  position: relative;
}

@media only screen and (min-width: 960px) {
  .interview__heading_a {
    margin-bottom: 40px;
  }
}

.interview__heading_a .author {
  width: 30%;
  align-self: center;
}

@media only screen and (min-width: 480px) {
  .interview__heading_a .author {
    width: 15%;
  }
}

.interview__heading_a .author__img {
  margin: 0 auto 2.70833vw;
  width: 60%;
}

@media only screen and (min-width: 480px) {
  .interview__heading_a .author__img {
    margin-bottom: 1.04167vw;
    width: 8.33333vw;
    height: auto;
  }
}

@media only screen and (min-width: 960px) {
  .interview__heading_a .author__img {
    margin-bottom: 10px;
    width: 80px;
  }
}

.interview__heading_a .author__img img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 50%;
}

.interview__heading_a .author__title {
  margin-bottom: 2.70833vw;
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 1;
  text-align: center;
}

@media only screen and (min-width: 480px) {
  .interview__heading_a .author__title {
    margin-bottom: 1.04167vw;
    font-size: 11px;
    font-size: 1.14583vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .interview__heading_a .author__title {
    margin-bottom: 10px;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem;
  }
}

.interview__heading_a .author__name {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .interview__heading_a .author__name {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .interview__heading_a .author__name {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
}

.interview__heading_a h3 {
  margin-top: 2.16667vw;
  width: 69%;
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1.5;
  position: relative;
}

.interview__heading_a h3::before, .interview__heading_a h3::after {
  content: '';
  width: 36px;
  height: 13px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  left: -2.70833vw;
}

.interview__heading_a h3::before {
  background-image: url(assets/images/common/heading_dotline_u_blue.png);
  top: -4.875vw;
}

.interview__heading_a h3::after {
  background-image: url(assets/images/common/heading_dotline_d_blue.png);
  bottom: -4.875vw;
}

@media only screen and (min-width: 480px) {
  .interview__heading_a h3 {
    width: 82%;
    font-size: 24px;
    font-size: 2.5vw;
    line-height: 1.5;
  }
  .interview__heading_a h3::before, .interview__heading_a h3::after {
    left: -2.08333vw;
  }
  .interview__heading_a h3::before {
    top: -1.77083vw;
  }
  .interview__heading_a h3::after {
    bottom: -1.77083vw;
  }
}

@media only screen and (min-width: 960px) {
  .interview__heading_a h3 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 36px;
    line-height: 3.6rem;
  }
  .interview__heading_a h3::before, .interview__heading_a h3::after {
    left: -20px;
  }
  .interview__heading_a h3::before {
    top: -17px;
  }
  .interview__heading_a h3::after {
    bottom: -17px;
  }
}

.interview__img {
  margin-bottom: 5.41667vw;
  max-width: 100%;
}

@media only screen and (min-width: 480px) {
  .interview__img {
    margin-bottom: 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .interview__img {
    margin-bottom: 20px;
  }
}

.interview__comment {
  unicode-bidi: 18.95833vw;
  padding: 5.41667vw;
  position: relative;
  border: 1px solid #ffe86c;
}

@media only screen and (min-width: 480px) {
  .interview__comment {
    margin-bottom: 8.33333vw;
    padding: 4.16667vw 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .interview__comment {
    margin-bottom: 80px;
    padding: 40px 20px;
  }
}

.interview__comment .comment__heading {
  font-size: 23.4px;
  font-size: 4.875vw;
  line-height: 1;
  color: #505050;
  position: absolute;
  top: -5.14583vw;
  left: -1px;
  z-index: 10;
}

@media only screen and (min-width: 480px) {
  .interview__comment .comment__heading {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 1;
    top: -1.97917vw;
  }
}

@media only screen and (min-width: 960px) {
  .interview__comment .comment__heading {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 18px;
    line-height: 1.8rem;
    top: -19px;
  }
}

.interview__comment .comment__heading span {
  padding: 2.70833vw 10.83333vw 2.70833vw 5.41667vw;
  background-color: aqua;
  background-color: #fff;
  display: inline-block;
  position: relative;
}

.interview__comment .comment__heading span::before {
  content: '';
  width: 3px;
  height: 22px;
  background-color: #ffe86c;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

@media only screen and (min-width: 480px) {
  .interview__comment .comment__heading span {
    padding: 1.04167vw 4.16667vw 1.04167vw 2.08333vw;
  }
}

@media only screen and (min-width: 960px) {
  .interview__comment .comment__heading span {
    padding: 10px 40px 10px 20px;
  }
}

.interview__comment .comment__text {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .interview__comment .comment__text {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .interview__comment .comment__text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

/* post
------------------------------------------------------------*/
.wp-post__row {
  margin-right: -10px;
  margin-left: -10px;
  margin-bottom: 50px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.wp-post__col {
  padding: 10px;
  width: 50%;
  text-align: left;
  display: block;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .wp-post__col {
    width: calc(100% / 3);
  }
}

.wp-post__col_lg {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.wp-post__col_simple {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media only screen and (min-width: 480px) {
  .wp-post__col_simple {
    width: calc(100% / 3);
    display: block;
  }
}

.wp-post__img {
  margin-bottom: 2.70833vw;
  width: 100%;
  height: 28.4375vw;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .wp-post__img {
    margin-bottom: 1.04167vw;
    height: 15.625vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__img {
    height: 150px;
    margin-bottom: 10px;
  }
}

.wp-post__img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.wp-post__img_lg {
  width: 100%;
  height: 56.875vw;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .wp-post__img_lg {
    width: 50%;
    height: 26.5625vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__img_lg {
    height: 255px;
  }
}

.wp-post__img_simple {
  width: 40%;
}

@media only screen and (min-width: 480px) {
  .wp-post__img_simple {
    width: 100%;
  }
}

.wp-post__img_simple_lg {
  width: 100%;
  height: 56.875vw;
}

@media only screen and (min-width: 480px) {
  .wp-post__img_simple_lg {
    height: 15.625vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__img_simple_lg {
    height: 150px;
  }
}

.wp-post__body {
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .wp-post__body {
    position: relative;
  }
}

@media only screen and (min-width: 480px) {
  .wp-post__body_lg {
    padding-top: 7.29167vw;
    width: 45%;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__body_lg {
    padding-top: 70px;
  }
}

.wp-post__body_simple {
  width: 55%;
}

@media only screen and (min-width: 480px) {
  .wp-post__body_simple {
    width: 100%;
  }
}

.wp-post__body_simple_lg {
  width: 100%;
}

@media only screen and (min-width: 480px) {
  .wp-post__meta {
    margin-bottom: 1.25vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
}

.wp-post__meta_lg {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.wp-post__date {
  margin-bottom: 1.35417vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .wp-post__date {
    margin-bottom: 0;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
    position: relative;
    z-index: 2;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__date {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.wp-post__category {
  margin-bottom: 2.08333vw;
  padding: 0 4px;
  background-color: #00316c;
  font-size: 11px;
  font-size: 2.29167vw;
  line-height: 2.18182;
  color: #fff;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.01rem;
  display: inline-block;
}

@media only screen and (min-width: 480px) {
  .wp-post__category {
    margin-bottom: 0;
    font-size: 11px;
    font-size: 1.14583vw;
    line-height: 2.18182;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__category {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.wp-post__category_lg {
  margin-bottom: 0;
}

@media only screen and (min-width: 480px) {
  .wp-post__category {
    margin-bottom: 0;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__category {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.wp-post__category_lg {
  margin-bottom: 0;
}

.wp-post__heading {
  margin-bottom: 2.08333vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 1.57143;
  color: #000;
}

@media only screen and (min-width: 480px) {
  .wp-post__heading {
    margin-bottom: 1.04167vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1.57143;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__heading {
    margin-bottom: 10px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 22px;
    line-height: 2.2rem;
  }
}

.wp-post__heading_lg {
  font-size: 20.8px;
  font-size: 4.33333vw;
  line-height: 1.375;
}

@media only screen and (min-width: 480px) {
  .wp-post__heading_lg {
    font-size: 18px;
    font-size: 1.875vw;
    line-height: 1.55556;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__heading_lg {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.wp-post__author {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

.wp-post__author .author__img {
  width: 20%;
  height: auto;
}

@media only screen and (min-width: 960px) {
  .wp-post__author .author__img {
    width: 55px;
  }
}

.wp-post__author .author__img img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 50%;
}

.wp-post__author .author__body {
  width: 75%;
  padding-left: 15px;
}

.wp-post__author .author__title {
  margin-bottom: 1.35417vw;
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 1.5;
  color: #000;
  letter-spacing: 0;
}

@media only screen and (min-width: 480px) {
  .wp-post__author .author__title {
    margin-bottom: 1.04167vw;
    font-size: 11px;
    font-size: 1.14583vw;
    line-height: 1;
    letter-spacing: 0.01rem;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__author .author__title {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 11px;
    line-height: 1.1rem;
  }
}

.wp-post__author .author__name {
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
  color: #000;
  letter-spacing: 0;
}

@media only screen and (min-width: 480px) {
  .wp-post__author .author__name {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1;
    letter-spacing: 0.01rem;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__author .author__name {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
  }
}

.wp-post__icon-new {
  width: 18.95833vw;
  height: 18.95833vw;
  background-color: #ffe86c;
  border-radius: 9.47917vw;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 5;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #000;
  text-align: center;
  position: absolute;
  top: -8.125vw;
  right: 0;
}

@media only screen and (min-width: 480px) {
  .wp-post__icon-new {
    width: 8.95833vw;
    height: 8.95833vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 6.14286;
    right: auto;
    left: -2.60417vw;
    top: -1.04167vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post__icon-new {
    width: 86px;
    height: 86px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 86px;
    line-height: 8.6rem;
    top: -15px;
    left: -25px;
  }
}

.wp-post__icon-new img {
  width: 100%;
  height: auto;
  display: block;
}

.wp-embedded-content {
  width: 100%;
}

.wp-post__archive-heading {
  margin-bottom: 50px;
  text-align: center;
  font-weight: bold;
}

@media only screen and (min-width: 768px) {
  .wp-post__archive-heading {
    margin-bottom: 80px;
  }
}

.postbody h1,
.postbody h2,
.postbody h3,
.postbody h4,
.postbody h5,
.postbody h6 {
  margin: 0 0 25px !important;
}

.postbody h1 {
  padding: 0 0 0 15px;
  height: 40px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 40px;
  line-height: 4rem;
  line-height: 40px;
}

.postbody h2 {
  padding: 0 0 0 15px;
  font-size: 20px;
  font-size: 2rem;
  line-height: 40px;
  line-height: 4rem;
  line-height: 40px;
}

.postbody h3 {
  padding-bottom: 5px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 22px;
  line-height: 2.2rem;
}

.postbody h4 {
  padding: 0 0 0 30px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 27px;
  line-height: 2.7rem;
}

.postbody h5 {
  padding: 10px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 30px;
  line-height: 3rem;
}

.postbody h6 {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 30px;
  line-height: 3rem;
}

.postbody p {
  padding: 20px 0;
  width: 100%;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 32px;
  line-height: 3.2rem;
}

.postbody img {
  padding: 20px 0;
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 40px;
}

.postbody a {
  color: #00316c;
  text-decoration: underline;
}

.postbody a:hover {
  text-decoration: none;
}

.postbody .single_meta {
  margin-bottom: 25px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 12px;
  line-height: 1.2rem;
}

.postbody blockquote {
  margin: 0;
  padding: 20px;
  border: 1px dashed #ccc;
}

.postbody blockquote p {
  margin-bottom: 0;
}

.postbody .heading {
  margin: 5.41667vw 0 10.83333vw;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.5;
  font-weight: bold;
}

@media only screen and (min-width: 480px) {
  .postbody .heading {
    margin: 2.70833vw 0 5.41667vw;
    font-size: 24px;
    font-size: 2.5vw;
    line-height: 1.41667;
  }
}

@media only screen and (min-width: 960px) {
  .postbody .heading {
    margin: 20px 0 40px;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 34px;
    line-height: 3.4rem;
  }
}

.postbody .line_y {
  margin: 5.41667vw 0 10.83333vw;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.5;
  border-bottom: 5px solid #fff000;
  font-weight: bold;
  display: inline-block;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .postbody .line_y {
    margin: 2.70833vw 0 5.41667vw;
    font-size: 24px;
    font-size: 2.5vw;
    line-height: 1.41667;
  }
}

@media only screen and (min-width: 960px) {
  .postbody .line_y {
    margin: 20px 0 40px;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 34px;
    line-height: 3.4rem;
  }
}

.postbody .voice {
  margin: 13.54167vw 0;
  font-size: 26px;
  font-size: 5.41667vw;
  line-height: 1.5;
  font-weight: bold;
  position: relative;
}

.postbody .voice::before, .postbody .voice::after {
  content: '';
  width: 37px;
  height: 14px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: block;
  position: absolute;
  left: 0;
}

.postbody .voice::before {
  background-image: url(assets/images/blog/blog_voice_line_top.png);
  top: -20px;
}

.postbody .voice::after {
  background-image: url(assets/images/blog/blog_voice_line_bottom.png);
  bottom: -20px;
}

@media only screen and (min-width: 480px) {
  .postbody .voice {
    margin: 6.77083vw 0;
    font-size: 22px;
    font-size: 2.29167vw;
    line-height: 1.5;
    position: relative;
  }
  .postbody .voice::before, .postbody .voice::after {
    width: 3.85417vw;
    height: 1.45833vw;
  }
  .postbody .voice::before {
    top: -2.60417vw;
  }
  .postbody .voice::after {
    bottom: -2.60417vw;
  }
}

@media only screen and (min-width: 960px) {
  .postbody .voice {
    margin: 50px 0;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 33px;
    line-height: 3.3rem;
  }
  .postbody .voice::before, .postbody .voice::after {
    width: 37px;
    height: 14px;
  }
  .postbody .voice::before {
    top: -20px;
  }
  .postbody .voice::after {
    bottom: -20px;
  }
}

.postbody .underline {
  border-bottom: 5px solid #ffe86c;
}

/**
/* post category
============================================================*/
.wp-post-category {
  padding-top: 60px;
}

@media only screen and (min-width: 768px) {
  .wp-post-category {
    padding-top: 80px;
  }
}

.wp-post-category__heading {
  margin-bottom: 150px;
}

.wp-post-category__heading span::before {
  content: '';
  width: 110px;
  height: 52px;
  background-image: url(assets/images/blog/single_new_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: -29.79167vw;
  left: -16.25vw;
}

@media only screen and (min-width: 480px) {
  .wp-post-category__heading span::before {
    top: -16.14583vw;
    left: -9.58333vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-category__heading span::before {
    top: -155px;
    left: -92px;
  }
}

.wp-post-category__name {
  margin-bottom: 5.41667vw;
  font-size: 19.5px;
  font-size: 4.0625vw;
  line-height: 1;
  color: #00316c;
  text-align: center;
  position: relative;
}

.wp-post-category__name::before {
  content: '';
  width: 40px;
  height: 40px;
  background-size: contain;
  display: block;
  position: absolute;
  top: -13.54167vw;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 480px) {
  .wp-post-category__name {
    margin-bottom: 2.08333vw;
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 1;
  }
  .wp-post-category__name::before {
    top: -5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-category__name {
    margin-bottom: 20px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 15px;
    line-height: 1.5rem;
  }
  .wp-post-category__name::before {
    top: -50px;
  }
}

.wp-post-category__name span {
  padding-top: 10px;
  font-size: 13px;
  font-size: 2.70833vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #cccccc;
  text-transform: uppercase;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-post-category__name span {
    padding-top: 1.04167vw;
    font-size: 10px;
    font-size: 1.04167vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-category__name span {
    padding-top: 10px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 10px;
    line-height: 1rem;
  }
}

.wp-post-category__name_bg {
  position: relative;
}

.wp-post-category__name_bg::before, .wp-post-category__name_bg::after {
  content: '';
  width: 60px;
  height: 28px;
  border-top: 1px solid #ffe86c;
  border-radius: 5px;
  display: block;
  position: absolute;
  top: -25px;
}

.wp-post-category__name_bg::before {
  border-left: 1px solid #ffe86c;
  left: 0;
}

.wp-post-category__name_bg::after {
  border-right: 1px solid #ffe86c;
  right: 0;
}

.wp-post-category__name_syacho-blog::before {
  background-image: url(assets/images/blog/blog_icon_syacho-blog.png);
}

.wp-post-category__name_staff-blog::before {
  background-image: url(assets/images/blog/blog_icon_staff-blog.png);
}

.wp-post-category__name_event::before {
  background-image: url(assets/images/blog/blog_icon_event.png);
}

.wp-post-category__name_project-report::before {
  background-image: url(assets/images/blog/blog_icon_project-report.png);
}

.wp-post-category__name_regional-activity::before {
  background-image: url(assets/images/blog/blog_icon_regional-activity.png);
}

.wp-post-category__name_recruit::before {
  background-image: url(assets/images/blog/blog_icon_recruit.png);
}

.wp-post-category__name_interview::before {
  background-image: url(assets/images/blog/blog_icon_interview.png);
}

.wp-post-category__name_estate::before {
  background-image: url(assets/images/blog/blog_icon_estate.png);
}

@media only screen and (min-width: 480px) {
  .wp-post-category__row {
    margin-right: -10px;
    margin-left: -10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}

.wp-post-category__col {
  margin-bottom: 16.25vw;
  padding: 10px 10px 20px;
  width: 100%;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-post-category__col {
    margin-bottom: 6.25vw;
    width: 25%;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-category__col {
    margin-bottom: 60px;
  }
}

.wp-post-category__content {
  border-bottom: 1px solid #ffe86c;
  padding-bottom: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  height: 100%;
}

@media only screen and (min-width: 480px) {
  .wp-post-category__content {
    display: block;
    max-height: 28.125vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-category__content {
    max-height: 280px;
  }
}

.wp-post-category__img {
  width: 40%;
  height: 24.375vw;
  display: block;
  position: relative;
  align-self: flex-start;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .wp-post-category__img {
    margin-bottom: 1.5625vw;
    width: 100%;
    height: 15.625vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-category__img {
    margin-bottom: 15px;
    height: 150px;
  }
}

.wp-post-category__img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.wp-post-category__body {
  padding-bottom: 10px;
  width: 55%;
}

.wp-post-category__body-heading {
  color: #000;
  font-weight: bold;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-post-category__body {
    width: 100%;
  }
}

.wp-post-category__heading_lv2 {
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2;
}

@media only screen and (min-width: 480px) {
  .wp-post-category__heading_lv2 {
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .wp-post-category__heading_lv2 {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 28px;
    line-height: 2.8rem;
  }
}

.wp-post-category__date {
  margin-bottom: 10px;
}

/* pagenation
------------------------------------------------------------*/
.pagination {
  margin-bottom: 50px;
  width: 100%;
  text-align: center;
  display: block;
  position: relative;
}

.pagination h2.screen-reader-text {
  display: none;
}

.pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.pagination .page-numbers, .pagination .current {
  width: 8.125vw;
  height: 8.125vw;
  margin: 0 6px;
  border: 1px solid #ccd5e3;
  border-radius: 3px;
  font-size: 16px;
  font-size: 3.33333vw;
  line-height: 1.875;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #00316c;
  text-decoration: none;
  font-weight: bold;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

@media only screen and (min-width: 480px) {
  .pagination .page-numbers, .pagination .current {
    font-size: 16px;
    font-size: 1.66667vw;
    line-height: 2.5;
  }
}

@media only screen and (min-width: 960px) {
  .pagination .page-numbers, .pagination .current {
    width: 40px;
    height: 40px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 40px;
    line-height: 4rem;
  }
}

.pagination a.page-numbers:hover:hover {
  opacity: 0.7;
  transition: opacity 0.2s linear;
  text-decoration: none;
}

.pagination .current {
  background-color: #00316c;
  color: #fff;
}

.pagination .current span {
  display: block;
}

.pagination .prev, .pagination .next {
  width: 30px;
  height: 30px;
  padding: 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 30px;
  line-height: 3rem;
  color: #fff;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .pagination .prev, .pagination .next {
    width: 40px;
    height: 40px;
  }
}

.pagination .prev span, .pagination .next span {
  display: block;
}

.pagination .prev:hover, .pagination .next:hover {
  color: #fff !important;
}

.pagination .prev:hover:hover, .pagination .next:hover:hover {
  opacity: 0.7;
  transition: opacity 0.2s linear;
  text-decoration: none;
}

.pagination .prev {
  position: relative;
}

.pagination .prev::after {
  content: '';
  margin-top: -6px;
  width: 12px;
  height: 12px;
  border: 2px solid;
  border-color: transparent transparent #00316c #00316c;
  transform: rotate(45deg);
  display: block;
  position: absolute;
  top: 50%;
  left: 10px;
}

@media only screen and (min-width: 768px) {
  .pagination .prev::after {
    left: 15px;
  }
}

.pagination .next {
  position: relative;
}

.pagination .next::after {
  content: '';
  margin-top: -6px;
  width: 12px;
  height: 12px;
  border: 2px solid;
  border-color: #00316c #00316c transparent transparent;
  transform: rotate(45deg);
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
}

@media only screen and (min-width: 768px) {
  .pagination .next::after {
    right: 15px;
  }
}

.wp-button__entry-list {
  margin: 0 auto 20px;
  width: 100%;
  background-color: #00316c;
  font-size: 15px;
  font-size: 3.125vw;
  line-height: 3.33333;
  color: #fff;
  text-align: center;
  font-weight: bold;
  display: block;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .wp-button__entry-list {
    margin-bottom: 5.20833vw;
    font-size: 15px;
    font-size: 1.5625vw;
    line-height: 4;
  }
}

@media only screen and (min-width: 960px) {
  .wp-button__entry-list {
    margin-bottom: 50px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 60px;
    line-height: 6rem;
  }
}

.wp-button__entry-list span {
  display: block;
}

.wp-pagenation-single {
  padding-bottom: 100px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media only screen and (min-width: 768px) {
  .wp-pagenation-single {
    margin-bottom: 0;
  }
}

.wp-pagenation-single__prev, .wp-pagenation-single__next {
  width: 50%;
  font-weight: bold;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.wp-pagenation-single__prev a, .wp-pagenation-single__next a {
  color: #000;
  display: block;
  position: relative;
}

.wp-pagenation-single__prev a::before, .wp-pagenation-single__next a::before {
  margin-top: -19px;
  padding: 6px 0;
  width: 38px;
  height: 38px;
  display: block;
  position: absolute;
  top: 50%;
}

.wp-pagenation-single__prev a:hover, .wp-pagenation-single__next a:hover {
  text-decoration: none;
}

.wp-pagenation-single__prev {
  border-right: 1px solid #000;
  justify-content: flex-start;
}

@media only screen and (min-width: 768px) {
  .wp-pagenation-single__prev {
    padding-right: 10px;
  }
}

.wp-pagenation-single__prev a {
  padding-left: 48px;
}

.wp-pagenation-single__prev a::before {
  content: '〈';
  padding-left: 7px;
  left: 0;
}

.wp-pagenation-single__next {
  text-align: right;
  justify-content: flex-end;
}

@media only screen and (min-width: 768px) {
  .wp-pagenation-single__next {
    padding-left: 10px;
  }
}

.wp-pagenation-single__next a {
  padding-right: 48px;
}

.wp-pagenation-single__next a::before {
  content: '〉';
  padding-right: 7px;
  right: 0;
}

/* sidebar category list
------------------------------------------------------------*/
.wp-sidebar__category-list {
  list-style-type: none;
  padding-left: 0;
}

.wp-sidebar__category-list li {
  padding-top: 1.04167vw;
  padding-bottom: 1.04167vw;
}

@media only screen and (min-width: 960px) {
  .wp-sidebar__category-list li {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.wp-sidebar__category-list li a {
  padding-top: 2.70833vw;
  padding-bottom: 2.70833vw;
  padding-left: 14.89583vw;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-size: 20px;
  font-size: 4.16667vw;
  line-height: 1;
  color: #00316c;
  font-weight: bold;
  display: block;
  position: relative;
}

.wp-sidebar__category-list li a::before {
  content: '';
  width: 9.47917vw;
  height: 9.47917vw;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: block;
  position: absolute;
  top: 50%;
  left: 1.04167vw;
  transform: translateY(-50%);
}

@media only screen and (min-width: 480px) {
  .wp-sidebar__category-list li a {
    padding-top: 2.08333vw;
    padding-bottom: 2.08333vw;
    padding-left: 5.72917vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 1;
  }
  .wp-sidebar__category-list li a::before {
    width: 3.64583vw;
    height: 3.64583vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-sidebar__category-list li a {
    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 55px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 14px;
    line-height: 1.4rem;
  }
  .wp-sidebar__category-list li a::before {
    width: 35px;
    height: 35px;
    left: 10px;
  }
}

.wp-sidebar__category-list li a span {
  padding-top: 1.35417vw;
  font-size: 10px;
  font-size: 2.08333vw;
  line-height: 1;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #ccc;
  text-transform: uppercase;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-sidebar__category-list li a span {
    padding-top: 0.52083vw;
    font-size: 10px;
    font-size: 1.04167vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-sidebar__category-list li a span {
    padding-top: 5px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 10px;
    line-height: 1rem;
  }
}

.wp-sidebar__category_syacho-blog::before {
  background-image: url(assets/images/blog/blog_icon_syacho-blog.png);
}

.wp-sidebar__category_staff-blog::before {
  background-image: url(assets/images/blog/blog_icon_staff-blog.png);
}

.wp-sidebar__category_event::before {
  background-image: url(assets/images/blog/blog_icon_event.png);
}

.wp-sidebar__category_project-report::before {
  background-image: url(assets/images/blog/blog_icon_project-report.png);
}

.wp-sidebar__category_regional-activity::before {
  background-image: url(assets/images/blog/blog_icon_regional-activity.png);
}

.wp-sidebar__category_recruit::before {
  background-image: url(assets/images/blog/blog_icon_recruit.png);
}

.wp-sidebar__category_interview::before {
  background-image: url(assets/images/blog/blog_icon_interview.png);
}

.wp-sidebar__category_estate::before {
  background-image: url(assets/images/blog/blog_icon_estate.png);
}

/**
/* wp - search
============================================================*/
.wp-search {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
}

.wp-search--works {
  margin: 0 auto 50px;
  width: 100%;
  max-width: 280px;
}

.wp-search input[type="text"],
.wp-search input[type="button"],
.wp-search input[type="email"],
.wp-search input[type="submit"],
.wp-search textarea {
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.wp-search input[type="text"] {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 10px;
  padding-right: 10px;
  width: calc(100% - 40px);
  border: 1px solid #000;
  line-height: 33px;
}

.wp-search input[type="image"] {
  background-color: #00316c;
}

.wp-search input::placeholder {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 28px;
  line-height: 2.8rem;
}

.wp-sidebar__tags {
  margin-bottom: 2.08333vw;
  margin-right: -2px;
  margin-left: -2px;
  list-style-type: none;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  overflow: hidden;
}

@media only screen and (min-width: 960px) {
  .wp-sidebar__tags {
    margin-bottom: 20px;
  }
}

.wp-sidebar__tags li {
  padding: 0.54167vw;
  display: inline-block;
}

@media only screen and (min-width: 480px) {
  .wp-sidebar__tags li {
    padding: 0.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-sidebar__tags li {
    padding: 2px;
  }
}

.wp-sidebar__tags li a {
  padding: 0 2.70833vw;
  border: 1px solid #00316c;
  border-radius: 5px;
  font-size: 14.3px;
  font-size: 2.97917vw;
  line-height: 2.0979;
  font-weight: bold;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-sidebar__tags li a {
    padding: 0 1.04167vw;
    font-size: 10px;
    font-size: 1.04167vw;
    line-height: 3;
  }
}

@media only screen and (min-width: 960px) {
  .wp-sidebar__tags li a {
    padding: 0 10px;
    font-size: 10px;
    font-size: 1rem;
    line-height: 30px;
    line-height: 3rem;
  }
}

.wp-sidebar__tags li a::before {
  content: '#';
  display: inline-block;
}

.wp-sidebar__tags_more {
  text-align: center;
}

.wp-sidebar__tags_more a {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1;
  font-weight: bold;
  display: inline-block;
  position: relative;
}

.wp-sidebar__tags_more a::after {
  content: '';
  width: 15px;
  height: 15px;
  background-image: url(assets/images/common/arrow_circle_blue_down.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  display: inline-block;
  position: relative;
  top: 2px;
}

@media only screen and (min-width: 480px) {
  .wp-sidebar__tags_more a {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1;
  }
}

@media only screen and (min-width: 960px) {
  .wp-sidebar__tags_more a {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 13px;
    line-height: 1.3rem;
  }
}

.wp-sidebar__tags_more a._close::after {
  background-image: url(assets/images/common/arrow_circle_blue_up.png);
}

.js-tag-list {
  opacity: 0;
}

/* sidebar post
------------------------------------------------------------*/
.wp-sidebar-post__row {
  list-style-type: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.wp-sidebar-post__col {
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
}

.wp-sidebar-post__col_lg {
  margin: 0 auto 20px;
  width: 100%;
  display: block;
}

.wp-sidebar-post__img {
  margin-bottom: 10px;
  padding-top: 25%;
  width: 40%;
  display: block;
  align-self: flex-start;
  position: relative;
  overflow: hidden;
}

.wp-sidebar-post__img img {
  width: 100%;
  height: auto;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.wp-sidebar-post__img_lg {
  padding-top: 64%;
  width: 100%;
}

.wp-sidebar-post__num {
  width: 22px;
  height: 22px;
  background-color: #00316c;
  border: 1px solid #fff;
  border-radius: 11px;
  font-size: 11px;
  font-size: 1.14583vw;
  line-height: 2;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #fff;
  text-align: center;
  position: absolute;
  top: -0.52083vw;
  left: -0.52083vw;
  z-index: 2;
}

@media only screen and (min-width: 960px) {
  .wp-sidebar-post__num {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.wp-sidebar-post__num_lg {
  width: 30px;
  height: 30px;
  background-color: #ffe86c;
  border-radius: 15px;
  font-size: 16px;
  font-size: 4.92308vw;
  line-height: 1;
  line-height: 30px;
  color: #00316c;
}

@media only screen and (min-width: 480px) {
  .wp-sidebar-post__num_lg {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 30px;
    line-height: 3rem;
  }
}

@media only screen and (min-width: 960px) {
  .wp-sidebar-post__num_lg {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 30px;
    line-height: 3rem;
  }
}

.wp-sidebar-post__content {
  width: 55%;
}

.wp-sidebar-post__content h3 {
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 1.53846;
  color: #000;
  display: block;
}

@media only screen and (min-width: 480px) {
  .wp-sidebar-post__content h3 {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 1.53846;
  }
}

@media only screen and (min-width: 960px) {
  .wp-sidebar-post__content h3 {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 20px;
    line-height: 2rem;
  }
}

.wp-sidebar-post__content_lg {
  margin-bottom: 30px;
  width: 100%;
}

.wp-sidebar-post__meta {
  margin-bottom: 7px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.wp-sidebar-post__category {
  width: auto;
  display: inline-block;
  bottom: 0;
  right: 0;
}

.wp-sidebar-post__date {
  font-size: 12px;
  font-size: 1.25vw;
  line-height: 1;
}

@media only screen and (min-width: 960px) {
  .wp-sidebar-post__date {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

/* archivelist
------------------------------------------------------------*/
.wp-sidebar__archive-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.wp-sidebar__archive-list li {
  border-bottom: 1px solid #ccc;
}

.wp-sidebar__archive-list li span {
  padding-left: 4.0625vw;
  background-image: url(assets/images/blog/triangle_down.png);
  background-repeat: no-repeat;
  background-position: 95% center;
  background-size: 10px 7px;
  font-size: 18.2px;
  font-size: 3.79167vw;
  line-height: 2.57143;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  color: #111111;
  display: block;
  cursor: pointer;
}

@media only screen and (min-width: 480px) {
  .wp-sidebar__archive-list li span {
    padding-left: 2.03125vw;
    font-size: 14px;
    font-size: 1.45833vw;
    line-height: 2.57143;
  }
}

@media only screen and (min-width: 960px) {
  .wp-sidebar__archive-list li span {
    padding-left: 15px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 36px;
    line-height: 3.6rem;
  }
}

.wp-sidebar__archive-list li ul {
  display: none;
  list-style-type: none;
  margin: 0;
  padding: 0;
  padding: 0 0 0 4rem;
}

.wp-sidebar__archive-list li ul li {
  border: none;
}

.wp-sidebar__archive-list li ul li a {
  color: #111111;
  font-size: 16.9px;
  font-size: 3.52083vw;
  line-height: 2.76923;
  font-family: 'futura-pt', sans-serif;
  font-weight: 700;
  display: block;
  position: relative;
}

.wp-sidebar__archive-list li ul li a::before {
  content: '-';
}

@media only screen and (min-width: 480px) {
  .wp-sidebar__archive-list li ul li a {
    font-size: 13px;
    font-size: 1.35417vw;
    line-height: 2.76923;
  }
}

@media only screen and (min-width: 960px) {
  .wp-sidebar__archive-list li ul li a {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 36px;
    line-height: 3.6rem;
  }
}

.wp-sidebar__archive-list li.up span {
  background-image: url(assets/images/blog/triangle_up.png);
}

.wp-sidebar__archive-list li.up ul {
  display: block;
}

/**
/* relational list
============================================================*/
.wp-relational-post {
  margin: 0 auto;
  padding-top: 32.5vw;
  padding-bottom: 10.83333vw;
  background-color: #faf6f2;
  position: relative;
}

@media only screen and (min-width: 480px) {
  .wp-relational-post {
    padding-top: 17.70833vw;
    padding-bottom: 4.16667vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-relational-post {
    padding-top: 170px;
    padding-bottom: 40px;
  }
}

.wp-relational-post__heading {
  width: 100%;
  position: absolute;
  top: -8.125vw;
  left: 50%;
  transform: translateX(-50%);
}

@media only screen and (min-width: 960px) {
  .wp-relational-post__heading {
    top: -55px;
  }
}

.wp-relational-post__heading span {
  line-height: 1.5;
  bottom: -60px;
}

@media only screen and (min-width: 480px) {
  .wp-relational-post__heading span {
    bottom: -5.20833vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-relational-post__heading span {
    bottom: -50px;
  }
}

.wp-relational-post__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media only screen and (min-width: 768px) {
  .wp-relational-post__row {
    justify-content: flex-start;
    margin-left: -20px;
    margin-right: -20px;
  }
}

.wp-relational-post__col {
  margin-bottom: 20px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.wp-relational-post__col:last-of-type {
  margin-bottom: 0;
}

@media only screen and (min-width: 768px) {
  .wp-relational-post__col {
    padding-left: 20px;
    padding-right: 20px;
    margin-bottom: 0;
    width: 25%;
    display: block;
  }
}

.wp-relational-post__img {
  margin-bottom: 10px;
  width: 40%;
  height: 24.375vw;
  display: block;
  align-self: flex-start;
  position: relative;
  overflow: hidden;
}

@media only screen and (min-width: 480px) {
  .wp-relational-post__img {
    width: 100%;
    margin-bottom: 1.5625vw;
    height: 15.625vw;
  }
}

@media only screen and (min-width: 960px) {
  .wp-relational-post__img {
    margin-bottom: 15px;
    height: 150px;
  }
}

.wp-relational-post__img img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

@media only screen and (min-width: 480px) {
  .wp-relational-post__meta {
    margin-bottom: 1.25vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
}

.wp-relational-post__date {
  margin-bottom: 1.35417vw;
  font-size: 15.6px;
  font-size: 3.25vw;
  line-height: 1;
}

@media only screen and (min-width: 480px) {
  .wp-relational-post__date {
    margin-bottom: 0;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 1;
    position: relative;
    z-index: 2;
  }
}

@media only screen and (min-width: 960px) {
  .wp-relational-post__date {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 12px;
    line-height: 1.2rem;
  }
}

.wp-relational-post__category {
  margin-bottom: 2.08333vw;
  padding: 0 6px;
  background-color: #00316c;
  font-size: 12px;
  font-size: 2.5vw;
  line-height: 2;
  color: #fff;
  text-align: center;
  font-weight: bold;
  display: inline-block;
}

@media only screen and (min-width: 480px) {
  .wp-relational-post__category {
    margin-bottom: 0;
    font-size: 12px;
    font-size: 1.25vw;
    line-height: 2;
  }
}

@media only screen and (min-width: 960px) {
  .wp-relational-post__category {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 24px;
    line-height: 2.4rem;
  }
}

.wp-relational-post__body {
  width: 55%;
}

@media only screen and (min-width: 768px) {
  .wp-relational-post__body {
    width: 100%;
  }
}

.wp-relational-post__body h3 {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 21px;
  line-height: 2.1rem;
  color: #000;
  display: block;
}

/*
/* Layout
============================================================*/
/* float
------------------------------------------------------------*/
.u-fl-l {
  float: left !important;
}

.u-fl-r {
  float: right !important;
}

/* clearfix 
------------------------------------------------------------*/
.u-clx:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.u-clx {
  min-height: 1px;
}

* html .u-clx {
  height: 1px;
}

.cf:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.cf {
  min-height: 1px;
}

* html .cf {
  height: 1px;
}

.clear {
  clear: both;
}

/* margin controls 
------------------------------------------------------------*/
/* base
- - - - - - - - - - - - - - - - - - */
.u-mt0 {
  margin-top: 0px !important;
}

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

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

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

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

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

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

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

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

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

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

.u-mt55 {
  margin-top: 55px !important;
}

.u-mt60 {
  margin-top: 60px !important;
}

.u-mt65 {
  margin-top: 65px !important;
}

.u-mt70 {
  margin-top: 70px !important;
}

.u-mt75 {
  margin-top: 75px !important;
}

.u-mt80 {
  margin-top: 80px !important;
}

.u-mt85 {
  margin-top: 85px !important;
}

.u-mt90 {
  margin-top: 90px !important;
}

.u-mt95 {
  margin-top: 95px !important;
}

.u-mt100 {
  margin-top: 100px !important;
}

.u-mt105 {
  margin-top: 105px !important;
}

.u-mt110 {
  margin-top: 110px !important;
}

.u-mt115 {
  margin-top: 115px !important;
}

.u-mt120 {
  margin-top: 120px !important;
}

.u-mt125 {
  margin-top: 125px !important;
}

.u-mt130 {
  margin-top: 130px !important;
}

.u-mt135 {
  margin-top: 135px !important;
}

.u-mt140 {
  margin-top: 140px !important;
}

.u-mt145 {
  margin-top: 145px !important;
}

.u-mt150 {
  margin-top: 150px !important;
}

.u-mt155 {
  margin-top: 155px !important;
}

.u-mt160 {
  margin-top: 160px !important;
}

.u-mt165 {
  margin-top: 165px !important;
}

.u-mt170 {
  margin-top: 170px !important;
}

.u-mt175 {
  margin-top: 175px !important;
}

.u-mt180 {
  margin-top: 180px !important;
}

.u-mt185 {
  margin-top: 185px !important;
}

.u-mt190 {
  margin-top: 190px !important;
}

.u-mt195 {
  margin-top: 195px !important;
}

.u-mt200 {
  margin-top: 200px !important;
}

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

.u-mr5 {
  margin-right: 5px !important;
}

.u-mr10 {
  margin-right: 10px !important;
}

.u-mr15 {
  margin-right: 15px !important;
}

.u-mr20 {
  margin-right: 20px !important;
}

.u-mr25 {
  margin-right: 25px !important;
}

.u-mr30 {
  margin-right: 30px !important;
}

.u-mr35 {
  margin-right: 35px !important;
}

.u-mr40 {
  margin-right: 40px !important;
}

.u-mr45 {
  margin-right: 45px !important;
}

.u-mr50 {
  margin-right: 50px !important;
}

.u-mr55 {
  margin-right: 55px !important;
}

.u-mr60 {
  margin-right: 60px !important;
}

.u-mr65 {
  margin-right: 65px !important;
}

.u-mr70 {
  margin-right: 70px !important;
}

.u-mr75 {
  margin-right: 75px !important;
}

.u-mr80 {
  margin-right: 80px !important;
}

.u-mr85 {
  margin-right: 85px !important;
}

.u-mr90 {
  margin-right: 90px !important;
}

.u-mr95 {
  margin-right: 95px !important;
}

.u-mr100 {
  margin-right: 100px !important;
}

.u-mr105 {
  margin-right: 105px !important;
}

.u-mr110 {
  margin-right: 110px !important;
}

.u-mr115 {
  margin-right: 115px !important;
}

.u-mr120 {
  margin-right: 120px !important;
}

.u-mr125 {
  margin-right: 125px !important;
}

.u-mr130 {
  margin-right: 130px !important;
}

.u-mr135 {
  margin-right: 135px !important;
}

.u-mr140 {
  margin-right: 140px !important;
}

.u-mr145 {
  margin-right: 145px !important;
}

.u-mr150 {
  margin-right: 150px !important;
}

.u-mr155 {
  margin-right: 155px !important;
}

.u-mr160 {
  margin-right: 160px !important;
}

.u-mr165 {
  margin-right: 165px !important;
}

.u-mr170 {
  margin-right: 170px !important;
}

.u-mr175 {
  margin-right: 175px !important;
}

.u-mr180 {
  margin-right: 180px !important;
}

.u-mr185 {
  margin-right: 185px !important;
}

.u-mr190 {
  margin-right: 190px !important;
}

.u-mr195 {
  margin-right: 195px !important;
}

.u-mr200 {
  margin-right: 200px !important;
}

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

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

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

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

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

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

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

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

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

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

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

.u-mb55 {
  margin-bottom: 55px !important;
}

.u-mb60 {
  margin-bottom: 60px !important;
}

.u-mb65 {
  margin-bottom: 65px !important;
}

.u-mb70 {
  margin-bottom: 70px !important;
}

.u-mb75 {
  margin-bottom: 75px !important;
}

.u-mb80 {
  margin-bottom: 80px !important;
}

.u-mb85 {
  margin-bottom: 85px !important;
}

.u-mb90 {
  margin-bottom: 90px !important;
}

.u-mb95 {
  margin-bottom: 95px !important;
}

.u-mb100 {
  margin-bottom: 100px !important;
}

.u-mb105 {
  margin-bottom: 105px !important;
}

.u-mb110 {
  margin-bottom: 110px !important;
}

.u-mb115 {
  margin-bottom: 115px !important;
}

.u-mb120 {
  margin-bottom: 120px !important;
}

.u-mb125 {
  margin-bottom: 125px !important;
}

.u-mb130 {
  margin-bottom: 130px !important;
}

.u-mb135 {
  margin-bottom: 135px !important;
}

.u-mb140 {
  margin-bottom: 140px !important;
}

.u-mb145 {
  margin-bottom: 145px !important;
}

.u-mb150 {
  margin-bottom: 150px !important;
}

.u-mb155 {
  margin-bottom: 155px !important;
}

.u-mb160 {
  margin-bottom: 160px !important;
}

.u-mb165 {
  margin-bottom: 165px !important;
}

.u-mb170 {
  margin-bottom: 170px !important;
}

.u-mb175 {
  margin-bottom: 175px !important;
}

.u-mb180 {
  margin-bottom: 180px !important;
}

.u-mb185 {
  margin-bottom: 185px !important;
}

.u-mb190 {
  margin-bottom: 190px !important;
}

.u-mb195 {
  margin-bottom: 195px !important;
}

.u-mb200 {
  margin-bottom: 200px !important;
}

.u-ml0 {
  margin-left: 0px !important;
}

.u-ml5 {
  margin-left: 5px !important;
}

.u-ml10 {
  margin-left: 10px !important;
}

.u-ml15 {
  margin-left: 15px !important;
}

.u-ml20 {
  margin-left: 20px !important;
}

.u-ml25 {
  margin-left: 25px !important;
}

.u-ml30 {
  margin-left: 30px !important;
}

.u-ml35 {
  margin-left: 35px !important;
}

.u-ml40 {
  margin-left: 40px !important;
}

.u-ml45 {
  margin-left: 45px !important;
}

.u-ml50 {
  margin-left: 50px !important;
}

.u-ml55 {
  margin-left: 55px !important;
}

.u-ml60 {
  margin-left: 60px !important;
}

.u-ml65 {
  margin-left: 65px !important;
}

.u-ml70 {
  margin-left: 70px !important;
}

.u-ml75 {
  margin-left: 75px !important;
}

.u-ml80 {
  margin-left: 80px !important;
}

.u-ml85 {
  margin-left: 85px !important;
}

.u-ml90 {
  margin-left: 90px !important;
}

.u-ml95 {
  margin-left: 95px !important;
}

.u-ml100 {
  margin-left: 100px !important;
}

.u-ml105 {
  margin-left: 105px !important;
}

.u-ml110 {
  margin-left: 110px !important;
}

.u-ml115 {
  margin-left: 115px !important;
}

.u-ml120 {
  margin-left: 120px !important;
}

.u-ml125 {
  margin-left: 125px !important;
}

.u-ml130 {
  margin-left: 130px !important;
}

.u-ml135 {
  margin-left: 135px !important;
}

.u-ml140 {
  margin-left: 140px !important;
}

.u-ml145 {
  margin-left: 145px !important;
}

.u-ml150 {
  margin-left: 150px !important;
}

.u-ml155 {
  margin-left: 155px !important;
}

.u-ml160 {
  margin-left: 160px !important;
}

.u-ml165 {
  margin-left: 165px !important;
}

.u-ml170 {
  margin-left: 170px !important;
}

.u-ml175 {
  margin-left: 175px !important;
}

.u-ml180 {
  margin-left: 180px !important;
}

.u-ml185 {
  margin-left: 185px !important;
}

.u-ml190 {
  margin-left: 190px !important;
}

.u-ml195 {
  margin-left: 195px !important;
}

.u-ml200 {
  margin-left: 200px !important;
}

/* screen size XS
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 325px) {
  .u-mtxs0 {
    margin-top: 0px !important;
  }
  .u-mtxs5 {
    margin-top: 5px !important;
  }
  .u-mtxs10 {
    margin-top: 10px !important;
  }
  .u-mtxs15 {
    margin-top: 15px !important;
  }
  .u-mtxs20 {
    margin-top: 20px !important;
  }
  .u-mtxs25 {
    margin-top: 25px !important;
  }
  .u-mtxs30 {
    margin-top: 30px !important;
  }
  .u-mtxs35 {
    margin-top: 35px !important;
  }
  .u-mtxs40 {
    margin-top: 40px !important;
  }
  .u-mtxs45 {
    margin-top: 45px !important;
  }
  .u-mtxs50 {
    margin-top: 50px !important;
  }
  .u-mtxs55 {
    margin-top: 55px !important;
  }
  .u-mtxs60 {
    margin-top: 60px !important;
  }
  .u-mtxs65 {
    margin-top: 65px !important;
  }
  .u-mtxs70 {
    margin-top: 70px !important;
  }
  .u-mtxs75 {
    margin-top: 75px !important;
  }
  .u-mtxs80 {
    margin-top: 80px !important;
  }
  .u-mtxs85 {
    margin-top: 85px !important;
  }
  .u-mtxs90 {
    margin-top: 90px !important;
  }
  .u-mtxs95 {
    margin-top: 95px !important;
  }
  .u-mtxs100 {
    margin-top: 100px !important;
  }
  .u-mtxs105 {
    margin-top: 105px !important;
  }
  .u-mtxs110 {
    margin-top: 110px !important;
  }
  .u-mtxs115 {
    margin-top: 115px !important;
  }
  .u-mtxs120 {
    margin-top: 120px !important;
  }
  .u-mtxs125 {
    margin-top: 125px !important;
  }
  .u-mtxs130 {
    margin-top: 130px !important;
  }
  .u-mtxs135 {
    margin-top: 135px !important;
  }
  .u-mtxs140 {
    margin-top: 140px !important;
  }
  .u-mtxs145 {
    margin-top: 145px !important;
  }
  .u-mtxs150 {
    margin-top: 150px !important;
  }
  .u-mtxs155 {
    margin-top: 155px !important;
  }
  .u-mtxs160 {
    margin-top: 160px !important;
  }
  .u-mtxs165 {
    margin-top: 165px !important;
  }
  .u-mtxs170 {
    margin-top: 170px !important;
  }
  .u-mtxs175 {
    margin-top: 175px !important;
  }
  .u-mtxs180 {
    margin-top: 180px !important;
  }
  .u-mtxs185 {
    margin-top: 185px !important;
  }
  .u-mtxs190 {
    margin-top: 190px !important;
  }
  .u-mtxs195 {
    margin-top: 195px !important;
  }
  .u-mtxs200 {
    margin-top: 200px !important;
  }
  .u-mrxs0 {
    margin-right: 0px !important;
  }
  .u-mrxs5 {
    margin-right: 5px !important;
  }
  .u-mrxs10 {
    margin-right: 10px !important;
  }
  .u-mrxs15 {
    margin-right: 15px !important;
  }
  .u-mrxs20 {
    margin-right: 20px !important;
  }
  .u-mrxs25 {
    margin-right: 25px !important;
  }
  .u-mrxs30 {
    margin-right: 30px !important;
  }
  .u-mrxs35 {
    margin-right: 35px !important;
  }
  .u-mrxs40 {
    margin-right: 40px !important;
  }
  .u-mrxs45 {
    margin-right: 45px !important;
  }
  .u-mrxs50 {
    margin-right: 50px !important;
  }
  .u-mrxs55 {
    margin-right: 55px !important;
  }
  .u-mrxs60 {
    margin-right: 60px !important;
  }
  .u-mrxs65 {
    margin-right: 65px !important;
  }
  .u-mrxs70 {
    margin-right: 70px !important;
  }
  .u-mrxs75 {
    margin-right: 75px !important;
  }
  .u-mrxs80 {
    margin-right: 80px !important;
  }
  .u-mrxs85 {
    margin-right: 85px !important;
  }
  .u-mrxs90 {
    margin-right: 90px !important;
  }
  .u-mrxs95 {
    margin-right: 95px !important;
  }
  .u-mrxs100 {
    margin-right: 100px !important;
  }
  .u-mrxs105 {
    margin-right: 105px !important;
  }
  .u-mrxs110 {
    margin-right: 110px !important;
  }
  .u-mrxs115 {
    margin-right: 115px !important;
  }
  .u-mrxs120 {
    margin-right: 120px !important;
  }
  .u-mrxs125 {
    margin-right: 125px !important;
  }
  .u-mrxs130 {
    margin-right: 130px !important;
  }
  .u-mrxs135 {
    margin-right: 135px !important;
  }
  .u-mrxs140 {
    margin-right: 140px !important;
  }
  .u-mrxs145 {
    margin-right: 145px !important;
  }
  .u-mrxs150 {
    margin-right: 150px !important;
  }
  .u-mrxs155 {
    margin-right: 155px !important;
  }
  .u-mrxs160 {
    margin-right: 160px !important;
  }
  .u-mrxs165 {
    margin-right: 165px !important;
  }
  .u-mrxs170 {
    margin-right: 170px !important;
  }
  .u-mrxs175 {
    margin-right: 175px !important;
  }
  .u-mrxs180 {
    margin-right: 180px !important;
  }
  .u-mrxs185 {
    margin-right: 185px !important;
  }
  .u-mrxs190 {
    margin-right: 190px !important;
  }
  .u-mrxs195 {
    margin-right: 195px !important;
  }
  .u-mrxs200 {
    margin-right: 200px !important;
  }
  .u-mbxs0 {
    margin-bottom: 0px !important;
  }
  .u-mbxs5 {
    margin-bottom: 5px !important;
  }
  .u-mbxs10 {
    margin-bottom: 10px !important;
  }
  .u-mbxs15 {
    margin-bottom: 15px !important;
  }
  .u-mbxs20 {
    margin-bottom: 20px !important;
  }
  .u-mbxs25 {
    margin-bottom: 25px !important;
  }
  .u-mbxs30 {
    margin-bottom: 30px !important;
  }
  .u-mbxs35 {
    margin-bottom: 35px !important;
  }
  .u-mbxs40 {
    margin-bottom: 40px !important;
  }
  .u-mbxs45 {
    margin-bottom: 45px !important;
  }
  .u-mbxs50 {
    margin-bottom: 50px !important;
  }
  .u-mbxs55 {
    margin-bottom: 55px !important;
  }
  .u-mbxs60 {
    margin-bottom: 60px !important;
  }
  .u-mbxs65 {
    margin-bottom: 65px !important;
  }
  .u-mbxs70 {
    margin-bottom: 70px !important;
  }
  .u-mbxs75 {
    margin-bottom: 75px !important;
  }
  .u-mbxs80 {
    margin-bottom: 80px !important;
  }
  .u-mbxs85 {
    margin-bottom: 85px !important;
  }
  .u-mbxs90 {
    margin-bottom: 90px !important;
  }
  .u-mbxs95 {
    margin-bottom: 95px !important;
  }
  .u-mbxs100 {
    margin-bottom: 100px !important;
  }
  .u-mbxs105 {
    margin-bottom: 105px !important;
  }
  .u-mbxs110 {
    margin-bottom: 110px !important;
  }
  .u-mbxs115 {
    margin-bottom: 115px !important;
  }
  .u-mbxs120 {
    margin-bottom: 120px !important;
  }
  .u-mbxs125 {
    margin-bottom: 125px !important;
  }
  .u-mbxs130 {
    margin-bottom: 130px !important;
  }
  .u-mbxs135 {
    margin-bottom: 135px !important;
  }
  .u-mbxs140 {
    margin-bottom: 140px !important;
  }
  .u-mbxs145 {
    margin-bottom: 145px !important;
  }
  .u-mbxs150 {
    margin-bottom: 150px !important;
  }
  .u-mbxs155 {
    margin-bottom: 155px !important;
  }
  .u-mbxs160 {
    margin-bottom: 160px !important;
  }
  .u-mbxs165 {
    margin-bottom: 165px !important;
  }
  .u-mbxs170 {
    margin-bottom: 170px !important;
  }
  .u-mbxs175 {
    margin-bottom: 175px !important;
  }
  .u-mbxs180 {
    margin-bottom: 180px !important;
  }
  .u-mbxs185 {
    margin-bottom: 185px !important;
  }
  .u-mbxs190 {
    margin-bottom: 190px !important;
  }
  .u-mbxs195 {
    margin-bottom: 195px !important;
  }
  .u-mbxs200 {
    margin-bottom: 200px !important;
  }
  .u-mlxs0 {
    margin-left: 0px !important;
  }
  .u-mlxs5 {
    margin-left: 5px !important;
  }
  .u-mlxs10 {
    margin-left: 10px !important;
  }
  .u-mlxs15 {
    margin-left: 15px !important;
  }
  .u-mlxs20 {
    margin-left: 20px !important;
  }
  .u-mlxs25 {
    margin-left: 25px !important;
  }
  .u-mlxs30 {
    margin-left: 30px !important;
  }
  .u-mlxs35 {
    margin-left: 35px !important;
  }
  .u-mlxs40 {
    margin-left: 40px !important;
  }
  .u-mlxs45 {
    margin-left: 45px !important;
  }
  .u-mlxs50 {
    margin-left: 50px !important;
  }
  .u-mlxs55 {
    margin-left: 55px !important;
  }
  .u-mlxs60 {
    margin-left: 60px !important;
  }
  .u-mlxs65 {
    margin-left: 65px !important;
  }
  .u-mlxs70 {
    margin-left: 70px !important;
  }
  .u-mlxs75 {
    margin-left: 75px !important;
  }
  .u-mlxs80 {
    margin-left: 80px !important;
  }
  .u-mlxs85 {
    margin-left: 85px !important;
  }
  .u-mlxs90 {
    margin-left: 90px !important;
  }
  .u-mlxs95 {
    margin-left: 95px !important;
  }
  .u-mlxs100 {
    margin-left: 100px !important;
  }
  .u-mlxs105 {
    margin-left: 105px !important;
  }
  .u-mlxs110 {
    margin-left: 110px !important;
  }
  .u-mlxs115 {
    margin-left: 115px !important;
  }
  .u-mlxs120 {
    margin-left: 120px !important;
  }
  .u-mlxs125 {
    margin-left: 125px !important;
  }
  .u-mlxs130 {
    margin-left: 130px !important;
  }
  .u-mlxs135 {
    margin-left: 135px !important;
  }
  .u-mlxs140 {
    margin-left: 140px !important;
  }
  .u-mlxs145 {
    margin-left: 145px !important;
  }
  .u-mlxs150 {
    margin-left: 150px !important;
  }
  .u-mlxs155 {
    margin-left: 155px !important;
  }
  .u-mlxs160 {
    margin-left: 160px !important;
  }
  .u-mlxs165 {
    margin-left: 165px !important;
  }
  .u-mlxs170 {
    margin-left: 170px !important;
  }
  .u-mlxs175 {
    margin-left: 175px !important;
  }
  .u-mlxs180 {
    margin-left: 180px !important;
  }
  .u-mlxs185 {
    margin-left: 185px !important;
  }
  .u-mlxs190 {
    margin-left: 190px !important;
  }
  .u-mlxs195 {
    margin-left: 195px !important;
  }
  .u-mlxs200 {
    margin-left: 200px !important;
  }
}

/* screen size S
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 480px) {
  .u-mts0 {
    margin-top: 0px !important;
  }
  .u-mts5 {
    margin-top: 5px !important;
  }
  .u-mts10 {
    margin-top: 10px !important;
  }
  .u-mts15 {
    margin-top: 15px !important;
  }
  .u-mts20 {
    margin-top: 20px !important;
  }
  .u-mts25 {
    margin-top: 25px !important;
  }
  .u-mts30 {
    margin-top: 30px !important;
  }
  .u-mts35 {
    margin-top: 35px !important;
  }
  .u-mts40 {
    margin-top: 40px !important;
  }
  .u-mts45 {
    margin-top: 45px !important;
  }
  .u-mts50 {
    margin-top: 50px !important;
  }
  .u-mts55 {
    margin-top: 55px !important;
  }
  .u-mts60 {
    margin-top: 60px !important;
  }
  .u-mts65 {
    margin-top: 65px !important;
  }
  .u-mts70 {
    margin-top: 70px !important;
  }
  .u-mts75 {
    margin-top: 75px !important;
  }
  .u-mts80 {
    margin-top: 80px !important;
  }
  .u-mts85 {
    margin-top: 85px !important;
  }
  .u-mts90 {
    margin-top: 90px !important;
  }
  .u-mts95 {
    margin-top: 95px !important;
  }
  .u-mts100 {
    margin-top: 100px !important;
  }
  .u-mts105 {
    margin-top: 105px !important;
  }
  .u-mts110 {
    margin-top: 110px !important;
  }
  .u-mts115 {
    margin-top: 115px !important;
  }
  .u-mts120 {
    margin-top: 120px !important;
  }
  .u-mts125 {
    margin-top: 125px !important;
  }
  .u-mts130 {
    margin-top: 130px !important;
  }
  .u-mts135 {
    margin-top: 135px !important;
  }
  .u-mts140 {
    margin-top: 140px !important;
  }
  .u-mts145 {
    margin-top: 145px !important;
  }
  .u-mts150 {
    margin-top: 150px !important;
  }
  .u-mts155 {
    margin-top: 155px !important;
  }
  .u-mts160 {
    margin-top: 160px !important;
  }
  .u-mts165 {
    margin-top: 165px !important;
  }
  .u-mts170 {
    margin-top: 170px !important;
  }
  .u-mts175 {
    margin-top: 175px !important;
  }
  .u-mts180 {
    margin-top: 180px !important;
  }
  .u-mts185 {
    margin-top: 185px !important;
  }
  .u-mts190 {
    margin-top: 190px !important;
  }
  .u-mts195 {
    margin-top: 195px !important;
  }
  .u-mts200 {
    margin-top: 200px !important;
  }
  .u-mrs0 {
    margin-right: 0px !important;
  }
  .u-mrs5 {
    margin-right: 5px !important;
  }
  .u-mrs10 {
    margin-right: 10px !important;
  }
  .u-mrs15 {
    margin-right: 15px !important;
  }
  .u-mrs20 {
    margin-right: 20px !important;
  }
  .u-mrs25 {
    margin-right: 25px !important;
  }
  .u-mrs30 {
    margin-right: 30px !important;
  }
  .u-mrs35 {
    margin-right: 35px !important;
  }
  .u-mrs40 {
    margin-right: 40px !important;
  }
  .u-mrs45 {
    margin-right: 45px !important;
  }
  .u-mrs50 {
    margin-right: 50px !important;
  }
  .u-mrs55 {
    margin-right: 55px !important;
  }
  .u-mrs60 {
    margin-right: 60px !important;
  }
  .u-mrs65 {
    margin-right: 65px !important;
  }
  .u-mrs70 {
    margin-right: 70px !important;
  }
  .u-mrs75 {
    margin-right: 75px !important;
  }
  .u-mrs80 {
    margin-right: 80px !important;
  }
  .u-mrs85 {
    margin-right: 85px !important;
  }
  .u-mrs90 {
    margin-right: 90px !important;
  }
  .u-mrs95 {
    margin-right: 95px !important;
  }
  .u-mrs100 {
    margin-right: 100px !important;
  }
  .u-mrs105 {
    margin-right: 105px !important;
  }
  .u-mrs110 {
    margin-right: 110px !important;
  }
  .u-mrs115 {
    margin-right: 115px !important;
  }
  .u-mrs120 {
    margin-right: 120px !important;
  }
  .u-mrs125 {
    margin-right: 125px !important;
  }
  .u-mrs130 {
    margin-right: 130px !important;
  }
  .u-mrs135 {
    margin-right: 135px !important;
  }
  .u-mrs140 {
    margin-right: 140px !important;
  }
  .u-mrs145 {
    margin-right: 145px !important;
  }
  .u-mrs150 {
    margin-right: 150px !important;
  }
  .u-mrs155 {
    margin-right: 155px !important;
  }
  .u-mrs160 {
    margin-right: 160px !important;
  }
  .u-mrs165 {
    margin-right: 165px !important;
  }
  .u-mrs170 {
    margin-right: 170px !important;
  }
  .u-mrs175 {
    margin-right: 175px !important;
  }
  .u-mrs180 {
    margin-right: 180px !important;
  }
  .u-mrs185 {
    margin-right: 185px !important;
  }
  .u-mrs190 {
    margin-right: 190px !important;
  }
  .u-mrs195 {
    margin-right: 195px !important;
  }
  .u-mrs200 {
    margin-right: 200px !important;
  }
  .u-mbs0 {
    margin-bottom: 0px !important;
  }
  .u-mbs5 {
    margin-bottom: 5px !important;
  }
  .u-mbs10 {
    margin-bottom: 10px !important;
  }
  .u-mbs15 {
    margin-bottom: 15px !important;
  }
  .u-mbs20 {
    margin-bottom: 20px !important;
  }
  .u-mbs25 {
    margin-bottom: 25px !important;
  }
  .u-mbs30 {
    margin-bottom: 30px !important;
  }
  .u-mbs35 {
    margin-bottom: 35px !important;
  }
  .u-mbs40 {
    margin-bottom: 40px !important;
  }
  .u-mbs45 {
    margin-bottom: 45px !important;
  }
  .u-mbs50 {
    margin-bottom: 50px !important;
  }
  .u-mbs55 {
    margin-bottom: 55px !important;
  }
  .u-mbs60 {
    margin-bottom: 60px !important;
  }
  .u-mbs65 {
    margin-bottom: 65px !important;
  }
  .u-mbs70 {
    margin-bottom: 70px !important;
  }
  .u-mbs75 {
    margin-bottom: 75px !important;
  }
  .u-mbs80 {
    margin-bottom: 80px !important;
  }
  .u-mbs85 {
    margin-bottom: 85px !important;
  }
  .u-mbs90 {
    margin-bottom: 90px !important;
  }
  .u-mbs95 {
    margin-bottom: 95px !important;
  }
  .u-mbs100 {
    margin-bottom: 100px !important;
  }
  .u-mbs105 {
    margin-bottom: 105px !important;
  }
  .u-mbs110 {
    margin-bottom: 110px !important;
  }
  .u-mbs115 {
    margin-bottom: 115px !important;
  }
  .u-mbs120 {
    margin-bottom: 120px !important;
  }
  .u-mbs125 {
    margin-bottom: 125px !important;
  }
  .u-mbs130 {
    margin-bottom: 130px !important;
  }
  .u-mbs135 {
    margin-bottom: 135px !important;
  }
  .u-mbs140 {
    margin-bottom: 140px !important;
  }
  .u-mbs145 {
    margin-bottom: 145px !important;
  }
  .u-mbs150 {
    margin-bottom: 150px !important;
  }
  .u-mbs155 {
    margin-bottom: 155px !important;
  }
  .u-mbs160 {
    margin-bottom: 160px !important;
  }
  .u-mbs165 {
    margin-bottom: 165px !important;
  }
  .u-mbs170 {
    margin-bottom: 170px !important;
  }
  .u-mbs175 {
    margin-bottom: 175px !important;
  }
  .u-mbs180 {
    margin-bottom: 180px !important;
  }
  .u-mbs185 {
    margin-bottom: 185px !important;
  }
  .u-mbs190 {
    margin-bottom: 190px !important;
  }
  .u-mbs195 {
    margin-bottom: 195px !important;
  }
  .u-mbs200 {
    margin-bottom: 200px !important;
  }
  .u-mls0 {
    margin-left: 0px !important;
  }
  .u-mls5 {
    margin-left: 5px !important;
  }
  .u-mls10 {
    margin-left: 10px !important;
  }
  .u-mls15 {
    margin-left: 15px !important;
  }
  .u-mls20 {
    margin-left: 20px !important;
  }
  .u-mls25 {
    margin-left: 25px !important;
  }
  .u-mls30 {
    margin-left: 30px !important;
  }
  .u-mls35 {
    margin-left: 35px !important;
  }
  .u-mls40 {
    margin-left: 40px !important;
  }
  .u-mls45 {
    margin-left: 45px !important;
  }
  .u-mls50 {
    margin-left: 50px !important;
  }
  .u-mls55 {
    margin-left: 55px !important;
  }
  .u-mls60 {
    margin-left: 60px !important;
  }
  .u-mls65 {
    margin-left: 65px !important;
  }
  .u-mls70 {
    margin-left: 70px !important;
  }
  .u-mls75 {
    margin-left: 75px !important;
  }
  .u-mls80 {
    margin-left: 80px !important;
  }
  .u-mls85 {
    margin-left: 85px !important;
  }
  .u-mls90 {
    margin-left: 90px !important;
  }
  .u-mls95 {
    margin-left: 95px !important;
  }
  .u-mls100 {
    margin-left: 100px !important;
  }
  .u-mls105 {
    margin-left: 105px !important;
  }
  .u-mls110 {
    margin-left: 110px !important;
  }
  .u-mls115 {
    margin-left: 115px !important;
  }
  .u-mls120 {
    margin-left: 120px !important;
  }
  .u-mls125 {
    margin-left: 125px !important;
  }
  .u-mls130 {
    margin-left: 130px !important;
  }
  .u-mls135 {
    margin-left: 135px !important;
  }
  .u-mls140 {
    margin-left: 140px !important;
  }
  .u-mls145 {
    margin-left: 145px !important;
  }
  .u-mls150 {
    margin-left: 150px !important;
  }
  .u-mls155 {
    margin-left: 155px !important;
  }
  .u-mls160 {
    margin-left: 160px !important;
  }
  .u-mls165 {
    margin-left: 165px !important;
  }
  .u-mls170 {
    margin-left: 170px !important;
  }
  .u-mls175 {
    margin-left: 175px !important;
  }
  .u-mls180 {
    margin-left: 180px !important;
  }
  .u-mls185 {
    margin-left: 185px !important;
  }
  .u-mls190 {
    margin-left: 190px !important;
  }
  .u-mls195 {
    margin-left: 195px !important;
  }
  .u-mls200 {
    margin-left: 200px !important;
  }
}

/* screen size M
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 768px) {
  .u-mtm0 {
    margin-top: 0px !important;
  }
  .u-mtm5 {
    margin-top: 5px !important;
  }
  .u-mtm10 {
    margin-top: 10px !important;
  }
  .u-mtm15 {
    margin-top: 15px !important;
  }
  .u-mtm20 {
    margin-top: 20px !important;
  }
  .u-mtm25 {
    margin-top: 25px !important;
  }
  .u-mtm30 {
    margin-top: 30px !important;
  }
  .u-mtm35 {
    margin-top: 35px !important;
  }
  .u-mtm40 {
    margin-top: 40px !important;
  }
  .u-mtm45 {
    margin-top: 45px !important;
  }
  .u-mtm50 {
    margin-top: 50px !important;
  }
  .u-mtm55 {
    margin-top: 55px !important;
  }
  .u-mtm60 {
    margin-top: 60px !important;
  }
  .u-mtm65 {
    margin-top: 65px !important;
  }
  .u-mtm70 {
    margin-top: 70px !important;
  }
  .u-mtm75 {
    margin-top: 75px !important;
  }
  .u-mtm80 {
    margin-top: 80px !important;
  }
  .u-mtm85 {
    margin-top: 85px !important;
  }
  .u-mtm90 {
    margin-top: 90px !important;
  }
  .u-mtm95 {
    margin-top: 95px !important;
  }
  .u-mtm100 {
    margin-top: 100px !important;
  }
  .u-mtm105 {
    margin-top: 105px !important;
  }
  .u-mtm110 {
    margin-top: 110px !important;
  }
  .u-mtm115 {
    margin-top: 115px !important;
  }
  .u-mtm120 {
    margin-top: 120px !important;
  }
  .u-mtm125 {
    margin-top: 125px !important;
  }
  .u-mtm130 {
    margin-top: 130px !important;
  }
  .u-mtm135 {
    margin-top: 135px !important;
  }
  .u-mtm140 {
    margin-top: 140px !important;
  }
  .u-mtm145 {
    margin-top: 145px !important;
  }
  .u-mtm150 {
    margin-top: 150px !important;
  }
  .u-mtm155 {
    margin-top: 155px !important;
  }
  .u-mtm160 {
    margin-top: 160px !important;
  }
  .u-mtm165 {
    margin-top: 165px !important;
  }
  .u-mtm170 {
    margin-top: 170px !important;
  }
  .u-mtm175 {
    margin-top: 175px !important;
  }
  .u-mtm180 {
    margin-top: 180px !important;
  }
  .u-mtm185 {
    margin-top: 185px !important;
  }
  .u-mtm190 {
    margin-top: 190px !important;
  }
  .u-mtm195 {
    margin-top: 195px !important;
  }
  .u-mtm200 {
    margin-top: 200px !important;
  }
  .u-mrm0 {
    margin-right: 0px !important;
  }
  .u-mrm5 {
    margin-right: 5px !important;
  }
  .u-mrm10 {
    margin-right: 10px !important;
  }
  .u-mrm15 {
    margin-right: 15px !important;
  }
  .u-mrm20 {
    margin-right: 20px !important;
  }
  .u-mrm25 {
    margin-right: 25px !important;
  }
  .u-mrm30 {
    margin-right: 30px !important;
  }
  .u-mrm35 {
    margin-right: 35px !important;
  }
  .u-mrm40 {
    margin-right: 40px !important;
  }
  .u-mrm45 {
    margin-right: 45px !important;
  }
  .u-mrm50 {
    margin-right: 50px !important;
  }
  .u-mrm55 {
    margin-right: 55px !important;
  }
  .u-mrm60 {
    margin-right: 60px !important;
  }
  .u-mrm65 {
    margin-right: 65px !important;
  }
  .u-mrm70 {
    margin-right: 70px !important;
  }
  .u-mrm75 {
    margin-right: 75px !important;
  }
  .u-mrm80 {
    margin-right: 80px !important;
  }
  .u-mrm85 {
    margin-right: 85px !important;
  }
  .u-mrm90 {
    margin-right: 90px !important;
  }
  .u-mrm95 {
    margin-right: 95px !important;
  }
  .u-mrm100 {
    margin-right: 100px !important;
  }
  .u-mrm105 {
    margin-right: 105px !important;
  }
  .u-mrm110 {
    margin-right: 110px !important;
  }
  .u-mrm115 {
    margin-right: 115px !important;
  }
  .u-mrm120 {
    margin-right: 120px !important;
  }
  .u-mrm125 {
    margin-right: 125px !important;
  }
  .u-mrm130 {
    margin-right: 130px !important;
  }
  .u-mrm135 {
    margin-right: 135px !important;
  }
  .u-mrm140 {
    margin-right: 140px !important;
  }
  .u-mrm145 {
    margin-right: 145px !important;
  }
  .u-mrm150 {
    margin-right: 150px !important;
  }
  .u-mrm155 {
    margin-right: 155px !important;
  }
  .u-mrm160 {
    margin-right: 160px !important;
  }
  .u-mrm165 {
    margin-right: 165px !important;
  }
  .u-mrm170 {
    margin-right: 170px !important;
  }
  .u-mrm175 {
    margin-right: 175px !important;
  }
  .u-mrm180 {
    margin-right: 180px !important;
  }
  .u-mrm185 {
    margin-right: 185px !important;
  }
  .u-mrm190 {
    margin-right: 190px !important;
  }
  .u-mrm195 {
    margin-right: 195px !important;
  }
  .u-mrm200 {
    margin-right: 200px !important;
  }
  .u-mbm0 {
    margin-bottom: 0px !important;
  }
  .u-mbm5 {
    margin-bottom: 5px !important;
  }
  .u-mbm10 {
    margin-bottom: 10px !important;
  }
  .u-mbm15 {
    margin-bottom: 15px !important;
  }
  .u-mbm20 {
    margin-bottom: 20px !important;
  }
  .u-mbm25 {
    margin-bottom: 25px !important;
  }
  .u-mbm30 {
    margin-bottom: 30px !important;
  }
  .u-mbm35 {
    margin-bottom: 35px !important;
  }
  .u-mbm40 {
    margin-bottom: 40px !important;
  }
  .u-mbm45 {
    margin-bottom: 45px !important;
  }
  .u-mbm50 {
    margin-bottom: 50px !important;
  }
  .u-mbm55 {
    margin-bottom: 55px !important;
  }
  .u-mbm60 {
    margin-bottom: 60px !important;
  }
  .u-mbm65 {
    margin-bottom: 65px !important;
  }
  .u-mbm70 {
    margin-bottom: 70px !important;
  }
  .u-mbm75 {
    margin-bottom: 75px !important;
  }
  .u-mbm80 {
    margin-bottom: 80px !important;
  }
  .u-mbm85 {
    margin-bottom: 85px !important;
  }
  .u-mbm90 {
    margin-bottom: 90px !important;
  }
  .u-mbm95 {
    margin-bottom: 95px !important;
  }
  .u-mbm100 {
    margin-bottom: 100px !important;
  }
  .u-mbm105 {
    margin-bottom: 105px !important;
  }
  .u-mbm110 {
    margin-bottom: 110px !important;
  }
  .u-mbm115 {
    margin-bottom: 115px !important;
  }
  .u-mbm120 {
    margin-bottom: 120px !important;
  }
  .u-mbm125 {
    margin-bottom: 125px !important;
  }
  .u-mbm130 {
    margin-bottom: 130px !important;
  }
  .u-mbm135 {
    margin-bottom: 135px !important;
  }
  .u-mbm140 {
    margin-bottom: 140px !important;
  }
  .u-mbm145 {
    margin-bottom: 145px !important;
  }
  .u-mbm150 {
    margin-bottom: 150px !important;
  }
  .u-mbm155 {
    margin-bottom: 155px !important;
  }
  .u-mbm160 {
    margin-bottom: 160px !important;
  }
  .u-mbm165 {
    margin-bottom: 165px !important;
  }
  .u-mbm170 {
    margin-bottom: 170px !important;
  }
  .u-mbm175 {
    margin-bottom: 175px !important;
  }
  .u-mbm180 {
    margin-bottom: 180px !important;
  }
  .u-mbm185 {
    margin-bottom: 185px !important;
  }
  .u-mbm190 {
    margin-bottom: 190px !important;
  }
  .u-mbm195 {
    margin-bottom: 195px !important;
  }
  .u-mbm200 {
    margin-bottom: 200px !important;
  }
  .u-mlm0 {
    margin-left: 0px !important;
  }
  .u-mlm5 {
    margin-left: 5px !important;
  }
  .u-mlm10 {
    margin-left: 10px !important;
  }
  .u-mlm15 {
    margin-left: 15px !important;
  }
  .u-mlm20 {
    margin-left: 20px !important;
  }
  .u-mlm25 {
    margin-left: 25px !important;
  }
  .u-mlm30 {
    margin-left: 30px !important;
  }
  .u-mlm35 {
    margin-left: 35px !important;
  }
  .u-mlm40 {
    margin-left: 40px !important;
  }
  .u-mlm45 {
    margin-left: 45px !important;
  }
  .u-mlm50 {
    margin-left: 50px !important;
  }
  .u-mlm55 {
    margin-left: 55px !important;
  }
  .u-mlm60 {
    margin-left: 60px !important;
  }
  .u-mlm65 {
    margin-left: 65px !important;
  }
  .u-mlm70 {
    margin-left: 70px !important;
  }
  .u-mlm75 {
    margin-left: 75px !important;
  }
  .u-mlm80 {
    margin-left: 80px !important;
  }
  .u-mlm85 {
    margin-left: 85px !important;
  }
  .u-mlm90 {
    margin-left: 90px !important;
  }
  .u-mlm95 {
    margin-left: 95px !important;
  }
  .u-mlm100 {
    margin-left: 100px !important;
  }
  .u-mlm105 {
    margin-left: 105px !important;
  }
  .u-mlm110 {
    margin-left: 110px !important;
  }
  .u-mlm115 {
    margin-left: 115px !important;
  }
  .u-mlm120 {
    margin-left: 120px !important;
  }
  .u-mlm125 {
    margin-left: 125px !important;
  }
  .u-mlm130 {
    margin-left: 130px !important;
  }
  .u-mlm135 {
    margin-left: 135px !important;
  }
  .u-mlm140 {
    margin-left: 140px !important;
  }
  .u-mlm145 {
    margin-left: 145px !important;
  }
  .u-mlm150 {
    margin-left: 150px !important;
  }
  .u-mlm155 {
    margin-left: 155px !important;
  }
  .u-mlm160 {
    margin-left: 160px !important;
  }
  .u-mlm165 {
    margin-left: 165px !important;
  }
  .u-mlm170 {
    margin-left: 170px !important;
  }
  .u-mlm175 {
    margin-left: 175px !important;
  }
  .u-mlm180 {
    margin-left: 180px !important;
  }
  .u-mlm185 {
    margin-left: 185px !important;
  }
  .u-mlm190 {
    margin-left: 190px !important;
  }
  .u-mlm195 {
    margin-left: 195px !important;
  }
  .u-mlm200 {
    margin-left: 200px !important;
  }
}

/* screen size L
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 960px) {
  .u-mtl0 {
    margin-top: 0px !important;
  }
  .u-mtl5 {
    margin-top: 5px !important;
  }
  .u-mtl10 {
    margin-top: 10px !important;
  }
  .u-mtl15 {
    margin-top: 15px !important;
  }
  .u-mtl20 {
    margin-top: 20px !important;
  }
  .u-mtl25 {
    margin-top: 25px !important;
  }
  .u-mtl30 {
    margin-top: 30px !important;
  }
  .u-mtl35 {
    margin-top: 35px !important;
  }
  .u-mtl40 {
    margin-top: 40px !important;
  }
  .u-mtl45 {
    margin-top: 45px !important;
  }
  .u-mtl50 {
    margin-top: 50px !important;
  }
  .u-mtl55 {
    margin-top: 55px !important;
  }
  .u-mtl60 {
    margin-top: 60px !important;
  }
  .u-mtl65 {
    margin-top: 65px !important;
  }
  .u-mtl70 {
    margin-top: 70px !important;
  }
  .u-mtl75 {
    margin-top: 75px !important;
  }
  .u-mtl80 {
    margin-top: 80px !important;
  }
  .u-mtl85 {
    margin-top: 85px !important;
  }
  .u-mtl90 {
    margin-top: 90px !important;
  }
  .u-mtl95 {
    margin-top: 95px !important;
  }
  .u-mtl100 {
    margin-top: 100px !important;
  }
  .u-mtl105 {
    margin-top: 105px !important;
  }
  .u-mtl110 {
    margin-top: 110px !important;
  }
  .u-mtl115 {
    margin-top: 115px !important;
  }
  .u-mtl120 {
    margin-top: 120px !important;
  }
  .u-mtl125 {
    margin-top: 125px !important;
  }
  .u-mtl130 {
    margin-top: 130px !important;
  }
  .u-mtl135 {
    margin-top: 135px !important;
  }
  .u-mtl140 {
    margin-top: 140px !important;
  }
  .u-mtl145 {
    margin-top: 145px !important;
  }
  .u-mtl150 {
    margin-top: 150px !important;
  }
  .u-mtl155 {
    margin-top: 155px !important;
  }
  .u-mtl160 {
    margin-top: 160px !important;
  }
  .u-mtl165 {
    margin-top: 165px !important;
  }
  .u-mtl170 {
    margin-top: 170px !important;
  }
  .u-mtl175 {
    margin-top: 175px !important;
  }
  .u-mtl180 {
    margin-top: 180px !important;
  }
  .u-mtl185 {
    margin-top: 185px !important;
  }
  .u-mtl190 {
    margin-top: 190px !important;
  }
  .u-mtl195 {
    margin-top: 195px !important;
  }
  .u-mtl200 {
    margin-top: 200px !important;
  }
  .u-mrl0 {
    margin-right: 0px !important;
  }
  .u-mrl5 {
    margin-right: 5px !important;
  }
  .u-mrl10 {
    margin-right: 10px !important;
  }
  .u-mrl15 {
    margin-right: 15px !important;
  }
  .u-mrl20 {
    margin-right: 20px !important;
  }
  .u-mrl25 {
    margin-right: 25px !important;
  }
  .u-mrl30 {
    margin-right: 30px !important;
  }
  .u-mrl35 {
    margin-right: 35px !important;
  }
  .u-mrl40 {
    margin-right: 40px !important;
  }
  .u-mrl45 {
    margin-right: 45px !important;
  }
  .u-mrl50 {
    margin-right: 50px !important;
  }
  .u-mrl55 {
    margin-right: 55px !important;
  }
  .u-mrl60 {
    margin-right: 60px !important;
  }
  .u-mrl65 {
    margin-right: 65px !important;
  }
  .u-mrl70 {
    margin-right: 70px !important;
  }
  .u-mrl75 {
    margin-right: 75px !important;
  }
  .u-mrl80 {
    margin-right: 80px !important;
  }
  .u-mrl85 {
    margin-right: 85px !important;
  }
  .u-mrl90 {
    margin-right: 90px !important;
  }
  .u-mrl95 {
    margin-right: 95px !important;
  }
  .u-mrl100 {
    margin-right: 100px !important;
  }
  .u-mrl105 {
    margin-right: 105px !important;
  }
  .u-mrl110 {
    margin-right: 110px !important;
  }
  .u-mrl115 {
    margin-right: 115px !important;
  }
  .u-mrl120 {
    margin-right: 120px !important;
  }
  .u-mrl125 {
    margin-right: 125px !important;
  }
  .u-mrl130 {
    margin-right: 130px !important;
  }
  .u-mrl135 {
    margin-right: 135px !important;
  }
  .u-mrl140 {
    margin-right: 140px !important;
  }
  .u-mrl145 {
    margin-right: 145px !important;
  }
  .u-mrl150 {
    margin-right: 150px !important;
  }
  .u-mrl155 {
    margin-right: 155px !important;
  }
  .u-mrl160 {
    margin-right: 160px !important;
  }
  .u-mrl165 {
    margin-right: 165px !important;
  }
  .u-mrl170 {
    margin-right: 170px !important;
  }
  .u-mrl175 {
    margin-right: 175px !important;
  }
  .u-mrl180 {
    margin-right: 180px !important;
  }
  .u-mrl185 {
    margin-right: 185px !important;
  }
  .u-mrl190 {
    margin-right: 190px !important;
  }
  .u-mrl195 {
    margin-right: 195px !important;
  }
  .u-mrl200 {
    margin-right: 200px !important;
  }
  .u-mbl0 {
    margin-bottom: 0px !important;
  }
  .u-mbl5 {
    margin-bottom: 5px !important;
  }
  .u-mbl10 {
    margin-bottom: 10px !important;
  }
  .u-mbl15 {
    margin-bottom: 15px !important;
  }
  .u-mbl20 {
    margin-bottom: 20px !important;
  }
  .u-mbl25 {
    margin-bottom: 25px !important;
  }
  .u-mbl30 {
    margin-bottom: 30px !important;
  }
  .u-mbl35 {
    margin-bottom: 35px !important;
  }
  .u-mbl40 {
    margin-bottom: 40px !important;
  }
  .u-mbl45 {
    margin-bottom: 45px !important;
  }
  .u-mbl50 {
    margin-bottom: 50px !important;
  }
  .u-mbl55 {
    margin-bottom: 55px !important;
  }
  .u-mbl60 {
    margin-bottom: 60px !important;
  }
  .u-mbl65 {
    margin-bottom: 65px !important;
  }
  .u-mbl70 {
    margin-bottom: 70px !important;
  }
  .u-mbl75 {
    margin-bottom: 75px !important;
  }
  .u-mbl80 {
    margin-bottom: 80px !important;
  }
  .u-mbl85 {
    margin-bottom: 85px !important;
  }
  .u-mbl90 {
    margin-bottom: 90px !important;
  }
  .u-mbl95 {
    margin-bottom: 95px !important;
  }
  .u-mbl100 {
    margin-bottom: 100px !important;
  }
  .u-mbl105 {
    margin-bottom: 105px !important;
  }
  .u-mbl110 {
    margin-bottom: 110px !important;
  }
  .u-mbl115 {
    margin-bottom: 115px !important;
  }
  .u-mbl120 {
    margin-bottom: 120px !important;
  }
  .u-mbl125 {
    margin-bottom: 125px !important;
  }
  .u-mbl130 {
    margin-bottom: 130px !important;
  }
  .u-mbl135 {
    margin-bottom: 135px !important;
  }
  .u-mbl140 {
    margin-bottom: 140px !important;
  }
  .u-mbl145 {
    margin-bottom: 145px !important;
  }
  .u-mbl150 {
    margin-bottom: 150px !important;
  }
  .u-mbl155 {
    margin-bottom: 155px !important;
  }
  .u-mbl160 {
    margin-bottom: 160px !important;
  }
  .u-mbl165 {
    margin-bottom: 165px !important;
  }
  .u-mbl170 {
    margin-bottom: 170px !important;
  }
  .u-mbl175 {
    margin-bottom: 175px !important;
  }
  .u-mbl180 {
    margin-bottom: 180px !important;
  }
  .u-mbl185 {
    margin-bottom: 185px !important;
  }
  .u-mbl190 {
    margin-bottom: 190px !important;
  }
  .u-mbl195 {
    margin-bottom: 195px !important;
  }
  .u-mbl200 {
    margin-bottom: 200px !important;
  }
  .u-mll0 {
    margin-left: 0px !important;
  }
  .u-mll5 {
    margin-left: 5px !important;
  }
  .u-mll10 {
    margin-left: 10px !important;
  }
  .u-mll15 {
    margin-left: 15px !important;
  }
  .u-mll20 {
    margin-left: 20px !important;
  }
  .u-mll25 {
    margin-left: 25px !important;
  }
  .u-mll30 {
    margin-left: 30px !important;
  }
  .u-mll35 {
    margin-left: 35px !important;
  }
  .u-mll40 {
    margin-left: 40px !important;
  }
  .u-mll45 {
    margin-left: 45px !important;
  }
  .u-mll50 {
    margin-left: 50px !important;
  }
  .u-mll55 {
    margin-left: 55px !important;
  }
  .u-mll60 {
    margin-left: 60px !important;
  }
  .u-mll65 {
    margin-left: 65px !important;
  }
  .u-mll70 {
    margin-left: 70px !important;
  }
  .u-mll75 {
    margin-left: 75px !important;
  }
  .u-mll80 {
    margin-left: 80px !important;
  }
  .u-mll85 {
    margin-left: 85px !important;
  }
  .u-mll90 {
    margin-left: 90px !important;
  }
  .u-mll95 {
    margin-left: 95px !important;
  }
  .u-mll100 {
    margin-left: 100px !important;
  }
  .u-mll105 {
    margin-left: 105px !important;
  }
  .u-mll110 {
    margin-left: 110px !important;
  }
  .u-mll115 {
    margin-left: 115px !important;
  }
  .u-mll120 {
    margin-left: 120px !important;
  }
  .u-mll125 {
    margin-left: 125px !important;
  }
  .u-mll130 {
    margin-left: 130px !important;
  }
  .u-mll135 {
    margin-left: 135px !important;
  }
  .u-mll140 {
    margin-left: 140px !important;
  }
  .u-mll145 {
    margin-left: 145px !important;
  }
  .u-mll150 {
    margin-left: 150px !important;
  }
  .u-mll155 {
    margin-left: 155px !important;
  }
  .u-mll160 {
    margin-left: 160px !important;
  }
  .u-mll165 {
    margin-left: 165px !important;
  }
  .u-mll170 {
    margin-left: 170px !important;
  }
  .u-mll175 {
    margin-left: 175px !important;
  }
  .u-mll180 {
    margin-left: 180px !important;
  }
  .u-mll185 {
    margin-left: 185px !important;
  }
  .u-mll190 {
    margin-left: 190px !important;
  }
  .u-mll195 {
    margin-left: 195px !important;
  }
  .u-mll200 {
    margin-left: 200px !important;
  }
}

/* screen size XL
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 1280px) {
  .u-mtxl0 {
    margin-top: 0px !important;
  }
  .u-mtxl5 {
    margin-top: 5px !important;
  }
  .u-mtxl10 {
    margin-top: 10px !important;
  }
  .u-mtxl15 {
    margin-top: 15px !important;
  }
  .u-mtxl20 {
    margin-top: 20px !important;
  }
  .u-mtxl25 {
    margin-top: 25px !important;
  }
  .u-mtxl30 {
    margin-top: 30px !important;
  }
  .u-mtxl35 {
    margin-top: 35px !important;
  }
  .u-mtxl40 {
    margin-top: 40px !important;
  }
  .u-mtxl45 {
    margin-top: 45px !important;
  }
  .u-mtxl50 {
    margin-top: 50px !important;
  }
  .u-mtxl55 {
    margin-top: 55px !important;
  }
  .u-mtxl60 {
    margin-top: 60px !important;
  }
  .u-mtxl65 {
    margin-top: 65px !important;
  }
  .u-mtxl70 {
    margin-top: 70px !important;
  }
  .u-mtxl75 {
    margin-top: 75px !important;
  }
  .u-mtxl80 {
    margin-top: 80px !important;
  }
  .u-mtxl85 {
    margin-top: 85px !important;
  }
  .u-mtxl90 {
    margin-top: 90px !important;
  }
  .u-mtxl95 {
    margin-top: 95px !important;
  }
  .u-mtxl100 {
    margin-top: 100px !important;
  }
  .u-mtxl105 {
    margin-top: 105px !important;
  }
  .u-mtxl110 {
    margin-top: 110px !important;
  }
  .u-mtxl115 {
    margin-top: 115px !important;
  }
  .u-mtxl120 {
    margin-top: 120px !important;
  }
  .u-mtxl125 {
    margin-top: 125px !important;
  }
  .u-mtxl130 {
    margin-top: 130px !important;
  }
  .u-mtxl135 {
    margin-top: 135px !important;
  }
  .u-mtxl140 {
    margin-top: 140px !important;
  }
  .u-mtxl145 {
    margin-top: 145px !important;
  }
  .u-mtxl150 {
    margin-top: 150px !important;
  }
  .u-mtxl155 {
    margin-top: 155px !important;
  }
  .u-mtxl160 {
    margin-top: 160px !important;
  }
  .u-mtxl165 {
    margin-top: 165px !important;
  }
  .u-mtxl170 {
    margin-top: 170px !important;
  }
  .u-mtxl175 {
    margin-top: 175px !important;
  }
  .u-mtxl180 {
    margin-top: 180px !important;
  }
  .u-mtxl185 {
    margin-top: 185px !important;
  }
  .u-mtxl190 {
    margin-top: 190px !important;
  }
  .u-mtxl195 {
    margin-top: 195px !important;
  }
  .u-mtxl200 {
    margin-top: 200px !important;
  }
  .u-mrxl0 {
    margin-right: 0px !important;
  }
  .u-mrxl5 {
    margin-right: 5px !important;
  }
  .u-mrxl10 {
    margin-right: 10px !important;
  }
  .u-mrxl15 {
    margin-right: 15px !important;
  }
  .u-mrxl20 {
    margin-right: 20px !important;
  }
  .u-mrxl25 {
    margin-right: 25px !important;
  }
  .u-mrxl30 {
    margin-right: 30px !important;
  }
  .u-mrxl35 {
    margin-right: 35px !important;
  }
  .u-mrxl40 {
    margin-right: 40px !important;
  }
  .u-mrxl45 {
    margin-right: 45px !important;
  }
  .u-mrxl50 {
    margin-right: 50px !important;
  }
  .u-mrxl55 {
    margin-right: 55px !important;
  }
  .u-mrxl60 {
    margin-right: 60px !important;
  }
  .u-mrxl65 {
    margin-right: 65px !important;
  }
  .u-mrxl70 {
    margin-right: 70px !important;
  }
  .u-mrxl75 {
    margin-right: 75px !important;
  }
  .u-mrxl80 {
    margin-right: 80px !important;
  }
  .u-mrxl85 {
    margin-right: 85px !important;
  }
  .u-mrxl90 {
    margin-right: 90px !important;
  }
  .u-mrxl95 {
    margin-right: 95px !important;
  }
  .u-mrxl100 {
    margin-right: 100px !important;
  }
  .u-mrxl105 {
    margin-right: 105px !important;
  }
  .u-mrxl110 {
    margin-right: 110px !important;
  }
  .u-mrxl115 {
    margin-right: 115px !important;
  }
  .u-mrxl120 {
    margin-right: 120px !important;
  }
  .u-mrxl125 {
    margin-right: 125px !important;
  }
  .u-mrxl130 {
    margin-right: 130px !important;
  }
  .u-mrxl135 {
    margin-right: 135px !important;
  }
  .u-mrxl140 {
    margin-right: 140px !important;
  }
  .u-mrxl145 {
    margin-right: 145px !important;
  }
  .u-mrxl150 {
    margin-right: 150px !important;
  }
  .u-mrxl155 {
    margin-right: 155px !important;
  }
  .u-mrxl160 {
    margin-right: 160px !important;
  }
  .u-mrxl165 {
    margin-right: 165px !important;
  }
  .u-mrxl170 {
    margin-right: 170px !important;
  }
  .u-mrxl175 {
    margin-right: 175px !important;
  }
  .u-mrxl180 {
    margin-right: 180px !important;
  }
  .u-mrxl185 {
    margin-right: 185px !important;
  }
  .u-mrxl190 {
    margin-right: 190px !important;
  }
  .u-mrxl195 {
    margin-right: 195px !important;
  }
  .u-mrxl200 {
    margin-right: 200px !important;
  }
  .u-mbxl0 {
    margin-bottom: 0px !important;
  }
  .u-mbxl5 {
    margin-bottom: 5px !important;
  }
  .u-mbxl10 {
    margin-bottom: 10px !important;
  }
  .u-mbxl15 {
    margin-bottom: 15px !important;
  }
  .u-mbxl20 {
    margin-bottom: 20px !important;
  }
  .u-mbxl25 {
    margin-bottom: 25px !important;
  }
  .u-mbxl30 {
    margin-bottom: 30px !important;
  }
  .u-mbxl35 {
    margin-bottom: 35px !important;
  }
  .u-mbxl40 {
    margin-bottom: 40px !important;
  }
  .u-mbxl45 {
    margin-bottom: 45px !important;
  }
  .u-mbxl50 {
    margin-bottom: 50px !important;
  }
  .u-mbxl55 {
    margin-bottom: 55px !important;
  }
  .u-mbxl60 {
    margin-bottom: 60px !important;
  }
  .u-mbxl65 {
    margin-bottom: 65px !important;
  }
  .u-mbxl70 {
    margin-bottom: 70px !important;
  }
  .u-mbxl75 {
    margin-bottom: 75px !important;
  }
  .u-mbxl80 {
    margin-bottom: 80px !important;
  }
  .u-mbxl85 {
    margin-bottom: 85px !important;
  }
  .u-mbxl90 {
    margin-bottom: 90px !important;
  }
  .u-mbxl95 {
    margin-bottom: 95px !important;
  }
  .u-mbxl100 {
    margin-bottom: 100px !important;
  }
  .u-mbxl105 {
    margin-bottom: 105px !important;
  }
  .u-mbxl110 {
    margin-bottom: 110px !important;
  }
  .u-mbxl115 {
    margin-bottom: 115px !important;
  }
  .u-mbxl120 {
    margin-bottom: 120px !important;
  }
  .u-mbxl125 {
    margin-bottom: 125px !important;
  }
  .u-mbxl130 {
    margin-bottom: 130px !important;
  }
  .u-mbxl135 {
    margin-bottom: 135px !important;
  }
  .u-mbxl140 {
    margin-bottom: 140px !important;
  }
  .u-mbxl145 {
    margin-bottom: 145px !important;
  }
  .u-mbxl150 {
    margin-bottom: 150px !important;
  }
  .u-mbxl155 {
    margin-bottom: 155px !important;
  }
  .u-mbxl160 {
    margin-bottom: 160px !important;
  }
  .u-mbxl165 {
    margin-bottom: 165px !important;
  }
  .u-mbxl170 {
    margin-bottom: 170px !important;
  }
  .u-mbxl175 {
    margin-bottom: 175px !important;
  }
  .u-mbxl180 {
    margin-bottom: 180px !important;
  }
  .u-mbxl185 {
    margin-bottom: 185px !important;
  }
  .u-mbxl190 {
    margin-bottom: 190px !important;
  }
  .u-mbxl195 {
    margin-bottom: 195px !important;
  }
  .u-mbxl200 {
    margin-bottom: 200px !important;
  }
  .u-mlxl0 {
    margin-left: 0px !important;
  }
  .u-mlxl5 {
    margin-left: 5px !important;
  }
  .u-mlxl10 {
    margin-left: 10px !important;
  }
  .u-mlxl15 {
    margin-left: 15px !important;
  }
  .u-mlxl20 {
    margin-left: 20px !important;
  }
  .u-mlxl25 {
    margin-left: 25px !important;
  }
  .u-mlxl30 {
    margin-left: 30px !important;
  }
  .u-mlxl35 {
    margin-left: 35px !important;
  }
  .u-mlxl40 {
    margin-left: 40px !important;
  }
  .u-mlxl45 {
    margin-left: 45px !important;
  }
  .u-mlxl50 {
    margin-left: 50px !important;
  }
  .u-mlxl55 {
    margin-left: 55px !important;
  }
  .u-mlxl60 {
    margin-left: 60px !important;
  }
  .u-mlxl65 {
    margin-left: 65px !important;
  }
  .u-mlxl70 {
    margin-left: 70px !important;
  }
  .u-mlxl75 {
    margin-left: 75px !important;
  }
  .u-mlxl80 {
    margin-left: 80px !important;
  }
  .u-mlxl85 {
    margin-left: 85px !important;
  }
  .u-mlxl90 {
    margin-left: 90px !important;
  }
  .u-mlxl95 {
    margin-left: 95px !important;
  }
  .u-mlxl100 {
    margin-left: 100px !important;
  }
  .u-mlxl105 {
    margin-left: 105px !important;
  }
  .u-mlxl110 {
    margin-left: 110px !important;
  }
  .u-mlxl115 {
    margin-left: 115px !important;
  }
  .u-mlxl120 {
    margin-left: 120px !important;
  }
  .u-mlxl125 {
    margin-left: 125px !important;
  }
  .u-mlxl130 {
    margin-left: 130px !important;
  }
  .u-mlxl135 {
    margin-left: 135px !important;
  }
  .u-mlxl140 {
    margin-left: 140px !important;
  }
  .u-mlxl145 {
    margin-left: 145px !important;
  }
  .u-mlxl150 {
    margin-left: 150px !important;
  }
  .u-mlxl155 {
    margin-left: 155px !important;
  }
  .u-mlxl160 {
    margin-left: 160px !important;
  }
  .u-mlxl165 {
    margin-left: 165px !important;
  }
  .u-mlxl170 {
    margin-left: 170px !important;
  }
  .u-mlxl175 {
    margin-left: 175px !important;
  }
  .u-mlxl180 {
    margin-left: 180px !important;
  }
  .u-mlxl185 {
    margin-left: 185px !important;
  }
  .u-mlxl190 {
    margin-left: 190px !important;
  }
  .u-mlxl195 {
    margin-left: 195px !important;
  }
  .u-mlxl200 {
    margin-left: 200px !important;
  }
}

/* padding controls
------------------------------------------------------------*/
/* base
- - - - - - - - - - - - - - - - - - */
.u-pt0 {
  padding-top: 0px !important;
}

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

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

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

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

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

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

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

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

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

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

.u-pt55 {
  padding-top: 55px !important;
}

.u-pt60 {
  padding-top: 60px !important;
}

.u-pt65 {
  padding-top: 65px !important;
}

.u-pt70 {
  padding-top: 70px !important;
}

.u-pt75 {
  padding-top: 75px !important;
}

.u-pt80 {
  padding-top: 80px !important;
}

.u-pt85 {
  padding-top: 85px !important;
}

.u-pt90 {
  padding-top: 90px !important;
}

.u-pt95 {
  padding-top: 95px !important;
}

.u-pt100 {
  padding-top: 100px !important;
}

.u-pt105 {
  padding-top: 105px !important;
}

.u-pt110 {
  padding-top: 110px !important;
}

.u-pt115 {
  padding-top: 115px !important;
}

.u-pt120 {
  padding-top: 120px !important;
}

.u-pt125 {
  padding-top: 125px !important;
}

.u-pt130 {
  padding-top: 130px !important;
}

.u-pt135 {
  padding-top: 135px !important;
}

.u-pt140 {
  padding-top: 140px !important;
}

.u-pt145 {
  padding-top: 145px !important;
}

.u-pt150 {
  padding-top: 150px !important;
}

.u-pt155 {
  padding-top: 155px !important;
}

.u-pt160 {
  padding-top: 160px !important;
}

.u-pt165 {
  padding-top: 165px !important;
}

.u-pt170 {
  padding-top: 170px !important;
}

.u-pt175 {
  padding-top: 175px !important;
}

.u-pt180 {
  padding-top: 180px !important;
}

.u-pt185 {
  padding-top: 185px !important;
}

.u-pt190 {
  padding-top: 190px !important;
}

.u-pt195 {
  padding-top: 195px !important;
}

.u-pt200 {
  padding-top: 200px !important;
}

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

.u-pr5 {
  padding-right: 5px !important;
}

.u-pr10 {
  padding-right: 10px !important;
}

.u-pr15 {
  padding-right: 15px !important;
}

.u-pr20 {
  padding-right: 20px !important;
}

.u-pr25 {
  padding-right: 25px !important;
}

.u-pr30 {
  padding-right: 30px !important;
}

.u-pr35 {
  padding-right: 35px !important;
}

.u-pr40 {
  padding-right: 40px !important;
}

.u-pr45 {
  padding-right: 45px !important;
}

.u-pr50 {
  padding-right: 50px !important;
}

.u-pr55 {
  padding-right: 55px !important;
}

.u-pr60 {
  padding-right: 60px !important;
}

.u-pr65 {
  padding-right: 65px !important;
}

.u-pr70 {
  padding-right: 70px !important;
}

.u-pr75 {
  padding-right: 75px !important;
}

.u-pr80 {
  padding-right: 80px !important;
}

.u-pr85 {
  padding-right: 85px !important;
}

.u-pr90 {
  padding-right: 90px !important;
}

.u-pr95 {
  padding-right: 95px !important;
}

.u-pr100 {
  padding-right: 100px !important;
}

.u-pr105 {
  padding-right: 105px !important;
}

.u-pr110 {
  padding-right: 110px !important;
}

.u-pr115 {
  padding-right: 115px !important;
}

.u-pr120 {
  padding-right: 120px !important;
}

.u-pr125 {
  padding-right: 125px !important;
}

.u-pr130 {
  padding-right: 130px !important;
}

.u-pr135 {
  padding-right: 135px !important;
}

.u-pr140 {
  padding-right: 140px !important;
}

.u-pr145 {
  padding-right: 145px !important;
}

.u-pr150 {
  padding-right: 150px !important;
}

.u-pr155 {
  padding-right: 155px !important;
}

.u-pr160 {
  padding-right: 160px !important;
}

.u-pr165 {
  padding-right: 165px !important;
}

.u-pr170 {
  padding-right: 170px !important;
}

.u-pr175 {
  padding-right: 175px !important;
}

.u-pr180 {
  padding-right: 180px !important;
}

.u-pr185 {
  padding-right: 185px !important;
}

.u-pr190 {
  padding-right: 190px !important;
}

.u-pr195 {
  padding-right: 195px !important;
}

.u-pr200 {
  padding-right: 200px !important;
}

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

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

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

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

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

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

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

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

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

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

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

.u-pb55 {
  padding-bottom: 55px !important;
}

.u-pb60 {
  padding-bottom: 60px !important;
}

.u-pb65 {
  padding-bottom: 65px !important;
}

.u-pb70 {
  padding-bottom: 70px !important;
}

.u-pb75 {
  padding-bottom: 75px !important;
}

.u-pb80 {
  padding-bottom: 80px !important;
}

.u-pb85 {
  padding-bottom: 85px !important;
}

.u-pb90 {
  padding-bottom: 90px !important;
}

.u-pb95 {
  padding-bottom: 95px !important;
}

.u-pb100 {
  padding-bottom: 100px !important;
}

.u-pb105 {
  padding-bottom: 105px !important;
}

.u-pb110 {
  padding-bottom: 110px !important;
}

.u-pb115 {
  padding-bottom: 115px !important;
}

.u-pb120 {
  padding-bottom: 120px !important;
}

.u-pb125 {
  padding-bottom: 125px !important;
}

.u-pb130 {
  padding-bottom: 130px !important;
}

.u-pb135 {
  padding-bottom: 135px !important;
}

.u-pb140 {
  padding-bottom: 140px !important;
}

.u-pb145 {
  padding-bottom: 145px !important;
}

.u-pb150 {
  padding-bottom: 150px !important;
}

.u-pb155 {
  padding-bottom: 155px !important;
}

.u-pb160 {
  padding-bottom: 160px !important;
}

.u-pb165 {
  padding-bottom: 165px !important;
}

.u-pb170 {
  padding-bottom: 170px !important;
}

.u-pb175 {
  padding-bottom: 175px !important;
}

.u-pb180 {
  padding-bottom: 180px !important;
}

.u-pb185 {
  padding-bottom: 185px !important;
}

.u-pb190 {
  padding-bottom: 190px !important;
}

.u-pb195 {
  padding-bottom: 195px !important;
}

.u-pb200 {
  padding-bottom: 200px !important;
}

.u-pl0 {
  padding-left: 0px !important;
}

.u-pl5 {
  padding-left: 5px !important;
}

.u-pl10 {
  padding-left: 10px !important;
}

.u-pl15 {
  padding-left: 15px !important;
}

.u-pl20 {
  padding-left: 20px !important;
}

.u-pl25 {
  padding-left: 25px !important;
}

.u-pl30 {
  padding-left: 30px !important;
}

.u-pl35 {
  padding-left: 35px !important;
}

.u-pl40 {
  padding-left: 40px !important;
}

.u-pl45 {
  padding-left: 45px !important;
}

.u-pl50 {
  padding-left: 50px !important;
}

.u-pl55 {
  padding-left: 55px !important;
}

.u-pl60 {
  padding-left: 60px !important;
}

.u-pl65 {
  padding-left: 65px !important;
}

.u-pl70 {
  padding-left: 70px !important;
}

.u-pl75 {
  padding-left: 75px !important;
}

.u-pl80 {
  padding-left: 80px !important;
}

.u-pl85 {
  padding-left: 85px !important;
}

.u-pl90 {
  padding-left: 90px !important;
}

.u-pl95 {
  padding-left: 95px !important;
}

.u-pl100 {
  padding-left: 100px !important;
}

.u-pl105 {
  padding-left: 105px !important;
}

.u-pl110 {
  padding-left: 110px !important;
}

.u-pl115 {
  padding-left: 115px !important;
}

.u-pl120 {
  padding-left: 120px !important;
}

.u-pl125 {
  padding-left: 125px !important;
}

.u-pl130 {
  padding-left: 130px !important;
}

.u-pl135 {
  padding-left: 135px !important;
}

.u-pl140 {
  padding-left: 140px !important;
}

.u-pl145 {
  padding-left: 145px !important;
}

.u-pl150 {
  padding-left: 150px !important;
}

.u-pl155 {
  padding-left: 155px !important;
}

.u-pl160 {
  padding-left: 160px !important;
}

.u-pl165 {
  padding-left: 165px !important;
}

.u-pl170 {
  padding-left: 170px !important;
}

.u-pl175 {
  padding-left: 175px !important;
}

.u-pl180 {
  padding-left: 180px !important;
}

.u-pl185 {
  padding-left: 185px !important;
}

.u-pl190 {
  padding-left: 190px !important;
}

.u-pl195 {
  padding-left: 195px !important;
}

.u-pl200 {
  padding-left: 200px !important;
}

/* screen size XS
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 325px) {
  .u-ptxs0 {
    padding-top: 0px !important;
  }
  .u-ptxs5 {
    padding-top: 5px !important;
  }
  .u-ptxs10 {
    padding-top: 10px !important;
  }
  .u-ptxs15 {
    padding-top: 15px !important;
  }
  .u-ptxs20 {
    padding-top: 20px !important;
  }
  .u-ptxs25 {
    padding-top: 25px !important;
  }
  .u-ptxs30 {
    padding-top: 30px !important;
  }
  .u-ptxs35 {
    padding-top: 35px !important;
  }
  .u-ptxs40 {
    padding-top: 40px !important;
  }
  .u-ptxs45 {
    padding-top: 45px !important;
  }
  .u-ptxs50 {
    padding-top: 50px !important;
  }
  .u-ptxs55 {
    padding-top: 55px !important;
  }
  .u-ptxs60 {
    padding-top: 60px !important;
  }
  .u-ptxs65 {
    padding-top: 65px !important;
  }
  .u-ptxs70 {
    padding-top: 70px !important;
  }
  .u-ptxs75 {
    padding-top: 75px !important;
  }
  .u-ptxs80 {
    padding-top: 80px !important;
  }
  .u-ptxs85 {
    padding-top: 85px !important;
  }
  .u-ptxs90 {
    padding-top: 90px !important;
  }
  .u-ptxs95 {
    padding-top: 95px !important;
  }
  .u-ptxs100 {
    padding-top: 100px !important;
  }
  .u-ptxs105 {
    padding-top: 105px !important;
  }
  .u-ptxs110 {
    padding-top: 110px !important;
  }
  .u-ptxs115 {
    padding-top: 115px !important;
  }
  .u-ptxs120 {
    padding-top: 120px !important;
  }
  .u-ptxs125 {
    padding-top: 125px !important;
  }
  .u-ptxs130 {
    padding-top: 130px !important;
  }
  .u-ptxs135 {
    padding-top: 135px !important;
  }
  .u-ptxs140 {
    padding-top: 140px !important;
  }
  .u-ptxs145 {
    padding-top: 145px !important;
  }
  .u-ptxs150 {
    padding-top: 150px !important;
  }
  .u-ptxs155 {
    padding-top: 155px !important;
  }
  .u-ptxs160 {
    padding-top: 160px !important;
  }
  .u-ptxs165 {
    padding-top: 165px !important;
  }
  .u-ptxs170 {
    padding-top: 170px !important;
  }
  .u-ptxs175 {
    padding-top: 175px !important;
  }
  .u-ptxs180 {
    padding-top: 180px !important;
  }
  .u-ptxs185 {
    padding-top: 185px !important;
  }
  .u-ptxs190 {
    padding-top: 190px !important;
  }
  .u-ptxs195 {
    padding-top: 195px !important;
  }
  .u-ptxs200 {
    padding-top: 200px !important;
  }
  .u-prxs0 {
    padding-right: 0px !important;
  }
  .u-prxs5 {
    padding-right: 5px !important;
  }
  .u-prxs10 {
    padding-right: 10px !important;
  }
  .u-prxs15 {
    padding-right: 15px !important;
  }
  .u-prxs20 {
    padding-right: 20px !important;
  }
  .u-prxs25 {
    padding-right: 25px !important;
  }
  .u-prxs30 {
    padding-right: 30px !important;
  }
  .u-prxs35 {
    padding-right: 35px !important;
  }
  .u-prxs40 {
    padding-right: 40px !important;
  }
  .u-prxs45 {
    padding-right: 45px !important;
  }
  .u-prxs50 {
    padding-right: 50px !important;
  }
  .u-prxs55 {
    padding-right: 55px !important;
  }
  .u-prxs60 {
    padding-right: 60px !important;
  }
  .u-prxs65 {
    padding-right: 65px !important;
  }
  .u-prxs70 {
    padding-right: 70px !important;
  }
  .u-prxs75 {
    padding-right: 75px !important;
  }
  .u-prxs80 {
    padding-right: 80px !important;
  }
  .u-prxs85 {
    padding-right: 85px !important;
  }
  .u-prxs90 {
    padding-right: 90px !important;
  }
  .u-prxs95 {
    padding-right: 95px !important;
  }
  .u-prxs100 {
    padding-right: 100px !important;
  }
  .u-prxs105 {
    padding-right: 105px !important;
  }
  .u-prxs110 {
    padding-right: 110px !important;
  }
  .u-prxs115 {
    padding-right: 115px !important;
  }
  .u-prxs120 {
    padding-right: 120px !important;
  }
  .u-prxs125 {
    padding-right: 125px !important;
  }
  .u-prxs130 {
    padding-right: 130px !important;
  }
  .u-prxs135 {
    padding-right: 135px !important;
  }
  .u-prxs140 {
    padding-right: 140px !important;
  }
  .u-prxs145 {
    padding-right: 145px !important;
  }
  .u-prxs150 {
    padding-right: 150px !important;
  }
  .u-prxs155 {
    padding-right: 155px !important;
  }
  .u-prxs160 {
    padding-right: 160px !important;
  }
  .u-prxs165 {
    padding-right: 165px !important;
  }
  .u-prxs170 {
    padding-right: 170px !important;
  }
  .u-prxs175 {
    padding-right: 175px !important;
  }
  .u-prxs180 {
    padding-right: 180px !important;
  }
  .u-prxs185 {
    padding-right: 185px !important;
  }
  .u-prxs190 {
    padding-right: 190px !important;
  }
  .u-prxs195 {
    padding-right: 195px !important;
  }
  .u-prxs200 {
    padding-right: 200px !important;
  }
  .u-pbxs0 {
    padding-bottom: 0px !important;
  }
  .u-pbxs5 {
    padding-bottom: 5px !important;
  }
  .u-pbxs10 {
    padding-bottom: 10px !important;
  }
  .u-pbxs15 {
    padding-bottom: 15px !important;
  }
  .u-pbxs20 {
    padding-bottom: 20px !important;
  }
  .u-pbxs25 {
    padding-bottom: 25px !important;
  }
  .u-pbxs30 {
    padding-bottom: 30px !important;
  }
  .u-pbxs35 {
    padding-bottom: 35px !important;
  }
  .u-pbxs40 {
    padding-bottom: 40px !important;
  }
  .u-pbxs45 {
    padding-bottom: 45px !important;
  }
  .u-pbxs50 {
    padding-bottom: 50px !important;
  }
  .u-pbxs55 {
    padding-bottom: 55px !important;
  }
  .u-pbxs60 {
    padding-bottom: 60px !important;
  }
  .u-pbxs65 {
    padding-bottom: 65px !important;
  }
  .u-pbxs70 {
    padding-bottom: 70px !important;
  }
  .u-pbxs75 {
    padding-bottom: 75px !important;
  }
  .u-pbxs80 {
    padding-bottom: 80px !important;
  }
  .u-pbxs85 {
    padding-bottom: 85px !important;
  }
  .u-pbxs90 {
    padding-bottom: 90px !important;
  }
  .u-pbxs95 {
    padding-bottom: 95px !important;
  }
  .u-pbxs100 {
    padding-bottom: 100px !important;
  }
  .u-pbxs105 {
    padding-bottom: 105px !important;
  }
  .u-pbxs110 {
    padding-bottom: 110px !important;
  }
  .u-pbxs115 {
    padding-bottom: 115px !important;
  }
  .u-pbxs120 {
    padding-bottom: 120px !important;
  }
  .u-pbxs125 {
    padding-bottom: 125px !important;
  }
  .u-pbxs130 {
    padding-bottom: 130px !important;
  }
  .u-pbxs135 {
    padding-bottom: 135px !important;
  }
  .u-pbxs140 {
    padding-bottom: 140px !important;
  }
  .u-pbxs145 {
    padding-bottom: 145px !important;
  }
  .u-pbxs150 {
    padding-bottom: 150px !important;
  }
  .u-pbxs155 {
    padding-bottom: 155px !important;
  }
  .u-pbxs160 {
    padding-bottom: 160px !important;
  }
  .u-pbxs165 {
    padding-bottom: 165px !important;
  }
  .u-pbxs170 {
    padding-bottom: 170px !important;
  }
  .u-pbxs175 {
    padding-bottom: 175px !important;
  }
  .u-pbxs180 {
    padding-bottom: 180px !important;
  }
  .u-pbxs185 {
    padding-bottom: 185px !important;
  }
  .u-pbxs190 {
    padding-bottom: 190px !important;
  }
  .u-pbxs195 {
    padding-bottom: 195px !important;
  }
  .u-pbxs200 {
    padding-bottom: 200px !important;
  }
  .u-plxs0 {
    padding-left: 0px !important;
  }
  .u-plxs5 {
    padding-left: 5px !important;
  }
  .u-plxs10 {
    padding-left: 10px !important;
  }
  .u-plxs15 {
    padding-left: 15px !important;
  }
  .u-plxs20 {
    padding-left: 20px !important;
  }
  .u-plxs25 {
    padding-left: 25px !important;
  }
  .u-plxs30 {
    padding-left: 30px !important;
  }
  .u-plxs35 {
    padding-left: 35px !important;
  }
  .u-plxs40 {
    padding-left: 40px !important;
  }
  .u-plxs45 {
    padding-left: 45px !important;
  }
  .u-plxs50 {
    padding-left: 50px !important;
  }
  .u-plxs55 {
    padding-left: 55px !important;
  }
  .u-plxs60 {
    padding-left: 60px !important;
  }
  .u-plxs65 {
    padding-left: 65px !important;
  }
  .u-plxs70 {
    padding-left: 70px !important;
  }
  .u-plxs75 {
    padding-left: 75px !important;
  }
  .u-plxs80 {
    padding-left: 80px !important;
  }
  .u-plxs85 {
    padding-left: 85px !important;
  }
  .u-plxs90 {
    padding-left: 90px !important;
  }
  .u-plxs95 {
    padding-left: 95px !important;
  }
  .u-plxs100 {
    padding-left: 100px !important;
  }
  .u-plxs105 {
    padding-left: 105px !important;
  }
  .u-plxs110 {
    padding-left: 110px !important;
  }
  .u-plxs115 {
    padding-left: 115px !important;
  }
  .u-plxs120 {
    padding-left: 120px !important;
  }
  .u-plxs125 {
    padding-left: 125px !important;
  }
  .u-plxs130 {
    padding-left: 130px !important;
  }
  .u-plxs135 {
    padding-left: 135px !important;
  }
  .u-plxs140 {
    padding-left: 140px !important;
  }
  .u-plxs145 {
    padding-left: 145px !important;
  }
  .u-plxs150 {
    padding-left: 150px !important;
  }
  .u-plxs155 {
    padding-left: 155px !important;
  }
  .u-plxs160 {
    padding-left: 160px !important;
  }
  .u-plxs165 {
    padding-left: 165px !important;
  }
  .u-plxs170 {
    padding-left: 170px !important;
  }
  .u-plxs175 {
    padding-left: 175px !important;
  }
  .u-plxs180 {
    padding-left: 180px !important;
  }
  .u-plxs185 {
    padding-left: 185px !important;
  }
  .u-plxs190 {
    padding-left: 190px !important;
  }
  .u-plxs195 {
    padding-left: 195px !important;
  }
  .u-plxs200 {
    padding-left: 200px !important;
  }
}

/* screen size S
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 480px) {
  .u-pts0 {
    padding-top: 0px !important;
  }
  .u-pts5 {
    padding-top: 5px !important;
  }
  .u-pts10 {
    padding-top: 10px !important;
  }
  .u-pts15 {
    padding-top: 15px !important;
  }
  .u-pts20 {
    padding-top: 20px !important;
  }
  .u-pts25 {
    padding-top: 25px !important;
  }
  .u-pts30 {
    padding-top: 30px !important;
  }
  .u-pts35 {
    padding-top: 35px !important;
  }
  .u-pts40 {
    padding-top: 40px !important;
  }
  .u-pts45 {
    padding-top: 45px !important;
  }
  .u-pts50 {
    padding-top: 50px !important;
  }
  .u-pts55 {
    padding-top: 55px !important;
  }
  .u-pts60 {
    padding-top: 60px !important;
  }
  .u-pts65 {
    padding-top: 65px !important;
  }
  .u-pts70 {
    padding-top: 70px !important;
  }
  .u-pts75 {
    padding-top: 75px !important;
  }
  .u-pts80 {
    padding-top: 80px !important;
  }
  .u-pts85 {
    padding-top: 85px !important;
  }
  .u-pts90 {
    padding-top: 90px !important;
  }
  .u-pts95 {
    padding-top: 95px !important;
  }
  .u-pts100 {
    padding-top: 100px !important;
  }
  .u-pts105 {
    padding-top: 105px !important;
  }
  .u-pts110 {
    padding-top: 110px !important;
  }
  .u-pts115 {
    padding-top: 115px !important;
  }
  .u-pts120 {
    padding-top: 120px !important;
  }
  .u-pts125 {
    padding-top: 125px !important;
  }
  .u-pts130 {
    padding-top: 130px !important;
  }
  .u-pts135 {
    padding-top: 135px !important;
  }
  .u-pts140 {
    padding-top: 140px !important;
  }
  .u-pts145 {
    padding-top: 145px !important;
  }
  .u-pts150 {
    padding-top: 150px !important;
  }
  .u-pts155 {
    padding-top: 155px !important;
  }
  .u-pts160 {
    padding-top: 160px !important;
  }
  .u-pts165 {
    padding-top: 165px !important;
  }
  .u-pts170 {
    padding-top: 170px !important;
  }
  .u-pts175 {
    padding-top: 175px !important;
  }
  .u-pts180 {
    padding-top: 180px !important;
  }
  .u-pts185 {
    padding-top: 185px !important;
  }
  .u-pts190 {
    padding-top: 190px !important;
  }
  .u-pts195 {
    padding-top: 195px !important;
  }
  .u-pts200 {
    padding-top: 200px !important;
  }
  .u-prs0 {
    padding-right: 0px !important;
  }
  .u-prs5 {
    padding-right: 5px !important;
  }
  .u-prs10 {
    padding-right: 10px !important;
  }
  .u-prs15 {
    padding-right: 15px !important;
  }
  .u-prs20 {
    padding-right: 20px !important;
  }
  .u-prs25 {
    padding-right: 25px !important;
  }
  .u-prs30 {
    padding-right: 30px !important;
  }
  .u-prs35 {
    padding-right: 35px !important;
  }
  .u-prs40 {
    padding-right: 40px !important;
  }
  .u-prs45 {
    padding-right: 45px !important;
  }
  .u-prs50 {
    padding-right: 50px !important;
  }
  .u-prs55 {
    padding-right: 55px !important;
  }
  .u-prs60 {
    padding-right: 60px !important;
  }
  .u-prs65 {
    padding-right: 65px !important;
  }
  .u-prs70 {
    padding-right: 70px !important;
  }
  .u-prs75 {
    padding-right: 75px !important;
  }
  .u-prs80 {
    padding-right: 80px !important;
  }
  .u-prs85 {
    padding-right: 85px !important;
  }
  .u-prs90 {
    padding-right: 90px !important;
  }
  .u-prs95 {
    padding-right: 95px !important;
  }
  .u-prs100 {
    padding-right: 100px !important;
  }
  .u-prs105 {
    padding-right: 105px !important;
  }
  .u-prs110 {
    padding-right: 110px !important;
  }
  .u-prs115 {
    padding-right: 115px !important;
  }
  .u-prs120 {
    padding-right: 120px !important;
  }
  .u-prs125 {
    padding-right: 125px !important;
  }
  .u-prs130 {
    padding-right: 130px !important;
  }
  .u-prs135 {
    padding-right: 135px !important;
  }
  .u-prs140 {
    padding-right: 140px !important;
  }
  .u-prs145 {
    padding-right: 145px !important;
  }
  .u-prs150 {
    padding-right: 150px !important;
  }
  .u-prs155 {
    padding-right: 155px !important;
  }
  .u-prs160 {
    padding-right: 160px !important;
  }
  .u-prs165 {
    padding-right: 165px !important;
  }
  .u-prs170 {
    padding-right: 170px !important;
  }
  .u-prs175 {
    padding-right: 175px !important;
  }
  .u-prs180 {
    padding-right: 180px !important;
  }
  .u-prs185 {
    padding-right: 185px !important;
  }
  .u-prs190 {
    padding-right: 190px !important;
  }
  .u-prs195 {
    padding-right: 195px !important;
  }
  .u-prs200 {
    padding-right: 200px !important;
  }
  .u-pbs0 {
    padding-bottom: 0px !important;
  }
  .u-pbs5 {
    padding-bottom: 5px !important;
  }
  .u-pbs10 {
    padding-bottom: 10px !important;
  }
  .u-pbs15 {
    padding-bottom: 15px !important;
  }
  .u-pbs20 {
    padding-bottom: 20px !important;
  }
  .u-pbs25 {
    padding-bottom: 25px !important;
  }
  .u-pbs30 {
    padding-bottom: 30px !important;
  }
  .u-pbs35 {
    padding-bottom: 35px !important;
  }
  .u-pbs40 {
    padding-bottom: 40px !important;
  }
  .u-pbs45 {
    padding-bottom: 45px !important;
  }
  .u-pbs50 {
    padding-bottom: 50px !important;
  }
  .u-pbs55 {
    padding-bottom: 55px !important;
  }
  .u-pbs60 {
    padding-bottom: 60px !important;
  }
  .u-pbs65 {
    padding-bottom: 65px !important;
  }
  .u-pbs70 {
    padding-bottom: 70px !important;
  }
  .u-pbs75 {
    padding-bottom: 75px !important;
  }
  .u-pbs80 {
    padding-bottom: 80px !important;
  }
  .u-pbs85 {
    padding-bottom: 85px !important;
  }
  .u-pbs90 {
    padding-bottom: 90px !important;
  }
  .u-pbs95 {
    padding-bottom: 95px !important;
  }
  .u-pbs100 {
    padding-bottom: 100px !important;
  }
  .u-pbs105 {
    padding-bottom: 105px !important;
  }
  .u-pbs110 {
    padding-bottom: 110px !important;
  }
  .u-pbs115 {
    padding-bottom: 115px !important;
  }
  .u-pbs120 {
    padding-bottom: 120px !important;
  }
  .u-pbs125 {
    padding-bottom: 125px !important;
  }
  .u-pbs130 {
    padding-bottom: 130px !important;
  }
  .u-pbs135 {
    padding-bottom: 135px !important;
  }
  .u-pbs140 {
    padding-bottom: 140px !important;
  }
  .u-pbs145 {
    padding-bottom: 145px !important;
  }
  .u-pbs150 {
    padding-bottom: 150px !important;
  }
  .u-pbs155 {
    padding-bottom: 155px !important;
  }
  .u-pbs160 {
    padding-bottom: 160px !important;
  }
  .u-pbs165 {
    padding-bottom: 165px !important;
  }
  .u-pbs170 {
    padding-bottom: 170px !important;
  }
  .u-pbs175 {
    padding-bottom: 175px !important;
  }
  .u-pbs180 {
    padding-bottom: 180px !important;
  }
  .u-pbs185 {
    padding-bottom: 185px !important;
  }
  .u-pbs190 {
    padding-bottom: 190px !important;
  }
  .u-pbs195 {
    padding-bottom: 195px !important;
  }
  .u-pbs200 {
    padding-bottom: 200px !important;
  }
  .u-pls0 {
    padding-left: 0px !important;
  }
  .u-pls5 {
    padding-left: 5px !important;
  }
  .u-pls10 {
    padding-left: 10px !important;
  }
  .u-pls15 {
    padding-left: 15px !important;
  }
  .u-pls20 {
    padding-left: 20px !important;
  }
  .u-pls25 {
    padding-left: 25px !important;
  }
  .u-pls30 {
    padding-left: 30px !important;
  }
  .u-pls35 {
    padding-left: 35px !important;
  }
  .u-pls40 {
    padding-left: 40px !important;
  }
  .u-pls45 {
    padding-left: 45px !important;
  }
  .u-pls50 {
    padding-left: 50px !important;
  }
  .u-pls55 {
    padding-left: 55px !important;
  }
  .u-pls60 {
    padding-left: 60px !important;
  }
  .u-pls65 {
    padding-left: 65px !important;
  }
  .u-pls70 {
    padding-left: 70px !important;
  }
  .u-pls75 {
    padding-left: 75px !important;
  }
  .u-pls80 {
    padding-left: 80px !important;
  }
  .u-pls85 {
    padding-left: 85px !important;
  }
  .u-pls90 {
    padding-left: 90px !important;
  }
  .u-pls95 {
    padding-left: 95px !important;
  }
  .u-pls100 {
    padding-left: 100px !important;
  }
  .u-pls105 {
    padding-left: 105px !important;
  }
  .u-pls110 {
    padding-left: 110px !important;
  }
  .u-pls115 {
    padding-left: 115px !important;
  }
  .u-pls120 {
    padding-left: 120px !important;
  }
  .u-pls125 {
    padding-left: 125px !important;
  }
  .u-pls130 {
    padding-left: 130px !important;
  }
  .u-pls135 {
    padding-left: 135px !important;
  }
  .u-pls140 {
    padding-left: 140px !important;
  }
  .u-pls145 {
    padding-left: 145px !important;
  }
  .u-pls150 {
    padding-left: 150px !important;
  }
  .u-pls155 {
    padding-left: 155px !important;
  }
  .u-pls160 {
    padding-left: 160px !important;
  }
  .u-pls165 {
    padding-left: 165px !important;
  }
  .u-pls170 {
    padding-left: 170px !important;
  }
  .u-pls175 {
    padding-left: 175px !important;
  }
  .u-pls180 {
    padding-left: 180px !important;
  }
  .u-pls185 {
    padding-left: 185px !important;
  }
  .u-pls190 {
    padding-left: 190px !important;
  }
  .u-pls195 {
    padding-left: 195px !important;
  }
  .u-pls200 {
    padding-left: 200px !important;
  }
}

/* screen size M
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 768px) {
  .u-ptm0 {
    padding-top: 0px !important;
  }
  .u-ptm5 {
    padding-top: 5px !important;
  }
  .u-ptm10 {
    padding-top: 10px !important;
  }
  .u-ptm15 {
    padding-top: 15px !important;
  }
  .u-ptm20 {
    padding-top: 20px !important;
  }
  .u-ptm25 {
    padding-top: 25px !important;
  }
  .u-ptm30 {
    padding-top: 30px !important;
  }
  .u-ptm35 {
    padding-top: 35px !important;
  }
  .u-ptm40 {
    padding-top: 40px !important;
  }
  .u-ptm45 {
    padding-top: 45px !important;
  }
  .u-ptm50 {
    padding-top: 50px !important;
  }
  .u-ptm55 {
    padding-top: 55px !important;
  }
  .u-ptm60 {
    padding-top: 60px !important;
  }
  .u-ptm65 {
    padding-top: 65px !important;
  }
  .u-ptm70 {
    padding-top: 70px !important;
  }
  .u-ptm75 {
    padding-top: 75px !important;
  }
  .u-ptm80 {
    padding-top: 80px !important;
  }
  .u-ptm85 {
    padding-top: 85px !important;
  }
  .u-ptm90 {
    padding-top: 90px !important;
  }
  .u-ptm95 {
    padding-top: 95px !important;
  }
  .u-ptm100 {
    padding-top: 100px !important;
  }
  .u-ptm105 {
    padding-top: 105px !important;
  }
  .u-ptm110 {
    padding-top: 110px !important;
  }
  .u-ptm115 {
    padding-top: 115px !important;
  }
  .u-ptm120 {
    padding-top: 120px !important;
  }
  .u-ptm125 {
    padding-top: 125px !important;
  }
  .u-ptm130 {
    padding-top: 130px !important;
  }
  .u-ptm135 {
    padding-top: 135px !important;
  }
  .u-ptm140 {
    padding-top: 140px !important;
  }
  .u-ptm145 {
    padding-top: 145px !important;
  }
  .u-ptm150 {
    padding-top: 150px !important;
  }
  .u-ptm155 {
    padding-top: 155px !important;
  }
  .u-ptm160 {
    padding-top: 160px !important;
  }
  .u-ptm165 {
    padding-top: 165px !important;
  }
  .u-ptm170 {
    padding-top: 170px !important;
  }
  .u-ptm175 {
    padding-top: 175px !important;
  }
  .u-ptm180 {
    padding-top: 180px !important;
  }
  .u-ptm185 {
    padding-top: 185px !important;
  }
  .u-ptm190 {
    padding-top: 190px !important;
  }
  .u-ptm195 {
    padding-top: 195px !important;
  }
  .u-ptm200 {
    padding-top: 200px !important;
  }
  .u-prm0 {
    padding-right: 0px !important;
  }
  .u-prm5 {
    padding-right: 5px !important;
  }
  .u-prm10 {
    padding-right: 10px !important;
  }
  .u-prm15 {
    padding-right: 15px !important;
  }
  .u-prm20 {
    padding-right: 20px !important;
  }
  .u-prm25 {
    padding-right: 25px !important;
  }
  .u-prm30 {
    padding-right: 30px !important;
  }
  .u-prm35 {
    padding-right: 35px !important;
  }
  .u-prm40 {
    padding-right: 40px !important;
  }
  .u-prm45 {
    padding-right: 45px !important;
  }
  .u-prm50 {
    padding-right: 50px !important;
  }
  .u-prm55 {
    padding-right: 55px !important;
  }
  .u-prm60 {
    padding-right: 60px !important;
  }
  .u-prm65 {
    padding-right: 65px !important;
  }
  .u-prm70 {
    padding-right: 70px !important;
  }
  .u-prm75 {
    padding-right: 75px !important;
  }
  .u-prm80 {
    padding-right: 80px !important;
  }
  .u-prm85 {
    padding-right: 85px !important;
  }
  .u-prm90 {
    padding-right: 90px !important;
  }
  .u-prm95 {
    padding-right: 95px !important;
  }
  .u-prm100 {
    padding-right: 100px !important;
  }
  .u-prm105 {
    padding-right: 105px !important;
  }
  .u-prm110 {
    padding-right: 110px !important;
  }
  .u-prm115 {
    padding-right: 115px !important;
  }
  .u-prm120 {
    padding-right: 120px !important;
  }
  .u-prm125 {
    padding-right: 125px !important;
  }
  .u-prm130 {
    padding-right: 130px !important;
  }
  .u-prm135 {
    padding-right: 135px !important;
  }
  .u-prm140 {
    padding-right: 140px !important;
  }
  .u-prm145 {
    padding-right: 145px !important;
  }
  .u-prm150 {
    padding-right: 150px !important;
  }
  .u-prm155 {
    padding-right: 155px !important;
  }
  .u-prm160 {
    padding-right: 160px !important;
  }
  .u-prm165 {
    padding-right: 165px !important;
  }
  .u-prm170 {
    padding-right: 170px !important;
  }
  .u-prm175 {
    padding-right: 175px !important;
  }
  .u-prm180 {
    padding-right: 180px !important;
  }
  .u-prm185 {
    padding-right: 185px !important;
  }
  .u-prm190 {
    padding-right: 190px !important;
  }
  .u-prm195 {
    padding-right: 195px !important;
  }
  .u-prm200 {
    padding-right: 200px !important;
  }
  .u-pbm0 {
    padding-bottom: 0px !important;
  }
  .u-pbm5 {
    padding-bottom: 5px !important;
  }
  .u-pbm10 {
    padding-bottom: 10px !important;
  }
  .u-pbm15 {
    padding-bottom: 15px !important;
  }
  .u-pbm20 {
    padding-bottom: 20px !important;
  }
  .u-pbm25 {
    padding-bottom: 25px !important;
  }
  .u-pbm30 {
    padding-bottom: 30px !important;
  }
  .u-pbm35 {
    padding-bottom: 35px !important;
  }
  .u-pbm40 {
    padding-bottom: 40px !important;
  }
  .u-pbm45 {
    padding-bottom: 45px !important;
  }
  .u-pbm50 {
    padding-bottom: 50px !important;
  }
  .u-pbm55 {
    padding-bottom: 55px !important;
  }
  .u-pbm60 {
    padding-bottom: 60px !important;
  }
  .u-pbm65 {
    padding-bottom: 65px !important;
  }
  .u-pbm70 {
    padding-bottom: 70px !important;
  }
  .u-pbm75 {
    padding-bottom: 75px !important;
  }
  .u-pbm80 {
    padding-bottom: 80px !important;
  }
  .u-pbm85 {
    padding-bottom: 85px !important;
  }
  .u-pbm90 {
    padding-bottom: 90px !important;
  }
  .u-pbm95 {
    padding-bottom: 95px !important;
  }
  .u-pbm100 {
    padding-bottom: 100px !important;
  }
  .u-pbm105 {
    padding-bottom: 105px !important;
  }
  .u-pbm110 {
    padding-bottom: 110px !important;
  }
  .u-pbm115 {
    padding-bottom: 115px !important;
  }
  .u-pbm120 {
    padding-bottom: 120px !important;
  }
  .u-pbm125 {
    padding-bottom: 125px !important;
  }
  .u-pbm130 {
    padding-bottom: 130px !important;
  }
  .u-pbm135 {
    padding-bottom: 135px !important;
  }
  .u-pbm140 {
    padding-bottom: 140px !important;
  }
  .u-pbm145 {
    padding-bottom: 145px !important;
  }
  .u-pbm150 {
    padding-bottom: 150px !important;
  }
  .u-pbm155 {
    padding-bottom: 155px !important;
  }
  .u-pbm160 {
    padding-bottom: 160px !important;
  }
  .u-pbm165 {
    padding-bottom: 165px !important;
  }
  .u-pbm170 {
    padding-bottom: 170px !important;
  }
  .u-pbm175 {
    padding-bottom: 175px !important;
  }
  .u-pbm180 {
    padding-bottom: 180px !important;
  }
  .u-pbm185 {
    padding-bottom: 185px !important;
  }
  .u-pbm190 {
    padding-bottom: 190px !important;
  }
  .u-pbm195 {
    padding-bottom: 195px !important;
  }
  .u-pbm200 {
    padding-bottom: 200px !important;
  }
  .u-plm0 {
    padding-left: 0px !important;
  }
  .u-plm5 {
    padding-left: 5px !important;
  }
  .u-plm10 {
    padding-left: 10px !important;
  }
  .u-plm15 {
    padding-left: 15px !important;
  }
  .u-plm20 {
    padding-left: 20px !important;
  }
  .u-plm25 {
    padding-left: 25px !important;
  }
  .u-plm30 {
    padding-left: 30px !important;
  }
  .u-plm35 {
    padding-left: 35px !important;
  }
  .u-plm40 {
    padding-left: 40px !important;
  }
  .u-plm45 {
    padding-left: 45px !important;
  }
  .u-plm50 {
    padding-left: 50px !important;
  }
  .u-plm55 {
    padding-left: 55px !important;
  }
  .u-plm60 {
    padding-left: 60px !important;
  }
  .u-plm65 {
    padding-left: 65px !important;
  }
  .u-plm70 {
    padding-left: 70px !important;
  }
  .u-plm75 {
    padding-left: 75px !important;
  }
  .u-plm80 {
    padding-left: 80px !important;
  }
  .u-plm85 {
    padding-left: 85px !important;
  }
  .u-plm90 {
    padding-left: 90px !important;
  }
  .u-plm95 {
    padding-left: 95px !important;
  }
  .u-plm100 {
    padding-left: 100px !important;
  }
  .u-plm105 {
    padding-left: 105px !important;
  }
  .u-plm110 {
    padding-left: 110px !important;
  }
  .u-plm115 {
    padding-left: 115px !important;
  }
  .u-plm120 {
    padding-left: 120px !important;
  }
  .u-plm125 {
    padding-left: 125px !important;
  }
  .u-plm130 {
    padding-left: 130px !important;
  }
  .u-plm135 {
    padding-left: 135px !important;
  }
  .u-plm140 {
    padding-left: 140px !important;
  }
  .u-plm145 {
    padding-left: 145px !important;
  }
  .u-plm150 {
    padding-left: 150px !important;
  }
  .u-plm155 {
    padding-left: 155px !important;
  }
  .u-plm160 {
    padding-left: 160px !important;
  }
  .u-plm165 {
    padding-left: 165px !important;
  }
  .u-plm170 {
    padding-left: 170px !important;
  }
  .u-plm175 {
    padding-left: 175px !important;
  }
  .u-plm180 {
    padding-left: 180px !important;
  }
  .u-plm185 {
    padding-left: 185px !important;
  }
  .u-plm190 {
    padding-left: 190px !important;
  }
  .u-plm195 {
    padding-left: 195px !important;
  }
  .u-plm200 {
    padding-left: 200px !important;
  }
}

/* screen size L
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 960px) {
  .u-ptl0 {
    padding-top: 0px !important;
  }
  .u-ptl5 {
    padding-top: 5px !important;
  }
  .u-ptl10 {
    padding-top: 10px !important;
  }
  .u-ptl15 {
    padding-top: 15px !important;
  }
  .u-ptl20 {
    padding-top: 20px !important;
  }
  .u-ptl25 {
    padding-top: 25px !important;
  }
  .u-ptl30 {
    padding-top: 30px !important;
  }
  .u-ptl35 {
    padding-top: 35px !important;
  }
  .u-ptl40 {
    padding-top: 40px !important;
  }
  .u-ptl45 {
    padding-top: 45px !important;
  }
  .u-ptl50 {
    padding-top: 50px !important;
  }
  .u-ptl55 {
    padding-top: 55px !important;
  }
  .u-ptl60 {
    padding-top: 60px !important;
  }
  .u-ptl65 {
    padding-top: 65px !important;
  }
  .u-ptl70 {
    padding-top: 70px !important;
  }
  .u-ptl75 {
    padding-top: 75px !important;
  }
  .u-ptl80 {
    padding-top: 80px !important;
  }
  .u-ptl85 {
    padding-top: 85px !important;
  }
  .u-ptl90 {
    padding-top: 90px !important;
  }
  .u-ptl95 {
    padding-top: 95px !important;
  }
  .u-ptl100 {
    padding-top: 100px !important;
  }
  .u-ptl105 {
    padding-top: 105px !important;
  }
  .u-ptl110 {
    padding-top: 110px !important;
  }
  .u-ptl115 {
    padding-top: 115px !important;
  }
  .u-ptl120 {
    padding-top: 120px !important;
  }
  .u-ptl125 {
    padding-top: 125px !important;
  }
  .u-ptl130 {
    padding-top: 130px !important;
  }
  .u-ptl135 {
    padding-top: 135px !important;
  }
  .u-ptl140 {
    padding-top: 140px !important;
  }
  .u-ptl145 {
    padding-top: 145px !important;
  }
  .u-ptl150 {
    padding-top: 150px !important;
  }
  .u-ptl155 {
    padding-top: 155px !important;
  }
  .u-ptl160 {
    padding-top: 160px !important;
  }
  .u-ptl165 {
    padding-top: 165px !important;
  }
  .u-ptl170 {
    padding-top: 170px !important;
  }
  .u-ptl175 {
    padding-top: 175px !important;
  }
  .u-ptl180 {
    padding-top: 180px !important;
  }
  .u-ptl185 {
    padding-top: 185px !important;
  }
  .u-ptl190 {
    padding-top: 190px !important;
  }
  .u-ptl195 {
    padding-top: 195px !important;
  }
  .u-ptl200 {
    padding-top: 200px !important;
  }
  .u-prl0 {
    padding-right: 0px !important;
  }
  .u-prl5 {
    padding-right: 5px !important;
  }
  .u-prl10 {
    padding-right: 10px !important;
  }
  .u-prl15 {
    padding-right: 15px !important;
  }
  .u-prl20 {
    padding-right: 20px !important;
  }
  .u-prl25 {
    padding-right: 25px !important;
  }
  .u-prl30 {
    padding-right: 30px !important;
  }
  .u-prl35 {
    padding-right: 35px !important;
  }
  .u-prl40 {
    padding-right: 40px !important;
  }
  .u-prl45 {
    padding-right: 45px !important;
  }
  .u-prl50 {
    padding-right: 50px !important;
  }
  .u-prl55 {
    padding-right: 55px !important;
  }
  .u-prl60 {
    padding-right: 60px !important;
  }
  .u-prl65 {
    padding-right: 65px !important;
  }
  .u-prl70 {
    padding-right: 70px !important;
  }
  .u-prl75 {
    padding-right: 75px !important;
  }
  .u-prl80 {
    padding-right: 80px !important;
  }
  .u-prl85 {
    padding-right: 85px !important;
  }
  .u-prl90 {
    padding-right: 90px !important;
  }
  .u-prl95 {
    padding-right: 95px !important;
  }
  .u-prl100 {
    padding-right: 100px !important;
  }
  .u-prl105 {
    padding-right: 105px !important;
  }
  .u-prl110 {
    padding-right: 110px !important;
  }
  .u-prl115 {
    padding-right: 115px !important;
  }
  .u-prl120 {
    padding-right: 120px !important;
  }
  .u-prl125 {
    padding-right: 125px !important;
  }
  .u-prl130 {
    padding-right: 130px !important;
  }
  .u-prl135 {
    padding-right: 135px !important;
  }
  .u-prl140 {
    padding-right: 140px !important;
  }
  .u-prl145 {
    padding-right: 145px !important;
  }
  .u-prl150 {
    padding-right: 150px !important;
  }
  .u-prl155 {
    padding-right: 155px !important;
  }
  .u-prl160 {
    padding-right: 160px !important;
  }
  .u-prl165 {
    padding-right: 165px !important;
  }
  .u-prl170 {
    padding-right: 170px !important;
  }
  .u-prl175 {
    padding-right: 175px !important;
  }
  .u-prl180 {
    padding-right: 180px !important;
  }
  .u-prl185 {
    padding-right: 185px !important;
  }
  .u-prl190 {
    padding-right: 190px !important;
  }
  .u-prl195 {
    padding-right: 195px !important;
  }
  .u-prl200 {
    padding-right: 200px !important;
  }
  .u-pbl0 {
    padding-bottom: 0px !important;
  }
  .u-pbl5 {
    padding-bottom: 5px !important;
  }
  .u-pbl10 {
    padding-bottom: 10px !important;
  }
  .u-pbl15 {
    padding-bottom: 15px !important;
  }
  .u-pbl20 {
    padding-bottom: 20px !important;
  }
  .u-pbl25 {
    padding-bottom: 25px !important;
  }
  .u-pbl30 {
    padding-bottom: 30px !important;
  }
  .u-pbl35 {
    padding-bottom: 35px !important;
  }
  .u-pbl40 {
    padding-bottom: 40px !important;
  }
  .u-pbl45 {
    padding-bottom: 45px !important;
  }
  .u-pbl50 {
    padding-bottom: 50px !important;
  }
  .u-pbl55 {
    padding-bottom: 55px !important;
  }
  .u-pbl60 {
    padding-bottom: 60px !important;
  }
  .u-pbl65 {
    padding-bottom: 65px !important;
  }
  .u-pbl70 {
    padding-bottom: 70px !important;
  }
  .u-pbl75 {
    padding-bottom: 75px !important;
  }
  .u-pbl80 {
    padding-bottom: 80px !important;
  }
  .u-pbl85 {
    padding-bottom: 85px !important;
  }
  .u-pbl90 {
    padding-bottom: 90px !important;
  }
  .u-pbl95 {
    padding-bottom: 95px !important;
  }
  .u-pbl100 {
    padding-bottom: 100px !important;
  }
  .u-pbl105 {
    padding-bottom: 105px !important;
  }
  .u-pbl110 {
    padding-bottom: 110px !important;
  }
  .u-pbl115 {
    padding-bottom: 115px !important;
  }
  .u-pbl120 {
    padding-bottom: 120px !important;
  }
  .u-pbl125 {
    padding-bottom: 125px !important;
  }
  .u-pbl130 {
    padding-bottom: 130px !important;
  }
  .u-pbl135 {
    padding-bottom: 135px !important;
  }
  .u-pbl140 {
    padding-bottom: 140px !important;
  }
  .u-pbl145 {
    padding-bottom: 145px !important;
  }
  .u-pbl150 {
    padding-bottom: 150px !important;
  }
  .u-pbl155 {
    padding-bottom: 155px !important;
  }
  .u-pbl160 {
    padding-bottom: 160px !important;
  }
  .u-pbl165 {
    padding-bottom: 165px !important;
  }
  .u-pbl170 {
    padding-bottom: 170px !important;
  }
  .u-pbl175 {
    padding-bottom: 175px !important;
  }
  .u-pbl180 {
    padding-bottom: 180px !important;
  }
  .u-pbl185 {
    padding-bottom: 185px !important;
  }
  .u-pbl190 {
    padding-bottom: 190px !important;
  }
  .u-pbl195 {
    padding-bottom: 195px !important;
  }
  .u-pbl200 {
    padding-bottom: 200px !important;
  }
  .u-pll0 {
    padding-left: 0px !important;
  }
  .u-pll5 {
    padding-left: 5px !important;
  }
  .u-pll10 {
    padding-left: 10px !important;
  }
  .u-pll15 {
    padding-left: 15px !important;
  }
  .u-pll20 {
    padding-left: 20px !important;
  }
  .u-pll25 {
    padding-left: 25px !important;
  }
  .u-pll30 {
    padding-left: 30px !important;
  }
  .u-pll35 {
    padding-left: 35px !important;
  }
  .u-pll40 {
    padding-left: 40px !important;
  }
  .u-pll45 {
    padding-left: 45px !important;
  }
  .u-pll50 {
    padding-left: 50px !important;
  }
  .u-pll55 {
    padding-left: 55px !important;
  }
  .u-pll60 {
    padding-left: 60px !important;
  }
  .u-pll65 {
    padding-left: 65px !important;
  }
  .u-pll70 {
    padding-left: 70px !important;
  }
  .u-pll75 {
    padding-left: 75px !important;
  }
  .u-pll80 {
    padding-left: 80px !important;
  }
  .u-pll85 {
    padding-left: 85px !important;
  }
  .u-pll90 {
    padding-left: 90px !important;
  }
  .u-pll95 {
    padding-left: 95px !important;
  }
  .u-pll100 {
    padding-left: 100px !important;
  }
  .u-pll105 {
    padding-left: 105px !important;
  }
  .u-pll110 {
    padding-left: 110px !important;
  }
  .u-pll115 {
    padding-left: 115px !important;
  }
  .u-pll120 {
    padding-left: 120px !important;
  }
  .u-pll125 {
    padding-left: 125px !important;
  }
  .u-pll130 {
    padding-left: 130px !important;
  }
  .u-pll135 {
    padding-left: 135px !important;
  }
  .u-pll140 {
    padding-left: 140px !important;
  }
  .u-pll145 {
    padding-left: 145px !important;
  }
  .u-pll150 {
    padding-left: 150px !important;
  }
  .u-pll155 {
    padding-left: 155px !important;
  }
  .u-pll160 {
    padding-left: 160px !important;
  }
  .u-pll165 {
    padding-left: 165px !important;
  }
  .u-pll170 {
    padding-left: 170px !important;
  }
  .u-pll175 {
    padding-left: 175px !important;
  }
  .u-pll180 {
    padding-left: 180px !important;
  }
  .u-pll185 {
    padding-left: 185px !important;
  }
  .u-pll190 {
    padding-left: 190px !important;
  }
  .u-pll195 {
    padding-left: 195px !important;
  }
  .u-pll200 {
    padding-left: 200px !important;
  }
}

/* screen size XL
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 1280px) {
  .u-ptxl0 {
    padding-top: 0px !important;
  }
  .u-ptxl5 {
    padding-top: 5px !important;
  }
  .u-ptxl10 {
    padding-top: 10px !important;
  }
  .u-ptxl15 {
    padding-top: 15px !important;
  }
  .u-ptxl20 {
    padding-top: 20px !important;
  }
  .u-ptxl25 {
    padding-top: 25px !important;
  }
  .u-ptxl30 {
    padding-top: 30px !important;
  }
  .u-ptxl35 {
    padding-top: 35px !important;
  }
  .u-ptxl40 {
    padding-top: 40px !important;
  }
  .u-ptxl45 {
    padding-top: 45px !important;
  }
  .u-ptxl50 {
    padding-top: 50px !important;
  }
  .u-ptxl55 {
    padding-top: 55px !important;
  }
  .u-ptxl60 {
    padding-top: 60px !important;
  }
  .u-ptxl65 {
    padding-top: 65px !important;
  }
  .u-ptxl70 {
    padding-top: 70px !important;
  }
  .u-ptxl75 {
    padding-top: 75px !important;
  }
  .u-ptxl80 {
    padding-top: 80px !important;
  }
  .u-ptxl85 {
    padding-top: 85px !important;
  }
  .u-ptxl90 {
    padding-top: 90px !important;
  }
  .u-ptxl95 {
    padding-top: 95px !important;
  }
  .u-ptxl100 {
    padding-top: 100px !important;
  }
  .u-ptxl105 {
    padding-top: 105px !important;
  }
  .u-ptxl110 {
    padding-top: 110px !important;
  }
  .u-ptxl115 {
    padding-top: 115px !important;
  }
  .u-ptxl120 {
    padding-top: 120px !important;
  }
  .u-ptxl125 {
    padding-top: 125px !important;
  }
  .u-ptxl130 {
    padding-top: 130px !important;
  }
  .u-ptxl135 {
    padding-top: 135px !important;
  }
  .u-ptxl140 {
    padding-top: 140px !important;
  }
  .u-ptxl145 {
    padding-top: 145px !important;
  }
  .u-ptxl150 {
    padding-top: 150px !important;
  }
  .u-ptxl155 {
    padding-top: 155px !important;
  }
  .u-ptxl160 {
    padding-top: 160px !important;
  }
  .u-ptxl165 {
    padding-top: 165px !important;
  }
  .u-ptxl170 {
    padding-top: 170px !important;
  }
  .u-ptxl175 {
    padding-top: 175px !important;
  }
  .u-ptxl180 {
    padding-top: 180px !important;
  }
  .u-ptxl185 {
    padding-top: 185px !important;
  }
  .u-ptxl190 {
    padding-top: 190px !important;
  }
  .u-ptxl195 {
    padding-top: 195px !important;
  }
  .u-ptxl200 {
    padding-top: 200px !important;
  }
  .u-prxl0 {
    padding-right: 0px !important;
  }
  .u-prxl5 {
    padding-right: 5px !important;
  }
  .u-prxl10 {
    padding-right: 10px !important;
  }
  .u-prxl15 {
    padding-right: 15px !important;
  }
  .u-prxl20 {
    padding-right: 20px !important;
  }
  .u-prxl25 {
    padding-right: 25px !important;
  }
  .u-prxl30 {
    padding-right: 30px !important;
  }
  .u-prxl35 {
    padding-right: 35px !important;
  }
  .u-prxl40 {
    padding-right: 40px !important;
  }
  .u-prxl45 {
    padding-right: 45px !important;
  }
  .u-prxl50 {
    padding-right: 50px !important;
  }
  .u-prxl55 {
    padding-right: 55px !important;
  }
  .u-prxl60 {
    padding-right: 60px !important;
  }
  .u-prxl65 {
    padding-right: 65px !important;
  }
  .u-prxl70 {
    padding-right: 70px !important;
  }
  .u-prxl75 {
    padding-right: 75px !important;
  }
  .u-prxl80 {
    padding-right: 80px !important;
  }
  .u-prxl85 {
    padding-right: 85px !important;
  }
  .u-prxl90 {
    padding-right: 90px !important;
  }
  .u-prxl95 {
    padding-right: 95px !important;
  }
  .u-prxl100 {
    padding-right: 100px !important;
  }
  .u-prxl105 {
    padding-right: 105px !important;
  }
  .u-prxl110 {
    padding-right: 110px !important;
  }
  .u-prxl115 {
    padding-right: 115px !important;
  }
  .u-prxl120 {
    padding-right: 120px !important;
  }
  .u-prxl125 {
    padding-right: 125px !important;
  }
  .u-prxl130 {
    padding-right: 130px !important;
  }
  .u-prxl135 {
    padding-right: 135px !important;
  }
  .u-prxl140 {
    padding-right: 140px !important;
  }
  .u-prxl145 {
    padding-right: 145px !important;
  }
  .u-prxl150 {
    padding-right: 150px !important;
  }
  .u-prxl155 {
    padding-right: 155px !important;
  }
  .u-prxl160 {
    padding-right: 160px !important;
  }
  .u-prxl165 {
    padding-right: 165px !important;
  }
  .u-prxl170 {
    padding-right: 170px !important;
  }
  .u-prxl175 {
    padding-right: 175px !important;
  }
  .u-prxl180 {
    padding-right: 180px !important;
  }
  .u-prxl185 {
    padding-right: 185px !important;
  }
  .u-prxl190 {
    padding-right: 190px !important;
  }
  .u-prxl195 {
    padding-right: 195px !important;
  }
  .u-prxl200 {
    padding-right: 200px !important;
  }
  .u-pbxl0 {
    padding-bottom: 0px !important;
  }
  .u-pbxl5 {
    padding-bottom: 5px !important;
  }
  .u-pbxl10 {
    padding-bottom: 10px !important;
  }
  .u-pbxl15 {
    padding-bottom: 15px !important;
  }
  .u-pbxl20 {
    padding-bottom: 20px !important;
  }
  .u-pbxl25 {
    padding-bottom: 25px !important;
  }
  .u-pbxl30 {
    padding-bottom: 30px !important;
  }
  .u-pbxl35 {
    padding-bottom: 35px !important;
  }
  .u-pbxl40 {
    padding-bottom: 40px !important;
  }
  .u-pbxl45 {
    padding-bottom: 45px !important;
  }
  .u-pbxl50 {
    padding-bottom: 50px !important;
  }
  .u-pbxl55 {
    padding-bottom: 55px !important;
  }
  .u-pbxl60 {
    padding-bottom: 60px !important;
  }
  .u-pbxl65 {
    padding-bottom: 65px !important;
  }
  .u-pbxl70 {
    padding-bottom: 70px !important;
  }
  .u-pbxl75 {
    padding-bottom: 75px !important;
  }
  .u-pbxl80 {
    padding-bottom: 80px !important;
  }
  .u-pbxl85 {
    padding-bottom: 85px !important;
  }
  .u-pbxl90 {
    padding-bottom: 90px !important;
  }
  .u-pbxl95 {
    padding-bottom: 95px !important;
  }
  .u-pbxl100 {
    padding-bottom: 100px !important;
  }
  .u-pbxl105 {
    padding-bottom: 105px !important;
  }
  .u-pbxl110 {
    padding-bottom: 110px !important;
  }
  .u-pbxl115 {
    padding-bottom: 115px !important;
  }
  .u-pbxl120 {
    padding-bottom: 120px !important;
  }
  .u-pbxl125 {
    padding-bottom: 125px !important;
  }
  .u-pbxl130 {
    padding-bottom: 130px !important;
  }
  .u-pbxl135 {
    padding-bottom: 135px !important;
  }
  .u-pbxl140 {
    padding-bottom: 140px !important;
  }
  .u-pbxl145 {
    padding-bottom: 145px !important;
  }
  .u-pbxl150 {
    padding-bottom: 150px !important;
  }
  .u-pbxl155 {
    padding-bottom: 155px !important;
  }
  .u-pbxl160 {
    padding-bottom: 160px !important;
  }
  .u-pbxl165 {
    padding-bottom: 165px !important;
  }
  .u-pbxl170 {
    padding-bottom: 170px !important;
  }
  .u-pbxl175 {
    padding-bottom: 175px !important;
  }
  .u-pbxl180 {
    padding-bottom: 180px !important;
  }
  .u-pbxl185 {
    padding-bottom: 185px !important;
  }
  .u-pbxl190 {
    padding-bottom: 190px !important;
  }
  .u-pbxl195 {
    padding-bottom: 195px !important;
  }
  .u-pbxl200 {
    padding-bottom: 200px !important;
  }
  .u-plxl0 {
    padding-left: 0px !important;
  }
  .u-plxl5 {
    padding-left: 5px !important;
  }
  .u-plxl10 {
    padding-left: 10px !important;
  }
  .u-plxl15 {
    padding-left: 15px !important;
  }
  .u-plxl20 {
    padding-left: 20px !important;
  }
  .u-plxl25 {
    padding-left: 25px !important;
  }
  .u-plxl30 {
    padding-left: 30px !important;
  }
  .u-plxl35 {
    padding-left: 35px !important;
  }
  .u-plxl40 {
    padding-left: 40px !important;
  }
  .u-plxl45 {
    padding-left: 45px !important;
  }
  .u-plxl50 {
    padding-left: 50px !important;
  }
  .u-plxl55 {
    padding-left: 55px !important;
  }
  .u-plxl60 {
    padding-left: 60px !important;
  }
  .u-plxl65 {
    padding-left: 65px !important;
  }
  .u-plxl70 {
    padding-left: 70px !important;
  }
  .u-plxl75 {
    padding-left: 75px !important;
  }
  .u-plxl80 {
    padding-left: 80px !important;
  }
  .u-plxl85 {
    padding-left: 85px !important;
  }
  .u-plxl90 {
    padding-left: 90px !important;
  }
  .u-plxl95 {
    padding-left: 95px !important;
  }
  .u-plxl100 {
    padding-left: 100px !important;
  }
  .u-plxl105 {
    padding-left: 105px !important;
  }
  .u-plxl110 {
    padding-left: 110px !important;
  }
  .u-plxl115 {
    padding-left: 115px !important;
  }
  .u-plxl120 {
    padding-left: 120px !important;
  }
  .u-plxl125 {
    padding-left: 125px !important;
  }
  .u-plxl130 {
    padding-left: 130px !important;
  }
  .u-plxl135 {
    padding-left: 135px !important;
  }
  .u-plxl140 {
    padding-left: 140px !important;
  }
  .u-plxl145 {
    padding-left: 145px !important;
  }
  .u-plxl150 {
    padding-left: 150px !important;
  }
  .u-plxl155 {
    padding-left: 155px !important;
  }
  .u-plxl160 {
    padding-left: 160px !important;
  }
  .u-plxl165 {
    padding-left: 165px !important;
  }
  .u-plxl170 {
    padding-left: 170px !important;
  }
  .u-plxl175 {
    padding-left: 175px !important;
  }
  .u-plxl180 {
    padding-left: 180px !important;
  }
  .u-plxl185 {
    padding-left: 185px !important;
  }
  .u-plxl190 {
    padding-left: 190px !important;
  }
  .u-plxl195 {
    padding-left: 195px !important;
  }
  .u-plxl200 {
    padding-left: 200px !important;
  }
}

/* position
------------------------------------------------------------*/
.u-poss {
  position: static !important;
}

.u-posr {
  position: relative !important;
}

.u-posa {
  position: absolute !important;
}

.u-posf {
  position: fixed !important;
}

.u-posf {
  position: sticky !important;
}

/* z-index
------------------------------------------------------------*/
.u-z0 {
  z-index: 0 !important;
}

.u-z1 {
  z-index: 1 !important;
}

.u-z2 {
  z-index: 2 !important;
}

.u-z3 {
  z-index: 3 !important;
}

.u-z4 {
  z-index: 4 !important;
}

.u-z5 {
  z-index: 5 !important;
}

.u-z6 {
  z-index: 6 !important;
}

.u-z7 {
  z-index: 7 !important;
}

.u-z8 {
  z-index: 8 !important;
}

.u-z9 {
  z-index: 9 !important;
}

/* display
------------------------------------------------------------*/
.u-di {
  display: inline !important;
}

.u-dn {
  display: none !important;
}

.u-db {
  display: block !important;
}

.u-dib {
  display: inline-block !important;
}

.u-dfx {
  display: flex !important;
}

.u-difx {
  display: inline-flex !important;
}

.u-dtb {
  display: table !important;
}

.u-ditb {
  display: inline-table !important;
}

.u-dtbhg {
  display: table-header-group !important;
}

.u-dtbfg {
  display: table-footer-group !important;
}

.u-dtbrg {
  display: table-row-group !important;
}

.u-dtbr {
  display: table-row !important;
}

.u-dtbc {
  display: table-cell !important;
}

.u-dli {
  display: list-item !important;
}

.u-dih {
  display: inherit !important;
}

.u-dc {
  display: contents !important;
}

/* Display control by device
- - - - - - - - - - - - - - - - - - */
.u-dnxs {
  display: block;
}

@media only screen and (min-width: 325px) {
  .u-dnxs {
    display: none;
  }
}

.u-dns {
  display: block;
}

@media only screen and (min-width: 480px) {
  .u-dns {
    display: none;
  }
}

.u-dnm {
  display: block;
}

@media only screen and (min-width: 768px) {
  .u-dnm {
    display: none;
  }
}

.u-dnl {
  display: block;
}

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

.u-dnxl {
  display: inline;
}

@media only screen and (min-width: 1280px) {
  .u-dnxl {
    display: none;
  }
}

.u-dbxs {
  display: none;
}

@media only screen and (min-width: 325px) {
  .u-dbxs {
    display: block;
  }
}

.u-dbs {
  display: none;
}

@media only screen and (min-width: 480px) {
  .u-dbs {
    display: block;
  }
}

.u-dbm {
  display: none;
}

@media only screen and (min-width: 768px) {
  .u-dbm {
    display: block;
  }
}

.u-dbl {
  display: none;
}

@media only screen and (min-width: 960px) {
  .u-dbl {
    display: block;
  }
}

.u-dbxl {
  display: none;
}

@media only screen and (min-width: 1280px) {
  .u-dbxl {
    display: inline;
  }
}

/* display inline */
.u-dixs {
  display: none;
}

@media only screen and (min-width: 325px) {
  .u-dixs {
    display: inline;
  }
}

.u-dis {
  display: none;
}

@media only screen and (min-width: 480px) {
  .u-dis {
    display: inline;
  }
}

.u-dim {
  display: none;
}

@media only screen and (min-width: 768px) {
  .u-dim {
    display: inline;
  }
}

.u-dil {
  display: none;
}

@media only screen and (min-width: 960px) {
  .u-dil {
    display: inline;
  }
}

.u-dixl {
  display: none;
}

@media only screen and (min-width: 1280px) {
  .u-dixl {
    display: inline;
  }
}

/* display inlineblock */
.u-dibxs {
  display: none;
}

@media only screen and (min-width: 325px) {
  .u-dibxs {
    display: inline-block;
  }
}

.u-dibs {
  display: none;
}

@media only screen and (min-width: 480px) {
  .u-dibs {
    display: inline-block;
  }
}

.u-dibm {
  display: none;
}

@media only screen and (min-width: 768px) {
  .u-dibm {
    display: inline-block;
  }
}

.u-dibal {
  display: none;
}

@media only screen and (min-width: 960px) {
  .u-dibal {
    display: inline-block;
  }
}

.u-dibxl {
  display: none;
}

@media only screen and (min-width: 1280px) {
  .u-dibxl {
    display: inline-block;
  }
}

/* display flex */
.u-dfxs {
  display: none;
}

@media only screen and (min-width: 325px) {
  .u-dfxs {
    display: flex;
  }
}

.u-dfs {
  display: none;
}

@media only screen and (min-width: 480px) {
  .u-dfs {
    display: flex;
  }
}

.u-dfm {
  display: none;
}

@media only screen and (min-width: 768px) {
  .u-dfm {
    display: flex;
  }
}

.u-dfl {
  display: none;
}

@media only screen and (min-width: 960px) {
  .u-dfl {
    display: flex;
  }
}

.u-dfxl {
  display: none;
}

@media only screen and (min-width: 1280px) {
  .u-dfxl {
    display: inline-block;
  }
}

/* paersentage width
-------------------------------------------------------------*/
/* base
- - - - - - - - - - - - - - - - - - */
.u-w0p {
  width: 0% !important;
}

.u-w5p {
  width: 5% !important;
}

.u-w10p {
  width: 10% !important;
}

.u-w15p {
  width: 15% !important;
}

.u-w20p {
  width: 20% !important;
}

.u-w25p {
  width: 25% !important;
}

.u-w30p {
  width: 30% !important;
}

.u-w35p {
  width: 35% !important;
}

.u-w40p {
  width: 40% !important;
}

.u-w45p {
  width: 45% !important;
}

.u-w50p {
  width: 50% !important;
}

.u-w55p {
  width: 55% !important;
}

.u-w60p {
  width: 60% !important;
}

.u-w65p {
  width: 65% !important;
}

.u-w70p {
  width: 70% !important;
}

.u-w75p {
  width: 75% !important;
}

.u-w80p {
  width: 80% !important;
}

.u-w85p {
  width: 85% !important;
}

.u-w90p {
  width: 90% !important;
}

.u-w95p {
  width: 95% !important;
}

.u-w100p {
  width: 100% !important;
}

/* screen size XS
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 325px) {
  .u-wxs0p {
    width: 0% !important;
  }
  .u-wxs5p {
    width: 5% !important;
  }
  .u-wxs10p {
    width: 10% !important;
  }
  .u-wxs15p {
    width: 15% !important;
  }
  .u-wxs20p {
    width: 20% !important;
  }
  .u-wxs25p {
    width: 25% !important;
  }
  .u-wxs30p {
    width: 30% !important;
  }
  .u-wxs35p {
    width: 35% !important;
  }
  .u-wxs40p {
    width: 40% !important;
  }
  .u-wxs45p {
    width: 45% !important;
  }
  .u-wxs50p {
    width: 50% !important;
  }
  .u-wxs55p {
    width: 55% !important;
  }
  .u-wxs60p {
    width: 60% !important;
  }
  .u-wxs65p {
    width: 65% !important;
  }
  .u-wxs70p {
    width: 70% !important;
  }
  .u-wxs75p {
    width: 75% !important;
  }
  .u-wxs80p {
    width: 80% !important;
  }
  .u-wxs85p {
    width: 85% !important;
  }
  .u-wxs90p {
    width: 90% !important;
  }
  .u-wxs95p {
    width: 95% !important;
  }
  .u-wxs100p {
    width: 100% !important;
  }
}

/* screen size S
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 480px) {
  .u-ws0p {
    width: 0% !important;
  }
  .u-ws5p {
    width: 5% !important;
  }
  .u-ws10p {
    width: 10% !important;
  }
  .u-ws15p {
    width: 15% !important;
  }
  .u-ws20p {
    width: 20% !important;
  }
  .u-ws25p {
    width: 25% !important;
  }
  .u-ws30p {
    width: 30% !important;
  }
  .u-ws35p {
    width: 35% !important;
  }
  .u-ws40p {
    width: 40% !important;
  }
  .u-ws45p {
    width: 45% !important;
  }
  .u-ws50p {
    width: 50% !important;
  }
  .u-ws55p {
    width: 55% !important;
  }
  .u-ws60p {
    width: 60% !important;
  }
  .u-ws65p {
    width: 65% !important;
  }
  .u-ws70p {
    width: 70% !important;
  }
  .u-ws75p {
    width: 75% !important;
  }
  .u-ws80p {
    width: 80% !important;
  }
  .u-ws85p {
    width: 85% !important;
  }
  .u-ws90p {
    width: 90% !important;
  }
  .u-ws95p {
    width: 95% !important;
  }
  .u-ws100p {
    width: 100% !important;
  }
}

/* screen size M
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 768px) {
  .u-wm0p {
    width: 0% !important;
  }
  .u-wm5p {
    width: 5% !important;
  }
  .u-wm10p {
    width: 10% !important;
  }
  .u-wm15p {
    width: 15% !important;
  }
  .u-wm20p {
    width: 20% !important;
  }
  .u-wm25p {
    width: 25% !important;
  }
  .u-wm30p {
    width: 30% !important;
  }
  .u-wm35p {
    width: 35% !important;
  }
  .u-wm40p {
    width: 40% !important;
  }
  .u-wm45p {
    width: 45% !important;
  }
  .u-wm50p {
    width: 50% !important;
  }
  .u-wm55p {
    width: 55% !important;
  }
  .u-wm60p {
    width: 60% !important;
  }
  .u-wm65p {
    width: 65% !important;
  }
  .u-wm70p {
    width: 70% !important;
  }
  .u-wm75p {
    width: 75% !important;
  }
  .u-wm80p {
    width: 80% !important;
  }
  .u-wm85p {
    width: 85% !important;
  }
  .u-wm90p {
    width: 90% !important;
  }
  .u-wm95p {
    width: 95% !important;
  }
  .u-wm100p {
    width: 100% !important;
  }
}

/* screen size L
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 960px) {
  .u-wl0p {
    width: 0% !important;
  }
  .u-wl5p {
    width: 5% !important;
  }
  .u-wl10p {
    width: 10% !important;
  }
  .u-wl15p {
    width: 15% !important;
  }
  .u-wl20p {
    width: 20% !important;
  }
  .u-wl25p {
    width: 25% !important;
  }
  .u-wl30p {
    width: 30% !important;
  }
  .u-wl35p {
    width: 35% !important;
  }
  .u-wl40p {
    width: 40% !important;
  }
  .u-wl45p {
    width: 45% !important;
  }
  .u-wl50p {
    width: 50% !important;
  }
  .u-wl55p {
    width: 55% !important;
  }
  .u-wl60p {
    width: 60% !important;
  }
  .u-wl65p {
    width: 65% !important;
  }
  .u-wl70p {
    width: 70% !important;
  }
  .u-wl75p {
    width: 75% !important;
  }
  .u-wl80p {
    width: 80% !important;
  }
  .u-wl85p {
    width: 85% !important;
  }
  .u-wl90p {
    width: 90% !important;
  }
  .u-wl95p {
    width: 95% !important;
  }
  .u-wl100p {
    width: 100% !important;
  }
}

/* screen size XL
- - - - - - - - - - - - - - - - - - */
@media only screen and (min-width: 960px) {
  .u-wxl0p {
    width: 0% !important;
  }
  .u-wxl5p {
    width: 5% !important;
  }
  .u-wxl10p {
    width: 10% !important;
  }
  .u-wxl15p {
    width: 15% !important;
  }
  .u-wxl20p {
    width: 20% !important;
  }
  .u-wxl25p {
    width: 25% !important;
  }
  .u-wxl30p {
    width: 30% !important;
  }
  .u-wxl35p {
    width: 35% !important;
  }
  .u-wxl40p {
    width: 40% !important;
  }
  .u-wxl45p {
    width: 45% !important;
  }
  .u-wxl50p {
    width: 50% !important;
  }
  .u-wxl55p {
    width: 55% !important;
  }
  .u-wxl60p {
    width: 60% !important;
  }
  .u-wxl65p {
    width: 65% !important;
  }
  .u-wxl70p {
    width: 70% !important;
  }
  .u-wxl75p {
    width: 75% !important;
  }
  .u-wxl80p {
    width: 80% !important;
  }
  .u-wxl85p {
    width: 85% !important;
  }
  .u-wxl90p {
    width: 90% !important;
  }
  .u-wxl95p {
    width: 95% !important;
  }
  .u-wxl100p {
    width: 100% !important;
  }
}

/* border display controls
------------------------------------------------------------*/
.u-bdn {
  border: none !important;
}

.u-bdtn {
  border-top: none !important;
}

.u-bdrn {
  border-right: none !important;
}

.u-bdbn {
  border-bottom: none !important;
}

.u-bdln {
  border-left: none !important;
}

/* backgroundcolor
------------------------------------------------------------*/
.u-bgn {
  background: none !important;
}

.u-bgin {
  background-image: none !important;
}

.u-bgct {
  background-color: transparent !important;
}

/* text
============================================================*/
/* text align
------------------------------------------------------------*/
.u-tal {
  text-align: left !important;
}

.u-tac {
  text-align: center !important;
}

.u-tar {
  text-align: right !important;
}

.u-taj {
  text-align: justify !important;
}

/* font weight
------------------------------------------------------------*/
.u-fwn {
  font-weight: normal !important;
}

.u-fwb {
  font-weight: bold !important;
}

/* font style
------------------------------------------------------------*/
.u-fsn {
  font-style: normal !important;
}

.u-fsi {
  font-style: italic !important;
}

/* link
============================================================*/
/* hover with hilight
------------------------------------------------------------*/
.u-hlt:hover {
  text-decoration: none !important;
}

.u-hlt:hover span {
  opacity: 0.6;
  transition: opacity 0.2s linear;
}

.u-hlt_d:hover {
  text-decoration: none !important;
  opacity: 0.6 !important;
  transition: opacity 0.2s linear !important;
}

.u-hlt5:hover {
  opacity: 0.5;
  transition: opacity 0.2s linear;
  text-decoration: none !important;
}

.u-hlt6:hover {
  opacity: 0.6;
  transition: opacity 0.2s linear;
  text-decoration: none !important;
}

.u-hlt7:hover {
  opacity: 0.7;
  transition: opacity 0.2s linear;
  text-decoration: none !important;
}

.u-hlt8:hover {
  opacity: 0.8;
  transition: opacity 0.2s linear;
  text-decoration: none !important;
}

.u-hlt9:hover {
  opacity: 0.9;
  transition: opacity 0.2s linear;
  text-decoration: none !important;
}

/*KOM追加2021/12/23リクルートページ3年年表部分*/
/*タブ切り替え全体のスタイル*/
.tabs {
  margin-top: 50px;
  padding-bottom: 40px;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  max-width: 1010px;
  width: 100%;
  margin: 0 auto 100px auto;
}

/*タブのスタイル*/
.tab_item {
  width: calc(100%/4);
  height: 70px;
  border-bottom: 3px solid #FFDC00;
  background-color: #d9d9d9;
  line-height: 1.2em;
  font-size: 16px;
  text-align: left;
  color: #565656;
  display: block;
  float: left;
  font-weight: bold;
  transition: all 0.2s ease;
  padding-top: 25px;
  padding-left: 70px;
  vertical-align: middle !important;
  letter-spacing: 0em;
}

.tab_item:hover {
  opacity: 0.75;
}

.tab01 {
  background: url(assets/images/recruit/binicon01.png) no-repeat;
  background-size: 40px;
  background-position: 20px;
  background-color: #d9d9d9;
}

.tab02 {
  background: url(assets/images/recruit/binicon02.png) no-repeat;
  background-size: 40px;
  background-position: 20px;
  background-color: #d9d9d9;
}

.tab03 {
  background: url(assets/images/recruit/binicon03.png) no-repeat;
  background-size: 40px;
  background-position: 20px;
  background-color: #d9d9d9;
}

.tab04 {
  background: url(assets/images/recruit/binicon04.png) no-repeat;
  background-size: 40px;
  background-position: 20px;
  background-color: #d9d9d9;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding: 40px 40px 0;
  clear: both;
  overflow: hidden;
}

/*選択されているタブのコンテンツのみを表示*/
#all:checked ~ #all_content,
#programming:checked ~ #programming_content,
#design:checked ~ #design_content,
#test:checked ~ #test_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: #FFDC00;
  color: #606060;
}

.box3yer {
  width: 100%;
  margin: auto;
  background: url(assets/images/recruit/3yer_back.png) no-repeat bottom center;
  background-size: 100%;
  text-align: center;
  padding-bottom: 170px;
}

.img3yer {
  width: 490px !important;
  margin: auto;
  display: block;
}

.box3yer p {
  margin: 50px auto 0 auto;
  text-align: center;
}

.box3yer span {
  font-weight: bold;
}

.box3yer02 {
  width: 980px;
  margin: 50px auto 0 auto;
  text-align: center;
}

.box3yer02 p {
  margin: 30px 0 20px 0;
  text-align: center;
}

.tab01 p {
  display: block;
}

.tab02 p {
  display: block;
}

.tab03 p {
  display: block;
}

.tab04 p {
  display: block;
}

@media only screen and (max-width: 760px) {
  .tab_item {
    width: calc(100%/4);
    height: 100px;
    border-bottom: 3px solid #FFDC00;
    background-color: #d9d9d9;
    line-height: 1.2em;
    font-size: 16px;
    text-align: left;
    color: #565656;
    display: block;
    float: left;
    font-weight: bold;
    transition: all 0.2s ease;
    padding-top: 25px;
    padding-left: 70px;
    vertical-align: middle !important;
    letter-spacing: 0em;
  }
  .box3yer {
    width: 100%;
    margin: auto;
    background: url(assets/images/recruit/3yer_back.png) no-repeat bottom center;
    background-size: 100%;
    text-align: center;
    padding-bottom: 50px;
  }
  .img3yer {
    width: 80% !important;
    margin: auto;
    display: block;
  }
  .box3yer p {
    margin: 50px auto 0 auto;
    text-align: left;
    font-size: 14px;
    width: 90%;
  }
  .box3yer span {
    font-weight: bold;
  }
  .box3yer02 {
    width: 90%;
    margin: 50px auto 0 auto;
    text-align: center;
  }
  .box3yer02 p {
    margin: 30px 0 20px 0;
    text-align: center;
  }
  .tab01 p {
    display: none;
  }
  .tab02 p {
    display: none;
  }
  .tab03 p {
    display: none;
  }
  .tab04 p {
    display: none;
  }
  .tab01 {
    background: url(assets/images/recruit/binicon01s.png) no-repeat;
    background-size: 50px;
    background-position: center;
    background-color: #d9d9d9;
  }
  .tab02 {
    background: url(assets/images/recruit/binicon02s.png) no-repeat;
    background-size: 50px;
    background-position: center;
    background-color: #d9d9d9;
  }
  .tab03 {
    background: url(assets/images/recruit/binicon03s.png) no-repeat;
    background-size: 50px;
    background-position: center;
    background-color: #d9d9d9;
  }
  .tab04 {
    background: url(assets/images/recruit/binicon04s.png) no-repeat;
    background-size: 50px;
    background-position: center;
    background-color: #d9d9d9;
  }
}

.img_pc {
  display: block;
}

.img_sp {
  display: none;
}

@media only screen and (max-width: 760px) {
  .img_pc {
    display: none;
  }
  .img_sp {
    display: block;
  }
}
@media only screen and (min-width: 960px)
{
  .recruit-entry__mynavi {
    padding: 30px !important;
}
}

.recruit-entry__mynavi h4 {
    text-align: center;
    font-weight: bold;
    font-size: 18.2px;
    font-size: 3.79167vw;
    line-height: 1.64835;
    margin-bottom: 5px;
}@media only screen and (min-width: 480px){
  .recruit-entry__mynavi h4 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 16px;
    line-height: 1.6rem;
    margin-bottom: 20px;
}
}

.recruit-entry__mynavi p {
    text-align: center;
    font-weight: normal;
    font-size: 18.2px;
    font-size: 3.79167vw;
    line-height: 1.64835;
}
@media only screen and (min-width: 480px){
  .recruit-entry__mynavi p {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 26px;
    line-height: 2.6rem;
}
}
.recruit-entry__mynavi_inner{
  display: flex;
  align-items: center;
  width: 100%;
  margin: 20px auto 0;
  flex-wrap: wrap;
  justify-content: center;
}
@media only screen and (min-width: 480px){
  .recruit-entry__mynavi_inner{
    justify-content: space-between;
    max-width: 510px;
  }
}
.recruit-entry__mynavi_inner-L{
flex-basis: 100%;
text-align: center;
}
@media only screen and (min-width: 480px){
  .recruit-entry__mynavi_inner-L{
    flex-basis: 220px;
    }
}
.recruit-entry__mynavi_inner-L img{
  max-width: 220px;
width: 100%;
}
.recruit-entry__mynavi_inner-R{
  flex-basis: 100%;
  margin-top: 15px;
}
@media only screen and (min-width: 480px){
  .recruit-entry__mynavi_inner-R{
    flex-basis: 260px;
    margin-top: 0px;
    }
}
.p-button_blank.p-button{
  line-height: 52px;
}
.p-button_blank.p-button span{
  position: relative;
}
.p-button_blank.p-button span::after {
  padding-left: 35px;
  content: '';
  background: url(assets/images/recruit/recruit_ic_blank.svg) no-repeat center;
  background-size: 20px 20px;
  position: absolute;
  height: 20px;
  top: 50%;
  transform: translate(0%, -50%);
  z-index: 1;
}

