@charset "UTF-8";
/**
* reset
----------------------------------------------------*/
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  text-align: justify;
}
.screen-reader-response{
  display:none;
}
.wpcf7-not-valid-tip{
  color:#f00;
  display:block;
  padding:10px 0 0;
}
.wpcf7-response-output{
  text-align:center!important;
  /* display:block!important; */
  display:block;
  color:#f00!important;
  padding:50px 0 0;
  position:relative;
 }
/**
* body
----------------------------------------------------*/
html, body {
  height:auto;
  color: #5a5d61;
}
.logo{
  width:360px;
  margin:0 auto;
}
.logo img{
  width:100%;
}
/* 20250908 見出しタグ<h1>の設定 */
.top_inner_h1 {
  text-align: center;
  font-size: 12px;
  margin-top: 15px
}
/* //20250908 見出しタグ<h1>の設定 */
@media screen and (max-width: 1024px) {
  .sp_only{
    display:block;
  }
  .pc_only{
    display:none;
  }
  .wpcf7-response-output{
    text-align:left!important;
    font-size:18px;
    font-weight:normal;
    width:90%;
    margin:0 auto;
  }
}
@media screen and (min-width: 1024px) {
  .wpcf7-response-output{
    position:relative;
    left:6px;
  }
  .sp_only{
    display:none;
  }
  .pc_only{
    display:block;
  }
}
/**
* animate
----------------------------------------------------*/
@keyframes fadeA {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes animateA {
  0% {
    position: relative;
    left: -1400px;
    top: -1400px;
  }
  100% {
    left: 0;
    top: 0;
  }
}
@keyframes fadeB {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes animateB {
  0% {
    position: relative;
    left: 1400px;
    top: 1400px;
  }
  100% {
    left: 0;
    top: 0;
  }
}
@keyframes fadeB {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes animateB {
  0% {
    position: relative;
    left: 1400px;
    top: 1400px;
  }
  100% {
    left: 0;
    top: 0;
  }
}
@keyframes fadeC {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes animateC {
  0% {
    position: relative;
    left: 500px;
  }
  100% {
    left: 0;
    top: 0;
  }
}
@keyframes fadeIn {
  0% {
    display: none;
    opacity: 0;
    height: 0;
  }
  100% {
    display: block;
    opacity: 1;
    height: auto;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    display: none;
    opacity: 0;
    height: 0;
  }
  100% {
    display: block;
    opacity: 1;
    height: auto;
  }
}
/**
* slider
----------------------------------------------------*/
@media screen and (min-width: 1024px) {
.bx-wrapper {
  position: relative;
  margin: 0;
  padding: 0;
  *zoom: 1;
  width:980px;
  border:1px solid #fff;
}
}

.bx-wrapper img {
  max-width: 100%;
  height: auto;
  display: block;
  border:3px solid #fff;
}

.bx-wrapper .bxslider {
  margin: 0;
  padding: 0;
  list-style: none;

}

/* 20250908 事例名表示について */
.bxslider.works_title li a p {
    font-family: "Sawarabi Mincho";
    text-align: center;
}

.bxslider.works_title li a,
.bxslider.works_title li a:hover,
.bxslider.works_title li a:visited {
    color: #000;
}
/* //20250908 事例名表示について */

.bx-wrapper .bx-viewport {
  -webkit-transform: translatez(0);
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  width: 100%;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-prev,
.bx-wrapper .bx-next {
  display: none;
}
@media screen and (min-width: 1024px) {
 .page-top {
    overflow: hidden;
    width: 53px;
    margin: 0;
    float: right;
    cursor: pointer;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -ms-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
  }
  .page-top img {
    display: block;
    width: 100%;
  }
  .fixed {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index:10001;
  }
  .static {
    position: fixed;
    bottom: 54px;
    right: 24px;
    z-index:10001;
  }
  .more {
    display: block;
    text-align: center;
  }
  .more a {
    display: block;
    font-weight: 100;
    /*border:1px solid #f00;*/
    font-size: 14px;
    color: #5a5d61;
    padding: 0 0 10px;
    font-family: 'Viga';
    width: 70px;
    margin: 0 auto;
    text-align: center;
  }
  /**
  * header
  ----------------------------------------------------*/
  .index header {
    text-align: center;
    display: block;
    height: 100vh;
  }
  .index header .inner {
    padding: 20px 0 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    margin: auto;
    position:fixed;
  }
  .page header .inner {
    padding: 300px 0 200px;
    /* background: url(../image/border_icon.png) no-repeat center bottom;
    background-size:47px 30px; */
    position: absolute;
    top: 20%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    margin: auto;
  }
  .page header .inner h1{
    font-size:24px;
    letter-spacing:1px;
	font-family: 'Viga';
  }
  header .inner .largeFont ul {
    display: block;
    text-align: center;
  }
  header .inner .largeFont ul li {
    width: 30px;
    display: inline-block;
    margin: 0 37px 0 0;
    position: relative;
    top: 2px;
  }
  header .inner .largeFont ul li:nth-child(1), header .inner .largeFont ul li:nth-child(3), header .inner .largeFont ul li:nth-child(5) {
    width: 30px;
    animation: animateA .3s normal, fadeA 3s normal;
  }
  header .inner .largeFont ul li:nth-child(2), header .inner .largeFont ul li:nth-child(4) {
    width: 30px;
    animation: animateB .4s normal, fadeB 3s normal;
  }
  header .inner .largeFont ul li:nth-child(5) {
    margin: 0;
  }
  header .inner .largeFont ul li img {
    width: 100%;
    display: block;
  }
  header .inner .smallFont {
    letter-spacing: -.4em;
    position: relative;
    padding: 0;
    text-align: center;
    height: 50px;
    padding: 10px 0 0;
  }
  header .inner .smallFont ul {
    display: block;
    text-align: center;
    width: 100%;
    overflow: hidden;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    margin: auto;
  }
  header .inner .smallFont ul li {
    display: block;
    position: relative;
    display: inline-block;
    letter-spacing: normal;
    padding: 0 2px;
  }
  header .inner .smallFont ul li:nth-child(1) {
    width: 11px;
    animation: animateA .7s normal, fadeB 3s normal;
  }
  header .inner .smallFont ul li:nth-child(2) {
    width: 11px;
    animation: animateB .8s normal, fadeB 3s normal;
  }
  header .inner .smallFont ul li:nth-child(3) {
    width: 11px;
    animation: animateA .7s normal, fadeB 3s normal;
  }
  header .inner .smallFont ul li:nth-child(4) {
    width: 11px;
    animation: animateB .8s normal, fadeB 3s normal;
  }
  header .inner .smallFont ul li:nth-child(5) {
    width: 11px;
    animation: animateA .7s normal, fadeB 3s normal;
    margin: 0 10px 0 0;
  }
  header .inner .smallFont ul li:nth-child(6) {
    width: 11px;
    animation: animateB .8s normal, fadeA 3s normal;
  }
  header .inner .smallFont ul li:nth-child(7) {
    width: 11px;
    animation: animateA .7s normal, fadeA 3s normal;
  }
  header .inner .smallFont ul li:nth-child(8) {
    width: 11px;
    animation: animateB .8s normal, fadeA 3s normal;
  }
  header .inner .smallFont ul li:nth-child(9) {
    width: 11px;
    animation: animateA .7s normal, fadeA 3s normal;
    left: -3px;
  }
  header .inner .smallFont ul li:nth-child(10) {
    width: 11px;
    animation: animateB .8s normal, fadeA 3s normal;
    left: -5px;
  }
  header .inner .smallFont ul li:nth-child(11) {
    width: 11px;
    animation: animateA .7s normal, fadeA 3s normal;
    left: -4px;
  }
  header .inner .smallFont ul li img {
    width: 100%;
    display: block;
  }
  .index header .scroll {
    width: 47px;
    height: 30px;
    background: url(../image/border_icon.png) no-repeat center center;
    background-size: 96%;
    /*position: absolute;*/
    position:fixed;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .index header .scroll a {
    display: block;
    width: 100%;
    height: 100%;
  }
  /**
  * snav
  ----------------------------------------------------*/
  .snav {
    position: fixed;
    left: 60px;
    top: 60px;
    z-index:10009;
  }
  .snav.open{
	background-color: rgba(255,255,255,0.9);
	width: 300px;
	height: calc(100% - 90px);
	min-height: 470px;
  }
	.snav .btn{
		background-color: rgba(255,255,255,0.9);
		width: 65px;
		height: 65px;
	}
  .snav.open .btn{
	  background-color: transparent;
  }
  .snav .btn .menu-trigger.active {
    -webkit-transform: rotate(630deg);
    transform: rotate(630deg);
  }
  .snav .btn .menu-trigger.active span:nth-of-type(1), .snav .btn .menu-trigger.active span:nth-of-type(3) {
    opacity: 0;
    animation: fadeC .5s normal;
  }
  .snav .btn .menu-trigger,
  .snav .btn .menu-trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
  }
  .snav .btn .menu-trigger {
    position: relative;
    top: 18px;
    left: 10px;
    width: 45px;
    height: 28px;
  }
  .snav .btn .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #5a5d61;
    border-radius: 1px;
  }
  .snav .btn .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  .snav .btn .menu-trigger span:nth-of-type(2) {
    top: 14px;
  }
  .snav .btn .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }

.snav .text_logo{
	position: fixed;
	top: 81px;
	left: 154px;
	z-index: 10009;
}

  /**
  * gnav
  ----------------------------------------------------*/
  .gnav {
	  box-sizing: border-box;
	/* background-color: rgba(255,255,255,0.9); */
	display: none;
	position: fixed;
	left: 60x;
	top: 125px;
	padding: 10px;
  }
  .gnav ul {
    display: block;
    position: relative;
  }
  .gnav ul li {
    display: none;
    width: 300px;
  }
  .gnav ul li a {
    display: block;
    text-align: left;
    padding: 8px 0;
    font-size: 14px;
    position: relative;
    margin: 0 0 10px;
    font-weight: 100;
    color: #5a5d61;
	font-family: 'viga';
  }
  .gnav ul li a span {
    display: none;
    align-items: center;
    padding: 0 0 0 43px;
    position: relative;
    font-weight: normal;
    font-family: "Sawarabi Mincho";
	font-size: 12px;
  }
  .gnav p {
    display: none;
  }
  .gnav.active {
    display: block;
  }
  .gnav.active ul li {
    display: block;
    animation: fadeB 3s normal;
  }
  .gnav.active ul li a:hover span {
    animation: animateC .3s normal, fadeB 2s normal;
    display: inline-block;
  }
  .gnav.active ul li a:hover span:before {
    content: "";
    display: block;
    height: 1px;
    width: 25px;
    background: #000;
    margin: 0 .4em;
    position: absolute;
    left: 8px;
    top: 49%;
    bottom: 50%;
    margin: 0 auto;
  }
  .gnav.active p {
    position: absolute;
    left: -56px;
    bottom: -100px;
    transform: rotate(90deg);
    color: #5a5d61;
    font-size: 10px;
    letter-spacing: 1px;
    display: none;
  }
  .gnav.active p.active {
    animation: fadeB 2s normal;
    display: block;
  }

  /**
  * sns
  ----------------------------------------------------*/
  .sns {
    width: 100px;
    position: fixed;
    right: 33px;
    top: 50px;
    z-index:10001;
  }
  .sns ul li {
    display: block;
    width: 55px;
    text-align: center;
    margin: 0 auto 20px;
  }
  .sns ul li:nth-child(1) img {
	/* LOGO */
    width: 55px;
    height: 55px;
  }
   .sns ul li:nth-child(2) img {
	/* FB */
    /* width: 10px;
    height: 20px; */
  }
  .sns ul li:nth-child(2) img {
	/* IG */
    width: 20px;
    height: auto;
  }
  .sns ul li:nth-child(5) img {
	/* YOUTUBE */
    width: 20px;
    height: auto;
  }
  .sns ul li:nth-child(3) img {
	/* MAIL */
    width: 20px;
    height: auto;
  }
  .sns ul li:nth-child(4) img {
	/* MAP */
    width: 14px;
    height: auto;
  }

  .sns:not(.home .sns){
	right: 134px;
	top: 76px;
  }
  .sns:not(.home .sns) ul{
	  display: flex;
	  flex-wrap: wrap;
	  width: 300px;
  }
  .sns:not(.home .sns) ul li{
	  width: 55px;
	  margin: 0;
  }
  .sns:not(.home .sns) ul li.sns_logo{
	  display: none;
  }

.gnav_sns{
	display: none;
}


.footer_gnav_sns{
	display: block;
	padding: 100px 0 0;
}
.footer_gnav_sns ul{
	width: 386px;
	margin: 0 auto;
}
.footer_gnav_sns li{
	float: left;
	text-align: center;
	width: 16% !important;
	height: 40px;
	margin: 0 4.5%;
	vertical-align: middle;
}
.footer_gnav_sns li a{
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
}
.footer_gnav_sns img{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	vertical-align: middle;
}

.footer_gnav_sns li:nth-child(1) img {
	/* FB */
	/* width: 10px;
	height: 20px; */
}
.footer_gnav_sns li:nth-child(1) img {
	/* IG */
	width: 20px;
	height: auto;
}
.footer_gnav_sns li:nth-child(2) img {
	/* Youtube */
	width: 20px;
	height: auto;
}
.footer_gnav_sns li:nth-child(3) img {
	/* MAil */
	width: 14px;
	height: auto;
}
.footer_gnav_sns li:nth-child(4) img {
	/* MAP */
	width: 20px;
	height: auto;
}

  /**
  * section
  ----------------------------------------------------*/
  #cont{
    background:#fff;
    position:relative;
    /* z-index:10000; */
    z-index:auto;
  }
  section .inner {
    /*max-width: 984px;*/
    margin: 0 auto;
    padding:0 20px;
    position:relative;
    border-left:1px solid transparent;
    border-top:1px solid transparent;
    width:1024px;
  }
  section .inner .middle > h2,
  section .inner >h2 {

    transform: rotate(90deg);
display: block;
    position: absolute;
    /*left: -82px;*/
    /*border:1px solid #f00;*/
    left:0;
    /*top: 82px;*/
    font-size: 14px;
    height: 35px;
    line-height: 35px;
    /*width: 300px;*/
    padding: 0 0 0 23px;
    border-left: 1px solid #5a5d61;
    font-family: 'Viga';
    color:#5a5d61;
  }

  section.thinkAbout .inner h2{
  	left:-38px;
  	top:39px;
  }
  section#news .inner h2{
  	left:-15px;
  	top:14px;
  }
  section.concept .inner h2{
  	left:-26px;
  	top:24px;
  }
  section.flow .inner h2{
  	left:-14px;
  	top:13px;
  }
  section.nudgeInc .inner h2{
  	left:-28px;
  	top:163px;
  }
  section.contact .inner h2{
  	left:-26px;
  	top:24px;
  }
  section.movie .inner h2{
  	left:-28px;
  	top:163px;
  }


  /**
  * page
  ----------------------------------------------------*/
  .page_inner{
    display: flex;
	flex-wrap: wrap;
    width:1024px;
    margin:380px auto 0;
    overflow:hidden;
  }
  /**
  * archive
  ----------------------------------------------------*/
  .cat_name{
	width: 100%;
	text-align: center;
	margin: 0 0 40px;
  }
  .archive_cont{
      width:33.333333%;
      float:left;
      padding:0 3%;
    }
    .archive_cont p img{
      display:block;
      width:100%;
      height:auto!important;
    }
    .archive_cont a{
      color:#000;
    }
    .archive_cont dt{
      display:block;
      text-align:center;
      font-size:14px;
      line-height:1.6em;
      font-weight:normal;
      margin:10px auto 40px;
	  font-family: "Sawarabi Mincho";
    }
    .archive_cont dd{
      display:block;
      line-height:1.9em;
    }

	.archives_cat{
		background-color: #f1f1f1;
		width: 100%;
		margin: 40px 3% 0;
		padding: 15px;
		font-size: 13px;
	}
	.archives_cat span{
		font-weight: bold;
	}
	.archives_cat a{
		padding: 0;
		color: #5a5d61;
		font-size: 14px;
	}
	.archives_cat a:hover{
		color: #5a5d61;
		text-decoration: underline;
	}

  /**
  * top
  ----------------------------------------------------*/
  .index {
    margin: 108px auto 0;
    padding: 40px 0 0;
    overflow: hidden;
  }
  .index section.performance .slide .inner {
    max-width: 1024px;
    margin: 0 auto;
  }
  .index section.performance .slide .inner #slide_space {
    margin: 0 auto 72px;
  }
  .index section.performance .slide .inner ul {
    display: flex;
  }
  .index section.performance .slide .inner ul li {
    display: block;
  }
  .index section.performance .slide .inner ul li a{
    display:block;
  }
  .index section.thinkAbout {
    margin: 237px 0 0;
  }
  .index section.flow h2,
  .index section.thinkAbout h2{
    /*left:-102px;*/
  }
  .index section.thinkAbout .inner ul {
    /* display: block; */
	display: flex;
	flex-wrap: wrap;
    /* overflow: hidden; */
    width: 744px;
    margin: 0 auto 61px;
  }
  .index section.thinkAbout .inner ul li {
    display: block;
    width: 32%;
    float: left;
    margin: 0 auto 20px;
    overflow: hidden;
  }
	.index section.thinkAbout .inner ul li a,
	.index section.thinkAbout .inner ul li a:hover,
	.index section.thinkAbout .inner ul li a:visited{
	  color: #000;
  }
  .index section.thinkAbout .inner ul li h3{
		display: block;
		text-align: center;
		font-size: 14px;
		line-height: 1.6em;
		font-weight: normal;
		margin: 0 auto;
		font-family: "Sawarabi Mincho";
  }
  .index section.thinkAbout .inner ul li img {
    display: block;
    width: 244px;
	max-width: 100%;
	  height:auto!important;
	  margin-bottom: 10px;
  }
  /* .index section.thinkAbout .inner ul li:nth-child(2) img, .index section.thinkAbout .inner ul li:nth-child(5) img {
    margin: 0 auto;
  } */
  .index section.thinkAbout .inner ul li:nth-child(1) img, .index section.thinkAbout .inner ul li:nth-child(4) img {
    display: block;
    float: right;
  }
  .index section.news {
    padding: 193px 0 0;
  }
  .index section.news .inner {
    max-width: 1024px;
    margin: 0 auto;
  }
  .index section.news .inner ul {
    width: 580px;
    display: block;
    margin: 0 auto 50px;
    border: 1px solid #fff;
    font-size: 14px;
  }
  .index section.news .inner ul li {
    margin: 0 0 44px;
    display: block;
  }
  .index section.news .inner ul li time {
    padding: 0;
  }
  .index section.news .inner ul li a {
    font-family: "Sawarabi Mincho";
    position: relative;
    left: 46px;
    color: #5a5d61;
    font-size: 14px;
  }
  .index section.concept {
    background: url(../image/concept_bg.png) no-repeat center bottom;
    background-size: cover;
    margin: 138px auto 0;
    padding: 117px 0 146px;
  }
  .index section.concept .inner {
    max-width: 1024px;
    margin: 0 auto;
    position: relative;
  }
  .index section.concept .inner p {
    font-family: "Sawarabi Mincho";
    width: 744px;
    display: block;
    margin: 0 auto 28px;
    font-size: 14px;
    position: relative;
    top: -4px;
  }
  .index section.concept .inner p a{
    color:#5a5d61;
  }
  .index section.nudgeInc {
    padding: 135px 0 0;
  }
  .index section.nudgeInc:before {
    content: "";
    height: 32px;
    display: block;
    background: url(../image/border_icon.png) no-repeat center top;
    background-size: 47px 30px;
  }
  .index section.nudgeInc .inner {
    padding: 136px 0 0;
    max-width: 1024px;
    margin: 0 auto;
  }
  .index section.nudgeInc .inner .company dl dt img {
    display: block;
    width: 530px;
    margin: 0 auto 36px;
  }
  .index section.nudgeInc .inner .company dl dd ul li {
    display: block;
    padding: 0 0 36px;
  }
  .index section.nudgeInc .inner .company ul li {
    font-size: 14px;
    display: block;
    text-align: center;
    font-family: "Sawarabi Mincho";
    font-family: "Sawarabi Mincho";
  }
  .index section.nudgeInc .inner .company ul li:first-child img {
    display: block;
    width: 100%;
    border: 5px solid #f00;
  }
  .index section.nudgeInc .inner .accessMap ul {
	  padding-top: 60px;
  }
  .index section.nudgeInc .inner .accessMap ul li img {
    display: block;
    width: 352px;
    margin: 0 auto 73px;
  }
  .index section.nudgeInc .inner .accessMap ul .more a {
    width: 100px;
  }
  .index section.flow {
    margin: -132px auto 0;
    padding: 320px 0 0;
    /*border-top: 1px solid #5a5d61;*/
  }
  .index section.flow .inner ul li:first-child img {
    display: block;
    width: 530px;
    margin: 0 auto;
  }
  .index section.flow .inner ul li:last-child {
    padding: 147px 0 0;
  }
  .index section.flow .inner ul li:last-child img {
    display: block;
    width: 910px;
    margin: 0 auto;
  }
  .index section.flow .inner p {
    padding: 0 80px 0 0;
    display: block;
    text-align: right;
  }
  .index section.flow .inner p span {
    padding: 0 0 0 23px;
    background: url(../image/radius_icon.png) no-repeat left center;
    background-size: 14px 14px;
    color: #5a5d61;
    display: inline-block;
    font-size: 14px;
    font-family: "Sawarabi Mincho";
  }
  .index section.recruit .inner {
    max-width: 1024px;
    margin: 0 auto;
  }
  .index section.recruit .inner .cont h2 {
    padding: 228px 0 0;
    display: block;
    text-align: center;
    /*opacity:0;*/
  }
  .index section.recruit .inner .cont h2 img {
    display: block;
    width: 260px;
    margin: 0 auto;
  }
  .index section.recruit .inner .cont p {
    display: block;
    text-align: center;
  }
  .index section.recruit .inner .cont p:before {
    content: "";
    display: block;
    width: 1px;
    height: 101px;
    margin: 92px auto 0;
    border-left: 1px solid #5a5d61;
    position: relative;
    left: 1px;
  }
  .index section.recruit .inner .cont p img {
    width: 340px;
    display: block;
    margin: 97px auto 0;
  }

/**
 * form
-------------------------------------------------------------------------------------*/
  section.contact {
    padding: 274px 0 0;
  }
  section.contact input[type="email"],
  section.contact input[type="text"] {
    width: 100%;
    padding: 8px;
    border: 1px solid #808080;
  }
  section.contact textarea {
    width: 100%;
    padding: 8px;
    height: 180px;
    border: 1px solid #808080;
  }
  section.contact .inner {
    max-width: 1024px;
    margin: 0 auto;
  }
  section.contact .inner table {
    width: 616px;
    margin: 0 auto;
    border-collapse: collapse;
  }
  section.contact .inner table tr {
    border-bottom: 21px solid transparent;
  }
  section.contact .inner table tr th {
    font-weight: normal;
    font-size: 14px;
    vertical-align: middle;
    width: 117px;
  }
  section.contact .inner .button {
    width: 500px;
    margin: 0 auto;
    padding: 0 0 0 60px;
  }
  section.contact .inner .button input[type="submit"] {
    border: none;
	display: block;
    background: url(../image/submitBg.png) no-repeat left center;
    background-size: 100%;
    width: 310px;
    display: block;
    color: #fff;
    text-align: center;
    font-size: 14px;
    padding: 15px 0;
	margin: 0 auto;
  }
  section.contact .inner .button input[type="submit"]:hover {
    cursor: pointer;
  }
  section.contact .pri a {
    margin: 45px auto 0;
    font-size: 14px;
    color: #5a5d61;
    position: relative;
    left: -2px;
    display: block;
    width:500px;
    padding:0 0 0 63px;
  }
  section.contact .pri a:after {
    content: ">";
    position: relative;
    left: 4px;
  }
  .reCAPTCHA_txt{
	box-sizing: border-box;
	background-color: #f1f1f1;
	width: 616px;
	margin: 40px auto;
	padding: 15px;
	font-size: 12px;
	color: #5a5d61;
  }
  .reCAPTCHA_txt a{
		font-size: 12px;
		color: #5a5d61;
  }
	.grecaptcha-badge {
		visibility: hidden;
	}

	/**
	 * single
	-------------------------------------------------------------------------------------*/
	.single_content{
	  width:800px;
	  margin:50px auto 0;
	}
	.single_content .inner{
	}
	.single_content .inner > h2{
	  display:block;
	  border-bottom:1px solid #ccc;
	  padding:0 0 8px;
	}
	.single_content .inner .cont{
	  display:block;
	  margin:30px auto 0;
	  line-height:1.8em;
	}
	.single_content .inner .bottom{
	  position:relative;
	  padding:40px 0 0;
	}
	.single_content .inner .bottom ul{
	  display:block;
	  position:absolute;
	  bottom:-45px;
	  right:0;
	}
	.single_content .inner .bottom ul li{
	  display:block;
	  text-align:right;
	  font-size:13px;
	}
	.single_content .pager{
	}
	.single_content .pager ul{
	  display:block;
	  overflow:hidden;
	  margin:120px auto 140px;
	}
	.single_content .pager ul li{
	  float:left;
	  width:48%;
	}
	.single_content .pager ul li a{
	  display:block;
	  text-align:center;
	  background:#000;
	  color:#fff;
	  padding:10px;
	}
	.single_content .pager ul li:nth-child(even){
	  float:right;
	}
	.single_content .pager ul li a:after{
	  content:"<";
	  float:left;
	  font-size:12px;
	  position:relative;
	  top:3px;
	}
	.single_content .pager ul li:nth-child(even) a:after{
	  content:">";
	  float:right;
	  font-size:12px;
	  position:relative;
	  top:3px;
	}
	.page_content .inner table  {
	    margin: 30px auto 80px;
	    border-collapse: collapse;
		max-width: 1024px;
		width:100%;
	}
	.page_content .inner table th {
		border: 1px solid #ccc;
		background: #F2F2F2;
		max-width: 1024px;
		width: 40%;
		font-weight: normal;
		font-size: 14px;
		text-align: left;
		padding: 3px 0 0 31px;
		vertical-align: middle;
	}

	.page_content .inner table td {
		font-size: 14px;
		padding: 19px 19px 19px 20px;
		vertical-align: middle;
		border: 1px solid #ccc;
		font-weight: normal;
		text-align: left;
		max-width: 1024px;
		width: 70%;
	}

	.post_cat{
		padding: 15px 0 0;
	}
	.post_cat,
	.post_cat a{
		font-size: 14px;
		color: #5a5d61;
	}
	.post_cat a:hover{
		text-decoration: underline;
	}

	/**
	 * privacy
	-------------------------------------------------------------------------------------*/
	.page_content .center{
	    width:1024px;
	    margin:0 auto;
	    overflow:hidden;
	}
	.page_content .center p{
		display:block;
		margin:0 0 18px;
		font-size:14px;
		line-height:1.8em;
	}
	.page_content .center > p{
		display:block;
		padding:0 0 30px;
		margin:0;
	}
	.page_content .center dl dd ul li{
		display:block;
		margin:0 0 10px;
	}
	.page_content .center dl dd ul li:last-child{
		margin:0;
	}
	.page_content .center dt,
	.page_content .center dd,
	.page_content .center dl{
		display:block;
		text-align:left;
	}
	.page_content .center dt{
		display:block;
		background:#000;
		color:#fff;
		margin:0 0 18px;
		padding:6px 4px 3px 15px;
		font-size:17px;
	}
	.page_content .center dd{
		margin:0 0 50px;
		line-height:1.8em;
		font-size:14px;
	}
	.page_content .center dd span{
		display:block;
		padding:6px;
		margin:10px 0 10px;
		font-weight:bold;
		color:#000;
		font-size:15px;
	}
	.page_content .center dd a{
		color:#000;
	}

	/**
	 * recruit
	-------------------------------------------------------------------------------------*/
	.page_content .inner table  {
	    margin: 30px auto 80px;
	    border-collapse: collapse;
		max-width: 1024px;
		width:100%;
	}
	.page_content .inner table th {
		border: 1px solid #ccc;
		background: #F2F2F2;
		max-width: 1024px;
		width: 40%;
		font-weight: normal;
		font-size: 14px;
		text-align: left;
		padding: 3px 0 0 31px;
		vertical-align: middle;
	}

	.page_content .inner table td {
		font-size: 14px;
		padding: 19px 19px 19px 20px;
		vertical-align: middle;
		border: 1px solid #ccc;
		font-weight: normal;
		text-align: left;
		max-width: 1024px;
		width: 70%;
	}
	.recruit .page_inner{
		width:100%;
	}
	.page_inner .contact{
		width:100%;
		padding:80px 0;
		/* background:#f2f2f2; */
	}
	.page_inner .contact .inner{
		width:940px;
		max-width:1024px;
		margin:0 auto;
		padding:0;
	}
	.page_content{
		margin: 0 auto;
	}
  /**
  * footer
  ----------------------------------------------------*/
	footer{
		background:#fff;
		position:relative;
		/* z-index:10001; */
	    z-index:auto;
    border-bottom:30px solid #5a5d61;
	}
  /* 20250908 会社情報について */
  .footer_company_information {
    display: block;
    padding: 100px 0 0;
  }
  .footer_company_information p {
    text-align: center;
  }
  /* //20250908 会社情報について */
  footer .copy {
    padding: 149px 0 28px;
  }
  footer .copy p {
    font-size: 12px;
    display: block;
    text-align: center;
  }
  /* 20250908 内部リンクについて */
  .copy a.copy_a {
    color: #5a5d61;
  }
  /* //20250908 内部リンクについて */
}


/* reCAPTCHA v3　表示位置 */
.grecaptcha-badge{
    margin-bottom: 200px;
}


/*ページネーション*/
.wp-pagenavi,
.nav-below {
	clear: both;
	text-align: center;
	margin: 40px auto 0;
}
.wp-pagenavi a,
.wp-pagenavi span {
	text-align: center;
	display: inline-block;
	border: none !important;
	background-color: #eee;
	text-decoration: none !important;
	width: 50px;
	height: 40px;
	padding: 0;
	margin: 0 12px 10px !important;
	font-size: 12px;
	line-height: 37px;
	color: #111;
	text-decoration: none;
}

.wp-pagenavi span.current {
	background-color: #5a5d61 !important;
	font-weight: normal !important;
	color: #fff !important;
}
.wp-pagenavi .pages {
	width: 80px;
}
.nav-previous,
.nav-next {
	display: block;
	text-decoration: none;
	width: 10%;
	height: 40px;
	padding: 0;
	margin: 0 5px;
	font-size: 12px;
	line-height: 40px;
}
.nav-previous a,
.nav-next a{
	display: block;
	background-color: #eee;
	text-decoration: none !important;
	width: 100%;
	height: 100%;
	color: #111;
}
.wp-pagenavi a:hover,
.nav-previous a:hover,
.nav-next a:hover {
	background-color: #ccc;
}
.nav-previous {
	float: left;
}
.nav-next {
	float: right;
}


.comingsoon{
	text-align:center;
	font-size: 4vw;
	font-weight:bold;
	padding:80px 0 120px;
}


/*THINK ABOUT*/
.thinkAbout h3.cat_ttl{
	position: relative;
	text-align: center;
	width: 744px !important;
	margin: 140px auto 60px;
	font-size: 14px;
	font-family: 'Viga';
	width: 70px;
}
.thinkAbout h3.cat_ttl span{
	position: relative;
	z-index: 2;
}
.thinkAbout h3.cat_ttl::before{
	background-color: #5a5d61;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	margin: auto;
	content: "";
	z-index: 0;
}
.thinkAbout h3.cat_ttl::after{
	background-color: #fff;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 180px;
	height: 10px;
	margin: auto;
	content: "";
	z-index: 1;
}
.thinkAbout .cat_bnr{
	margin: 0 auto !important;
}
@media screen and (min-width: 1024px) {
/*THINK ABOUT スマホ用カテゴリ一覧*/
.think_about_catlist_sp{
	display: none !important;
}
}


/*MOVIE*/
section.movie .inner{
	padding: 136px 0 0;  
}
section.movie .movie_wrap{
	width: 530px;
	margin: 0 auto;
}
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

/*REMOTE*/
.remote-wrap{
	text-align: center;
}
.remote-wrap img{
	width: 100%;
	height: auto;
}

/*HIRAYA*/
.hiraya{
	text-align: center;
}
.hiraya img{
	width: 100%;
	height: auto;
}

/*VOICE*/
#voice{
	background-color: #eee;
	margin: 220px 0 0;
	padding: 40px 0;
}
#voice h2{
	top: 15px;
	left: -15px;
}
.voice_wrap{
	display: flex;
	flex-wrap: wrap;
	width: 744px;
	margin: 0 auto 60px;
}
.voice_wrap .item{
	width: 48%;
}
.voice_wrap .item:nth-of-type(odd){
	margin-right: 4%;
}
