/*
Theme Name: a	
Theme URI: https://dessin.work/
Description: dessin Inc. Client theme.
Author: dessin Inc. development team [Yuki Fujii]
Version: 2023-08-03
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, u, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, input {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  color: #000;
  font: inherit;
  vertical-align: baseline;
  line-height: 1.6;
  letter-spacing: 0.06em;
  font-family: "Noto Sans JP", serif;
}
input {
  font-family: "Noto Sans JP", serif;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  font: inherit;
}
html {
  scroll-behavior: smooth;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
a {
  color: #333;
  text-decoration: none;
  transition: 0.3s;
}
a:hover img {
  opacity: 0.8;
}
img, iframe {
  vertical-align: bottom;
  max-width: 100%;
  background: transparent;
  transition: 0.3s;
}
input[type=submit], input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
        appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type=submit]::-webkit-search-decoration, input[type=button]::-webkit-search-decoration {
  display: none;
}
input[type=submit]::focus, input[type=button]::focus {
  outline-offset: -2px;
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}
.grecaptcha-badge {
  display: none;
}
.clear:after {
  content: "";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}
.df {
  display: flex;
}
.dg{
  display: grid;
}
.sb {
  justify-content: space-between;
}
.fw {
  flex-wrap: wrap;
}
.scrollTop{
  scroll-margin-top: 120px;
}
.w90 {
  margin: 0 auto;
  width: 90%;
}
.box_hl {
	display: none;
	position: absolute;
	top: 100%;
	right: 0px;
	z-index: 100;
	background: #fff;
	border: 1px solid #c0cec9;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 1.5rem;
	margin: 0px;
	padding: 0px;
	width: 345px;
	text-align: center;
}
#top_search_keyword,
#top_search_keyword_another{
	padding: 20px 20px 0px;
	text-align: left;
}
#box_hl_search.box_hl,
#box_hl_search_another.box_hl{
	background: #eee;
}
#top_search_page_id_wrap,
#top_search_page_id_wrap_another{
	padding: 0px 20px 20px;
	text-align: left;
}
.box_hl_close{
	display: block;
	width: 100%;
	border: none;
	background: #333;
	color: #fff;
	font-size: 1.5rem;
	line-height: 1.3;
	margin: 0px;
	padding: 3px 0px;
	text-align: center;
}
.box_hl_close span{
  color: #fff;
  font-size: 15px;
}
.box_hl.box_hl_open {
	display: block;
}
#tmp_query,
#tmp_query_another{
	display: inline-block;
	vertical-align: middle;
	border: 1px solid #fff !important;
	border-right: none !important;
	border-radius: 5px 0px 0px 5px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0px;
	width: calc(100% - 40px) !important;
	height: 40px !important;
}
#submit,
#submit_another{
	display: inline-block;
	vertical-align: middle;
	border: 1px solid #333;
	border-left: none;
	background: url(https://www.pref.kumamoto.jp//img/common/icon_search.png) no-repeat center center #333;
	color: #fff;
	border-radius: 0px 5px 5px 0px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0px 0px 0px -1px;
	padding: 0px;
	width: 41px;
	height: 40px;
	text-align: left;
	text-indent: -9999em;
	overflow: hidden;
}
#cse-search-box label,
#cse-search-box_another label{
	display: block;
	width: 100%;
	color: #333;
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 5px;
}
#open_page_id_submit,
#open_page_id_submit_another{
	display: inline-block;
	vertical-align: middle;
	border: 1px solid #333;
	border-left: none;
	background: url(https://www.pref.kumamoto.jp//img/common/icon_search.png) no-repeat center center #333;
	color: #fff;
	border-radius: 0px 5px 5px 0px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0px 0px 0px -1px;
	padding: 0px;
	width: 41px;
	height: 40px;
	text-align: left;
	text-indent: -9999em;
	overflow: hidden;
}
#open_page_id,
#open_page_id_another{
	display: inline-block;
	vertical-align: middle;
	border: 1px solid #fff !important;
	border-right: none !important;
	border-radius: 5px 0px 0px 5px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0px;
	width: calc(100% - 40px);
	height: 40px;
}
#cse_filetype fieldset legend,
#cse_filetype_another fieldset legend {
	display: none;
}
#cse_filetype fieldset,
#cse_filetype_another fieldset{
	border: none;
	margin: 10px 0px;
	padding: 0px;
	text-align: right;
	font-size: 14px;
}
#top_search_page_id_wrap label,
#top_search_page_id_wrap_another label{
	display: block;
	width: 100%;
	color: #333;
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 5px;
}
.fade-in {
  opacity: 0;
  transition-duration: 500ms;
  transition-property: opacity, transform;
}

.fade-in-up {
  transform: translate(0, 50px);
}

.fade-in-down {
  transform: translate(0, -50px);
}

.fade-in-left {
  transform: translate(-50px, 0);
}

.fade-in-right {
  transform: translate(50px, 0);
}

.scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}
.loadModalWrap{
  width: 100%;
  height: 100vh;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  animation: fadeOut 1s 2s forwards ease-in-out; 
  z-index: 1000;
  box-sizing: border-box;
}
@keyframes fadeOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
.loadModalWrap .futureTxt{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: 1;
  width: 32px;
  opacity: 0;
  animation: txtDisp 0.3s 1s forwards ease-in-out;
}
@keyframes txtDisp {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* .doorWrap{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
} */
.doorWrap{
  position: absolute;
  bottom: 168px;
  left: 50%;
  transform: translateX(-50%);
}
.door{
  display: block;
  width: 356px;
  height: 526px;
  background-color: #e63913;
  position: relative;
  transform-origin: left center;
  animation: openDoor 0.8s forwards ease-in-out;
}
@keyframes openDoor {
  0% {
    transform: perspective(800px) rotateY(0deg);
  }
  100% {
    transform: perspective(800px) rotateY(-50deg);
  }
}
.doorWrap > img{
  width: 260px;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
  animation: kumamonOut 0.5s 0.3s forwards ease-in-out;
}
@keyframes kumamonOut {
  0% {
    transform: translate(0,0);
    opacity: 0;
  }
  100% {
    transform: translate(336px, 100px);
    opacity: 1;
  }
}
.topPage{
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background: url('img/bg_sky.jpg') no-repeat center;
  background-size: cover;
  background-attachment: fixed;
}
header.sp{
  display: none;
}
.footMenu{
  display: none;
}
header.pc{
  width: 100%;
  background-color: #fff;
  /* position: fixed;
  top: 0;
  left: 0;
  z-index: 999; */
}
header.pc .grayLine{
  width: 100%;
  background-color: #E8E8E8;
  padding: 12px 1%;
  box-sizing: border-box;
  justify-content: space-between;
  align-items: center;
}
header.pc .grayLine p{
  font-size: 12px;
  font-weight: 400;
  font-family: "游ゴシック","ヒラギノ丸ゴ ProN ",sans-serif;
  color: #818181;
}
header.pc .grayLine a{
  display: flex;
  align-items: center;
  font-weight: 400;
  font-family: "游ゴシック","ヒラギノ丸ゴ ProN ",sans-serif;
  color: #818181;
}
header.pc .grayLine a img{
  display: block;
  margin-left: 4.2px;
}
header.pc .headerInner{
  width: 100%;
  padding: 0 2% 0 1%;
  box-sizing: border-box;
}
header.pc .headerInner .logo{
  width: 237px;
  margin-right: 2%;
}
header.pc .headerInner .logo a{
  display: block;
  width: 100%;
  height: 100%;
  padding: 20px 0 16px;
  box-sizing: border-box;
}
header.pc .headerInner nav ul{
  height: 100%;
}
header.pc .headerInner nav li{
  margin-right: 27px;
}
header.pc .headerInner nav li:last-child{
  margin-right: 0;
}
header.pc .headerInner nav li a{
  display: flex;
  align-items: center;
  font-weight: 500;
  height: 100%;
  position: relative;
}
header.pc .headerInner nav li:hover a{
  color: #ED2020;
}
header.pc .headerInner nav li a::after{
  display: block;
  content: "";
  width: 30px;
  height: 16px;
  background-color: #ED2020;
  border-radius: 50% / 100% 100% 0 0;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  transition: .3s;
}
header.pc .headerInner nav li:hover a::after{
  opacity: 1;
}
header.pc .headerInner nav li a img{
  display: block;
  width: 10px;
  margin: 9.6px auto 0;
}
header.pc .headerInner .btnLinks{
  margin: 0 0 0 auto;
  align-items: center;
}
header.pc .headerInner .btnLinks .guideBtn{
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FF0000;
  border: 1px solid #FF0000;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  width: 200px;
  height: 58px;
  border-radius: 5px;
  margin-right: 8px;
  transition: .3s;
}
header.pc .headerInner .btnLinks .guideBtn:hover{
  background-color: #fff;
  color: #FF0000;
}
header.pc .headerInner .btnLinks .guideBtn img{
  margin-left: 10.5px;
  width: 12px;
}
header.pc .headerInner .btnLinks .guideBtn:hover img{
  content: url('img/linkArrow2_red.svg');
}
header.pc .headerInner .btnLinks .downloadBtn{
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FF0000;
  border: 1px solid #FF0000;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  width: 240px;
  height: 58px;
  border-radius: 5px;
  margin-right: 8px;
  transition: .3s;
} 
header.pc .headerInner .btnLinks .downloadBtn:hover{
  background-color: #fff;
  color: #FF0000;
}
header.pc .headerInner .btnLinks .downloadBtn img{
  margin-left: 11.5px;
  width: 10px;
}
header.pc .headerInner .btnLinks .downloadBtn:hover img{
  content: url('img/iconDownload_red.svg');
}
header.pc .headerInner .btnLinks .searchWrap{
  position: relative;
}
header.pc .headerInner .btnLinks .searchBtn{
  width: 68px;
  height: 58px;
  background-color: #000000;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
header.pc.another{
  position: fixed;
  top: -148px;
  left: 0;
  z-index: 999;
  transition: .3s;
}
header.pc.another.down{
  top: 0;
}
.mainVisual.sp{
  display: none;
}
.mainVisual{
  width: 100%;
  height: calc(100vh - 165px);
  position: relative;
}
.mainVisual .doorKumamonWrap{
  width: 18%;
  position: absolute;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 990;
} 
.mainVisual .doorKumamonWrap .kumamotnImg{
  position: absolute;
  left: 100%;
  bottom: 24px;
  width: 76%;
}
.mainVisual .swiper{
  width: 50%;
}
.backSlideWrap .swiper .swiper-wrapper{
  transition-timing-function: linear;
}
.mainVisual .swiper .swiper-slide img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.topBlock1{
  padding: 232px 0 262px;
}
.topBlock1Inner .youtubeBox{
  width: 90%;
  max-width: 700px;
  aspect-ratio: 700 / 394;
  display: block;
  margin: 0 auto 162px;
}
.topBlock1Inner iframe{
  width: 100%;
  height: 100%;
}
.topBlock1Inner .visionWrap{
  width: 90%;
  max-width: 737px;
  margin: 0 auto 187px;
}
.topBlock1Inner .visionBox{
  margin-bottom: 134px;
}
.topBlock1Inner .visionBox{
  opacity: 0;
  filter: blur(10px);
  transition: 1s;
  font-size: 46px;
  font-weight: 500;
  color: #fff;
  margin-bottom: 54px;
}
.topBlock1Inner .visionBox.scroll-in{
  opacity: 1;
  filter: blur(0);
  text-align: center;
}
.topBlock1Inner .visionBox h2{
  color: #fff;
  margin-bottom: 54px;
  text-align: left;
}
.topBlock1Inner .visionBox p{
  font-size: 25px;
  font-weight: 600;
  line-height: 53px;
  color: #fff;
  transition: 1s;
  transition-delay: .5s;
  text-align: left;
}
.topBlock1Inner .houshinBox{
  width: fit-content;
  margin: 0 0 0 auto;
  opacity: 0;
  filter: blur(10px);
}
.topBlock1Inner .houshinBox.scroll-in {
  opacity: 1;
  filter: blur(0);
}
.topBlock1Inner .houshinBox h3{
  font-size: 23px;
  font-weight: 500;
  color: #fff;
  margin-bottom: 18px;
}
.topBlock1Inner.scroll-in .houshinBox h3{
  opacity: 1;
  filter: blur(0);
}
.topBlock1Inner .houshinBox .hoishin1{
  font-size: 19px;
  font-weight: 500;
  color: #fff;
  line-height: 38px;
  margin-bottom: 44px;
}
.topBlock1Inner .houshinBox .hoishin2{
  font-size: 15px;
  font-weight: 500;
  color: #fff;
  margin-bottom: 73px;
}
.topBlock1Inner .kennchiji{
  width: 90%;
  max-width: 1128px;
  margin: 0 auto;
  background-color: rgba(255,255,255,0.75);
  padding: 27px 3% 0 5%;
  box-sizing: border-box;
  align-items: center;
}
.topBlock1Inner .kennchiji .txtBox{
  width: 65%;
  padding-right: 10%;
  box-sizing: border-box;
}
.topBlock1Inner .kennchiji .txtBox .msg{
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 23px;
  line-height: 34px;
}
.topBlock1Inner .kennchiji .txtBox .nameTxt{
  font-size: 16px;
  font-weight: 500;
  text-align: right;
}
.topBlock1Inner .kennchiji img{
  width: 35%;
}
.topBlock1Inner .redLink{
  width: 235px;
  margin: 0 0 0 auto;
}
.redLink{
  background-color: #ED2020;
  border-radius: 5px;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 63px;
  font-size: 14px;
  font-weight: 600;
  position: relative;
  border: 1px solid #ED2020;
}
.redLink:hover{
  background-color: #fff;
  color: #ED2020;
}
.redLink img{
  position: absolute;
  top: 50%;
  right: 15%;
  transform: translateY(-50%);
}
.topBlock1 .linkBox .redLink{
  opacity: 0;
  transition: opacity 1s 0.5s, background-color 0.3s;
}
.topBlock1 .redLink:hover img{
  content: url('img/linkArrow2_red.svg');
}
.topBlock1 .linkBox.scroll-in .redLink{
  opacity: 1;
}
.doorTit h2 span{
  transform: translateY(8px);
  transition: .8s;
  display: inline-block;
  opacity: 0;
  overflow: hidden;
  font-size: 72px;
  font-weight: 600;
  line-height: 1;
  color: #ED2020;
  font-family: din-2014, sans-serif;
}
.doorTit.scroll-in h2 span{
  transform: translateY(0);
  opacity: 1;
}
.doorTit.scroll-in h2 span:nth-child(1){
  transition-delay: .1s;
}
.doorTit.scroll-in h2 span:nth-child(2){
  transition-delay: .15s;
}
.doorTit.scroll-in h2 span:nth-child(3){
  transition-delay: .2s;
}
.doorTit.scroll-in h2 span:nth-child(4){
  transition-delay: .25s;
}
.doorTit.scroll-in h2 span:nth-child(5){
  transition-delay: .3s;
}
.doorTit.scroll-in h2 span:nth-child(6){
  transition-delay: .35s;
}
.doorTit.scroll-in h2 span:nth-child(7){
  transition-delay: .4s;
}
.doorTit.scroll-in h2 span:nth-child(8){
  transition-delay: .45s;
}
.doorTit.scroll-in h2 span:nth-child(9){
  transition-delay: .5s;
}
.doorTit.scroll-in h2 span:nth-child(10){
  transition-delay: .55s;
}
.doorTit.scroll-in h2 span:nth-child(11){
  transition-delay: .6s;
}
.doorTit.scroll-in h2 span:nth-child(12){
  transition-delay: .65s;
}
.doorTit.scroll-in h2 span:nth-child(13){
  transition-delay: .7s;
}
.doorTit.scroll-in h2 span:nth-child(14){
  transition-delay: .75s;
}
.doorTit.scroll-in h2 span:nth-child(15){
  transition-delay: .8s;
}
.doorTit.scroll-in h2 span:nth-child(16){
  transition-delay: .85s;
}
.doorTit.scroll-in h2 span:nth-child(17){
  transition-delay: .9s;
}
.doorTit.scroll-in h2 span:nth-child(18){
  transition-delay: .95s;
}
.doorTit.scroll-in h2 span:nth-child(19){
  transition-delay: 1s;
}
.doorTit.scroll-in h2 span:nth-child(20){
  transition-delay: 1.05s;
}
.doorTit.scroll-in h2 span:nth-child(21){
  transition-delay: 1.1s;
}
.doorTit.scroll-in h2 span:nth-child(22){
  transition-delay: 1.15s;
}
.doorTit.scroll-in h2 span:nth-child(23){
  transition-delay: 1.2s;
}
.doorTit.scroll-in h2 span:nth-child(24){
  transition-delay: 1.25s;
}
.doorTit.scroll-in h2 span:nth-child(25){
  transition-delay: 1.3s;
}
.doorTit.scroll-in h2 span:nth-child(26){
  transition-delay: 1.35s;
}
.doorTit.scroll-in h2 span:nth-child(27){
  transition-delay: 1.4s;
}
.doorTit.scroll-in h2 span:nth-child(28){
  transition-delay: 1.45s;
}
.doorTit .subTit{
  display: block;
  text-align: center;
  font-weight: 500;
}
.topBlock2{
  background-color: #fff;
  padding: 180px 0 199.6px;
  position: relative;
}
.topBlock2 .effectImg{
  position: absolute;
  bottom: calc(100% - 1px);
  left: 0;
}
.topBlock2 .doorTit{
  margin: 0 auto 60px;
  justify-content: center;
  align-items: baseline;
}
.topBlock2 .doorTit h2{
  font-size: 72px;
  font-weight: 600;
  justify-content: center;
  display: flex;
}
.topBlock2 .doorTit .door{
  width: 24px;
  height: 38px;
  display: block;
  margin-right: 23px;
}
.topBlock2 .doorTit.scroll-in .door{
  animation: openDoorMini 0.8s forwards ease-in-out;
}
.topBlock2 .doorTit{
  margin-bottom: 60px;
}
.topBlock2 .note{
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 121px;
}
@keyframes openDoorMini {
  0% {
    transform: perspective(48px) rotateY(0deg);
  }
  100% {
    transform: perspective(48px) rotateY(-40deg);
  }
}
.worksDetail{
  width: 90%;
  max-width: 1720px;
  margin: 0 auto;
  border-radius: 15px;
  padding: 106px 0 48px;
  position: relative;
}
.worksDetail .txtBox{
  position: absolute;
  top: 81.2px;
  left: 15%;
  z-index: 20;
}
.worksDetail .txtBox h3{
  font-size: 35px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 31px;
}
.worksDetail .txtBox .note{
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 26.8px;
  text-align: left;
}
.worksDetail .txtBox .scrollTxt{
  font-size: 15px;
  font-weight: 600;
  font-family: din-2014, sans-serif;
  color: #fff;
  position: relative;
  padding: 0 35px;
  width: fit-content;
}
.worksDetail .txtBox .scrollTxt .swiper-button-prev{
  top: 50%;
  left: 0;
}
.worksDetail .txtBox .scrollTxt .swiper-button-next{
  top: 50%;
  right: 0;
}
.worksDetail .txtBox .scrollTxt .swiper-button-prev:after,
.worksDetail .txtBox .scrollTxt .swiper-button-next:after{
  transform: scale(0.5);
  color: #fff;
}
.worksDetail .postList .swiper-wrapper{
  align-items: end;
}
.worksDetail .postList li{
  position: relative;
}
.worksDetail .postList li.swiper-slide{
  border: 1px solid #fff;
  box-sizing: border-box;
}
.worksDetail .postList li.swiper-slide-active{
  width: 31% !important;
  aspect-ratio: 546 / 632;
}
.worksDetail .postList li.swiper-slide img{
  height: 100%;
  object-fit: cover;
  object-position: right;
}
.worksDetail .postList li h4{
  position: absolute;
  top: 20.3px;
  right: 32px;
  font-size: 23px;
  font-weight: 600;
  writing-mode: vertical-rl;
  display: inline;
  display: none;
  background-color: #fff;
  padding: 0.2em;
}
.worksDetail .postList li.swiper-slide-next h4{
  display: block;
}
.worksDetail .postList li .subTitBox{
  position: absolute;
  bottom: 10px;
  left: 20px;
}
.worksDetail .postList li.swiper-slide-next .subTitBox{
  position: absolute;
  bottom: 8px;
  left: 29.1px;
}
.worksDetail .postList li .subTitBox .subTit{
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 4.5px;
}
.worksDetail .postList li.swiper-slide-next .subTitBox .subTit{
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 4.5px;
}
.worksDetail .postList li .subTitBox .join{
  font-size: 13px;
  font-weight: 700;
  color: #fff;
}
.worksDetail.red{
  margin-bottom: 59px;
  background-color: #ED2020;
}
.worksDetail.red .postList li h4{
  color: #FF0000;
}
.worksDetail.green{
  margin-bottom: 59px;
  background-color: #06AEBC;
}
.worksDetail.green .postList li h4{
  color: #06AEBC;
}
.worksDetail.orange{
  margin-bottom: 59px;
  background-color: #EE8300;
}
.worksDetail.orange .postList li h4{
  color: #EE8300;
}
.topBlock3{
  position: relative;
  background-color: #F6F1D4;
  padding: 185.4px 0 138px;
}
.topBlock3 .leftBack{
  position: absolute;
  top: 0;
  left: 0;
  width: 35%;
  opacity: 0;
  transition: 1s;
}
.topBlock3 .leftBack.scroll-in{
  opacity: 1;
}
.topBlock3 .rightBack{
  position: absolute;
  top: 0;
  right: 0;
  width: 38%;
  opacity: 0;
  transition: opacity 1s;
  transition-delay: 0.5s;
}
.topBlock3 .rightBack.scroll-in{
  opacity: 1;
}
.topBlock3 .msgMain{
  width: 90%;
  max-width: 440px;
  margin: 0 auto 63.7px;
  display: block;
}
.redLink2{
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ED2020;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  position: relative;
  transition: .3s;
}
.redLink2 img{
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
}
.topBlock3 .redLink2{
  width: 90%;
  max-width: 646px;
  height: 80px;
  border-radius: 40px;
  margin: 0 auto;
}
.topBlock3 .redLink2:hover{
  background-color: #fff;
  color: #ED2020;
}
.topBlock3 .redLink2:hover img{
  content: url('img/linkArrow3_red.svg');
}
.topBlock4{
  background-color: #fff;
  padding: 155.4px 0 0;
}
.topBlock4 .doorTit .door{
  width: 33px;
  height: 48px;
}
.topBlock4 .doorTit .door{
  width: 33px;
  height: 48px;
}
.topBlock4 .doorTit.scroll-in .door{
  animation: openDoorMini2 0.8s forwards ease-in-out;
}
.topBlock4 .doorTit .df{
  justify-content: center;
  align-items: center;
}
@keyframes openDoorMini2 {
  0% {
    transform: perspective(58px) rotateY(0deg);
  }
  100% {
    transform: perspective(58px) rotateY(-40deg);
  }
}
.topBlock4 .doorTit{
  margin-left: 15%;
  align-items: center;
  margin-bottom: 57px;
}
.topBlock4 .doorTit .door{
  margin-right: 30.9px;
}
.topBlock4 .doorTit h2{
  margin-right: 30px;
}
.topBlock4 .txtBox{
  margin: 0 24% 88px 15%;
}
.topBlock4 .txtBox h3{
  font-size: 39px;
  font-weight: 800;
  line-height: 60px;
  color: #ED2020;
  margin-bottom: 69px;
}
.topBlock4 .txtBox h3 span{
  font-size: 56px;
  font-weight: 800;
  color: #ED2020;
}
.topBlock4 .txtBox .redLink{
  width: 100%;
  max-width: 350px;
  height: 58px;
  align-items: center;
  display: flex;
  margin: 0 0 0 auto;
}
.topBlock4 .txtBox .redLink img{
  position: static;
  display: block;
  transform: translateY(0);
  margin-left: 17px;
}
.topBlock4 .txtBox .redLink:hover img{
  content: url('img/linkArrow2_red.svg');
}
.lifeDetailContainer{
  position: relative;
  z-index: 1;
}
.lifeDetailBg{
  width: 100%;
  height: 100vh;
  position: sticky;
  top: 0;
  z-index: -1;
  object-fit: cover;
  object-position: top;
}
.lifeDetailBgWrap{
  display: none;
}
.lifeDetailWrap{
  padding-bottom: 122px;
}
.lifeDetail{
  position: relative;
  margin-bottom: 80px;
}
.lifeDetail .lifeDetailInner{
  position: relative;
  width: 38%;
  box-sizing: border-box;
  background-color: #fff;
  padding: 70px 3%;
  border-radius: 28px;
}
.lifeDetail .lifeDetailInner:after{
  display: block;
  content: "";
}
.lifeDetail.right .lifeDetailInner{
  margin: 0 8% 0 auto;
}
.lifeDetail.right .lifeDetailInner:after{
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 31px solid transparent;
  border-bottom: 31px solid transparent;
  border-right: 38px solid #ffffff;
  border-left: 0;
  position: absolute;
  top: 50%;
  right: calc(100% - 1px);
  transform: translateY(-50%);
}
.lifeDetail.left{
  margin-bottom: 236px;
}
.lifeDetail.left .lifeDetailInner{
  margin: 0 auto 0 8%;
}
.lifeDetail.left .lifeDetailInner:after{
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 31px solid transparent;
  border-bottom: 31px solid transparent;
  border-left: 38px solid #ffffff;
  border-right: 0;
  position: absolute;
  top: 50%;
  left: calc(100% - 1px);
  transform: translateY(-50%);
}
.lifeDetail.center .lifeDetailInner{
  width: 71%;
  max-width: 1361px;
  padding: 72px 0 116px;
  margin: 0 auto;
}
.lifeDetail .lifeDetailInner .txtBox{
  margin: 0 0 29.5px 0;
}
.lifeDetail .lifeDetailInner .txtBox h4{
  font-size: 27px;
  font-weight: 500;
  margin-bottom: 60px;
}
.lifeDetail .lifeDetailInner .txtBox .volNum{
  font-size: 12px;
  font-weight: 500;
  color: #CBCBCB;
  margin-bottom: 35.8px;
}
.lifeDetail .lifeDetailInner .txtBox .note{
  font-size: 14px;
  margin-bottom: 24px;
}
.lifeDetail .lifeDetailInner .txtBox .teamName{
  margin-bottom: 5px;
}
.lifeDetail .lifeDetailInner .txtBox .teamName span{
  padding: 2px 13px;
  font-size: 13px;
  font-weight: 400;
  background-color: #ED2020;
  color: #fff;
  display: block;
  margin-right: 7px;
}
.lifeDetail .lifeDetailInner .txtBox .family{
  font-size: 13px;
  font-weight: 400;
  color: #909090;
}
.lifeDetail .lifeDetailInner .teamWrap{
  position: relative;
  z-index: 1;
}
.lifeDetail .lifeDetailInner .teamWrap .character{
  position: absolute;
}
.lifeDetail.right .lifeDetailInner .teamWrap .character{
  top: 68px;
  right: 3%;
  width: 114px;
  z-index: -1;
}
.lifeDetail.left .lifeDetailInner .teamWrap .character{
  bottom: 0;  
  right: 0;
  width: 147px;
  z-index: -1;
}
.lifeDetail .lifeDetailInner .privatePhoto{
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 14px;
}
.lifeDetail.right .lifeDetailInner .privatePhoto{
  margin-top: 44px;
}
.lifeDetail.left .lifeDetailInner .privatePhoto{
  margin-top: 15px;
}
.lifeDetail .lifeDetailInner .teamWrap .titTxt{
  font-size: 20px;
  font-weight: 600;
  padding: 5px 0 5px 21px;
  box-sizing: border-box;
  background-color: #ED2020;
  color: #fff;
  margin-bottom: 29px;
}
.lifeDetail .lifeDetailInner .teamWrap .expBox .timeLine{
  width: 100%;
  margin-bottom: 23px;
}
.lifeDetail .lifeDetailInner .teamWrap .expBox .timeLine .title{
  width: 25%;
  font-weight: 600;
}
.lifeDetail.right .lifeDetailInner .teamWrap .expBox .timeLine li:nth-child(1) .title{
  position: relative;
}
.lifeDetail.right .lifeDetailInner .teamWrap .expBox .timeLine li:nth-child(1) .title:after{
  display: block;
  content: "";
  width: 14px;
  height: 14px;
  border-radius: 100%;
  background-color: #ED2020;
  position: absolute;
  right: -7px;
  top: 0;
}
.lifeDetail.right .lifeDetailInner .teamWrap .expBox .timeLine li:last-child .title{
  position: relative;
}
.lifeDetail.right .lifeDetailInner .teamWrap .expBox .timeLine li:last-child  .title:after{
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  border-top: 20px solid #ed2020;
  border-bottom: 0;
  position: absolute;
  bottom: 0;
  right: -10px;
}
.lifeDetail .lifeDetailInner .teamWrap .expBox .timeLine .timelineContent{
  width: 75%;
  font-weight: 600;
  padding-left: 10%;
  box-sizing: border-box;
  padding-bottom: 20px;
}
.lifeDetail.right .lifeDetailInner .teamWrap .expBox .timeLine .timelineContent{
  border-left: 1px solid #ED2020;
}
.lifeDetail.left .lifeDetailInner .teamWrap .expBox .timeLine .title{
  position: relative;
}
.lifeDetail.left .lifeDetailInner .teamWrap .expBox .timeLine .title::after{
  display: block;
  content: "";
  width: 14px;
  height: 14px;
  border-radius: 100%;
  background-color: #ED2020;
  position: absolute;
  right: -7px;
  top: 0;
}
.lifeDetail.left .lifeDetailInner .teamWrap .expBox .timeLine li:last-child .title::after{
  top: auto;
  top: 50%;
  transform: translateY(-50%);
}
.lifeDetail.left .lifeDetailInner .teamWrap .expBox .timeLine .timelineContent{
  border-left: 1px dashed #ED2020;
}
.lifeDetail.left .lifeDetailInner .teamWrap .expBox .timeLine li:last-child .timelineContent{
  padding-bottom: 0;
}
.lifeDetail.right .lifeDetailInner .teamWrap .now{
  font-weight: 600;
  padding-left: 23%;
}
.lifeDetail .lifeDetailInner .teamWrap .teamList{
  display: flex;
  flex-wrap: wrap;
  gap: 0 20px;
}
.lifeDetail .lifeDetailInner .expBox .swiper-slide .note{
  font-size: 13px;
  font-weight: 500;
  color: #939393;
}
.lifeDetail.center .lifeDetailInner .doorTit{
  justify-content: center;
  margin: 0 0 33px;
}
.lifeDetail.center .lifeDetailInner .doorTit h4{
  font-size: 72px;
  font-weight: 600;
  display: flex;
  align-items: center;
}
.lifeDetail.center .lifeDetailInner .doorTit h4 span{
  color: #ED2020;
  font-family: din-2014, sans-serif;
}
.lifeDetail.center .lifeDetailInner .graphWrap{
  width: min(805px, 90%);
  margin: 0 auto;
  justify-content: space-between;
  align-items: flex-start;
}
.lifeDetail.center .lifeDetailInner .graphWrap.sp{
  display: none;
}
.lifeDetail.center .lifeDetailInner .graphWrap .grapInner{
  width: 100%;
}
.lifeDetail.center .lifeDetailInner .graphWrap .grapInner1{
  margin-bottom: 52px;
}
.lifeDetail.center .lifeDetailInner .graphWrap .grapInner2{
  justify-content: space-between;
}
.lifeDetail.center .lifeDetailInner .graphWrap .grapInner2 img{
  object-fit: contain;
}
.lifeDetail.center .lifeDetailInner .graphWrap .grapInner2 img:nth-child(1){
  width: 50%;
}
.lifeDetail.center .lifeDetailInner .graphWrap .grapInner2 img:nth-child(2){
  width: 30%;
}
.topBlock5{
  background-color: #ED2020;
  padding: 100px 0 184px;
}
.topBlock5 .doorTit .door{
  background-color: #fff;
  width: 26px;
  height: 38px;
  animation: openDoorMini 0.8s forwards ease-in-out;
}
.topBlock5 .doorTit{
  justify-content: center;
  align-items: center;
  margin-bottom: 60px;
}
.topBlock5 .doorTit .df{
  align-items: center;
  justify-content: center;
}
.topBlock5 .doorTit h2{
  margin-left: 21.1px;
}
.topBlock5 .doorTit h2 br{
  display: none;
}
.topBlock5 .doorTit h2 span{
  color: #fff;
}
.topBlock5 .doorTit h2 span.empty{
  width: 0.2em;
}
.topBlock5 .doorTit .subTit{
  font-weight: 500;
  color: #fff;
}
.topBlock5 h3{
  text-align: center;
  color: #fff;
  font-size: 45px;
  font-weight: 700;
  margin-bottom: 32px;
}
.topBlock5 h3 br{
  display: none;
}
.topBlock5 > .note{
  font-size: 15px;
  font-weight: 400;
  color: #fff;
  margin-bottom: 69px;
  text-align: center;
}
.topBlock5 .historyArrow{
  width: 100%;
  margin-bottom: 103px;
}
.topBlock5 > h3:nth-of-type(2){
  margin-bottom: 71px;
}
.chatContent h3{
  margin-bottom: 32px;
}
.chatContent h3 br{
  display: none;
}
.chatContent .note{
  font-size: 15px;
  color: #fff;
  font-weight: 400;
  margin-bottom: 36px;
  text-align: center;
}
.chatWrap{
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
}
.chatWrap .humanBoxWrap{
  position: sticky;
  top: 120px;
  display: flex;
}
.chatWrap .leftBoxWrap{
  width: 50%;
}
.chatWrap .rightBoxWrap{
  width: 50%;
}
.chatWrap .leftBox{
  width: 50%;
}
.chatWrap .rightBox{
  width: 50%;
  margin: 0 0 0 auto;
}
.chatWrap .leftBox .rollName,
.chatWrap .rightBox .rollName{
  text-align: center;
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  margin-top: 26px;
}
.chatWrap .chatBox{
  width: 60%;
  position: relative;
  margin-top: -20vh;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}
.chatWrap .chatBox li{
  width: 80%;
  padding: 20px 5% 20px;
  background-color: #fff;
  border-radius: 24px;
  box-sizing: border-box;
  opacity: 0;
  transition: 1s;
  position: relative;
}
.chatWrap .chatBox li.active{
  opacity: 1;
}
.chatWrap .chatBox li.woman{
  margin: 16px auto 0 0;
  color: #ED2020;
}
.chatWrap .chatBox li.woman::after{
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 12px solid #ffffff;
  border-left: 0;
  position: absolute;
  right: calc(100% - 1px);
  top: 50%;
  transform: translateY(-50%);
}
.chatWrap .chatBox li.man{
  margin: 16px 0 0 auto;
  color: #0066A5;
}
.chatWrap .chatBox li.man:after{
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 12px solid #ffffff;
  border-right: 0;
  position: absolute;
  left: calc(100% - 1px);
  top: 50%;
  transform: translateY(-50%);
}
.msgList{
  width: 90%;
  max-width: 1100px;
  margin: 0 auto 122px;
}
.msgList .msg{
  padding: 23.6px 0;
  border-bottom: 1px solid #fff;
  cursor: pointer;
}
.msgList .msg .msgInner{
  margin-bottom: 50px;
}
.msgList .msg:nth-child(1){
  border-top: 1px solid #fff;
  padding-bottom: 92px;
}
.msgList .msgTit{
  justify-content: space-between;
  align-items: center;
  width: 80%;
  padding-right: 5%;
  box-sizing: border-box;
}
.msgList .msgTit .titTxt{
  align-items: center;
  font-size: 23px;
  font-weight: 400;
  color: #fff;
  margin-bottom: 44px;
}
.msgList .msgTit .titTxt br{
  display: none;
}
.msgList .msgTit .titTxt img{
  display: block;
  margin-right: 15px;
}
.msgList .msg .msgAns{
  font-size: 16px;
  font-weight: 400;
  color: #fff;
}
.msgList .msg > img,
.msgList .msg .msgInner > img{
  width: 20%;
  border-radius: 16px;
  object-fit: cover;
}
.skillupContainer{
  width: 90%;
  max-width: 932px;
  margin: 0 auto;
  justify-content: space-between;
}
.skillupContainer .skillBoxWrap .skillBox{
  background-color: #FFFFFF;
  padding: 27.8px 3%;
  border-radius: 8px;
  margin-bottom: 18.2px;
}
.skillupContainer .skillBoxWrap .skillBox:last-child{
  margin-bottom: 0;
}
.skillupContainer .skillBoxWrap .skillBox h4{
  font-size: 25px;
  font-weight: 600;
  color: #ED2020;
  margin-bottom: 12px;
}
.skillupContainer .skillBoxWrap .skillBox > p{
  font-size: 14px;
  font-weight: 400;
  margin-bottom: 17px;
}
.skillupContainer .skillBoxWrap .skillBox .skillInner{
  justify-content: space-between;
}
.skillupContainer .skillBoxWrap .skillBox .skillInner img{
  width: 35%;
  object-fit: cover;
}
.skillupContainer .skillBoxWrap .skillBox .skillInner .txtBox{
  width: 60%;
  border-top: 1px solid #707070;
  padding-top: 24.4px;
  padding-right: 3%;
  box-sizing: border-box;
}
.skillupContainer .skillBoxWrap .skillBox .skillInner .txtBox h5{
  font-size: 18px;
  font-weight: 400;
  margin-bottom: 12px;
}
.skillupContainer .skillBoxWrap .skillBox .skillInner .txtBox p{
  font-size: 14px;
  font-weight: 400;
}
.skillupContainer h3{
  font-size: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  margin-bottom: 25px;
}
.skillupContainer h3 img{
  display: block;
  margin-right: 27px;
}
.skillupContainer > .memo{
  text-align: center;
  color: #fff;
  font-size: 15px;
  font-weight: 400;
  margin-bottom: 50px;
}
.interviewBox{
  margin-bottom: 157px;
}
.interviewBox h3{
  font-size: 35px;
  margin-bottom: 47px;
}
.interviewBox > .note{
  font-size: 15px;
  font-weight: 400;
  color: #fff;
  margin-bottom: 77px;
  text-align: center;
}
.interviewBox ul{
  width: 90%;
  max-width: 1165px;
  margin: 0 auto;
  grid-template-columns: 1fr 1fr;
  gap: 0 38px;
}
.interviewBox ul li:nth-child(2){
  transition-delay: .3s;
}
.interviewBox ul .hakenBox{
  width: 100%;
  height: 100%;
  display: block;
  cursor: pointer
}
.interviewBox ul .hakenBox > img{
  object-fit: cover;
  border-radius: 10px;
  margin-bottom: 11.1px;
  aspect-ratio: 575 / 370;
}
.interviewBox ul .hakenBox .txtBoxWrap{
  align-items: center;
  justify-content: space-between;
}
.interviewBox ul .hakenBox .txtBox h4{
  font-size: 29px;
  font-weight: 700;
  color: #fff;
  width: fit-content;
  margin-bottom: 5px;
}
.interviewBox ul .hakenBox .txtBox p{
  font-size: 19px;
  font-weight: 700;
  color: #fff;
  width: fit-content;
}
.interviewBox ul .hakenBox .icon{
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background-color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
}
.interviewBox ul li:hover .hakenBox img{
  opacity: 1;
}
.interviewBox ul li:hover .hakenBox .icon{
  transform: scale(1.5);
}
.interviewBox ul li .modalWrap{
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.6);
  position: fixed;
  top: 0;
  left: 0;
  transition: opacity .5s, visibility .5s;
  visibility: hidden;
  opacity: 0;
  animation: opa .5s ease;
  z-index: 1000;
}
@keyframes opa {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.interviewBox ul li.on .modalWrap{
  visibility: visible;
  opacity: 1;
}
.interviewBox ul li .modalWrap .modal{
  width: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.interviewBox ul li .modalWrap .modalClose{
  position: absolute;
  top: -22px;
  right: -22px;
  cursor: pointer;
  transition: .3s;
}
.interviewBox ul li .modalWrap .modalClose:hover{
  transform: scale(1.2);
  
}
.topBlock6{
  background-color: #F4F4F4;
  padding: 153px 0 201px;
}
.topBlock6 .recruitPerson{
  width: 90%;
  max-width: 1161px;
  margin: 0 auto 103px;
  display: block;
}
.topBlock6 .recruitPerson > img{
  width: 20%;
}
.topBlock6 .recruitPerson .txtBox{
  width: 80%;
  padding-left: 7%;
  box-sizing: border-box;
}
.topBlock6 .recruitPerson .txtBox .titTxt{
  font-size: 23px;
  color: #ED2020;
  font-weight: 600;
  margin-bottom: 33px;
}
.topBlock6 .recruitPerson .txtBox .note{
  font-size: 14px;
  font-weight: 500;
}
.topBlock6 .doorTit{
  width: 25%;
  align-items: flex-start;
}
.topBlock6 .doorTit .door{
   width: 28px;
   height: 41px;
   animation: openDoorMini 0.8s forwards ease-in-out;
   margin-right: 24.2px;
   margin-top: 15px;
}
.topBlock6 .doorTit .titBox h2{
  font-size: 50px;
  font-weight: 600;
  font-family: din-2014, sans-serif;
}
.topBlock6 .doorTit .titBox .subTit{
  text-align: left;
}
.topBlock6 .flowBox{
  width: 90%;
  max-width: 1200px;
  margin: 0 auto 121px;
  justify-content: space-between;
}
.topBlock6 .qaBoxWrap{
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  justify-content: space-between;
}
.topBlock6 .flowBox .flowArrow{
  width: 65%;
}
.topBlock6 .qaBoxWrap .qaList{
  width: 65%;
}
.topBlock6 .flowBox .flowList{
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0 47px;
  margin-bottom: 13px;
}
.topBlock6 .flowBox .flowList li{
  background-color: #fff;
  padding: 11px 15% 36px;
  box-sizing: border-box;
  position: relative;
}
.topBlock6 .flowBox .flowList li:nth-child(2){
  transition-delay: .05s;
}
.topBlock6 .flowBox .flowList li:nth-child(3){
  transition-delay: .1s;
}
.topBlock6 .flowBox .flowList li::after{
  display: block;
  content: "";
  width: 140px;
  height: 1px;
  background-color: #D3D3D3;
  position: absolute;
  top: 44px;
  right: -30%;
  z-index: 1;
}
.topBlock6 .flowBox .flowList li:last-child::after{
  display: none;
}
.topBlock6 .flowBox .flowList li .num{
  font-size: 50px;
  font-weight: 600;
  font-family: din-2014, sans-serif;
  color: #ED2020;
  margin-bottom: 16px;
}
.topBlock6 .flowBox .flowList li h3{
  font-size: 20px;
  font-weight: 400;
  margin-bottom: 13px;
}
.topBlock6 .flowBox .flowList li p{
  font-size: 13px;
}
.topBlock6 .flowBox .flowListWrap .note{
  font-size: 13px;
  font-weight: 400;
}
.topBlock6 .qaBoxWrap .qaList li{
  border: 2px solid #ED2020;
  border-radius: 4px;
  margin-bottom: 12px;
  background-color: #fff;
  padding: 20px 10% 20px;
  position: relative;
  cursor: pointer;
}
.topBlock6 .qaBoxWrap .qaList li::before{
  position: absolute;
  top: 50%;
  right: 24.7px;
  transform: translateY(-50%);
  display: block;
  content: "";
  width: 16px;
  height: 1px;
  background-color: #ED2020;
}
.topBlock6 .qaBoxWrap .qaList li::after{
  position: absolute;
  top: 50%;
  right: 31.7px;
  transform: translateY(-50%);
  display: block;
  content: "";
  width: 1px;
  height: 16px;
  background-color: #ED2020;
  transition: .3s;
}
.topBlock6 .qaBoxWrap .qaList li.on::after{
  transform: translateY(-50%) rotate(90deg);
  opacity: 0;
}
.topBlock6 .qaBoxWrap .qaList li .qBox,
.topBlock6 .qaBoxWrap .qaList li .aBox{
  font-size: 15px;
  font-weight: 400;
}
.topBlock6 .qaBoxWrap .qaList li .qBox{
  color: #ED2020;
}
.topBlock6 .qaBoxWrap .qaList li .aBox{
  max-height: 0;
  overflow: hidden;
  transition: .3s;
}
.topBlock6 .qaBoxWrap .qaList li .aBox a{
  color: #006CFF;
}
.topBlock6 .qaBoxWrap .qaList li.on .aBox{
  max-height: 500px;
  margin-top: 20px;
}
.topBlock7{
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.topBlock7 .backSlideWrap{
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  z-index: -1;
  transform: translateY(-50%) rotate(-11deg) scale(1.5);
}
.topBlock7 .linkWrap{
  background-color: rgba(85,85,85,0.49);
  padding: 455px 0 431px;
}
.topBlock7 .linkWrap a{
  display: flex;
  align-items: center;
  background-color: #E83810;
  border: 1px solid #E83810;
  width: 90%;
  max-width: 791px;
  height: 79px;
  margin: 0 auto 66px;
  padding: 0 2%;
  box-sizing: border-box;
  font-size: 17px;
  font-weight: 800;
  color: #fff;
  border-radius: 10px;
  transition: .3s;
}
.topBlock7 .linkWrap a:hover{
  background-color: #fff;
  color: #E83810;
}
.topBlock7 .linkWrap a span{
  font-size: 12px;
  font-weight: 600;
  padding: 14px 32px 14px 16px;
  background-color: #fff;
  color: #E83810;
  border-radius: 5px;
  margin-left: 14px;
  transition: .3s;
}
.topBlock7 .linkWrap a:hover span{
  background-color: #E83810;
  border: 1px solid #E83810;
  color: #fff;
}
.topBlock7 .linkWrap a img{
  display: block;
  margin: 0 0 0 auto;
}
.topBlock7 .linkWrap a:nth-child(1) img{
  width: 20px;
}
.topBlock7 .linkWrap a:nth-child(1):hover img{
  content:url('img/linkArrow2_red.svg');
}
.topBlock7 .linkWrap a:nth-child(2):hover img{
  content:url('img/iconDownload_red.svg');
}
.topBlock7 .linkWrap a:last-child{
  margin-bottom: 0;
}
footer{
  background-color: #3E3E3E;
  padding: 43px 2% 43px;
}
.footerInner{
  justify-content: space-between;
  align-items: center;
}
.footerInner p{
  font-size: 229px;
  font-weight: 600;
  font-family: din-2014, sans-serif;
  white-space: nowrap;
  letter-spacing: 0;
  color: #4E4E4E;
}
.footerInner .snsList a{
  display: block;
  width: 138px;
  margin-right: 17px;
}
.footerInner .snsList a:last-child{
  margin-right: 0;
}footer .iconLinkWrap{
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
footer .iconLink{
  margin-top: 20px;
  color: #fff;
  margin: 20px 20px 0 0;
  display: block;
  width: fit-content;
}
footer .iconLink:last-child{
  margin-right: 0;
}
footer .iconLink p{
  display: inline-block;
  font-size: 13px;
  padding-left: 19px;
  position: relative;
  transition: .3s;
  text-decoration: underline;
  color: #fff;
}
footer .iconLink:hover p{
  opacity: 0.7;
}
footer .iconLink p .icon{
  display: block;
  width: 14px;
  height: 14px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}
footer .iconLink p .icon::before, 
footer .iconLink p .icon:after{
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  position: absolute;
  box-sizing: border-box;
}
footer .iconLink p .icon::before{
  display: block;
  content: "";
  right: 0;
  top: 0;
  background: #fff;
}
footer .iconLink p .icon:after{
  display: block;
  content: "";
  left: 0;
  bottom: 0;
  border-left: #fff solid 3px;
  border-bottom: #fff solid 3px;
}
footer .iconLink:hover p .icon{
  opacity: 0.7;
}
.singlePage .subVisual{
  margin-bottom: 126px;
  position: relative;
}
.singlePage .subVisual > img.pc{
  width: 100%;
  aspect-ratio: 1920 / 924;
  object-fit: cover;
}
.singlePage .subVisual > img.sp{
  display: none;
}
.singlePage .contentWrap{
  width: 90%;
  max-width: 960px;
  margin: 0 auto 174px;
}
.singlePage .contentWrap h2{
  font-size: 23px;
  font-weight: 600;
  box-sizing: border-box;
  color: #E83812;
  margin-bottom: 30px;
  border-left: 6px solid #E83811;
  padding-left: 14px;
  box-sizing: border-box;
}
.singlePage .contentWrap p{
  margin-bottom: 40px;
}
.singlePage .contentWrap iframe{
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
  margin-bottom: 80px;
}
.singlePage .nextPrev{
  width: 90%;
  max-width: 960px;
  margin: 0 auto 147.5px;
  position: relative;
  justify-content: space-between;
}
.singlePage .nextPrev .prev,
.singlePage .nextPrev .next{
  width: fit-content;
  border-bottom: 1px solid #000;
}
.singlePage .nextPrev .prev{
  width: fit-content;
  margin: 0 auto 0 0;
}
.singlePage .nextPrev .next{
  width: fit-content;
  margin: 0 0 0 auto;
}
.singlePage .nextPrev .prev a,
.singlePage .nextPrev .next a{
  display: block;
  width: 100%;
  height: 100%;
  padding-bottom: 21.5px;
  box-sizing: border-box;
}
.singlePage .nextPrev .prev a .arrowIcon,
.singlePage .nextPrev .next a .arrowIcon{
  align-items: center;
}
.singlePage .nextPrev .next a .arrowIcon{
  justify-content: flex-end;
}
.singlePage .nextPrev .prev a .arrowIcon .iconWrap,
.singlePage .nextPrev .next a .arrowIcon .iconWrap{
  align-items: center;
}
.singlePage .nextPrev .prev a .arrowIcon .iconWrap{
  margin-right: 10%;
}
.singlePage .nextPrev .next a .arrowIcon .iconWrap{
  margin-left: 10%;
}
.singlePage .nextPrev .prev a .arrowIcon .iconWrap img,
.singlePage .nextPrev .next a .arrowIcon .iconWrap img{
  display: block;
}
.singlePage .nextPrev .prev a .arrowIcon .iconWrap img{
  margin-right: 12px;
}
.singlePage .nextPrev .next a .arrowIcon .iconWrap img{
  margin-left: 12px;
}
.singlePage .nextPrev .prev a .arrowIcon .iconWrap p,
.singlePage .nextPrev .next a .arrowIcon .iconWrap p{
  font-size: 13px;
  font-weight: 600;
  font-family: din-2014, sans-serif;
}
.singlePage .catLinks{
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0 15px;
  width: 90%;
  max-width: 1387px;
  margin: 0 auto 125px;
}
.singlePage .catLinks li a{
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.singlePage .catLinks li a .txtBox{
  position: absolute;
  bottom: 27px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}
.singlePage .catLinks li a .txtBox p{
  text-align: center;
  color: #fff;
}
.singlePage .catLinks li a .txtBox .subTit{
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 14px;
}
.singlePage .catLinks li.humanRes a .txtBox .subTit{
  margin-bottom: 0;
}
.singlePage .catLinks li a .txtBox .tit{
  font-size: 47px;
  font-weight: 600;
  font-family: din-2014, sans-serif;
  line-height: 1;
}
.singlePage .catLinks li.humanRes a .txtBox .tit{
  font-size: 35px;
}
.catPostLists .catPostBox{
  padding: 110.6px 0 81px 10%;
  align-items: center;
}
.catPostLists .catPostBox.red{
  background-color: #E83810;
}
.catPostLists .catPostBox.green{
  background-color: #06AEBC;
}
.catPostLists .catPostBox.orange{
  background-color: #EE8300;
}
.catPostLists .catPostBox .txtBox{
  width: 30%;
}
.catPostLists .catPostBox .txtBox h2{
  font-size: 35px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 55px;
}
.catPostLists .catPostBox .txtBox > p{
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 98px;
}
.catPostLists .catPostBox .txtBox .scroll{
  font-size: 15px;
  font-weight: 600;
  color: #fff;
  position: relative;
  padding: 0 33px;
  width: fit-content;
}
.catPostLists .catPostBox .txtBox .scroll .swiper-button-prev,
.catPostLists .catPostBox .txtBox .scroll .swiper-button-next{
  top: 50%;
}
.catPostLists .catPostBox .txtBox .scroll .swiper-button-prev{
  left: 0;
}
.catPostLists .catPostBox .txtBox .scroll .swiper-button-next{
  right: 0;
}
.catPostLists .catPostBox .txtBox .scroll .swiper-button-prev:after,
.catPostLists .catPostBox .txtBox .scroll .swiper-button-next::after{
  color: #fff;
  transform: scale(0.5);
}
.catPostLists .catPostBox .postList{
  width: 70%;
}
.catPostLists .catPostBox .postList .swiper-slide a{
  display: block;
  width: 100%;
  height: 100%;
}
.catPostLists .catPostBox .postList .swiper-slide a img{
  margin-bottom: 8px;
  object-fit: cover;
}
.catPostLists .catPostBox .postList .swiper-slide a .titBox h3{
  font-weight: 500;
  color: #fff;
}
.catPostLists .catPostBox .postList .swiper-slide a .titBox h3 br{
  display: none;
}
.catPostLists .catPostBox .postList .swiper-slide a .titBox .year{
  color: #fff;
  font-size: 13px;
  font-weight: 300;
}
.otherFooter{
  background-color: #3E3E3E;
}
.otherFooter a{
  padding: 21px 2% 12px;
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  box-sizing: border-box;
}
.otherFooter a p{
  font-size: 150px;
  font-weight: 600;
  color: #4E4E4E;
}
.interviewPage{
  background-color: #F6F1D6;
  padding: 58px 0 375px;
}
.interviewPage .subVisual{
  width: 90%;
  max-width: 1540px;
  margin: 0 auto 165px;
  justify-content: space-between;
}
.interviewPage .subVisual .txtBox{
  width: 35%;
  position: relative;
  padding: 50px 0 0;
}
.interviewPage .subVisual .txtBox .txtBoxInner{
  position: absolute;
  top: 120px;
  left: 3%;
  z-index: 1;
}
.interviewPage .subVisual .txtBox p{
  font-size: 45px;
  font-weight: 700;
  color: #E83810;
  background-color: #fff;
  display: inline;
  box-decoration-break: clone;	
	-webkit-box-decoration-break: clone;
  white-space: nowrap;
}
.interviewPage .subVisual .txtBox p:nth-child(1){
  margin-bottom: 25px;
}
.interviewPage .subVisual .txtBox p:nth-child(2){
  margin-bottom: 24px;
}
.interviewPage .subVisual .txtBox p span{
  font-size: 28px;
  font-weight: 700;
  color: #E83810;
}
.interviewPage .subVisual > img{
  width: 60%;
  object-fit: contain;
}
.interviewPage .interviewBlock1{
  margin-bottom: 55px;
  padding-bottom: 177px;
  position: relative;
  z-index: 1;
}
.interviewPage .interviewBlock1 .rufi{
  position: absolute;
  bottom: 0;
  right: 0;
  width: 33%;
  z-index: -1;
}
.interviewPage .interviewBlock1 .rufi p{
  width: 100%;
  text-align: left;
  padding-left: 10px;
  font-size: 10px;
  margin-bottom: 0;
  box-sizing: border-box;
}
.interviewPage .interviewBlock1 h2{
  font-size: 20px;
  font-weight: 600;
  text-align: center;
  padding-bottom: 20px;
  color: #E8380D;
  border-bottom: 2px solid #E8380D;
  width: 45%;
  margin: 0 auto 11px;
}
.interviewPage .interviewBlock1 p{
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 82px;
}
.interviewPage .graphWrap{
  width: 90%;
  max-width: 730px;
  margin: 0 auto 125px;
  grid-template-columns: 1fr 1fr;
  gap: 20px 62.4px;
}
.interviewPage .graphWrap li:nth-child(2){
  transition-delay: .05s;
}
.interviewPage .graphWrap li:nth-child(3){
  transition-delay: .1s;
}
.interviewPage .graphWrap li:nth-child(4){
  transition-delay: .15s;
}
.interviewPage .interviewSlide .swiper-wrapper{
  transition-timing-function: linear;
}
.interviewBlock2.sp{
  display: none;
}
.interviewBlock2 .doorTit{
  margin-bottom: 170px;
}
.interviewBlock2 .doorTit .door{
  width: 24px;
  height: 38px;
  display: block;
  margin: 0 auto 4.3px;
}
.interviewBlock2 .doorTit.scroll-in .door{
  animation: openDoorMini 0.8s forwards ease-in-out;
}
.interviewBlock2 .doorTit h2{
  font-size: 72px;
  font-weight: 600;
  justify-content: center;
  display: flex;
}
.interviewBlock2 .doorTit h2 span{
 line-height: normal;
}
.interviewBlock2 .interviewBoxWrap{
  width: 90%;
  max-width: 1138px;
  margin: 0 auto 348px;
}
.interviewBlock2 .interviewBoxWrap:last-child{
  margin-bottom: 0;
}
.interviewBlock2 .interviewBoxWrap .areaTit{
  display: block;
  width: 242px;
  margin: 0 auto 40px;
}
.interviewBlock2 .interviewBoxWrap > .memo{
  font-size: 13px;
  width: 90%;
  text-align: center;
  margin: 0 auto;
}
.interviewBlock2 .interviewBoxWrap.hontyo > .memo{
  margin-bottom: 168px;
}
.interviewBlock2 .interviewBoxWrap.keno > .memo{
  margin-bottom: 82px;
}
.interviewBlock2 .interviewBoxWrap.keno .interViewBox.right .effect{
  position: absolute;
  top: 100%;
  right: 30%;
  width: 23%;
}
.interviewBlock2 .interviewBoxWrap.keno .interViewBox.left .effect{
  position: absolute;
  top: 100%;
  left: 30%;
  width: 26%;
}
.interviewBlock2 .interviewBoxWrap.kenhoku > .memo{
  margin-bottom: 88px;
}
.interviewBlock2 .interviewBoxWrap.kenhoku .interViewBox:nth-child(3) img.wide.left{
  width: 35%;
  left: -15%;
}
.interviewBlock2 .interviewBoxWrap.kenhoku .interViewBox:nth-child(5) img.square.left{
  top: 100%;
  width: 30%;
}
.interviewBlock2 .interviewBoxWrap.kennan .interViewBox:nth-child(5) .effect{
  top: 100%;
  left: 30%;
  width: 10%;
}
.interviewBlock2 .interviewBoxWrap.amakusa .areaTitWrap{
  position: relative;
  margin: 0 auto 43px;
}
.interviewBlock2 .interviewBoxWrap.amakusa .areaTit{
  margin: 0 auto;
}
.interviewBlock2 .interviewBoxWrap.amakusa .areaTitWrap .effect.no1{
  position: absolute;
  right: 75%;
  top: 50%;
  width: 10%;
  transform: translateY(-50%);
}
.interviewBlock2 .interviewBoxWrap.amakusa .areaTitWrap .effect.no2{
  position: absolute;
  left: 75%;
  top: 50%;
  width: 30%;
  transform: translateY(-50%);
}
.interviewBlock2 .interviewBoxWrap.kennan > .memo{
  margin-bottom: 88px;
}
.interviewBlock2 .interviewBoxWrap.amakusa > .memo{
  margin-bottom: 126px;
}
.interviewBlock2 .interviewBoxWrap .interViewBox{
  background-color: #fff;
  border: 1px solid #E83910;
  border-radius: 8px;
  padding: 71px 10% 73px;
  margin-bottom: 225px;
  position: relative;
}
.interviewBlock2 .interviewBoxWrap .interViewBox:last-child{
  margin-bottom: 0;
}
.interviewBlock2 .interviewBoxWrap .interViewBox .txtBox{
  width: 70%;
}
.interviewBlock2 .interviewBoxWrap .interViewBox.left .txtBox{
  margin: 0 0 0 auto;
}
.interviewBlock2 .interviewBoxWrap .interViewBox .txtBox h3{
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 27px;
  color: #E83810;
}
.interviewBlock2 .interviewBoxWrap .interViewBox .txtBox .interviewDtail{
  font-size: 15px;
  font-weight: 400;
  margin-bottom: 26px;
}
.interviewBlock2 .interviewBoxWrap .interViewBox .txtBox .teamDetail{
  padding-bottom: 32.6px;
  border-bottom: 1px solid #C7C7C7;
  margin-bottom: 29.4px;
}
.interviewBlock2 .interviewBoxWrap .interViewBox .txtBox .teamWrap{
  align-items: center;
  margin-bottom: 8px;
}
.interviewBlock2 .interviewBoxWrap .interViewBox .txtBox .team{
  padding: 4px 11px;
  background-color: #E83810;
  color: #fff;
  font-size: 15px;
  font-weight: 500;
  width: fit-content;
  margin-right: 12px;
}
.interviewBlock2 .interviewBoxWrap .interViewBox .txtBox .teamName{
  font-size: 15px;
  font-weight: 400;
}
.interviewBlock2 .interviewBoxWrap .interViewBox .txtBox .teamTxt{
  font-size: 15px;
  font-weight: 400;
  margin-bottom: 8px;
}
.interviewBlock2 .interviewBoxWrap .interViewBox img{
  width: 40%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.interviewBlock2 .interviewBoxWrap .interViewBox.right img{
  right: -5%;
}
.interviewBlock2 .interviewBoxWrap .interViewBox.left img{
  left: -5%;
  width: 40%;
}
.interviewBlock2 .interviewBoxWrap .interViewBox img.wide{
  width: 28%;
}
.interviewBlock2 .interviewBoxWrap .interViewBox img.square{
  width: 21%;
}
.interviewBlock2 .interviewBoxWrap .interViewBox img.wide.left{
  top: -6%;
  left: -5%;
  right: auto;
}
.interviewBlock2 .interviewBoxWrap .interViewBox img.wide.right{
  top: -6%;
  right: -5%;
  left: auto;
}
.interviewBlock2 .interviewBoxWrap .interViewBox img.square.left{
  top: -8%;
  left: -5%;
  right: auto;
}
.interviewBlock2 .interviewBoxWrap .interViewBox img.square.right{
  top: -8%;
  right: -5%;
  left: auto;
}
.spLinks{
  display: none;
}
@media (width < 1850px){
  .topBlock5 .historyBox{
    overflow-y: scroll;
  }
  .topBlock5 .historyBox::-webkit-scrollbar{
    display: none;
  }
  .topBlock7 .backSlideWrap{
    transform: translateY(-50%) rotate(-11deg) scale(2);
  }
  .otherFooter a p{
    font-size: 80px;
  }
  .otherFooter a img{
    width: 30px;
  }
  .topBlock5 .historyBox .slideArrow{
    display: flex;
  }
}
@media (width < 1600px){
  header.pc .headerInner .logo{
    width: 150px;
  }
  header.pc .headerInner nav li a{
    font-size: 14px;
  }
  .mainVisual{
    height: calc(100vh - 136px);
  }
  .worksDetail .txtBox{
    top: 30px;
  }
  .worksDetail .txtBox h3{
    margin-bottom: 20px;
    font-size: 26px;
  }
  .worksDetail .postList li h4{
    font-size: 16px;
  }
  .worksDetail .postList li .subTitBox{
    left: 2%;
  }
  .worksDetail .postList li .subTitBox .subTit{
    font-size: 14px;
  }
  .worksDetail .postList li.swiper-slide-next .subTitBox{
    left: 3%;
  }
  .lifeDetail .lifeDetailInner{
    width: 50%;
  }
  .lifeDetail.right .lifeDetailInner{
    margin-right: 2%;
  }
  .lifeDetail.left .lifeDetailInner{
    margin-left: 2%;
  }
  .lifeDetail.center .lifeDetailInner{
    width: 90%;
  }
  .lifeDetail .lifeDetailInner .txtBox h4{
    font-size: 20px;
  }
  .lifeDetail .lifeDetailInner .txtBox .volNum{
    margin-bottom: 20px;
  }
  .lifeDetail .lifeDetailInner .teamWrap h4{
    font-size: 20px;
  }
  .lifeDetail .lifeDetailInner .expBox .swiper-slide .year{
    font-size: 20px;
    margin-bottom: 4px;
  }
  .lifeDetail .lifeDetailInner .txtBox{
    padding: 0 5%;
  }
  .lifeDetail.center .lifeDetailInner .doorTit{
    margin-bottom: 40px;
  }
  .loadModalWrap .futureTxt{
    width: 28px;
  }
  .door{
    width: 300px;
    height: 400px;
  }
  @keyframes kumamonOut {
    0% {
      transform: translate(0,0);
      opacity: 0;
    }
    100% {
      transform: translate(276px, 80px);
      opacity: 1;
    }
  }
  .slideTxt p{
    font-size: 183px;
  }
}
@media (width < 1440px) {
  header.pc .headerInner{
    padding: 0 1%;
  }
  header.pc .headerInner .logo{
    width: 120px;
  }
  header.pc .headerInner nav li{
    margin-right: 20px;
  }
  header.pc .headerInner .btnLinks .guideBtn{
    font-size: 12px;
    width: 180px;
  }
  header.pc .headerInner .btnLinks .downloadBtn{
    font-size: 12px;
    width: 200px;
  }
  .mainVisual{
    height: calc(100vh - 126px);
  }
  .topBlock3{
    padding: 60px 0 80px;
  }
  .topBlock3 .leftBack{
    width: 30%;
    top: 50%;
    transform: translateY(-50%);
  }
  .topBlock3 .rightBack{
    width: 30%;
    top: 50%;
    transform: translateY(-50%);
  }
  .topBlock4 .doorTit{
    margin: 0 auto 57px;
    width: 90%;
  }
  .lifeDetail.center .lifeDetailInner .doorTit{
    margin: 0 auto 40px;
  }
  .topBlock4 .txtBox{
    margin: 0 auto 88px;
    width: 90%;
  }
  .interviewPage .subVisual .txtBox p{
    font-size: 30px;
  }
  .interviewBox ul li .modalWrap .modal{
    width: 80%;
  }
  .slideTxt .snsList a{
    width: 100px;
  }
}
@media (width < 1280px){
  body{
    padding-bottom: 70px;
  }
  header.pc{
    display: none;
  }
  header.sp{
    display: block;
  }
  header.sp .grayLine{
    background-color: #E7E7E7;
    padding: 10px 3%;
    justify-content: space-between;
  }
  header.sp .grayLine p,
  header.sp .grayLine a{
    font-size: 10px;
    font-weight: 400;
    color: #818181;
  }
  header.sp .grayLine a{
    display: flex;
    align-items: center;
  }
  header.sp .grayLine a img{
    display: block;
    margin-right: 6.3px;
  }
  header.sp .headerInner{
    padding: 11px 3%;
    justify-content: space-between;
    align-items: center;
  }
  header.sp .headerInner .logo{
    width: 150px;
  }
  header.sp .headerInner .searchBtn{
    width: 65px;
    height: 40px;
    background-color: #000;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border-radius: 20px;
  }
  header.sp .headerInner .searchWrap{
    position: relative;
  }
  .box_hl {
    display: none;
    position: absolute;
    top: 100%;
    right: 0px;
    z-index: 100;
    background: #fff;
    border: 1px solid #c0cec9;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.5rem;
    margin: 0px;
    padding: 0px;
    width: 345px;
    text-align: center;
  }
  #top_search_keyword_sp{
    padding: 20px 20px 0px;
    text-align: left;
  }
  #box_hl_search_sp{
    z-index: 999;
  }
  #box_hl_search_sp.box_hl{
    background: #eee;
  }
  #top_search_page_id_wrap_sp{
    padding: 0px 20px 20px;
    text-align: left;
  }
  .box_hl_close{
    display: block;
    width: 100%;
    border: none;
    background: #333;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.3;
    margin: 0px;
    padding: 3px 0px;
    text-align: center;
  }
  .box_hl_close span{
    color: #fff;
    font-size: 15px;
  }
  .box_hl.box_hl_open {
    display: block;
  }
  #tmp_query_sp{
    display: inline-block;
    vertical-align: middle;
    border: 1px solid #fff !important;
    border-right: none !important;
    border-radius: 5px 0px 0px 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0px;
    width: calc(100% - 40px) !important;
    height: 40px !important;
  }
  #submit_sp{
    display: inline-block;
    vertical-align: middle;
    border: 1px solid #333;
    border-left: none;
    background: url(https://www.pref.kumamoto.jp//img/common/icon_search.png) no-repeat center center #333;
    color: #fff;
    border-radius: 0px 5px 5px 0px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0px 0px 0px -1px;
    padding: 0px;
    width: 41px;
    height: 40px;
    text-align: left;
    text-indent: -9999em;
    overflow: hidden;
  }
  #cse-search-box_sp label{
    display: block;
    width: 100%;
    color: #333;
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 5px;
  }
  #open_page_id_submit_sp{
    display: inline-block;
    vertical-align: middle;
    border: 1px solid #333;
    border-left: none;
    background: url(https://www.pref.kumamoto.jp//img/common/icon_search.png) no-repeat center center #333;
    color: #fff;
    border-radius: 0px 5px 5px 0px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0px 0px 0px -1px;
    padding: 0px;
    width: 41px;
    height: 40px;
    text-align: left;
    text-indent: -9999em;
    overflow: hidden;
  }
  #open_page_id_sp{
    display: inline-block;
    vertical-align: middle;
    border: 1px solid #fff !important;
    border-right: none !important;
    border-radius: 5px 0px 0px 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0px;
    width: calc(100% - 40px);
    height: 40px;
  }
  #cse_filetype_sp fieldset legend{
    display: none;
  }
  #cse_filetype_sp fieldset{
    border: none;
    margin: 10px 0px;
    padding: 0px;
    text-align: right;
    font-size: 14px;
  }
  #top_search_page_id_wrap_sp label{
    display: block;
    width: 100%;
    color: #333;
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 5px;
  }
  .footMenu{
    display: block;
    position: fixed;
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: 997;
  }
  .footMenu div > a{
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 500;
    color: #FF0000;
    border-top: 1px solid #E2E2E2;
  }
  .footMenu a img{
    display: block;
    width: 41px;
    margin-right: 9px;
  }
  .footMenu .guidLink{
    width: 40%;
    background-color: #fff;
    position: relative;
    z-index: 999;
  }
  .footMenu .dlLink{
    width: 40%;
    background-color: #fff;
    border-left: 1px solid #E2E2E2;
    box-sizing: border-box;
    position: relative;
    z-index: 999;
  }
  .footMenu .hbMenu{
    width: 20%;
    height: 64px;
  }
  .footMenu .hbMenu .hbMenuBtn{
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    flex-flow: column;
    background-color: #000;
    position: relative;
    z-index: 999;
  }
  .footMenu .hbMenu .hbMenuBtn span{
    display: block;
    width: 36px;
    height: 2px;
    background-color: #fff;
    margin-bottom: 7.5px;
    transition: .3s;
  }
  .footMenu .hbMenu .hbMenuBtn span:nth-child(2){
    margin-bottom: 0;
  }
  .footMenu .hbMenu.on .hbMenuBtn span:nth-child(1){
    transform: rotate(30deg);
    margin: 7.5px 0 -1px
  }
  .footMenu .hbMenu.on .hbMenuBtn span:nth-child(2){
    transform: rotate(-30deg);
  }
  .footMenu .hbMenu .hbMenuBtn p{
    color: #fff;
    font-size: 13px;
    font-family: din-2014, sans-serif;
    font-weight: 400;
  }
  .footMenu .hbMenu.on .hbMenuBtn p{
    margin-top: 7.5px;
  }
  .footMenu .hbMenu .hbMenuContent{
    width: 100%;
    height: 100vh;
    position: fixed;
    z-index: 998;
    top: 0;
    left: 100%;
    background-color: #fff;
    box-sizing: border-box;
    padding: 40px 10% 100px;
    transition: .3s;
    overflow-y: scroll;
  }
  .footMenu .hbMenu .hbMenuContent .logo{
    width: 200px;
    margin-bottom: 60px;
  }
  .footMenu .hbMenu .hbMenuContent li{
    margin-bottom: 40px;
    border-bottom: 1px solid #000;
  }
  .footMenu .hbMenu .hbMenuContent li a{
    font-size: 20px;
    color: #000;
    padding-bottom: 10px;
    display: block;
  }
  .footMenu .hbMenu.on .hbMenuContent{
    left: 0;
  }
  .topBlock6 .flowBox, 
  .topBlock6 .qaBoxWrap{
    flex-flow: column;
  }
  .topBlock6 .flowBox .flowArrow{
    width: 100%;
    content: url('img/flowArrowSp.png');
  }
  .worksDetail .txtBox{
    position: static;
    margin-left: 5%;
    margin-bottom: 37.4px;
  }
  /* .worksDetail .postList li.swiper-slide-next h4{
    display: none;
  }
  .worksDetail .postList li.swiper-slide-active h4{
    display: block;
  } */
  .topBlock4 .doorTit h2{
    margin-right: 0;
  }
  .lifeDetailWrap{
    padding-bottom: 80px;
  }
  .lifeDetail.right .lifeDetailInner{
    width: 90%;
    margin: 0 auto;
    right: auto;
  }
  .lifeDetail.left{
    margin-bottom: 100vh;
  }
  .lifeDetail.left .lifeDetailInner{
    width: 90%;
    margin: 0 auto;
    left: auto;
  }
  .lifeDetail.center .lifeDetailInner .graphWrap.pc{
    display: none;
  }
  .lifeDetail.center .lifeDetailInner .graphWrap.sp{
    display: block;
  }
  /* .lifeDetail.center .lifeDetailInner .graphWrap{
    flex-direction: column;
  } */
  .lifeDetail.center .lifeDetailInner .graphWrap .grapInner{
    width: 100%;
  }
  .lifeDetail.center .lifeDetailInner .graphWrap .grapInner:nth-of-type(1){
    margin-bottom: 52px;
  }
  .lifeDetailBg.pc{
    display: none;
  }
  .lifeDetailBgWrap{
    display: block;
    position: sticky;
    top: 0;
    height: 100vh;
  }
  .lifeDetailBgWrap .lifeDetailBg{
    /* opacity: 0; */
    position: absolute;
    top: 0;
    left: 0;
    object-position: top;
  }
  .lifeDetailBgWrap .lifeDetailBg:nth-child(1){
    z-index: 3;
    transition: .3s;
  }
  .lifeDetailBgWrap.fade .lifeDetailBg:nth-child(1){
    opacity: 0;
  }
  .lifeDetailBgWrap .lifeDetailBg:nth-child(2){
    z-index: 2;
    transition: .3s;
  }
  .lifeDetailBgWrap.fade2 .lifeDetailBg:nth-child(1),
  .lifeDetailBgWrap.fade2 .lifeDetailBg:nth-child(2){
    opacity: 0;
  }
  .lifeDetail .lifeDetailInner:after{
    display: none;
  }
  .topBlock5 .doorTit .df{
    flex-flow: column;
  }
  .topBlock5 .doorTit h2{
    text-align: center;
  }
  .topBlock5 .doorTit h2 br{
    display: inline;
  }
  .skillupContainer{
    flex-flow: column;
  }
  .skillupContainer .skillBoxWrap{
    order: 2;
    width: 100%;
  }
  .skillupContainer h3{
    order: 1;
    margin: 0 0 14.7px auto;
    position: static;
  }
  .interviewBox ul{
    grid-template-columns: 1fr;
    gap: 9px 0;
  }
  .mainVisual .doorKumamonWrap{
    width: 25%;
    bottom: -21px;
  }
  .topBlock6 .doorTit{
    width: 100%;
    margin-bottom: 20px;
  }
  .topBlock6 .flowBox .flowListWrap, 
  .topBlock6 .qaBoxWrap .qaList{
    width: 100%;
  }
  .topBlock7 .linkWrap{
    padding: 240px 0;
  }
  .topBlock5 .historyBox > img{
    content: url('/wp-content/themes/a/img/historyImg_sp.png');
  }
  .topBlock5 .historyBox{
    width: 100%;
  }
  .spLinks{
    display: block;
    background-color: #fff;
    padding: 45px 0;
  }
  .spLinks ul{
    grid-template-columns: 1fr 1fr 1fr;
    gap: 9px;
    width: 90%;
    margin: 0 auto;
  }
  .spLinks ul li{
    background-color: #ED2020;
    border-radius: 7px;
    height: 81px;
  }
  .spLinks ul li a{
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    flex-flow: column;
  }
  .spLinks ul li a img{
    display: block;
    margin-bottom: 5px;
  }
  .spLinks ul li a p{
    font-size: 10px;
    font-weight: 600;
    color: #fff;
  }
  .singlePage .catLinks li a .txtBox .tit{
    font-size: 30px;
  }
  .catPostLists .catPostBox{
    flex-flow: column;
    padding: 50px 0;
  }
  .catPostLists .catPostBox .txtBox{
    width: 90%;
    margin: 0 auto 40px;
  }
  .catPostLists .catPostBox .postList{
    width: 100%;
  }
  .catPostLists .catPostBox .txtBox h2{
    font-size: 26px;
    margin-bottom: 18px;
  }
  .catPostLists .catPostBox .txtBox > p{
    margin-bottom: 12.8px;
  }
  .singlePage .catLinks{
    grid-template-columns: 1fr;
    gap: 20px 0;
  }
  .interviewPage .interviewBlock1 .rufi{
    width: 100%;
    z-index: -1;
  }
  .catPostLists .catPostBox .postList .swiper-slide a .titBox h3{
    font-size: 14px;
  }
  .singlePage .nextPrev .prev a .arrowIcon > p,
  .singlePage .nextPrev .next a .arrowIcon > p{
    font-size: 12px;
  }
  .topBlock5 .historyBox .slideArrow{
    position: static;
    margin-left: 13%;
  }
  .interviewPage{
    padding: 33px 0 150.4px;
  }
  .interviewPage .subVisual{
    flex-flow: column;
    margin-bottom: 70px;
  }
  .interviewPage .subVisual .txtBox{
    width: 100%;
    padding-top: 0;
    margin-bottom: 15.4px;
  }
  .interviewPage .subVisual > img{
    width: 100%;
  }
  .interviewPage .graphWrap{
    grid-template-columns: 1fr;
    gap: 48px 0;
  }
  .interviewBlock2 .interviewBoxWrap .areaTit{
    margin-bottom: 40px;
  }
  .interviewBlock2 .interviewBoxWrap .interViewBox{
    margin-bottom: 40px;
  }
  .interviewBlock2 .interviewBoxWrap{
    margin-bottom: 80px;
  }
  .lifeDetail.right{
    margin-bottom: 100vh;
  }
  .worksDetail .postList li.swiper-slide{
    width: 66% !important;
    aspect-ratio: 196 / 280;
  }
  .worksDetail .postList li.swiper-slide-next{
    width: 66% !important;
    aspect-ratio: 196 / 280;
  }
  .slideTxt p{
    font-size: 100px;
  }
  .interviewBlock2.pc{
    display: none;
  }
  .interviewBlock2.sp{
    display: block;
  }
  .interviewBoxSpWrap{
    width: 90%;
    margin: 0 auto 89.4px;
  }
  .interviewBoxSpWrap:last-child{
    margin-bottom: 0;
  }
  .interviewBoxSpWrap .areaTit{
    margin-bottom: 7.9px;
  }
  .interviewBoxSpWrap .interViewBox .txtBox{
    position: relative;
    background-color: #fff;
    border: 1px solid #E83910;
    padding: 34px 5% 47.2px;
    border-radius: 8px;
  }
  .interviewBoxSpWrap .interViewBox .txtBox .adminName{
    position: absolute;
    bottom: calc(100% + 20px);
    left: 0;
  }
  .interviewBoxSpWrap .interViewBox.left .txtBox .adminName{
    right: 0;
    left: auto;
  }
  .interviewBoxSpWrap .interViewBox .txtBox .adminName .admin{
    font-size: 13px;
    font-weight: 400;
    color: #fff;
    background-color: #E83910;
    padding: 2px 10px;
    width: fit-content;
    margin-bottom: 5px;
  }
  .interviewBoxSpWrap .interViewBox .txtBox .adminName .note{
    font-size: 14px;
    font-weight: 400;
    background-color: #fff;
    padding: 0 0.5em;
  }
  .interviewBoxSpWrap .interViewBox .txtBox .adminDetail .year{
    font-size: 12px;
    padding-bottom: 23.4px;
    border-bottom: 1px solid #C9C9C9;
    margin-bottom: 23.4px;
  }
  .interviewBoxSpWrap .interViewBox .txtBox .adminDetail .txtBoxInner h3{
    font-size: 16px;
    font-weight: 500;
    color: #E83910;
    margin-bottom: 9px;
  }
  .interviewBoxSpWrap .interViewBox .txtBox .adminDetail .txtBoxInner p{
    font-size: 14px;
    font-weight: 400;
  }
  .mainVisual{
    height: calc(100vh - 108px);
  }
}
@media (width < 1000px){
  .otherFooter a p{
    font-size: 50px;
  }
  .otherFooter a img{
    width: 20px;
  }
  .worksDetail .postList li.swiper-slide-next .subTitBox .subTit{
    font-size: 12px;
  }
  .worksDetail .postList li .subTitBox .subTit{
    font-size: 10px;
  }
  .worksDetail .postList li .subTitBox .join{
    font-size: 10px;
  }
  .mainVisual.pc{
    display: none;
  }
  .mainVisual.sp{
    display: flex;
  }
  .msgList .msg{
    flex-flow: column;
  }
  .msgList .msgTit{
    width: 100%;
    padding-right: 0;
    margin-bottom: 20px;
  }
  .msgList .msg > img, 
  .msgList .msg .msgInner > img{
    width: 100%;
    margin: 0 auto;
  }
  .msgList .msg .msgInner > img{
    content: url('img/saportSp.png');
  }
  .msgList .msg:nth-child(2) > img{
    content: url('img/osaSp.png');
  }
  .msgList .msg:nth-child(3) > img{
    content: url('img/hunikiSp.png');
  }
  .skillupContainer h3{
    width: 100%;
    writing-mode: horizontal-tb;
    height: auto;
    margin-bottom: 40px;
  }
  .topBlock5 .historyArrow{
    content: url('img/historyImgSp2.jpg');
  }
  .interviewBox ul li:nth-child(1) .modalWrap .modal .modalDetail{
    content: url('img/modal1Sp.png');
  }
  .interviewBox ul li:nth-child(2) .modalWrap .modal .modalDetail{
    content: url('img/modal2Sp.png');
  }
  .mainVisual .doorKumamonWrap{
    width: 40%;
  }
  .mainVisual.sp .doorKumamonWrap .door-kumamon-cennter{
    position: relative;
    z-index: 2;
  }
  .mainVisual .doorKumamonWrap .kumamotnImg{
    left: 90%;
    z-index: 1;
  }
  .doorWrap{
    bottom: auto;
    top: 50%;
    transform: translate(-50%,-50%);
  }
  .doorWrap > img{
    width: 240px;
    left: 0;
  }
  .msgList .msg .msgInner{
    flex-direction: column;
  }
  .topBlock1Inner .kennchiji{
    flex-flow: column;
    padding: 27px 5% 450px;
    position: relative;
  }
  .topBlock1Inner .kennchiji .txtBox{
    width: 100%;
    padding-right: 0;
    margin-bottom: 40px;
  }
  .topBlock1Inner .kennchiji .txtBox .nameTxt{
    text-align: left;
  }
  .topBlock1Inner .kennchiji img{
    width: 60%;
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .chatWrap .leftBox .rollName, .chatWrap .rightBox .rollName{
    display: none;
  }
  .chatWrap .chatBox li.man,
  .chatWrap .chatBox li.woman{
    margin: 16px 0 0;
    width: 100%;
  }
}
@media ( width < 820px ){
  body{
    padding-bottom: 65px;
  }
  .loadModalWrap .futureTxt{
    width: 16px;
    left: 40%;
  }
  .door{
    width: 200px;
    height: 300px;
  }
  .doorWrap > img{
    width: 100px;
    left: -10%;
  }
  @keyframes kumamonOut {
    0% {
      transform: translate(0,0);
      opacity: 0;
    }
    100% {
      transform: translate(165px, 50px);
      opacity: 1;
    }
  }
  .topBlock1{
    padding: 79px 0 67px;
  }
  .doorTit h2 span{
    font-size: 50px;
  }
  .topBlock2 .note{
    width: 90%;
    margin: 0 auto 60px;
  }
  .topBlock2 .note br{
    display: none;
  }
  .worksDetail{
    padding: 25.2px 0 53px;
  }
  .worksDetail .txtBox .note{
    font-size: 13px;
    margin-bottom: 12.8px;
  }
  .worksDetail .postList li.swiper-slide{
    height: 280px;
  }
  .worksDetail .postList li.swiper-slide-active h4{
    top: 5px;
    right: 5px;
    font-size: 12px;
  }
  .topBlock2{
    padding: 60px 0 40px;
  }
  .topBlock1Inner p{
    margin-bottom: 0;
  }
  .topBlock1Inner .linkBox{
    display: none;
  }
  .topBlock1Inner p{
    font-size: 16px;
    text-align: left;
    line-height: 36px;
    margin-bottom: 40px;
  }
  .topBlock3{
    padding: 61.3px 0 43px;
  }
  .topBlock3 .leftBack{
    display: none;
  }
  .topBlock3 .rightBack{
    display: none;
  }
  .topBlock3 .redLink2{
    font-size: 14px;
  }
  .topBlock3 .msgMain{
    margin-bottom: 40px;
    position: relative;
    z-index: 1;
  }
  .topBlock4{
    padding: 116px 0 0;
  }
  .topBlock4 .doorTit .door{
    margin-right: 21px;
  }
  .topBlock4 .txtBox h3{
    font-size: 24px;
    line-height: 34px;
  }
  .topBlock4 .txtBox h3 span{
    font-size: 33px;
  }
  .topBlock4 .doorTit{
    margin-bottom: 35.8px;
  }
  .lifeDetailWrap{
    margin-top: 0;
  }
  .lifeDetail{
    position: static;
    padding: 40px 0;
    height: auto;
  }
  .lifeDetail .lifeDetailInner{
    position: static;
    margin: 0 auto;
    transform: translate(0,0);
    padding-top: 38.7px;
    padding-bottom: 40px;
  }
  .lifeDetail.center .lifeDetailInner{
    padding-bottom: 40px;
  }
  .lifeDetail.right .lifeDetailInner{
    transform: translate(0,0);
  }
  .lifeDetail.left .lifeDetailInner{
    transform: translate(0,0);
  }
  .lifeDetail .lifeDetailInner .teamWrap .titTxt{
    font-size: 16px;
  }
  .lifeDetail .lifeDetailInner .teamWrap .titBox{
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 90%;
    margin: 0 auto 20px;
    padding: 0;
  }
  .lifeDetail .lifeDetailInner .teamWrap h4{
    font-size: 18px;
    margin-bottom: 12px;
  }
  .lifeDetail .lifeDetailInner .expBox{
    width: 90%;
  }
  .lifeDetail .lifeDetailInner .txtBox h4 br{
    display: none;
  }
  .lifeDetail .lifeDetailInner .teamWrap .expBox .timeLine .title{
    font-size: 12px;
    width: 30%;
  }
  .lifeDetail.left .lifeDetailInner .teamWrap .expBox .timeLine .title{
    width: 25%;
  }
  .lifeDetail .lifeDetailInner .teamWrap .expBox .timeLine .timelineContent{
    font-size: 12px;
    width: 60%;
  }
  .lifeDetail.right .lifeDetailInner .teamWrap .now{
    padding-left: 22%;
    font-size: 12px;
  }
  .topBlock5{
    padding: 80px 0;
  }
  .topBlock5 .doorTit{
    margin-bottom: 50px;
  }
  .topBlock5 .doorTit .door{
    margin-bottom: 7px;
  }
  .topBlock5 .doorTit h2 span{
    font-size: 43px;
  }
  .topBlock5 h3{
    font-size: 25px;
    margin-bottom: 23px;
  }
  .topBlock5 h3 br{
    display: inline;
  }
  .topBlock5 > .note{
    width: 90%;
    margin: 0 auto 54px;
    text-align: left;
  }
  .topBlock5 > .note br{
    display: none;
  }
  .topBlock5 .historyBox img{
    width: 1110px;
  }
  .topBlock5 .historyBox{
    margin-bottom: 62px;
  }
  .chatContent h3 br{
    display: inline;
  }
  .chatContent .note{
    width: 90%;
    margin: 0 auto 36px;
    text-align: left;
  }
  .chatContent .note br{
    display: none;
  }
  .msgList{
    margin-bottom: 79.5px;
  }
  .msgList .msgTit .titTxt{
    font-size: 14px;
  }
  .msgList .msgTit .titTxt br{
    display: inline;
  }
  .msgList .msg .msgTit .titTxt img{
    width: 43px;
    margin-right: 5.4px;
  }
  .msgList .msg .msgAns{
    font-size: 14px;
  }
  .skillupContainer .skillBoxWrap .skillBox .skillInner img{
    display: none;
  }
  .skillupContainer .skillBoxWrap .skillBox .skillInner .txtBox{
    width: 100%;
    padding-right: 0;
  }
  .skillupContainer{
    margin-bottom: 100.5px;
  }
  .interviewBox ul .hakenBox .txtBox{
    bottom: 23px;
    left: 16px;
  }
  .interviewBox ul .hakenBox .txtBox h4{
    font-size: 16px;
  }
  .interviewBox ul .hakenBox .txtBox p{
    font-size: 13px;
  }
  .interviewBox ul .hakenBox .icon{
    bottom: 23px;
    right: 16px;
    width: 34px;
    height: 34px;
  }
  .topBlock6{
    padding: 52px 0 30px;
  }
  .topBlock6 .tantoBnr .txtBox p{
    font-size: 14px;
    margin-bottom: 8px;
  }
  .topBlock6 .tantoBnr .txtBox .icon{
    width: 34px;
    height: 34px;
  }
  .topBlock6 .tantoBnr{
    margin-bottom: 120px;
  }
  .topBlock6 .flowBox .flowList{
    gap: 0 8px;
  }
  .topBlock6 .flowBox .flowList li{
    padding: 11px 3% 46px;
  }
  .topBlock6 .flowBox .flowList li::after{
    width: 73px;
  }
  .topBlock6 .flowBox{
    margin-bottom: 78px;
  } 
  .topBlock6 .qaBoxWrap{
    margin-bottom: 0;
  }
  .topBlock7 .linkWrap .guidLink:nth-child(1){
    flex-flow: column;
    height: auto;
    padding: 18px 2%;
    align-items: flex-start;
    position: relative;
  }
  .topBlock7 .linkWrap .guidLink span{
    margin-left: 0;
    padding: 6px 8px;
    margin-top: 7px;
    font-size: 10px;
  }
  .topBlock7 .linkWrap .guidLink:nth-child(1) img{
    position: absolute;
    top: 50%;
    right: 3%;
    transform: translateY(-50%);
  }
  .topBlock7 .backSlideWrap{
    transform: translateY(-50%) rotate(-11deg) scale(3);
  }
  .topBlock7 .linkWrap{
    padding: 112px 0;
  }
  .singlePage .subVisual{
    position: relative;
    height: auto;
    margin-bottom: 80px;
  }
  .singlePage .subVisual > img.pc{
    display: none;
  }
  .singlePage .subVisual > img.sp{
    display: block;
    width: 100%;
  }
  .singlePage .subVisual .txtBox{
    padding-top: 10px;
    height: 100%;
    box-sizing: border-box;
  }
  .singlePage .subVisual .txtBox h1{
    margin-top: 0;
    position: absolute;
    bottom: 10px;
    left: 0;
    font-size: 16px;
    writing-mode: horizontal-tb;
  }
  .singlePage .subVisual .txtBox .admini{
    font-size: 14px;
  }
  .singlePage .contentWrap h2{
    font-size: 17px;
  }
  .singlePage .contentWrap p{
    font-size: 14px;
  }
  /* .singlePage .nextPrev{
    flex-flow: column;
  }
  .singlePage .nextPrev .prev{
    position: static;
    width: 100%;
    margin-bottom: 20px;
  }
  .singlePage .nextPrev .next{
    position: static;
    width: 100%;
  } */
  .otherFooter a p{
    font-size: 30px;
  }
  .otherFooter a img{
    width: 10px;
  }
  .singlePage .contentWrap{
    margin-bottom: 80px;
  }
  .singlePage .nextPrev{
    margin-bottom: 80px;
  }
  .singlePage .catLinks{
    margin-bottom: 80px;
  }
  .catPostLists .catPostBox.red{
    padding: 40px 0;
  }
  .topBlock5 .historyBox .slideArrow > img{
    width: 100px;
  }
  .topBlock5 .historyBox .slideArrow{
    margin-left: 20%;
  }
  .interviewPage .subVisual .txtBox .txtBoxInner{
    top: 45px;
  }
  .interviewPage .subVisual .txtBox > img{
    content: url('img/interview/human_sp.png');
  }
  .interviewPage .subVisual .txtBox p:nth-child(1){
    font-size: 21px;
  }
  .interviewPage .subVisual .txtBox p span{
    font-size: 15px;
  }
  .interviewPage .interviewBlock1 h2{
    font-size: 18px;
    margin: 0 auto 11px;
    width: 90%;
  }
  .interviewPage .interviewBlock1 p{
    font-size: 14px;
    width: 78%;
    margin: 0 auto 53px;
  }
  .interviewPage .interviewBlock1 p br{
    display: none;
  }
  .interviewPage .graphWrap{
    margin-bottom: 70px;
  }
  .interviewPage .interviewBlock1{
    margin-bottom: 90px;
  }
  .interviewBlock2 .doorTit{
    margin-bottom: 90px;
  }
  .slideTxt p{
    font-size: 112px;
  }
  .topBlock7 .linkWrap a{
    font-size: 14px;
  }
  .topBlock4 .txtBox .redLink{
    font-size: 12px;
  }
  .skillupContainer h3{
    height: auto;
    writing-mode: horizontal-tb;
    width: 100%;
  }
  .topBlock6 .recruitPerson{
    content: url('img/recruitMsgSp.png'); 
    margin-bottom: 80px;
  }
  .interviewBox ul li .modalWrap .modal{
    width: 90%;
  }
  .interviewBox ul li .modalWrap .modalClose{
    width: 90%;
    top: -5px;
    right: -4px;
    width: 27px;
  }
  .lifeDetail.center .lifeDetailInner .doorTit{
    font-size: 12px;
  }
  .interviewBox{
    margin-bottom: 80px;
  }
  .interviewBox > .note{
    width: 90%;
    margin: 0 auto 40px;
    text-align: left;
  }
  .interviewBox > .note br{
    display: none;
  }
  .slideTxt p{
    font-size: 50px;
  }
  .slideTxt .snsList a{
    width: 48px;
  }
  .topBlock1Inner .youtubeBox{
    margin-bottom: 40px;
  }
  .topBlock1Inner .visionBox h2{
    font-size: 23px;
    margin-bottom: 20px;
  }
  .topBlock1Inner .visionBox p{
    font-size: 20px;
    line-height: 30px;
  }
  .topBlock1Inner .visionBox{
    margin-bottom: 60px;
  }
  .topBlock1Inner .houshinBox h3{
    font-size: 18px;
    margin-bottom: 20px;
  }
  .topBlock1Inner .houshinBox .hoishin1{
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 30px;
  }
  .topBlock1Inner .houshinBox .hoishin2{
    font-size: 13px;
    line-height: 1.6;
  }
  .topBlock1Inner .kennchiji .txtBox .msg{
    line-height: 26px;
    font-size: 15px;
  }
  .topBlock1Inner .visionWrap{
    margin-bottom: 60px;
  }
  .topBlock1Inner .kennchiji .txtBox .nameTxt{
    margin-bottom: 0;
    font-size: 14px;
  }
  .lifeDetail .lifeDetailInner .teamWrap .character{
    opacity: 0.2;
  }
  .lifeDetail.center .lifeDetailInner .graphWrap .grapInner2{
    flex-flow: column;
  }
  .lifeDetail.center .lifeDetailInner .graphWrap .grapInner2 img:nth-child(1){
    width: 100%;
    margin-bottom: 40px;
  }
  .lifeDetail.center .lifeDetailInner .graphWrap .grapInner2 img:nth-child(2){
    width: 100%;
  }
  .footMenu .hbMenu .hbMenuContent .logo{
    width: 100%;
  }
  .topBlock1Inner .kennchiji{
    padding-bottom: 200px;
  }
  .topBlock2 .doorTit .door{
    margin-right: 13px;
  }
  .topBlock4 .doorTit .df{
    flex-direction: column;
  }
  .lifeDetail.center .lifeDetailInner .doorTit .titBox{
    flex-direction: row;
  }
  .lifeDetail.center .lifeDetailInner .doorTit h4 span{
    font-size: 50px;
  }
  .lifeDetail.center .lifeDetailInner .doorTit .door{
    width: 24px;
    height: 38px;
    margin-right: 10px;
  }
  footer .iconLink:nth-child(2){
    margin-right: 0;
  }
}