@charset "utf-8";
/* CSS Document */

/* //////////////////////////////////////////
  PC
  ////////////////////////////////////////// */

  @import url('https://fonts.googleapis.com/css?family=Overpass:400,700,900');
  @import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,500,700,900&subset=japanese');

  .font-ov {
    font-family: 'Overpass', sans-serif;
  }

  .font-ns {
    font-family: 'Noto Sans JP', sans-serif;
  }

  html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust:     100%;
  }
  body{
    font-family: "Overpass", "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 2.5rem;
    font-size: 16px;
    font-weight: normal;
    color: #333;
    margin: 0;
    word-wrap: break-word;
    overflow-wrap: break-word;
    background: #fff;
  }
  body.b_english{
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
  }
  button, input, select, textarea {
    font-family : inherit;
    font-size : 100%;
  }
  button{
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
  }
  a {
    text-decoration: none;
    color: #b20043;
  }
  a:hover {
    text-decoration: underline;
  }
  a:link, a:visited, a:active {
    color: #b20043;
    text-decoration: none;
  }
  selector {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  img {
    max-width: 100%;
    height: auto;
    border: 0;
    vertical-align: bottom;
    line-height: 0px;
  }
  .sp {
    display: none !important;
  }
  .pc {
    display: block !important;
  }

  .mb-50 {
    margin-bottom: 50px !important;
  }

  .bg_glay {
    background: #f8f8f8;
  }

  section h2 {
    font-weight: 900;
    font-size: 70px;
    text-align: center;
    letter-spacing: .6rem;
    margin-bottom: 30px;
  }

  section h2 span {
    text-align: center;
    display: block;
    font-size: 22px;
    font-weight: 600;
    margin: 20px 0 60px 0;
  }

  /*下層タイトル*/
  .ttl_center {
    text-align: center;
  }

  .ttl_center h1,
  .ttl_center h2 {
    font-size: 32px;
    letter-spacing: .3rem;
    padding: 40px 0 70px;
    display: inline-block;
    margin: 0;
    line-height: 1.8rem;
    font-weight: 700;
  }

  .ttl_center h1:after,
  .ttl_center h2:after {
    content: "";
    display: inline-block;
    height: 3px;
    width: 100%;
    background: #b20043;
  }

  /*header ヘッダー*/
  header {
    height: 80px;
    font-weight: 400;
    position: fixed;
    width: 100%;
    background: #fff;
    z-index: 9999;
  }

  header h1 {
    padding: 14px;
    display: inline-block;
  }

  header h1 a {
    transition: all .4s ease;
    -webkit-transition: all .4s ease;
  }

  header h1 a:hover {
    opacity: .7;
  }

  header h1 a img {
  }

  header .nav {
    float: right;
    display: table;
  }

  header .nav .nav_box {
    display: table-cell;
  }

  header .nav .nav_box li {
    display: table-cell;
  }

  header .nav .nav_box li:nth-child(2) dl dd .inner {
    max-width: 660px;
  }

  header .nav .nav_box li:nth-child(2) dl dd .inner ul li {
    width: 180px;
  }

  header .nav .nav_box li:nth-child(3) dl dd .inner {
    max-width: 0px;
  }

  header .nav .nav_box li:nth-child(3) dl dd .inner ul li {
    width: 200px;
  }

  header .nav .nav_box li:nth-child(4) dl dd .inner {
    /*max-width: 960px;*/
    max-width: 980px;
  }

  header .nav .nav_box li:nth-child(4) dl dd .inner ul li {
    /* width: 310px; */
    width: 340px;
  }

  header .nav .nav_box li:nth-child(5) dl dd .inner {
    max-width: 600px;
  }

  header .nav .nav_box li:nth-child(5) dl dd .inner ul li {
    width: 180px;
  }

  header .nav .nav_box li:nth-child(6) dl dd .inner {
    max-width: 0px;
  }

  header .nav .nav_box li:nth-child(6) dl dd .inner ul li {
    width: 180px;
  }

  header .nav .nav_box li:nth-child(7) dl dd .inner {
    max-width: 880px;
  }

  header .nav .nav_box li:nth-child(7) dl dd .inner ul li {
    width: 210px;
  }

  header .nav .nav_box li dl dt a {
    padding: 20px 30px;
    display: block;
    color: #333;
    font-size: 15px;
  }
  header .nav .nav_box li dl dt a:hover {
    background: rgba(239, 239, 239, 1);
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
  }

  header .nav .nav_box li dl dt a.current {
    background: rgba(248, 248, 248, 0.95);
    transition: all .3s ease;
    -webkit-transition: all .3s ease;
  }

  header .nav .nav_box li dl dd,
  header .nav .nav_other li dl dd{
    display: none;
    box-sizing: border-box;
    position: fixed;
    width: 100%;
    background: rgba(248, 248, 248, 0.95);
    left: 0;
    padding: 40px;
  }
  header .nav .nav_box li dl dd{
    z-index: 100;
  }
  header .nav .nav_other.pc li dl dd{
    z-index: 99;
  }

  header .nav .nav_other .bt_search {
    pointer-events: none;
  }

  header .nav .nav_box li dl dd .inner {
   max-width: 850px;
   width: 100%;
   overflow: hidden;
   margin: 0 auto;
   display: table;
 }

 header .nav .nav_box li dl dd .inner h2 {
  font-size: 32px;
  font-weight: 900;
  padding: 25px 40px;
  border-right: 1px solid #ababab;
  display: table-cell;
  vertical-align: middle;
}

header .nav .nav_box li dl dd .inner h2 span {
  display: block;
  font-size: 15px;
  white-space: nowrap;
  font-weight: 600;
}

header .nav .nav_box li dl dd .inner ul {
 font-size: 15px;
 font-weight: 700;
 display: table-cell;
 width: 100%;
 vertical-align: middle;
 padding-left: 40px;
}

header .nav .nav_box li dl dd .inner ul li {
  width: 180px;
  display: inline-block;
}

header .nav .nav_box li dl dd .inner ul li a {
  color: #333;
  font-weight: 400;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

header .nav .nav_box li dl dd .inner ul li a:hover {
  color: #b20043;
}

header .nav .nav_box.bt_contact li a {
  /* background: #24375e; */
  background: #b20043;
  color: #fff;
  padding: 20px;
  font-size: 15px;
  display: inline-block;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

header .nav .nav_box.bt_contact li a:hover {
  opacity: .8;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

header .nav .nav_other {
  display: table;
}

header .nav .nav_other li {
  display: table-cell;
}

header .nav .nav_other li:first-child {
  padding: 0 20px;
}

header .nav .nav_other li img {
  vertical-align: middle;
}

header .nav .nav_other li a {
  color: #24375e;
  font-size: 10px;
  padding: 19px 20px;
  vertical-align: middle;
  display: inline-block;
}

header .nav .nav_other li .c-jp,
header .nav .nav_other li .c-en,
header .nav .nav_other li .c-kr {
  padding: 19px 5px;
  position: relative;
}

header .nav .nav_other li .active.c-jp:after,
header .nav .nav_other li .active.c-en:after,
header .nav .nav_other li .active.c-kr:after {
  content: "";
  width: 70%;
  height: 1px;
  background: #940000;
  position: absolute;
  bottom: 20px;
  left: 3px;
}

header .nav .nav_other li a img {
  vertical-align: middle;
  padding-right: 8px;
}

header .nav .nav_other li dl dd .inner {
 max-width: 850px;
 width: 100%;
 overflow: hidden;
 margin: 0 auto;
 display: table;
}
.overlay-scale {
  display: inline-block;
  float: right;
}

/*検索ボックス*/
.searchform {
  text-align: center;
  padding: 20px 0;
}

.searchform .searchfield {
  border-bottom: 1px solid #333;
  border-right: none;
  border-left: none;
  border-top: none;
  width: 70%;
  padding: 10px;
  font-size: 18px;
  letter-spacing: .1rem;
  background: none;
}

.searchform .search_bt {
 width: 25px;
 height: 25px;
 background: url(img/common/icon_search.svg) no-repeat;
 background-size: contain;
 display: inline-block;
 vertical-align: middle;
}

.searchform .searchfield::placeholder {
  color: #333;
  letter-spacing: .1rem;
}



/*トップキービジュアル*/
.kv {
}

.kv .inner {
  padding: 120px 0 0;
  position: relative;
}

.kv .inner .kv_area.slider {
  max-height: 570px;
  position: relative;
  max-width: 1240px;
  width: 90%;
  margin: auto;
  z-index: 1;
}

.kv .inner .kv_area.index {
  max-height: 570px;
  position: relative;
  max-width: 1240px;
  width: 90%;
  margin: auto;
  z-index: 1;
}

.kv .inner .kv_area .kv_slider .slick-slide{
  border-radius: 20px;
  overflow: hidden;
  height: 570px;
  width: 100%;
  background-image: url("img/common/keyvisual_01.png");
  background-position:left top;
  background-repeat: no-repeat;
  background-size: cover;
}

.kv .inner .kv_area .kv_slider .slick-slide a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.kv .inner .kv_area .kv_slider .slick-slide a img{
  max-width: 60%;
}

.kv .inner .kv_area .kv_slider #slick-slide00{
  background-image: url("img/common/keyvisual_01.png");
  justify-content: center;
}
.kv .inner .kv_area .kv_slider #slick-slide00 a img{
  max-width: 74%;
}
.kv .inner .kv_area .kv_slider #slick-slide01{
  background-image: url("img/common/keyvisual_03.png");
}
.kv .inner .kv_area .kv_slider #slick-slide01 a{
  justify-content: flex-end;
}
.kv .inner .kv_area .kv_slider #slick-slide02{
  background-image: url("img/common/keyvisual_04.png");
  background-position:left bottom;
}
.kv .inner .kv_area .kv_slider #slick-slide02 a{
  justify-content: flex-end;
}
.kv .inner .kv_area .kv_slider #slick-slide03{
  background-image: url("img/common/keyvisual_05.png");
  background-position:left bottom;
}
.kv .inner .kv_area .kv_slider #slick-slide03 a{
  justify-content: flex-end;
}
.kv .inner .kv_area .kv_slider #slick-slide04{
  background-image: url("img/common/keyvisual_05.png");
  background-position:left bottom;
}
.kv .inner .kv_area .kv_slider #slick-slide04 a{
  justify-content: flex-end;
}
.kv .inner .kv_area .kv_slider #slick-slide05{
  background-image: url("img/common/keyvisual_06.png");
  background-position:right center;
}
.kv .inner .kv_area .kv_slider #slick-slide05 a{
  justify-content: flex-start;
}

.kv .inner .kv_area .slick-dots {
  position: absolute;
  right: 40px;
  width: 50%;
  display: flex!important;
  justify-content: flex-end;
  padding-top: 16px;
}

.kv .inner .kv_area .slick-dots li {
  width: 15%;
  font-size: 0;
  height: 10px;
  background: #433b3d;
  margin-left: 1%;
  cursor: pointer;
}

.kv .inner .kv_area .slick-dots li.slick-active{
  background: #a20c33;
}

.kv .inner .kv_area .kv_back {
  overflow: hidden;
  height: 570px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.kv .inner .kv_area .kv_back .inner {
  background: url(img/common/keyvisual.jpg) no-repeat;
  background-size: cover;
  background-position: center;
  height: 570px;
  width: 100%;
  z-index: 2;
  transform: scale(0.98);
  will-change: transform;
  opacity: 0;
  transition: all 1s ease;
}

.kv.is-up .inner .kv_area .kv_back .inner {
  transform-origin: 0% 50%;
  transform: scale(1);
  opacity: 1;
}
.kv .inner .kv_area .kv_back .inner:after {
  content: "";
  transform: translate(0%, 0%) matrix(1, 0, 0, 1, 0, 0);
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  background: #fff;
  z-index: 20;
  will-change: transform;
  transition: all 1s ease;
}

.kv.is-up .inner .kv_area .kv_back .inner:after {
  transform: translate(100%, 0%) matrix(1, 0, 0, 1, 0, 0);
}

.kv_area .kv_copyright {
  font-weight: 900;
  font-size: 70px;
  line-height: 4.8rem;
  position: absolute;
  max-width: 55%;
  left: -4%;
  top: 90%;
  z-index: 2;
  letter-spacing: 0;
}

.kv_area .kv_copyright p:nth-child(2) {
  color: #b20043;
}

.kv .inner .bg_color {
 left: 0;
 position: absolute;
 top: 0;
 background: #a20c33;
 width: 84%;
 height: 560px;
 z-index: 0;
 transition: opacity 1s ease 1.7s;
 opacity: 0;
 visibility: hidden;
}

.kv.is-up .inner .bg_color {
  opacity: 1;
  visibility: visible;
}

.kv .inner .bg_dot {
 left: 36%;
 position: absolute;
 top: 175px;
 background: url(img/common/dot_03.png) repeat;
 width: 64%;
 height: 560px;
 z-index: 0;
 transition: opacity 1s ease 1.7s;
 opacity: 0;
 visibility: hidden;
}

.kv.is-up .inner .bg_dot {
  opacity: 1;
  visibility: visible;
}

.kv_area .kv_copyright p {
/*  overflow: hidden;
  visibility: hidden;*/
  display: inline-block;
  padding-left: 24px;
}

.kv_area .kv_copyright p span {
  display: inline-block;
  margin-right: 0.5em;
  will-change: transform;
  visibility: hidden;
  position: relative;
  z-index: 2;
}

.kv_area .kv_copyright p:nth-child(1) span {
  transform: translateY(100px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .4s;
}

.kv_area .kv_copyright p:nth-child(2) span {
  transform: translateY(100px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .5s;
}

.kv_area .kv_copyright p:nth-child(3) span {
  transform: translateY(100px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .6s;
}

.kv_area .kv_copyright p:nth-child(4) span {
  transform: translateY(100px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .7s;
}

.kv_area .kv_copyright p:nth-child(5) span {
  transform: translateY(100px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .8s;
}

.kv_area .kv_copyright p:nth-child(6) span {
  transform: translateY(100px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .9s;
}

/*アクティブ*/
.kv.is-up .kv_area .kv_copyright p span {
  visibility: visible;
  display: initial;
}

.kv.is-up .kv_area .kv_copyright p:nth-child(1) span {
  transform: translateY(0px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .5s;
}

.kv.is-up .kv_area .kv_copyright p:nth-child(2) span {
  transform: translateY(0px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .6s;
}

.kv.is-up .kv_area .kv_copyright p:nth-child(3) span {
  transform: translateY(0px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .7s;
}

.kv.is-up .kv_area .kv_copyright p:nth-child(4) span {
  transform: translateY(0px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .8s;
}

.kv.is-up .kv_area .kv_copyright p:nth-child(5) span {
  transform: translateY(0px);
  transition: all 1s cubic-bezier(.78,.07,0,1) .9s;
}

.kv.is-up .kv_area .kv_copyright p:nth-child(6) span {
  transform: translateY(0px);
  transition: all 1s cubic-bezier(.78,.07,0,1) 1s;
}

.lead_area.pt01{
  padding-top:280px;
  margin-top: -40px
}

/* 241021追加ここから */
/* フローティングバナー */
.float-banner {
  position: fixed;
  right: 0;
  bottom: 5%;
  z-index: 999;
  width: 380px;
  height: auto;
}
.js-float-banner {
  transform: translateX(1000px);
  transition: all .5s ease;
}
.js-float-banner[data-active=true] {
  transform: translateX(0);  
}

@media screen and (max-width: 768px) {
  .js-float-banner {
    display: none;
  }
}
/* 241021追加ここまで */


/*アニメーション*/
.fadein1 {
  opacity: 0;
  transform: translateY(10px);
  transition: all 1s ease 0s;
  visibility: hidden;
}

.fadein2 {
  opacity: 0;
  transform: translateY(10px);
  transition: all 1s ease .2s;
  visibility: hidden;
}

.fadein3 {
  opacity: 0;
  transform: translateY(10px);
  transition: all 1s ease .4s;
  visibility: hidden;
}

.fadein4 {
  opacity: 0;
  transform: translateY(10px);
  transition: all 1s ease .6s;
  visibility: hidden;
}

.fadein5 {
  opacity: 0;
  transform: translateY(10px);
  transition: all 1s ease .8s;
  visibility: hidden;
}

.fadein6 {
  opacity: 0;
  transform: translateY(10px);
  transition: all 1s ease 1s;
  visibility: hidden;
}

.fadein7 {
  opacity: 0;
  transform: translateY(10px);
  transition: all 1s ease 1.2s;
  visibility: hidden;
}

.fadein1.is-show, .fadein2.is-show, .fadein3.is-show, .fadein4.is-show, .fadein5.is-show, .fadein6.is-show, .fadein7.is-show {
  opacity: 1;
  transform: translateX(0);
  visibility: visible;
}

.fade_list{
  opacity: 0;
  transform: translateY(10px);
  visibility: hidden;
  will-change: transform;
}

.fade_list:nth-child(1) {
  transition: all 1s ease 0s;
}
.fade_list:nth-child(2) {
  transition: all 1s ease .2s;
}
.fade_list:nth-child(3) {
  transition: all 1s ease .4s;
}
.fade_list:nth-child(4) {
  transition: all 1s ease .6s;
}
.fade_list:nth-child(5) {
  transition: all 1s ease .8s;
}
.fade_list:nth-child(6) {
  transition: all 1s ease 1s;
}
.fade_list:nth-child(7) {
  transition: all 1s ease 1.2s;
}
.fade_list:nth-child(8) {
  transition: all 1s ease 1.4s;
}
.fade_list:nth-child(9) {
  transition: all 1s ease 1.6s;
}
.fade_list:nth-child(10) {
  transition: all 1s ease 1.8s;
}
.is-show.fade_list:nth-child(1),.is-show.fade_list:nth-child(2),.is-show.fade_list:nth-child(3),.is-show.fade_list:nth-child(4),.is-show.fade_list:nth-child(5),.is-show.fade_list:nth-child(6),.is-show.fade_list:nth-child(7),.is-show.fade_list:nth-child(8),.is-show.fade_list:nth-child(9),.is-show.fade_list:nth-child(10) {
 opacity: 1;
 transform: translateX(0);
 visibility: visible;
}
.kv_page .inner + h1 {
  opacity: 0;
  visibility: hidden;
  transition: all .6s ease;
  -webkit-transform: translate(-50%, -46%);
  transform: translate(-50%, -46%);
}
.kv_page.is-show .inner + h1 {
 opacity: 1;
 visibility: visible;
 -webkit-transform: translate(-50%, -50%);
 transform: translate(-50%, -50%);
}

.js-slide__right {
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: left;
  transform-origin: left;
}

.js-slide__right.is-show  {
 -webkit-transition-duration: .2s;
 transition-duration: .2s;
 -webkit-transition-timing-function: cubic-bezier(.075,.82,.165,1);
 transition-timing-function: cubic-bezier(.075,.82,.165,1);
 -webkit-transform: scaleX(1);
 transform: scaleX(1);
 -webkit-transition-delay: .2s;
 transition-delay: .2s;
}

.js-slide__right.late.is-show {
 -webkit-transition-duration: .4s;
 transition-duration: .4s;
 -webkit-transition-delay: .4s;
 transition-delay: .4s;
}

.js-slide__right::after {
  -webkit-transform-origin: right;
  transform-origin: right;
  width: 0%;
  height: 88%;
  content: '';
  display: block;
  position: absolute;
  top: 10%;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #fff;
  z-index: 2;
}

.is-show.js-slide__right::after {
  width: 100%;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition-duration: 1.6s;
  transition-duration: 1.6s;
  -webkit-transition-timing-function: cubic-bezier(.075,.82,.165,1);
  transition-timing-function: cubic-bezier(.075,.82,.165,1);
  -webkit-transition-delay: 1.65s;
  transition-delay: 1.65s;
}

.is-show.js-slide__right.late::after {
 -webkit-transition-duration: .12s;
 transition-duration: .12s;
 -webkit-transition-delay: .99s;
 transition-delay: .99s;
}

.js-slide__right {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transform-origin: left;
  transform-origin: left;
}

.js-slide__right.is-show  {
 -webkit-transition-duration: .2s;
 transition-duration: .2s;
 -webkit-transition-timing-function: cubic-bezier(.075,.82,.165,1);
 transition-timing-function: cubic-bezier(.075,.82,.165,1);
 -webkit-transform: scaleX(1);
 transform: scaleX(1);
 -webkit-transition-delay: .2s;
 transition-delay: .2s;
}

.js-slide__right.late.is-show {
 -webkit-transition-duration: .4s;
 transition-duration: .4s;
 -webkit-transition-delay: .4s;
 transition-delay: .4s;
}

.js-slide__right::after {
  -webkit-transform-origin: right;
  transform-origin: right;
  width: 0%;
  height: 88%;
  content: '';
  display: block;
  position: absolute;
  top: 10%;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #fff;
  z-index: 0;
}

.is-show.js-slide__right::after {
  width: 100%;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transition-duration: 1.6s;
  transition-duration: 1.6s;
  -webkit-transition-timing-function: cubic-bezier(.075,.82,.165,1);
  transition-timing-function: cubic-bezier(.075,.82,.165,1);
  -webkit-transition-delay: 1.65s;
  transition-delay: 1.65s;
}

.is-show.js-slide__right.late::after {
 -webkit-transition-duration: .12s;
 transition-duration: .12s;
 -webkit-transition-delay: .99s;
 transition-delay: .99s;
}

/*パンくずリスト*/
/* 各リンクの前に擬似クラスで区切り文字を追加 */
.breadcrumbs {
 white-space: nowrap;
 overflow: hidden;
 text-overflow: ellipsis;
 padding: 4px 20px;
 font-size: 12px;
 position: fixed;
 width: 100%;
 bottom: 0;
 background: #fff;
 z-index: 999;
}

.breadcrumbs > span:first-child:before {
  display: none;
}

.breadcrumbs > span:before {
  content: '';
  background: url('img/common/arrow_breadcrumb.svg') no-repeat;
  background-size: contain;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 15px;
}

.breadcrumbs a {
  text-decoration: underline;
}

/*ページャー*/
.pager .wp-pagenavi {
  text-align: center;
  margin-bottom: 80px;
}

.pager .wp-pagenavi a {
  padding: 0;
  border: 1px solid #e0e0e0;
  width: 40px;
  text-align: center;
  height: 0;
  display: inline-table;
  vertical-align: middle;
  font-size: 13px;
  margin: 5px;
  background: #fff;
  color: #a7a7a7;
}

.pager .wp-pagenavi a:hover {
  background: #24375e;
  color: #fff;
  border: 1px solid #24375e;
}

.pager .wp-pagenavi a:first-child,
.pager .wp-pagenavi a:last-child {
  color: #24375e;
}

.pager .wp-pagenavi a:first-child:hover,
.pager .wp-pagenavi a:last-child:hover {
  color: #fff;
}

.pager .wp-pagenavi .current {
 padding: 0;
 border: 1px solid #24375e;
 width: 40px;
 text-align: center;
 height: 0;
 display: inline-table;
 vertical-align: middle;
 font-size: 13px;
 margin: 5px;
 background: #24375e;
 color: #fff;
}

/*下層キービジュアル*/
.kv_page {
  padding-top: 80px;
  height: 375px;
  overflow: hidden;
  position: relative;
}

.kv_page .inner {
  position: relative;
  width: 100%;
  height: 100%;
}

.kv_page .inner + h1 {
  text-align: center;
  font-weight: 700;
  font-size: 60px;
  letter-spacing: .3rem;
  color: #fff;
  position: absolute;
  top: 60%;
  left: 50%;
  width: 100%;
}

.kv_page .inner + h1 span {
  display: block;
  font-size: 18px;
  letter-spacing: .1rem;
  text-align: center;
  margin-top: 20px;
}

.s_underlayer .inner + h1{
  font-size: 32px;
}

.s_underlayer .inner + h1.other {
  line-height: 3rem;
}

.kv_page.kv_company .inner {
  background: url("img/common/kv_company.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}
.kv_page.kv_glory .inner {
  background: url("img/common/kv_glory.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}
.kv_page.kv_news .inner {
  background: url("img/common/kv_news.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

.kv_page.kv_ir .inner {
  background: url("img/common/kv_ir.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

.kv_page.kv_service .inner {
  background: url("img/common/kv_service.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

.kv_page.kv_business .inner {
  background: url("img/common/kv_business.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

.kv_page.kv_vision .inner {
  background: url("img/common/kv_vision.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

.kv_page.kv_recruit {
  background: url("img/common/kv_recruit.jpg") no-repeat;
  background-size: cover;
  background-position: center;
  height: 565px;
}

.kv_page.kv_contact .inner {
  background: url("img/common/kv_contact.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

.kv_page.kv_service_sub01 .inner {
  background: url("img/service/kv_service_sub01.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

.kv_page.kv_service_sub02 .inner {
  background: url("img/service/kv_service_sub02.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

.kv_page.kv_service_sub03 .inner {
  background: url("img/service/kv_service_sub03.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}
/*wom*/
.kv_page.kv_business_sub01 .inner {
 background: url("img/service/kv_business_sub01.jpg") no-repeat;
 background-size: cover;
 background-position: center;
}
/*prism*/
.kv_page.kv_business_sub02 .inner {
 background: url("img/service/kv_business_sub02.jpg") no-repeat;
 background-size: cover;
 background-position: center;
}
/*d2c*/
.kv_page.kv_business_sub03 .inner {
 background: url("img/service/kv_business_sub03.jpg") no-repeat;
 background-size: cover;
 background-position: center;
}
/*retail*/
.kv_page.kv_business_sub04 .inner {
 background: url("img/service/kv_business_sub04.jpg") no-repeat;
 background-size: cover;
 background-position: center;
}

.kv_page.kv_ambassador .inner {
  background: url("img/service/kv_ambassador.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

.kv_page.kv_catapult .inner {
  background: url("img/service/kv_catapult.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

.kv_page.kv_ambassador_sns .inner {
  background: url("img/service/kv_ambassador_sns.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}

/*下層サブメニュー*/
.nav_sub {
  position: relative;
  z-index: 1;
}

.nav_sub ul {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

.nav_sub ul li:first-child {
  border-left: 1px solid #e8e8e8;
}

.nav_sub ul li {
  box-sizing: border-box;
  border-right: 1px solid #e8e8e8;
  border-bottom: 1px solid #e8e8e8;
  width: 25%;
}

.nav_sub ul li a {
 width: 100%;
 display: block;
 text-align: center;
 background: #fff;
 color: #333;
 padding: 14px 0;
 font-weight: 500;
 transition: all .4s ease;
 -webkit-transition: all .4s ease;
}

.nav_sub ul li a:hover,
.nav_sub ul li a.current {
  background: #a8003f;
  color: #fff;
}

/*サーチ*/
.search .inner .ttl span {
  letter-spacing: 0.2rem;
}

/*パターン1*/
.pt01 {
  font-weight: 700;
  background: #f8f8f8;
  padding: 141px 30px 60px;
}

.pt01 h2 {
  font-weight: 900;
  text-align: center;
  font-size: 50px;
  margin-bottom: 58px;
  letter-spacing: 0.1rem;
}

.pt01 h2 b {
  color: #b20043;
  font-weight: 900;
}

.pt01 p {
  text-align: center;
  margin-bottom: 60px;
}

/*パターン2*/
.pt02 {
  padding: 100px 0 0;
  background: #f8f8f8;
}

.pt02 .inner {
  padding-bottom: 80px;
}

.pt02 h2 span {
  letter-spacing: 0.3rem;
}

.pt02 h2 span br {
  display: none;
}

.pt02 .list_circle {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: start;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px 60px;
  box-sizing: border-box;

}
.pt02 .list_circle li {
  width: 50%;
}
.pt02 .list_circle li a {
 width: 100%;
 display: inline-block;
 box-sizing: border-box;
 opacity: 1;
}
.pt02 .list_circle li a img {
  transition: all 0.3s ease;
}
.pt02 .list_circle li a:hover img {
  transition: all 0.3s ease;
  visibility: hidden;
  opacity: 0;
}
.pt02 .list_circle li a:hover {
  background-color: transparent;
  transition: all 1s ease;
}
.pt02 .list_circle li:nth-child(1) a {
  background: url("img/common/illust_business_pc1hover@2x.png") no-repeat;
  background-size: contain;
  position: relative;
  z-index: 1;
}
.pt02 .list_circle li:nth-child(2) a {
  background: url("img/common/illust_business_pc2hover@2x.png") no-repeat;
  background-size: contain;
  position: relative;
  z-index: 1;
}
.pt02 .list_circle li:nth-child(3) a {
  background: url("img/common/illust_business_pc3hover@2x.png") no-repeat;
  background-size: contain;
  position: relative;
  z-index: 1;
}
.pt02 .list_circle li:nth-child(4) a {
  background: url("img/common/illust_business_pc4hover@2x.png") no-repeat;
  background-size: contain;
  position: relative;
  z-index: 1;
}

.pt02 .layout {
  position: relative;
  display: table;
  width: 100%;
  padding: 0 0 100px;
}

.pt02 .layout li {
  display: table-cell;
  vertical-align: top;
  width: 30%;
  max-width: 100%;
}

.pt02 .layout li .img_area {
  height: 477px;
}

.pt02 .layout li .text_area {
  position: relative;
  top: 61px;
  background: #fff;
  padding: 6% 7% 11%;
}

.pt02 .layout li .text_area span {
  color: #acacac;
  display: block;
  font-size: 16px;
  margin-bottom: 10px;
  line-height: 2rem;
}

.pt02 .layout li .text_area img {
  margin-bottom: 20px;
  vertical-align: middle;
}

.pt02 .layout li .text_area h3 {
  /*font-size: 32px;*/
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 25px;
  letter-spacing: 0;
}

.pt02 .layout li .text_area p {
  font-weight: 400;
  line-height: 2.5rem;
  margin-bottom: 25px;
}

.pt02 .layout li .text_area a {
  color: #fff;
  background: #333;
  font-size: 12px;
  padding: 32px 35px;
  display: inline-block;
  line-height: 0;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.pt02 .layout li .text_area a:hover {
  background: #b20043;
}

.pt02 .layout.l_left li .text_area {
 padding-right: 20%;
 left: -17%;
 width: 117%;
 box-sizing: border-box;
 margin-bottom: 60px;
}

.pt02 .layout.l_right li .text_area {
  padding-left: 20%;
  left: 0;
  width: 116%;
  box-sizing: border-box;
  margin-bottom: 60px;
}

.pt02 .layout.l_01 li .img_area {
  background: url("img/common/thumb_01.jpg");
  background-size: cover;
  background-position: center;
}

.pt02 .layout.l_02 li .img_area {
  background: url("img/common/thumb_02.jpg");
  background-size: cover;
  background-position: center;
}

.pt02 .layout.l_03 li .img_area {
  background: url("img/common/thumb_03.jpg");
  background-size: cover;
  background-position: center;
}

.pt02 .layout.s_01 li .img_area {
  background: url("img/service/thumb_01.jpg");
  background-size: cover;
  background-position: center;
}

.pt02 .layout.s_02 li .img_area {
  background: url("img/service/thumb_02.jpg");
  background-size: cover;
  background-position: center;
}

.pt02 .layout.s_03 li .img_area {
  background: url("img/service/thumb_03.jpg");
  background-size: cover;
  background-position: center;
}

.pt02 .layout.s_04 li .img_area {
  background: url("img/service/thumb_04.jpg");
  background-size: cover;
  background-position: center;
}

.pt02 .layout.s_05 li .img_area {
  background: url("img/service/thumb_05.jpg");
  background-size: cover;
  background-position: center;
}

.pt02 .layout.s_06 li .img_area {
  background: url("img/service/thumb_06.jpg");
  background-size: cover;
  background-position: center;
}

.pt02 .layout.s_07 li .img_area {
  background: url("img/service/thumb_07.jpg");
  background-size: cover;
  background-position: center;
}

.pt02.service {
  padding: 40px 0px;
}

.pt02.map {
  position: relative;
  margin-top: -69px;
  padding: 150px 0 0;
}

.pt02 .layout li .img_area iframe {
  width: 100%;
}

.pt02 .layout.c_map.l_right li .img_area {
  position: relative;
  z-index: 1;
}
.pt02 .layout.c_map.l_left {
  padding: 0 0 60px;
}

.pt02 .layout.c_map.l_right {
  padding: 0 0 60px;
}

/*タブエリア*/
.tab_content{
  display: none;
}

.tab_area {
  background: #fff;
  padding: 70px 0;
}

.tab_area h2 {
}

.tab_area h2 span {
  margin-bottom: 38px;
}

.tab_area .inner {
  /*max-width: 1010px;*/
  max-width: 1090px;
  width: 100%;
  margin: 0 auto;
}

.tab_area .inner .bt_area {
  display: table;
  width: 100%;
}

.tab_area .inner .bt_area .tab_bt {
  display: inline-block;
  width: 24.5%;
  background: #fff;
  color: #a8003f;
  padding: 21px 0;
  font-weight: 700;
  border-right: 1px solid #e8e8e8;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
  vertical-align: top;
}

.tab_area .inner .bt_area .tab_bt:last-child {
  border-right: none;
}

.tab_area .inner .bt_area .tab_bt.is-active,
.tab_area .inner .bt_area .tab_bt:hover {
  background: #a8003f;
  color: #fff;
}

.tab_area .inner .bt_area .tab_bt:hover.is-active {
  pointer-events: none;
}

.tab_area .inner ul .tab_content,
.text_content {
  padding: 60px 20px 10px;
  line-height: 2rem;
}

.tab_area .inner ul .tab_content dl,
.text_content dl {
  display: table;
}

.tab_area .inner ul .tab_content dl dt,
.text_content dl dt{
  display: table-cell;
  width: 166px;
  color: #999999;
}

.tab_area .inner ul .tab_content dl dd,
.text_content dl dd {
  display: table-cell;
  vertical-align: top;
  padding-bottom: 42px;
  font-weight: 700;
}

.tab_area .inner ul .tab_content dl dd a,
.text_content dl dd a {
  color: #333;
  display: block;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.tab_area .inner ul .tab_content dl dd a:hover,
.text_content dl dd a:hover {
  opacity: .5;
}

.text_content.list_pt02 {
  padding: 0;
}

.text_content.list_pt02 ul li a .ttl {
  font-size: 22px;
  margin-bottom: 10px;
  line-height: 1.3em;
}
.text_content.list_pt02 ul li a .ttl > small {
  font-size: 10px;
  display: block;
}

.text_content.list_pt02 ul li a .data {
  font-size: 13px;
  line-height: 1.6em;
  display: block;
}

.inner .bt_area {
  text-align: center;
  clear: both;
}

.inner .bt_area a {
  color: #fff;
  background: #333;
  padding: 20px 0;
  width: 300px;
  display: inline-block;
  text-align: center;
  font-weight: 700;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.inner .bt_area a:hover {
  background: #b20043;
}


/*4つのビジネス領域*/
.business_area .business_field ul{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 90%;
  max-width: 1000px;
  margin: auto;
  padding-bottom: 24px;
}
.business_area .business_field ul li{
  width: 48%;
  margin-bottom: 80px;
}
.business_area .business_field ul li a{
  color: #fff;
  background:#a20c33;
  border-radius: 16px;
  padding: 29px 10px;
  display: block;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.5;
  text-align: center;
  font-size: 22px;
}
.business_area .business_field ul li a:hover{
  opacity: 0.9;
}


/*パターン3*/
.pt03 {
  padding: 80px 0;
  background: #fff;
}

.pt03 .layout li {
  border: 1px solid #a8003f;
}

.pt03 .layout li .text_area {
  padding: 50px;
  position: relative;
  max-width: 340px;
  width: 100%;
  overflow: hidden;
}

.pt03 .layout li .text_area h3 {
  font-size: 22px;
  font-weight: 700;
  margin-top: 40px;
  margin-bottom: 20px;
  letter-spacing: 0.4rem;
}

.pt03 .layout li .text_area p {
  line-height: 1.9rem;
  margin-bottom: 30px;
  font-weight: 400;
}

.pt03 .layout li .text_area a {
  color: #fff;
  background: #333;
  padding: 24px 25px;
  font-size: 12px;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.pt03 .layout li .text_area:before {
  display: block;
  font-size: 40px;
  font-weight: 700;
  line-height: 3rem;
  letter-spacing: 0.3rem;
}

.pt03 .layout.l_01 li {
 background: url(img/common/bg_service_ap.jpg) no-repeat;
 background-size: cover;
 background-position: right;
 width: 53%;
 font-weight: 700;
 overflow: hidden;
}

.pt03 .layout.l_01 li .text_area:before {
  content: "Ambassador Program";
}

.pt03 .layout.l_01 li .text_area {
  background: #a8003f;
  float: right;
  color: #fff;
  padding-right: 8%;
}

.pt03 .layout.l_01 li .text_area a {
  color: #a8003f;
  background: #fff;
}

@media screen and (min-width: 360px){ 
  .br-sp { display:none; }
}
@media screen and (max-width: 360px){
  .br-sp { display:block; }
}

.pt03 .layout.l_01 li .text_area a:hover,
.pt03 .layout.l_02 li .text_area a:hover {
  background: #333;
  color: #fff;
}

.pt03 .layout.l_02 {
  margin-bottom: 110px;
}

.pt03 .layout.l_02 li {
 background: url(img/common/bg_service_cp.jpg) no-repeat;
 background-size: cover;
 background-position: right;
 width: 50%;
 font-weight: 700;
 float: right;
 margin-top: -490px;
}

.pt03 .layout.l_02 li .text_area h3 {
}

.pt03 .layout.l_02 li .text_area:before {
 content: "STAMP WORKS";
}

.pt03 .layout.l_02 li .text_area {
  background: #fff;
  float: left;
  color: #a8003f;
  padding-right: 9%;
  padding-bottom: 90px;
}

.pt03 .layout.l_02 li .text_area a {
  color: #fff;
  background: #a8003f;
}


/*パターン4*/
.pt04 {
  padding: 65px 0;
}

.pt04 .inner {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}

.pt04 .inner h2 {
  font-weight: 700;
  font-size: 32px;
  letter-spacing: 0.25rem;
  margin-bottom: 40px;
  text-align: left;
}

.pt04 .inner .thumb {
  background: url(img/company/logo_cravia.png) no-repeat;
  background-size: cover;
  background-position: center;
  height: 100px;
  width: 44%;
  margin: 0 auto 60px;
}

.pt04 .inner .thumb.t-en {
  background: url(img/company/logo_cravia.png) no-repeat;
  background-size: cover;
  background-position: center;
  height: 100px;
  width: 44%;
  margin: 0 auto 60px;
}

.pt04 .inner .inner_text{
    padding: 0 70px;
}
.pt15 .inner .inner_text{
    max-width: 895px;
    margin: auto;
}


.pt04 .inner .thumb_bottom {
  float: right;
  margin-top: 50px;
  line-height: 2rem;
}

.pt04 .inner .thumb_bottom span {
  display: block;
}


/*パターン5*/
.pt05 {
 padding: 80px 0;
}

.pt05 .inner {
  max-width: 860px;
  margin: 0 auto;
}

.pt05 .inner h2 {
  font-weight: 700;
  font-size: 32px;
  letter-spacing: 0.25rem;
  margin-bottom: 40px;
}

/*パターン6*/
.pt06 .list_box,
.pt15 .list_box{
  padding: 70px 0;
  background: #fff; 
}

.pt06 .list_box:nth-child(even),
.pt15 .list_box:nth-child(even){
  background: #f8f8f8;
}

.pt06 .list_box ul,
.pt15 .list_box ul{
  display: table;
  max-width: 1005px;
  margin: 0 auto;
  width: 100%;
}

.pt06 .list_box ul li,
.pt15 .list_box ul li{
  display: table-cell;
  vertical-align: middle;
  width: 50%;
}

.pt06 .list_box ul li .thumb_box{
  display: table;
  border-spacing: 26px 0;
	margin: auto;
}
.pt15 .list_box ul li .thumb_box{
  display: table;
  border-spacing: 26px 0;
}
.pt06 .list_box ul li .thumb_box .img_area {
  display: table-cell;
  width: 154px;
}

.pt06 .list_box ul li .thumb_box h2,
.pt15 .list_box ul li .thumb_box h2{
  display: table-cell;
  vertical-align: middle;
  font-size: 32px;
  letter-spacing: .2rem;
  text-align: left;
}

.pt06 .list_box ul li .thumb_box h2 span,
.pt15 .list_box ul li .thumb_box h2 span{
  font-size: 15px;
  margin: 0px;
  font-weight: 300;
  text-align: left;
  letter-spacing: 0;
}

.pt06 .list_box ul li dl,
.pt15 .list_box ul li dl{
  display: table;
}

.pt06 .list_box ul li dl dt,
.pt15 .list_box ul li dl dt {
  display: table-cell;
  width: 115px;
}

.pt06 .list_box ul li dl dd,
.pt15 .list_box ul li dl dd {
  display: table-cell;
  padding-left: 20px;
}

.pt06 .text_info,
.pt15 .text_info {
 font-size: 12px;
 line-height: 2rem;
 padding: 60px 0;
 max-width: 1005px;
 width: 100%;
 margin: 0 auto;
 overflow: hidden;
}

.pt06 .text_info span {
float: right;
}

/*パターン7*/
.pt07 .inner {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
}

.text_content ul {
  max-width: 1050px;
  width: 100%;
  margin: 0 auto 60px;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: start;
  justify-content: start;
}

.text_content ul li {
  width: 100%;
  max-width: 300px;
  padding: 25px;
}

.text_content ul li a {
  display: block;
  color: #333;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.text_content ul li a:hover {
  opacity: .5;
}

.text_content ul li a .thumb_frame {
  position: relative;
  margin-bottom: 15px;
  width: 294px;
  height: 172px;
  overflow: hidden;
}

.text_content ul li a .thumb_frame .category {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #24375e;
  color: #fff;
  padding: 0px 10px;
  font-size: 14px;
  display: inline-block;
}

.text_content ul li a .data {
  color: #999;
  font-size: 16px;
}

.text_content ul li a .ttl {
  font-size: 16px;
  text-align: left;
  letter-spacing: 0;
  font-weight: 600;
  margin: 0;
}

.pt07.search {
  padding: 170px 0 0 0;
}


/*パターン8*/
.pt08 {
  padding: 60px 0 80px;
}

.pt15 {
  padding: 60px 0 80px;
}

.pt08 .inner {
  max-width: 1030px;
  width: 100%;
  margin: 0 auto;
}

.pt08 .inner h2 {
}

.pt08 .inner h3{
  background: #f8f8f8;
  color: #96213c;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  padding: 10px 0;
  margin-bottom: 30px;
}

.pt08 .inner h4 {
  font-size: 20px;
  font-weight: 600;
  max-width: 800px; /* 191118追記 */
  margin: 0 auto; /* 191118追記 */
  padding: 6px 25px 6px; /* 191118追記 */
}

.pt08 .inner p {
  margin-bottom: 60px;
}

.pt08 .inner .wrap01 {
  margin-bottom: 90px;
}

.pt08 .inner .wrap01 .yearSelect {
  margin-bottom: 30px;
}

.pt08 .inner .wrap02 > p {
  font-weight: 600;
  padding: 0 0 55px;
  max-width: 800px;
  margin: 0 auto;
}

.pt08 .inner .wrap02 ul {
  max-width: 1030px;
  width: 100%;
  margin: 0 auto 90px;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: start;
  justify-content: start;
}

.pt08 .inner .wrap02 ul li {
  width: 100%;
  max-width: 485px;
  padding: 15px;
}

.pt08 .inner .wrap02 ul li a {
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.pt08 .inner .wrap02 ul li a:hover {
  opacity: .5;
}

.pt08 .inner .wrap03 {
  max-width: 850px;
  margin: 0 auto;
  font-size: 16px;
  display: table;
}

.pt08 .inner .wrap03 > img {
  display: table-cell;
  width: 300px;
  margin-right: 50px;
}

.pt08 .inner .wrap03 .inner_right {
  display: table-cell;

  vertical-align: top;
}

.pt08 .inner .wrap03 .inner_right h2 {
  font-weight: 700;
  margin-bottom: 20px;
  display: block;
  font-size: 22px;
  letter-spacing: .2rem;
  text-align: left;
}

.pt08 .inner .wrap03 .inner_right p {
 line-height: 2.3rem;
 margin-bottom: 30px;
 letter-spacing: .1rem;
}

.pt08 .inner .wrap03 .inner_right .bt {
  color: #fff;
  background: #333;
  padding: 10px;
  font-size: 12px;
  display: inline-block;
  width: 155px;
  text-align: center;
  vertical-align: text-top;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.pt08 .inner .wrap03 .inner_right .bt:hover {
  background: #b20043;
}

.pt08 .inner .wrap03 .inner_right .thumb_bottom span {
  display: block;
  line-height: 2rem;
  text-align: right;
}

.pt08 .inner .wrap03 .inner_right .thumb_bottom > img {
  float: right;
}

.pt08 .inner .wrap04 {
  margin-bottom: 90px;
}

.pt08 .inner .wrap04 ul {
  width: 100%;
}

.pt08 .inner .wrap04 ul li {
  display: inline-block;
  width: 41%;
  padding: 4%;
}

.pt08 .inner .wrap04 ul li figure {
  text-align: center;
}

.pt08 .inner .wrap04 h4 {
  font-size: 20px;
  font-weight: 900;
  text-align: center;
}

.pt08 .inner .wrap05 {
  text-align: center;
  margin-bottom: 60px;
}

.pt12 .inner .wrap06,
.pt08 .inner .wrap06 {
  padding: 60px 65px 40px;
  line-height: 1.8rem;
  background: #f8f8f8;
  margin-bottom: 40px;
  overflow: hidden;
}

.pt08 .inner .wrap06 .d-flex{
  margin-bottom: 15px;
  display: flex;
  align-items: center;
}

.pt08 .inner .wrap06 .d-flex > small {
  margin-left: auto;
  font-size: 12px;
  border: 1px solid;
  padding: 0 5px;
}


.pt12 .inner .wrap06 > img,
.pt08 .inner .wrap06 > img {
  display: block;
  margin-bottom: 20px;
}

.pt12 .inner .wrap06 a,
.pt08 .inner .wrap06 a {
  float: right;
}

.pt12 .inner .wrap06 > span,
.pt08 .inner .wrap06 > span {
  margin-bottom: 20px;
  background: #fff;
} 

.pt12 .inner .wrap06 h3,
.pt08 .inner .wrap06 h3 {
  font-size: 32px;
  font-weight: 700;
  color: #243c6c;
  background: #fff;
  text-align: left;
  padding: 0;
  margin: 20px 0;
  display: inline-block;
}

.pt12 .inner .wrap06 p,
.pt08 .inner .wrap06 p {
  line-height: 2.5rem;
  margin-bottom: 10px;
}

.pt08 .inner .wrap01 .newslist .ir_news.top dl {
  display: none;
}

.pt08 .inner .wrap01 .newslist .ir_news.top dl:nth-child(-n+5) {
  display:block;
}

.pt08 .inner .wrap01 .bt_area {
  margin: 0 auto;
}

.pt08 .inner .wrap01 .bt_area .bt {
  color: #fff;
  background: #333;
  padding: 10px;
  font-size: 12px;
  display: inline-block;
  width: 155px;
  text-align: center;
  vertical-align: text-top;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.pt08 .inner .wrap01 .bt_area .bt:hover {
  background: #b20043;
}

.pt08 .inner .banner_area {
  text-align: center;
  margin-bottom: 60px;
}

.pt08 .inner .banner_area a {
  display: inline-block;
  transition: all .4s ease;
}

.pt08 .inner .banner_area a:hover {
  opacity: .7;
}


/*ボタン（小）*/
.bt_small {
  color: #fff !important;
  background: #333;
  padding: 30px 38px;
  font-size: 12px;
  display: inline-block;
  line-height: 0;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.bt_small:hover {
  background: #b20043;
}

.bt_adobe {
  padding: 15px 30px;
  background: #f8f8f8;
  overflow: hidden;
  font-size: 12px;
  line-height: 1.1rem;
  max-width: 720px;
  margin: 0 auto;
}

.bt_adobe a {
  display: block;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.bt_adobe a:hover {
  opacity: .8;
}

.bt_adobe img {
  float: left;
  margin-right: 20px;
  width: 195px;
}

.bt_adobe span {
  padding: 10px;
  display: block;
}

.pt08 table tbody tr .data_y {
  background: #9b9b9b;
  color: #fff;
  padding: 15px 30px;
}

.pt08 table tbody tr th {
  background: #f8f8f8;
  padding: 10px 30px;
  border: 6px #fff solid;
}

.pt08 table tbody tr td {
  background: #fff;
  padding: 0px 30px;
}

/*パターン9*/
.pt09 {
  padding: 113px 0;
}

.pt09 h2 {
  margin-bottom: 75px;
}

.pt09 .inner .text_box {
  margin: 0 auto;
  width: 100%;
  line-height: 3.7rem;
  max-width: 932px;
}

.pt09 .inner .text_box span:nth-child(1) {
  font-size: 26px;
  font-weight: 900;
  display: block;
  text-align: right;
  letter-spacing: 0.08rem;
  padding-right: 10px;
}

.pt09 .inner .text_box span:nth-child(1):before {
  content: "";  
  display: inline-block;
  width: 40px;
  height: 2px;
  background: #000;
  vertical-align: text-bottom;
  margin-right: 15px;
}

.pt09 .inner .text_box span:nth-child(2) {
  font-size: 70px;
  font-weight: 900;
  letter-spacing: 0;
  display: inline-block;
}

.pt09 .inner .text_box span:nth-child(2) b {
  color: #fff;
  background: #b9004e;
  margin-left: 13px;
  display: inline-block;
  padding: 5px;
}

.pt09 .inner .text_box span:nth-child(3){
 font-weight: 900;
 letter-spacing: 0;
 font-size: 56px;
}

.pt09 .inner .text_box span b {
  color: #b9004e;
  font-weight: 900;
}

/*パターン10*/
.pt010 {
  background: #f8f8f8;
  padding: 110px 0;
}

.pt010 .inner {
  max-width: 875px;
  margin: 0 auto;
}

.pt010 h2 {
  margin-bottom: 60px;
}

.pt010 .inner h3 {
  font-size: 35px;
  font-weight: 900;
  letter-spacing: 0.04rem;
  margin-bottom: 34px;
  text-align: center;
}

.pt010 .inner h3 b {
  color: #b9004e;
  font-weight: 900;
}

.pt010 .inner h3 br {
  display: none;
}

.pt010 .inner p {
  letter-spacing: 0.16rem;
}

.pt010 .inner p b {
  color: #333;
}

/*パターン11*/
.pt11 {
  padding: 105px 0;
}

.pt11 .inner {
  max-width: 880px;
  margin: 0 auto;
  font-weight: 800;
}

.pt11 .inner > span {
  font-size: 26px;
  display: block;
  text-align: center;
  margin-bottom: 50px;
}

.pt11 .inner ul {
  font-size: 28px;
}

.pt11 .inner ul li {
  margin-bottom: 44px;
  display: table;
}

.pt11 .inner ul li span {
  font-size: 32px;
  margin-right: 27px;
  letter-spacing: -1px;
  width: 80px;
  display: table-cell;
}

.pt11 .inner ul li span:after {
  content: "";
  display: block;
  width: 38px;
  height: 4px;
  background: #b9004e;
  margin-top: 4px;
}

.pt11 .inner ul li b {
  font-weight: 800;
}

/*パターン12*/
.pt12 {
  padding: 60px 0px;
}

.pt12.kv_none {
  padding: 120px 0px 60px;
}

.pt12 .inner {
  max-width: 1010px;
  width: 100%;
  margin: 0 auto;
}

.pt12 .inner .list_01 li b {
  font-size: 20px;
}

.pt12 .inner > ul {
  padding-left: 20px;
  line-height: 2rem;
  margin-bottom: 30px;
}

.pt12 .inner > ul li {
  list-style-type: decimal;
  margin-bottom: 15px;
}

.pt12 .inner > ul li + ol {
  padding-left: 40px;
}

.pt12 .inner > ul li + ol li {
  margin-bottom: 15px;
}

.pt12 .inner strong {
  font-weight: 800;
}

.pt12 .inner > h3 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 15px;
}

.pt12 .inner .list_box {
  display: table;
}

.pt12 .inner .list_box li {
  display: table-cell;
  vertical-align: top;
}

.pt12 .inner .list_box li > h4 {
  font-size: 18px;
  font-weight: 600;
}

.pt12 .inner .list_box > li span {
  color: #b20043;
  width: 30px;
  display: block;
  border-bottom: 2px solid;
  text-align: center;
  font-size: 24px;
  margin-right: 25px;
  font-weight: 600;
}

.pt12 .inner h2 {
 font-size: 28px;
 letter-spacing: .2rem;
 text-align: left;
 display: block;
 border-left: 2px solid #b20043;
 padding: 6px 25px 6px;
}

.pt12 .inner > p {
  margin-bottom: 45px;
}

.pt12 .inner p > a {
  color: #3180d4;
  text-decoration: underline;
}

.pt12 .inner p > a:hover {
  text-decoration: none;
}

.pt12 .inner img {
  display: block;
  margin: 60px auto;
}

.pt12 .inner .bg_gray {
  background: #f8f8f8;
  padding: 60px;
}

.pt12 .inner .bg_gray ul li:last-child {
  margin-bottom: 0;
}

.pt12 .inner .wrap06 {
  border-top: 1px solid #ededed;
  border-bottom: none;
}

.pt12 .inner .card {
  width: 100%;
  overflow: hidden;
  padding: 0;
}

.pt12 .inner .card li {
 background: #f8f8f8;
 width: 47%;
 float: left;
 margin: 15px;
 box-sizing: border-box;
 padding: 40px;
 list-style-type: none;
}

.pt12 .inner .card li img {
  margin: 0 auto 10px;
}

.pt12 .inner .card li h3 {
  text-align: center;
  font-weight: 600;
  font-size: 24px;
  padding: 5px 0 10px;
}

.pt12 .inner .card li p {
  line-height: 2.4rem;
  letter-spacing: 0.02rem;
}

.pt12.mid-career .inner p {
  margin-bottom: 30px;
}

.pt12.mid-career .inner .bt_area_other {
  margin: 30px auto 120px;
}

.pt12.mid-career .inner .bt_area_other .bt {
  font-weight: 300;
}

.pt12.mid-career .inner > h3 {
  font-size: 25px;
}

.mb80 {
  margin-bottom: 80px! important;
}

.pt12.mid-career .inner .bg_gray {
  margin-bottom: 50px;
}

.pt12.mid-career .inner .bg_gray > h3 {
  font-size: 22px;
  margin-bottom: 20px;
  font-weight: 600;
}

.pt12.mid-career .inner dt {
  font-weight: 600;
}

.pt12.mid-career .inner dl {
  display: block;
}

.pt12.mid-career .inner dl dd {
  display: block;
}

.pt12.mid-career .inner dl dd:first-child {
  display: block;
  width: 72px;
  font-weight: 600;
}


/*パターン13*/
.pt13 {
  padding: 65px 0;
}

.pt13 h2 {
  max-width: 1000px;
  margin: 0 auto;
  text-align: left;
  font-size: 30px;
  letter-spacing: .1rem;
  font-style: italic;
  font-weight: 600;
  color: #a8003f;
  border-bottom: 1px solid;
  padding-bottom: 10px;
}

.pt13 .text_content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 35px 0;
}

.pt13 .bt_banner {
  display: table;
  width: 100%;
}

.pt13 .bt_banner li {
  display: table-cell;
  width: 50%;
  vertical-align: top;
}

.pt13 .bt_banner li:nth-child(1) a {
  background:url("img/recruit/bt_bg_vision.jpg");
  background-size: cover;
  background-position: center;
  height: 270px;
  display: inline-block;
  width: 100%;
  position: relative;
}

.pt13 .bt_banner li:nth-child(2) a {
  background:url("img/recruit/bt_bg_t_message.jpg");
  background-size: cover;
  background-position: center;
  height: 270px;
  display: inline-block;
  width: 100%;
  position: relative;
}

.pt13 .bt_banner li a {
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.pt13 .bt_banner li a:hover {
  opacity: .7;
}

.pt13 .bt_banner li a h3 {
  font-size: 60px;
  font-weight: 800;
  color: #fff;
  line-height: 3rem;
  font-style: italic;
  position: absolute;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%); /* Safari用 */
  transform: translate(-50%, -50%);
}

.pt13 .bt_area_other {
  margin: 50px auto;
}

.pt13 .bt_area_other .bt {
  padding: 35px 10px 35px 0;
  margin-bottom: 30px;
  font-weight: 400;
}

.pt13 .bt_area_other .bt img {
}

.pt13 .bt_area_other .bt span {
  display: block;
  font-size: 10px;
  line-height: 0;
  margin: 5px 0 0 0;
}

/*パターン14*/
.pt14 {
  padding: 40px 0 80px;
}

.pt14.c_underlayer .inner {
  max-width: 870px;
  width: 100%;
  margin: 0 auto;
}

.pt14 .inner .card {
  max-width: 1020px;
  width: 100%;
  margin: 0px auto 60px;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: start;
  justify-content: start;
}

.pt14 .inner .card li {
  max-width: 320px;
  margin: 10px;
  box-sizing: border-box;
  background: #fff;
  padding: 40px;
  line-height: 1.8rem;
  box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.13);
  -moz-box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.13);
  -webkit-box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.13);
  -o-box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.13);
  -ms-box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.13);
}

.pt14 .inner .card li > p {
  margin-bottom: 30px;
  font-size: 14px;
  min-height: 110px;
}

.pt14 .inner .card li > h2 {
  font-size: 24px;
  font-weight: 600;
  letter-spacing: .1rem;
  text-align: left;
  margin-bottom: 60px;
  height: 20px;
  line-height: 2rem;
}

.pt14 .inner .card li .bt_area_other {
  margin: 0;
}

.pt14 .inner .card li .bt_area_other .bt {
  font-size: 16px;
  padding: 20px 0;
  width: 100%;
  letter-spacing: 0;
  display: block;
  margin: 0;
  font-weight: 200;
}

.pt14 .inner .card li .bt_area_other .bt > img {
  margin-right: 20px;
}

.pt14 .inner .step_box {
  max-width: 550px;
  width: 100%;
  margin: 60px auto;
  position: relative;
}

.pt14 .inner .step_box:before {
  content: "";
  display: block;
  width: 90%;
  height: 1px;
  background: #dbdbdb;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%); /* Safari用 */
  transform: translate(-50%, -50%);
}

.pt14 .inner .step_box .current {
  background: #b20043;
}

.pt14 .inner .step_box li {
  width: 40px;
  height: 40px;
  color: #fff;
  font-size: 14px;
  text-align: center;
  background: #444;
  display: inline-block;
  padding: 20px;
  border-radius: 100%;
  margin-right: 26%;
  z-index: 1;
  position: relative;
}

.pt14 .inner .step_box li:last-child {
  margin-right: 0;
}

.pt14 .inner dl {
  display: table;
  width: 100%;
  margin-bottom: 20px;
}

.pt14 .inner dl dt {
  display: table-cell;
  width: 23%;
  text-align: right;
  padding: 18px 26px 0 0;
  vertical-align: top;
  padding-top: 18px;
}

.pt14 .inner dl dt label {
  font-weight: 600;
}

.pt14 .inner dl > dd {
  width: 100%;
  vertical-align: top;
}

.pt14 .inner dl > dd .label-required {
  display: inline-block;
  color: #b20043;
  font-size: 12px;
  font-weight: 700;
  border-bottom: 1px solid;
  margin-right: 20px;
  padding-top: 18px;
}

.pt14 .inner dl > dd + dd {
  display: table-cell;
  width: 70%;
}

.pt14 .inner dl > dd + dd input::-webkit-input-placeholder,
.pt14 .inner dl > dd + dd textarea::-webkit-input-placeholder {
  color: #ccc;
}
.pt14 .inner dl > dd + dd input::-moz-placeholder,
.pt14 .inner dl > dd + dd textarea::-moz-placeholder {
  color: #ccc; opacity: 1;
}
.pt14 .inner dl > dd + dd input::-ms-input-placeholder,
.pt14 .inner dl > dd + dd textarea::-ms-input-placeholder {
  color: #ccc;
}

.pt14 .inner dl > dd + dd select {
  border: none;
  background: #fff;
  height: 70px;
  width: 100%;
  border-radius: 0;
}

.pt14 .inner dl .select_box select {
  padding: 16px 38px 16px 18px;
}

.pt14 .inner dl .select_box::before {
  top: 2em;
}

.pt14 .inner dl > dd + dd input {
  border: none;
  background: #f8f8f8;
  height: 75px;
  width: 100%;
  text-indent: 20px;
  border-bottom: 1px solid #ccc;
}

.pt14 .inner dl > dd + dd .mwform-tel-field input[type="text"] {
  width: 13%;
  font-size: 16px;
}

.pt14 .inner dl > dd + dd .mwform-tel-field {
  font-size: 28px;
  vertical-align: bottom;
  display: inline;
}

.pt14 .inner dl > dd + dd span {
  font-size: 14px;
  display: block;
}

.pt14 .inner dl > dd + dd textarea {
 border: none;
 background: #f8f8f8;
 height: 150px;
 width: 100%;
 padding: 25px;
 text-indent: 0;
 border-bottom: 1px solid #ccc;
 font-size: 16px;
 box-sizing: border-box;
 resize: vertical;
}

.pt14 .inner textarea {
  font-size: 14px;
  border: none;
  background: #f8f8f8;
  height: 240px;
  width: 100%;
  padding: 25px 10px;
  text-indent: 20px;
  box-sizing: border-box;
  resize: vertical;
}

.pt14 .inner input[type="checkbox"] {
  display: none;
  margin: 0;
}
input[type=radio]+span, input[type=checkbox]+span {
  padding: 0 0 6px 35px;
  text-indent: 0px;
  display: block;
}
input[type=radio]+span, input[type=checkbox]+span {
  position: relative;
  margin-right: 0px;
  cursor: pointer;
  display: inline-block;
}
input[type=radio]+span::before, input[type=checkbox]+span::before {
  content: "";
  position: absolute;
  top: 20px;
  left: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  width: 22px;
  height: 22px;
  margin-top: -12px;
  background-color: #f8f8f8;
}
input[type=checkbox]+span::before {
  border: 1px solid #ccc;
}
input[type=checkbox]:checked+span::after {
  left: 3px;
  width: 15px;
  height: 8px;
  margin-top: -12px;
  border-left: 3px solid #b20043;
  border-bottom: 3px solid #b20043;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
input[type=radio]:checked+span::after, input[type=checkbox]:checked+span::after {
  content: "";
  position: absolute;
  top: 25px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
}

.mwform-checkbox-field {
  text-align: center;
  display: block;
  margin: 15px 0;
}

.mwform-checkbox-field-text {
  font-size: 14px;
}

form .bt_area_other {
  margin: 0 auto;
  position: relative;
}

form .bt_area_other:before {
  content: "";
  background: url(img/service/bt_arrow.svg) no-repeat;
  width: 20px;
  height: 20px;
  display: inline-block;
  position: absolute;
  left: 29%;
  top: 44%;
  z-index: 1;
}

input[type=submit] {
  border: none;
}

/*確認画面*/
.pt14 .inner .confirm dl > dd + dd {
  vertical-align: baseline;
}
.pt14 .inner .confirm dl dd.select_box {
  overflow: auto;
  margin: 0;
  text-align: initial;
  position: unset;
  background: none;
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  -ms-box-shadow: none;
}
.pt14 .inner .confirm dl dd p {
  display: none;
}
.pt14 .inner .confirm textarea {
  display: none;
}
.pt14 .inner h2 {
  font-size: 30px;
  font-weight: 500;
  letter-spacing: .1rem;
}
.pt14 .inner > p {
  margin-bottom: 30px;
}

/*問い合わせフォームエラー*/
dd.error_frame input[type="text"],
dd.error_frame input[type="email"],
dd.error_frame input[type="tel"],
dd.error_frame input[type="url"],
dd.error_frame textarea {
  border: 3px solid pink !important;
}
.mw_wp_form .error {
  color:#ff0000!important;
}


/*リクルート*/
.kv_recruit {
}

.kv_recruit .inner {
  background: url("img/recruit/kv_bg_recruit.jpg") repeat;
  background-size: contain;
  position: relative;
}

.kv_recruit .inner .inner_box {
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%, -50%); /* Safari用 */
 transform: translate(-50%, -50%);
 display: table;
 z-index: 2;
 width: 100%;
 max-width: 1050px;
}

.kv_recruit .inner .bg_line {
  background: rgba(168, 0, 63, 0.86);
  height: 190px;
  width: 53%;
  position: absolute;
  top: 33%;
  z-index: 1;
}

.kv_recruit .inner .inner_box h1 {
  display: table-cell;
  width: 50%;
  vertical-align: middle;
}

.kv_recruit .inner .inner_box h1 img {
  top: -13px;
  right: -63px;
  position: relative;
}

.kv_recruit .inner .inner_box .bt_area_other {
  display: table-cell;
  width: 70%;
  float: left;
  vertical-align: middle;
  padding-left: 90px;
}

.kv_recruit .inner .inner_box .bt_area_other .bt{
  font-size: 18px;
  font-weight: 400;
  margin: 15px;
  box-shadow: 0px 0px 10px 0px #00000038;
}

.kv_recruit .inner .inner_box .bt_area_other .bt:hover {
  opacity: .9;
}

.kv_recruit .inner .inner_box .bt_area_other .bt img {
  width: 10px;
  margin-right: 15px;
}

.kv_recruit .inner .inner_box .bt_area_other .bt span {
  display: block;
  font-size: 10px;
  line-height: 0;
  margin: 0 0 0 24px;
}

.kv_recruit .inner .kv_slide {
  background: url(img/recruit/img_slide.jpg);
  background-size: cover;
  background-repeat-x: repeat;
  height: 440px;
  width: 100%;
  position: absolute;
  top: 11%;
  -webkit-animation: bgloop 150s linear infinite;
  animation: bgloop 150s linear infinite;
}

@keyframes bgloop {
  from {
    background-position: 0 0
  }
  to {
    background-position: 6000px 0px
  }
}

.bt_area_other {
  margin: 100px auto;
  max-width: 640px;
  overflow: hidden;
  max-width: 640px;
}

.bt_area_other .bt > img {
  display: inline-block;
  width: 12px;
  margin: 0;
  vertical-align: middle;
  margin-right: 40px;
  padding-bottom: 5px;
}

.bt_area_other .bt {
  display: inline-block;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  padding: 25px 10px 25px 0;
  text-align: center;
  margin: 10px;
  box-sizing: border-box;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

.bt_area_other .bt:hover {
  opacity: .8;
}

.bt_area_other .bt_red {
  background: url("img/service/bt_bg_red.jpg");
  background-size: cover;
}

.bt_area_other .bt_gray {
  background: url("img/service/bt_bg_gray.jpg");
  background-size: cover;
}

.bt_area_other .bt_blue {
 background: url("img/service/bt_bg_blue.jpg");
 background-size: cover;
}

.bt_area_other .bt_skyblue {
 background: url("img/recruit/bt_bg_skyblue.jpg");
 background-size: cover;
}

.bt_area_other .bt_100 {
  width: 96.4%;
}

.bt_area_other .bt_50 {
  width: 50%;
  max-width: 298px;
  float: left;
}


/*セレクト*/
.select_box {
  overflow: hidden;
  width: 90%;
  margin: 0 auto;
  text-align: center;
}
.select_box select {
  width: 100%;
  padding-right: 1em;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}
.select_box select::-ms-expand {
  display: none;
}
.select_box {
  max-width: 330px;
  width: 100%;
  position: relative;
  border-radius: 2px;
  background: #fff;
  box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.13);
  -moz-box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.13);
  -webkit-box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.13);
  -o-box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.13);
  -ms-box-shadow: 0px 0px 18px rgba(0, 0, 0, 0.13);
}
.select_box::before {
  position: absolute;
  top: 1.5em;
  right: 2em;
  width: 14px;
  height: 10px;
  padding: 0;
  content: '';
  background: url("img/common/bt_select_down.png") no-repeat;
  background-size: contain;
  pointer-events: none;
}
.select_box select {
  padding: 16px 38px 16px 30px;
}

/*テーブルレイアウト*/
.table {
  padding: 50px 0px;
}

.table .inner {
  max-width: 880px;
  margin: 0 auto;
}

.table .inner dl {
  display: table;
  border-spacing: 30px 10px;
}

.table .inner dl dt {
 font-weight: 700;
 display: table-cell;
 text-align: right;
 width: 110px;
}

.table .inner dl dd {
  display: table-cell;
}

.m_logo {
  text-align: center;
  width: 100%;
}

.m_logo img {
  width: 450px;
}


/*single 記事投稿*/
.single {
  padding: 40px 0px;
  font-size: 16px;
  line-height: 2rem;
}

.single .inner {
  max-width: 1000px;
  margin: 0 auto;
}

.single .inner .single_top {
  margin-bottom: 70px;
  overflow: hidden;
}

.single .inner .single_top h1 {
 font-size: 24px;
 font-weight: 700;
 letter-spacing: .2rem;
 border-bottom: 1px solid #333;
 padding-bottom: 26px;
 margin-bottom: 22px;
 line-height: 2.6rem;
}

.single .inner h2 {
  font-size: 28px;
  letter-spacing: .2rem;
  text-align: left;
  display: block;
  border-left: 2px solid #b20043;
  padding: 6px 25px 6px;
  margin-bottom: 30px;
}

.single .inner h3 {
  font-size: 24px;
  font-weight: 700;
}

.single .inner h4 {
  font-size: 18px;
  font-weight: 700;
}

.single .inner .single_top .data {
  color: #999999;
  display: inline-block;
  margin-right: 20px;
  font-size: 14px;
}

.single .inner .single_top .category {
 background: #24375e;
 color: #fff;
 padding: 0px 10px;
 font-size: 14px;
 display: inline-block;
 line-height: 2rem;
}

.single .inner strong {
  font-weight: 600;
}

.single .inner p {
  margin-bottom: 30px;
}

.single .inner p a {
  color: #0073cc;
}

.single .inner .bt_area {
  margin: 60px 0;
}

.single .inner img.alignright{
  display: block;
  margin: 0 0 0 auto;
}

.single .inner img.alignleft{
  display: block;
  margin: 0 auto 0 0;
}

.single .inner img.aligncenter{
  display: block;
  margin: 0 auto;
}

/*footer フッター*/
#page_top {
  background: #b20043;
  height: 48px;
  width: 48px;
  display: block;
  position: fixed;
  bottom: 0px;
  right: 0px;
  z-index: 999;
  text-align: center;
  line-height: 0;
}

#page_top:hover {
  opacity: .8;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

#page_top span {
 background: url(img/common/bt_top.png) no-repeat;
 background-size: cover;
 display: inline-block;
 padding: 10px;
 margin-top: 14px;
}

footer {
  background: #f8f8f8;
  font-weight: 400;
  letter-spacing: .3rem;
  padding: 80px 0;
}

footer .inner {
  max-width: 895px;
  width: 100%;
  margin: 0 auto;
}

footer .inner .sns_area {
  margin-bottom: 35px;
}

footer .inner .sns_area .f_sns {
  display: table;
  margin: 0 auto;
  border-spacing: 20px 0;
}

footer .inner .sns_area .f_sns li {
  display: table-cell;
  vertical-align: middle;
}

footer .inner .sns_area .f_sns li .tw {
  color: #fff;
  background: #52acef;
  width: 50px;
  height: 50px;
  text-align: center;
  display: inline-block;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

footer .inner .sns_area .f_sns li .tw i {
  padding-top: 12px;
  padding-left: 2px;
  vertical-align: middle;
  font-size: 20px;
}

footer .inner .sns_area .f_sns li .fb {
  color: #fff;
  background: #45549b;
  width: 50px;
  height: 50px;
  text-align: center;
  display: inline-block;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

footer .inner .sns_area .f_sns li .fb i {
  padding-top: 12px;
  padding-left: 4px;
  vertical-align: middle;
  font-size: 16px;
}

footer .inner .sns_area .f_sns li .line {
 transition: all .4s ease;
 -webkit-transition: all .4s ease;
}

footer .inner .sns_area .f_sns li .tw:hover,
footer .inner .sns_area .f_sns li .fb:hover,
footer .inner .sns_area .f_sns li .line:hover {
  opacity: .7;
}

footer .inner .nav {
  font-size: 13px;
  display: table;
  margin-bottom: 20px;
  margin: 0 auto;
}

footer .inner .nav .nav_box {
  display: table-cell;
  width: 35.5%;
  padding-left: 44px;
}

footer .inner .nav .nav_box:nth-child(3) {
  padding-left: 31px;
}

footer .inner .nav .nav_box li {
  padding-bottom: 10px;
}

footer .inner .nav .nav_box li dl dd {
  display: none;
}

footer .inner .nav .nav_box li a {
  color: #333;
  transition: all .4s ease;
  -webkit-transition: all .4s ease;
}

footer .inner .nav .nav_box li a:hover {
  color: #b20043;
}

footer .inner .logo_area .f_logo {
  max-width: 226px;
  margin: 0 auto 20px;
  text-align: center;
}

footer .inner .logo_area .f_logo li {
  padding: 15px;
  display: inline-block;
}

footer .inner p {
  font-size: 11px;
  letter-spacing: 0.1rem;
  text-align: center;
  padding-left: 10px;
}

/*SNSアイコン*/
.sns-area {
  float: right;
}

.icon-twitter,
.icon-facebook,
.icon-google-plus,
.icon-hatenabookmark-logo,
.icon-pocket,
.icon-line,
.icon-flickr {
  display: inline-block;
  padding: 0 !important;
  width: 44px;
  height: 44px;
  margin-right: 10px;
  color: #fff;
  text-align: center;
  text-decoration: none !important;
  text-indent: -9999px;
  opacity: 1;
  vertical-align: middle;
}
.icon-twitter:hover, .icon-twitter:active,
.icon-facebook:hover,
.icon-facebook:active,
.icon-google-plus:hover,
.icon-google-plus:active,
.icon-hatenabookmark-logo:hover,
.icon-hatenabookmark-logo:active,
.icon-pocket:hover,
.icon-pocket:active,
.icon-line:hover,
.icon-line:active,
.icon-flickr:hover,
.icon-flickr:active {
  color: #fff !important;
  opacity: 0.8;
}
.icon-twitter.staff-twitter,
.icon-facebook.staff-facebook,
.icon-flickr.staff-flickr {
  width: 30px;
  height: 30px;
}
.icon-twitter {
  background: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2030%2030%22%3E%3Cstyle%20type%3D%22text/css%22%3E.st0%7Bfill%3A%23FFFFFF%3B%7D%3C/style%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M30%205.7c-1.1.5-2.3.8-3.5%201%201.3-.8%202.2-2%202.7-3.4-1.2.7-2.5%201.2-3.9%201.5-1.1-1.2-2.7-1.9-4.5-1.9-3.4%200-6.2%202.8-6.2%206.2%200%20.5.1%201%20.2%201.4-5.1-.4-9.7-2.8-12.7-6.6-.5.9-.8%202-.8%203.1%200%202.1%201.1%204%202.7%205.1-1%200-2-.3-2.8-.8v.1c0%203%202.1%205.5%204.9%206-.5.1-1.1.2-1.6.2-.4%200-.8%200-1.2-.1.8%202.4%203.1%204.2%205.7%204.3-2.1%201.7-4.8%202.6-7.6%202.6-.5%200-1%200-1.5-.1%202.7%201.7%206%202.8%209.4%202.8%2011.3%200%2017.5-9.4%2017.5-17.5v-.8c1.3-.8%202.4-1.9%203.2-3.1%22/%3E%3C/svg%3E) center center/20px no-repeat #55acee;
}

.icon-facebook {
  background: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2030%2030%22%3E%3Cstyle%20type%3D%22text/css%22%3E.st0%7Bfill%3A%23FFFFFF%3B%7D%3C/style%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M11.4%2030v-14.1h-3.7v-5.1h3.7v-4.3c0-3.4%202.2-6.5%207.3-6.5%202.1%200%203.6.2%203.6.2l-.1%204.7h-3.2c-1.8%200-2.1.8-2.1%202.2v3.7h5.5l-.2%205.1h-5.3v14.1h-5.5z%22/%3E%3C/svg%3E) center center/20px no-repeat #3B5999;
}

.icon-google-plus {
  background: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2030%2030%22%3E%3Cstyle%20type%3D%22text/css%22%3E.st0%7Bfill%3A%23FFFFFF%3B%7D%3C/style%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M17.4%201.8h-2.4c.9%200%202.7%202.1%202.7%205s-1.7%204.2-3.3%205.5c-.5.5-1.1%201-1.1%201.9%200%20.9.6%201.3%201%201.7l1.4%201.1c1.8%201.5%203.3%202.8%203.3%205.5%200%203.7-3.7%207.4-10.6%207.4-5.8%200-8.5-2.7-8.5-5.6%200-1.4.7-3.4%203.1-4.8%202.5-1.5%205.8-1.7%207.6-1.8-.6-.7-1.2-1.5-1.2-2.7%200-.7.2-1.1.4-1.5l-1.3.1c-4.2%200-6.6-3.1-6.6-6.2%200-1.8.6-3.9%202.3-5.4%202.4-1.8%205.3-2%207.5-2l8.3.1-2.6%201.7zm-10.4%2017.7c-.9.3-3.4%201.3-3.4%204%200%202.8%202.8%204.8%207%204.8%203.8%200%205.9-1.8%205.9-4.2%200-2-1.3-3.1-4.3-5.2h-.9c-.5%200-2.6%200-4.3.6zm2.3-18.1c-1%200-2.2.4-2.8%201.2-.7.8-.9%202-.9%203%200%202.6%201.6%207%205%207%201%200%202.1-.6%202.7-1.2.9-.9%201-2.1%201-2.8%200-2.8-1.7-7.2-5-7.2zM29.9%2013.3h-3.9v-3.9h-2.1v3.9h-3.9v2h3.9v3.9h2.1v-3.9h3.9z%22/%3E%3C/svg%3E) center center/20px no-repeat #dd4b39;
}

.icon-hatenabookmark-logo {
  background: #008FDE url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2030%2030%22%3E%3Cstyle%20type%3D%22text/css%22%3E.st0%7Bfill%3A%23FFFFFF%3B%7D%3C/style%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M23.7%202.3h5.9v16.9h-5.9zM18.2%2015.9c-1-1.1-2.4-1.7-4.2-1.9%201.6-.4%202.7-1.1%203.5-1.9.7-.8%201.1-2%201.1-3.4%200-1.1-.2-2.1-.7-3-.5-.9-1.2-1.5-2.1-2.1-.8-.4-1.8-.8-2.9-.9-1.1-.2-3.1-.3-5.9-.3h-7v25.1h7.1c2.9%200%204.9-.1%206.2-.3%201.3-.2%202.3-.5%203.2-1%201.1-.6%201.9-1.3%202.4-2.4.6-1%20.8-2.2.8-3.5%200-1.8-.5-3.3-1.5-4.4zm-11.8-7.9h1.5c1.7%200%202.8.2%203.4.6.6.4.9%201%20.9%202%200%20.9-.3%201.5-.9%201.9-.7.4-1.9.5-3.6.5h-1.3v-5zm5.8%2014.4c-.7.4-1.8.6-3.4.6h-2.4v-5.5h2.5c1.7%200%202.8.2%203.4.6.6.4.9%201.2.9%202.2%200%201-.3%201.7-1%202.1z%22/%3E%3Ccircle%20class%3D%22st0%22%20cx%3D%2226.6%22%20cy%3D%2224.3%22%20r%3D%223.4%22/%3E%3C/svg%3E) center center/20px no-repeat;
}

.icon-pocket {
  background: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2030%2030%22%3E%3Cstyle%20type%3D%22text/css%22%3E.st0%7Bfill%3A%23FFFFFF%3B%7D%3C/style%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M29.9%203.4c-.4-1.1-1.4-1.8-2.6-1.8h-24.6c-1.1%200-2.1.7-2.5%201.8-.1.3-.2.6-.2.9v9.1l.1%201.8c.4%204.1%202.6%207.7%205.8%2010.2l.2.1c1.8%201.3%203.7%202.2%205.9%202.6%201%20.2%202%20.3%203%20.3.9%200%201.8-.1%202.8-.3.1%200%20.2%200%20.3-.1h.1c2-.4%203.9-1.3%205.6-2.5l.2-.1c3.3-2.5%205.4-6.1%205.8-10.2l.1-1.8v-9.1c.1-.3.1-.6%200-.9zm-6.4%209.4l-7.1%206.8c-.4.4-.9.6-1.4.6-.5%200-1-.2-1.4-.6l-7.1-6.8c-.8-.8-.8-2.1%200-2.9.8-.8%202.1-.8%202.9-.1l5.6%205.4%205.6-5.4c.8-.8%202.1-.8%202.9.1.8.8.8%202.1%200%202.9z%22/%3E%3C/svg%3E) center center/20px no-repeat #ef3e56;
}

.icon-line {
  background: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2230%22%20height%3D%2230%22%20viewBox%3D%220%200%2030%2030%22%3E%3Cstyle%20type%3D%22text/css%22%3E.st0%7Bfill%3A%23FFFFFF%3B%7D%3C/style%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M30%2012.9c0-6.7-6.7-12.2-15-12.2s-15%205.5-15%2012.2c0%206%205.3%2011.1%2012.5%2012%20.5.1%201.2.3%201.3.7.2.4.1%201%200%201.4%200%200-.2%201.1-.2%201.3-.1.4-.3%201.5%201.3.8s8.6-5.1%2011.8-8.7c2.3-2.4%203.3-4.8%203.3-7.5zm-20.9%204h-3c-.4%200-.8-.4-.8-.8v-6c0-.4.4-.8.8-.8s.8.4.8.8v5.2h2.2c.4%200%20.8.4.8.8s-.3.8-.8.8zm3.1-.8c0%20.4-.4.8-.8.8s-.8-.4-.8-.8v-6c0-.4.4-.8.8-.8s.8.4.8.8v6zm7.2%200c0%20.3-.2.6-.5.7h-.2c-.2%200-.5-.1-.6-.3l-3.1-4.2v3.7c0%20.4-.4.8-.8.8s-.8-.4-.8-.8v-6c0-.3.2-.6.5-.7h.2c.2%200%20.5.1.6.3l3.1%204.2v-3.7c0-.4.4-.8.8-.8s.8.4.8.8v6zm4.8-3.8c.4%200%20.8.4.8.8s-.4.8-.8.8h-2.2v1.4h2.2c.4%200%20.8.4.8.8s-.4.8-.8.8h-3c-.4%200-.8-.4-.8-.8v-6c0-.4.4-.8.8-.8h3c.4%200%20.8.4.8.8s-.4.8-.8.8h-2.2v1.4h2.2z%22/%3E%3C/svg%3E) center center/20px no-repeat #00c300;
}

.icon-flickr {
  background: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2220.9%22%20height%3D%228.9%22%20viewBox%3D%220%200%2020.9%208.9%22%3E%3Cstyle%20type%3D%22text/css%22%3E.st0%7Bfill%3A%23FFFFFF%3B%7D%3C/style%3E%3Ccircle%20class%3D%22st0%22%20cx%3D%224.5%22%20cy%3D%224.5%22%20r%3D%224.5%22/%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M16.5%201.5c1.6%200%203%201.3%203%203s-1.3%203-3%203-3-1.3-3-3%201.3-3%203-3m0-1.5c-2.5%200-4.5%202-4.5%204.5s2%204.5%204.5%204.5%204.5-2%204.5-4.5-2.1-4.5-4.5-4.5z%22/%3E%3C/svg%3E) center center/20px no-repeat #ff1d87;
}

/*英語ページ*/
header.english .nav .nav_box li dl dt a {
  padding: 20px 16px;
}
.en .pt01 {
  background: #fff;
}
.en .pt01 h2 {
  line-height: 5rem;
}
.en .ttl_center .b800 {
  font-weight: 800;
}
.en .pt04 {
  background: #f8f8f8;
}
.en .pt04 .inner .inner_text {
  padding: 0 68px;
}
.en .ttl_center h1, .ttl_center h2 {
  padding: 40px 0 50px;
}
.en .sub_disc {
  text-align: center;
  margin-bottom: 40px;
}
.en .contact {
  padding: 80px 0 0 0;
}
.en .bt_area_other {
  margin: 0px auto 100px;
}
.en .table .inner dl dt {
  width: 200px;
}

@media screen and (min-width: 1800px) {
 .pt02 .layout.l_left li .text_area {
  padding-right: 54%;
}
.pt02 .layout.l_right li .text_area {
  padding-left: 54%;
}
.pt02 .layout li .text_area {
  padding: 6% 7% 5%;
}
}


@media screen and (max-width: 1200px) {
  /*グローバルメニュー*/
  .burger {
    bottom: 6px;
    right: 5px;
  }
  .burger {
    background: #b20043;
    width: 40px;
    height: 40px;
    cursor: pointer;
    position: fixed;
    z-index: 10000;
    transform: scale(1.3);
  }
  .burger_line {
    -webkit-transition-duration: .6s;
    transition-duration: .6s;
    -webkit-transition-timing-function: cubic-bezier(.19,1,.22,1);
    transition-timing-function: cubic-bezier(.19,1,.22,1);
  }
  .burger_line01 {
    top: 12px;
    left: 11px;
  }
  .burger_line {
    width: 18px;
  }
  .burger_line {
    height: 2px;
    overflow: hidden;
    position: absolute;
  }
  .burger_line-in01 {
    -webkit-transition-delay: .15s;
    transition-delay: .15s;
  }
  .burger_line-in {
    -webkit-transition-duration: .6s;
    transition-duration: .6s;
    -webkit-transition-timing-function: cubic-bezier(.19,1,.22,1);
    transition-timing-function: cubic-bezier(.19,1,.22,1);
  }
  .burger_line-in {
    width: 72px;
    height: 2px;
    position: absolute;
    top: 0;
    left: 0;
  }
  .burger_line-in:after,
  .burger_line-in:before {
    -webkit-transition-timing-function: cubic-bezier(.19,1,.22,1);
    transition-timing-function: cubic-bezier(.19,1,.22,1);
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform,-webkit-transform;
  }
  .burger_line-in:before {
    left: -48px;
  }
  .burger_line-in:after,
  .burger_line-in:before {
    width: 24px;
    height: 2px;
    content: '';
    display: block;
    position: absolute;
    top: 0;
    background-color: #fff;
  }
  .burger_line-in:after {
    left: 0;
  }
  .burger_line02 {
    top: 19px;
    left: 11px;
  }
  .burger_line03 {
    top: 26px;
    left: 11px;
    width: 9px;
  }
  .burger_line-cross01 {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .burger_line-in-cross01 {
    -webkit-transition-delay: 0ms;
    transition-delay: 0ms;
  }
  .burger_line-in-cross01,
  .burger_line-in-cross02 {
    -webkit-transform: translateX(-33.3%);
    transform: translateX(-33.3%);
  }
  .burger_line-cross01,
  .burger_line-cross02 {
    top: 19px;
    left: 11px;
  }
  .burger_line-cross02 {
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
  }
  .burger_line-in-cross02 {
    -webkit-transition-delay: 50ms;
    transition-delay: 50ms;
  }
  .burger_line-in02 {
    -webkit-transition-delay: .25s;
    transition-delay: .25s;
  }
  .burger_line-in02:after,
  .burger_line-in02:before {
    -webkit-transition-delay: 50ms;
    transition-delay: 50ms;
  }
  .burger_line-in:after,
  .burger_line-in:before {
    -webkit-transition-timing-function: cubic-bezier(.19,1,.22,1);
    transition-timing-function: cubic-bezier(.19,1,.22,1);
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform,-webkit-transform;
  }
  .burger_line-in03 {
    -webkit-transition-delay: .2s;
    transition-delay: .2s;
  }
  .burger_line-in03:after,
  .burger_line-in03:before {
    -webkit-transition-delay: .1s;
    transition-delay: .1s;
  }
  .burger_line-in-cross02:after,
  .burger_line-in-cross02:before {
    -webkit-transition-delay: .1s;
    transition-delay: .1s;
  }
  .burger:hover .burger_line-in01:after,
  .burger:hover .burger_line-in01:before,
  .burger:hover .burger_line-in02:after,
  .burger:hover .burger_line-in02:before,
  .burger:hover .burger_line-in03:after,
  .burger:hover .burger_line-in03:before {
    -webkit-transition-duration: 1s;
    transition-duration: 1s;
  }
  .burger:hover .burger_line-in:after,
  .burger:hover .burger_line-in:before {
    -webkit-transform: translateX(200%);
    transform: translateX(200%);
  }
  .burger:after {
    content: "";
    position: absolute;
    top: -30px;
    left: -30px;
    width: 100px;
    height: 100px;
    z-index: -1;
    display: block;
    background: #920037;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  .open .burger:after {
    content: "";
    border-radius: 100%;
    -webkit-transition-duration: .6s;
    transition-duration: .6s;
    -webkit-transition-timing-function: cubic-bezier(.175,.885,.32,1.275);
    transition-timing-function: cubic-bezier(.175,.885,.32,1.275);
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition-delay: .5s;
    transition-delay: .5s;
  }
  .open .burger .burger_line-in-cross01 {
    -webkit-transition-delay: .15s;
    transition-delay: .15s;
  }
  .open .burger .burger_line-in-cross01,
  .open .burger .burger_line-in-cross02 {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .open .burger .burger_line-in:after,
  .open .burger .burger_line-in:before {
    background-color: #fff;
    transition-duration: 0s;
  }
  .open .burger .burger_line-in-cross02 {
    -webkit-transition-delay: .2s;
    transition-delay: .2s;
  }
  .open.burger .burger_line-in-cross01,
  .open .burger .burger_line-in-cross02 {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  .open .burger .burger_line-in01 {
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
  }
  .open .burger .burger_line-in01,
  .open .burger .burger_line-in02,
  .open .burger .burger_line-in03 {
    -webkit-transform: translateX(33.3%);
    transform: translateX(33.3%);
  }
  .open .burger:hover .burger_line-in-cross01::after,
  .open .burger:hover .burger_line-in-cross01::before,
  .open .burger:hover .burger_line-in-cross02::after,
  .open .burger:hover .burger_line-in-cross02::before {
    transition-duration: 2s;
  }
  .open .burger .burger_line-in01 {
    transition-delay: 0s;
  }
  .open .burger .burger_line-in02 {
    transition-delay: 0.1s;
  }
  .open .burger .burger_line-in03 {
    transition-delay: 50ms;
  }
  .open .burger .burger_line-in-cross01 {
    transition-delay: 0.15s;
  }
  .open .burger .burger_line-in-cross02 {
    transition-delay: 0.2s;
  }
  .overlay {
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    background: #b20043;
    min-height: 100vh;
    overflow: scroll;
  }
  .overlay-scale {
    -webkit-transition: all .5s 0s cubic-bezier(1,0,0,1);
    transition: all .5s 0s cubic-bezier(1,0,0,1);
    -webkit-transform: translate3d(0,100%,0);
    transform: translate3d(0,100%,0);
    opacity: 0;
    z-index: 999;
    visibility: hidden;
  }
  .open .overlay-scale {
    -webkit-transition: all .5s 0s cubic-bezier(1,0,0,1);
    transition: all .5s 0s cubic-bezier(1,0,0,1);
    -webkit-transform: scale(1) translate3d(0,0,0);
    transform: scale(1) translate3d(0,0,0);
    z-index: 999;
    visibility: visible;
    opacity: 1;
  }
  .overlay_inner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
  }
  .overlay_inner li {
    padding: 15px 0;
  }
  .overlay_inner li a {
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    transition: all .3s cubic-bezier(.78,.07,0,1) .1s;
    position: relative;
  }
  .overlay_inner li a span {
    position: relative;
  }
  .overlay_inner li a:before {
    content: '';
    display: block;
    position: absolute;
    left: auto;
    right: -1px;
    top: 50%;
    width: 0;
    height: 2px;
    background: #fff;
    transition: inherit;
  }
  .overlay_inner li a:hover:before {
    left: -1px;
    right: auto;
    width: calc(100% + 2px);
  }
  header {
    height: 60px;
  }
  header .nav {
    float: unset;
    display: block;
  }
  header .nav.sp {
    float: right;
  }
  header .nav .nav_box,
  header .nav .nav_box li {
    display: block;
  }
  header .nav .nav_box li dl {
    position: relative;
    border-bottom: 1px solid #900036;
  }
  header .nav .nav_box li dl.sub:before {
    content: "";
    display: inline-block;
    background: #fff;
    width: 10px;
    height: 3px;
    position: absolute;
    right: 12px;
    top: 24px;
  }
  header .nav .nav_box li dl.sub:after {
    content: "";
    display: inline-block;
    background: #fff;
    width: 10px;
    height: 3px;
    position: absolute;
    right: 12px;
    top: 24px;
    transform: rotate(90deg);
    transition: all .2s ease;
  }
  header .nav .nav_box li dl.sub.is-active:after {
    content: "";
    display: inline-block;
    background: #fff;
    width: 10px;
    height: 3px;
    position: absolute;
    right: 12px;
    top: 24px;
    transform: rotate(180deg);
    transition: all .2s ease;
  }
  header .nav .nav_box li dl dt a {
    color: #fff;
    padding: 5px 15px;
    font-size: 12px;
    letter-spacing: 0.2rem;
  }
  header .nav .nav_box.bt_contact li a {
    background: none;
    display: block;
    padding: 5px 15px;
    font-size: 12px;
    letter-spacing: 0.2rem;
  }
  header .nav .nav_box li dl dd {
    position: unset;
    padding: 0;
    background: #9e003b;
  }
  header .nav .nav_other li dl dd {
    position: absolute;
    padding: 0;
    background: rgba(236, 236, 236, 0.95);
  }
  header .nav .nav_box li dl dt a:hover, header .nav .nav_box li dl dt a.current {
    background: none;
  }
  header .nav .nav_box li dl dd .inner h2 {
    display: none;
  }
  header .nav .nav_box li dl dd .inner ul {
    padding-left: 0px;
    display: block;
  }
  header .nav .nav_box li dl dd .inner ul li {
    width: 100% !important;
  }
  header .nav .nav_box li dl dd .inner ul li a {
    width: 100%;
    padding: 20px 30px;
    display: block;
    color: #fff;
    border-bottom: 1px solid #900036;
    padding: 5px 15px;
    font-size: 12px;
    letter-spacing: 0.2rem;
  }
  header .nav .nav_box li dl dd .inner {
    display: block;
    max-width: none !important;
  }
  .overlay-scale {
    display: block;
  }
  header .nav .nav_box li dl dd .inner ul li a:before {
    content: "-";
    display: inline-block;
    padding-right: 10px;
  }
  header .nav .nav_other li a {
    padding: 10px 20px;
  }
  header .nav .nav_other #search dl dd {
    display: none;
    position: absolute;
    padding: 0;
    left: 0;
    top: 60px;
    width: 100%;
    background: rgba(236, 236, 236, 0.95);
  }
  header .nav .nav_other li .c-jp,
  header .nav .nav_other li .c-en,
  header .nav .nav_other li .c-kr
  {
    padding: 0px 5px;
  }
  header .nav .nav_other li .active.c-jp:after,
  header .nav .nav_other li .active.c-en:after,
  header .nav .nav_other li .active.c-kr:after {
    bottom: 5px;
  }
  header .nav .nav_other #search {
    pointer-events: auto;
  }
  header .nav .nav_other .bt_search {
    padding: 6px 20px 10px;
    line-height: 2;
    display: inline-block;
  }
  header .nav .nav_other {
    padding: 8px 0;
  }
  .nav_sub ul {
    flex-wrap: wrap;
  }
  .nav_sub ul li {
    width: 50%;
    box-sizing: border-box;
  }
  .nav_sub ul li:nth-child(3){
    border-left:1px solid #e8e8e8;
  }
  .nav_sub ul li a {
    width: 100% !important;
    letter-spacing: 0 !important;
    padding: 5px 0 !important;
  }
  .kv_page {
    padding-top: 60px;
  }
  .kv_area .kv_copyright{
    font-size:5.5vw;
  }
  .kv .inner .bg_color {
    left: 0;
    width: 88%;
    height: 50vw;
  }
  .kv .inner .bg_dot {
    left: 16%;
    width: 84%;
    height: 60vw;
  }
  .sp {
    display: block !important;
  }
  .pc {
    display: none !important;
  }
  header h1 {
    width: 140px;
    padding: 10px 14px;
  }
  /*フッター SP*/
  footer .inner .nav {
    float: none;
    display: block;
  }
  footer .inner .nav .nav_box,
  footer .inner .nav .nav_box li {
    display: block;
    width: 100%;
    padding: 0;
  }
  footer .inner .nav .nav_box li dl dt a {
    padding: 20px 30px;
    display: block;
    color: #333;  
    border-bottom: 1px solid #e8e8e8;
  }
  footer .inner .nav .nav_box.bt_contact li a {
    background: none;
    padding: 20px 30px;
    display: block;
    color: #333;
    border-bottom: 1px solid #e8e8e8;
  }
  footer .inner .nav .nav_box li dl dd, footer .inner .nav .nav_other li dl dd {
    position: unset;
    padding: 0;
    background: #efefef;
  }
  footer .inner .nav .nav_box li dl dt a:hover, footer .inner .nav .nav_box li dl dt a.current {
    background: none;
  }
  footer .inner .nav .nav_box li dl dd .inner h2 {
    display: none;
  }
  footer .inner .nav .nav_box li dl dd .inner ul {
    padding-left: 0px;
    display: block;
  }
  footer .inner .nav .nav_box li dl dd .inner ul li {
    width: 100% !important;
  }
  footer .inner .nav .nav_box li dl dd .inner ul li a {
    width: 100%;
    padding: 20px 30px;
    display: block;
    color: #333;
    border-bottom: 1px solid #e8e8e8;
    box-sizing: border-box;
  }
  footer .inner .nav .nav_box li dl dd .inner {
    display: block;
    max-width: none !important;
  }
  footer .inner .nav .nav_box li dl {
    position: relative;
  }
  footer .inner .nav .nav_box li dl.sub:before {
    content: "";
    display: inline-block;
    background: #b20043;
    width: 10px;
    height: 3px;
    position: absolute;
    right: 12px;
    top: 24px;
  }
  footer .inner .nav .nav_box li dl.sub:after {
    content: "";
    display: inline-block;
    background: #b20043;
    width: 10px;
    height: 3px;
    position: absolute;
    right: 12px;
    top: 24px;
    transform: rotate(90deg);
    transition: all .2s ease;
  }
  footer .inner .nav .nav_box li dl.sub.is-active:after {
    content: "";
    transform: rotate(180deg);
    transition: all .2s ease;
  }
  footer .inner .nav .nav_box li dl dd .inner ul li a:before {
    content: "-";
    display: inline-block;
    padding-right: 10px;
  }
  footer .inner .overlay-scale {
    -webkit-transition: all .5s 0s cubic-bezier(1,0,0,1); 
    transition: all .5s 0s cubic-bezier(1,0,0,1); 
    -webkit-transform: translate3d(0,0,0); 
    transform: translate3d(0,0,0); 
    opacity: 1;
    z-index: 999;
    visibility: visible; 
  }
  footer .inner .overlay {
    height: 100%;
    position: static;
    width: 100%;
    background: #f8f8f8;
    /*min-height: 100vh;*/
    min-height: 0;
    overflow: unset;
    margin-bottom: 30px;
  }
  footer .inner .nav .nav_box:nth-child(3) {
    padding-left: 0;
  }
  footer .inner .sns_area .f_sns li .fb,
  footer .inner .sns_area .f_sns li .tw,
  footer .inner .sns_area .f_sns li .line {
    width: 40px;
    height: 40px;
    display: inline-block;
  }
  footer .inner .sns_area .f_sns li .fb i {
    padding-top: 0;
    padding-left: 4px;
    vertical-align: middle;
    font-size: 12px;
  }
  footer .inner .sns_area .f_sns li .tw i {
    padding-top: 0;
    padding-left: 3px;
    vertical-align: middle;
    font-size: 14px;
  }
  footer {
    padding: 60px 0;
  }
  footer .inner .nav .nav_box li dl dt a {
    padding: 5px 15px;
    font-size: 12px;
  }
  footer .inner .sns_area {
    margin-bottom: 25px;
  }
  footer .inner .logo_area .f_logo li img {
    width: 45px;
  }
  footer .inner .logo_area .f_logo li:nth-child(3) img {
    width: 140px;
  }
  footer .inner .nav .nav_box li dl dd .inner ul li a {
    padding: 5px 15px;
    font-size: 12px;
  }
}



/* //////////////////////////////////////////
  TABLET / SP
  ////////////////////////////////////////// */

  /*iPad縦 / iPhone 8 Plus横*/
  @media screen and (max-width: 768px) {

    /*スマフォボタンリセット*/
    * { -webkit-appearance: none; border-radius: 0; }

    body {
      font-size: 14px;
      -webkit-overflow-scrolling: touch;
      -webkit-text-size-adjust: 100%;
    }

    select,input {
      font-size: 16px;
    }

    /*パンくず SP*/
    .breadcrumbs {
      white-space: nowrap;
      overflow-x: scroll;
      text-overflow: unset;
      width: 77%;
      padding: 6px 20px;
    }
    /*トップ SP*/
    .kv .inner .kv_area .kv_copyright {
      font-size: 6.4vw;
      line-height: 11.4vw;
      left: 0;
      top: 91%;
    }
    .kv .inner .kv_area {
      width: 92%;
      height: auto;
    }
    .kv .inner .kv_area .kv_slider .slick-slide{
      height: 58vw;
    }
    .kv .inner .kv_area .kv_slider .slick-slide a img {
      max-width: 64%;
      padding-top: 10%;
    }
    .kv .inner .kv_area .kv_slider #slick-slide00 a{
      align-items: center;
      justify-content: center;
    }
    .kv .inner .kv_area .kv_slider #slick-slide01 a{
      align-items: flex-start;
    } 
    .kv .inner .kv_area .kv_slider #slick-slide03 a{
      align-items: flex-start;
    }
    .kv .inner .kv_area .kv_slider #slick-slide04{
      background-position: 1% 10%;
    }
    .kv .inner .kv_area .kv_slider #slick-slide04 a{
      align-items: flex-start;
    } 
    .kv .inner .kv_area .kv_slider #slick-slide05 a{
      justify-content: flex-start;
    }
    .kv .inner .kv_area .slick-dots{
      display: none !important;
    }
    .kv .inner .kv_area .kv_back {
      height: 425px;
    }
    .kv .inner .kv_area .kv_back .inner {
      background-position: 44%;
    }
    .lead_area.pt01{
      padding-top: 48vw;
    }

    /*共通 SP*/
    section h2 {
      font-size: 38px;
      letter-spacing: .2rem;
      margin-bottom: 20px;
    }
    section h2 span {
      font-size: 12px;
      margin: 5px 0 25px 0;
      line-height: 1.8rem;
    }
    .ttl_center h1, .ttl_center h2 {
      font-size: 20px;
      letter-spacing: 0;
      padding: 20px 0 40px;
    }

    /*パターン1 SP*/
    .pt01 {
      padding: 30px 30px 35px;
    }
    .pt01 h2 {

      font-weight: 900;
      text-align: center;
      font-size: 25px;
      margin-bottom: 10px;
      letter-spacing: 0;
    }
    .pt01 p {
      margin-bottom: 0px;
      line-height: 1.8rem;
    }

    /*パターン2 SP*/
    .pt02 {
      padding: 40px 0 0px;
    }
    .pt02 h2 span {
      letter-spacing: 0.1rem;
      font-size: 14px;
    }
    .pt02 h2 span br {
      display: block;
    }
    .pt02 .layout li .text_area img {
      margin-bottom: 0px;
    }
    .pt02 .layout li .text_area h3 {
      font-size: 16px;
      margin-bottom: 5px;
      line-height: 1.5rem;
    }
    .pt02 .layout li .text_area p {
      font-weight: 500;
      line-height: 1.5rem;
      margin-bottom: 20px;
    }
    .pt02 .layout {
      display: block;
      padding:0 0 30px;
      overflow: hidden;
    }
    .pt02 .layout li .text_area a {
      padding: 24px 26px;
      font-size: 10px;
    }
    .pt02 .layout li {
      display: contents;
      vertical-align: top;
      width: 30%;
      max-width: 100%;
    }
    .pt02 .layout.l_left li .text_area {
      padding-right: 10%;
      left: 10%;
      width: 90%;
      margin: -112px 0 0 0;
      top: 0;
    }
    .pt02 .layout.l_right li .text_area {
      padding-left: 10%;
      left: 0;
      width: 90%;
      z-index: 1;
      margin-top: 60px;
    }
    .pt02 .layout.l_right li .img_area {
      position: absolute;
      top: 0;
      z-index: 0;
      right: 0;
      z-index: 0;
    }
    .pt02 .layout li .img_area {
      height: 236px;
      width: 90%;
    }
    .pt02.map .layout li .img_area,
    .pt02.map .layout li .img_area iframe {
      height: 300px;
    }
    .pt02.map .layout.l_left li .text_area {
      margin: -15px 0 0 0;
    }
    .pt02 .layout.l_right li .text_area {
      margin-top: 60px;
    }
    .pt02.service {
      padding: 0px;
    }
    .pt02 .layout li .text_area > span {
      font-size: 13px;
      line-height: 1.5rem;
    }
    .pt02.map {
      padding: 120px 0 0;
    }
    .pt02 .layout.c_map.l_right li .img_area {
      position: absolute;
      top: 0;
      right: 0;
      z-index: 0;
    }
    .pt02 .layout.c_map.l_right li .text_area {
      margin-top: 220px;
    }
    .logo_ambassador_p {
      width: 106px;
    }
    .logo_reviews {
      width: 80px;
    }
    .logo_catapult {
      width: 35px;
    }
    .logo_ambassador_c {
      width: 80px;
    }
    .logo_stampworks {
      width: 100px;
    }
    .logo_prism {
      width: 80px;
    }
    .logo_vide {
      width: 110px;
    }
    .logo_panda {
      width: 130px;
    }
    .logo_hair {
      width: 84px;
    }
    .logo_catapult_yoko {
      width: 100px;
    }
    .logo_sky {
      width: 80px;
    }



    /*タブエリア　SP*/
    .tab_area {
      padding: 30px 0;
    }
    .tab_area .inner .bt_area {
      display: flex;
      font-size: 12px;
    }
    .tab_area h2 span {
      margin-bottom: 0;
    }
    .tab_area .inner .bt_area .tab_bt {
      padding: 14px 0;
    }
    .tab_area .inner ul .tab_content, .text_content {
      padding: 5px 20px 10px;
    }
    .tab_area .inner ul .tab_content dl, .text_content dl {
      display: block;
    }
    .tab_area .inner ul .tab_content dl dt, .text_content dl dt {
      display: block;
    }
    .tab_area .inner ul .tab_content dl dd, .text_content dl dd {
      display: block;
      padding-bottom: 10px;
    }
    .inner .bt_area a {
      margin: 0 auto;
      padding: 8px 0;
      width: 220px;
    }
    .text_content ul li a .ttl,
    .text_content ul li a .data {
      font-size: 14px;
    }
    .text_content.list_pt02 ul {
      -webkit-justify-content: center;
      justify-content: center;
    }
    .text_content.list_pt02 ul li a .ttl {
      font-size: 18px;
    }

    /*4つのビジネス領域 SP*/
    .business_area .business_field ul li a{
      font-size:15px;
    }

    /*パターン3 SP*/
    .pt03 {
      padding: 40px 0;
    }
    .pt03 .layout.l_02 li {
      float: none;
      width: 90%;
      margin: 0; 
    }
    .pt03 .layout.l_01 li {
      width: 90%;
      /*overflow: unset;*/
    }
    .pt03 .layout.l_01 li .text_area {
      /*padding-right: 60px;*/
      padding-bottom: 80px;
    }
    .pt03 .layout li .text_area:before {
      font-size: 22px;
      width: 250px;
      line-height: 1.5rem;
    }
    .pt03 .layout li .text_area {
      padding: 35px;
      width: 100%;
      box-sizing: border-box;
    }
    .pt03 .layout li .text_area h3 {
      font-size: 10px;
      margin-top: 10px;
      margin-bottom: 0;
      letter-spacing: 0.2rem;
    }
    .pt03 .layout.l_02 li .text_area {
      margin-left: 10%;
      border: 1px solid #a8003f;
      padding-bottom: 40px;
      margin-bottom: 30px;
      margin-top: -40px;
    }
    .pt03 .layout li .text_area a {
      padding: 16px 20px;
      font-size: 10px;
    }

    /*パターン4 SP*/
    .pt04,
	.pt15{
      padding: 40px 0;
    }
    .pt04 .inner .thumb.t-en {
      height: 210px;
      margin: 0 auto 20px;
      padding-top: 0;
    }
    .pt04 .inner,
	.pt15 .inner{
      line-height: 2rem;
    }
    .pt04 .inner p,
	.pt15 .inner p{
      padding: 0 0 10px 0;
    }
    .pt04 .inner .thumb_bottom {
      width: 160px;
    }
    .pt04 .inner .inner_text,
	.pt15 .inner .inner_text{
      padding: 0 30px;
    }

    .pt04 .inner h2 {
      font-size: 22px;
      letter-spacing: 0;
      margin-bottom: 10px;
    }
    .pt04 .inner .thumb {
      height: 0;
      padding-top: 80%;
      background: url(img/company/logo_cravia.png) no-repeat;
      background-size: contain;
      background-position: center;
    }

    /*テーブル SP*/
    .table {
      padding: 20px 0px;
      line-height: 2rem;
    }
    .table .inner dl {
      margin-bottom: 15px;
    }
    .table .inner dl dt {
      display: block;
      width: 100%;
      text-align: left;
    }
    .table .inner dl dd {
      display: block;
    }
    .m_logo img {
      width: 220px;
    }

    /*パターン5 SP*/
    .pt05 {
      padding: 40px 0;
    }
    .pt05 .inner h2 {
      font-size: 18px;
      margin-bottom: 10px;
      letter-spacing: 0.15rem;
    }
    .pt05 .inner {
      padding: 0 30px;
      line-height: 2rem;
    }

    /*パターン6 SP*/
    .pt06 .list_box,
	.pt15 .list_box{
      line-height: 2rem;
      padding: 40px 0;
    }
    .pt06 .list_box ul li .thumb_box,
	.pt15 .list_box ul li .thumb_box{
      display: block;
    }
    .pt06 .list_box ul,
	.pt15 .list_box ul {
      display: block;
    }
    .pt06 .list_box ul li,
	.pt15 .list_box ul li {
      display: block;
      width: 100%;
      text-align: center;
      padding: 0 22px;
      box-sizing: border-box;
    }
    .pt06 .list_box ul li .thumb_box .img_area {
      display: inline-block;
    }
    .pt06 .list_box ul li .thumb_box h2 span {
      font-size: 12px;
      margin: 5px 0 0 0;
      text-align: center;
      letter-spacing: 0;
    }
    .pt06 .list_box ul li .thumb_box h2 {
      display: block;
      font-size: 26px;
      text-align: center;
    }
    .pt06 .list_box ul li dl,
	.pt15 .list_box ul li dl {
      display: block;
    }
    .pt06 .list_box ul li dl dt,
	.pt15 .list_box ul li dl dt {
      display: block;
      text-align: left;
      font-weight: 700;
    }
    .pt06 .list_box ul li dl dd,
	.pt15 .list_box ul li dl dd {
      padding-left: 0px;
      display: block;
      text-align: left;
      letter-spacing: 0;
    }
    .pt06 .text_info {
      font-size: 12px;
      line-height: 1.5rem;
      letter-spacing: 0;
      padding: 30px;
      box-sizing: border-box;
    }

    /*パターン7 SP*/
    .pt07 .inner h2 {
      margin-top: 10px;
    }
    .search .inner .ttl span {
      letter-spacing: 0.2rem;
      font-size: 20px;
    }

    /*パターン8 SP*/
    .pt08 {
      /*padding: 40px 0 0px;*/
      line-height: 2rem;
      padding: 0px 0 30px;
    }
    .pt08 .inner {
      padding: 20px 30px;
      box-sizing: border-box;
    }
    .pt08 .inner .wrap03 > img {
      width: 220px;
      margin: 0 auto 30px;
    }
    .pt08 .inner .wrap03 .inner_right {
      display: block;
    }
    .pt08 .inner .wrap03 .inner_right .thumb_bottom {
      overflow: hidden;
    }
    .pt08 .inner .wrap03 .inner_right .thumb_bottom > img {
      float: right;
      width: 200px;
    }
    .pt08 .inner .wrap03 .inner_right .bt {
      margin: 30px auto;
      display: block;
    }
    .pt08 .inner .wrap04 ul li {
      width: 100%;
      box-sizing: border-box;
    }
    .pt08 .inner .wrap02 img + p {
      padding: 15px 0;
    }
    .pt12 .inner .wrap06,
    .pt08 .inner .wrap06 {
      border-bottom: 1px solid #ededed;
      padding: 20px;
      margin-bottom: 30px;
    }
    .pt12 .inner .wrap06 h3,
    .pt08 .inner .wrap06 h3 {
      font-size: 18px;
    }
    .pt12 .inner .wrap06 p,
    .pt08 .inner .wrap06 p {
      line-height: 2rem;
    }


    /*パターン9 SP*/
    .pt09 {
      padding: 40px 0;
    }
    .pt09 h2 {
      margin-bottom: 30px;
    }
    .pt09 .inner .text_box {
      padding: 0 30px;
      box-sizing: border-box;
    }


    /*パターン10 SP*/
    .pt010 {
      padding: 40px 0;
    }
    .pt010 .inner {
      padding: 0 30px;
      box-sizing: border-box;
      line-height: 2rem;
    }
    .pt010 h2 {
      margin-bottom: 30px;
    }
    .pt010 .inner h3 {
      font-size: 18px;
      text-align: center;
    }
    .pt010 .inner h3 br {
      display: block;
    }

    /*パターン11 SP*/
    .pt11 {
      padding: 40px 0;
    }
    .pt11 .inner ul {
      font-size: 18px;
    }
    .pt11 .inner {
      padding: 0 30px;
      box-sizing: border-box;
    }
    .pt11 .inner ul li {
      margin-bottom: 24px;
    }
    .pt11 .inner ul li span {
      font-size: 22px;
      margin-right: 17px;
      width: 50px;
    }
    .pt11 .inner ul li span:after {
      content: "";
      display: block;
      width: 25px;
      height: 2px;
      background: #b9004e;
      margin-top: 0px;
    }
    .pt11 .inner > span {
      font-size: 16px;
      margin-bottom: 30px;
    }
    .pt11 .inner ul li {
      line-height: 2rem;
    }
    .pt11 .inner ul li span b {
      font-weight: 900;
    }

    /*パターン12 SP*/
    .pt12 {
      line-height: 2rem;
    }
    .pt12 .inner h2 {
      font-size: 20px;
      padding: 0px 15px 0px;
      margin-bottom: 30px;
    }
    .pt12 .inner {
      padding: 0 30px;
      box-sizing: border-box;
    }
    .pt12 .inner .bg_gray {
      padding: 25px;
    }
    .pt12 .inner > img {
      margin: 30px auto;
    }
    .bt_area_other {
      margin: 30px auto;
      text-align: center;
      max-width: 274px;
    }
    .bt_area_other .bt {
      font-size: 12px;
      padding: 12px;
      margin: 5px 0;
      width: 100%;
      box-sizing: content-box;
      max-width: 230px;
      float: none;
    }
    .pt12.mid-career .inner > h3 {
      font-size: 18px;
    }
    .pt12 .inner > h3 {
      font-size: 16px;
    }
    .pt12 .inner > ul {
      line-height: 1.8rem;
    }
    .pt12 .inner .card li {
      width: 100%;
      float: none;
      margin: 20px 0;
      padding: 30px;
    }
    .pt12 .inner .card li h3 {
      font-size: 20px;
    }
    .pt12 .inner .card li p {
      line-height: 2rem;
    }
    .pt12 .inner .card li img {
      max-width: 70px;
    }
    .pt12 .inner .list_01 li b {
      font-size: 16px;
    }
    .pt12.mid-career .inner .bg_gray > h3 {
      font-size: 18px;
    }

    /*パターン13 SP*/
    .kv_recruit .inner .inner_box h1 {
      display: block;
      width: 100%;
      max-width: 240px;
      margin-bottom: 50px;
    }
    .kv_recruit .inner .inner_box {
      display: block;
    }
    .kv_recruit .inner .inner_box .bt_area_other {
      display: block;
      width: 100%;
      max-width: 260px;
      float: none;
      padding-left: 0;
    }
    .bt_area_other .bt {
      font-size: 12px;
      padding: 12px;
      letter-spacing: .06rem;
    }
    .kv_recruit .inner .inner_box h1 img {
      top: 0;
      right: 0;
    }
    .kv_recruit .inner .inner_box .bt_area_other {
      margin: 0 auto;
    }
    .kv_recruit .inner .inner_box .bt_area_other .bt{
      font-size: 12px;
      margin: 10px 0;
      display: block;
      width: 100%;
      /*max-width: 260px;*/
    }
    .kv_recruit .inner .bg_line {
      height: 90px;
      width: 63%;
      top: 138px;
    }
    .pt13 {
      padding: 35px 30px;
    }
    .pt13 .bt_banner {
      display: block;
    }
    .pt13 .bt_banner li {
      display: block;
      width: 100%;
    }
    .pt13 .bt_banner li:nth-child(1) a,
    .pt13 .bt_banner li:nth-child(2) a {
      height: 120px;
    }
    .pt13 .bt_banner li a h3 {
      font-size: 28px;
      line-height: 1.5rem;
    }
    .pt13 .bt_area_other .bt {
      padding: 12px;
      margin-bottom: 0;
      max-width: 250px;
    }
    .pt13 .bt_area_other {
      margin: 20px auto;
      text-align: center;
    }
    .bt_area_other .bt > img {
      margin-right: 20px;
    }

    /*パターン14 SP*/
    .pt14 .inner .card {
      -webkit-justify-content: center;
      justify-content: center;
    }
    .pt14 .inner .card li > h2 {
      font-size: 20px;
    }
    .pt14 .inner .card li .bt_area_other .bt {
      font-size: 12px;
      padding: 15px 0;
    }
    .pt14.c_underlayer .inner {
      padding: 0 30px;
      box-sizing: border-box;
    }
    .pt14 .inner .step_box li {
      margin-right: 10%;
    }
    .pt14 .inner dl {
      display: block;
      width: 100%;
      margin-bottom: 20px;
    }
    .pt14 .inner dl dt {
      display: inline-block;
      width: auto;
      text-align: left;
      padding: 0;
    }
    .pt14 .inner dl > dd + dd span {
      display: block;
      font-size: 12px;
    }
    .pt14 .inner dl > dd {
      width: auto;
      display: inline-block;
    }
    .pt14 .inner dl > dd .label-required {
      padding-top: 0;
      border-bottom: none;
      margin-right: 0px;
      margin-left: 10px;
    }
    .pt14 .inner dl > dd + dd textarea {
      padding: 10px;
    }
    .pt14 .inner dl > dd + dd .mwform-tel-field input[type="text"] {
      width: 26%;
    }
    .pt14 .inner dl > dd + dd input,
    .pt14 .inner dl > dd + dd select {
      height: 55px;
    }
    .pt14 .inner .step_box {
      max-width: 330px;
    }
    form .bt_area_other .bt {
      padding: 22px;
    }
    form .bt_area_other:before {
      background-size: contain;
      width: 10px;
      height: 10px;
      left: 60px;
    }

    /*single SP*/
    .single {
      padding: 40px 0px 0;
    }
    .single .inner {
      padding: 0 30px;
      box-sizing: border-box;
    }
    .single .inner .single_top h1 {
      font-size: 22px;
      line-height: 2rem;
      margin-bottom: 10px;
      padding-bottom: 15px;
    }
    .single .inner .single_top .category {
      font-size: 12px;
    }
    .single .inner .single_top .sns-area {
      margin: 10px 0 0;
      float: none;
    }
    .single .inner .single_top {
      margin-bottom: 40px;
    }
    .kv_page .inner + h1 {
      font-size: 38px;
      top: 65%;
    }
    .kv_page .inner + h1 span {
      font-size: 12px;
      letter-spacing: .1rem;
      margin-top: 0;
    }
    .kv_page {
      height: 200px;
    }

    .bt_adobe {padding: 15px 25px;}
    .bt_adobe img {float: none;margin-right: 0;max-width: 195px;width: 100%;}
    .bt_adobe span {padding: 10px 0;}

    .searchform .searchfield {
      font-size: 16px;
      transform: scale(0.9);
      -webkit-transform: scale(0.9);
    }

    /*トップへ戻るボタン*/
    #page_top {
      background: none;
      bottom: 52px;
    }
    #page_top span {
     background: url(img/common/bt_top_sp.png) no-repeat;
     background-size: cover;
     margin-top: 10px;
   }
   .s_underlayer .inner + h1 {
    font-size: 24px;
    letter-spacing: 1px;
    max-width: 330px;
  }
  .s_underlayer .inner + h1.other {
    font-size: 16px;
  }

  /*SP 英語版*/
  .en .pt01 h2 {
    line-height: 2rem;
    margin-bottom: 30px;
  }
  .en .pt04 .inner .inner_text {
    padding: 0 30px;
  }
  .en .pt02 {
    padding: 40px 0 0 0;
  }
  .en .sub_disc {
    margin-bottom: 20px;
    line-height: 1.5rem;
    padding: 0 30px;
    box-sizing: border-box;
    word-break: break-all;
    text-align: justify;
  }
  .en .sub_disc br {
    display: none;
  }
  .en .table {
    padding: 40px 0px;
  }
  .en .bt_area_other {
    margin: 0px auto 50px;
  }
  .en .contact {
    padding: 50px 0 0 0;
  }
  .en .table .inner {
    margin: 0 auto;
  }
   .en .table .inner dl {
    display: block;
    border-spacing: 0;
    margin-bottom: 30px;
  }
  .en .table .inner dl dt {
    width: 100%;
    display: block;
    text-align: left;
    font-size: 16px;
  }
  .en .table .inner dl dd {
    display: block;
  }
}
/*media screen_end*/

/*iPhone 8 Plus縦*/
@media screen and (max-width: 480px) {
  .pt14 .inner .card li > h2 {
    margin-bottom: 20px;
    height: auto;
  }
  .pt14 .inner .card li > p {
    min-height: 0;
  }
}
/*media screen_end*/

/*iPhone 5/SE/4以下縦*/
@media screen and (max-width: 320px) {
  .pt14 .inner .step_box li {
    margin-right: 1%;
  }
  .pt14 .inner dl > dd + dd .mwform-tel-field input[type="text"] {
    width: 25%;
  }
}
/*media screen_end*/




