@charset "utf-8";

/********************
  COMPANY CSS
********************/


.companyinfo .container{
  width: 100%;
}

.companyinfo #page-footer .container{
  width: 79.166666vw;
}

@media (max-width: 979px){
  .companyinfo #page-footer .container{
    width: auto;
  }
}

.corporate-wrapper {
  max-width: 1440px;
  margin: 0 auto;
  margin-top: 24px;
}

.corporate-about {
  position: relative;
  margin-bottom: 200px;
}

.corporate-title {
  display: flex;
  flex-direction: column;
  position: absolute;
  left: 110px;
  margin-top: 74px;
}

.corporate-main-title {
  display: flex;
  flex-direction: column;
  z-index: 1;
}

.corporate-main-title h1 {
  font-size: 70px;
  line-height: 70px;
  color: #000000;
  letter-spacing: 7px;
}

.corporate-main-title span {
  font-size: 26px;
  letter-spacing: 3.64px;
  color: #000000;
  margin-bottom: 18px;
}

.corporate-second-title {
  display: flex;
  align-items: flex-end;
  writing-mode: vertical-rl;
  margin-top: 150px;
  z-index: 1;
}

.corporate-second-title__about {
  font-size: 18px;
  color: #000000;
  letter-spacing: 2px;
  margin-bottom: 0;
}

.corporate-second-title img {
  margin-top: 27px;
}

.corporate-movie-wrapper {
  display: flex;
  justify-content: flex-end;
}

.corporate-movie video{
  width: 82.5%;
  height: 671px;
  object-fit: cover;
}

.corporate-movie {
  position: relative;
  display: flex;
  justify-content: flex-end;
}

.corporate-movie-btn {
  position: absolute;
  bottom: 45px;
  right: 45px;
  border: 1px solid #ffffff;
  border-radius: 70px;
  color: #ffffff;
  font-size: 16px;
  letter-spacing: 1.6px;
}

.corporate-movie-span {
  display: flex;
  align-items: center;
  margin-left: 0;
  color: #ffffff;
}

.corporate-movie-btn img {
  margin-right: 10px;
}

.corporate-movie-btn a{
  color: #ffffff;
  display: block;
  width: 100%;
  padding: 15px 35px;
  border-radius: 70px;
}

/* コンセプト */
.corporate-concept {
  display: flex;
  justify-content: space-between;
  margin-bottom: 198px;
  /* max-width: 1290px; */
  margin-left: auto;
}

.corporate-concept-title {
  display: flex;
  flex-direction: column;
  margin-top: 104px;
  /* margin-left: 51%; */
  margin-left: 42%;
  margin-bottom: 184px;
}

.corporate-concept-title span {
  font-size: 64px;
  line-height: 64px;
  letter-spacing: 8.96px;
  color: #000000;
}

.corporate-concept-title h2 {
  font-size: 24px;
  letter-spacing: 2.88px;
  color: #000000;
  margin-bottom: 18px;
}

.corporate-right-contents {
  margin-top: 204px;
  font-size: 20px;
  color: #000000;
}

.corporate-right-image {
  display: flex;
  justify-content: flex-end;
}

.corporate-right-sentence {
  margin-right: 206px;
  margin-bottom: 70px;
}
.corporate-right-sentence.not-margin,
.corporate-right-sentence.not-margin p {
  margin-bottom: 0;
}

.corporate-right-sentence p {
  margin-bottom: 24px;
}

.corporate-middle-image {
  display: flex;
  justify-content: center;
  max-width: 1440px;
  height: auto;
  margin: 0 auto;
  margin-bottom: 200px;
}
.corporate-left-image img,
.corporate-middle img {
  align-self: flex-start;
}

.corporate-summary {
  max-width: 1140px;
  margin: 0 auto;
  margin-bottom: 150px;
}

.corporate-page-header {
  font-size: 20px;
  margin: 0 0 44px;
  border-bottom: none;
  padding-bottom: 0;
}

.corporate-page-header h4 {
  font-weight: bold;
}

.corporate-table-wrapper {
  border-top: 1px solid #ececec;
  border-bottom: none;
}

.corporate-table {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 28px 0;
  border-bottom: 1px solid #ececec;
}

.corporate-th {
  width: 30%;
}

.corporate-th__text {
  font-size: 14px;
  margin-bottom: 0;
}

.corporate-td {
  width: 70%;
}

.corporate-stores a {
  text-decoration: underline;
}

.corporate-td p {
  margin: 0;
  font-size: 14px;
}

.affiliates-company-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.affiliates-company {
  display: flex;
  flex-direction: column;
  margin-right: 0%;
  width: calc(100% / 3 - 20px);
  margin-right: 20px;
}

.affiliates-company p {
  font-size: 12px;
  margin-bottom: 10px;
}

.affiliates-company img {
  margin-left: 26px;
}

.affiliates-company .gray-letter {
  color: #888888;
}

.affiliates-company .holiday {
  text-decoration: underline;
}

.corporate-recruit-information {
  /* width: 72%; */
  max-width: 1140px;
  margin: 0 auto;
  margin-bottom: 200px;
}

.corporate-recruit-inner {
  position: relative;
}

.corporate-recruit-inner img {
  width: 100%;
}

.corporate-recruit-title {
  width: 100%;
  position: absolute;
  text-align: center;
  top: 44%;
  left: 51%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  letter-spacing: 9px;
  color: #ffffff;
  font-size: 60px;
}

.corporate-recruit-sentence {
  position: absolute;
  text-align: center;
  top: 62%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  color: #ffffff;
  font-size: 18px;
  display: flex;
  align-items: center;
}

.corporate-recruit-sentence img {
  width: 15px;
  margin-left: 12px;
}

.corporate-concept-inner:nth-child(1) {
  margin-right: 90px;
}

@media (max-width: 979px) {
  .corporate-wrapper {
    margin-top: 35px;
  }

  .corporate-title {
    left: 28px;
    margin-top: 37px;
  }

  .corporate-main-title span {
    font-size: 18px;
    letter-spacing: 2.52px;
    margin-bottom: 0;
  }

  .corporate-main-title h2 {
    font-size: 42px;
    letter-spacing: 3.8px;
    line-height: 50px;
  }

  .corporate-second-title {
    margin-top: 180px;
  }

  .corporate-second-title__about {
    font-size: 15px;
    letter-spacing: 2.3px;
  }

  .corporate-movie-wrapper {
    margin-left: 67px;
  }

  .corporate-movie-btn {
    bottom: 24px;
    right: 24px;
    font-size: 11px;
  }

  .corporate-movie-btn a{
    padding: 5px 20px;
  }

  .corporate-movie video{
    width: 100%;
    height: 520px;
  }

  .corporate-about {
    margin-bottom: 100px;
  }

  .corporate-concept {
    flex-direction: column;
  }

  .corporate-concept-title {
    margin-top: 0;
    margin-left: 30px;
    margin-bottom: 74px;
  }

  .corporate-concept-title span {
    font-size: 35px;
    line-height: 37px;
    letter-spacing: 4.5px;
  }

  .corporate-concept-title h2 {
    font-size: 18px;
    letter-spacing: 1px;
    margin-bottom: 12px;
  }

  .corporate-left-image {
    display: flex;
    justify-content: flex-end;
    margin-left: 60px;
  }

  .corporate-right-contents {
    font-size: 18px;
    margin: 80px 0 48px auto;
    padding-right: 30px;
  }

  .corporate-right-sentence {
    font-size: 18px;
    margin-right: 0;
    margin-bottom: 48px;
  }

  .corporate-right-sentence p {
    margin-bottom: 14px;
  }

  .corporate-concept {
    margin-bottom: 30px;
  }

  .corporate-middle-image {
    margin-right: 45px;
    margin-bottom: 80px;
  }

  .corporate-summary {
    width: 100%;
    padding: 0 25px;
    margin-bottom: 62px;
  }

  .corporate-page-header {
    font-size: 17px;
    margin-bottom: 30px;
  }

  .corporate-table-wrapper {
    border-top: none;
  }

  .corporate-table {
    flex-direction: column;
    align-items: flex-start;
    border-bottom: none;
    padding: 14px 0;
  }

  .corporate-th {
    width: 100%;
  }

  .corporate-th h4 {
    font-size: 12px;
    color: #555555;
    margin-bottom: 7px;
  }

  .corporate-td {
    width: 100%;
  }

  .corporate-td p {
    font-size: 12px;
  }

  .affiliates-company-wrapper {
    flex-direction: column;
  }

  .affiliates-company {
    width: 100%;
    margin-bottom: 13px;
  }

  .affiliates-company .gray-letter {
    font-size: 11px;
  }

  .affiliates-company p {
    margin-bottom: 4px;
  }

  .corporate-recruit-information {
    width: 100%;
    padding: 0 25px;
    margin-bottom: 84px;
  }

  .corporate-recruit-title {
    left: 50%;
    letter-spacing: 4px;
    font-size: 31px;
  }

  .corporate-recruit-sentence {
    top: 56%;
    font-size: 15px;
  }

  .corporate-concept-inner:nth-child(1) {
    margin-right: 0;
  }
  .corporate-concept-right-inner{
    display: flex;
  }
}

@media (max-width: 1200px) and (min-width: 980px) {
  .corporate-concept-title {
    margin-left: 5%;
  }

  .corporate-right-sentence {
    margin-right: 0;
  }
}

@media (max-width: 368px) {
  .corporate-second-title {
    margin-top: 85px;
  }
}

/* English page */

.english-corporate-right-contents {
  max-width: 920px;
  margin-top: 192px;
  font-size: 20px;
  color: #000000;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: flex-end;
}

.english-corporate-right-sentence {
  width: 57%;
  margin-right: 180px;
  margin-bottom: 70px;
}

.english-corporate-right-sentence p {
  line-height: 49px;
}

@media (max-width: 979px) {
  .english-corporate-right-contents {
    font-size: 18px;
    margin: 80px 0 48px 30px;
  }

  .english-corporate-right-sentence {
    width: 85%;
    margin-bottom: 25px;
    margin-right: 0px;
  }
  .english-corporate-right-sentence p {
    margin-right: 30px;
    line-height: 34px;
  }
}

@media screen and (min-width: 1160px){
.company-br-sp {display: none; }
}

@media screen and (max-width: 1160px){
.company-br-pc {display: none; }
}

/* FULL MOVIE */
.hide-area{
	display: none;
}

.modaal-close:after, 
.modaal-close:before{
	background:#ccc;	
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
	background:#666;
}
.modaal-video .modaal-inner-wrapper{
	padding:0;
}

.modaal-video-wrap source{
  width: 100%;
}

@media (max-width: 979px) {
.modaal-video-wrap{
  /* margin: auto 10px; */
  margin: 0 !important;
}

.modaal-video-container{
  max-width: 100%;
  max-height: 100%; 
}
}
