@charset "UTF-8";
/*-----------------
 * En Studio for Sites by 中の人
 * Version 1.0.0
 * .com
-----------------*/

/*-----------------
* content @media ()
* 1170px
* 970px
* 750px
* 640px 必要に応追加
*------------------
* 1199px
* 992px
* max-width: 767px

* 日本語font
* sans-serif
*  Win(Vista以降),  OSX          ,   iOS6以降       ,  Android4以降
*  Meiryo,         HiraKakuPro-W6,  HiraKakuProN-W6,  Roboto
* serif
*  Win(8.1以降), OSX & iOS6以降, Android
*  Yu Mincho,   HiraMinProN-W6, Droid Sans
* -----------------
* @media screen and (orientation: landscape) {  /* 画面横
* @media screen and (orientation: portrait) {   /* 画面縦
* @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) { /* Retina 対応

* base color #f39800 (オレンジ)

*/

/*-----------------
* General
-----------------*/
body {
  color: #555;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0rem;
  font-family: 'Meiryo', 'HiraKakuPro-W6', 'HiraKakuProN-W6', 'Roboto', sans-serif;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {

  /* Retina 対応 */
  body {
    font-size: 1.4rem !important;
    /* Global Nav と合わせる */
  }
}



#wrapper {
  background-color: #f0f0f0;
}

/* sans-serif */
h1,
h2,
h3,
h4,
h5,
h6,
small,
.font-body,
.font-primary,
#logo,
#primary-menu ul li>a,
#primary-menu ul li .mega-menu-content.style-2 ul.mega-menu-column>li.mega-menu-title>a,
#top-search form input,
#top-account .dropdown-menu li a,
.entry-link,
.entry.entry-date-section span,
.button.button-desc,
ul.tab-nav-lg li a,
.counter,
.skills li .progress-percent .counter,
label,
.widget-filter-links li a,
.nav-tree li a,
.nav-tree ul ul a,
.wp-caption,
.feature-box.fbox-center.fbox-italic p,
.skills li .progress-percent .counter,
.nav-tree ul ul a {
  font-family: 'Meiryo, HiraKakuPro-W6, HiraKakuProN-W6, Roboto', sans-serif;
}

/* serif italic */
.entry-meta li,
.entry-link span,
.entry blockquote p,
.font-secondary,
.more-link,
.button.button-desc span,
.feature-box.fbox-center.fbox-italic p,
.testi-content p,
.team-title span,
.before-heading,
.comment-content .comment-author span,
.comment-content .comment-author span a {
  font-family: 'Yu Mincho, Hiragino Kaku Gothic ProN, Droid Sans', serif;
  font-style: italic;
}

body,
main {
  margin: 0;
  padding: 0;
}

p {
  letter-spacing: .1em;
  margin-bottom: 0;
}

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border-top: 1px solid #ddd !important;
}

/*-- タイトル ベースカラー ---*/
.title_orange {
  color: #f39800;
}

/*--- font-spacing 調整 ---*/


.spacing03 {
  letter-spacing: .3rem;
}

.spacing05 {
  letter-spacing: .5rem;
}

.spacing10 {
  letter-spacing: 1.1rem;
}

.spacing11 {
  letter-spacing: 1.11rem;
}

.spacing12 {
  letter-spacing: 1.12rem;
}

.spacing13 {
  letter-spacing: 1.13rem;
}

.spacing14 {
  letter-spacing: 1.14rem;
}

.spacing15 {
  letter-spacing: 1.15rem;
}

.spacing16 {
  letter-spacing: 1.16rem;
}

.spacing17 {
  letter-spacing: 1.17rem;
}

.spacing18 {
  letter-spacing: 1.18rem;
}

@media (max-width: 960px) {

  .spacing03,
  .spacing05,
  .spacing10,
  .spacing11,
  .spacing12,
  .spacing13,
  .spacing14,
  .spacing15,
  .spacing16,
  .spacing17,
  .spacing18 {
    letter-spacing: normal;
  }
}

/*-----------------
* カラム等のmargin値では空白無し
* 以下のSpacerにて対応
-----------------*/
.spacer1vw,
.spacer2vw,
.spacer3vw,
.spacer4vw,
.spacer5vw,
.spacer6vw,
.spacer7vw,
.spacer8vw,
.spacer10,
.spacer20,
.spacer30,
.spacer40,
.spacer50,
.spacer60,
.spacer70,
.spacer80 {
  content: ".";
  clear: both;
  display: block;
  visibility: hidden;
  line-height: 0;
  float: none;
  width: 100%;
  margin: 0;
  padding: 0;
}



.spacer1vw {
  height: 1%;
  height: 1vw;
}

.spacer2vw {
  height: 2%;
  height: 2vw;
}

.spacer3vw {
  height: 3%;
  height: 3vw;
}

.spacer4vw {
  height: 4%;
  height: 4vw;
}

.spacer5vw {
  height: 5%;
  height: 5vw;
}

.spacer6vw {
  height: 6%;
  height: 6vw;
}

.spacer7vw {
  height: 7%;
  height: 7vw;
}

.spacer8vw {
  height: 8%;
  height: 8vw;
}

.spacer9vw {
  height: 9%;
  height: 9vw;
}

.spacer10vw {
  height: 10%;
  height: 10vw;
}

.spacer100vw {
  height: 100px;
  height: 25vw;
}

.spacer200vw {
  height: 200px;
  height: 50vw;
}

@media (max-width: 960px) {

  .spacer5vw,
  .spacer6vw,
  .spacer7vw,
  .spacer8vw,
  .spacer9vw,
  .spacer10vw,
  .spacer100vw,
  .spacer200vw {
    height: 1%;
    height: 1vw;
  }
}

.spacer5 {
  height: 5px;
}

.spacer10 {
  height: 10px;
}

.spacer20 {
  height: 20px;
}

.spacer30 {
  height: 30px;
}

.spacer40 {
  height: 40px;
}

.spacer50 {
  height: 50px;
}

.spacer60 {
  height: 60px;
}

.spacer70 {
  height: 70px;
}

.spacer80 {
  height: 80px;
}

.spacer90 {
  height: 90px;
}

.spacer100 {
  height: 100px;
}

.spacer110 {
  height: 110px;
}

.spacer120 {
  height: 120px;
}

@media (max-width: 960px) {

  .spacer50,
  .spacer60,
  .spacer70,
  .spacer80,
  .spacer90,
  .spacer100,
  .spacer110,
  .spacer120 {
    height: 40px;
  }
}

@media (max-width: 980px) {
  .spacer_mobile {
    height: 60px;
  }
}

.col_margin_all5 {
  margin: 5px !important;
}

.col_margin_all10 {
  margin: 10px !important;
}

.col_margin_all15 {
  margin: 15px !important;
}

.col_margin_all20 {
  margin: 20px !important;
}

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

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

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

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

.col_margin_lr5 {
  margin-left: 5px !important;
  margin-right: 5px !important;
}

.col_margin_lr10 {
  margin-left: 10px !important;
  margin-right: 10px !important;
}

.col_margin_lr15 {
  margin-left: 15px !important;
  margin-right: 15px !important;
}

.col_margin_lr20 {
  margin-left: 20px !important;
  margin-right: 20px !important;
}

.col_padding_all5 {
  padding: 5px !important;
}

.col_padding_all10 {
  padding: 10px !important;
}

.col_padding_all15 {
  padding: 15px !important;
}

.col_padding_all20 {
  padding: 20px !important;
}

.col_padding_tb5 {
  padding-top: 5px !important;
  margin-bottom: 5px !important;
}

.col_padding_tb10 {
  padding-top: 10px !important;
  margin-bottom: 10px !important;
}

.col_padding_tb15 {
  padding-top: 15px !important;
  margin-bottom: 15px !important;
}

.col_padding_tb20 {
  padding-top: 20px !important;
  margin-bottom: 20px !important;
}

.col_padding_lr5 {
  padding-left: 5px !important;
  margin-right: 5px !important;
}

.col_padding_lr10 {
  padding-left: 10px !important;
  margin-right: 10px !important;
}

.col_padding_lr15 {
  padding-left: 15px !important;
  margin-right: 15px !important;
}

.col_padding_lr20 {
  padding-left: 20px !important;
  margin-right: 20px !important;
}

/*-- col共通 幅調整 --*/
@media (min-width: 768px) {

  /* width % (Android Browser) */
  .col_half {
    width: 48.75%;
    width: calc(97.975% / 2);
  }

  /* OG 40% 2column */
  .col_one_third {
    width: 31.75%;
    width: calc(95.5% / 3);
  }

  /* OG 30.63% 3column */
  .col_one_fourth {
    width: 23.25%;
    width: calc(93.15% / 4);
  }

  /* OG 22% 4column */
  .col_two_fifth {
    width: 37.6%;
  }

  .spacer .col-md_add p {
    font-size: 1.2rem;
    letter-spacing: .15rem;
  }

  .col_full {
    font-size: 1.2rem;
    letter-spacing: .15rem;
    margin-bottom: 2.25%;
  }

  .col_half,
  .col_one_third,
  .col_one_fourth,
  .col_two_fifth,
  .col_one_sixth,
  .col_three_fourth,
  .col_two_third,
  .col_three_fifth {
    /* font-size: 1.2rem !important; */
    /* letter-spacing: .15rem !important; */
    margin-right: 2%;
    margin-bottom: 2.25%;
  }

  .col_three_fourth {
    width: 74.35%;
  }

  .col_two_third {
    width: 65.85%;
  }

  .col_three_fifth {
    width: 60.15%;
  }

  .col_three_fourth {
    margin-right: 2.25%;
    margin-bottom: 2.25%;
  }

  .col_two_third {
    margin-right: 2.25%;
    margin-bottom: 2.25%;
  }

  .col_three_fifth {
    margin-right: 2.25%;
    margin-bottom: 2.25%;
  }
}

@media (max-width: 767px) {

  .postcontent,
  .postcontent,
  .bothsidebar,
  .sidebar,
  .col_full,
  .col_half,
  .col_one_third,
  .col_two_third,
  .col_three_fourth,
  .col_one_fourth,
  .col_one_fifth,
  .col_two_fifth,
  .col_three_fifth,
  .col_four_fifth,
  .col_one_sixth,
  .col_five_sixth {
    width: 100%;
    margin-right: 0;
    float: none;
    margin-bottom: 2% !important;
  }
}

.show-grid [class^="col_"] {
  padding: 10px 10px;
  background-color: #eee;
  border: 1px solid #ddd;
  text-overflow: ellipsis;
  display: inline-block;
  word-wrap: break-word;
}

@media (max-width: 640px) {
  .sp_spacer10 {
    content: ".";
    clear: both;
    display: block;
    visibility: hidden;
    line-height: 0;
    float: none;
    width: 100%;
    margin: 0;
    padding: 0;
    height: 10px;
  }
}

.spacer_height {
  display: block;
  position: relative;
  content: "&nbsp;";
  top: 0;
  left: 100px;
  height: 300px;
  /*calc(99% / 5);/*893px);*/
  width: 100px;
  margin: 0;
  padding: 0;
  z-index: 10px;
}

/*-----------------
* 他設定
* 幅は個別設定
-----------------*/
.swiper-slide [data-caption-animate] {
  -webkit-backface-visibility: visibility;
}

/*-- button link等 ---*/
.button-circle {
  border-radius: 20px;
  border: 1px solid #999;
  margin: 0 auto;
  padding: 1px 1rem;
  text-align: center;
}

/*--- 折り返し ---*/
.nowrap {
  white-space: nowrap;
}

/* 無し */
@media (max-width: 960px) {
  .nowrap {
    white-space: normal;
  }

  /* 折り返し戻す */
}

/*--- <br>等 強制改行 ---*/
.br::before {
  /* <span class="br"> */
  content: "\A";
  white-space: pre;
}

/* smartphone 文字改行 */
/*@media (max-width: 640px) {*/
@media (max-width: 1025px) {
  .br_640::before {
    content: "\A";
    white-space: pre;
  }

  .kill_text {
    /* 特定の文字 半角スペース含む時kill <span class="kill_text"> */
    font-size: 0;
    content: "";
    visibility: hidden;
  }
}

@media (max-width: 640px) {
  .divcenter_mobile_s {
    /* mobile カラム内を含むcenter */
    position: relative !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/*--- light box close ---*/
.mfp-close {
  width: 64px;
  height: 64px;
  line-height: 64px;
  right: 10px;
  top: 0px;
  opacity: .65;
  padding: 0 0 18px 10px;
  font-style: normal;
  font-size: 48px !important;
}

/*-----------------
* header
-----------------*/
#slider {
  z-index: 9 !important;
}

/*--- header backgrand ---*/
body#home #slider .swiper-slide.dark {
  /* homeのみ */
  /* height: 853px !important;*/
  background-image: url('../../images/top_backgrand_1920_853.jpg');
  background-position: center top !important;
  background-repeat: no-repeat;
}

@media (min-width: 641px) and (max-width: 1024px) {

  /* タブレット縦 */
  body#home #slider .swiper-slide.dark {
    /* homeのみ */
    height: 455px !important;
    background-image: url('../../images/top_backgrand_1024_455.jpg');
  }
}

@media (max-width: 640px) {

  /* タブレット縦 */
  body#home #slider .swiper-slide.dark {
    /* homeのみ */
    min-height: 284px !important;
    background-image: url('../../images/top_backgrand_640_284.jpg');
    background-position: center top !important;
    background-repeat: no-repeat;
    /*  background-size:cover;*/
    background-size: contain;
    /*  background-size: auto 100%;/* 284px;/*auto;*/
  }
}

#slider .swiper-slide.dark {
  /* home以外は高さ調整 */
  background-image: url('../../images/page_backgrand_1920_622.jpg');
  background-position: center top !important;
  background-repeat: no-repeat;
  background-size: cover;
  /*contain;*/
  /*background-size: 100% auto;*/
  overflow: hidden
}

@media (min-width: 960px) and (max-width: 3840px) {

  /* タブレット横 & PC */
  #slider .swiper-slide.dark {
    /* home以外は高さ調整 */
    height: 622px !important;
    /* 425px;*/
    /*  background-image: url('../../images/page_backgrand_1920_622.jpg');*/
    background-size: 100% auto;
  }
}

@media (max-width: 960px) {

  /* タブレット縦 */
  #slider .swiper-slide.dark {
    height: 332px !important;
    background-image: url('../../images/page_backgrand_1024_322.jpg');
    background-size: cover;
    background-size: 100% auto;
  }
}

@media (max-width: 640px) {

  /* smartPhone */
  #slider .swiper-slide.dark {
    height: 207px !important;
    background-image: url('../../images/page_backgrand_640_207.jpg');
    background-size: cover;
    /*  background-size: 100% 207px;*/
  }
}

/*-- header slide 文字 --*/
#slider:not(.swiper_wrapper) .slider-caption {
  display: inherit !important;
}

#slider:not(.swiper_wrapper) .slider-caption p {
  /* none戻す */
  display: inherit !important;
}

#home .slider-caption h2 {
  font-size: 6rem;
  letter-spacing: 2px;
  text-transform: none !important;
  font-weight: 700;
  line-height: 1;
  margin-top: 0 !important;
}

.slider-caption h2 {
  font-size: 6rem;
  letter-spacing: 2px;
  text-transform: none !important;
  font-weight: 700;
  line-height: 1;
  margin-top: 0px !important;
}

#home .slider-caption p {
  font-size: 2rem;
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.slider-caption p {
  font-size: 1.6rem;
  margin-top: 0px !important;
}

@media (min-width: 960px) and (max-width: 3840px) {

  /* タブレット横 & PC */
  .slider-caption.slider-caption-center {
    /* default width */
    max-width: 1000px !important;
  }
}

/*---  文字slide位置 ---*/
@media (min-width: 1381px) and (max-width: 3840px) {

  /* PC 4K */
  #home .slider-caption h2 {
    font-size: 6rem;
    margin-top: 35px !important;
  }

  .slider-caption h2 {
    font-size: 5rem;
    margin-top: -110px !important;
  }

  #home .slider-caption p {
    font-size: 2rem;
  }

  .slider-caption p {
    font-size: 1.6rem;
  }
}

@media (min-width: 1281px) and (max-width: 1380px) {

  /* PC */
  #home .slider-caption h2 {
    font-size: 6rem;
    margin-top: 25px !important;
  }

  .slider-caption h2 {
    font-size: 5rem;
    margin-top: -140px !important;
  }

  #home .slider-caption p {
    font-size: 2rem;
  }

  .slider-caption p {
    font-size: 1.6rem;
  }
}

@media (min-width: 1025px) and (max-width: 1280px) {
  #home .slider-caption h2 {
    font-size: 5rem;
    margin-top: 15px !important;
  }

  .slider-caption h2 {
    font-size: 5rem;
    margin-top: -155px !important;
  }

  #home .slider-caption p {
    font-size: 2rem;
  }

  .slider-caption p {
    font-size: 1.6rem;
  }
}

@media (min-width: 992px) and (max-width: 1024px) {
  #home .slider-caption h2 {
    font-size: 4.5rem;
    margin-top: 20px !important;
  }

  .slider-caption h2 {
    font-size: 4rem;
    margin-top: -170px !important;
  }

  #home .slider-caption p {
    font-size: 1.6rem;
  }

  .slider-caption p {
    font-size: 1.6rem;
  }
}

@media (min-width: 961px) and (max-width: 991px) {
  #home .slider-caption h2 {
    font-size: 4.5rem;
    margin-top: 20px !important;
  }

  .slider-caption h2 {
    font-size: 4rem;
    margin-top: -130px !important;
  }

  #home .slider-caption p {
    font-size: 1.6rem;
  }

  .slider-caption p {
    font-size: 1.6rem;
  }
}

@media (min-width: 641px) and (max-width: 960px) {
  #home .slider-caption h2 {
    font-size: 3rem;
    margin-top: -40px !important;
  }

  .slider-caption h2 {
    font-size: 3rem;
    margin-top: -20px !important;
  }

  #home .slider-caption p {
    font-size: 1.6rem;
  }

  .slider-caption p {
    font-size: 1.6rem;
  }
}

@media (min-width: 421px) and (max-width: 640px) {
  #home .slider-caption h2 {
    font-size: 3rem;
    margin-top: -35px !important;
  }

  .slider-caption h2 {
    font-size: 2rem;
    margin-top: -15px !important;
  }

  #home .slider-caption p {
    font-size: 1.6rem;
  }

  .slider-caption p {
    font-size: 1.6rem;
  }
}

@media (min-width: 270px) and (max-width: 420px) {

  /* xss */
  #home .slider-caption h2 {
    font-size: 2.8rem;
    margin-top: -65px !important;
  }

  .slider-caption h2 {
    font-size: 2rem;
    margin-top: -10px !important;
    font-weight: 500;
  }

  #home .slider-caption p {
    font-size: 1.4rem;
  }

  .slider-caption p {
    font-size: 1rem;
  }
}


@media (min-width: 960px) and (max-width: 3840px) {

  /* タブレット横 & PC */
  body: (not)#home .slider-caption.slider-caption-center {
    max-width: 1000px !important;
  }
}

@media (max-width: 960px) {

  /* タブレット縦 */
  body#home .slider-caption.slider-caption-center {}
}

@media (max-width: 960px) {
  /* タブレット縦 */
}

@media (max-width: 767px) {
  /* smartPhone */
}

.heading-block h1 {
  text-transform: capitalize;
}

.heading-block::after {
  content: '';
  display: block;
  margin-top: 30px;
  width: 40px;
  border-top: 0;
  border-top-color: rgb(0, 0, 0);
}

/*-----------------
* global menu
* 基本rem ベースのfont-size: 12px;
-----------------*/
.top_link {
  /* menu トップのみ幅指定 */
  width: 72px;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {

  /* Retina 対応 */
  #primary-menu ul li>a {
    font-size: 1.2rem;
  }
}

/*---------------------------*/
#header,
#header-wrap {
  height: 80px !important;
  /* 100px */
}

/*---------------------------*/
#header.sticky-header:not(.static-sticky) #header-wrap {
  height: 60px !important;
}

body.stretched #header.full-header .container {
  width: 100%;
  padding: 0 30px;
}

/*--- Menu nav 枠 boader bottom kill ---*/
#header.transparent-header.full-header #header-wrap {
  border-bottom: none !important;
}

/*--- Menu nav 枠 boader ---*/
#primary-menu.sub-title>ul>li {
  background: none !important;
  /* backgrand img kill */
}

#header.transparent-header.dark.full-header #primary-menu.sub-title>ul>li {
  border-bottom: 1px solid #444 !important;
}

#header.transparent-header.dark.full-header #primary-menu.sub-title>ul>li:first-child {
  border-left: 1px solid #444 !important;
}

#header.transparent-header.dark.full-header #primary-menu.sub-title>ul>li {
  border-right: 1px solid #444 !important;
}

#header.sticky-header #primary-menu.sub-title>ul>li:first-child {
  border-left: 1px solid #aaa;
}

#header.sticky-header #primary-menu.sub-title>ul>li {
  border-right: 1px solid #ccc;
}

#header.sticky-header #primary-menu.sub-title>ul>li>ul>li {
  border-top: 1px solid #ccc;
}

/*--- stickyの場合 backgrand color ---*/
#header.full-header.sticky-header #header-wrap.not-dark {
  /* color: #fff;*/
  background-color: rgb(255, 255, 255, .8);
}

/*--- pulldown PC ---*/
.dark #primary-menu:not(.not-dark) ul ul {
  background-color: rgb(45, 45, 45, .9) !important;
}

.dark #primary-menu:not(.not-dark) ul ul li {
  border-top: 1px solid #999;
}

/*--- ハンバーガーメニューアイコン ---*/
#primary-menu-trigger {
  width: 50px !important;
  height: 50px !important;
  font-size: 27px !important;
  line-height: 15px !important;
  left: 7px !important;
}

#primary-menu-trigger>span {
  display: inline-block;
  color: #fff;
}

/*-- nav logo 初期値 ---*/
#logo {
  margin-right: 0 !important;
  padding-right: 0 !important;
}

#header>#logo>img {
  width: 325px !important;
  height: 80px !important;
}

/*--- logo width 調整 */
@media (min-width: 992px) and (max-width: 1050px) {
  #logo {
    width: 260px;
  }
}

@media (max-width: 991px) {
  #header #logo {
    width: 100% !important;
    height: 80px !important;
  }

  #header #logo img {
    margin: 0 auto;
  }
}

@media(max-width: 991px) {
  #header.dark.transparent-header {
    background-color: rgb(235, 235, 235 .8) !important;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
  }
}

/*--- Primary Menu - Style 6 Sub Title ---*/
#header.full-header #primary-menu>ul {
  /* menu padding左右 */
  padding-right: 0px;
  margin-right: 0px;
  border-right: none;
  border-right-color: rgb(238, 238, 238);
}

/*-- pulldown menu arrow  ---*/
#primary-menu ul li>a i.icon-angle-down:last-child {
  font-size: 16px;
  font-weight: 400;
}

/*--- PC以外 pulldown menu --*/
@media (max-width: 991px) {
  #primary-menu ul.sf-js-enabled.show {
    background-color: #333 !important;
  }

  #primary-menu ul>li>a {
    padding: 18px 10px !important;
  }
}

/* link hover color */
.dark #primary-menu.sub-title:not(.not-dark)>ul>li>a:hover {
  background-color: #ffa346 !important;
}

.dark #primary-menu.sub-title:not(.not-dark)>ul>li>a:hover span {
  color: #fff !important;
}

/* ページアクティブカラー */
#primary-menu.sub-title>ul>li.current>a {
  background-color: #ffa346 !important;
  /*#ffa346*/
}

#primary-menu.sub-title>ul>li>ul>li.current>a {
  /* sub menu アクティブカラー */
  background-color: #ffa346 !important;
  color: #fff !important;
}

#primary-menu.style-6>ul>li>a::after,
#primary-menu.style-6>ul>li.current>a::after {
  /* ページアクティブカラー */
  border-top: 2px solid #ffa346 !important;
}

.dark #primary-menu.sub-title:not(.not-dark)>ul>li>a span {
  color: #aaa !important;
  font-size: 10px;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-device-pixel-ratio: 2) {

  /* Retina 対応 */
  .dark #primary-menu.sub-title:not(.not-dark)>ul>li>a span {
    color: #aaa !important;
    font-size: .85em;
  }
}

#header.transparent-header.dark:not(.sticky-header).full-header #header-wrap:not(.not-dark) #logo {
  padding-right: 0px;
  /*30px;*/
  margin-right: 0px;
  /*30px;*/
  border-right: none;
  /*1px solid #EEE;*/
  /*  height: 80px;*/
}

#header.transparent-header.full-header #logo {
  padding-right: 0px;
  /*30px;*/
  margin-right: 0px;
  /*30px;*/
  border-right: none;
  /*1px solid #EEE;*/
}

/* global nav menu 調整 */
#primary-menu.sub-title>ul>li>a,
#primary-menu.sub-title>div>ul>li>a {
  line-height: 14px;
  padding: 30px 12px 30px 12px;
  text-transform: none;
  /*capitalize;*/
  text-align: center;
  border-top: 5px solid transparent;
}

@media screen and (orientation: landscape) and (max-width: 960px) {

  /* 横向きメニュー調整 */
  #primary-menu.sub-title>ul>li>a,
  #primary-menu.sub-title>div>ul>li>a {
    text-align: left;
  }
}

#header.sticky-header:not(.static-sticky) #header-wrap .container {
  height: 60px;
}

#header.sticky-header:not(.static-sticky) #primary-menu.sub-title ul li span {
  display: inline;
}

#header.sticky-header:not(.static-sticky) #primary-menu.sub-title>ul>li>a,
#header.sticky-header:not(.static-sticky) #primary-menu.sub-title>div>ul>li>a {
  line-height: 14px;
  padding: 23px 10px;
  /*15px;*/
  text-transform: none;
  font-size: 14px;
  text-align: center;
}

#header.sticky-header:not(.static-sticky) #primary-menu.sub-title>div>ul>li>a span {
  font-size: 10px;
}

@media (max-width: 991px) {

  /* メニュー日本語部 */
  #primary-menu.sub-title ul li>a div {
    display: inline-block !important;
  }

  #primary-menu.sub-title ul li>a span {
    display: inline-block !important;
    margin: 0 0 0 .85em;
    padding: 0;
  }
}


/*----------------
* main content
----------------*/


main.main {
  position: relative;
  /*display:flex;*/
  margin-bottom: -90px;
}

@media (max-width: 960px) {
  main.main {
    margin-bottom: 0px;
  }
}

.content-wrap {
  position: relative;
  padding: 0 !important;
}

#content {
  position: relative !important;
  top: 0px !important;
  ;
  z-index: 10px;
  background-color: transparent !important;
}

@media (min-width: 1921px) and (max-width: 3840px) {

  /* PC 4K */
  body#home #content {
    margin-top: calc(660px - 853px);
  }

  #content.content_top {
    margin-top: calc(400px - 622px);
  }
}

@media (min-width: 1381px) and (max-width: 1920px) {

  /* PC width */
  body#home #content {
    margin-top: calc(660px - 853px);
  }

  #content.content_top {
    margin-top: calc(250px - 622px);
  }
}

@media (min-width: 1281px) and (max-width: 1380px) {
  body#home #content {
    margin-top: calc(650px - 853px);
  }

  #content.content_top {
    margin-top: calc(230px - 622px);
  }
}

@media (min-width: 1021px) and (max-width: 1280px) {
  body#home #content {
    margin-top: -20%;
  }

  #content.content_top {
    margin-top: calc(220px - 633px);
  }
}

@media (min-width: 1099px) and (max-width: 1200px) {
  body#home #content {
    margin-top: -27%;
  }

  #content.content_top {
    margin-top: calc(220px - 633px);
  }
}

@media (min-width: 1025px) and (max-width: 1098px) {
  body#home #content {
    margin-top: -31%;
  }

  #content.content_top {
    margin-top: calc(220px - 633px);
  }
}

@media (min-width: 992px) and (max-width: 1024px) {
  body#home #content {
    margin-top: -18%;
  }

  #content.content_top {
    margin-top: -45%;
  }
}

@media (min-width: 961px) and (max-width: 991px) {
  body#home #content {
    margin-top: -13%;
  }

  #content.content_top {
    margin-top: -37%;
  }
}

@media (min-width: 861px) and (max-width: 960px) {
  body#home #content {
    margin-top: -14%;
  }

  #content.content_top {
    margin-top: -13%;
  }
}

@media (min-width: 768px) and (max-width: 860px) {
  body#home #content {
    margin-top: -22%;
  }

  #content.content_top {
    margin-top: -13%;
  }
}

@media (min-width: 641px) and (max-width: 767px) {
  body#home #content {
    margin-top: -34%;
  }

  #content.content_top {
    margin-top: -19%;
  }
}

@media (min-width: 481px) and (max-width: 640px) {
  body#home #content {
    margin-top: -23%;
  }

  #content.content_top {
    margin-top: -8%;
  }
}

@media (min-width: 421px) and (max-width: 480px) {
  body#home #content {
    margin-top: -34%;
  }

  #content.content_top {
    margin-top: -8%;
  }
}

@media (min-width: 400px) and (max-width: 420px) {

  /* xss */
  body#home #content {
    margin-top: -47%;
  }

  #content.content_top {
    margin-top: -7%;
  }
}

@media (min-width: 270px) and (max-width: 399px) {

  /* xss */
  body#home #content {
    margin-top: -59%;
  }

  #content.content_top {
    margin-top: -7%;
  }
}

#content .container.content_bg {
  background-color: rgba(255, 255, 255, 1);
}

#waku {
  margin-bottom: 10%
}

#aki {
  padding-right: 50px
}




.breadcrumb {
  position: absolute !important;
  width: auto !important;
  top: 5px !important;
  left: 15px !important;
  margin: 5px 0 10px 0 !important;
  background-color: transparent !important;
  padding: 0 !important;
  font-size: 12px;
}

.col_one_box_min_180 {
  display: block;
  height: 180px;
  min-height: 180px;
}

.col_one_box_min_240 {
  display: block;
  height: 240px;
  min-height: 240px;
  padding: 10px;
  background-color: #ddd;
}

.box_w_100 {
  display: block;
  width: 100px;
  margin: 0;
  padding: 0;
}

.box_w_120 {
  display: block;
  max-width: 120px;
}

#content .container h1,
h2,
h3,
h4,
h5,
h6 {
  /* container title */
  /*  color: #444;*/
  font-weight: 400;
  line-height: 1 !important;
  margin: 0 0 1.6% 0 !important;
  margin: 0 0 1.6vh 0 !important;
}

.sidebar>address,
.sidebar>abbr {
  font-size: 1.2em !important;
}

/*--- コンテンツ内 Box枠 ---*/
.content_box {
  width: 120px;
  height: 120px;
  margin: 0;
  padding: 50px 15px;
}

/*-----------------
* side bar
-----------------*/

/*-----------------
 * home
 ----------------*/

/* home 上部5カラム */
#home .col_one_fifth {
  margin-right: 1%;
   !important;
}

/*-----------------
* coop
-----------------*/
.coop.col_one_fourth {
  width: 130px;
  padding-left: 10px;
}

.coop.col_half {
  width: 60%;
}

@media (max-width: 960px) {
  .coop.col_half {
    width: 100%;
  }
}

/*-----------------
* system page
-----------------*/
.step_box_black {
  display: block;
  width: 100px;
  height: 80px;
  background-color: #54637d;
  color: #fff;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  margin: 0;
  padding: 25px 10px;
}

.sys_paragraph_orange {
  font-size: 19px;
  font-weight: 400;
  color: #f39800;
  padding-left: 3rem;
}

.sys_paragraph_left {
  padding-left: 2.8rem;
}

.sys.icon-caret-down {
  font-size: 60px;
  color: #ccc;
  line-height: 3rem;
  padding-top: 15px;
}

@media (min-width: 641px) and (max-width: 991px) {
  .sys.col_one_sixth {}

  .sys.col_five_sixth {
    /*    padding-left: 70px !important;*/
    margin-left: 20px;
    top: 16px;
  }

  .step_box_black {
    width: 80px;
    height: 60px;
    font-size: 16px;
    font-weight: 300;
    padding: 20px 2px;
  }

  .sys_paragraph_orange {
    font-size: 16px;
    font-weight: 100;
    padding-left: 3rem;
  }

  .sys_paragraph_left {
    padding-top: 1.3rem;
    padding-left: 3rem;
  }
}

@media (max-width: 640px) {
  .sys.col_five_sixth {}

  .step_box_black {
    width: 60px;
    height: 60px;
    font-size: 14px;
    font-weight: 100;
    padding: 20px 2px;
    margin: 0 auto;
  }

  .sys_paragraph_orange {
    font-size: 14px;
    font-weight: 100;
    text-align: center;
  }

  .sys_paragraph_left {
    padding-top: 1rem;
    padding-left: 0;
  }

  .sys.icon-caret-down {
    font-size: 60px;
    color: #ccc;
    line-height: 2rem;
    padding-top: 15px;
  }
}

/*-----------------
* new system
-----------------*/
.new.col_half {
  height: 80px;
  background-color: #eee;
  border: 1px solid #ccc;
}

.new_box_orange {
  display: block;
  width: 74px;
  height: 60px;
  background-color: #f39800;
  color: #fff;
  font-size: 12px;
  font-weight: 100;
  text-align: center;
  margin: 0;
  padding: 10px;
}

@media (min-width: 1025px) and (max-width: 3840px) {

  /* タブレット横 & PC */
  .box_orange_outer {
    width: 100%;
    height: 8rem;
  }

  .box_orange_outer2 {
    width: 100%;
    height: 8.5rem;
  }

  .new_paragraph_left {
    padding-left: 3rem;
  }
}

@media (min-width: 971px) and (max-width: 1024px) {
  .new.col_half {
    height: 80px;
    background-color: #eee;
    border: 1px solid #ccc;
  }

  .box_orange_outer {
    width: 100%;
    height: 8rem;
  }

  .box_orange_outer2 {
    width: 100%;
    height: 15rem;
  }

  .new_paragraph_left {
    padding-left: 5.5rem;
  }
}

@media (min-width: 641px) and (max-width: 970px) {
  .new.col_half {
    height: 90px;
    background-color: #eee;
    border: 1px solid #ccc;
  }

  .box_orange_outer {
    width: 100%;
    height: 8rem;
  }

  .box_orange_outer2 {
    width: 100%;
    height: 15rem;
  }

  .new_paragraph_left {
    padding-left: 4.5rem;
  }
}

@media (max-width: 640px) {
  .new.col_one_sixth {
    width: 64px;
    height: 50px;
  }

  .new.col_five_sixth {
    top: -60px;
    width: 76%;
    margin-left: 73px !important;
  }

  .col_padding_all20 {
    padding: 5px !important;
  }

  .new_box_orange {
    width: 64px;
    height: 50px;
    padding: 3px;
  }

  .box_orange_outer {
    width: 100%;
    height: 8rem;
  }

  .box_orange_outer2 {
    width: 100%;
    height: 15rem;
  }

  .new_paragraph_left {
    padding-left: .5rem;
  }
}

/*-----------------
* FAQ
-----------------*/
.faq_box_orange {
  /* Q部 */
  display: block;
  width: 46px;
  height: 46px;
  background-color: #f39800;
  color: #fff;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  margin: 0;
  padding: 10px;
}

.faq_box_glay {
  /* A部 */
  display: block;
  width: 46px;
  height: 46px;
  background-color: #ccc;
  color: #000;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  margin: 0;
  padding: 10px;
}

.faq_box_digit {
  /* 2桁の場合 */
  width: 58px;
}

.faq_add {
  /* A部のテキスト調整 */
  position: relative;
  top: -4px;
  padding-left: 2rem;
}

.faq_paragraph_orange {
  font-size: 19px;
  color: #f39800;
  padding-top: 7px;
  padding-left: 2rem;
}

@media (max-width: 640px) {
  .faq.col_one_sixth {
    float: left;
    width: 50px;
  }

  .faq.col_five_sixth {
    padding-left: 5px !important;
  }

  .faq_box_orange,
  .faq_box_glay {
    padding: 10px 5px;
    margin-bottom: 10px;
  }

  .fright {
    /* spの場合 テレコにする */
    float: left !important;
  }

  .faq_box_digit {
    /* 2桁の場合 */
    width: 48px;
  }

  .faq_paragraph_orange {
    position: relative;
    font-size: 13px;
    color: #f39800;
    padding-top: 0;
    padding-left: 1px !important;
    top: 0px;
  }
}

.col_full.fqa_col_full {
  padding: 0 5%;
}

/*-----------------
* Interview 面接 page
-----------------*/
.inter.col_one_third {
  margin-right: 1.5% !important;
}

/*-----------------
* achieve 実績紹介
-----------------*/
.achieve.col_one_third {
  margin-right: 1.5% !important;
}

/*-----------------
* contact form
* input等の装飾はしない 赤枠error対策
-----------------*/
.form_span_required {
  position: relative;
  padding: 0;
  font-size: .95em;
  color: #E42C3E;
  bottom: 0px;
}

/*-----------------
* footer
-----------------*/
/* ヘッダーにてcontent部を上げているので下部調整 */
#footer {
  position: relative;
  border-top: none;
  /*5px solid rgba(0,0,0,0.2);*/
  color: #333 !important;
  background-color: #bbb !important;
}

#footer .footer-widgets-wrap {
  position: relative;
  padding: 0;
  /*80px 0;*/
}

@media (max-width: 640px) {

  #footer .col_half.tright,
  #footer .col_half.col_last {

    text-align: center !important;
  }
}

/*-----------------
* copyrights
-----------------*/
#copyrights {
  color: #333 !important;
}

#copyrights .col_half:last-child {
  /* 消えるので再定義 */
  display: inline-block !important;
}

.dark #copyrights {
  padding: 0;
  /*40px 0;*/
  background-color: #eee;
}

#copyrights .col_half {
  font-size: 1rem !important;
  line-height: 1.3;
  /*  letter-spacing: -1rem;*/
}

#copyrights .copyright-links i {
  padding: 0 .5em 0 .5em
}

#copyrights .copyright-links a {
  font-size: 1rem !important;
  color: #333;
  line-height: 1.3;
