@charset "utf-8";
/* common rule
**********************************************************/

* {
	box-sizing: border-box;
}
#wpadminbar {
  display: none!important;
}
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
  margin-top: 0!important;
}
/*
html {
  max-width: 100vw;
  overflow-x: hidden;
}
*/
body {
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  margin: 0;
  color: #3E3E3E;
  line-height: 1.6;
  font-weight: 500;
  font-size: 1.6rem;
  position: relative;
  overflow-x: hidden;
}
@media screen and ( max-width:768px) {
  body {
    font-size: 1.4rem;
  }
}
body {
  animation: fadeIn 3s ease 0s 1 normal;
  -webkit-animation: fadeIn 3s ease 0s 1 normal;
}
#wrapper {
  position: relative;
  overflow-x: clip;
}
@keyframes fadeIn {
  0% {opacity: 0}
  100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
  0% {opacity: 0}
  100% {opacity: 1}
}
p,
h1,
h2,
h3,
h4,
h5,
h6,
dl,
dt,
dd,
ul {
  margin: 0;
  padding: 0;
}
li {
    list-style: none;
}
img {
  max-width: 100%;
  outline: none;
  border-style: none;
  vertical-align: bottom;
  height: auto;
}
a {
  color: #0B4683;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  text-decoration: none;
}
a:hover {
  color: #0B4683;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  transition: all 0.3s;
  text-decoration: underline;
}
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}


/* common rule
**********************************************************/

.only_pc {
  display: inline;
	}
.only_sp {
	display: none;
}
@media screen and ( max-width:768px) {
	.only_sp {
		display: inline;
	}
  .only_pc {
    display: none;
  }
}
.tel {
	pointer-events: none;
}
@media screen and ( max-width:768px) {
	.tel {
		pointer-events: auto;
	}
}
.flex {
  display: flex;
}
.noto-sans-jp {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
.zen-kaku-gothic {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.albert-sans {
  font-family: "Albert Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
.content {
  margin: 0 auto;
}
.button {
  display: flex;
  justify-content: space-between;
}
.button li a {
  text-decoration: none;
  display: block;
  border-radius: 200px;
  text-align: center;
  color: #FFF;
  background-image: linear-gradient(90deg, rgba(0, 255, 255, 1), rgba(0, 206, 255, 1));
  box-shadow: 5px 5px 15px 0px rgba(99, 111, 128, 0.8);
  letter-spacing: 2px;
  line-height: 1.3;
}
.button li a:hover {
  text-decoration: none;
  box-shadow: none;
}
.button li a span {
  display: block;
  font-weight: 600;
}
.fade_up {
  animation-name: fade_up_anime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fade_up_anime{
  from {
    opacity: 0;
    transform: translateY(50px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.fade{
  opacity: 0;
  animation-delay: 0.1s;
}
.fade_delay02 {
  animation-delay: 0.2s;
}
.fade_delay03 {
  animation-delay: 0.3s;
}
.fade_delay04 {
  animation-delay: 0.4s;
}
.other_link a {
  color: #FFF;
  position: relative;
  font-weight: 300;
  padding-right: 40px;
  font-size: 1.5rem;
}
.other_link .blank::before,
.other_link .blank::after {
  content: "";
  display: block;
  border: solid #FFF 1px;
  width: 20px;
  height: 14px;
  position: absolute;
  right: 0;
  top: 0;
}
.other_link .blank::after {
  right: 5px;
  top: 5px;
}
/*
.bg_extend_title {
  animation-name: bg_extend_title_anime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  position: relative;
  overflow: hidden;
  opacity: 0;
}

@keyframes bg_extend_title_anime {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;  
}
}
.bg_appear {
  animation-name: bg_extend_title_anime02;
  animation-duration: 1s;
  animation-delay: 0.6s;
  animation-fill-mode: forwards;
  opacity: 0;
}

@keyframes bg_extend_title_anime02 {
  0% {
  opacity: 0;
  }
  100% {
  opacity: 1;
}
}
.bg_lr_extend::before {
  animation-name: bg_lr_extend_anime;
  animation-duration: 1s;
  animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #666;
}
@keyframes bg_lr_extend_anime {
  0% {
    transform-origin: left;
    transform: scaleX(0);
  }
  50% {
    transform-origin: left;
    transform: scaleX(1);
  }
  50.001% {
    transform-origin: right;
  }
  100% {
    transform-origin: right;
    transform: scaleX(0);
  }
}
.bg_appear_trigger,
.bg_lr_extend_trigger{
    opacity: 0;
}
*/

/*==================================================
背景色が伸びて出現
animation-iteration-count: infinite;
===================================*/

/*全共通*/
/*
.bgextend{
  display: inline-block;
  animation-name:bgextendAnimeBase;
  animation-duration:1.5s;
  animation-delay: 1s;
  animation-fill-mode:forwards;
  position: relative;
  overflow: hidden;
  opacity:0;
}

@keyframes bgextendAnimeBase{
  from {
    opacity:0;
  }

  to {
    opacity:1;  
}
}

.bgappear{
  animation-name:bgextendAnimeSecond;
  animation-duration:1.5s;
  animation-delay: 1.6s;
  animation-fill-mode:forwards;
  opacity: 0;
}

@keyframes bgextendAnimeSecond{
  0% {
  opacity: 0;
  }
  100% {
  opacity: 1;
}
}
.bgLRextend::before{
  animation-name:bgLRextendAnime;
  animation-duration:1.5s;
  animation-fill-mode:forwards;
  animation-delay: 1s;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #FFF;
      left: 0;
}
@keyframes bgLRextendAnime{
  0% {
    transform-origin:left;
    transform:scaleX(0);
  }
  50% {
    transform-origin:left;
    transform:scaleX(1);
  }
  50.001% {
    transform-origin:right;
  }
  100% {
    transform-origin:right;
    transform:scaleX(0);
  }
}
.bgappearTrigger,
.bgLRextendTrigger{
    opacity: 0;
}
*/

/* header
**********************************************************/

header {
  width: 100%;
  height: 132px;
  background: #FFF;
  position: fixed;
  z-index: 3;
  left: 0;
  top: 0;
}
@media screen and ( max-width:960px) {
  header {
    height: 127px;
  }
}
@media screen and ( max-width:940px) {
  header {
    height: 100px;
  }
}
@media screen and ( max-width:768px) {
  header {
    height: 90px;
  }
}
header .content {
  padding: 30px 20px;
  max-width: 1280px;
  display: flex;
}
@media screen and ( max-width:940px) {
  header .content {
    padding: 20px;
  }
}
@media screen and ( max-width:768px) {
  header .content {
    padding: 15px 20px;
  }
}
@media screen and ( max-width:1050px) {
  header h1 {
    margin-top: 5px;
  }
}
@media screen and ( max-width:940px) {
  header h1 {
    margin-top: 0;
  }
}
@media screen and ( max-width:520px) {
  header h1 {
    width: calc(100% - 65px);
  }
}
header h1 a:hover {
  text-decoration: none;
  opacity: 0.5;
}
header h1 img {
  vertical-align: middle;
}
@media screen and ( max-width:1050px) {
  header h1 img {
    width: 160px;
  }
}
@media screen and ( max-width:990px) {
  header h1 img {
    width: 130px;
  }
}
header h1 img:nth-child(2) {
  border-left: solid 1px #030303;
  padding: 7px 0 7px 17px;
  margin: 6px 0 0 10px;
}
@media screen and ( max-width:1050px) {
  header h1 img:nth-child(2) {
    width: 100px;
  }
}
@media screen and ( max-width:990px) {
  header h1 img:nth-child(2) {
    width: 90px;
  }
}
header .sns {
  display: flex;
  margin-top: 8px;
}
@media screen and ( max-width:1050px) {
  header .sns {
    margin-top: 13px;
  }
}
@media screen and ( max-width:990px) {
  header .sns {
    margin-top: 10px;
  }
}
@media screen and ( max-width:940px) {
  header .sns {
    margin-top: 14px;
  }
}
@media screen and ( max-width:860px) {
  header .sns {
    display: none;
  }
}
header .sns li {
  margin-left: 35px;
}
@media screen and ( max-width:1090px) {
  header .sns li {
    margin-left: 20px;
  }
}
@media screen and ( max-width:940px) {
  header .sns li:nth-child(1) img,
  header .sns li:nth-child(2) img {
    height: 40px;
  }
}
header .sns a:hover {
  opacity: 0.7;
}
header .button {
  margin-left: auto;
}
@media screen and ( max-width:940px) {
  header .button {
    width: 430px;
  }
}
@media screen and ( max-width:768px) {
  header .button {
    width: 420px;
  }
}
@media screen and ( max-width:720px) {
  header .button {
    width: 220px;
    justify-content: flex-end;
  }
}
@media screen and ( max-width:520px) {
  header .button {
    width: 65px;
  }
}
header .button li {
  width: 186px;
  margin: 5px 20px 0 0;
}
@media screen and ( max-width:720px) {
  header .button li {
    margin: 5px 10px 0 0;
  }
  header .button li:nth-child(1) {
    display: none;
  }
}
@media screen and ( max-width:520px) {
  header .button li:nth-child(2) {
    display: none;
  }
}
header .button li a {
  width: 100%;
  max-width: 186px;
  font-weight: 300;
  font-size: 1rem;
  padding: 13px 0;
  box-shadow: 2px 2px 4px 0px rgba(99, 111, 128, 0.5);
}
@media screen and ( max-width:990px) {
  header .button li a {
    padding: 10px 0;
  }
}
@media screen and ( max-width:940px) {
  header .button li a {
    max-width: 160px;
  }
}
header .button li a span {
  font-size: 1.7rem;
}
@media screen and ( max-width:940px) {
  header .button li a span {
    font-size: 1.4rem;
  }
}
header .button .button_menu {
  width: 72px;
  margin: 0 0 0 5px;
}
@media screen and ( max-width:990px) {
  header .button .button_menu {
    width: 66px;
  }
}
@media screen and ( max-width:940px) {
  header .button .button_menu {
    width: 60px;
  }
}
header .menu_trigger {
  display: block;
  width: 72px;
  height: 72px;
  border-radius: 36px;
  background: #B3B3B3;
  position: relative;
  cursor: pointer;
  transition: all 0.3s;
}
@media screen and ( max-width:990px) {
  header .menu_trigger {
    width: 66px;
    height: 66px;
  }
}
@media screen and ( max-width:940px) {
  header .menu_trigger {
    width: 60px;
    height: 60px;
  }
}
header .menu_trigger:hover {
  opacity: 0.7;
  /*
  background: linear-gradient(90deg, rgba(100,195,216,1) 0%, rgba(29,74,157,1) 31%, rgba(200,67,145,1) 67%, rgba(244,177,21,1) 100%);
  box-shadow: 2px 2px 4px 0px rgba(99, 111, 128, 0.5);
  */
}
header .menu_trigger span {
  display: block;
  width: 34px;
  height: 2px;
  position: absolute;
  left: calc(50% - 17px);
  background: #FFF;
}
@media screen and ( max-width:990px) {
  header .menu_trigger span {
  }
}
header .menu_trigger span:nth-child(1) {
  top: 26px;
}
@media screen and ( max-width:990px) {
  header .menu_trigger span:nth-child(1) {
    top: 20px;
  }
}
@media screen and ( max-width:940px) {
  header .menu_trigger span:nth-child(1) {
    top: 18px;
  }
}
header .menu_trigger span:nth-child(2) {
  top: calc(50% - 1px);
}
header .menu_trigger span:nth-child(3) {
  bottom: 26px;
}
@media screen and ( max-width:990px) {
  header .menu_trigger span:nth-child(3) {
    bottom: 20px;
  }
}
@media screen and ( max-width:940px) {
  header .menu_trigger span:nth-child(3) {
    bottom: 18px;
  }
}


/* panel_menu
**********************************************************/

#veil {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 3;
  background: rgba(0, 0, 0, 0.5);
}
#panel_menu {
  width: 100%;
  max-width: 424px;
  height: 100vh;
  position: fixed;
  right: -424px;
  top: 0;
  z-index: 3;
  background: #94A7BE;
  transition: all 0.6s;
}
#panel_menu.open {
  right: 0;
}
#panel_menu #panel_menu_inner {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  height: 100%;
  padding: 30px 40px;
}
#panel_menu .clese {
  width: 26px;
  height: 26px;
  position: absolute;
  z-index: 1;
  right: 40px;
  top: 40px;
  cursor: pointer;
  transition: all 0.3s;
}
#panel_menu .clese:hover {
  opacity: 0.7;
}
#panel_menu .clese::before,
#panel_menu .clese::after {
  content: "";
  width: 36px;
  height: 2px;
  background: #FFF;
  transform: rotate(45deg);
  position: absolute;
  left: -5px;
  top: 12px;
}
#panel_menu .clese::after {
  transform: rotate(-45deg);
}
#panel_menu h6 img {
  vertical-align: middle;
  width: 143px;
}
#panel_menu h6 img:nth-child(2) {
  border-left: solid 1px #FFF;
  padding: 7px 0 7px 17px;
  margin: 6px 0 0 10px;
  width: 73px;
}
#panel_menu .main_menu {
  max-width: 210px;
  margin: 30px auto 0;
}
#panel_menu .main_menu li {
  border-bottom: solid 1px #FFF;
}
#panel_menu .main_menu li:last-child {
  border-bottom: none;
}
#panel_menu .main_menu a {
  color: #FFF;
  font-weight: 600;
  display: block;
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 2px;
  padding: 23px 0;
}
#panel_menu .main_menu a:hover {
  text-decoration: none;
  color: #DDD;
  /*background: #AABCD3;*/
}
#panel_menu .main_menu a .pc_menu {
  display: block;
  font-size: 1.4rem;
}
#panel_menu .main_menu a .sp_menu {
  display: none;
}
#panel_menu .button {
  flex-wrap: wrap;
  justify-content: center;
}
#panel_menu .button li {
  width: 230px;
  margin-top: 25px;
}
#panel_menu .button li a {
  font-weight: 300;
  font-size: 1rem;
  padding: 10px 0;
  box-shadow: 5px 5px 15px 0px rgba(99, 111, 128, 0.3);
}
#panel_menu .button li a:hover {
  box-shadow: none;
}
#panel_menu .button li a span {
  font-size: 1.5rem;
}
#panel_menu .sns {
  display: none;
}
#panel_menu .sns a:hover {
  opacity: 0.7;
}
#panel_menu .other_link {
  display: flex;
  flex-wrap: wrap;
  width: 320px;
  justify-content: center;
  margin: 10px auto 0;
}
#panel_menu .other_link li {
  width: 100%;
  text-align: center;
  padding-top: 18px;
}
#panel_menu .other_link a {
  font-size: 1.4rem;
}
#panel_menu .other_link li:last-child a {
  letter-spacing: 2px;
}
@media screen and ( max-width:768px) {
  #panel_menu {
    max-width: 375px;
    right: -375px;
  }
  #panel_menu #panel_menu_inner {
    padding: 0;
  }
  #panel_menu .clese {
    right: 18px;
    top: 18px;
  }
  #panel_menu .clese:hover {
    opacity: 1;
  }
  #panel_menu h6 {
    padding: 8px 15px;
  }
  #panel_menu .main_menu {
    max-width: 100%;
    margin-top: 15px;
  }
  #panel_menu .main_menu li:last-child {
    border-bottom: solid 1px #FFF;
  }
  #panel_menu .main_menu a {
    font-size: 2rem;
    padding: 10px;
  }
  #panel_menu .main_menu a:hover {
    color: #FFF;
  }
  #panel_menu .main_menu a .pc_menu {
    display: none;
  }
  #panel_menu .main_menu a .sp_menu {
    display: block;
  }
  #panel_menu .button {
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 15px;
  }
  #panel_menu .button li {
    width: calc(50% - 5px);
  }
  #panel_menu .sns {
    display: flex;
    justify-content: space-between;
    width: 200px;
    margin: 30px auto 0;
    padding-right: 5px;
  }
  #panel_menu .sns a:hover {
    opacity: 1;
  }
  #panel_menu .other_link {
    justify-content: space-between;
    margin: 25px auto 0;
  }
  #panel_menu .other_link a {
    font-size: 1.2rem;
  }
  #panel_menu .other_link li {
    width: 50%;
    padding-top: 0;
  }
  #panel_menu .other_link li:last-child a {
    letter-spacing: 0;
  }
}


/* contents
**********************************************************/

/*
#contents .content_top {
  background: #CCC;
  max-width: 1340px;
  margin: 0 auto;
}
#contents .content {
  background: #DDD;
  max-width: 1280px;
  margin: 0 auto;
}
*/

#contents {
  margin-top: 132px;
  padding-bottom: 160px;
  /*background: #DFE5EC;*/
  background: #EDF0F4;
}
@media screen and ( max-width:960px) {
  #contents {
    margin-top: 127px;
  }
}
@media screen and ( max-width:940px) {
  #contents {
    margin-top: 100px;
  }
}
@media screen and ( max-width:768px) {
  #contents {
    margin-top: 90px;
    padding-bottom: 70px;
  }
}
.voice #contents {
  background: #DFE5EC url("../img/interview/bg.svg") repeat-y left top;
  background-size: 100%;
}
#contents .content {
  max-width: 1280px;
  margin: 0 auto;
}

#contents .content .page_title {
  padding: 70px 0 60px;
  text-align: center;
  color: #6E829A;
  font-weight: 700;
  font-size: 5rem;
  letter-spacing: 10px;
  line-height: 1.3;
}
@media screen and ( max-width:768px) {
  #contents .content .page_title {
    padding: 40px 0 35px;
  }
}
@media screen and ( max-width:730px) {
  #contents .content .page_title {
    font-size: 3rem;
    letter-spacing: 6px;
  }
}
#contents .content .page_title span {
  display: block;
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 3px;
}
@media screen and ( max-width:730px) {
  #contents .content .page_title span {
    font-size: 1.6rem;
    letter-spacing: 1px;
  }
}


/* top page
**********************************************************/

.top-page .main_visual {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
.top-page .flipped {
  transform: rotateY(360deg);
  transition: transform 0.5s;
}
.top-page .pamel_img {
  position: relative;
}
.top-page .pamel_img::before,
.top-page .lead_text::before,
.top-page .content01::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.1);
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
}
.top-page .auto_slides,
.top-page .auto_slides_rtl,
.top-page .auto_slides_other {
  line-height: 0;
  font-size: 0;
}
.top-page .auto_slides .slick-slide {
  background: #67CFA0;
}
.top-page .auto_slides .slick-slide:nth-child(even),
.top-page .auto_slides_rtl .slick-slide:nth-child(even) {
  background: #0091D7;
}
.top-page .auto_slides .slick-slide:nth-child(3n),
.top-page .auto_slides_rtl .slick-slide:nth-child(3n) {
  background: #AF54AF;
}
.top-page .auto_slides .slick-slide:nth-child(4n),
.top-page .auto_slides_rtl .slick-slide:nth-child(4n) {
  background: #FF678F;
}
.top-page .auto_slides .slick-slide:nth-child(5n),
.top-page .auto_slides_rtl .slick-slide:nth-child(5n) {
  background: #FF8230;
}
.top-page .main_visual img {
  vertical-align: bottom;
}
.top-page .main_visual h2 img,
.top-page .main_visual h3 img {
  filter: drop-shadow(3px 3px 5px rgba(0, 0, 0, 0.3));
}
.top-page .pamel_img .slogan {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  width: 100%;
  text-align: center;
  padding: 0 20px;
}
.top-page .pamel_img .slogan01 {
  bottom: -34px;
}
@media screen and ( max-width:550px) {
  .top-page .pamel_img .slogan01 {
    bottom: -125px;
    padding: 0 40px;
  }
}
@media screen and ( max-width:500px) {
  .top-page .pamel_img .slogan01 {
    bottom: -110px;
  }
}
@media screen and ( max-width:450px) {
  .top-page .pamel_img .slogan01 {
    bottom: -100px;
  }
}
@media screen and ( max-width:400px) {
  .top-page .pamel_img .slogan01 {
    bottom: -95px;
  }
}
.top-page .pamel_img .slogan01 .img_pc {
  display: inline;
  
}
.top-page .pamel_img .slogan01 .img_sp {
  display: none;
}
@media screen and ( max-width:550px) {
  .top-page .pamel_img .slogan01 .img_pc {
    display: none;
  }
  .top-page .pamel_img .slogan01 .img_sp {
    display: inline;
  }
}
.top-page .pamel_img .slogan02 {
  bottom: -13px;
}
@media screen and ( max-width:550px) {
  .top-page .pamel_img .slogan02 {
    bottom: -9px;
  }
}
@media screen and ( max-width:400px) {
  .top-page .pamel_img .slogan02 {
    bottom: -6px;
  }
}
.top-page .lead_text {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  background: url("../img/index/bg01_02.jpg") no-repeat center top;
  background-size: cover;
  position: relative;
  text-align: center;
  padding: 80px 20px 190px;
}
@media screen and ( max-width:1240px) {
  .top-page .lead_text {
    background: url("../img/index/bg01.jpg") no-repeat center top;
    background-size: cover;
  }
}
@media screen and ( max-width:900px) {
  .top-page .lead_text {
    background-size: 110%;
  }
}
@media screen and ( max-width:800px) {
  .top-page .lead_text {
    background-size: 120%;
  }
}
@media screen and ( max-width:768px) {
  .top-page .lead_text {
    background-position: right top;
  }
}
@media screen and ( max-width:640px) {
  .top-page .lead_text {
    background-size: 160%;
  }
}
@media screen and ( max-width:550px) {
  .top-page .lead_text {
    background-position: right top;
    background-size: 190%;
  }
}
@media screen and ( max-width:530px) {
  .top-page .lead_text {
    padding: 40px 20px 100px;
  }
}
.top-page .top_content p,
.top-page .lead_text p {
  font-weight: 500;
  position: relative;
  z-index: 1;
  font-size: 2.3rem;
  line-height: 2.2;
  text-align: center;
}
@media screen and ( max-width:640px) {
  .top-page .lead_text p {
    font-size: 2rem;
  }
  .top-page .top_content p {
    font-size: 1.8rem;
  }
}
@media screen and ( max-width:530px) {
  .top-page .lead_text p {
    font-size: 1.6rem;
  }
  .top-page .top_content p {
    font-size: 1.4rem;
  }
}
@media screen and ( max-width:420px) {
  .top-page .lead_text p {
    font-size: 1.4rem;
  }
}
.top-page .lead_text p {
  color: #FFF;
}
.top-page .top_content p .br_sp,
.top-page .lead_text p .br_sp {
  display: none;
}
@media screen and ( max-width:640px) {
  .top-page .lead_text p .br_sp {
    display: inline;
  }
}
.top-page .top_content {
  padding: 95px 0 25px;
  position: relative;
}
@media screen and ( max-width:640px) {
  .top-page .top_content {
    padding: 80px 0 25px;
  }
}
.top-page .content02 {
  padding-bottom: 95px;
}
.top-page .content03 {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
@media screen and ( max-width:1080px) {
  .top-page .content03 {
    background: #FFF;
  }
}
.top-page .content04 {
  padding-bottom: 0;
  z-index: 1;
}
@media screen and ( max-width:800px) {
  .top-page .top_content p .br_sp {
    display: inline;
  }
}
.top-page .top_content .button {
  padding-top: 35px;
  position: relative;
  z-index: 1;
}
.top-page .content01 {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  background: url("../img/index/bg02.jpg") no-repeat center center;
  background-size: cover;
  /*background-attachment: fixed;*/
  position: relative;
  padding: 500px 20px 320px;
}
@media screen and ( max-width:640px) {
  .top-page .content01 {
    padding: 350px 20px 200px;
  }
}
@media screen and ( max-width:530px) {
  .top-page .content01 {
    padding: 220px 20px 90px;
  }
}
@media screen and ( max-width:460px) {
  .top-page .content01 {
    padding: 185px 20px 90px;
  }
}
@media screen and ( max-width:400px) {
  .top-page .content01 {
    padding: 135px 20px 90px;
  }
}
.top-page .content01 .movie {
  width: 100%;
  max-width: 760px;
  position: absolute;
  top: -125px;
  left: 50%;
  z-index: 1;
  transform: translateX(-50%);
  padding: 0 50px;
}
@media screen and ( max-width:530px) {
  .top-page .content01 .movie {
    top: -65px;
  }
}
.top-page .content01 .movie a {
  display: block;
  position: relative;
}
.top-page .content01 .movie a:hover {
  filter: brightness(120%);
}
.top-page .content01 .movie a::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  position: absolute;
  left: 0;
  top: 0;
}
.top-page .content01 .movie .movie_start {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
@media screen and ( max-width:700px) {
  .top-page .content01 .movie .movie_start {
    width: 60px;
  }
}
@media screen and ( max-width:550px) {
  .top-page .content01 .movie .movie_start {
    width: 40px;
  }
}
.modaal-outer-wrapper {
  cursor: pointer;
}
.modaal-video-wrap {
  max-width: 1300px!important;
  margin: auto!important;
}
.top-page .content01::before {
  background: rgba(0, 0, 0, 0.3);
}
.top-page .top_content h4 {
  color: #6E829A;
  font-weight: 600;
  font-size: 2.2rem;
  letter-spacing: 4px;
  margin-bottom: 25px;
  text-align: center;
  position: relative;
}
@media screen and ( max-width:530px) {
  .top-page .top_content h4 {
    margin-bottom: 15px;
  }
}
.top-page .top_content h4 span {
  font-weight: 500;
  letter-spacing: 2px;
  font-size: 2.1rem;
}
@media screen and ( max-width:640px) {
  .top-page .top_content h4 span {
    display: block;
  }
}
.top-page .content01 h4,
.top-page .content01 dl {
  position: relative;
  z-index: 1;
  color: #FFF;
  text-align: center;
}
.top-page .content01 dt {
  padding-bottom: 35px;
}
.color_button {
  display: block;
  color: #FFF;
  background: rgb(100,195,216);
  background: linear-gradient(265deg, rgba(100,195,216,1) 0%, rgba(29,74,157,1) 40%, rgba(200,67,145,1) 70%, rgba(244,177,21,1) 100%);
  width: 170px;
  height: 40px;
  border-radius: 20px;
  font-weight: 500;
  font-size: 1.8rem;
  text-align: left;
  padding: 5px 0 0 25px;
  position: relative;
}
.color_button:hover {
  text-decoration: none;
  filter: brightness(120%);
  color: #FFF;
}
.color_button::before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  background: #898A8A url("../img/index/arrow_wht.svg") no-repeat center center;
  background-size: 6px 16px;
  border-radius: 20px;
  position: absolute;
  right: 0;
  top: 0;
}
.color_button:hover::before {
  transition: transform 0.3s;
  transform: rotate(360deg);
}
.position_center {
  margin: 0 auto;
}
.top-page .content02 ul {
  display: flex;
  justify-content: center;
  padding: 0 20px;
  position: relative;
}
.top-page .content02 li {
  width: 50%;
  max-width: 500px;
  margin-top: -20px;
}
.top-page .content03 .case {
  display: flex;
  padding: 60px 0 80px;
  max-width: 1280px;
  margin: 0 auto;
}
@media screen and (max-width:860px) {
  .top-page .content03 .case {
    padding: 60px 0 30px;
  }
  .top-page .content03 .case:last-child {
    padding: 60px 20px 50px;
  }
}
@media screen and (max-width:768px) {
  .top-page .content03 .case {
    flex-wrap: wrap;
    padding: 60px 20px 5px;
  }
  .top-page .content03 .case:last-child {
    padding: 60px 20px 70px;
  }
}
@media screen and (max-width:640px) {
  .top-page .content03 .case:last-child {
    padding: 60px 20px;
  }
}
.top-page .content03 .case:nth-child(even) {
  flex-direction: row-reverse;
}
.top-page .content03 .case01,
.top-page .content03 .case02,
.top-page .content03 .case03 {
  position: relative;
  z-index: 1;
}
.top-page .content03 .case01 {
  position: relative;
  z-index: 2;
}
/*
.top-page .content03 .case:last-child {
  padding-bottom: 80px;
}
*/
.top-page .content03 .case .case_img,
.top-page .content03 .case .case_text {
  width: 50%;
}
@media screen and (max-width:860px) {
  .top-page .content03 .case .case_img {
    width: 60%;
  }
  .top-page .content03 .case .case_text {
    width: 40%;
  }
}
@media screen and (max-width:768px) {
  .top-page .content03 .case .case_img,
  .top-page .content03 .case .case_text {
    width: 100%;
  }
}
.top-page .content03 .case .case_img {
  transition: all 0.3s;
  position: relative;
  z-index: 1;
}
@media screen and (max-width:768px) {
  .top-page .content03 .case .case_img {
    position: relative;
  }
  /*
  .top-page .content03 .case .case_img::before {
    content: "";
    display: block;
    padding-top: 100%;
  }
.top-page .content03 .case .case_img img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    object-fit: cover;
    object-position : 100% 0;
  }
  */
}
.top-page .content03 .case:hover .case_img,
.top-page .content03 .case:hover .case_text a {
  filter: brightness(120%);
}
.top-page .content03 .case:hover .case_text a::before {
  transition: transform 0.3s;
  transform: rotate(360deg);
}
.top-page .content03 .case:nth-child(even) .case_text {
  width: auto;
  margin-left: auto;
}
@media screen and (max-width:768px) {
  .top-page .content03 .case:nth-child(even) .case_text {
    width: 100%;
    margin-left: none;
  }
}
.top-page .content03 .case .case_text {
  padding-left: 50px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width:860px) {
  .top-page .content03 .case .case_text {
    padding-left: 25px;
  }
}
@media screen and (max-width:768px) {
  .top-page .content03 .case .case_text {
    padding-left: 0;
  }
}
.top-page .content03 .case:nth-child(even) .case_text {
  padding: 0 50px 0 0;
}
@media screen and (max-width:860px) {
  .top-page .content03 .case:nth-child(even) .case_text {
    padding: 0 25px 0 0;
  }
}
@media screen and (max-width:768px) {
  .top-page .content03 .case:nth-child(even) .case_text {
    padding: 0;
  }
}
.top-page .content03 .case .case_text dl {
  position: relative;
}
@media screen and (max-width:768px) {
  .top-page .content03 .case .case_text dl {
    text-align: center;
    display: flex;
    flex-wrap: wrap;
  }
}
.top-page .content03 .case .case_text dt {
  padding-bottom: 20px;
}
.top-page .content03 .case .case_text dd:nth-child(2) {
  font-weight: 500;
  font-size: 2.3rem;
  line-height: 1.7;
}
@media screen and (max-width:768px) {
  .top-page .content03 .case .case_text dt,
  .top-page .content03 .case .case_text dd {
    width: 100%;
  }
  .top-page .content03 .case .case_text dt {
    order: 1;
    height: 55px;
    position: relative;
  }
  .top-page .content03 .case .case_text dt img {
    position: absolute;
    left: 50%;
    bottom: 20px;
    transform: translateX(-50%);
  }
  .top-page .content03 .case .case_text dd:nth-child(2) {
    order: 3;
  }
  .top-page .content03 .case .case_text dd:last-child {
    order: 2;
  }
}
@media screen and (max-width:640px) {
  .top-page .content03 .case .case_text dd:nth-child(2) {
    font-size: 1.8rem;
  }
}
@media screen and (max-width:530px) {
  .top-page .content03 .case .case_text dd:nth-child(2) {
    font-size: 1.4rem;
  }
}
@media screen and (max-width:768px) {
  .top-page .content03 .case .case_text dd:nth-child(2) .br_pc {
    display: none;
  }
  .top-page .content03 .button .color_button {
    margin: 0 auto;
  }
}
.top-page .content03 .case .case_text dd:nth-child(2) span {
  display: block;
  font-size: 1.8rem;
  padding-top: 15px;
}
@media screen and (max-width:640px) {
  .top-page .content03 .case .case_text dd:nth-child(2) span {
    font-size: 1.4rem;
  }
}
@media screen and (max-width:530px) {
  .top-page .content03 .case .case_text dd:nth-child(2) span {
    font-size: 1.3rem;
    padding-top: 10px;
  }
}
.top-page .content03 .case .case_text .button {
  padding-bottom: 15px;
}
@media screen and (max-width:768px) {
  .top-page .content03 .case .case_text .button {
    padding-top: 15px;
  }
}
.top-page .content04 .button {
  padding: 25px 0 40px;
}
@media screen and ( max-width:768px) {
  .top-page .content04 .button {
    padding: 25px 0 0;
    position: relative;
    z-index: 1;
  }
}
.top-page .content04 .auto_slides_other {
  /*margin-bottom: 60px;*/
  padding: 0 20px;
}
@media screen and ( max-width:768px) {
  .top-page .content04 .auto_slides_other {
    margin-top: -20px;
  }
}


/* top-page float
**********************************************************/

/*
.top-page .content02::before,
.top-page .content04::before,
.top-page .content03 .case03 .case_img::before,
.top-page .content03 .case03 .case_text::before {
  content: "";
  display: block;
  width: 600px;
  height: 640px;
  position: absolute;
  
}
.top-page .content02::before {
  background: url("../img/index/dummy_bg04.jpg") no-repeat left top;
  background-size: 100%;
  right: -130px;
  bottom: -400px;
}
.top-page .content04::before {
  background: url("../img/index/dummy_bg05.jpg") no-repeat left top;
  background-size: 100%;
  left: -130px;
  top: 0;
}
.top-page .content03 .case03 .case_img,
.top-page .content03 .case03 .case_text {
  position: relative;
}
.top-page .content03 .case03 .case_img::before {
  background: url("../img/index/dummy_bg03.jpg") no-repeat left top;
  background-size: 100%;
  left: -130px;
  top: -700px;
}
.top-page .content03 .case03 .case_text::before {
  background: url("../img/index/dummy_bg04.jpg") no-repeat left top;
  background-size: 100%;
  right: -130px;
  top: 0;
}
*/
.top-page .content02 .float,
.top-page .content04 .float,
.top-page .content03 .case02 .float {
  display: block;
  width: 600px;
  height: 640px;
  position: absolute;
  
}
.top-page .content02 .float {
  background: url("../img/index/float_bg01.jpg") no-repeat left top;
  background-size: 100%;
  right: -130px;
  bottom: -400px;
}
/*
.top-page .content04 .float {
  background: url("../img/index/dummy_bg05.jpg") no-repeat left top;
  background-size: 100%;
  left: -130px;
  bottom: 0;
}
.top-page .content03 .case01 .case_img,
.top-page .content03 .case01 .case_text {
  position: relative;
}
*/
.top-page .content03 .case02 .float02 {
  background: url("../img/index/float_bg02.jpg") no-repeat left top;
  background-size: 100%;
  left: -130px;
  bottom: 700px;
}
.top-page .content03 .case02 .float03 {
  background: url("../img/index/float_bg03.jpg") no-repeat left top;
  background-size: 100%;
  right: -130px;
  top: 0;
}
@media screen and (max-width:1080px) {
  .top-page .float {
    display: none!important;
  }
}


/* voice
**********************************************************/

.voice .lead_text {
  text-align: center;
  padding: 0 20px 60px;
}
@media screen and ( max-width:730px) {
  .voice .lead_text {
    padding-bottom: 25px;
    max-width: 640px;
    margin: 0 auto;
  }
}
.voice_area {
  display: flex;
  justify-content: space-between;
  margin: 0 20px;
}
@media screen and ( max-width:730px) {
  .voice_area {
    flex-wrap: wrap;
  }
}
.voice .voice_nav {
  width: 315px;
}
@media screen and ( max-width:1170px) {
  .voice .voice_nav {
    width: 220px;
  }
}
@media screen and ( max-width:880px) {
  .voice .voice_nav {
    width: 80px;
    margin: 0 auto;
  }
}
@media screen and ( max-width:730px) {
  .voice .voice_nav {
    width: 100%;
    margin-bottom: 45px;
    position: sticky;
    top: 100px;
    z-index: 1;
  }
}
.voice .voice_nav ul {
  width: 100%;
  max-width: 315px;
  position: sticky;
  top: 160px;
  left: 0;
}
@media screen and ( max-width:1170px) {
  .voice .voice_nav ul {
    width: 220px;
  }
}
@media screen and ( max-width:880px) {
  .voice .voice_nav ul {
    width: 80px;
  }
}
@media screen and ( max-width:730px) {
  .voice .voice_nav ul {
    display: flex;
    width: 100%;
    max-width: 100%;
    justify-content: center;
  }
}
.voice .voice_nav li {
  width: 270px;
  background: #67CFA0;
  border-radius: 100px;
  margin-bottom: 30px;
  position: relative;
  transition: all 0.3s;
}
@media screen and ( max-width:1170px) {
  .voice .voice_nav li {
    width: 180px;
  }
}
@media screen and ( max-width:880px) {
  .voice .voice_nav li {
    width: 60px;
    height: 60px;
  }
}
@media screen and ( max-width:730px) {
  .voice .voice_nav li {
    margin: 0 20px 0 0;
  }
  .voice .voice_nav li:last-child {
    margin-right: 0;
  }
}
@media screen and ( max-width:430px) {
  .voice .voice_nav li {
    width: 50px;
    height: 50px;
  }
}
.voice .voice_nav li:hover {
  filter: brightness(120%);
}
.voice .voice_nav li:nth-child(2) {
  background: #0091D7;
}
.voice .voice_nav li:nth-child(3) {
  background: #AF54AF;
}
.voice .voice_nav li:nth-child(4) {
  background: #FF678F;
}
.voice .voice_nav li:nth-child(5) {
  background: #FF8230;
}
.voice .voice_nav li.active {
  width: 315px;
}
@media screen and ( max-width:1170px) {
  .voice .voice_nav li.active {
    width: 220px;
  }
}
@media screen and ( max-width:880px) {
  .voice .voice_nav li.active {
    width: 60px;
  }
  .voice .voice_nav li::before {
    content: "";
    display: block;
    width: 66px;
    height: 66px;
    border-radius: 33px;
    border: solid #67CFA0 1px;
    position: absolute;
    left: -4px;
    top: -4px;
    opacity: 0;
    transition: all 0.3s;
  }
  .voice .voice_nav li.active::before {
    opacity: 1;
  }
  .voice .voice_nav li.active:nth-child(2)::before {
    border: solid #0091D7 1px;
  }
  .voice .voice_nav li.active:nth-child(3)::before {
    border: solid #AF54AF 1px;
  }
  .voice .voice_nav li.active:nth-child(4)::before {
    border: solid #FF678F 1px;
  }
  .voice .voice_nav li.active:nth-child(5)::before {
    border: solid #FF8230 1px;
  }
}
@media screen and ( max-width:730px) {
  .voice .voice_nav li::before {
    width: 64px;
    height: 64px;
    left: -3px;
    top: -3px;
  }
}
@media screen and ( max-width:430px) {
  .voice .voice_nav li::before {
    width: 54px;
    height: 54px;
  }
}
@media screen and ( max-width:430px) {
  .voice .voice_nav li.active {
    width: 50px;
  }
}
.voice .voice_nav li::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 9px solid transparent;
  border-left: 9px solid transparent;
  border-bottom: 18px solid #94A7BE;
  border-top: 0;
  position: absolute;
  left: 143px;
  bottom: -23px;
}
@media screen and ( max-width:1170px) {
  .voice .voice_nav li::after {
    left: 79px;
  }
}
@media screen and ( max-width:880px) {
  .voice .voice_nav li::after {
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
    border-bottom: 7px solid #94A7BE;
    left: 24px;
    bottom: -18px;
  }
}
@media screen and ( max-width:730px) {
  .voice .voice_nav li::after {
    border-top: 6px solid transparent;
    border-right: 7px solid #94A7BE;
    border-left: none;
    border-bottom: 6px solid transparent;
    left: inherit;
    right: -12px;
    bottom: calc(50% - 6px);
        
  }
}
.voice .voice_nav li:last-child::after {
  display: none;
}
.voice .voice_nav li a {
  display: block;
  padding: 5px 5px 5px 55px;
  text-align: center;
  color: #FFF;
  font-weight: 500;
  font-size: 1.7rem;
  letter-spacing: 3px;
}
@media screen and ( max-width:1170px) {
  .voice .voice_nav li a {
    padding: 5px;
  }
}
@media screen and ( max-width:880px) {
  .voice .voice_nav li a {
    height: 60px;
    font-size: 1.2rem;
    padding: 21px 0 0 2px;
    line-height: 1.4;
    letter-spacing: 2px;
    position: relative;
  }
}
@media screen and ( max-width:430px) {
  .voice .voice_nav li a {
    font-size: 1rem;
    padding: 19px 0 0 1px;
    line-height: 1.2;
    letter-spacing: 1px;
  }
}
.voice .voice_nav li.active a {
  padding-right: 50px;
}
@media screen and ( max-width:880px) {
  .voice .voice_nav li.active a {
    padding: 21px 0 0 2px;
  }
  .voice .voice_nav li.active:nth-child(3) a,
  .voice .voice_nav li.active:nth-child(4) a,
  .voice .voice_nav li.active:last-child a {
    padding-top: 12px;
  }
}
@media screen and ( max-width:430px) {
  .voice .voice_nav li.active a {
    padding: 19px 0 0 2px;
  }
  .voice .voice_nav li.active:nth-child(3) a,
  .voice .voice_nav li.active:nth-child(4) a,
  .voice .voice_nav li.active:last-child a {
    padding-top: 13px;
  }
}
.voice .voice_nav li:nth-child(1) a,
.voice .voice_nav li:nth-child(2) a {
  letter-spacing: 15px;
}
@media screen and ( max-width:1170px) {
  .voice .voice_nav li:nth-child(1) a,
  .voice .voice_nav li:nth-child(2) a {
    padding-left: 20px;
  }
}
@media screen and ( max-width:880px) {
  .voice .voice_nav li:nth-child(1) a,
  .voice .voice_nav li:nth-child(2) a {
    padding-left: 2px;
    letter-spacing: 2px;
  }
}
@media screen and ( max-width:430px) {
  .voice .voice_nav li:nth-child(1) a,
  .voice .voice_nav li:nth-child(2) a {
    padding-left: 1px;
    letter-spacing: 1px;
  }
}
.voice .voice_nav li:last-child a {
  letter-spacing: 1px;
}
@media screen and ( max-width:880px) {
  .voice .voice_nav li:last-child a {
    letter-spacing: 0;
  }
  .voice .voice_nav li:nth-child(3) a,
  .voice .voice_nav li:nth-child(4) a,
  .voice .voice_nav li:last-child a {
    padding-top: 12px;
  }
  .voice .voice_nav li:nth-child(3) a {
    text-align: left;
    padding-left: 16px;
  }
}
@media screen and ( max-width:430px) {
  .voice .voice_nav li:nth-child(3) a,
  .voice .voice_nav li:nth-child(4) a,
  .voice .voice_nav li:last-child a {
    padding-top: 13px;
  }
  .voice .voice_nav li:nth-child(3) a {
    padding-left: 14px;
  }
}
.voice .voice_nav li a:hover {
  text-decoration: none;
}
.voice .voice_nav li a br {
  display: none;
}
@media screen and ( max-width:880px) {
  .voice .voice_nav li a span {
    margin-left: -2px;
  }
  .voice .voice_nav li a br {
    display: inline;
  }
}
.voice .voice_list {
  width: 710px;
  margin-right: 130px;
  position: relative;
}
@media screen and ( max-width:1220px) {
  .voice .voice_list {
    margin-right: 80px;
  }
}
@media screen and ( max-width:1080px) {
  .voice .voice_list {
    width: 600px;
    margin-right: 50px;
  }
}
@media screen and ( max-width:930px) {
  .voice .voice_list {
    margin-right: 0;
  }
}
@media screen and ( max-width:730px) {
  .voice .voice_list {
    margin: 0 auto;
  }
}
.voice .voice_list::after {
  content: "";
  width: 60px;
  height: calc(100% + 160px);
  position: absolute;
  right: -130px;
  top: 0;
  background: url("../img/interview/bg_text.svg") repeat-y left top;
  background-size: 60px 1266px;
  mix-blend-mode: multiply;
}
@media screen and ( max-width:1220px) {
  .voice .voice_list::after {
    right: -80px;
  }
}
@media screen and ( max-width:1080px) {
  .voice .voice_list::after {
    width: 30px;
    background-size: 30px;
    right: -50px;
  }
}
@media screen and ( max-width:930px) {
  .voice .voice_list::after {
    display: none;
  }
}
.voice_group ul {
  max-width: 710px;
  margin-left: auto;
}
.voice_group li {
  margin-bottom: 75px;
}
@media screen and ( max-width:768px) {
  .voice_group li {
    margin-bottom: 50px;
  }
}
.voice_group:last-child li:last-child {
  margin-bottom: 0;
}
.voice .voice_detail_link {
  display: block;
  position: relative;
  max-width: 710px;
}
@media screen and ( max-width:1080px) {
  .voice .voice_detail_link {
    max-width: 600px;
  }
}
.voice .voice_detail_link:hover {
  text-decoration: none;
}
.voice .voice_detail_link::before,
.voice .voice_detail_link::after {
  content: "";
  position: absolute;
  box-shadow: 5px 5px 15px 0px rgba(99, 111, 128, 0.8);
  border-radius: 20px;
  opacity: 0;
  transition: all 0.3s;
}
.voice .voice_detail_link::before {
  width: calc(100% - 140px);
  height: 150px;
  right: 0;
  top: 0;
}
.voice .voice_detail_link::after {
  width: 100%;
  height: calc(100% - 140px);
  left: 0;
  bottom: 0;
}
.voice .voice_detail_link:hover::before,
.voice .voice_detail_link:hover::after {
  opacity: 1;
}
.voice .voice_inner {
  width: 100%;
  min-height: 280px;
  /*background: linear-gradient(180deg, rgba(84,181,146,1) 0%, rgba(99,202,157,1) 100%);*/
  background: linear-gradient(#64CB9E, #54B692 280px, #52AF8D 560px);
  background-size: 100% 560px;
  mask-image: url("../img/common/path_main.svg"), url("../img/common/path.svg");
  mask-composite: subtract;
  mask-repeat: no-repeat;
  mask-size: 150%, 140px;
  border-radius: 20px;
  position: relative;
  z-index: 1;
  cursor: pointer;
  transition: all 0.5s;
}
@media screen and ( max-width:768px) {
  .voice .voice_inner {
    min-height: 265px;
  }
}
@media screen and ( max-width:580px) {
  .voice .voice_inner {
    mask-size: 300%, 140px;
  }
}
@media screen and ( max-width:480px) {
  .voice .voice_inner {
    min-height: 250px;
  }
}
.voice #construction .voice_inner {
  background: linear-gradient(#0091D7, #027BB7 280px, #036EA2 560px);
  background-size: 100% 560px;
}
.voice #planning .voice_inner {
  background: linear-gradient(#AF53AB, #AE4983 280px, #A23F76 560px);
  background-size: 100% 560px;
}
.voice .voice_detail_link:hover .voice_inner,
.voice #construction .voice_detail_link:hover .voice_inner,
.voice #planning .voice_detail_link:hover .voice_inner {
  background-position: 0 100%;
}
.voice #stocking .voice_inner {
  background: #FF678E;
}
.voice #stocking .voice_detail_link:hover .voice_inner {
  background: #EF5D83;
}
.voice #backoffice .voice_inner {
  background: #FF822F;
}
.voice #backoffice .voice_detail_link:hover .voice_inner {
  background: #F27C2D;
}
.voice .voice_inner::before,
.voice .voice_inner::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
}
.voice .voice_inner::before {
  width: 45px;
  height: 45px;
  border-radius: 23px;
  border: solid #FFF 1px;
  right: 15px;
  top: 15px;
}
.voice .voice_inner::after {
  width: 8px;
  height: 19px;
  background: url("../img/interview/arrow.svg") no-repeat center center;
  background-size: 100%;
  right: 34px;
  top: 30px;
}
.voice .voice_detail_link .business_post {
  width: 100px;
  height: 100px;
  border-radius: 20px;
  border: solid #67CFA0 1px;
  text-align: center;
  color: #67CFA0;
  font-weight: 600;
  letter-spacing: 2px;
  font-size: 1.7rem;
  position: absolute;
  left: 0;
  top: 0;
}
.voice #construction .voice_detail_link .business_post {
  border: solid #0091D7 1px;
  color: #0091D7;
}
.voice #planning .voice_detail_link .business_post {
  letter-spacing: 0;
  border: solid #AF54AF 1px;
  color: #AF54AF;
}
.voice #stocking .voice_detail_link .business_post {
  letter-spacing: 1px;
  border: solid #FF678F 1px;
  color: #FF678F;
}
.voice #backoffice .voice_detail_link .business_post {
  letter-spacing: 1px;
  border: solid #FF8230 1px;
  color: #FF8230;
}
.voice .voice_detail_link .business_post span {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.voice .voice_detail_link .entry {
  display: inline-block;
  margin: 0 0 0 155px;
  padding: 30px 0 6px;
  color: #FFF;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 1px;
  position: relative;
  z-index: 1;
}
@media screen and ( max-width:480px) {
  .voice .voice_detail_link .entry {
    margin: 0 0 0 140px;
    font-size: 1rem;
  }
}
.voice .voice_detail_link .entry::after {
  content: "";
  height: 4px;
  width: 150px;
  background: #FFF;
  position: absolute;
  left: 0;
  bottom: 0;
}
@media screen and ( max-width:480px) {
  .voice .voice_detail_link .entry::after {
    width: 130px;
  }
}
.voice .voice_detail_link .entry p {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  max-width: 360px;
}
@media screen and ( max-width:1080px) {
  .voice .voice_detail_link .entry p {
    max-width: 280px;
  }
}
@media screen and ( max-width:600px) {
  .voice .voice_detail_link .entry p {
    max-width: 250px;
  }
}
@media screen and ( max-width:550px) {
  .voice .voice_detail_link .entry p {
    max-width: 100px;
  }
}
@media screen and ( max-width:480px) {
  .voice .voice_detail_link .entry p {
    max-width: 120px;
  }
}
.voice .voice_detail_link .entry span {
  display: block;
  font-size: 1.8rem;
}
.voice .voice_detail_link .entry span span {
  font-size: 2.8rem;
  display: inline;
}
/*
.voice .voice_detail_link .entry .y_sp {
  display: none;
}
*/
@media screen and ( max-width:480px) {
  /*
  .voice .voice_detail_link .entry .y_pc {
    display: none;
  }
  .voice .voice_detail_link .entry .y_sp {
    display: block;
  }
  */
  .voice .voice_detail_link .entry span {
    display: block;
    font-size: 1.5rem;
  }
  .voice .voice_detail_link .entry span span {
    font-size: 2.4rem;
    display: inline;
  }
}
.voice .voice_detail_link dl {
  color: #FFF;
  margin: 45px 0 0 35px;
  position: relative;
  z-index: 1;
}
@media screen and ( max-width:480px) {
  .voice .voice_detail_link dl {
    margin: 55px 0 0 25px;
  }
}
.voice .voice_detail_link dt {
  font-weight: 600;
  letter-spacing: 2px;
  position: relative;
  padding-left: 15px;
}
.voice .voice_detail_link dt::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-top: 9px solid #FFF;
  border-bottom: 0;
  position: absolute;
  left: 0;
  top: 8px;
}
.voice .voice_detail_link dd {
  font-weight: 500;
  font-size: 2.4rem;
  letter-spacing: 1px;
}
@media screen and ( max-width:480px) {
  .voice .voice_detail_link dd {
    font-size: 1.6rem;
  }
}
.voice .voice_detail_link .voice_img {
  max-width: 230px;
  max-height: 260px;
  position: absolute;
  right: 60px;
  bottom: 0;
}
.voice .voice_detail_link .voice_img img {
  max-height: 260px;
}
@media screen and ( max-width:1080px) {
  .voice .voice_detail_link .voice_img {
    right: 20px;
  }
}
@media screen and ( max-width:640px) {
  .voice .voice_detail_link .voice_img {
    max-width: calc(100% - 360px);
    right: 15px;
    overflow-x: hidden;
    text-align: left;
  }
  .voice .voice_detail_link .voice_img img {
    max-width: 230px;
    max-height: 230px;
    /*width: 230px;*/
  }
}
@media screen and ( max-width:580px) {
  .voice .voice_detail_link .voice_img {
    max-width: 180px;
    right: 0;
  }
}
@media screen and ( max-width:480px) {
  .voice .voice_detail_link .voice_img {
    max-width: 155px;
  }
  .voice .voice_detail_link .voice_img img {
    max-width: 210px;
    /*width: 210px;*/
  }
}
@media screen and ( max-width:480px) {
  .voice .voice_detail_link .voice_img {
    max-width: 110px;
    right: 0;
  }
  .voice .voice_detail_link .voice_img img {
    max-height: 185px;
    /*
    margin-right: 10px;
    max-width: 185px;
    width: 185px;
    */
  }
}


/* voice detail
**********************************************************/

/*
.voice_detail .content {
  padding: 0 20px;
}
*/
.voice_detail #contents {
  background: #DFE5EC;
}
.voice_detail .main_visual {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  background: linear-gradient(#64CB9E, #54B692 450px);
  position: relative;
  margin-bottom: 60px;
}
@media screen and ( max-width:550px) {
  .voice_detail .main_visual {
    margin-bottom: 30px;
  }
}
.voice_detail .main_visual.construction {
  background: linear-gradient(#0091D7, #027BB7 450px);
}
.voice_detail .main_visual.planning {
  background: linear-gradient(#AF53AB, #AE4983 450px);
}
.voice_detail .main_visual.stocking {
  background: #FF678E;
}
.voice_detail .main_visual.backoffice {
  background: #FF822F;
}
.voice_detail .main_visual::before,
.voice_detail .main_visual::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -2px;
  background: #DFE5EC;
  width: calc(50% - 210px);
  height: 30px;
}
.voice_detail .main_visual::before {
  left: 0;
}
.voice_detail .main_visual::after {
  right: 0;
}
.voice_detail .main_visual_inner {
  display: flex;
  justify-content: center;
  align-items:flex-end;
  position: relative;
  height: 450px;
  padding-bottom: 28px;
  margin: 0 70px;
}
@media screen and ( max-width:820px) {
  .voice_detail .main_visual_inner {
    justify-content: space-between;
    margin: 0 40px;
  }
}
@media screen and ( max-width:730px) {
  .voice_detail .main_visual_inner {
    height: 390px;
  }
}
@media screen and ( max-width:700px) {
  .voice_detail .main_visual_inner {
    height: auto;
    flex-wrap: wrap;
    justify-content: center;
    padding-bottom: 0;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .main_visual_inner {
    margin: 0 20px;
  }
}
.voice_detail .main_visual_inner::before {
  content: "";
  display: block;
  width: 423px;
  height: 30px;
  position: absolute;
  left: calc(50% - 210px);
  bottom: -2px;
  background: url("../img/interview/frame.svg") no-repeat center bottom;
  background-size: 423px 30px;
}
.voice_detail .main_visual_inner .title {
  color: #FFF;
  height: 375px;
  width: 600px;
}
@media screen and ( max-width:970px) {
  .voice_detail .main_visual_inner .title {
    height: 360px;
  }
}
@media screen and ( max-width:768px) {
  .voice_detail .main_visual_inner .title {
    height: 340px;
  }
}
@media screen and ( max-width:730px) {
  .voice_detail .main_visual_inner .title {
    height: 310px;
  }
}
@media screen and ( max-width:700px) {
  .voice_detail .main_visual_inner .title {
    width: fit-content;
    height: auto;
    padding: 40px 0;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .main_visual_inner .title {
    padding: 30px 0 25px;
  }
}
.voice_detail .main_visual_inner .title h2 {
  font-weight: 700;
  font-size: 3rem;
  letter-spacing: 6px;
  padding-bottom: 15px;
}
@media screen and ( max-width:700px) {
  .voice_detail .main_visual_inner .title h2 {
    width: fit-content;
  }
}
.voice_detail .main_visual_inner .title h2 span {
  display: block;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 1px;
}
.voice_detail .main_visual_inner .title dl {
  display: flex;
  flex-wrap: wrap;
}
@media screen and ( max-width:700px) {
  .voice_detail .main_visual_inner .title dl {
    display: grid;
    width: fit-content;
  }
}
.voice_detail .main_visual_inner .title dt,
.voice_detail .main_visual_inner .title dd {
  width: 100%;
}
@media screen and ( max-width:640px) {
  .voice_detail .main_visual_inner .title dt,
  .voice_detail .main_visual_inner .title dd {
    width: fit-content;
  }
}
.voice_detail .main_visual_inner .title dt {
  font-size: 1.9rem;
  font-weight: 500;
  letter-spacing: 2px;
  order: 2;
}
@media screen and ( max-width:970px) {
  .voice_detail .main_visual_inner .title dt {
    font-size: 1.6rem;
  }
}
@media screen and ( max-width:768px) {
  .voice_detail .main_visual_inner .title dt {
    font-size: 1.4rem;
  }
}
@media screen and ( max-width:700px) {
  .voice_detail .main_visual_inner .title dt {
    font-size: 1.9rem;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .main_visual_inner .title dt {
    font-size: 1.4rem;
  }
}
.voice_detail .main_visual_inner .title dt .br_sp,
.voice_detail .main_visual_inner .title dd .br_sp {
  display: none;
}
@media screen and ( max-width:700px) {
  .voice_detail .main_visual_inner .title dt .br_sp,
  .voice_detail .main_visual_inner .title dd .br_sp {
    display: inline;
  }
  .voice_detail .main_visual_inner .title dd .br_pc {
    display: none;
  }
}
.voice_detail .main_visual_inner .title dt > span {
  display: block;
}
.voice_detail .main_visual_inner .title dt span {
  font-size: 1.7rem;
}
@media screen and ( max-width:970px) {
  .voice_detail .main_visual_inner .title dt span {
    font-size: 1.5rem;
  }
}
@media screen and ( max-width:768px) {
  .voice_detail .main_visual_inner .title dt span {
    font-size: 1.4rem;
  }
}
@media screen and ( max-width:700px) {
  .voice_detail .main_visual_inner .title dt span {
    font-size: 1.7rem;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .main_visual_inner .title dt span {
    font-size: 1.4rem;
  }
}
.voice_detail .main_visual_inner .title dt span span {
  font-size: 2.9rem;
}
@media screen and ( max-width:970px) {
  .voice_detail .main_visual_inner .title dt span span {
    font-size: 2.4rem;
  }
}
@media screen and ( max-width:768px) {
  .voice_detail .main_visual_inner .title dt span span {
    font-size: 2rem;
  }
}
@media screen and ( max-width:700px) {
  .voice_detail .main_visual_inner .title dt span span {
    font-size: 2.9rem;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .main_visual_inner .title dt span span {
    font-size: 2rem;
  }
}
.voice_detail .main_visual_inner .title dd {
  font-size: 2.9rem;
  line-height: 1.8;
  letter-spacing: 3px;
  padding-bottom: 10px;
}
@media screen and ( max-width:970px) {
  .voice_detail .main_visual_inner .title dd {
    font-size: 2.3rem;
  }
}
@media screen and ( max-width:768px) {
  .voice_detail .main_visual_inner .title dd {
    font-size: 2rem;
  }
}
@media screen and ( max-width:700px) {
  .voice_detail .main_visual_inner .title dd {
    font-size: 2.9rem;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .main_visual_inner .title dd {
    font-size: 1.6rem;
  }
}
.voice_detail .main_visual_inner .voice_img {
  max-width: 380px;
}
@media screen and ( max-width:820px) {
  .voice_detail .main_visual_inner .voice_img {
    max-width: calc(360 / 800 * 100%);
  }
}
@media screen and ( max-width:700px) {
  .voice_detail .main_visual_inner .voice_img {
    max-width: 280px;
    margin-left: 30px;
  }
}
.voice_detail .main_visual_inner .voice_img img {
  max-height: 410px;
}
.voice_detail .voice_qa {
  max-width: 1140px;
  margin: 0 auto;
  position: relative;
  padding: 0 70px;
}
@media screen and ( max-width:860px) {
  .voice_detail .voice_qa {
    max-width: 760px;
    padding: 0 20px;
  }
}
.voice_detail .voice_qa .text {
  padding-bottom: 90px;
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa .text {
    padding-bottom: 60px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .voice_qa .text {
    padding-bottom: 40px;
  }
}
.voice_detail .voice_qa .pb250 {
  padding-bottom: 250px;
}
@media screen and ( max-width:860px) {
  .voice_detail .voice_qa .pb250 {
    padding-bottom: 90px;
  }
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa .pb250 {
    padding-bottom: 60px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .voice_qa .pb250 {
    padding-bottom: 40px;
  }
}
.voice_detail .voice_qa.text_left .text,
.voice_detail .voice_qa.text_right .text {
  max-width: 460px;
  position: relative;
  z-index: 1;
}
@media screen and ( max-width:860px) {
  .voice_detail .voice_qa.text_left .text,
  .voice_detail .voice_qa.text_right .text {
    max-width: 100%;
  }
}
.voice_detail .voice_qa.text_right .text {
  margin-left: auto;
}
.voice_detail .voice_qa h3 {
  position: relative;
  margin-bottom: 25px;
}
.voice_detail .voice_qa h3 span,
.voice_detail .message h3 {
  color: #6E829A;
  font-size: 3rem;
  font-weight: 500;
  position: relative;
  z-index: 1;
}
@media screen and ( max-width:900px) {
  .voice_detail .voice_qa h3 span,
  .voice_detail .message h3 {
    font-size: 2.6rem;
  }
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa h3 span,
  .voice_detail .message h3 {
    font-size: 2rem;
  }
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa h3 span {
    font-size: 1.8rem;
  }
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa h3 span {
    font-size: 1.4rem;
  }
}
.voice_detail .voice_qa.text_center h3 {
  text-align: center;
}
.voice_detail .voice_qa.text_right h3 {
  text-align: right;
}
@media screen and ( max-width:860px) {
  .voice_detail .voice_qa.text_left h3,
  .voice_detail .voice_qa.text_right h3 {
    text-align: center;
  }
  .voice_detail .voice_qa.text_left h3 br,
  .voice_detail .voice_qa.text_right h3 br {
    display: none;
  }
  .voice_detail .message h3 br {
    display: inline!important;
  }
}
.voice_detail .voice_qa h3 img {
  position: absolute;
  /*mix-blend-mode: screen;*/
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa h3 img {
    height: 60px;
  }
}
.voice_detail .voice_qa.text_center h3 img {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.voice_detail .voice_qa.text_left h3 img {
  top: -35px;
  left: -50px;
}
.voice_detail .voice_qa.text_right h3 img {
  top: -35px;
  right: -50px;
}
@media screen and ( max-width:860px) {
  .voice_detail .voice_qa.text_left h3 img,
  .voice_detail .voice_qa.text_right h3 img {
    right: inherit;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
.voice_detail .voice_qa p {
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 2;
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa p {
    font-size: 1.4rem;
    width: 101%;
  }
}
.voice_detail .voice_qa .img {
  width: 100%;
  max-width: 1000px;
  border-radius: 20px;
  overflow: hidden;
  
}
.voice_detail .voice_qa .veil_left,
.voice_detail .voice_qa .veil_right,
.voice_detail .message .veil_left,
.voice_detail .message .veil_right {
  position: relative;
}
.voice_detail .voice_qa .veil_left::before,
.voice_detail .voice_qa .veil_right::before,
.voice_detail .message .veil_left::before,
.voice_detail .message .veil_right::before {
  content: "";
  display: block;
  width: 70%;
  height: 100%;
  position: absolute;
  top: 0;
}
@media screen and ( max-width:860px) {
  .voice_detail .voice_qa .veil_left::before,
  .voice_detail .voice_qa .veil_right::before,
  .voice_detail .message .veil_left::before,
  .voice_detail .message .veil_right::before {
    display: none;
  }
}
.voice_detail .voice_qa .veil_left::before {
  left: 0;
  background: linear-gradient(90deg, rgba(223,229,236,1) 0%, rgba(223,229,236,0.8) 30%, rgba(223,229,236,0)100%);
}
.voice_detail .voice_qa .veil_right::before {
  right: 0;
  background: linear-gradient(90deg, rgba(223,229,236,0) 0%, rgba(223,229,236,0.8) 70%, rgba(223,229,236,1)100%);
}
.voice_detail .voice_qa .veil_left.center::before {
  width: 85%;
  background: linear-gradient(90deg, rgba(223,229,236,1) 0%, rgba(223,229,236,0.8) 30%, rgba(223,229,236,0)100%);
}
.voice_detail .voice_qa .veil_right.center::before {
  width: 85%;
  background: linear-gradient(90deg, rgba(223,229,236,0) 0%, rgba(223,229,236,0.8) 70%, rgba(223,229,236,1)100%);
}
.voice_detail .message .veil_left::before {
  width: 80%;
  background: linear-gradient(90deg, rgba(223,229,236,1) 0%, rgba(223,229,236,0.8) 30%, rgba(223,229,236,0)100%);
}
.voice_detail .message .veil_right::before {
  width: 80%;
  background: linear-gradient(90deg, rgba(223,229,236,0) 0%, rgba(223,229,236,0.8) 70%, rgba(223,229,236,1)100%);
}
.voice_detail .voice_qa .img.center {
  margin-bottom: 90px;
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa .img.center {
    margin-bottom: 70px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .voice_qa .img.center {
    margin-bottom: 40px;
  }
}
.voice_detail .voice_qa .img.position {
  position: absolute;
}
.voice_detail .voice_qa .img.left,
.voice_detail .voice_qa .img.right {
  width: 100%;
  max-width: calc(800 / 1140 * 100%);
}
@media screen and ( max-width:860px) {
  .voice_detail .voice_qa .img.left,
  .voice_detail .voice_qa .img.right {
    position: static;
    max-width: 100%;
    margin-bottom: 90px;
  }
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa .img.left,
  .voice_detail .voice_qa .img.right {
    margin-bottom: 70px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .voice_qa .img.left,
  .voice_detail .voice_qa .img.right {
    margin-bottom: 40px;
  }
}
.voice_detail .voice_qa .img.left {
  right: 405px;
}
.voice_detail .voice_qa .img.right {
  left: 405px;
}
.voice_detail .voice_qa .img.center.position {
  /*
  left: 50%;
  transform: translateX(-50%);
  */
  left: 60px;
  /*right: auto;*/
  margin-bottom: 0;
  max-width: calc(100% - 120px);
}
@media screen and ( max-width:860px) {
  .voice_detail .voice_qa .img.center.position {
    max-width: calc(100% - 140px);
    position: static;
    margin-bottom: 90px;
    max-width: 100%;
  }
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa .img.center.position {
    margin-bottom: 70px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .voice_qa .img.center.position {
    margin-bottom: 40px;
  }
}
.voice_detail .voice_qa .img.top {
  top: 0;
}
.voice_detail .voice_qa .img.middle {
  top: 50%;
  transform: translateY(-50%);
}
.voice_detail .voice_qa .img.bottom {
  bottom: 110px;
}
.voice_detail .voice_qa .img.bottom70 {
  bottom: 70px;
}
.voice_detail .voice_qa .img img {
  vertical-align: bottom;
}
.voice_detail .voice_qa .time_schedule {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 2;
  width: 500px;
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa .time_schedule {
    font-size: 1.4rem;
    width: 100%;
  }
}
.voice_detail .voice_qa .time_schedule dt {
  width: 120px;
  text-align: right;
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa .time_schedule dt {
    width: 100px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .voice_qa .time_schedule dt {
    width: 95px;
  }
}
.voice_detail .voice_qa .time_schedule dd {
  width: calc(100% - 120px);
}
@media screen and ( max-width:678px) {
  .voice_detail .voice_qa .time_schedule dd {
    width: calc(100% - 100px);
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .voice_qa .time_schedule dd {
    width: calc(100% - 95px);
  }
}
.voice_detail .message {
  position: relative;
  margin-top: 130px;
}
@media screen and ( max-width:860px) {
  .voice_detail .message {
    margin-top: 100px;
  }
}
.voice_detail .message .img {
  overflow: visible;
  position: relative;
}
.voice_detail .message .img .welcome {
  mix-blend-mode: screen;
  position: absolute;
  right: -100px;
  bottom: -65px;
}
@media screen and ( max-width:1200px) {
  .voice_detail .message .img .welcome {
    right: -70px;
  }
}
@media screen and ( max-width:860px) {
  .voice_detail .message .img .welcome {
    bottom: inherit;
    top: 50%;
    transform: translateY(-50%);
    width: 60%;
  }
  .voice_detail .message.text_left .img .welcome {
    left: -20px;
  }
  .voice_detail .message.text_right .img .welcome {
    right: -20px;
  }
}
.voice_detail .message .img .bg_img {
  border-radius: 20px;
}
.voice_detail .message h3 {
  margin: 0;
  text-align: center;
  position: absolute;
  top: -110px;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and ( max-width:900px) {
  .voice_detail .message h3 {
    top: -100px;
  }
}
@media screen and ( max-width:678px) {
  .voice_detail .message h3 {
    top: -80px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .message h3 {
    width: 320px;
  }
}
.voice_detail .message h3::before,
.voice_detail .message h3::after {
  content: "";
  display: block;
  width: 2px;
  height: 80px;
  background: #94A7BE;
  position: absolute;
  top: 10px;
}
@media screen and ( max-width:678px) {
  .voice_detail .message h3::before,
  .voice_detail .message h3::after {
    height: 60px;
    top: 5px;
  }
}
.voice_detail .message h3::before {
  transform: rotate(-20deg);
  left: -35px;
}
@media screen and ( max-width:678px) {
  .voice_detail .message h3::before {
    left: -25px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .message h3::before {
    left: 5px;
  }
}
.voice_detail .message h3::after {
  transform: rotate(20deg);
  right: -35px;
}
@media screen and ( max-width:678px) {
  .voice_detail .message h3::after {
    right: -25px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .message h3::after {
    right: 5px;
  }
}
.voice_detail .message p {
  display: block;
  width: 100%;
  max-width: 410px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and ( max-width:1080px) {
  .voice_detail .message p {
    max-width: calc(50% - 140px);
  }
}
@media screen and ( max-width:900px) {
  .voice_detail .message p {
    max-width: 42%;
  }
}
.voice_detail .message.text_left p {
  left: 70px;
}
.voice_detail .message.text_right p {
  right: 70px;
}
@media screen and ( max-width:1140px) {
  .voice_detail .message.text_left p {
    left: 120px;
  }
  .voice_detail .message.text_right p {
    right: 120px;
  }
}
@media screen and ( max-width:860px) {
  .voice_detail .message.text_left p,
  .voice_detail .message.text_right p {
    position: static;
    transform: none;
    left: inherit;
    right: inherit;
    top: inherit;
    max-width: 100%;
    margin-top: 25px;
  }
}
.voice_detail .article_nav {
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  display: flex;
  margin-top: 300px;
  justify-content: space-between;
  padding: 0 70px;
}
@media screen and ( max-width:1000px) {
  .voice_detail .article_nav {
    margin-top: 150px;
  }
}
@media screen and ( max-width:860px) {
  .voice_detail .article_nav {
    max-width: 760px;
    padding: 0 20px;
  }
}
@media screen and ( max-width:860px) {
  .voice_detail .article_nav {
    margin-top: 200px;
  }
}
.voice_detail .article_nav a {
  display: block;
  width: 100%;
  max-width: 420px;
}
@media screen and ( max-width:1000px) {
  .voice_detail .article_nav a {
    max-width: 370px;
  }
}
@media screen and ( max-width:900px) {
  .voice_detail .article_nav .prev {
    margin-right: 20px;
  }
  .voice_detail .article_nav .next {
    margin-left: 20px;
  }
  .voice_detail .article_nav a {
    max-width: 340px;
  }
}
@media screen and ( max-width:860px) {
  .voice_detail .article_nav .prev {
    margin-right: 10px;
  }
  .voice_detail .article_nav .next {
    margin-left: 10px;
  }
}
@media screen and ( max-width:768px) {
  .voice_detail .article_nav a {
    max-width: 50%;
  }
}
@media screen and ( max-width:650px) {
  .voice_detail .article_nav a {
    max-width: 230px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .article_nav a {
    max-width: calc(50% - 10px);
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .article_nav a {
    position: relative;
    padding-bottom: 35px;
  }
}
.voice_detail .article_nav a:hover {
  text-decoration: none;
}
.voice_detail .article_nav .nav_text {
  color: #030303;
  font-weight: 600;
  letter-spacing: 2px;
  padding-bottom: 13px;
}
@media screen and ( max-width:550px) {
  .voice_detail .article_nav .nav_text {
    padding-bottom: 0;
    position: absolute;
    bottom: 0;
  }
  .voice_detail .article_nav .prev .nav_text {
    left: 0;
  }
  .voice_detail .article_nav .next .nav_text {
    right: 0;
  }
}
.voice_detail .article_nav .next .nav_text {
  text-align: right;
}
.voice_detail .article_nav .nav_inner {
  background: linear-gradient(#64CB9E, #54B692 150px, #52AF8D 300px);
  background-size: 100% 300px;
  border-radius: 10px;
  display: flex;
  color: #FFF;
  height: 150px;
  align-items: flex-end;
  box-shadow: 5px 5px 15px 0px rgba(99, 111, 128, 0.6);
  transition: all 0.3s;
}
@media screen and ( max-width:650px) {
  .voice_detail .article_nav .nav_inner {
    display: block;
    padding: 20px;
    position: relative;
    height: auto;
    max-width: 230px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .article_nav .nav_inner {
    padding: 15px;
  }
}
.voice_detail .article_nav .construction .nav_inner {
  background: linear-gradient(#0091D7, #027BB7 150px, #036EA2 300px);
  background-size: 100% 300px;
}
.voice_detail .article_nav .planning .nav_inner {
  background: linear-gradient(#AF53AB, #AE4983 150px, #A23F76 300px);
  background-size: 100% 300px;
}
.voice_detail .article_nav a:hover .nav_inner,
.voice_detail .article_nav .construction:hover .nav_inner,
.voice_detail .article_nav .planning:hover .nav_inner {
  background-position: 0 100%;
}
.voice_detail .article_nav .stocking .nav_inner {
  background: #FF678E;
}
.voice_detail .article_nav .stocking:hover .nav_inner {
  background: #EF5D83;
}
.voice_detail .article_nav .backoffice .nav_inner {
  background: #FF822F;
}
.voice_detail .article_nav .backoffice:hover .nav_inner {
  background: #F27C2D;
}
.voice_detail .article_nav a:hover .nav_inner {
  box-shadow: none;
}
.voice_detail .article_nav .nav_img {
  width: 165px;
  text-align: center;
}
@media screen and ( max-width:1000px) {
  .voice_detail .article_nav .nav_img {
    width: 130px;
  }
}
@media screen and ( max-width:860px) {
  .voice_detail .article_nav .nav_img {
    width: 115px;
    border-bottom-left-radius: 10px;
    overflow: hidden;
  }
}
@media screen and ( max-width:860px) {
  .voice_detail .article_nav .nav_img {
    width: 100px;
    height: 150px;
    overflow: hidden;
    position: relative;
  }
}
@media screen and ( max-width:650px) {
  .voice_detail .article_nav .nav_img {
    position: absolute;
    height: 100px;
    width: auto;
    overflow: visible;
  }
  .voice_detail .article_nav .prev .nav_img {
    right: 10px;
    top: -100px;
  }
  .voice_detail .article_nav .next .nav_img {
    left: 10px;
    top: -100px;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .article_nav .nav_img {
    height: 120px;
    width: 100%;
    text-align: center;
  }
  .voice_detail .article_nav .prev .nav_img {
    right: 0;
    top: -120px;
  }
  .voice_detail .article_nav .next .nav_img {
    left: 0;
    top: -120px;
  }
}
.voice_detail .article_nav .nav_img img {
  max-width: 132px;
  max-height: 140px;
}
@media screen and ( max-width:860px) {
  .voice_detail .article_nav .nav_img img {
    /*width: 115px;*/
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
@media screen and ( max-width:650px) {
  .voice_detail .article_nav .nav_img img {
    width: auto;
    height: 100px;
    position: inherit;
    right: inherit;
    bottom: inherit;
  }
}
@media screen and ( max-width:550px) {
  .voice_detail .article_nav .nav_img img {
    height: 120px;
    left: 50%;
    transform: translateX(-50%);
  }
}
.voice_detail .article_nav dl {
  width: calc(100% - 190px);
  font-weight: 500;
  padding-bottom: 19px;
  letter-spacing: 1px;
}
@media screen and ( max-width:1000px) {
  .voice_detail .article_nav dl {
    font-size: 1.4rem;
    width: calc(100% - 160px);
  }
}
@media screen and ( max-width:900px) {
  .voice_detail .article_nav dl {
    font-size: 1.2rem;
    padding-bottom: 25px;
  }
}
@media screen and ( max-width:860px) {
  .voice_detail .article_nav dl {
    width: calc(100% - 135px);
  }
}
@media screen and ( max-width:700px) {
  .voice_detail .article_nav dl {
    width: calc(100% - 115px);
  }
}
@media screen and ( max-width:650px) {
  .voice_detail .article_nav dl {
    width: 100%;
    padding-bottom: 0;
  }
}
.voice_detail .article_nav dt {
  border-bottom: solid #fff 1px;
  padding-bottom: 5px;
  margin-bottom: 5px;
}
@media screen and ( max-width:1000px) {
  .voice_detail .article_nav dt {
    padding-bottom: 10px;
    margin-bottom: 10px;
  }
}
.voice_detail .article_nav dt p {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media screen and ( max-width:550px) {
  .voice_detail .article_nav dd br {
    display: none;
  }
}


/* subpage common
**********************************************************/

.sub_page .main_visual {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  background: url("../img/about/main_visual.jpg") no-repeat center center;
  background-size: cover;
  position: relative;
  height: 450px;
  margin-bottom: 60px;
}
@media screen and ( max-width:730px) {
  .sub_page .main_visual {
    height: 390px;
  }
}
@media screen and ( max-width:550px) {
  .sub_page .main_visual {
    margin-bottom: 30px;
  }
}
.sub_page .main_visual.no_bg {
  background: none;
  height: auto;
  width: 100%;
  margin: 0;
  padding: 60px 0;
}
@media screen and ( max-width:550px) {
  .sub_page .main_visual.no_bg {
    padding: 40px 0;
  }
}
.sub_page .main_visual_inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  width: 100%;
}
.sub_page .main_visual.no_bg .main_visual_inner {
  position: inherit;
  top: inherit;
  left: inherit;
  transform: none;
}
.sub_page .main_visual_inner .title {
  color: #FFF;
}
.sub_page .main_visual.no_bg .main_visual_inner .title {
  color: #004C88;
}
.sub_page .main_visual_inner .title h2 {
  font-weight: 700;
  font-size: 4.5rem;
  letter-spacing: 6px;
  padding-bottom: 25px;
  line-height: 1.4;
}
@media screen and ( max-width:550px) {
  .sub_page .main_visual_inner .title h2 {
    font-size: 3rem;
  }
}
.sub_page .main_visual.no_bg .main_visual_inner .title h2 {
  padding-bottom: 0;
}
.sub_page .main_visual_inner .title h2 span {
  display: block;
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 1px;
}
@media screen and ( max-width:550px) {
  .sub_page .main_visual_inner .title h2 span {
    font-size: 1.8rem;
  }
}
.sub_page .main_visual_inner .title p {
  font-weight: 500;
  font-size: 2.3rem;
  line-height: 2;
}
@media screen and ( max-width:550px) {
  .sub_page .main_visual_inner .title p {
    font-size: 1.6rem;
  }
}
.sub_page .main_visual_inner .title .br_sp {
  display: none;
}
@media screen and ( max-width:680px) {
  .sub_page .main_visual_inner .title .br_sp {
    display: inline;
  }
}
.sub_page #contents section {
  max-width: 1000px;
  margin: 0 auto 100px;
}
@media screen and ( max-width:1080px) {
  .sub_page #contents section {
    margin: 0 40px 100px;
  }
}
@media screen and ( max-width:860px) {
  .sub_page #contents section {
    margin: 0 20px 100px;
  }
}
@media screen and ( max-width:550px) {
  .sub_page #contents section {
    margin: 0 20px 60px;
  }
}
.sub_page #contents section h3 {
  color: #6E829A;
  font-weight: 600;
  font-size: 2.2rem;
  letter-spacing: 4px;
  margin-bottom: 45px;
  text-align: center;
  position: relative;
}
@media screen and ( max-width:550px) {
  .sub_page #contents section h3 {
    font-size: 2rem;
  }
}
/*
@media screen and ( max-width:530px) {
  .sub_page #contents section h3 {
    margin-bottom: 15px;
  }
}
*/
.sub_page #contents section h3 span {
  font-weight: 500;
  letter-spacing: 2px;
  font-size: 2.1rem;
  display: block;
}
@media screen and ( max-width:550px) {
  .sub_page #contents section h3 span {
    font-size: 1.6rem;
  }
}

/* about
**********************************************************/

.about .main_visual {
  background: url("../img/about/main_visual.jpg") no-repeat center center;
  background-size: cover;
}
@media screen and ( max-width:1080px) {
  .about .main_visual {
    background: url("../img/about/main_visual02.jpg") no-repeat center center;
    background-size: cover;
  }
}
@media screen and ( max-width:520px) {
  .about .main_visual {
    background: url("../img/about/main_visual_sp.jpg") no-repeat center center;
    background-size: cover;
  }
}
.about #contents #sustainability {
  margin-bottom: 0;
}
.about #top_message h4 {
  color: #004C88;
  font-weight: 500;
  font-size: 2.2rem;
  text-align: center;
  letter-spacing: 2px;
  line-height: 2;
  margin-bottom: 75px;
}
@media screen and ( max-width:600px) {
  .about #top_message h4 {
    line-height: 1.6;
  }
}
@media screen and ( max-width:550px) {
  .about #top_message h4 {
    font-size: 1.6rem;
    margin-bottom: 50px;
  }
}
.about #top_message h4 .br_sp {
  display: none;
}
@media screen and ( max-width:600px) {
  .about #top_message h4 .br_sp {
    display: inline;
  }
}
.about #top_message h4 span {
  font-size: 2.8rem;
  display: block;
  letter-spacing: 1px;
}
@media screen and ( max-width:600px) {
  .about #top_message h4 span {
    padding-top: 15px;
  }
}
@media screen and ( max-width:550px) {
  .about #top_message h4 span {
    font-size: 2.1rem;
  }
}
.about #top_message .top_message_detail {
  display: flex;
  margin-bottom: 130px;
}
@media screen and ( max-width:1000px) {
  .about #top_message .top_message_detail {
    margin-bottom: 80px;
  }
}
@media screen and ( max-width:960px) {
  .about #top_message .top_message_detail {
    margin-bottom: 30px;
  }
}
@media screen and ( max-width:860px) {
  .about #top_message .top_message_detail {
    flex-wrap: wrap;
  }
}
@media screen and ( max-width:550px) {
  .about #top_message .top_message_detail {
    margin-bottom: 30px;
  }
}
.about #top_message .top_message_detail:last-child {
  margin-bottom: 0;
}
.about #top_message .top_message_detail:nth-child(odd) {
  flex-direction: row-reverse;
}
@media screen and ( max-width:860px) {
  .about #top_message .top_message_detail:nth-child(odd) {
    flex-direction: row;
  }
}
.about #top_message .top_message_detail:nth-child(even) {
  position: relative;
  z-index: 1;
}
.about #top_message .top_message_detail p {
  width: 450px;
  position: relative;
  z-index: 1;
  font-weight: 500;
  font-size: 1.7rem;
  line-height: 2.1;
  letter-spacing: 1px;
}
@media screen and ( max-width:860px) {
  .about #top_message .top_message_detail p {
    width: 100%;
  }
}
@media screen and ( max-width:550px) {
  .about #top_message .top_message_detail p {
    font-size: 1.5rem;
    line-height: 2;
  }
}
.about #top_message .top_message_detail .top_message_img {
  width: calc(100% - 450px);
  padding-right: 40px;
}
@media screen and ( max-width:860px) {
  .about #top_message .top_message_detail .top_message_img {
    width: 100%;
    margin-bottom: 30px;
    padding-right: 0;
  }
}
.about #top_message .top_message_detail:nth-child(odd) .top_message_img {
  position: relative;
  padding-right: 0;
}
.about #top_message .top_message_detail:nth-child(odd) .top_message_img img {
  position: absolute;
  left: 50%;
  top: -30px;
  transform: translateX(-50%);
  max-width: 780px;
  width: 150%;
}
.about #top_message .top_message_detail .top_message_img .img_sp {
  display: none;
}
@media screen and ( max-width:1080px) {
  .about #top_message .top_message_detail:nth-child(odd) .top_message_img img {
    left: 30%;
  }
}
@media screen and ( max-width:960px) {
  .about #top_message .top_message_detail:nth-child(odd) .top_message_img img {
    top: inherit;
    bottom: 0;
  }
}
@media screen and ( max-width:860px) {
  .about #top_message .top_message_detail .top_message_img .img_pc {
    display: none;
  }
  .about #top_message .top_message_detail .top_message_img .img_sp {
    display: inline;
  }
  .about #top_message .top_message_detail:nth-child(odd) .top_message_img img {
    position: relative;
    bottom: inherit;
    left: inherit;
    transform: none;
    max-width: 100%;
  }
}
.about #corporate_philosophy .corporate_philosophy_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.about #corporate_philosophy .cp_text {
  width: calc(450 / 1000 * 100%);
  margin-bottom: 30px;
}
@media screen and ( max-width:1080px) {
  .about #corporate_philosophy .cp_text {
    width: calc(50% - 20px);
  }
}
@media screen and ( max-width:860px) {
  .about #corporate_philosophy .cp_text {
    width: calc(50% - 10px);
  }
}
@media screen and ( max-width:700px) {
  .about #corporate_philosophy .cp_text {
    width: 100%;
  }
}
.about #corporate_philosophy .cp_text:nth-child(2) {
  order: 3;
}
@media screen and ( max-width:700px) {
  .about #corporate_philosophy .cp_text:nth-child(2) {
    order: 2;
  }
}
.about #corporate_philosophy .cp_text:nth-child(3) {
  order: 2;
}
@media screen and ( max-width:700px) {
  .about #corporate_philosophy .cp_text:nth-child(3) {
    order: 3;
  }
}
.about #corporate_philosophy .cp_text:nth-child(4) {
  order: 4;
}
@media screen and ( max-width:700px) {
  .about #corporate_philosophy .cp_text:nth-child(4) {
    margin-bottom: 0;
  }
}
.about #corporate_philosophy .cp_text h4 {
  position: relative;
  background-image: linear-gradient(to right, #FCF7EF, #F7EEF6, #EEF9FC, #EEF9FC);
	background-repeat: no-repeat;
	background-size: 100% 10px;
	background-position: bottom;
  color: #94A7BE;
  font-weight: 500;
  font-size: 1.8rem;
  letter-spacing: 1px;
  line-height: 1.4;
  margin-bottom: 35px;
}
@media screen and ( max-width:550px) {
  .about #corporate_philosophy .cp_text h4 {
    margin-bottom: 25px;
  }
}
.about #corporate_philosophy .cp_text h5 {
  color: #004C88;
  font-weight: 600;
  font-size: 2.1rem;
  margin-bottom: 10px;
}
.about #corporate_philosophy .cp_text p {
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 2;
}
@media screen and ( max-width:550px) {
  .about #corporate_philosophy .cp_text p {
    font-size: 1.6rem;
  }
}
.about #corporate_philosophy .cp_text:nth-child(4) p:nth-child(3) {
  margin-bottom: 30px;
}
@media screen and ( max-width:550px) {
  .about #corporate_philosophy .cp_text:nth-child(4) p:nth-child(3) {
    margin-bottom: 25px;
  }
}
.about #corporate_profile .corporate_profile_table {
  background-image: linear-gradient(to right, #FCF7EF, #F7EEF6, #EEF9FC, #EEF9FC);
	background-repeat: no-repeat;
	background-size: 100% 10px;
	background-position: top;
  display: flex;
  justify-content: space-between;
  padding-top: 40px;
}
@media screen and ( max-width:860px) {
  .about #corporate_profile .corporate_profile_table {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.about #corporate_profile .corporate_profile_table .row {
  width: 50%;
  max-width: 470px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-weight: 500;
  font-size: 1.7rem;
}
@media screen and ( max-width:1080px) {
  .about #corporate_profile .corporate_profile_table .row {
    width: calc(50% - 20px);
  }
}
@media screen and ( max-width:860px) {
  .about #corporate_profile .corporate_profile_table .row {
    width: 100%;
  }
}
.about #corporate_profile .corporate_profile_table .row dt {
  width: 110px;
  text-align:justify;
  text-align-last:justify;
  color: #004C88;
  margin-bottom: 10px;
}
@media screen and ( max-width:550px) {
  .about #corporate_profile .corporate_profile_table .row dt {
    width: 100%;
    text-align:left;
    text-align-last:left;
  }
}
.about #corporate_profile .corporate_profile_table .row dd {
  width: calc(100% - 140px);
  letter-spacing: 2px;
  margin-bottom: 10px;
  font-family: 'Noto Sans JP', sans-serif;
}
@media screen and ( max-width:550px) {
  .about #corporate_profile .corporate_profile_table .row dd {
    width: 100%;
    font-size: 1.6rem;
    margin-bottom: 20px;
  }
  .about #corporate_profile .corporate_profile_table .row:last-child dd:last-child {
    margin-bottom: 0;
  }
}
.about #corporate_profile .corporate_profile_table .row li {
  margin-bottom: 10px;
}
.about #corporate_profile .corporate_profile_table .row li:last-child {
  margin-bottom: 0;
}
.about #data .data_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.about #data .data_list h4 {
  width: 100%;
  text-align: center;
  position: relative;
}
.about #data .data_company h4 {
  margin: 25px 0 60px;
}
@media screen and ( max-width:550px) {
  .about #data .data_company h4 {
    margin: 25px 0 40px;
  }
}
.about #data .data_staff h4 {
  margin: 15px 0;
}
.about #data .data_list h4::before,
.about #data .data_list h4::after {
  content: "";
  display: block;
  width: 100%;
  max-width: calc(50% - 100px);
  height: 14px;
  border: solid #004C88 1px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and ( max-width:550px) {
  .about #data .data_list h4::before,
  .about #data .data_list h4::after {
    max-width: calc(50% - 85px);
    height: 10px;
  }
}
.about #data .data_list h4::before {
  left: 0;
}
.about #data .data_list h4::after {
  right: 0;
}
.about #data .data_list dl {
  width: calc(450 / 1000 * 100%);
  margin-bottom: 70px;
}
@media screen and ( max-width:1080px) {
  .about #data .data_list dl {
    width: calc(50% - 20px);
  }
}
@media screen and ( max-width:700px) {
  .about #data .data_list dl {
    width: 100%;
  }
}
@media screen and ( max-width:550px) {
  .about #data .data_list dl {
    margin-bottom: 50px;
  }
}
.about #data .data_staff dl:nth-child(2) {
  width: 100%;
}
@media screen and ( max-width:860px) {
  .about #data .data_staff dl:nth-child(2) {
    padding-top: 20px;
  }
}
@media screen and ( max-width:700px) {
  .about #data .data_staff dl:nth-child(2) {
    padding-top: 40px;
  }
}
.about #data .data_list dt {
  color: #004C88;
  background: #FFF;
  border-radius: 100px;
  text-align: center;
  font-weight: 500;
  font-size: 2.4rem;
  padding: 6px;
  margin-bottom: 30px;
}
@media screen and ( max-width:860px) {
  .about #data .data_list dt {
    font-size: 2rem;
    padding: 15px 0;
  }
}
@media screen and ( max-width:550px) {
  .about #data .data_list dt {
    font-size: 1.8rem;
    padding: 10px 0;
  }
}
.about #data .data_list dd {
  text-align: center;
}
.about #data .data_company dl:last-child dd:nth-child(2) {
  margin-bottom: 65px;
}
.about #data .data_staff .scale01 {
  position: relative;
}
.about #data .data_staff .scale01 dt {
  width: 100%;
  position: absolute;
  left: 0;
  top: 45px;
}
@media screen and ( max-width:550px) {
  .about #data .data_staff .scale01 dt {
    top: 25px;
  }
}
.about #data .data_staff .scale01 img {
  max-width: 1170px;
}
@media screen and ( max-width:860px) {
  .about #data .data_staff .scale01 img {
    max-width: 140%;
  }
}
.about #data .data_staff .scale02 {
  position: relative;
}
.about #data .data_staff .scale02 img {
  max-width: 125%;
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and ( max-width:700px) {
  .about #data .data_staff .scale02 img {
    max-width: 125%;
    position: relative;
    right: inherit;
    top: inherit;
    left: -6%;
  }
}
@media screen and ( max-width:620px) {
  .about #data .data_staff .scale02 img {
    left: -10%;
  }
}
@media screen and ( max-width:590px) {
  .about #data .data_staff .scale02 img {
    max-width: 100%;
  }
}
@media screen and ( max-width:550px) {
  .about #data .data_staff .scale02 img {
    max-width: 118%;
    left: -20%;
  }
}
.about #data .data_staff .scale03 {
  padding: 20px 0;
}
@media screen and ( max-width:860px) {
  .about #data .data_staff .scale03 {
    padding: 0;
  }
}
.about #data .data_staff .scale03 img {
  transform: scale(1.1);
}
@media screen and ( max-width:860px) {
  .about #data .data_staff .scale03 img {
    transform: scale(1);
  }
}
.about #review {
  background: #FFF;
  border-radius: 20px;
}
.about #review h3 {
  position: relative;
  top: -17px;
}
@media screen and ( max-width:700px) {
  .about #review h3 {
    margin-bottom: 15px!important;
  }
}
.about #review .review_list {
  text-align: center;
  padding-bottom: 55px;
}
.about #review .review_list ul {
  display: flex;
  padding: 10px 55px 50px;
}
@media screen and ( max-width:900px) {
  .about #review .review_list ul {
    padding: 10px 30px 50px;
  }
}
@media screen and ( max-width:700px) {
  .about #review .review_list ul {
    flex-wrap: wrap;
    padding: 10px 20px 0;
  }
}
.about #review .review_list li {
  width: 50%;
  padding: 0 20px;
}
@media screen and ( max-width:700px) {
  .about #review .review_list li {
    width: 100%;
    text-align: center;
    margin-bottom: 50px;
    padding: 0;
  }
}
.about #review .review_list p {
  font-weight: 500;
  font-size: 1.2rem;
  padding: 0 30px;
}
@media screen and ( max-width:550px) {
  .about #review .review_list p {
    font-size: 1rem;
  }
}
.about #review .review_list p .br_sp,
.about #review .review_list p .br_sp02,
.about #review .review_list p .br_sp03,
.about #review .review_list p .br_sp04 {
  display: none;
}
@media screen and ( max-width:1000px) {
  .about #review .review_list p .br_sp {
    display: inline;
  }
}
@media screen and ( max-width:800px) {
  .about #review .review_list p .br_sp02 {
    display: inline;
  }
}
@media screen and ( max-width:678px) {
  .about #review .review_list p .br_sp03 {
    display: inline;
  }
}
@media screen and ( max-width:550px) {
  .about #review .review_list p .br_sp04 {
    display: inline;
  }
}
.about #review .customer_voice {
  padding: 0 76px 50px;
  overflow: hidden;
}
@media screen and ( max-width:1080px) {
  .about #review .customer_voice {
    padding: 0 40px 50px;
  }
}
@media screen and ( max-width:860px) {
  .about #review .customer_voice {
    padding: 0 20px 50px;
  }
}
.about #review .customer_voice dl {
  position: relative;
  display: flex;
}
.about #review .customer_voice dl:nth-child(2) {
  flex-direction: row-reverse;
}
.about #review .customer_voice dt {
  content: "";
  display: block;
  width: 291px;
  height: 209px;
  position: absolute;
  bottom: 0;
  left: calc(545 / 1000 * 100%);
}
@media screen and ( max-width:960px) {
  .about #review .customer_voice dt {
    left: calc(700 / 1000 * 100%);
  }
}
@media screen and ( max-width:800px) {
  .about #review .customer_voice dt {
    left: calc(770 / 1000 * 100%);
    width: 200px;
    height: 143px;
  }
}
@media screen and ( max-width:700px) {
  .about #review .customer_voice dt {
    left: calc(740 / 1000 * 100%);
  }
}
@media screen and ( max-width:550px) {
  .about #review .customer_voice dt {
    left: inherit;
    right: -85px;
  }
}
.about #review .customer_voice dl:nth-child(2) dt {
  width: 249px;
  height: 208px;
  left: inherit;
  right: calc(640 / 1000* 100%);
}
@media screen and ( max-width:960px) {
  .about #review .customer_voice dl:nth-child(2) dt {
    right: calc(790 / 1000* 100%);
  }
}
@media screen and ( max-width:800px) {
  .about #review .customer_voice dl:nth-child(2) dt {
    right: calc(820 / 1000* 100%);
    width: 170px;
    height: 142px;
  }
}
@media screen and ( max-width:550px) {
  .about #review .customer_voice dl:nth-child(2) dt {
    right: calc(790 / 1000* 100%);
  }
}
.about #review .customer_voice dl:nth-child(3) dt {
  width: 177px;
  left: calc(640 / 1000 * 100%);
}
@media screen and ( max-width:960px) {
  .about #review .customer_voice dl:nth-child(3) dt {
    left: calc(800 / 1000* 100%);
    bottom: -20px;
  }
}
@media screen and ( max-width:800px) {
  .about #review .customer_voice dl:nth-child(3) dt {
    left: calc(850 / 1000* 100%);
    width: 120px;
  }
}
@media screen and ( max-width:550px) {
  .about #review .customer_voice dl:nth-child(3) dt {
    left: calc(790 / 1000* 100%);
  }
}
.about #review .customer_voice dd {
  background: #BDE9E7;
  border-radius: 20px;
  padding: 30px;
  width: 100%;
  max-width: calc(640 / 1000 * 100%);
  font-weight: 500;
  font-size: 1.7rem;
  line-height: 1.7;
  margin-bottom: 32px;
  position: relative;
  z-index: 1;
}
@media screen and ( max-width:960px) {
  .about #review .customer_voice dd {
    max-width: calc(800 / 1000 * 100%);
  }
}
@media screen and ( max-width:800px) {
  .about #review .customer_voice dd {
    max-width: calc(850 / 1000 * 100%);
  }
}
@media screen and ( max-width:700px) {
  .about #review .customer_voice dd {
    padding: 20px;
    font-size: 1.5rem;
  }
}
@media screen and ( max-width:550px) {
  .about #review .customer_voice dd {
    font-size: 1.4rem;
  }
}
.about #review .customer_voice dl:nth-child(2) dd {
  background: #FFECC4;
}
.about #review .customer_voice dl:nth-child(3) dd {
  background: #FFD0DC;
  margin-bottom: 0;
}
.about #sustainability .sustainability_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.about #sustainability h4,
.about #sustainability .sustainability_text {
  width: calc(50% - 40px);
  margin-bottom: 25px;
}
@media screen and ( max-width:1080px) {
  .about #sustainability h4,
  .about #sustainability .sustainability_text {
    width: calc(50% - 20px);
  }
}
@media screen and ( max-width:860px) {
  .about #sustainability h4,
  .about #sustainability .sustainability_text {
    width: calc(50% - 10px);
  }
}
@media screen and ( max-width:768px) {
  .about #sustainability h4,
  .about #sustainability .sustainability_text {
    width: 100%;
  }
}
.about #sustainability h4 {
  order: 1;
  color: #004C88;
}
.about #sustainability h4 img {
  margin-bottom: 15px;
}
.about #sustainability h4 .font_l {
  display: inline-block;
  background-image: linear-gradient(to right, #FCF7EF, #F7EEF6, #EEF9FC, #EEF9FC);
  background-repeat: no-repeat;
  background-size: 100% 10px;
  background-position: bottom;
  font-weight: 600;
  font-size: 3.2rem;
  letter-spacing: 1px;
  line-height: 1.2;
}
.about #sustainability h4 .font_s {
  display: block;
  margin-top: 15px;
}
.about #sustainability .sustainability_text:nth-child(2) {
  order: 3;
}
.about #sustainability .sustainability_text:nth-child(3) {
  order: 2;
}
.about #sustainability .sustainability_text:nth-child(4) {
  order: 4;
}
.about #sustainability .sustainability_text h5 {
  color: #004C88;
  font-weight: 500;
  font-size: 1.9rem;
  margin-bottom: 20px;
}
@media screen and ( max-width:768px) {
  .about #sustainability .sustainability_text h5 {
    font-size: 1.7rem;
  }
}
.about #sustainability .sustainability_text h5 .br_sp {
  display: none;
}
@media screen and ( max-width:1080px) {
  .about #sustainability .sustainability_text h5 .br_sp {
    display: inline;
  }
}
.about #sustainability .sdgs_no_img {
  display: flex;
  margin-bottom: 20px;
}
.about #sustainability .sdgs_no_img li {
  width: calc(25% - 20px);
  max-width: 76px;
  margin-right: 20px;
}
@media screen and ( max-width:768px) {
  .about #sustainability .sdgs_no_img li {
    width: calc(25% - 15px);
  }
  .about #sustainability .sdgs_no_img li:last-child {
    margin-right: 0;
  }
}
.about #sustainability .sdgs_list li {
  position: relative;
  font-weight: 500;
  font-size: 1.75rem;
  padding-left: 25px;
  margin-bottom: 10px;
}
@media screen and ( max-width:768px) {
  .about #sustainability .sdgs_list li {
    font-size: 1.4rem;
    padding-left: 20px;
  }
}
.about #sustainability .sdgs_list li::before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: #004C88;
  position: absolute;
  left: 0;
  top: 7px;
}
@media screen and ( max-width:768px) {
  .about #sustainability .sdgs_list li::before {
    width: 13px;
    height: 13px;
    top: 5px;
  }
}
.about #sustainability .other_action_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.about #sustainability .other_action_text {
  width: calc(455 / 1000 * 100%);
  margin-top: 100px;
}
@media screen and ( max-width:1080px) {
  .about #sustainability .other_action_text {
    width: calc(50% - 20px);
  }
}
@media screen and ( max-width:980px) {
  .about #sustainability .other_action_text {
    margin-top: 50px;
  }
}
@media screen and ( max-width:860px) {
  .about #sustainability .other_action_text {
    width: 100%;
  }
}
.about #sustainability .other_action_text:first-child {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and ( max-width:1080px) {
  .about #sustainability .other_action_text:first-child {
    align-items: center;
  }
}
.about #sustainability .other_action_text h5 {
  color: #004C88;
  font-weight: 500;
  font-size: 2.2rem;
  background-image: linear-gradient(to right, #FCF7EF, #F7EEF6, #EEF9FC, #EEF9FC);
  background-repeat: no-repeat;
  background-size: 100% 10px;
  background-position: bottom;
  margin-bottom: 25px;
}
@media screen and ( max-width:550px) {
  .about #sustainability .other_action_text h5 {
    font-size: 1.7rem;
  }
}
.about #sustainability .other_action_text:first-child h5 {
  width: 100%;
}
.about #sustainability .other_action_text .text_wrap {
  font-weight: 500;
  font-size: 1.75rem;
  line-height: 1.8;
  margin-bottom: 25px;
}
@media screen and ( max-width:550px) {
  .about #sustainability .other_action_text .text_wrap {
    font-size: 1.5rem;
  }
}
.about #sustainability .other_action_text:first-child .text_wrap {
  width: calc(520 / 1000 * 100%);
  overflow: hidden;/*float解除*/
}
@media screen and ( max-width:1080px) {
  .about #sustainability .other_action_text:first-child .text_wrap {
    width: calc(420 / 1000 * 100%);
  }
}
@media screen and ( max-width:860px) {
  .about #sustainability .other_action_text:first-child .text_wrap {
    width: 100%;
  }
}
.about #sustainability .other_action_text:first-child .text_wrap .spacer {
  float: left;/*画像の位置を右下にしたい場合はright*/
  height: 4.3em/*画像上の余白の高さ*/
}
@media screen and ( max-width:1080px) {
  .about #sustainability .other_action_text:first-child .text_wrap .spacer {
    display: none;
  }
}
.about #sustainability .other_action_text:first-child .text_wrap .img {
  width: 197px;
  float: right;/*画像の位置を右下にしたい場合はright*/
  clear: both;/*.spaceのfloat解除*/
  margin: 1.2em 0 0 1.2rem;/*画像の周りの余白*/
}
@media screen and ( max-width:1080px) {
  .about #sustainability .other_action_text:first-child .text_wrap .img {
    width: 100%;
    float: none;
    margin: 0 0 20px;
    text-align: center;
  }
  .about #sustainability .other_action_text:first-child .text_wrap .img img {
    max-width: 197px;
  }
}
.about #sustainability .other_action_text .sustainability_img {
  display: flex;
  justify-content: space-between;
}
.about #sustainability .other_action_text:first-child .sustainability_img {
  width: calc(450 / 1000 * 100%);
}
@media screen and ( max-width:1080px) {
  .about #sustainability .other_action_text:first-child .sustainability_img {
    width: calc(550 / 1000 * 100%);
  }
}
@media screen and ( max-width:860px) {
  .about #sustainability .other_action_text:first-child .sustainability_img {
    width: 100%;
  }
}
.about #sustainability .other_action_text .sustainability_img li {
  width: calc(220 / 455 * 100%);
}
/*
background: linear-gradient(90deg, rgba(252,247,239,1) 0%, rgba(245,236,246,1) 30%, rgba(238,249,252,1)100%);
*/


/* welfare
**********************************************************/

.welfare #contents {
  background: #DFE5EC;
}
.welfare .main_visual {
  background: url("../img/welfare/main_visual.jpg") no-repeat center center;
  background-size: cover;
}
@media screen and ( max-width:1080px) {
  .welfare .main_visual {
    background: url("../img/welfare/main_visual02.jpg") no-repeat center center;
    background-size: cover;
  }
}
@media screen and ( max-width:520px) {
  .welfare .main_visual {
    background: url("../img/welfare/main_visual_sp.jpg") no-repeat center center;
    background-size: cover;
  }
}
.welfare #hr_policy p,
.welfare #career_path p,
.welfare #workstyle p {
  text-align: center;
  font-weight: 500;
  font-size: 1.7rem;
  line-height: 2.1;
  letter-spacing: 1px;
  margin-bottom: 30px;
}
@media screen and ( max-width:550px) {
  .welfare #hr_policy p,
  .welfare #career_path p,
  .welfare #workstyle p {
    font-size: 1.5rem;
  }
  .welfare #career_path p,
  .welfare #workstyle p {
    text-align: left;
  }
}
.welfare #hr_policy p .br_sp,
.welfare #career_path p .br_sp,
.welfare #workstyle p .br_sp {
  display: none;
}
@media screen and ( max-width:980px) {
  .welfare #career_path p .br_sp {
    display: inline;
  }
}
@media screen and ( max-width:930px) {
  .welfare #workstyle p .br_sp {
    display: inline;
  }
}
@media screen and ( max-width:550px) {
  .welfare #career_path p .br_sp,
  .welfare #workstyle p .br_sp,
  .welfare #workstyle p .br_sp_hide {
    display: none;
  }
}
@media screen and ( max-width:640px) {
  .welfare #hr_policy p .br_sp {
    display: inline;
  }
}
.welfare #hr_policy .hr_policy_list {
  background: #FFF;
  border-radius: 20px;
  padding: 50px;
  position: relative;
}
@media screen and ( max-width:640px) {
  .welfare #hr_policy .hr_policy_list {
    padding: 40px 20px;
  }
}
.welfare #hr_policy .hr_policy_list dl {
  margin-bottom: 50px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and ( max-width:640px) {
  .welfare #hr_policy .hr_policy_list dl {
    margin-bottom: 40px;
  }
}
.welfare #hr_policy .hr_policy_list::after {
  content: "";
  display: block;
  width: 234px;
  height: 291px;
  background: url("../img/welfare/bg_businessperson.svg") no-repeat left top;
  background-size: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and ( max-width:640px) {
  .welfare #hr_policy .hr_policy_list::after {
    width: 130px;
    height: 161px;
  }
}
.welfare #hr_policy .hr_policy_list dl:last-child {
  margin-bottom: 0;
}
.welfare #hr_policy .hr_policy_list dt {
  width: 100%;
  color: #004C88;
  text-align: center;
  font-weight: 500;
  font-size: 2.6rem;
  letter-spacing: 1px;
  margin-bottom: 30px;
  background-image: linear-gradient(to right, #6ABFF8, #6BDEC6);
  background-repeat: no-repeat;
  background-position: bottom;
  line-height: 1.3;
}
@media screen and ( max-width:550px) {
  .welfare #hr_policy .hr_policy_list dt {
    font-size: 2.1rem;
  }
}
.welfare #hr_policy .hr_policy_list dl:first-child dt {
  background-size: 260px 10px;
}
@media screen and ( max-width:550px) {
  .welfare #hr_policy .hr_policy_list dl:first-child dt {
    background-size: 215px 8px;
  }
}
.welfare #hr_policy .hr_policy_list dl:last-child dt {
  background-size: 180px 10px;
}
@media screen and ( max-width:550px) {
  .welfare #hr_policy .hr_policy_list dl:last-child dt {
    background-size: 150px 8px;
  }
}
.welfare #hr_policy .hr_policy_list ul {
  margin-left: 30px;
}
.welfare #hr_policy .hr_policy_list li {
  font-weight: 500;
  font-size: 1.7rem;
  letter-spacing: 2px;
  list-style-type: decimal;
  margin-bottom: 8px;
}
@media screen and ( max-width:550px) {
  .welfare #hr_policy .hr_policy_list li {
    font-size: 1.5rem;
  }
}
.welfare #hr_policy .hr_policy_list li:last-child {
  margin-bottom: 0;
}
.welfare #career_path .career_path_img {
  margin-bottom: 100px;
}
@media screen and ( max-width:768px) {
  .welfare #career_path .career_path_img {
    text-align: center;
  }
}
@media screen and ( max-width:550px) {
  .welfare #career_path .career_path_img {
    margin-bottom: 60px;
  }
}
.welfare #career_path .career_path_img .img_sp {
  display: none;
}
@media screen and ( max-width:768px) {
  .welfare #career_path .career_path_img .img_pc {
    display: none;
  }
  .welfare #career_path .career_path_img .img_sp {
    display: inline;
    width: 100%;
    max-width: 500px;
  }
}
.welfare #career_path .career_path_case h4,
.welfare #workstyle h4,
.welfare #welfare_list h4 {
  color: #6E829A;
  text-align: center;
  font-weight: 500;
  font-size: 2.5rem;
  letter-spacing: 1px;
  margin-bottom: 35px;
}
@media screen and ( max-width:550px) {
  .welfare #career_path .career_path_case h4,
  .welfare #workstyle h4,
  .welfare #welfare_list h4 {
    font-size: 2rem;
  }
}
.welfare #career_path .case_sample {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 50px;
}
.welfare #career_path .case_sample:last-child {
  margin-bottom: 100px;
}
@media screen and ( max-width:550px) {
  .welfare #career_path .case_sample:last-child {
    margin-bottom: 50px;
  }
}
.welfare #career_path .case_sample_img {
  width: 200px;
  text-align: center;
}
@media screen and ( max-width:820px) {
  .welfare #career_path .case_sample_img {
    /*margin-bottom: 15px;*/
  }
}
@media screen and ( max-width:640px) {
  .welfare #career_path .case_sample_img {
    width: 200px;
  }
}
@media screen and ( max-width:550px) {
  .welfare #career_path .case_sample_img {
    width: 164px;
    /*margin-bottom: 10px;*/
  }
}
.welfare #career_path .case_sample_img img {
  max-height: 250px;
}
.welfare #career_path .case_sample dl {
  width: calc(100% - 200px);
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  padding-left: 40px;
  font-weight: 500;
  font-size: 1.8rem;
  letter-spacing: 2px;
}
@media screen and ( max-width:1000px) {
  .welfare #career_path .case_sample dl {
    padding-left: 35px;
  }
}
@media screen and ( max-width:640px) {
  .welfare #career_path .case_sample dl {
    width: calc(100% - 200px);
    font-size: 1.3rem;
    letter-spacing: 1px;
  }
}
@media screen and ( max-width:550px) {
  .welfare #career_path .case_sample dl {
    width: calc(100% - 164px);
    padding-left: 15px;
    margin-bottom: 10px;
  }
}
/*
.welfare #career_path .case_sample dt {
  font-size: 2.6rem;
}
@media screen and ( max-width:930px) {
  .welfare #career_path .case_sample dt {
    width: 100%;
  }
}
@media screen and ( max-width:640px) {
  .welfare #career_path .case_sample dt {
    font-size: 1.8rem;
  }
}
*/
.welfare #career_path .case_sample .work_post {
  color: #004C88;
}
@media screen and ( max-width:1000px) {
  .welfare #career_path .case_sample .work_post {
  }
}
@media screen and ( max-width:930px) {
  .welfare #career_path .case_sample .work_post {
    padding: 12px 0 0 0;
    width: 100%;
  }
}
@media screen and ( max-width:640px) {
  .welfare #career_path .case_sample .work_post {
    padding: 5px 0 0 0;
  }
}
.welfare #career_path .case_sample .work_post .br_sp {
  display: none;
}
@media screen and ( max-width:768px) {
  .welfare #career_path .case_sample .work_post .br_sp {
    display: inline;
  }
}
.welfare #career_path .case_sample .entry {
  width: 100%;
  color: #646464;
  margin: 15px 0;
}
@media screen and ( max-width:640px) {
  .welfare #career_path .case_sample .entry {
    margin: 5px 0;
  }
}
.welfare #career_path .case_sample .entry span {
  color: #FFF;
  background: #0092DB;
  border-radius: 50px;
  padding: 2px 15px 3px;
  margin-left: 18px;
}
@media screen and ( max-width:640px) {
  .welfare #career_path .case_sample .entry span {
    padding: 2px 10px 3px;
    margin-left: 10px;
  }
}
.welfare #career_path .case_sample .entry .mid_career {
  background: #37D6D2;
}
.welfare #career_path .case_sample .career_background .br_sp {
  display: none;
}
@media screen and ( max-width:550px) {
  .welfare #career_path .case_sample .career_background .br_sp {
    display: inline;
  }
}
.welfare #career_path .case_sample .flow_chart {
  width: 100%;
  padding-left: 0;
  text-align: center;
}
.welfare #career_path .case_sample .flow_chart h5 {
  font-weight: 500;
  font-size: 1.7rem;
  color: #FFF;
  background: #004C88;
  text-align: center;
  letter-spacing: 2px;
  padding: 5px 0;
}
.welfare #career_path .case_sample .flow_chart ul {
  display: flex;
  align-items: center;
  width: 100%;
  border: solid #004C88 1px;
  border-bottom: none;
}
@media screen and ( max-width:820px) {
  .welfare #career_path .case_sample .flow_chart ul {
    flex-wrap: wrap;
    border: none;
  }
}
.welfare #career_path .flow_chart li {
  color: #004C88;
  font-weight: 500;
  font-size: 1.5rem;
  text-align: center;
  min-height: 85px;
  display: flex;
  background: #FFF;
  align-items: center;
  justify-content: center;
  border-bottom: solid #004C88 1px;
  position: relative;
}
@media screen and ( max-width:1080px) {
  .welfare #career_path .flow_chart li {
    font-size: 1.4rem;
  }
}
@media screen and ( max-width:1020px) {
  .welfare #career_path .flow_chart li {
    font-size: 1.3rem;
  }
}
@media screen and ( max-width:960px) {
  .welfare #career_path .flow_chart li {
    font-size: 1.2rem;
  }
}
@media screen and ( max-width:900px) {
  .welfare #career_path .flow_chart li {
    font-size: 1.1rem;
  }
}
@media screen and ( max-width:820px) {
  .welfare #career_path .flow_chart li {
    width: 100%;
    font-size: 1.5rem;
    display: block;
    min-height: auto;
    padding: 30px 0 0 0;
    border: solid #004C88 1px;
    border-bottom: none;
  }
  .welfare #career_path .flow_chart li:first-child {
    padding-top: 10px;
  }
  .welfare #career_path .flow_chart li:last-child {
    padding-bottom: 10px;
    border-bottom: solid #004C88 1px;
  }
}
@media screen and ( max-width:640px) {
  .welfare #career_path .flow_chart li {
    font-size: 1.4rem;
    padding: 25px 0 0 0;
  }
  .welfare #career_path .flow_chart li:first-child {
    padding-top: 5px;
  }
  .welfare #career_path .flow_chart li:last-child {
    padding-bottom: 5px;
  }
}
.welfare #career_path .flow_chart .leave_period {
  /*border: none;*/
  background: url("../img/welfare/icon_baby.svg") no-repeat;
  background-position: calc(50% + 12px);
}
@media screen and ( max-width:820px) {
  .welfare #career_path .flow_chart .leave_period {
    background-position: center 30px;
    background-size: 48px;
    border-top: solid #004C88 1px;
  }
}
.welfare #career_path .case_sample .flow_chart li span {
  display: block;
  padding-left: 25px;
}
@media screen and ( max-width:820px) {
  .welfare #career_path .case_sample .flow_chart li span {
    padding-left: 0;
  }
}
.welfare #career_path .case_sample .flow_chart li:first-child span {
  padding-left: 10px;
}
@media screen and ( max-width:820px) {
  .welfare #career_path .case_sample .flow_chart li:first-child span {
    padding-left: 0;
  }
}
.welfare #career_path .split2 li {
  width: 50%;
}
.welfare #career_path .split4 li {
  width: 25%;
}
.welfare #career_path .split5 li {
  width: 20%;
}
@media screen and ( max-width:820px) {
  .welfare #career_path .split2 li,
  .welfare #career_path .split4 li,
  .welfare #career_path .split5 li {
    width: 100%;
  }
}
.welfare #career_path .flow_chart li::before,
.welfare #career_path .flow_chart li::after {
  content: "";
  background: #ffffff;
  width: 30px;
  height: 100%;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  position: absolute;
  right: -29px;
  top: 0;
  z-index: 1;
}
@media screen and ( max-width:820px) {
  .welfare #career_path .flow_chart li::before,
  .welfare #career_path .flow_chart li::after {
    width: 100%;
    height: 20px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    right: inherit;
    top: inherit;
    left: 0;
    bottom: -19px;
  }
}
.welfare #career_path .flow_chart li::before {
  background: #004C88;
  right: -30px;
}
@media screen and ( max-width:820px) {
  .welfare #career_path .flow_chart li::before {
    right: inherit;
    bottom: -20px;
  }
}
.welfare #career_path .flow_chart .bg_blue01,
.welfare #career_path .flow_chart .bg_blue01::after {
  background: #F7FBFF;
}
.welfare #career_path .flow_chart .bg_blue02,
.welfare #career_path .flow_chart .bg_blue02::after {
  background: #EFF5FC;
}
.welfare #career_path .flow_chart .bg_blue03,
.welfare #career_path .flow_chart .bg_blue03::after {
  background: #E4EDF7;
}
.welfare #career_path .flow_chart .bg_blue04,
.welfare #career_path .flow_chart .bg_blue04::after {
  background: #DDE8F5;
}
.welfare #career_path .flow_chart .leave_period::after {
  background: #DFE5EC;
}
.welfare #career_path .case_sample .flow_chart li:last-child::before,
.welfare #career_path .case_sample .flow_chart li:last-child::after {
  display: none;
}
/*
.welfare #career_path .case_sample03 .flow_chart li:nth-child(1) {
  width: 18%;
}
.welfare #career_path .case_sample03 .flow_chart li:nth-child(2) {
  width: 15%;
}
.welfare #career_path .case_sample03 .flow_chart li:nth-child(3) {
  width: 23%;
}
.welfare #career_path .case_sample03 .flow_chart li:nth-child(4) {
  width: 24%;
}
@media screen and ( max-width:820px) {
  .welfare #career_path .case_sample03 .flow_chart li:nth-child(1),
  .welfare #career_path .case_sample03 .flow_chart li:nth-child(2),
  .welfare #career_path .case_sample03 .flow_chart li:nth-child(3),
  .welfare #career_path .case_sample03 .flow_chart li:nth-child(4) {
    width: 100%;
  }
}
*/
.welfare #career_path .training {
  display: flex;
  align-items: center;
  margin-bottom: 100px;
}
@media screen and ( max-width:640px) {
  .welfare #career_path .training {
    flex-wrap: wrap;
  }
}
@media screen and ( max-width:550px) {
  .welfare #career_path .training {
    margin-bottom: 50px;
  }
}
.welfare #career_path .training .training_img {
  width: calc(410 / 1000 * 100%);
}
@media screen and ( max-width:640px) {
  .welfare #career_path .training .training_img {
    width: 100%;
  }
}
.welfare #career_path .training p {
  width: calc(590 / 1000 * 100%);
  display: block;
  padding-left: 50px;
  text-align: left;
  font-weight: 500;
  font-size: 1.9rem;
  line-height: 2.1;
  letter-spacing: 1px;
  margin-bottom: 0;
}
@media screen and ( max-width:860px) {
  .welfare #career_path .training p {
    padding-left: 20px;
    font-size: 1.7rem;
  }
}
@media screen and ( max-width:640px) {
  .welfare #career_path .training p {
    width: 100%;
    padding: 20px 0 0 0;
  }
}
@media screen and ( max-width:550px) {
  .welfare #career_path .training p {
    font-size: 1.5rem;
  }
}
.welfare #career_path #career_path03 dl {
  background: url("../img/welfare/icon_medal.svg") no-repeat right 75px;
  background-size: 120px;
}
@media screen and ( max-width:690px) {
  .welfare #career_path #career_path03 dl {
    background: url("../img/welfare/icon_medal.svg") no-repeat right bottom;
    background-size: 80px;
  }
}
.welfare #career_path #career_path03 dt {
  background: #FFF;
  text-align: center;
  color: #004C88;
  font-weight: 500;
  font-size: 2rem;
  letter-spacing: 2px;
  border-radius: 50px;
  padding: 10px;
}
@media screen and ( max-width:768px) {
  .welfare #career_path #career_path03 dt {
    font-size: 1.6rem;
    padding: 7px;
  }
}
.welfare #career_path #career_path03 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 86%;
  margin: 10px auto 0;
}
@media screen and ( max-width:1060px) {
  .welfare #career_path #career_path03 ul {
    width: 100%;
  }
}
@media screen and ( max-width:690px) {
  .welfare #career_path #career_path03 ul {
    width: auto;
    margin-left: 50%;
    transform: translateX(-50%);
  }
}
@media screen and ( max-width:550px) {
  .welfare #career_path #career_path03 ul {
    width: auto;
    margin: 0;
    transform: none;
  }
}
.welfare #career_path #career_path03 ul::after {
  content: "";
  display: block;
  width: 30%;
  order: 8;
}
@media screen and ( max-width:960px) {
  .welfare #career_path #career_path03 ul::after {
    width: 40%;
  }
}
@media screen and ( max-width:690px) {
  .welfare #career_path #career_path03 ul::after {
    display: none;
  }
}
.welfare #career_path #career_path03 li {
  width: 50%;
  position: relative;
  color: #004C88;
  font-weight: 500;
  font-size: 1.8rem;
  letter-spacing: 2px;
  margin-top: 20px;
  padding-left: 25px;
}
@media screen and ( max-width:960px) {
  .welfare #career_path #career_path03 li {
    width: 60%;
  }
}
@media screen and ( max-width:768px) {
  .welfare #career_path #career_path03 li {
    font-size: 1.6rem;
  }
}
@media screen and ( max-width:690px) {
  .welfare #career_path #career_path03 li {
    width: 100%;
    min-width: 360px;
  }
}
@media screen and ( max-width:550px) {
  .welfare #career_path #career_path03 li {
    font-size: 1.4rem;
    min-width: 100%;
    margin-top: 15px;
  }
}
.welfare #career_path #career_path03 li::before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background: url("../img/welfare/icon_star.svg") no-repeat left top;
  position: absolute;
  left: 0;
  top: 6px;
}
.welfare #career_path #career_path03 li:nth-child(1) {
  order: 1;
}
.welfare #career_path #career_path03 li:nth-child(2) {
  order: 3;
}
.welfare #career_path #career_path03 li:nth-child(3) {
  order: 5;
}
.welfare #career_path #career_path03 li:nth-child(4) {
  order: 7;
}
.welfare #career_path #career_path03 li:nth-child(5) {
  order: 2;
}
.welfare #career_path #career_path03 li:nth-child(6) {
  order: 4;
}
.welfare #career_path #career_path03 li:nth-child(7) {
  order: 6;
}
.welfare #career_path #career_path03 li:nth-child(5),
.welfare #career_path #career_path03 li:nth-child(6),
.welfare #career_path #career_path03 li:nth-child(7) {
  width: 30%;
}
@media screen and ( max-width:960px) {
  .welfare #career_path #career_path03 li:nth-child(5),
  .welfare #career_path #career_path03 li:nth-child(6),
  .welfare #career_path #career_path03 li:nth-child(7) {
    width: 40%;
  }
}
@media screen and ( max-width:690px) {
  .welfare #career_path #career_path03 li:nth-child(5),
  .welfare #career_path #career_path03 li:nth-child(6),
  .welfare #career_path #career_path03 li:nth-child(7) {
    width: 100%;
    min-width: 360px;
  }
}
@media screen and ( max-width:550px) {
  .welfare #career_path #career_path03 li:nth-child(5),
  .welfare #career_path #career_path03 li:nth-child(6),
  .welfare #career_path #career_path03 li:nth-child(7) {
    min-width: 100%;
  }
}
.welfare #career_path #career_path03 li span {
  color: #3E3E3E;
  font-size: 1.4rem;
}
.welfare #workstyle .office {
  margin-bottom: 90px;
}
.slides_wide,
.slides_wide_work {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
.slides_wide .slick-slide {
  margin: 0 45px;
  opacity: 0.6;
  transition: all 0.3s;
  text-align: center;
}
@media screen and ( max-width:1480px) {
  .slides_wide .slick-slide {
    margin: 0 30px;
  }
}
@media screen and ( max-width:768px) {
  .slides_wide .slick-slide {
    margin: 0 20px;
  }
}
.slides_wide .slick-active {
  opacity: 1;
}
.slides_wide .slick-slide span {
  display: block;
  font-weight: 500;
  font-size: 1.7rem;
  letter-spacing: 2px;
  margin-top: 15px;
}
@media screen and ( max-width:768px) {
  .slides_wide .slick-slide span {
    font-size: 1.5rem;
  }
}
.slides_wide .slick-dots {
  text-align: right;
  left: 50%;
  /*max-width: calc(50% - 70px);*/
  max-width: 72%;
  transform: translateX(-50%);
}
@media screen and ( max-width:860px) {
  .slides_wide .slick-dots {
    max-width: 77%;
  }
}
@media screen and ( max-width:768px) {
  .slides_wide .slick-dots {
    max-width: 85%;
    text-align: center;
    bottom: -30px;
  }
}
/*
@media screen and ( max-width:1480px) {
  .slides_wide .slick-dots {
    max-width: calc(75% - 30px);
  }
}
*/
.slides_wide .slick-dots li {
  width: 16px;
  height: 8px;
  border-radius: 4px;
  transition: all 0.3s;
  overflow: hidden;
  background: #D9D9D9;
}
.slides_wide .slick-dots .slick-active {
  width: 32px;
}
.slides_wide .slick-dots li button {
  width: 16px;
  height: 8px;
  border-radius: 4px;
  background: #D9D9D9;
  padding: 0;
  overflow: hidden;
  transition: all 0.3s;
}
.slides_wide .slick-dots li button:last-child,
.slides_wide .slick-dots li button::before {
  display: none;
}
.slides_wide .slick-dots .slick-active button {
  width: 32px;
  background: linear-gradient(to right, #42C2FA, #20DFC8);
  background-size: 100%;
  animation-name: expansion;
  animation-fill-mode: forwards;
  animation-duration: 5s;
  /*animation-iteration-count:infinite;*/
  animation-timing-function:ease;
  /*animation-delay: 0.5s;*/
  animation-direction:normal;
}
@keyframes expansion {
  0% {
    width: 8px;
  }
  100% {
    width: 32px;
  }
}
.slides_wide .slick-arrow,
.slides_wide .slick-arrow:hover,
.slides_wide .slick-arrow:focus {
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background: #FFF url("../img/welfare/arrow.svg") no-repeat center center;
  border: solid #004C88 1px;
  top: calc(50% - 40px);
  bottom: inherit;
  z-index: 1;
  transform: none;
  transition: all 0.3s;
}
@media screen and ( max-width:768px) {
  .slides_wide .slick-arrow,
  .slides_wide .slick-arrow:hover,
  .slides_wide .slick-arrow:focus {
    width: 30px;
    height: 30px;
    background-size: 4px;
  }
}
.slides_wide .slick-arrow::before,
.slides_wide .slick-arrow::after {
  display: none;
}
.slides_wide .slick-prev {
  /*left: calc(11% - 5px);*/
  left: calc(12% - 20px);
}
@media screen and ( max-width:860px) {
  .slides_wide .slick-prev {
    left: calc(9% - 20px);
    top: calc(50% - 40px);
  }
}
@media screen and ( max-width:768px) {
  .slides_wide .slick-prev {
    left: calc(8% - 15px);
    top: calc(50% - 30px);
  }
}
.slides_wide .slick-next,
.slides_wide .slick-next:hover,
.slides_wide .slick-next:focus {
  transform: rotate(180deg);
  left: inherit;
  /*right: calc(11% - 5px);*/
  right: calc(12% - 20px);
}
@media screen and ( max-width:860px) {
  .slides_wide .slick-next,
  .slides_wide .slick-next:hover,
  .slides_wide .slick-next:focus {
    right: calc(9% - 20px);
    top: calc(50% - 40px);
  }
}
@media screen and ( max-width:768px) {
  .slides_wide .slick-next,
  .slides_wide .slick-next:hover,
  .slides_wide .slick-next:focus {
    right: calc(8% - 15px);
    top: calc(50% - 30px);
  }
}
.slides_wide .slick-arrow:hover {
  filter: brightness(200%);
}
.welfare #workstyle .workplace_comfort_list {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  flex-wrap: wrap;
}
.welfare #workstyle .workplace_comfort_list dl {
  display: flex;
  flex-wrap: wrap;
  width: calc(300 / 1000 * 100%);
  margin-bottom: 30px;
  position: relative;
}
@media screen and ( max-width:860px) {
  .welfare #workstyle .workplace_comfort_list dl {
    width: calc(316 / 1000 * 100%);
    margin-bottom: 20px;
  }
}
@media screen and ( max-width:768px) {
  .welfare #workstyle .workplace_comfort_list dl {
    width: calc(50% - 10px);
  }
}
@media screen and ( max-width:550px) {
  .welfare #workstyle .workplace_comfort_list dl {
    width: 100%;
  }
}
.welfare #workstyle .workplace_comfort_list dl:nth-child(4),
.welfare #workstyle .workplace_comfort_list dl:nth-child(5),
.welfare #workstyle .workplace_comfort_list dl:nth-child(6) {
  margin-bottom: 0;
}
@media screen and ( max-width:768px) {
  .welfare #workstyle .workplace_comfort_list dl:nth-child(4) {
    margin-bottom: 20px;
  }
}
@media screen and ( max-width:550px) {
  .welfare #workstyle .workplace_comfort_list dl:nth-child(5) {
    margin-bottom: 20px;
  }
}
.welfare #workstyle .workplace_comfort_list dl::after {
  content: "";
  display: block;
  height: 86px;
  position: absolute;
  right: 0;
  top: 210px;
  z-index: 1;
}
@media screen and ( max-width:960px) {
  .welfare #workstyle .workplace_comfort_list dl::after {
    top: 185px;
  }
}
@media screen and ( max-width:768px) {
  .welfare #workstyle .workplace_comfort_list dl::after {
    top: 245px;
  }
}
@media screen and ( max-width:700px) {
  .welfare #workstyle .workplace_comfort_list dl::after {
    top: 220px;
  }
}
@media screen and ( max-width:630px) {
  .welfare #workstyle .workplace_comfort_list dl::after {
    top: 195px;
  }
}
@media screen and ( max-width:550px) {
  .welfare #workstyle .workplace_comfort_list dl::after {
    top: 235px;
  }
}
.welfare #workstyle .workplace_comfort_list dl:nth-child(1)::after {
  width: 104px;
  background: url("../img/welfare/no01.svg") no-repeat left top;
  background-size: 100%;
}
.welfare #workstyle .workplace_comfort_list dl:nth-child(2)::after {
  width: 138px;
  background: url("../img/welfare/no02.svg") no-repeat left top;
  background-size: 100%;
}
.welfare #workstyle .workplace_comfort_list dl:nth-child(3)::after {
  width: 138px;
  background: url("../img/welfare/no03.svg") no-repeat left top;
  background-size: 100%;
}
.welfare #workstyle .workplace_comfort_list dl:nth-child(4)::after {
  width: 146px;
  background: url("../img/welfare/no04.svg") no-repeat left top;
  background-size: 100%;
}
.welfare #workstyle .workplace_comfort_list dl:nth-child(5)::after {
  width: 142px;
  background: url("../img/welfare/no05.svg") no-repeat left top;
  background-size: 100%;
}
.welfare #workstyle .workplace_comfort_list dl:nth-child(6)::after {
  width: 142px;
  background: url("../img/welfare/no06.svg") no-repeat left top;
  background-size: 100%;
}
.welfare #workstyle .workplace_comfort_list dt,
.welfare #workstyle .workplace_comfort_list dd {
  width: 100%;
  position: relative;
  z-index: 2;
}
.welfare #workstyle .workplace_comfort_list dt {
  order: 2;
  text-align: center;
  color: #004C88;
  font-weight: 500;
  font-size: 2rem;
  letter-spacing: 2px;
  padding: 15px 0 10px;
}
@media screen and ( max-width:860px) {
  .welfare #workstyle .workplace_comfort_list dt {
    font-size: 1.8rem;
  }
}
@media screen and ( max-width:550px) {
  .welfare #workstyle .workplace_comfort_list dt {
    font-size: 2rem;
  }
}
.welfare #workstyle .workplace_comfort_list dd:nth-child(2) {
  order: 1;
}
.welfare #workstyle .workplace_comfort_list dd:nth-child(3) {
  order: 3;
  font-weight: 500;
  font-size: 1.7rem;
  letter-spacing: 1px;
  line-height: 2;
}
@media screen and ( max-width:860px) {
  .welfare #workstyle .workplace_comfort_list dd:nth-child(3) {
    font-size: 1.5rem;
  }
}
.welfare #welfare_list .welfare_detail {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.welfare #welfare_list .welfare_detail dl {
  width: calc(310 / 1000 * 100%);
  background: #FFF;
  margin-bottom: 35px;
  padding: 35px 20px;
  font-weight: 500;
  text-align: center;
}
@media screen and ( max-width:860px) {
  .welfare #welfare_list .welfare_detail dl {
    width: calc(316 / 1000 * 100%);
    margin-bottom: 20px;
  }
}
@media screen and ( max-width:860px) {
  .welfare #welfare_list .welfare_detail dl {
    width: calc(50% - 10px);
  }
}
@media screen and ( max-width:550px) {
  .welfare #welfare_list .welfare_detail dl {
    width: 100%;
    padding: 25px 20px;
  }
}
.welfare #welfare_list .welfare_detail dt {
  font-size: 2.6rem;
  color: #004C88;
}
@media screen and ( max-width:960px) {
  .welfare #welfare_list .welfare_detail dt {
    font-size: 2.2rem;
  }
}
@media screen and ( max-width:820px) {
  .welfare #welfare_list .welfare_detail dt {
    font-size: 2rem;
  }
}
.welfare #welfare_list .welfare_detail dt::before {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  vertical-align: bottom;
  margin-right: 10px;
}
@media screen and ( max-width:820px) {
  .welfare #welfare_list .welfare_detail dt::before {
    width: 30px;
    height: 30px;
  }
}
.welfare #welfare_list .welfare_detail dl:nth-child(1) dt::before {
  background: url("../img/welfare/icon_wallet.svg") no-repeat center center;
  background-size: 100%;
}
.welfare #welfare_list .welfare_detail dl:nth-child(2) dt::before {
  background: url("../img/welfare/icon_heart.svg") no-repeat center center;
  background-size: 100%;
}
.welfare #welfare_list .welfare_detail dl:nth-child(3) dt::before {
  background: url("../img/welfare/icon_airplane.svg") no-repeat center center;
  background-size: 100%;
}
.welfare #welfare_list .welfare_detail dl:nth-child(4) dt::before {
  background: url("../img/welfare/icon_cal01.svg") no-repeat center center;
  background-size: 100%;
}
.welfare #welfare_list .welfare_detail dl:nth-child(5) dt::before {
  background: url("../img/welfare/icon_cal02.svg") no-repeat center center;
  background-size: 100%;
}
.welfare #welfare_list .welfare_detail dl:nth-child(6) dt::before {
  background: url("../img/welfare/icon_clover.svg") no-repeat center center;
  background-size: 100%;
}
.welfare #welfare_list .welfare_detail dd {
  font-size: 1.8rem;
  margin-top: 20px;
}
@media screen and ( max-width:960px) {
  .welfare #welfare_list .welfare_detail dd {
    font-size: 1.6rem;
  }
}
@media screen and ( max-width:820px) {
  .welfare #welfare_list .welfare_detail dd {
    font-size: 1.5rem;
  }
}
@media screen and ( max-width:550px) {
  .welfare #welfare_list .welfare_detail dd {
    margin-top: 15px;
  }
}
.welfare #welfare_list .welfare_detail li {
  margin-bottom: 5px;
}
.welfare #welfare_list .welfare_detail li span {
  display: block;
  font-size: 1.6rem;
}
.welfare #welfare_list .recreation {
  margin-top: 60px;
}
@media screen and ( max-width:550px) {
  .welfare #welfare_list .recreation {
    margin-top: 35px;
  }
}
.welfare #welfare_list .recreation_case,
.welfare #welfare_list .recreation_case .rec_img {
  display: flex;
}
.welfare #welfare_list .recreation_case {
  position: relative;
  flex-direction: row-reverse;
  justify-content: flex-end;
  width: 1200px;
  transform: translateX(-100px);
  background: url("../img/welfare/icon_bbq.svg") no-repeat bottom left;
}
@media screen and ( max-width:1200px) {
  .welfare #welfare_list .recreation_case {
    margin: 0 calc(50% - 50vw);
    width: 100vw;
    transform: none;
    background-size: 18%;
  }
}
@media screen and ( max-width:768px) {
  .welfare #welfare_list .recreation_case {
    padding-top: 230px;
    background-position: calc(50% + 115px) 16px;
    background-size: 200px;
  }
}
@media screen and ( max-width:550px) {
  .welfare #welfare_list .recreation_case {
    padding-top: 170px;
    background-position: calc(50% + 65px) 45px;
    background-size: 110px;
  }
}
.welfare #welfare_list .recreation_case .rec_list {
  width: 280px;
  height: 280px;
  border-radius: 140px;
  font-size: 1.8rem;
  /*background: #FF9365;*/
  position: absolute;
  right: 738px;
  top: -40px;
  color: #FFF;
  font-weight: 500;
  /*padding: 50px 0 0 60px;*/
  z-index: 1;
}
@media screen and ( max-width:1200px) {
  .welfare #welfare_list .recreation_case .rec_list {
    right: 62%;
  }
}
@media screen and ( max-width:768px) {
  .welfare #welfare_list .recreation_case .rec_list {
    right: inherit;
    left: calc(50% - 230px);
    top: 0;
  }
}
@media screen and ( max-width:550px) {
  .welfare #welfare_list .recreation_case .rec_list {
    width: 200px;
    height: 200px;
    font-size: 1.6rem;
    /*padding: 30px 0 0 34px;*/
    left: calc(50% - 170px);
  }
}
.welfare #welfare_list .recreation_case .rec_list li {
  padding-bottom: 6px;
}
@media screen and ( max-width:550px) {
  .welfare #welfare_list .recreation_case .rec_list li {
    padding-bottom: 2px;
  }
}
.welfare #welfare_list .recreation_case .rec_img {
  max-width: 808px;
  margin-left: auto;
}
@media screen and ( max-width:1200px) {
  .welfare #welfare_list .recreation_case .rec_img {
    max-width: calc(808 / 1200 * 100%);
  }
}
@media screen and ( max-width:768px) {
  .welfare #welfare_list .recreation_case .rec_img {
    max-width: 100%;
  }
}
.welfare #welfare_list .recreation_case .rec_img li {
  width: calc(364 / 808 * 100%);
  margin-left: 40px;
}
@media screen and ( max-width:1080px) {
  .welfare #welfare_list .recreation_case .rec_img li {
    width: calc(404 / 808 * 100%);
    margin-left: 0;
  }
}
@media screen and ( max-width:768px) {
  .welfare #welfare_list .recreation_case .rec_img li {
    width: 50%;
  }
}
.welfare #welfare_list .company_retreat {
  margin-top: 100px;
}
@media screen and ( max-width:550px) {
  .welfare #welfare_list .company_retreat {
    margin-top: 50px;
  }
}
.welfare #welfare_list .company_retreat .recreation_case {
  justify-content: flex-start;
  margin: 0 auto 0 0;
  background: url("../img/welfare/icon_bus.svg") no-repeat bottom right;
}
@media screen and ( max-width:1200px) {
  .welfare #welfare_list .company_retreat .recreation_case {
    margin: 0 calc(50% - 50vw);
    background-size: 18%;
  }
}
@media screen and ( max-width:768px) {
  .welfare #welfare_list .company_retreat .recreation_case {
    background-position: calc(50% - 115px) 80px;
    background-size: 200px;
  }
}
@media screen and ( max-width:550px) {
  .welfare #welfare_list .company_retreat .recreation_case {
    background-position: calc(50% - 65px) 75px;
    background-size: 110px;
  }
}
.welfare #welfare_list .company_retreat .rec_img {
  margin-left: 0;
  margin-right: auto;
}
.welfare #welfare_list .company_retreat .rec_list {
  /*background: #00BEEA;*/
  /*padding: 70px 0 0 50px;*/
  right: inherit;
  left: 738px;
}
@media screen and ( max-width:1200px) {
  .welfare #welfare_list .company_retreat .rec_list {
    left: 62%;
  }
}
@media screen and ( max-width:768px) {
  .welfare #welfare_list .company_retreat .rec_list {
    left: inherit;
    right: calc(50% - 230px);
    top: 0;
  }
}
@media screen and ( max-width:550px) {
  .welfare #welfare_list .company_retreat .rec_list {
    /*padding: 45px 0 0 20px;*/
    right: calc(50% - 170px);
  }
}
.welfare #welfare_list .company_retreat .rec_img li {
  margin: 0 40px 0 0;
}
@media screen and ( max-width:1080px) {
  .welfare #welfare_list .company_retreat .rec_img li {
    margin-right: 0;
  }
}
.sub_page #contents #welfare_faq {
  margin-bottom: 0;
}
.welfare #welfare_faq dl {
  background: #FFF;
  border-radius: 10px;
  font-weight: 500;
  font-size: 1.8rem;
  margin-bottom: 20px;
  overflow: hidden;
}
.welfare #welfare_faq dt,
.welfare #welfare_faq dd {
  position: relative;
  padding: 16px 30px 16px 90px;
  line-height: 1.8;
}
@media screen and ( max-width:550px) {
  .welfare #welfare_faq dt,
  .welfare #welfare_faq dd {
    padding: 16px 20px 16px 65px;
  }
  .welfare #welfare_faq dt {
    font-size: 1.6rem;
  }
  .welfare #welfare_faq dd {
    font-size: 1.4rem;
  }
}
.welfare #welfare_faq dt {
  background: linear-gradient(to right, #FCF8EF, #F6ECF6 20%, #EDF8FD);
}
.welfare #welfare_faq .icon_q,
.welfare #welfare_faq .icon_a {
  width: 36px;
  height: 36px;
  border-radius: 18px;
  position: absolute;
  top: calc(50% - 18px);
  left: 30px;
  color: #FFF;
  font-weight: 700;
  font-size: 1.6rem;
  text-align: center;
  line-height: 1;
  padding-top: 10px;
}
@media screen and ( max-width:550px) {
  .welfare #welfare_faq .icon_q,
  .welfare #welfare_faq .icon_a {
    left: 15px;
  }
}
.welfare #welfare_faq .icon_q {
  background: #94A7BE;
}
.welfare #welfare_faq .icon_a {
  background: #F29269;
}
.welfare #career_path .case_sample04 .flow_chart h5 {
  position: relative;
  padding: 5px 0 5px calc(30% - 28px);
}
@media screen and ( max-width:820px) {
  .welfare #career_path .case_sample04 .flow_chart h5 {
    display: none;
  }
}
.welfare #career_path .flow_chart .title_pc {
  display: block;
  /*background: #2B78B5;*/
  border-right: solid #FFF 1px;
  position: absolute;
  width: calc(30% - 28px);
  height: 100%;
  left: 0;
  top: 0;
  font-size: 1.5rem;
  padding-top: 6px;
}
@media screen and ( max-width:990px) {
  .welfare #career_path .flow_chart .title_pc {
    width: calc(28% - 26px);
    font-size: 1.3rem;
    padding-top: 8px;
  }
}
@media screen and ( max-width:940px) {
  .welfare #career_path .flow_chart .title_pc {
    width: calc(28% - 20px);
    font-size: 1.2rem;
    padding-top: 10px;
  }
}
.welfare #career_path .flow_chart .title_sp {
  display: none;
}
@media screen and ( max-width:820px) {
  .welfare #career_path .case_sample04 .title_sp {
    display: block;
    font-weight: 500;
    font-size: 1.7rem;
    color: #FFF;
    background: #004C88;
    text-align: center;
    letter-spacing: 2px;
    padding: 5px 0!important;
  }
  .welfare #career_path .case_sample04 .title_sp:first-child {
    background: #004C88;
  }
  .welfare #career_path .flow_chart .title_sp::before,
  .welfare #career_path .flow_chart .title_sp::after {
    display: none;
  }
}
.welfare #career_path .case_sample04 .flow_chart .split01 {
  width: 30%;
}
@media screen and ( max-width:990px) {
  .welfare #career_path .case_sample04 .flow_chart .split01 {
    width: 27%;
  }
}
@media screen and ( max-width:820px) {
  .welfare #career_path .case_sample04 .flow_chart .split01 {
    width: 100%;
    margin-bottom: 30px;
    padding-top: 10px;
    border-bottom: solid #004C88 1px;
  }
  .welfare #career_path .case_sample04 .flow_chart .split01,
  .welfare #career_path .case_sample04 .flow_chart .bg_blue01 {
    padding-top: 10px;
  }
}


/* work
**********************************************************/

.work #contents {
  padding-bottom: 70px;
}
.work .main_visual {
  background: url("../img/work/main_visual.jpg") no-repeat center center;
  background-size: cover;
}
@media screen and ( max-width:1080px) {
  .work .main_visual {
    background: url("../img/work/main_visual02.jpg") no-repeat center center;
    background-size: cover;
  }
}
@media screen and ( max-width:520px) {
  .work .main_visual {
    background: url("../img/work/main_visual_sp.jpg") no-repeat center center;
    background-size: cover;
  }
}
.work .main_visual_inner .title .br_sp {
  display: none;
}
@media screen and ( max-width:670px) {
  .work .main_visual_inner .title .br_sp {
    display: inline;
  }
}
.work #contents #work_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  padding-top: 70px;
}
@media screen and ( max-width:1080px) {
  .work #contents #work_list {
    margin: 0 40px;
  }
}
@media screen and ( max-width:860px) {
  .work #contents #work_list {
    margin: 0 20px;
  }
}
@media screen and ( max-width:768px) {
  .work #contents #work_list {
    padding-top: 10px;
  }
}
.work #contents #work_list::after {
  content: "";
  display: block;
  width: calc(50% - 30px);
}
.work #work_list .work_detail {
  width: calc(50% - 30px);
  background: #FFF;
  margin-bottom: 60px;
}
@media screen and ( max-width:1080px) {
  .work #work_list .work_detail {
    width: calc(50% - 20px);
    margin-bottom: 40px;
  }
}
@media screen and ( max-width:860px) {
  .work #work_list .work_detail {
    width: calc(50% - 10px);
    margin-bottom: 20px;
  }
}
@media screen and ( max-width:768px) {
  .work #work_list .work_detail {
    width: 100%;
  }
}
.work #work_list .work_detail a {
  text-decoration: none;
  display: block;
  padding: 50px 30px 30px;
  position: relative;
}
@media screen and ( max-width:900px) {
  .work #work_list .work_detail a {
    padding: 50px 20px 20px;
  }
}
@media screen and ( max-width:768px) {
  .work #work_list .work_detail a {
    padding: 50px 30px 30px;
  }
}
@media screen and ( max-width:550px) {
  .work #work_list .work_detail a {
    padding: 50px 20px 20px;
  }
}

/*
.color_button:hover {
  text-decoration: none;
  filter: brightness(120%);
  color: #FFF;
}
.color_button::before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  background: #898A8A url("../img/index/arrow_wht.svg") no-repeat center center;
  background-size: 6px 16px;
  border-radius: 20px;
  position: absolute;
  right: 0;
  top: 0;
}
.color_button:hover::before {
  transition: transform 0.3s;
  transform: rotate(360deg);
}
*/

.work #work_list .work_detail .case_no {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
}
.work #work_list .work_detail .work_img {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
}
.work #work_list .work_detail .work_img img {
  border-radius: 20px;
  transition: all 0.3s;
}
.work #work_list .work_detail a:hover .work_img img {
  filter: brightness(120%);
  transform: scale(106%);
}
.work #work_list .work_detail .color_button {
  /*
  position: absolute;
  bottom: -20px;
  left: calc(50% - 85px);
  */
  margin: -20px auto 0;
}
.work #work_list .work_detail a:hover .color_button {
  filter: brightness(120%);
}
.work #work_list .work_detail a:hover .color_button::before {
  transition: transform 0.3s;
  transform: rotate(360deg);
}


.work #work_list .work_detail h3,
.work #work_list .work_detail p {
  color: #030303;
  font-weight: 600;
  text-align: center;
  line-height: 1.8;
}
.work #work_list .work_detail h3 {
  font-size: 2.3rem;
  margin: 25px 0 0;
}
@media screen and ( max-width:980px) {
  .work #work_list .work_detail h3 {
    font-size: 2rem;
  }
}
@media screen and ( max-width:900px) {
  .work #work_list .work_detail h3 {
    font-size: 1.8rem;
  }
}
@media screen and ( max-width:768px) {
  .work #work_list .work_detail h3 {
    font-size: 2.3rem;
  }
}
@media screen and ( max-width:550px) {
  .work #work_list .work_detail h3 {
    font-size: 1.7rem;
  }
}
.work #work_list .work_detail p {
  margin-top: 10px;
  font-size: 1.7rem;
  letter-spacing: 2px;
}
@media screen and ( max-width:980px) {
  .work #work_list .work_detail p {
    font-size: 1.5rem;
  }
}
@media screen and ( max-width:900px) {
  .work #work_list .work_detail p {
    font-size: 1.4rem;
  }
}
@media screen and ( max-width:768px) {
  .work #work_list .work_detail p {
    font-size: 1.7rem;
  }
}
@media screen and ( max-width:550px) {
  .work #work_list .work_detail p {
    font-size: 1.3rem;
  }
}
.work .work_detail .workflow {
  margin-top: 30px;
}
.work .work_detail .workflow h4 {
  color: #94A7BE;
  text-align: center;
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: 4px;
  margin-bottom: 15px;
}
@media screen and ( max-width:900px) {
  .work .work_detail .workflow h4 {
    font-size: 1.6rem;
  }
}
@media screen and ( max-width:768px) {
  .work .work_detail .workflow h4 {
    font-size: 1.8rem;
  }
}
@media screen and ( max-width:550px) {
  .work .work_detail .workflow h4 {
    font-size: 1.6rem;
  }
}
.work .work_detail .workflow dl,
.work .work_detail .workflow dl::before,
.work .work_detail .workflow dl::after {
  background: #FF678F;
  transition: all 0.3s;
}
.work .work_detail .workflow dl {
  border-radius: 10px;
  color: #FFF;
  display: flex;
  position: relative;
  padding: 10px 0;
  font-weight: 500;
  letter-spacing: 1px;
  margin-bottom: 10px;
}
.work .work_detail a:hover .workflow dl,
.work .work_detail a:hover .workflow dl::before,
.work .work_detail a:hover .workflow dl::after {
  background: #FF7C9E;
}
.work .work_detail .workflow dl:last-child {
  margin-bottom: 0;
}
.work .work_detail .workflow dl::before,
.work .work_detail .workflow dl::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
}
.work .work_detail .workflow dl::before {
  width: 24px;
  height: 15px;
  left: calc(50% - 12px);
  bottom: -10px;
}
.work .work_detail .workflow dl::after {
  height: calc(tan(60deg) * 27px / 2);
  width: 44px;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  left: calc(50% - 22px);
  bottom: -28px;
}
.work .work_detail .workflow dl:last-child::before,
.work .work_detail .workflow dl:last-child::after {
  display: none;
}
.work .work_detail .workflow .planning,
.work .work_detail .workflow .planning::before,
.work .work_detail .workflow .planning::after {
  background: #AF54AF;
}
.work .work_detail a:hover .workflow .planning,
.work .work_detail a:hover .workflow .planning::before,
.work .work_detail a:hover .workflow .planning::after {
  background: #B362BB;
}
.work .work_detail .workflow .construction,
.work .work_detail .workflow .construction::before,
.work .work_detail .workflow .construction::after {
  background: #0091D7;
}
.work .work_detail a:hover .workflow .construction,
.work .work_detail a:hover .workflow .construction::before,
.work .work_detail a:hover .workflow .construction::after {
  background: #459DE6;
}
.work .work_detail .workflow .sales,
.work .work_detail .workflow .sales::before,
.work .work_detail .workflow .sales::after {
  background: #67CFA0;
}
.work .work_detail a:hover .workflow .sales,
.work .work_detail a:hover .workflow .sales::before,
.work .work_detail a:hover .workflow .sales::after {
  background: #8FE2B3;
}
.work .work_detail .workflow dt {
  width: calc(100% - 116px);
  position: relative;
  padding: 23px 0 0 86px;
  font-size: 1.9rem;
}
@media screen and ( max-width:1000px) {
  .work .work_detail .workflow dt {
    font-size: 1.6rem;
  }
}
@media screen and ( max-width:940px) {
  .work .work_detail .workflow dt {
    font-size: 1.4rem;
  }
}
@media screen and ( max-width:860px) {
  .work .work_detail .workflow dt {
    width: calc(100% - 95px);
  }
}
@media screen and ( max-width:768px) {
  .work .work_detail .workflow dt {
    width: calc(100% - 116px);
    font-size: 1.9rem;
  }
}
@media screen and ( max-width:550px) {
  .work .work_detail .workflow dt {
    width: calc(100% - 90px);
    font-size: 1.6rem;
    padding: 16px 0 0 60px;
  }
}
.work .work_detail .workflow dt::before {
  content: "";
  display: block;
  width: 86px;
  height: 47px;
  background: url("../img/work/icon_work01.svg") no-repeat center center;
  position: absolute;
  left: 0;
  top: calc(50% - 23px);
}
@media screen and ( max-width:550px) {
  .work .work_detail .workflow dt::before {
    width: 65px;
    background-size: auto 34px;
  }
}
.work .work_detail .workflow .planning dt::before {
  background: url("../img/work/icon_work02.svg") no-repeat center center;
}
@media screen and ( max-width:550px) {
  .work .work_detail .workflow .planning dt::before {
    background-size: auto 27px;
  }
}
.work .work_detail .workflow .construction dt::before {
  background: url("../img/work/icon_work03.svg") no-repeat center center;
}
@media screen and ( max-width:550px) {
  .work .work_detail .workflow .construction dt::before {
    background-size: auto 34px;
  }
}
.work .work_detail .workflow .sales dt::before {
  background: url("../img/work/icon_work04.svg") no-repeat center center;
  top: calc(50% - 26px);
}
@media screen and ( max-width:550px) {
  .work .work_detail .workflow .sales dt::before {
    background-size: auto 34px;
  }
}
.work .work_detail .workflow .aftersupport dt::before {
  background: url("../img/work/icon_work05.svg") no-repeat center center;
  top: calc(50% - 26px);
}
@media screen and ( max-width:550px) {
  .work .work_detail .workflow .aftersupport dt::before {
    background-size: auto 36px;
  }
}
.work .work_detail .workflow dd {
  width: 116px;
  text-align: center;
}
@media screen and ( max-width:860px) {
  .work .work_detail .workflow dd {
    width: 95px;
  }
}
@media screen and ( max-width:768px) {
  .work .work_detail .workflow dd {
    width: 116px;
  }
}
@media screen and ( max-width:550px) {
  .work .work_detail .workflow dd {
    width: 90px;
  }
  .work .work_detail .workflow dd img {
    width: 40px;
  }
}
.work .work_detail .workflow dd span {
  display: block;
}
@media screen and ( max-width:940px) {
  .work .work_detail .workflow dd span {
    font-size: 1.3rem;
  }
}
@media screen and ( max-width:768px) {
  .work .work_detail .workflow dd span {
    font-size: 1.3rem;
  }
}
@media screen and ( max-width:550px) {
  .work .work_detail .workflow dd span {
    font-size: 1.2rem;
  }
}


/* work detail
**********************************************************/

.work.single #contents {
  background: #DFE5EC;
}
.work.single .main_visual .main_visual_inner .title h2 {
  color: #6E829A;
}
.work.single #work_introduction {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 190px;
}
@media screen and ( max-width:768px) {
  .work.single #work_introduction {
    margin-bottom: 80px;
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction {
    margin-bottom: 70px;
  }
}
.work.single #work_introduction .main_img {
  margin-bottom: 50px;
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .main_img {
    margin-bottom: 30px;
  }
}
.work.single #work_introduction .detail_text {
  width: 100%;
  max-width: 500px;
}
@media screen and ( max-width:1000px) {
  .work.single #work_introduction .detail_text {
    width: calc(100% - 430px);
  }
}
@media screen and ( max-width:860px) {
  .work.single #work_introduction .detail_text {
    width: calc(100% - 410px);
  }
}
@media screen and ( max-width:800px) {
  .work.single #work_introduction .detail_text {
    width: 100%;
    max-width: 100%;
    margin-bottom: 40px;
  }
}
.work.single #work_introduction .detail_text .case {
  margin-bottom: 20px;
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .detail_text .case img {
    height: 70px;
  }
}
.work.single #work_introduction .detail_text h3,
.work.single #work_introduction .detail_text p {
  color: #030303;
  text-align: left;
  font-weight: 500;
}
.work.single #work_introduction .detail_text h3 {
  font-size: 2.7rem;
  line-height: 1.8;
  margin-bottom: 30px;
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .detail_text h3 {
    font-size: 2rem;
    width: 102%;
  }
}
.work.single #work_introduction .detail_text h3 span {
  font-size: 1.8rem;
  margin-top: 15px;
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .detail_text h3 span {
    font-size: 1.5rem;
  }
}
.work.single #work_introduction .detail_text p {
  font-size: 1.7rem;
  letter-spacing: 1px;
  line-height: 2;
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .detail_text p {
    font-size: 1.5rem;
    width: 102%;
  }
}
.work.single #work_introduction .workflow {
  width: 100%;
  max-width: 390px;
}
@media screen and ( max-width:800px) {
  .work.single #work_introduction .workflow {
    margin: 0 auto;
  }
}
.work.single #work_introduction .slides_wide_work {
  margin-top: 110px;
}
@media screen and ( max-width:768px) {
  .work.single #work_introduction .slides_wide_work {
    margin-top: 80px;
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .slides_wide_work {
    margin-top: 50px;
  }
}
.work.single #work_introduction .slides_wide_work .slick-slide {
  max-width: 580px;
  margin: 0 50px;
}
@media screen and ( max-width:860px) {
  .work.single #work_introduction .slides_wide_work .slick-slide {
    margin: 0 30px;
  }
}
@media screen and ( max-width:768px) {
  .work.single #work_introduction .slides_wide_work .slick-slide {
    max-width: 500px;
  }
}
@media screen and ( max-width:680px) {
  .work.single #work_introduction .slides_wide_work .slick-slide {
    margin: 0 20px;
  }
}
@media screen and ( max-width:640px) {
  .work.single #work_introduction .slides_wide_work .slick-slide {
    max-width: 400px;
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .slides_wide_work .slick-slide {
    max-width: 335px;
    margin: 0 5px;
  }
}
.work.single #work_introduction .slides_wide_work .slick-arrow {
  width: 25px;
  height: 76px;
  background: url("../img/work/detail/nav_arrow_l.svg") no-repeat left top;
  background-size: 100%;
  z-index: 1;
  top: 50%;
  transition: all 0.3s;
}
@media screen and ( max-width:680px) {
  .work.single #work_introduction .slides_wide_work .slick-arrow {
    width: 16px;
    height: 49px;
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .slides_wide_work .slick-arrow {
    width: 10px;
    height: 32px;
    top: inherit;
    bottom: -50px;
  }
}
.work.single #work_introduction .slides_wide_work .slick-arrow:hover {
  filter: brightness(120%);
}
.work.single #work_introduction .slides_wide_work .slick-prev {
  left: calc(50% - 337px);
}
@media screen and ( max-width:860px) {
  .work.single #work_introduction .slides_wide_work .slick-prev {
    left: calc(50% - 320px);
  }
}
@media screen and ( max-width:768px) {
  .work.single #work_introduction .slides_wide_work .slick-prev {
    left: calc(50% - 295px);
  }
}
@media screen and ( max-width:680px) {
  .work.single #work_introduction .slides_wide_work .slick-prev {
    left: calc(50% - 280px);
  }
}
@media screen and ( max-width:640px) {
  .work.single #work_introduction .slides_wide_work .slick-prev {
    left: calc(50% - 230px);
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .slides_wide_work .slick-prev {
    left: 20px;
  }
}
.work.single #work_introduction .slides_wide_work .slick-next {
  background: url("../img/work/detail/nav_arrow_r.svg") no-repeat left top;
  background-size: 100%;
  right: calc(50% - 337px);
}
@media screen and ( max-width:860px) {
  .work.single #work_introduction .slides_wide_work .slick-next {
    right: calc(50% - 320px);
  }
}
@media screen and ( max-width:768px) {
  .work.single #work_introduction .slides_wide_work .slick-next {
    right: calc(50% - 295px);
  }
}
@media screen and ( max-width:680px) {
  .work.single #work_introduction .slides_wide_work .slick-next {
    right: calc(50% - 280px);
  }
}
@media screen and ( max-width:640px) {
  .work.single #work_introduction .slides_wide_work .slick-next {
    right: calc(50% - 230px);
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .slides_wide_work .slick-next {
    right: 20px;
  }
}
.work.single #work_introduction .slides_wide_work .slick-arrow::before {
  display: none;
}
.work.single #work_introduction .slides_wide_work .slick-dots {
  height: 20px;
  bottom: -70px;
}
@media screen and ( max-width:860px) {
  .work.single #work_introduction .slides_wide_work .slick-dots {
    bottom: -40px;
  }
}
@media screen and ( max-width:680px) {
  .work.single #work_introduction .slides_wide_work .slick-dots {
    height: 10px;
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_introduction .slides_wide_work .slick-dots {
    bottom: -25px;
  }
}
.work.single #work_introduction .slides_wide_work .slick-dots li {
  margin: 0 10px;
}
@media screen and ( max-width:680px) {
  .work.single #work_introduction .slides_wide_work .slick-dots li {
    width: 10px;
    height: 10px;
    margin: 0 10px;
  }
}
.work.single #work_introduction .slides_wide_work .slick-dots li button:before {
  content: "";
  background: #FFF;
  border-radius: 10px;
  opacity: 1;
}
@media screen and ( max-width:680px) {
  .work.single #work_introduction .slides_wide_work .slick-dots li button:before {
    width: 10px;
    height: 10px;
  }
}
.work.single #work_introduction .slides_wide_work .slick-dots .slick-active button::before {
  background: #94A7BE;
}
.work.single #work_interview {
  padding: 60px 40px 0;
  margin: 0 calc(50% - 50vw);
  max-width: 100vw;
  background: rgb(249,238,245);
  background: linear-gradient(90deg, rgba(249,238,245,1) 0%, rgba(230,236,248,1) 50%, rgba(231,242,250,1) 100%);
}
@media screen and ( max-width:860px) {
  .work.single #work_interview {
    padding: 60px 20px 0;
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_interview {
    padding: 60px 20px 40px;
  }
}
.work.single #work_interview h3 {
  font-size: 2.8rem;
  margin-bottom: 60px;
}
.work.single #work_interview h3 span {
  font-size: 1.7rem;
  margin-top: 5px;
}
.work.single #work_interview .work_interview_detail {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding-bottom: 95px;
}
@media screen and ( max-width:768px) {
  .work.single #work_interview .work_interview_detail {
    padding-bottom: 40px;
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_interview .work_interview_detail {
    padding-bottom: 10px;
  }
}
.work.single #work_interview .work_interview_detail h4 {
  color: #004C88;
  background: #DFE5EC;
  border-radius: 100px;
  text-align: center;
  font-size: 2.3rem;
  font-weight: 600;
  letter-spacing: 2px;
  padding: 7px;
  margin-bottom: 60px;
}
@media screen and ( max-width:550px) {
  .work.single #work_interview .work_interview_detail h4 {
    font-size: 1.7rem;
    margin-bottom: 30px;
  }
}
.work.single #work_interview .work_interview_detail dl {
  display: flex;
  align-items: flex-start;
  margin-bottom: 45px;
}
@media screen and ( max-width:550px) {
  .work.single #work_interview .work_interview_detail dl {
    margin-bottom: 30px;
  }
}
.work.single #work_interview .work_interview_detail .interview_user {
  flex-direction: row-reverse;
}
.work.single #work_interview .work_interview_detail dt {
  width: 110px;
  margin-right: 20px;
}
@media screen and ( max-width:768px) {
  .work.single #work_interview .work_interview_detail dt {
    width: 60px;
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_interview .work_interview_detail dt {
    width: 45px;
    margin-right: 10px;
  }
}
.work.single #work_interview .work_interview_detail .interview_user dt {
  margin-right: 0;
  margin-left: 20px;
}
@media screen and ( max-width:550px) {
  .work.single #work_interview .work_interview_detail .interview_user dt {
    margin-left: 10px;
  }
}
.work.single #work_interview .work_interview_detail .interview_user dt img {
  border: solid #707070 2px;
  border-radius: 200px;
}
@media screen and ( max-width:768px) {
  .work.single #work_interview .work_interview_detail .interview_user dt img {
    border: solid #707070 1px;
  }
}
.work.single #work_interview .work_interview_detail dd {
  width: 100%;
  max-width: 540px;
  background: #FFF;
  border-radius: 40px;
  padding: 20px 45px;
  font-weight: 500;
  font-size: 1.7rem;
  letter-spacing: 1px;
  line-height: 1.8;
  box-shadow: 5px 5px 6px 0px rgba(99, 111, 128, 0.3);
}
@media screen and ( max-width:768px) {
  .work.single #work_interview .work_interview_detail dd {
    width: calc(100% - 80px);
    max-width: calc(100% - 80px);
  }
}
@media screen and ( max-width:550px) {
  .work.single #work_interview .work_interview_detail dd {
    width: calc(100% - 55px);
    max-width: calc(100% - 55px);
    padding: 20px 25px;
    font-size: 1.5rem;
    border-radius: 30px;
  }
}
.work.single #staff_comment {
  margin-top: 120px;
}
@media screen and ( max-width:768px) {
  .work.single #staff_comment {
    margin-top: 70px;
  }
}
.work.single #staff_comment h3 {
  font-size: 2rem;
}
.work.single #staff_comment h3 span {
  color: #004C88;
  font-size: 2.3rem;
  font-weight: 600;
  margin-top: 10px;
}
@media screen and ( max-width:550px) {
  .work.single #staff_comment h3 span {
    font-size: 1.8rem;
  }
}
.work.single #staff_comment .comment_detail {
  border-radius: 10px;
  padding: 15px 50px 30px;
  position: relative;
  margin-top: 35px;
}
@media screen and ( max-width:768px) {
  .work.single #staff_comment .comment_detail {
    padding: 15px 30px 25px;
  }
}
@media screen and ( max-width:550px) {
  .work.single #staff_comment .comment_detail {
    padding: 15px 20px 15px;
    margin-top: 20px;
  }
}
.work.single #staff_comment .comment_detail::before,
.work.single #staff_comment .comment_detail::after {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
}
.work.single #staff_comment .comment_detail::before {
  width: 80px;
  height: 35px;
  left: calc(50% - 40px);
  bottom: -25px;
}
@media screen and ( max-width:550px) {
  .work.single #staff_comment .comment_detail::before {
    width: 40px;
    height: 25px;
    left: calc(50% - 20px);
    bottom: -20px;
  }
}
.work.single #staff_comment .comment_detail::after {
  height: calc(tan(60deg) * 58px / 2);
  width: 120px;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  left: calc(50% - 60px);
  bottom: -65px;
}
@media screen and ( max-width:550px) {
  .work.single #staff_comment .comment_detail::after {
    height: calc(tan(60deg)* 30px / 2);
    width: 68px;
    left: calc(50% - 34px);
    bottom: -35px;
  }
}
.work.single #staff_comment .comment_detail:last-child::before,
.work.single #staff_comment .comment_detail:last-child::after {
  display: none;
}
.work.single #staff_comment .comment_detail,
.work.single #staff_comment .comment_detail::before,
.work.single #staff_comment .comment_detail::after {
  background: #FF678F;
}
.work.single #staff_comment .planning,
.work.single #staff_comment .planning::before,
.work.single #staff_comment .planning::after {
  background: #AF54AF;
}
.work.single #staff_comment .construction,
.work.single #staff_comment .construction::before,
.work.single #staff_comment .construction::after {
  background: #0091D7;
}
.work.single #staff_comment .sales,
.work.single #staff_comment .sales::before,
.work.single #staff_comment .sales::after {
  background: #67CFA0;
}
.work.single #staff_comment .comment_detail dl::before,
.work.single #staff_comment .comment_detail dl::after {
  display: none;
}
.work.single #staff_comment .comment_detail dl {
  flex-direction: row-reverse;
  justify-content: center;
  margin-left: 50px;
  margin-bottom: 0;
}
@media screen and ( max-width:550px) {
  .work.single #staff_comment .comment_detail dl {
    margin-left: 0;
  }
}
.work.single #staff_comment .comment_detail dt {
  width: 270px;
  padding: 23px 0 0 70px;
}
@media screen and ( max-width:550px) {
  .work.single #staff_comment .comment_detail dt {
    padding: 17px 0 0 50px;
    width: auto;
  }
}
.work.single #staff_comment .comment_detail dt::before {
  width: 86px;
  left: -10px;
}
@media screen and ( max-width:550px) {
  .work.single #staff_comment .comment_detail dt::before {
    width: 62px;
  }
}
.work.single #staff_comment .comment_detail dd {
  width: 100px;
}
@media screen and ( max-width:550px) {
  .work.single #staff_comment .comment_detail dd {
    width: auto;
    margin-right: 10px;
  }
}
.work.single #staff_comment .comment_detail p {
  color: #FFF;
  font-weight: 400;
  font-size: 1.75rem;
  letter-spacing: 1px;
  line-height: 1.9;
}
@media screen and ( max-width:550px) {
  .work.single #staff_comment .comment_detail p {
    font-size: 1.5rem;
  }
}
.work.single #contents aside#work_list {
  padding-top: 150px;
  max-width: 1000px;
  margin: 0 auto;
  padding-bottom: 60px;
}
@media screen and ( max-width:1080px) {
  .work.single #contents aside#work_list {
    margin: 0 40px;
    padding-top: 50px;
  }
}
@media screen and ( max-width:860px) {
  .work.single #contents aside#work_list {
    margin: 0 20px;
  }
}
@media screen and ( max-width:768px) {
  .work.single #contents aside#work_list {
    padding-top: 30px;
  }
}
@media screen and ( max-width:550px) {
  .work.single #contents aside#work_list {
    padding-bottom: 0;
  }
}
.work.single #contents aside#work_list h3 {
  width: 100%;
  text-align: center;
  margin-bottom: 65px;
  color: #6E829A;
  font-weight: 600;
  font-size: 2.3rem;
  letter-spacing: 3px;
}
@media screen and ( max-width:550px) {
  .work.single #contents aside#work_list h3 {
    font-size: 1.8rem;
    margin-bottom: 40px;
  }
}
.work.single #contents aside#work_list .work_detail {
  width: calc(50% - 50px);
  background: none;
}
@media screen and ( max-width:1080px) {
  .work.single #contents aside#work_list .work_detail {
    width: calc(50% - 20px);
  }
}
@media screen and ( max-width:860px) {
  .work.single #contents aside#work_list .work_detail {
    width: calc(50% - 10px);
  }
}
@media screen and ( max-width:550px) {
  .work.single #contents aside#work_list .work_detail {
    width: 100%;
    margin-bottom: 35px;
  }
}
.work.single #contents aside#work_list .work_detail a {
  padding: 40px 0 0;
}
.work.single #contents aside#work_list .work_detail .case_no img {
  width: auto;
  max-width: auto;
  height: 72px;
}
.work.single #contents aside#work_list .work_detail a h3,
.work.single #contents aside#work_list .work_detail a p {
  text-align: left;
  color: #030303;
  font-weight: 500;
  transition: all 0.3s;
}
.work.single #contents aside#work_list .work_detail a:hover h3,
.work.single #contents aside#work_list .work_detail a:hover p {
  color: #004C88;
}
.work.single #contents aside#work_list .work_detail a h3 {
  margin: 20px 0 10px;
  font-size: 2.2rem;
}
@media screen and ( max-width:768px) {
  .work.single #contents aside#work_list .work_detail a h3 {
    font-size: 1.8rem;
  }
}
@media screen and ( max-width:640px) {
  .work.single #contents aside#work_list .work_detail a h3 {
    font-size: 1.6rem;
  }
}
@media screen and ( max-width:550px) {
  .work.single #contents aside#work_list .work_detail a h3 {
    font-size: 2rem;
  }
}
.work.single #contents aside#work_list .work_detail a p {
  font-size: 1.6rem;
}
@media screen and ( max-width:768px) {
  .work.single #contents aside#work_list .work_detail a p {
    font-size: 1.4rem;
  }
}
@media screen and ( max-width:640px) {
  .work.single #contents aside#work_list .work_detail a p {
    font-size: 1.2rem;
  }
}
@media screen and ( max-width:550px) {
  .work.single #contents aside#work_list .work_detail a p {
    font-size: 1.6rem;
  }
}


/* entry
**********************************************************/

.entry.sub_page #recruitment {
  max-width: 1000px;
  margin: 0 auto;
  font-weight: 500;
}
.entry.sub_page #contents h3,
.entry.sub_page #contents .apply h4 {
  color: #6E829A;
  font-weight: 600;
  font-size: 2.2rem;
  letter-spacing: 4px;
  margin: 45px 0;
  text-align: center;
  position: relative;
}
@media screen and ( max-width:550px) {
  .entry.sub_page #contents h3,
  .entry.sub_page #contents .apply h4 {
    font-size: 2rem;
  }
}
.entry.sub_page #contents h3 span,
.entry.sub_page #contents .apply h4 span {
  font-weight: 500;
  letter-spacing: 2px;
  font-size: 2.1rem;
  display: block;
}
@media screen and ( max-width:550px) {
  .entry.sub_page #contents h3 span,
  .entry.sub_page #contents .apply h4 span {
    font-size: 1.6rem;
  }
}
.entry.sub_page #contents .tab {
  display: flex;
  border-bottom: solid #FFF 2px;
  padding: 0 10px;
  height: 86px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page #contents .tab {
    height: 60px;
  }
}
.entry.sub_page #contents .tab li {
  width: 50%;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  text-align: center;
  color: #6E829A;
  font-size: 2.3rem;
  letter-spacing: 2px;
  padding: 20px;
  margin: 10px 10px 0;
  background: #DFE5EC;
  cursor: pointer;
  transition: all 0.3s;
}
@media screen and ( max-width:550px) {
  .entry.sub_page #contents .tab li {
    font-size: 1.9rem;
    padding: 10px;
    margin: 10px 5px 0;
  }
}
.entry.sub_page #contents .tab li:hover {
  background: #FFF;
}
.entry.sub_page #contents .tab .active {
  background: #FFF;
  color: #004C88;
  margin-top: 0;
  padding-top: 25px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page #contents .tab .active {
    padding-top: 15px;
  }
}
.entry.sub_page #recruitment section {
  background: #FFF;
  border-radius: 20px;
  margin-bottom: 0;
  padding: 40px;
}
@media screen and ( max-width:768px) {
  .entry.sub_page #recruitment section {
    padding: 40px 20px;
  }
}
@media screen and ( max-width:550px) {
  .entry.sub_page #recruitment section {
    padding: 30px 15px;
  }
}
.entry.sub_page #recruitment .selection {
  margin-bottom: 60px;
  position: relative;
}
.entry.sub_page section h4 {
  color: #6E829A;
  text-align: center;
  font-weight: 500;
  font-size: 2.3rem;
  letter-spacing: 1px;
  margin-bottom: 35px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page section h4 {
    font-size: 2rem;
    margin-bottom: 25px;
  }
}
.entry.sub_page .selection dl {
  margin-bottom: 50px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and ( max-width:640px) {
  .entry.sub_page .selection dl {
    margin-bottom: 40px;
  }
}
.entry.sub_page .selection::after {
  content: "";
  display: block;
  width: 200px;
  height: 247px;
  background: url("../img/welfare/bg_businessperson.svg") no-repeat left top;
  background-size: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and ( max-width:640px) {
  .entry.sub_page .selection::after {
    width: 130px;
    height: 161px;
  }
}
.entry.sub_page .selection dl:last-child {
  margin-bottom: 0;
}
.entry.sub_page .selection dt {
  width: 100%;
  color: #004C88;
  text-align: center;
  font-weight: 500;
  font-size: 2.6rem;
  letter-spacing: 1px;
  margin-bottom: 30px;
  background-image: linear-gradient(to right, #6ABFF8, #6BDEC6);
  background-size: 260px 10px;
  background-repeat: no-repeat;
  background-position: bottom;
  line-height: 1.3;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .selection dt {
    font-size: 2.1rem;
    background-size: 215px 8px;
  }
}
.entry.sub_page .selection ul {
  margin-left: 30px;
}
.entry.sub_page .selection li {
  font-weight: 500;
  font-size: 1.7rem;
  letter-spacing: 2px;
  list-style-type: decimal;
  margin-bottom: 8px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .selection li {
    font-size: 1.5rem;
  }
}
.entry.sub_page .selection li:last-child {
  margin-bottom: 0;
}
.entry.sub_page .mid_career_recruitment {
  display: none;
}
.entry.sub_page table {
  font-size: 1.7rem;
  line-height: 2;
}
@media screen and ( max-width:550px) {
  .entry.sub_page table {
    font-size: 1.5rem;
  }
}
.entry.sub_page th,
.entry.sub_page td {
  border-bottom: solid #E2E2E2 1px;
  padding: 30px;
  letter-spacing: 1px;
}
@media screen and ( max-width:800px) {
  .entry.sub_page th,
  .entry.sub_page td {
    display: block;
    border: none;
  }
  .entry.sub_page td {
    padding: 20px 0 30px;
  }
}
@media screen and ( max-width:550px) {
  .entry.sub_page td {
    padding: 10px 0 20px;
  }
}
.entry.sub_page tr:first-child th,
.entry.sub_page tr:first-child td {
  padding-top: 0;
}
@media screen and ( max-width:800px) {
  .entry.sub_page tr:first-child th {
    padding-top: 10px;
  }
  .entry.sub_page tr:first-child td {
    padding-top: 20px;
  }
}
@media screen and ( max-width:550px) {
  .entry.sub_page tr:first-child th {
    padding-top: 7px;
  }
  .entry.sub_page tr:first-child td {
    padding-top: 10px;
  }
}
.entry.sub_page tr:last-child th,
.entry.sub_page tr:last-child td {
  padding-bottom: 0;
  border: none;
}
@media screen and ( max-width:800px) {
  .entry.sub_page tr:last-child th,
  .entry.sub_page tr:last-child td {
    padding-bottom: 10px;
  }
}
.entry.sub_page th {
  /*
  width: 110px;
  text-align: justify;
  text-align-last: justify;
  */
  width: 275px;
  text-align: left;
  color: #004C88;
  margin-bottom: 10px;
  padding-left: 15px;
  font-weight: 500;
  vertical-align: top;
}
@media screen and ( max-width:800px) {
  .entry.sub_page th {
    width: 100%;
    background: #EFF5FC;
    border-radius: 10px;
    text-align: center;
    padding: 10px;
    /*
    position: sticky;
    top: 100px;
    */
  }
}
@media screen and ( max-width:550px) {
  .entry.sub_page th {
    padding: 7px;
  }
}
.entry.sub_page .mid_career_recruitment th {
  width: 200px;
}
@media screen and ( max-width:800px) {
  .entry.sub_page .mid_career_recruitment th {
    width: 100%;
  }
}
.entry.sub_page th span {
  position: sticky;
  top: 170px;
}
@media screen and ( max-width:800px) {
  .entry.sub_page th span {
    position: inherit;
    top: inherit;
  }
}
.entry.sub_page td {
  width: calc(100% - 275px);
  padding-right: 15px;
}
@media screen and ( max-width:800px) {
  .entry.sub_page td {
    width: 100%;
    padding-right: 0;
  }
}
.entry.sub_page .mid_career_recruitment td {
  width: calc(100% - 200px);
}
@media screen and ( max-width:800px) {
  .entry.sub_page .mid_career_recruitment td {
    width: 100%;
  }
}
.entry.sub_page td ul,
.entry.sub_page td dl {
  margin-top: 25px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page td ul,
  .entry.sub_page td dl {
    margin-top: 15px;
  }
}
.entry.sub_page td li {
  margin-bottom: 10px;
}
.entry.sub_page td li:last-child {
  margin-bottom: 0;
}
.entry.sub_page td .circled_decimal {
  margin: 0;
  padding-left: 25px;
}
.entry.sub_page td .circled_decimal > li {
  list-style-type: decimal;
  padding: 0 0 0 5px;
  margin-bottom: 10px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page td .circled_decimal > li {
    margin-bottom: 5px;
  }
}
.entry.sub_page td .circled_decimal li:last-child {
  margin-bottom: 0;
}
.entry.sub_page td > span,
.entry.sub_page td li span {
  display: block;
  font-size: 1.5rem;
  margin: 10px 0 25px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page td > span,
  .entry.sub_page td li span {
    font-size: 1.3rem;
    margin: 5px 0 20px;
  }
}
.entry.sub_page td > span,
.entry.sub_page td li:last-child span {
  margin-bottom: 0;
}
.entry.sub_page td dl {
  padding: 25px;
}
.entry.sub_page td .card {
  padding: 25px;
  margin-left: 25px;
  border: solid #E2E2E2 1px;
  border-radius: 10px;
  font-size: 1.5rem;
}
@media screen and ( max-width:550px) {
  .entry.sub_page td .card {
    font-size: 1.4rem;
    padding: 15px;
  }
}
.entry.sub_page td dl.card {
  padding: 15px 0 25px;
  margin-left: 25px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page td dl.card {
    padding: 10px 0 15px;
  }
}
.entry.sub_page td .circled_decimal dl.card {
  margin-left: 0;
}
.entry.sub_page dt {
  margin-bottom: 5px;
}
.entry.sub_page .card dt {
  color: #004C88;
  padding: 0 25px 15px;
  border-bottom: solid #E2E2E2 1px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .card dt {
    padding: 0 20px 10px;
  }
}
.entry.sub_page .card dd {
  padding: 15px 25px 0;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .card dd {
    padding: 10px 15px 0;
  }
}
.entry.sub_page td dd ul {
  margin: 0;
}
.entry.sub_page .card li {
  margin-bottom: 5px;
}
.entry.sub_page .construction_anagement {
  margin-top: 25px;
}
.entry.sub_page .job_description {
  border-top: solid #E2E2E2 1px;
  margin: 25px 0;
  padding: 25px 0 10px;
  font-size: 1.5rem;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .job_description {
    font-size: 1.4rem;
    margin: 20px 0 0;
    padding: 20px 0 5px;
  }
}
.entry.sub_page li:last-child .job_description {
  margin-bottom: 0;
  padding-bottom: 0;
}
.entry.sub_page .job_description .card {
  margin-left: 0;
  margin-top: 20px;
}
.entry.sub_page .card li {
  list-style: disc;
  margin-left: 20px;
}
.entry.sub_page .apply p {
  margin-bottom: 30px;
  line-height: 2;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .mid_career_recruitment .apply p {
    padding: 0 5px;
    margin-bottom: 20px;
  }
}
.entry.sub_page .apply .mb0 {
  margin-bottom: 0;
  text-align: center;
}
.entry.sub_page .new_graduate_recruitment .apply p {
  text-align: center;
}
.entry.sub_page .new_graduate_recruitment .apply .mb0 {
  margin-bottom: 0;
}
.entry.sub_page .apply .banner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 645px;
  margin: 0 auto;
}
.entry.sub_page .apply .banner li {
  max-width: 195px;
  margin: 0 10px 20px;
}
.entry.sub_page .apply .banner li a {
  display: block;
  /*
  border: solid #E2E2E2 1px;
  padding: 25px 40px;
  */
}
.entry.sub_page .apply .banner li a:hover {
  opacity: 0.7;
}
.entry.sub_page .etc {
  text-align: right;
  margin-top: 15px;
}
.entry.sub_page .definition_list_box {
  list-style: none;
}
.entry.sub_page .definition_list_box li {
  list-style: none;
  margin-left: 0;
  margin-bottom: 15px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .definition_list_box li {
    margin-bottom: 10px;
  }
}
.entry.sub_page .definition_list_box li:last-child .definition_list {
  margin-bottom: 0;
}
.entry.sub_page .definition_list {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  padding: 0 0 10px;
  margin: 0 0 10px;
}
.entry.sub_page .definition_list:last-child {
  padding: 0;
  margin: 0;
}
.entry.sub_page .definition_list dt,
.entry.sub_page .definition_list dd {
  margin: 0;
  padding: 0;
}
.entry.sub_page .definition_list dt {
  font-size: 1.5rem;
  color: #6E829A;
  text-align: center;
  width: 140px;
  background: #EDF0F4;
  border-radius: 100px;
  letter-spacing: 2px;
  padding: 5px;
}
@media screen and ( max-width:960px) {
  .entry.sub_page .definition_list dt {
    width: 100%;
    padding: 3px;
  }
}
@media screen and ( max-width:550px) {
  .entry.sub_page .definition_list dt {
    font-size: 1.4rem;
  }
}
.entry.sub_page .definition_list dd {
  width: calc(100% - 140px);
  padding-left: 15px;
}
@media screen and ( max-width:960px) {
  .entry.sub_page .definition_list dd {
    width: 100%;
    padding-left: 0;
    padding-top: 10px;
  }
}
.entry.sub_page .mt_0 {
  margin-top: 0!important;
}
.entry.sub_page .ml_0 {
  margin-left: 0!important;
}
.entry.sub_page .disc li {
  list-style: disc;
  margin-left: 20px;
}
.entry.sub_page li ul {
  font-size: 1.5rem;
  list-style: none;
  margin: 10px 0 20px ;
}
@media screen and ( max-width:550px) {
  .entry.sub_page li ul {
    font-size: 1.4rem;
  }
}
.entry.sub_page .disc li li {
  list-style: circle;
}
.entry.sub_page .apply {
  font-weight: 500;
  font-size: 1.6rem;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .apply {
    font-size: 1.5rem;
  }
}
.entry.sub_page .apply span {
  color: #EB7D7D;
}
.entry.sub_page .apply dl {
  display: flex;
  align-items: center;
  padding: 20px 0;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .apply dl {
    flex-wrap: wrap;
    padding: 10px 5px;
  }
}
.entry.sub_page .apply dt {
  width: 170px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .apply dt {
    width: 100%;
    color: #004C88;
    margin-bottom: 15px;
  }
}
.entry.sub_page .apply dt span {
  margin-left: 5px;
}
.entry.sub_page .apply dd {
  width: calc(100% - 170px);
}
@media screen and ( max-width:550px) {
  .entry.sub_page .apply dd {
    width: 100%;
  }
}
.entry.sub_page .apply dd input {
  border: solid #E2E2E2 1px;
  border-radius: 5px;
  font-size: 1.8rem;
  width: 100%;
  padding: 20px;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .apply dd input {
    font-size: 1.6rem;
    padding: 15px;
  }
}
.entry.sub_page .apply dd input::placeholder {
  color: #C4C4C4;
}
/* 旧Edge対応 */
.entry.sub_page .apply dd input::-ms-input-placeholder {
  color: #C4C4C4;
}
.entry.sub_page .apply .button .submit_button {
  text-decoration: none;
  display: block;
  border-radius: 200px;
  text-align: center;
  color: #FFF;
  background-image: linear-gradient(90deg, rgba(0, 255, 255, 1), rgba(0, 206, 255, 1));
  box-shadow: 2px 2px 4px 0px rgba(99, 111, 128, 0.5);
  letter-spacing: 2px;
  line-height: 1.3;
  border: none;
  width: 100%;
  max-width: 340px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-size: 2rem;
  padding: 25px;
  margin: 40px auto 30px;
  cursor: pointer;
  transition: all 0.3s;
}
@media screen and ( max-width:550px) {
  .entry.sub_page .apply .button .submit_button {
    font-size: 1.8rem;
    padding: 20px;
    margin: 30px auto 20px;
  }
}
.entry.sub_page .apply .button .submit_button:hover {
  box-shadow: none;
}


/* confirm
**********************************************************/

/*
.confirm.sub_page #contents .apply h4 {
  margin-top: 20px;
}
*/
.confirm.sub_page .main_visual {
  padding-bottom: 0;
}
.confirm.sub_page .apply p {
  margin: 0;
}
.confirm.sub_page .error {
  padding: 20px 0 0;
}
.confirm.sub_page .error .error_messe {
  color: #EB7D7D;
  background: #FDF2F2;
  padding: 15px 20px;
  margin: 10px 0 0;
  border-radius: 10px;
}
.confirm.sub_page .apply .submit_button_box {
  justify-content: center;
}
@media screen and ( max-width:580px) {
  .confirm.sub_page .apply .submit_button_box {
    justify-content: space-between;
  }
}
.confirm.sub_page .apply .button .submit_button {
  padding: 15px;
  max-width: 230px;
  font-size: 1.7rem;
}
@media screen and ( max-width:550px) {
  .confirm.sub_page .apply .button .submit_button {
    font-size: 1.5rem;
  }
}
.confirm.sub_page .apply .submit_button_box .submit_button {
  margin: 40px 30px 30px;
}
@media screen and ( max-width:580px) {
  .confirm.sub_page .apply .submit_button_box .submit_button {
    margin: 40px 0 30px;
    width: calc(50% - 10px);
  }
}
.confirm.sub_page .apply .button .error_back_button {
  background: #EB7D7D;
}
.confirm.sub_page .apply .button .back_button {
  background: #CCC;
}
.confirm.sub_page .apply .confirm_text {
  text-align: center;
}
.confirm.sub_page .apply .confirm_table {
  width: 100%;
  border-top: solid #E2E2E2 1px;
  margin-top: 40px;
}
@media screen and ( max-width:800px) {
  .confirm.sub_page .apply .confirm_table {
    border: none;
  }
}
@media screen and ( max-width:550px) {
  .confirm.sub_page .apply .confirm_table {
    margin-top: 25px;
  }
}
.confirm.sub_page tr:first-child th,
.confirm.sub_page tr:first-child td {
  padding: 30px;
}
@media screen and ( max-width:800px) {
  .confirm.sub_page tr:first-child th {
    padding: 10px;
  }
  .confirm.sub_page tr:first-child td {
    padding: 20px 0 30px;
  }
}
@media screen and ( max-width:550px) {
  .confirm.sub_page tr:first-child th {
    padding: 7px;
  }
  .confirm.sub_page tr:first-child td {
    padding: 10px 0 20px;
  }
}
.confirm.sub_page .apply .flow_text {
  font-size: 1.5rem;
  color: #6E829A;
  text-align: center;
  width: 100%;
  background: #EDF0F4;
  border-radius: 10px;
  letter-spacing: 2px;
  padding: 15px;
  margin-top: 35px;
}
@media screen and ( max-width:800px) {
  .confirm.sub_page .apply .flow_text {
    margin-top: 0;
  }
}
@media screen and ( max-width:550px) {
  .confirm.sub_page .apply .flow_text {
    font-size: 1.4rem;
    letter-spacing: 1px;
    padding: 10px;
  }
}
.confirm.sub_page .apply .flow_text br {
  display: none;
}
@media screen and ( max-width:550px) {
  .confirm.sub_page .apply .flow_text br {
    display: inline;
  }
}


/* thanks
**********************************************************/

.confirm.sub_page .apply .thanks_cation {
  font-size: 1.4rem;
  padding: 30px 35px;
}
@media screen and ( max-width:768px) {
  .confirm.sub_page .apply .thanks_cation {
    padding: 10px 0px;
  }
}


/* company_profile
**********************************************************/

.company_profile #contents #company_document {
  max-width: 1360px;
  padding: 0 40px;
  margin: 0 auto;
}
@media screen and ( max-width:768px) {
  .company_profile #contents #company_document {
    padding: 0 20px;
  }
}
@media screen and ( max-width:550px) {
  .company_profile #contents #company_document {
    padding: 0 15px;
  }
}


/* footer
**********************************************************/

.page404 .main_visual.no_bg {
  padding: 160px 0 0;
}
@media screen and ( max-width:550px) {
  .page404 .main_visual.no_bg {
    padding: 90px 0 0;
  }
}
.page404 .main_visual.no_bg .main_visual_inner .title h2 {
  font-size: 23rem;
  color: #DDD;
}
@media screen and ( max-width:550px) {
  .page404 .main_visual.no_bg .main_visual_inner .title h2 {
    font-size: 13rem;
  }
}
.page404 #notfound_text p {
  text-align: center;
  font-weight: 500;
  font-size: 3rem;
  color: #CCC;
}
@media screen and ( max-width:550px) {
  .page404 #notfound_text p {
    font-size: 1.7rem;
  }
}


/* splash
**********************************************************/

#splash {
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100%;
	background:#EDF0F4;
	text-align:center;
	color:#333;
  left: 0;
  top: 0;
}
#splash h2,
#splash_text,
#splash .splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 999;
}
#splash h2 {
  width: 100%;
  max-width: 860px;
  top: calc(50% - 130px);
}
@media screen and ( max-width:1080px) {
  #splash h2 {
    max-width: 680px;
  }
}
@media screen and ( max-width:860px) {
  #splash h2 {
    max-width: 580px;
  }
}
@media screen and ( max-width:768px) {
  #splash h2 {
    max-width: 480px;
    top: calc(50% - 105px);
  }
}
@media screen and ( max-width:550px) {
  #splash h2 {
    max-width: 80%;
    top: calc(50% - 110px);
  }
}
#splash h2 .img_sp {
  display: none;
}
@media screen and ( max-width:550px) {
  #splash h2 .img_pc {
    display: none;
  }
  #splash h2 .img_sp {
    display: inline;
  }
}
#splash h2 span {
  display: block;
  padding-top: 30px;
  max-width: 520px;
  margin: 0 auto;
}
@media screen and ( max-width:768px) {
  #splash h2 span {
    max-width: 380px;
  }
}
@media screen and ( max-width:550px) {
  #splash h2 span {
    max-width: 100%;
  }
}
#splash .splash_logo {
  top: calc(50% + 120px);
}
@media screen and ( max-width:550px) {
  #splash .splash_logo {
    top: calc(50% + 170px);
  }
}
#splash_text {
  top: 51.5%;
	width: 60%;
	color: #333;
  height: 10px;
  background: linear-gradient(265deg, rgba(100,195,216,1) 0%, rgba(29,74,157,1) 40%, rgba(200,67,145,1) 70%, rgba(244,177,21,1) 100%);
}
@media screen and ( max-width:1080px) {
  #splash_text {
    width: 70%;
  }
}
@media screen and ( max-width:550px) {
  #splash_text {
    top: 60%;
    width: 82%;
  }
}
.progressbar-text {
  display: none;
}
#splash_text > svg {
  display: none!important;
}


/* main_visual for splash
**********************************************************/

.top-page .main_visual {
  position: relative;
  overflow: hidden;
}
.top-page .main_visual::before,
.top-page .main_visual .blindfold::before {
  content: "";
  display: block;
  z-index: 3;
}
.top-page .main_visual::before,
.top-page .main_visual .blindfold::before,
.top-page .main_visual .blindfold {
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #FFF;
}
.top-page .main_visual .blindfold {
  z-index: 2;
  overflow: hidden;
}
.top-page .main_visual .blindfold::before {
  width: 100vw;
  background: linear-gradient(265deg, rgba(100,195,216,1) 0%, rgba(29,74,157,1) 40%, rgba(200,67,145,1) 70%, rgba(244,177,21,1) 100%);
}
.appear .main_visual::before {
  animation-name:PageAnime02;
animation-duration:0.7s;
animation-timing-function:ease-in-out;
animation-fill-mode:forwards;
}
.appear .main_visual .blindfold {
  animation-name:PageAnime01;
  animation-duration:1.4s;
  animation-timing-function:ease-in-out;
  animation-fill-mode:forwards;
}
.top-page .pamel_img {
  position: relative;
}
.appear .slogan {
  position: absolute;
  left: 50%;
  bottom: 50%;
  transform: translate(-50%, -50%) rotate(10deg);
  transform-origin: -200px -200px;
  opacity: 0;
  animation: fadeInRotate 0.6s ease-in-out forwards;
  animation-delay: 1.4s;
}
@keyframes PageAnime01{
  0% {
    width: 100%;
  }
  50% {
    width: 100%;
  }
  100% {
    width: 0%;
  }
}
@keyframes PageAnime02{
  0% {
    transform-origin:right;
  }
  100% {
    transform-origin:right;
    transform:scaleX(0);
  }
}
@keyframes fadeInRotate {
  0% {
      opacity: 0;
      transform: translate(-50%, -50%) rotate(5deg);
  }
  100% {
      opacity: 1;
      transform: translate(-50%, -50%) rotate(0deg);
  }
}
.top-page #splash .splash_border {
  background: #DDD;
  width: 100%;
  height: 10px;
  position: absolute;
  right: 0;
  top: 0;
}
.appear .flipped {
  transform: rotateY(360deg);
  transition: transform 0.5s;
}
.top-page .pamel_img .slogan01 {
  bottom: -65px;
}
@media screen and ( max-width:900px) {
  .top-page .pamel_img .slogan01 {
    bottom: -55px;
  }
}
@media screen and ( max-width:768px) {
  .top-page .pamel_img .slogan01 {
    bottom: -50px;
  }
}
@media screen and ( max-width:680px) {
  .top-page .pamel_img .slogan01 {
    bottom: -40px;
  }
}
@media screen and ( max-width:550px) {
  .top-page .pamel_img .slogan01 {
    bottom: -225px;
  }
}
@media screen and ( max-width:520px) {
  .top-page .pamel_img .slogan01 {
    bottom: -200px;
  }
}
@media screen and ( max-width:480px) {
  .top-page .pamel_img .slogan01 {
    bottom: -175px;
  }
}
@media screen and ( max-width:420px) {
  .top-page .pamel_img .slogan01 {
    bottom: -155px;
  }
}
@media screen and ( max-width:375px) {
  .top-page .pamel_img .slogan01 {
    bottom: -145px;
  }
}
.top-page .pamel_img .slogan02 {
    bottom: -30px;
  }
@media screen and ( max-width:768px) {
  .top-page .pamel_img .slogan02 {
    bottom: -25px;
  }
}
@media screen and ( max-width:375px) {
  .top-page .pamel_img .slogan02 {
    bottom: -20px;
  }
}


/* other_works
**********************************************************/

.other_works {
  width: 100%;
  padding: 0 20px;
}
.work.single .other_works {
  padding: 0;
}
.button.center {
  justify-content: center;
  margin: 60px 0 50px;
}
@media screen and ( max-width:860px) {
  .button.center {
    margin: 60px 0 15px;
  }
}
.work.single .button.center {
  margin-bottom: 0;
}
@media screen and ( max-width:550px) {
  .work.single .button.center {
    margin: 25px 0 0;
  }
}
.button.center li {
  width: 100%;
  max-width: 580px;
}
.button.center a {
  font-size: 2.6rem;
  border: solid #004C88 1px;
  color: #004C88;
  background: #FFF;
  font-weight: 600;
  letter-spacing: 3px;
  padding: 10px 20px;
  box-shadow: 5px 5px 15px 0px rgba(99, 111, 128, 0.4);
}
/*
.button.center a:hover {
  color: #FFF;
  border-color: #FFF;
  background-image: linear-gradient(90deg, rgba(0, 255, 255, 1), rgba(0, 206, 255, 1));
}
*/
@media screen and ( max-width:550px) {
  .button.center a {
    font-size: 1.8rem;
    letter-spacing: 2px;
    padding: 10px;
  }
}
.button.center a span {
  font-size: 1.5rem;
  padding-top: 10px;
}
@media screen and ( max-width:550px) {
  .button.center a span {
    font-size: 1.2rem;
  }
}


/* footer
**********************************************************/

footer {
  background: #94A7BE;
  padding: 130px 20px 100px;
  color: #FFF;
}
@media screen and ( max-width:660px) {
  footer {
    padding: 90px 20px 20px;
  }
}
@media screen and ( max-width:375px) {
  footer {
    padding: 75px 20px 20px;
  }
}
footer .content {
  max-width: 1000px;
}
footer h4 {
  text-align: center;
  margin-bottom: 100px;
}
@media screen and ( max-width:580px) {
  footer h4 {
    margin-bottom: 75px;
  }
}
footer h4 .img_pc {
  display: inline;
}
footer h4 .img_sp {
  display: none;
}
@media screen and ( max-width:580px) {
  footer h4 .img_pc {
    display: none;
  }
  footer h4 .img_sp {
    display: inline;
    width: 80%;
  }
}
footer .button {
  width: 100%;
  margin-bottom: 125px;
}
@media screen and ( max-width:660px) {
  footer .button {
    margin-bottom: 90px;
  }
}
@media screen and ( max-width:678px) {
  footer .button {
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 55px;
  }
}
footer .button li,
footer .button li a {
  width: 100%;
  max-width: 470px;
}
@media screen and ( max-width:1000px) {
  footer .button li {
    width: calc(50% - 10px);
  }
}
@media screen and ( max-width:678px) {
  footer .button li {
    width: 86%;
    margin-bottom: 20px;
  }
}
footer .button li a {
  font-size: 1.5rem;
  font-weight: 400;
  padding: 20px;
}
@media screen and ( max-width:580px) {
  footer .button li a {
    padding: 15px;
  }
}
footer .button li a span {
  font-size: 3rem;
}
@media screen and ( max-width:550px) {
  footer .button li a span {
    font-size: 2.5rem;
  }
}
footer .panel_link {
  display: flex;
  justify-content: space-between;
  margin-bottom: 75px;
}
@media screen and ( max-width:800px) {
  footer .panel_link {
    flex-wrap: wrap;
  }
}
@media screen and ( max-width:460px) {
  footer .panel_link {
    margin-bottom: 0;
  }
}
footer .panel_link li {
  width: calc(230/1000 * 100%);
  transition: all 0.3s;
  /*
  background: url("../img/common/img_footer02.jpg") no-repeat center center;
  background-size: 100%;
  */
  position: relative;
  height: 366px;
  overflow: hidden;
}
/*
@media screen and ( max-width:1040px) {
  footer .panel_link li {
    background-size: cover;
  }
}
*/
@media screen and ( max-width:930px) {
  footer .panel_link li {
    height: 280px;
  }
}
@media screen and ( max-width:800px) {
  footer .panel_link li {
    width: calc(50% - 10px);
    margin-bottom: 20px;
  }
}
@media screen and ( max-width:550px) {
  footer .panel_link li {
    height: 230px;
  }
}
@media screen and ( max-width:470px) {
  footer .panel_link li {
    height: 170px;
  }
}
footer .panel_link li:hover {
  background-size: 110%;
  box-shadow: 0 0 20px 5px rgba(99, 111, 128, 0.8);
}
/*
@media screen and ( min-width:1040px) {
  footer .panel_link li:hover {
    background-size: 110%;
  }
}
@media screen and ( max-width:1039px) {
  footer .panel_link li:hover {
    transform: scale(1.2);
  }
}
*/
footer .panel_link li::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  transition: all 0.3s;
}
footer .panel_link li:hover::before {
  background: rgba(0, 0, 0, 0);
}
footer .panel_link li::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  transition: all 0.3s;
  background: url("../img/common/img_footer01.jpg") no-repeat center center;
  background-size: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
footer .panel_link li:nth-child(2)::after {
  background: url("../img/common/img_footer02.jpg") no-repeat center center;
  background-size: cover;
}
footer .panel_link li:nth-child(3)::after {
  background: url("../img/common/img_footer03.jpg") no-repeat center center;
  background-size: cover;
}
footer .panel_link li:nth-child(4)::after {
  background: url("../img/common/img_footer04.jpg") no-repeat center center;
  background-size: cover;
}
footer .panel_link li:hover::after {
  width: 120%;
}
footer .panel_link li a {
  color: #FFF;
  text-align: center;
  display: block;
  font-weight: 600;
  font-size: 2.6rem;
  letter-spacing: 2.6px;
  position: relative;
  z-index: 2;
  height: 366px;
  padding-top: 110px;
}
@media screen and ( max-width:1040px) {
  footer .panel_link li a {
    font-size: 2.3rem;
  }
}
@media screen and ( max-width:930px) {
  footer .panel_link li a {
    height: 280px;
    padding-top: 90px;
    font-size: 1.8rem;
  }
}
@media screen and ( max-width:800px) {
  footer .panel_link li a {
    font-size: 2.3rem;
  }
}
@media screen and ( max-width:550px) {
  footer .panel_link li a {
    height: 230px;
    padding-top: 60px;
  }
}
@media screen and ( max-width:470px) {
  footer .panel_link li a {
    font-size: 1.6rem;
    height: 170px;
    padding-top: 48px;
  }
}
footer .panel_link li a:hover {
  text-decoration: none;
}
footer .panel_link li a span {
  display: inline-block;
  font-weight: 600;
  font-size: 1.6rem;
  letter-spacing: 4px;
  position: relative;
  padding-bottom: 5px;
  margin-bottom: 10px;
}
@media screen and ( max-width:1040px) {
  footer .panel_link li a span {
    font-size: 1.4rem;
  }
}
@media screen and ( max-width:470px) {
  footer .panel_link li a span {
    font-size: 1.1rem;
  }
}
footer .panel_link li a span::after {
  content: "";
  display: block;
  height: 1px;
  width: calc(100% + 30px);
  position: absolute;
  left: -15px;
  bottom: 0;
  background: #FFF;
}
footer .sub_menu,
footer .sub_menu .sns,
footer .sub_menu .other_link {
  display: flex;
}
footer .sub_menu {
  margin-bottom: 160px;
}
@media screen and ( max-width:820px) {
  footer .sub_menu {
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 85px;
  }
}
@media screen and ( max-width:460px) {
  footer .sub_menu {
    margin-bottom: 20px;
  }
}
@media screen and ( max-width:960px) {
  footer .sub_menu h6 {
    padding-top: 8px;
  }
}
@media screen and ( max-width:460px) {
  footer .sub_menu h6 {
    width: 100%;
    text-align: center;
    order: 2;
    padding: 0;
    margin-bottom: 35px;
  }
}
footer .sub_menu h6 a:hover {
  text-decoration: none;
  opacity: 0.7;
}
footer .sub_menu h6 img {
  vertical-align: middle;
}
@media screen and ( max-width:1050px) {
  footer .sub_menu h6 img {
    width: 160px;
  }
}
@media screen and ( max-width:960px) {
  footer .sub_menu h6 img {
    width: 130px;
  }
}
@media screen and ( max-width:460px) {
  footer .sub_menu h6 img {
    width: 160px;
  }
}
footer .sub_menu h6 img:nth-child(2) {
  border-left: solid 1px #FFF;
  padding: 7px 0 7px 20px;
  margin: 0 0 0 10px;
}
@media screen and ( max-width:1050px) {
  footer .sub_menu h6 img:nth-child(2) {
    width: 100px;
  }
}
@media screen and ( max-width:960px) {
  footer .sub_menu h6 img:nth-child(2) {
    width: 90px;
  }
}
@media screen and ( max-width:460px) {
  footer .sub_menu h6 img:nth-child(2) {
    width: 100px;
  }
}
footer .sub_menu .sns {
  padding-top: 5px;
}
@media screen and ( max-width:930px) {
  footer .sub_menu .sns {
    padding-top: 14px;
  }
}
@media screen and ( max-width:460px) {
  footer .sub_menu .sns {
    width: 100%;
    justify-content: center;
    order: 1;
    margin-bottom: 30px;
  }
}
footer .sub_menu .sns li {
  padding-left: 35px;
}
@media screen and ( max-width:1000px) {
  footer .sub_menu .sns li {
    padding-left: 25px;
  }
}
@media screen and ( max-width:460px) {
  footer .sub_menu .sns li {
    padding-left: 0;
    width: 50%;
    text-align: center;
  }
}
footer .sub_menu .sns a:hover {
  opacity: 0.7;
}
@media screen and ( max-width:930px) {
  footer .sub_menu .sns a img {
    height: 40px;
  }
}
@media screen and ( max-width:460px) {
  footer .sub_menu .sns a img {
    height: auto;
  }
}
footer .sub_menu .other_link {
  margin: 20px 0 0 auto;
}
@media screen and ( max-width:820px) {
  footer .sub_menu .other_link {
    width: 100%;
    margin: 40px 7px 0 0;
    justify-content: center;
  }
}
@media screen and ( max-width:460px) {
  footer .sub_menu .other_link {
    order: 3;
    max-width: 340px;
    margin: 0 auto;
    justify-content: space-between;
  }
}
footer .sub_menu .other_link li {
  margin-left: 50px;
}
@media screen and ( max-width:1000px) {
  footer .sub_menu .other_link li {
    margin-left: 25px;
  }
}
@media screen and ( max-width:820px) {
  footer .sub_menu .other_link li {
    margin: 0 12px;
  }
}
@media screen and ( max-width:460px) {
  footer .sub_menu .other_link li {
    margin: 0;
  }
  footer .sub_menu .other_link li a {
    font-size: 1.3rem;
    padding-right: 35px;
  }
}
footer .copyright {
  text-align: center;
  font-size: 1.4rem;
  font-weight: 300;
  letter-spacing: 3px;
}
@media screen and ( max-width:820px) {
  footer .copyright {
    font-size: 1rem;
    letter-spacing: 2px;
  }
}
footer .copyright br {
  display: none;
}
@media screen and ( max-width:450px) {
  footer .copyright br {
    display: inline;
  }
}



/* 第2弾非表示用CSS
**********************************************************/
/*
.hide_2nd {
  display: none;
}
@media screen and ( max-width:900px) {
  header .button {
    width: 230px;
  }
}
@media screen and ( max-width:520px) {
  header .button {
    width: 65px;
  }
}
@media screen and ( max-width:820px) {
  header .sns {
    display: flex;
  }
}
@media screen and ( max-width:660px) {
  header .sns {
    display: none;
  }
}
@media screen and ( max-height:768px) {
  #panel_menu .button {
    justify-content: center;
  }
  #panel_menu .button li {
    width: 230px;
  }
}
*/
/*top-page*/
/*
.top-page02 .lead_text {
  padding: 80px 20px;
}
.top-page02 .content01 {
  padding: 200px 20px;
}
.top-page02 .content02 {
  padding-bottom: 0;
}
.top-page02 .movie,
.top-page02 .content03,
.top-page02 .float {
  display: none!important;
}
*/
/*footer*/
/*
footer .button {
  justify-content: center;
}
@media screen and ( max-width:1040px) {
  footer .button li {
    width: 86%;
    max-width: 470px;
  }
}
@media screen and ( max-width:1000px) {
  footer .button li {
    width: 86%;
    max-width: 470px;
  }
}
footer .panel_link {
  justify-content: center;
}
@media screen and ( max-width:770px) {
  footer .panel_link {
    justify-content: space-between;
  }
  footer .panel_link::after {
    content: "";
  }
}
footer .panel_link li {
  width: 230px;
  margin: 0 10px;
}
footer .panel_link li:nth-child(1) {
  margin-left: 0;
}
footer .panel_link li:nth-child(4) {
  margin-right: 0;
}
@media screen and ( max-width:770px) {
  footer .panel_link li {
    width: calc(50% - 10px);
    margin: 0 0 20px;
  }
}
*/
