@charset "Shift_JIS";
/* import css files */
/* @import "inc_all.css"; */


/*--------------------------------------------------------------------------------
	.mod-include 20210106
--------------------------------------------------------------------------------*/

.mod-include.s5-row .s5-row__col4 img {
    float: left;
    margin-right: 5%;
    margin-bottom: 5%;
}

.mod-include.s5-row .s5-row__col4:after, .mod-include.s5-row .s5-row__col1:after {
    clear: both;
    display: block;
    content: "";
}

.mod-include.s5-row span {
    display: block;
}


.mod-include.s5-row span {
    display: none;
}


/*--------------------------------------------------------------------------------
	.mod-include 20210610
--------------------------------------------------------------------------------*/


.videoWrap{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.videoWrap iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}


/*--------------------------------------------------------------------------------
  .mod-include 20210708
--------------------------------------------------------------------------------*/


.c5-videoWrap{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.c5-videoWrap iframe,
.c5-videoWrap > *{
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.c5-videoWrap img{
  width: 100% !important;
  height: auto !important;
}

.js-drawer__bg,
.c5-menuBg,
.c5-modalBg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 90;
}
.js-drawer__bg:not(.is-open):not(.is-active),
.c5-menuBg:not(.is-open):not(.is-active),
.c5-modalBg:not(.is-open):not(.is-active) {
  display: none;
}

.c5-modalBg {
  z-index: 100;
}
.c5-modalBox {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 102;
}
.c5-modalBox a:not([class]) {
  text-decoration: underline !important;
  -webkit-transition: all 0.2s !important;
  transition: all 0.2s !important;
}
.c5-modalBox a:not([class]):hover {
  opacity: 0.6;
  color: #323232 !important;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox .c5-videoWrap {
    width: auto;
  }
}
.c5-modalBox:not(.is-active) {
  display: none;
}
.c5-modalBox__detail > *:first-child {
  margin-top: 0 !important;
}
.c5-modalBox__detail > *:last-child {
  margin-bottom: 0 !important;
}
.c5-modalBox__detail .c5-figure,
.c5-modalBox__detail .c5-videoWrap {
  margin: 40px 0 15px;
}
.c5-modalBox__detail .c5-figure:first-of-type,
.c5-modalBox__detail .c5-videoWrap:first-of-type {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__detail .c5-figure,
.c5-modalBox__detail .c5-videoWrap {
    margin: 8vw -5.3333333333vw 4vw;
  }
}
.c5-modalBox__detail p, .c5-modalBox__detail ul {
  margin: 0 0 15px;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__detail p, .c5-modalBox__detail ul {
    margin: 0 0 4vw;
  }
}
.c5-modalBox--02 {
  max-width: 940px;
  width: 100%;
  background: #DBDBDB;
  color: #323232 !important;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox--02 {
    width: calc(100% - 10.6666666667vw);
    height: calc(100% - 10.6666666667vw);
  }
}
.c5-modalBox--02 .c5-modalBox__inner {
  width: 100%;
  max-width: 940px;
  max-height: 90vh;
  padding: 70px 100px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-y: scroll;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox--02 .c5-modalBox__inner {
    max-height: 100%;
    padding: 8vw 5.3333333333vw 10.6666666667vw;
  }
}
.c5-modalBox__body {
  position: relative;
  line-height: 1.77;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__body {
    font-size: 3.4666666667vw;
  }
}
.c5-modalBox__closeIcon {
  position: absolute;
  top: 22px;
  right: 36px;
  z-index: 100;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__closeIcon {
    width: 3.2vw;
    line-height: 3.2vw;
    top: 1.3333333333vw;
    right: 0vw;
    padding: 2.6666666667vw;
  }
  .c5-modalBox__closeIcon img {
    width: 100%;
  }
} 
.c5-modalBox__date {
  font-size: 14px;
  margin: 0 0 0;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__date {
    font-size: 3.4666666667vw;
    margin: 0 0 0;
  }
}
.c5-modalBox__title {
  font-size: 22px;
  font-weight: bold;
  margin: 0 0 16px;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__title {
    font-size: 4vw;
    margin: 0 0 2.1333333333vw;
  }
}
.c5-modalBox__closeBtn {
  font-size: 13px;
  padding: 4px 1em;
  border: solid 1px #323232;
  min-width: 170px;
  text-align: center;
  -webkit-transition: all 0.2s !important;
  transition: all 0.2s !important;
  margin: 60px 0 0;
  line-height: 1.4;
  display: inline-block;
  text-decoration: none !important;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__closeBtn {
    margin-top: 13.3333333333vw 0 0;
    min-width: 32vw;
    padding: 1.3333333333vw 1em;
  }
}
@media only screen and (min-width: 768px) {
  .c5-modalBox__closeBtn:hover {
    opacity: 1;
    background: #323232;
    color: white;
  }
}
@media (orientation: landscape) {
  .c5-modalBox--01 {
    width: 120vh;
    height: 67.5vh;
  }

  .c5-modalBox--01 .c5-videoWrap {
    width: 100%;
    height: 100%;
    padding-top: 0;
    margin: 0 auto;
  }
}
@media (orientation: portrait) {
  .c5-modalBox--01 {
    width: 90vw;
    height: 50.625vw;
  }

  .c5-modalBox--01 .c5-videoWrap {
    width: 100%;
    height: 100%;
    padding-top: 0;
    margin: 0 auto;
  }
}
.c5-modalBox--01 .c5-videoWrap img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.c5-modalBox--01 .c5-videoWrap a {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: auto;
}
body[style*="fixed"]{
  width: 100%;
}


/*--------------------------------------------------------------------------------
	.mod-include 20210721
--------------------------------------------------------------------------------*/


.c5-poster{
  position: relative;
  width: 100%;

}


/*--------------------------------------------------------------------------------
	.table 20230410
--------------------------------------------------------------------------------*/

.c5-speckTable{
  margin-bottom: 20px;
}
.c5-speckTable table{
  background: #e4e7ec;
  border-spacing: 1px;
  border-collapse: separate;
}
.c5-speckTable table th{
  text-align: left;
}
@media screen and (max-width: 1199px) {
  .c5-speckTable{
    overflow-x: auto;
    margin-bottom: 20px;
  }
  .c5-speckTable table{
    width: max-content;
  }
}
.c5-speckTable th,
.c5-speckTable td{
  background: white;
  font-size: 12px!important;
  padding: .8em .6em;
/* width: 31%; */}
.c5-speckTable thead th{
  white-space: nowrap;
}
.c5-speckTable thead th:nth-child(n+3){
  /* width: 1%; */
  text-align: center;
  /* min-width: 4em; */
}


.c5-speckTable02{
  margin-bottom: 20px;
}
.c5-speckTable02 table{
  background: #e4e7ec;
  border-spacing: 1px;
  border-collapse: separate;
  width: 100%;
	
}
.c5-speckTable02 table th{
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .c5-speckTable02{
    overflow-x: auto;
    margin-bottom: 20px;
  }
  .c5-speckTable02 table{
    width: max-content;
  }
}
.c5-speckTable02 th,
.c5-speckTable02 td{
  background: white;
  font-size: 12px!important;
  padding: .8em .6em;
/* width: 31%; */}
.c5-speckTable02 thead th{
  white-space: nowrap;
  width: auto;
}

/*--------------------------------------------------------------------------------
	S1 特長 20230414
--------------------------------------------------------------------------------*/

.c5-section {
  margin: 0 0 160px;
}
@media only screen and (max-width: 767px) {
  .c5-section {
    margin: 0 0 21.3333333333vw;
  }
}
.c5-section .c5-inner > *:first-child {
  margin-top: 0;
}
.c5-section .c5-inner > *:last-child {
  margin-bottom: 0;
}
.c5-inner {
  max-width: 1200px;
  width: 100%;
  margin: 40px auto;
  box-sizing: content-box;
}
@media only screen and (max-width: 1199px) {
  .c5-inner {
    box-sizing: border-box;
  }
}
@media only screen and (max-width: 767px) {
  .c5-inner {
    padding: 0 4vw;
  }
}
.c5-inner02 {
  max-width: 690px;
  width: 100%;
  padding: 0 10px;
  margin: 0 auto;
  box-sizing: content-box;
}
@media only screen and (max-width: 767px) {
  .c5-inner02 {
    padding: 0 4vw;
    box-sizing: border-box;
  }
}
.c5-header {
  padding: 8px 0;
  background: #323232;
  position: relative;
  z-index: 100;
}
@media only screen and (max-width: 767px) {
  .c5-header {
    padding: 2.6666666667vw 0;
  }
}
.c5-header.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
.c5-header .c5-inner {
  display: flex;
  justify-content: space-between;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .c5-header .c5-inner {
    justify-content: space-between;
  }
}
.c5-header__logo {
  margin: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .c5-header__logo {
    width: 20.2666666667vw;
  }
  .c5-header__logo img {
    max-width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .c5-header__nav {
    position: absolute;
    left: 0;
    bottom: 0;
    transform: translateY(100%);
    z-index: 99;
    background: #323232;
    width: 100%;
    box-sizing: border-box;
    max-height: 100vh;
    overflow: hidden;
    transition: max-height 1s ease;
  }
  .c5-header__nav:not(.is-open) {
    max-height: 0;
    transition: max-height .4s ease;
  }
}
.c5-header__navList {
  margin: 0;
  padding: 0;
  list-style: none;
}
@media only screen and (max-width: 767px) {
  .c5-header__navList {
    padding: 8vw 5.3333333333vw;
  }
}
@media only screen and (min-width: 768px) {
  .c5-header__navList {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}
@media only screen and (min-width: 768px) {
  .c5-header__navList__item {
    display: flex;
    align-items: center;
  }
}
.c5-header__navList__item:not(:first-child) {
  margin-left: 35px;
}
@media only screen and (max-width: 767px) {
  .c5-header__navList__item:not(:first-child) {
    margin: 5.3333333333vw 0 0;
  }
}
.c5-header__navList__item__btn, .c5-header__navList__item__link {
  color: white;
}
.c5-header__navList__item__btn:hover, .c5-header__navList__item__link:hover {
  color: white;
  opacity: .6;
}
.c5-header__navList__item__btn {
  border: solid 1px #DBDBDB;
  padding: 3px 2em;
  text-decoration: none !important;
  transition: all 0.2s !important;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) {
  .c5-header__navList__item__btn:hover {
    opacity: 1 !important;
    color: #000 !important;
    background: #dbdbdb !important;
  }
}
.c5-header__navList__item__btn02 {
  text-align: center;
  background: #ddd;
  display: block;
  padding: 18px 20px;
  margin: -8px 0;
  color: #323232;
  text-decoration: none !important;
  transition: all 0.2s !important;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) {
  .c5-header__navList__item__btn02:hover {
    opacity: .75 !important;
  }
}
.menuBtn {
  display: block;
  width: 9.6vw;
  height: 8vw;
  overflow: hidden;
  text-indent: -10em;
  position: relative;
  border-radius: 3px;
  transition: inherit !important;
}
.menuBtn > span {
  display: block;
  width: 5.3333333333vw;
  height: 1px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: white;
  transition: all .2s ease-out;
}
.menuBtn:before, .menuBtn:after {
  content: "";
  display: block;
  width: 5.3333333333vw;
  height: 1px;
  background: white;
  position: absolute;
  left: 50%;
  transition: all .2s ease-out;
}
.menuBtn:before {
  top: 2.1333333333vw;
  transform: translate(-50%, 0);
}
.menuBtn:after {
  bottom: 2.1333333333vw;
  transform: translate(-50%, 0);
}
.menuBtn.is-open {
  border: solid 3px white;
}
.menuBtn.is-open > span {
  width: 0;
}
.menuBtn.is-open:before {
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.menuBtn.is-open:after {
  bottom: 50%;
  transform: translate(-50%, 50%) rotate(-45deg);
}
.c5-mv {
  width: 100%;
  margin: 0 0 96px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .c5-mv {
    margin: 0 0 13.3333333333vw;
  }
}
.c5-mv > * {
  width: 100%;
}
.c5-mv__logo {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -70%);
  z-index: 1;
  width: 538px;
}
@media only screen and (max-width: 767px) {
  .c5-mv__logo {
    width: 70%;
  }
}
.c5-mv__videoWrap {
  width: 100%;
  height: 500px;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 1500px) {
  .c5-mv__videoWrap {
    height: 360px;
  }
}
@media only screen and (max-width: 1200px) {
  .c5-mv__videoWrap {
    height: 250px;
  }
}
@media only screen and (max-width: 767px) {
  .c5-mv__videoWrap {
    height: 100vw;
  }
}
.c5-mv__videoWrap video {
  width: auto;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media only screen and (min-width: 1400px) {
  .c5-mv__videoWrap video {
    width: 100%;
    height: auto;
  }
}
.c5-mv__videoWrap__controls {
  position: absolute;
  bottom: 20px;
  left: 40px;
  display: flex;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  .c5-mv__videoWrap__controls {
    bottom: 2.6666666667vw;
    left: 2.6666666667vw;
  }
}
.c5-mv__videoWrap__control {
  margin-right: 25px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .c5-mv__videoWrap__control {
    margin-right: 6.6666666667vw;
  }
}
.c5-mv__videoWrap__control__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: relative;
  z-index: 1;
  transition: all .6 ease;
  width: 50px;
  height: 50px;
}
@media only screen and (max-width: 767px) {
  .c5-mv__videoWrap__control__btn {
    width: 9.6vw;
    height: 9.6vw;
  }
}
.c5-mv__videoWrap__control__btn img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform-origin: center;
  transform: translate(-50%, -50%) scale(0.48);
}
@media only screen and (min-width: 768px) {
  .c5-mv__videoWrap__control__btn:hover {
    opacity: .6;
  }
}
.c5-mv__videoWrap__control__btn:not(.is-active) {
  display: none !important;
}
.c5-mv__videoWrap__control__seek {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}


.c5-box01 {
  position: relative;
  margin: 96px auto 40px;
  color: #323232 !important;
  display: block;
  transition: opacity 2s;
}
.c5-box01:hover {
  opacity: .6;
}
@media only screen and (max-width: 767px) {
  .c5-box01 {
    margin: 0 auto 10.6666666667vw;
  }
}
.c5-box01__bg {
  width: 100%;
}
.c5-box01__body {
  width: 50%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c5-box01__title {
    height: 4.8vw;
  }
  .c5-box01__title img {
    height: 100%;
  }
}
.c5-box01__lead {
  margin: 0 0 25px;
  font-size: 18px;
}
@media only screen and (max-width: 767px) {
  .c5-box01__lead {
    margin: 0 0 2.6666666667vw;
    font-size: 3.4666666667vw;
  }
}
.c5-box01__playBtn {
  margin: 0 0 25px;
}
@media only screen and (max-width: 767px) {
  .c5-box01__playBtn {
    margin: 0 0 2.6666666667vw;
    width: 8vw;
    height: 8vw;
  }
}
.c5-box01__btn {
  margin: 0;
  border: solid 1px #323232;
  width: 100%;
  max-width: 200px;
  padding: 5.5px 10px;
  font-size: 15px;
  vertical-align: middle;
  transition: all 0.2s !important;
  display: inline-block;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .c5-box01__btn {
    margin-left: 30px;
  }
  .c5-box01__btn:hover {
    opacity: 1;
    color: white;
    background: #323232;
  }
}
@media only screen and (max-width: 767px) {
  .c5-box01__btn {
    color: white !important;
    border-color: white;
    max-width: 40vw;
    padding: 1.3333333333vw 2.6666666667vw;
    font-size: 3.2vw;
    text-align: center;
    margin: 5.3333333333vw auto;
  }
}
.c5-box01__btn > span {
  position: relative;
  padding-right: 2em;
  display: inline-block;
  line-height: 1.2;
}
.c5-box01__btn > span:before {
  content: "＞";
  display: block;
  position: absolute;
  width: 1em;
  height: 1.2em;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.c5-box02 {
  position: relative;
  margin: 0 auto 20px;
}
@media only screen and (max-width: 767px) {
  .c5-box02 {
    display: flex;
    flex-direction: column-reverse;
    margin: 0 auto 8vw;
    padding-bottom: 21.3333333333vw;
    border-bottom: 1px solid #888888;
  }
}
.c5-box02__body {
  text-align: center;
}
.c5-box02__title {
  margin: 0 0 25px;
  font-size: 35px;
}
@media only screen and (max-width: 767px) {
  .c5-box02__title {
    font-size: 5.8666666667vw;
    font-weight: normal;
    transform: translateY(-390%);
    margin: 0 0 -2.6666666667vw;
  }
}
.c5-box02__lead {
  margin: 0;
  font-size: 14px;
  line-height: 2.1428571429;
}
@media only screen and (max-width: 767px) {
  .c5-box02__lead {
    font-size: 3.7333333333vw;
    margin-top: 5.3333333333vw;
  }
}
.c5-box02__bg {
  width: 100%;
  height: auto;
}
.c5-sectionTitle01 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  margin: 0 0 24px;
}
@media only screen and (max-width: 767px) {
  .c5-sectionTitle01 {
    font-size: 5.8666666667vw;
    font-weight: normal;
  }
}
.c5-lead01 {
  line-height: 1.7692307692;
  margin: 0 0 50px;
}
.c5-note01 {
  position: relative;
  padding-left: 1em;
  font-size: 11px;
  line-height: 1.4;
  margin: 0 0 34px;
}
.c5-note01 > i {
  display: inline-block;
  position: absolute;
  left: 0;
  top: .7em;
  transform: translateY(-50%);
}
.c5-box03__title {
  font-size: 15px;
  font-weight: bold;
  overflow: hidden;
  margin: 0 0 15px;
}
.c5-box03__title > span {
  display: inline-block;
  position: relative;
}
.c5-box03__title > span:before {
  content: "";
  display: block;
  width: 100vw;
  height: 1px;
  background: #888888;
  position: absolute;
  right: -20px;
  top: 50%;
  transform: translate(100%, -50%);
}
.c5-list {
  margin: 0 0 15px;
  padding: 0;
  padding-left: 1.5em;
}
.c5-list > li:not(:last-child) {
  margin: 0 0 5px;
}
@media only screen and (max-width: 767px) {
  .c5-list > li:not(:last-child) {
    margin: 0 0 1.3333333333vw;
  }
}
.c5-btnWrap01 {
  margin: 30px 0;
}
@media only screen and (max-width: 767px) {
  .c5-btnWrap01 {
    margin: 8vw 0;
  }
}
.c5-btn01 {
  display: inline-block;
  width: 100%;
  text-align: center;
  padding: 13.5px 15px;
  border: solid 1px white;
  box-sizing: border-box;
  transition: all 0.2s !important;
  font-size: 15px;
}
@media only screen and (min-width: 768px) {
  .c5-btn01:hover {
    opacity: 1 !important;
    color: #000 !important;
    background: #dbdbdb !important;
  }
}
@media only screen and (max-width: 767px) {
  .c5-btn01 {
    padding: 2.6666666667vw;
    font-size: 3.4666666667vw;
  }
}
.c5-btn01 > span {
  position: relative;
  padding: 0 2em;
  display: inline-block;
  line-height: 1.2;
}
.c5-btn01 > span:before {
  content: "＞";
  display: block;
  position: absolute;
  width: 1em;
  height: 1.2em;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.c5-btn02 {
  display: inline-block;
  max-width: 280px;
  width: 100%;
  text-align: center;
  padding: 13.5px 15px;
  font-size: 15px;
  border: solid 1px white;
  box-sizing: border-box;
  transition: all 0.2s !important;
}
@media only screen and (min-width: 768px) {
  .c5-btn02:hover {
    opacity: 1 !important;
    color: #000 !important;
    background: #dbdbdb !important;
  }
}
@media only screen and (max-width: 767px) {
  .c5-btn02 {
    max-width: 56vw;
    padding: 1.0666666667vw;
    font-size: 3.4666666667vw;
  }
}
.c5-btn02 > span {
  position: relative;
  padding: 0 2em;
  display: inline-block;
  line-height: 1.2;
}
.c5-btn02 > span:before {
  content: "＞";
  display: block;
  position: absolute;
  width: 1em;
  height: 1.2em;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.c5-fbLink {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .c5-fbLink {
    font-size: 4vw;
    margin: 5.3333333333vw 0 0;
  }
}
.c5-fbLink > img {
  vertical-align: middle;
  margin-right: 1em;
}
@media only screen and (max-width: 767px) {
  .c5-fbLink > img {
    width: 6.4vw;
  }
  .c5-fbLink > img img {
    width: 100%;
  }
}
.c5-sectionTitle02 {
  text-align: center;
  font-size: 35px;
  font-weight: bold;
  margin: 0 0 80px;
}
@media only screen and (max-width: 767px) {
  .c5-sectionTitle02 {
    font-size: 6.4vw;
    margin: 0 0 10.6666666667vw;
  }
}
.c5-newsList {
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.c5-newsList + * {
  margin-top: 40px;
}
@media only screen and (min-width: 768px) {
  .c5-newsList {
    margin: 0 -20px;
  }
}
@media only screen and (min-width: 768px) {
  .c5-newsList__item {
    width: calc(33.3333% - 40px);
    margin: 60px 20px 0;
  }
  .c5-newsList__item:first-child, .c5-newsList__item:nth-child(2), .c5-newsList__item:nth-child(3) {
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .c5-newsList__item {
    margin: 13.3333333333vw 0 0;
    width: 100%;
  }
  .c5-newsList__item:first-child {
    margin-top: 0;
  }
  .c5-newsList__item img {
    width: 100%;
  }
}
.c5-newsBox__figure {
  margin: 0 0 15px;
  transition: all .2s;
  overflow: hidden;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c5-newsBox__figure {
    margin: 0 0 2.6666666667vw;
  }
}
.c5-newsBox__body {
  box-sizing: border-box;
}
.c5-newsBox__date {
  font-size: 14px;
  margin: 0 0 10px;
}
@media only screen and (max-width: 767px) {
  .c5-newsBox__date {
    font-size: 3.4666666667vw;
    margin: 0 0 1.3333333333vw;
  }
}
.c5-newsBox__title {
  font-size: 19px;
  font-weight: bold;
  margin: 0 0 4px;
}
@media only screen and (max-width: 767px) {
  .c5-newsBox__title {
    font-size: 4vw;
    margin: 0 0 1.3333333333vw;
  }
}
.c5-newsBox__detail {
  line-height: 1.7;
  margin-bottom: 20px;
}
@media only screen and (min-width: 768px) {
  .c5-newsBox__detail {
    min-height: 66px;
  }
}
.c5-newsBox__btn {
  padding: 10px;
  box-sizing: border-box;
  align-items: center;
  border: solid 1px white;
  text-align: center;
  transition: all .2s;
  line-height: 1.4;
  margin-top: 16px;
  display: inline-block;
  text-decoration: none;
  background-color: #323232;
  color: #fff;
}
@media only screen and (min-width: 768px) {
  .c5-newsBox__btn {
    min-width: 210px;
  }
}
@media only screen and (max-width: 767px) {
  .c5-newsBox__btn {
    display: block !important;
    width: 56vw;
    font-size: 3.4666666667vw;
    padding: 1.0666666667vw 1em;
    margin: 4vw auto 0;
  }
}
.c5-newsBox__btn > span {
  position: relative;
  padding-right: 1em;
  display: inline-block;
  line-height: 1.2;
}
.c5-newsBox__btn > span::before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  width: 8px;
  height: 8px;
}
@media only screen and (min-width: 768px) {
  .c5-newsBox:hover {
    opacity: 1 !important;
  }
  .c5-newsBox:hover .c5-newsBox__figure {
    opacity: .6;
  }
  .c5-newsBox:hover .c5-newsBox__btn {
    color: #000 !important;
    background: #ccc !important;
  }
  .c5-newsBox:hover .c5-newsBox__btn > span::before {
    border-color: #333;
  }
}
.c5-news__hook {
  display: table;
  margin: 125px auto 0;
  text-align: center;
  font-size: 15px;
  line-height: 1.4;
  padding-right: 2em;
  position: relative;
  border-bottom: solid 1px white;
  transition: all 0.2s !important;
  color: white !important;
  text-decoration: none !important;
}
.c5-news__hook:hover {
  opacity: .6;
}
@media only screen and (max-width: 767px) {
  .c5-news__hook {
    margin: 17.8666666667vw auto 0;
    font-size: 3.4666666667vw;
  }
}
.c5-news__hook:before {
  content: "";
  display: block;
  width: .8em;
  height: .8em;
  border-bottom: solid 1px white;
  border-right: solid 1px white;
  box-sizing: border-box;
  position: absolute;
  right: .2em;
  top: 30%;
  transform: translateY(-50%) rotate(45deg);
}
.s5-returnToTop {
  margin-top: 0;
}
#recruitment .c5-lead01 {
  margin: 0 0 30px;
}
@media only screen and (max-width: 767px) {
  #recruitment .c5-lead01 {
    margin: 0 0 8vw;
  }
}
#contact .c5-sectionTitle02 {
  margin-bottom: 50px;
}
#contact .c5-lead01 {
  margin: 0 0 40px;
}
@media only screen and (max-width: 767px) {
  #contact .c5-lead01 {
    margin: 0 0 8vw;
  }
}
@media only screen and (max-width: 767px) {
  #contact {
    font-size: 3.4666666667vw;
  }
}
.js-drawer__bg, .c5-menuBg, .c5-modalBg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 90;
}
.js-drawer__bg:not(.is-open):not(.is-active), .c5-menuBg:not(.is-open):not(.is-active), .c5-modalBg:not(.is-open):not(.is-active) {
  display: none;
}
.c5-modalBg {
  z-index: 100;
}
.js-more__item {
  transition: all .8s ease;
  opacity: 0;
}
.js-more__item:not(.is-show) {
  display: none;
}
.js-more__item.is-fadeIn {
  opacity: 1;
}
.c5-videoWrap {
  width: 100%;
  padding-top: 56.25%;
  position: relative;
}
.c5-videoWrap > * {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.c5-modalBox {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 102;
}
.c5-modalBox a:not([class]) {
  text-decoration: underline !important;
  transition: all 0.2s !important;
}
.c5-modalBox a:not([class]):hover {
  opacity: .6;
  color: #323232 !important;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox .c5-videoWrap {
    width: auto;
  }
}
.c5-modalBox:not(.is-active) {
  display: none;
}
.c5-modalBox__detail > *:first-child {
  margin-top: 0 !important;
}
.c5-modalBox__detail > *:last-child {
  margin-bottom: 0 !important;
}
.c5-modalBox__detail .c5-figure, .c5-modalBox__detail .c5-videoWrap {
  margin: 40px 0 15px;
}
.c5-modalBox__detail .c5-figure:first-of-type, .c5-modalBox__detail .c5-videoWrap:first-of-type {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__detail .c5-figure, .c5-modalBox__detail .c5-videoWrap {
    margin: 8vw -5.3333333333vw 4vw;
  }
}
.c5-modalBox__detail p, .c5-modalBox__detail ul {
  margin: 0 0 15px;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__detail p, .c5-modalBox__detail ul {
    margin: 0 0 4vw;
  }
}
.c5-modalBox--02 {
  max-width: 940px;
  width: 100%;
  background: #DBDBDB;
  color: #323232 !important;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox--02 {
    width: calc(100% - 10.6666666667vw);
    height: calc(100% - 10.6666666667vw);
  }
}
.c5-modalBox--02 .c5-modalBox__inner {
  width: 100%;
  max-width: 940px;
  max-height: 90vh;
  padding: 70px 100px;
  box-sizing: border-box;
  overflow-y: scroll;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox--02 .c5-modalBox__inner {
    max-height: 100%;
    padding: 8vw 5.3333333333vw 10.6666666667vw;
  }
}
.c5-modalBox__body {
  position: relative;
  line-height: 1.77;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__body {
    font-size: 3.4666666667vw;
  }
}
.c5-modalBox__closeIcon {
  position: absolute;
  top: 22px;
  right: 36px;
  z-index: 100;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__closeIcon {
    width: 3.2vw;
    line-height: 3.2vw;
    top: 1.3333333333vw;
    right: 0vw;
    padding: 2.6666666667vw;
  }
  .c5-modalBox__closeIcon img {
    width: 100%;
  }
}
.c5-modalBox__date {
  font-size: 14px;
  margin: 0 0 0;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__date {
    font-size: 3.4666666667vw;
    margin: 0 0 0;
  }
}
.c5-modalBox__title {
  font-size: 22px;
  font-weight: bold;
  margin: 0 0 16px;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__title {
    font-size: 4vw;
    margin: 0 0 2.1333333333vw;
  }
}
.c5-modalBox__closeBtn {
  font-size: 13px;
  padding: 4px 1em;
  border: solid 1px #323232;
  min-width: 170px;
  text-align: center;
  transition: all 0.2s !important;
  margin: 60px 0 0;
  line-height: 1.4;
  display: inline-block;
  text-decoration: none !important;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .c5-modalBox__closeBtn {
    margin-top: 13.3333333333vw 0 0;
    min-width: 32vw;
    padding: 1.3333333333vw 1em;
  }
}
@media only screen and (min-width: 768px) {
  .c5-modalBox__closeBtn:hover {
    opacity: 1;
    background: #323232;
    color: white;
  }
}
.c5-figure {
  margin: 0 0 30px;
}
.c5-figure img {
  max-width: 100%;
}
.c5-figure--col2 {
  display: flex;
}
.c5-figure--col2 img {
  max-width: 50% !important;
}
.c5-figure figcaption {
  font-size: 13px;
  margin: 15px 0 60px;
}
@media only screen and (max-width: 767px) {
  .c5-figure--col2 {
    display: block;
  }
  .c5-figure_01 {
    margin: 0 auto !important;
  }
}
.c5-caption {
  font-size: 13px;
  margin: 15px 0 60px;
}
@media only screen and (max-width: 767px) {
  #lead {
    margin-bottom: 13.3333333333vw;
  }
}
@media only screen and (max-width: 767px) {
  #recruitment {
    font-size: 3.4666666667vw;
  }
  #recruitment .c5-sectionTitle01 {
    font-size: 4vw;
    margin-bottom: 5.3333333333vw;
    font-weight: bold;
  }
  #recruitment .c5-lead01 {
    font-size: 3.4666666667vw;
  }
  #recruitment .c5-box03__title {
    margin-top: -2.6666666667vw;
  }
  #recruitment .c5-box03__title > span:before {
    display: none;
  }
  #recruitment .c5-list {
    font-size: 3.4666666667vw;
  }
}
@media only screen and (max-width: 767px) {
  #news {
    font-size: 3.4666666667vw;
  }
}
.c5-table {
  width: 100%;
  margin: 0 0 16px;
}
@media only screen and (max-width: 767px) {
  .c5-table {
    margin: 0 0 4.2666666667vw;
  }
}
.c5-table th {
  font-weight: normal;
  text-align: left;
  vertical-align: top;
}
@media only screen and (max-width: 767px) {
  .c5-table th {
    white-space: nowrap;
  }
}
.c5-table th:after {
  content: '：';
  display: inline-block;
}
.s5-frontLogin__notification {
  z-index: 101 !important;
}
.s5-frontLogin__favoritesFlyoutInner {
  z-index: 101;
}
.s5-frontLogin__notificationItem {
  z-index: 101;
}
.c5-ytPoster {
  display: block;
  width: 100%;
  height: 100%;
}
.c5-ytPoster img {
  width: 100%;
  height: 100%;
}
@media (orientation: landscape) {
  .c5-modalBox--01 {
    width: 120vh;
    height: 67.5vh;
  }
  .c5-modalBox--01 .c5-videoWrap {
    width: 100%;
    height: 100%;
    padding-top: 0;
    margin: 0 auto;
  }
}
@media (orientation: portrait) {
  .c5-modalBox--01 {
    width: 90vw;
    height: 50.625vw;
  }
  .c5-modalBox--01 .c5-videoWrap {
    width: 100%;
    height: 100%;
    padding-top: 0;
    margin: 0 auto;
  }
}
.c5-modalBox--01 .c5-videoWrap img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
.c5-modalBox--01 .c5-videoWrap a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
}
/* 2022.06.07 add */
.c5-newsBox {
  width: 100%;
  display: block;
}
.c5-newsBox:hover {
  text-decoration: none;
}
.c5-module_notitle .s5-header2 {
  display: none;
}
.c5-conteiner .s5-pickupLinks__eyecatcherV2::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20fill%3D'%23FFFFFF'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20x%3D'0px'%20y%3D'0px'%20width%3D'32px'%20height%3D'32px'%20viewBox%3D'0%200%2032%2032'%3E%3Cpath%20d%3D'M8%2C0l16%2C16L8%2C32C8%2C32%2C8%2C0%2C8%2C0z'%2F%3E%3C%2Fsvg%3E");
}

#casestudy .RelatedContents__Inner a,
#pickup .RelatedContents__Inner a {
	color: #fff !important;
}

/*2022.12.26_tomita-added*/
.c5-table02 {
    text-align: left;
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    display: flex;
    flex-basis: 100%;
    box-shadow: 0 -1px 0 0 rgba(0,0,0,0.1);
}
.c5-table02 thead {
	display: block;
	width: 32%;
}
.c5-table02 thead tr {
	display: block;
}
.c5-table02 thead tr th {
    background-color: rgba(0,0,0,.1);
    box-shadow: 1px 1px 0 0 rgba(0,0,0,0.1);
    padding: 5px 0 5px 8px;
    width: 100%;
    /*border-left: none;*/
    display: block;
  box-sizing: border-box;
}
.c5-table02 tbody {
	display: block;
	width: calc(100% - 32%);
	background: rgba(255,255,255,1.00);
}
.c5-table02 tbody tr {
	width: 100%;
}
.c5-table02 tbody tr td {
    box-shadow: 0 1px 0 0 rgb(0 0 0 / 10%);
    padding: 5px 0 5px 3px;
    width: 100%;
    display: block;
  box-sizing: border-box;
}
@media only screen and (min-width: 767px) {
	.c5-table02 {
		text-align: center;
		display: block;
	}
	.c5-table02 thead {
		width: 100%;
	}
	.c5-table02 thead tr {
		display: flex;
    	width: 100%;
	}
	.c5-table02 thead tr th {
		padding: 5px;
	}
	.c5-table02 tbody {
		width: 100%;
	}
	.c5-table02 tbody tr {
		display: flex;
    	width: 100%;
	}
	.c5-table02 tbody tr td {
    	padding: 5px;
    	height: initial;
    	box-shadow: 1px 1px 0 0 rgb(0 0 0 / 10%);
	}
}
/*2022.12.26_tomita-added*/

/*NEWS ----------------------------------------*/
.c5-bg_gray {
  background-color: #DBDBDB;
}
.c5-news_wrap {
  font-size: 16px;
  line-height: 1.6;
  padding: 60px 20px;
}
.c5-news_header {
  margin-bottom: 40px;
}
.c5-news_date {
  margin-bottom: 20px;
}
p + .c5-news_mv {
  margin-top: 60px;
}
.c5-news_mv {
  text-align: center;
  margin-bottom: 60px;
}
.c5-news_body a:not([class]) {
  text-decoration: underline !important;
}
.c5-news_body a:hover {
  color: #000 !important;
}
.c5-news_body .s5-table {
  width: 100%;
  background-color: #fff;
}
.c5-news_body .s5-table th,
.c5-news_body .s5-table td {
  border-color: #666;
}
.c5-news_body .s5-table th {
  background-color: #eee;
}
.c5-news_body * + .s5-heading3 {
  margin-top: 40px;
}
.c5-news_img {
  text-align: center;
  margin: 60px 0;
}
.c5-news_img._col2 {
  display: flex;
  margin-left: -20px;
  margin-right: -20px;
}
.c5-news_img._col2 > * {
  flex: 0 1 calc(50% - 40px);
  margin: 0 20px;
}
.c5-news_footer {
  text-align: center;
  margin-top: 60px;
}
.c5-news_profile {
  display: flex;
  margin-top: 40px;
}
.c5-news_profile p:first-child {
  margin-top: 0;
}
.c5-news_profile__img {
  margin-right: 20px;
  max-width: 20%;
}
.c5-box_simple {
  border: 1px solid #000;
  padding: 15px;
}
.c5-sp {
	display: none;
}

@media only screen and (max-width: 767px) {
  .c5-news_wrap {
    padding: 60px 0;
    font-size: 14px;
  }
  p + .c5-news_mv {
    margin-top: 30px;
  }
  .c5-news_mv {
    margin-bottom: 30px;
  }
  .c5-news_img._col2 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .c5-news_img._col2 > * {
    flex: 0 1 calc(50% - 10px);
    margin: 0 10px;
  }
  .c5-news_img {
    margin: 30px 0;
  }
  .c5-sp {
		display: block;
	}
  .c5-pc {
    display: none;
  }
}

.c5-about {	
}
.c5-aboutList {
	padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
	gap: 20px;
}
.c5-aboutList li {
	width: calc(50% - 10px);
}

.c5-about .image_box {
  width: 100%;
  display: block;
}

.c5-about .hover {
  position: relative;
  height: 328px;
}
.c5-about .hover figure {
  overflow: hidden;
  height: 100%;
}
.c5-about .hover figure img {
  display: block;
  width: 100%;
  transition: 0.3s;
}
.c5-about .hover figure figcaption {
  /*transition: 0.3s;
  transform: translate3d(0, 100%, 0);     下から出てくるアニメーション付けたいとき*/
  width: 100%;
  height: 40%;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.8);
  position: absolute; /*下から出てくるアニメーション付けたいときはこれ取る*/
  bottom: 0; /*下から出てくるアニメーション付けたいときはこれ取る*/
}
.c5-about .hover figure figcaption .txt_box {
  position: relative;
  width: 100%;
  height: 100%;
}
.c5-about .hover figure figcaption .txt_box > p {
  width: 100%;
  position: absolute;
  padding: 1rem 0;
  text-align: center;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.2rem;
  margin: 0;
}
.c5-about .hover figure figcaption .txt_box > p span {
  display: block;
  font-size: 14px;
  padding: 10px 20px;
  text-align: left;
}
/*.c5-about .hover:hover figcaption {
  transform: translate3d(0, -100%, 0);
}    下から出てくるアニメーション付けたいとき*/
.c5-aboutText {
	font-size: 1rem;
}
.c5-aboutText span {
	font-size: 14px;
}
@media only screen and (max-width: 1020px) {
.c5-about .hover {
  	height: 200px;
	}
.c5-about .hover figure figcaption {
  height: 53%;
	}
.c5-about .hover figure figcaption .txt_box > p {
    margin: 8px 0 0 0;
	}
}
@media only screen and (max-width: 767px) {
.c5-aboutList {
    display: block;
	gap: 0;
	}
.c5-aboutList li {
	width: 100%;
	}
.c5-aboutList li:not(:last-of-type) {
	margin-bottom: 30px;
	}
.c5-about .hover {
  	height: 200px;
	}
.c5-about .hover figure figcaption {
  height: 48%;
	}
.c5-about .hover figure figcaption .txt_box > p span {
 	font-size: 12px;
 	padding: 5px 10px;
	}
}







