@charset "UTF-8";
/*--------------
company会社概要
----------------*/
.company {
  background: url(../images/top/bg2.webp) no-repeat center bottom 20rem/contain;
}

.company {
  /*sec02*/
  /*sec03*/
}
.company .under-sec {
  padding-top: clamp(6rem, 8.8888888889vw, 10rem);
}
.company .company-sec01-contents {
  margin-top: clamp(6rem, 13.3333333333vw, 18rem);
  width: 100%;
}
.company .company-sec01-list {
  border-top: 1px solid #fff;
  padding-top: clamp(1rem, 2.7777777778vw, 4rem);
  padding-bottom: clamp(2rem, 3.3333333333vw, 4rem);
  gap: 6rem;
}
.company .company-sec01-list:last-of-type {
  border-bottom: 1px solid #fff;
}
.company .company-sec01-name {
  font-size: clamp(1.6rem, 1.8888888889vw, 1.8rem);
  font-weight: bold;
  letter-spacing: 0.1em;
}
.company .company-sec01-txt {
  font-size: clamp(1.6rem, 1.8888888889vw, 1.8rem);
  letter-spacing: 0.2em;
}
.company .company-sec01-map::before {
  content: "|";
  margin: 0 3rem;
}
.company .company-sec01-map a {
  position: relative;
}
.company .company-sec01-map a::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  width: 12px;
  height: 16px;
  background-image: url("../images/company/icon-map.webp");
  background-repeat: no-repeat;
  background-size: contain;
}
.company .company-sec02-contents {
  margin-block: clamp(3rem, 3.8888888889vw, 4rem);
}
.company .company-sec02-list {
  position: relative;
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(36rem, 1fr));
}
.company .company-sec02-item {
  background-color: var(--mainColor);
  padding-left: 2rem;
  padding-right: 2rem;
  height: 14.5rem;
  display: flex;
  align-items: center;
}
.company .company-sec02-inner {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}
.company .company-sec02-txt {
  font-size: clamp(2rem, 2.4444444444vw, 2.4rem);
  font-weight: bold;
  line-height: 1.75;
}
.company .company-sec02-txt::before, .company .company-sec02-txt::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
}
.company .company-sec02-txt::before {
  margin-top: calc((1 - 2.2) * 0.5em);
}
.company .company-sec02-txt::after {
  margin-bottom: calc((1 - 2.2) * 0.5em);
}
.company .company-sec02-img-list {
  margin-top: clamp(6rem, 8.8888888889vw, 10rem);
}
.company .company-sec03 {
  position: relative;
  padding-bottom: clamp(57rem, 86.1111111111vw, 98rem);
}
.company .company-sec03::before {
  position: absolute;
  bottom: 13vw;
  right: 5.2vw;
  content: "";
  display: inline-block;
  width: 29.9vw;
  height: 9.2vw;
  background-image: url("../images/company/company-dream.webp");
  background-repeat: no-repeat;
  background-size: contain;
}
.company .company-sec03::after {
  position: absolute;
  bottom: 7vw;
  right: 26vw;
  content: "";
  display: inline-block;
  width: 18.75vw;
  height: 18.75vw;
  background-image: url("../images/common/shine02.webp");
  background-repeat: no-repeat;
  background-size: contain;
}
.company .company-sec03-contents {
  position: relative;
  gap: 3.5rem;
  width: 67%;
  margin: 0 auto;
  margin-top: clamp(6rem, 13.3333333333vw, 18rem);
}
.company .company-sec03-contents::before {
  position: absolute;
  bottom: -5vw;
  left: 0;
  content: "";
  display: inline-block;
  width: 19.9vw;
  height: 4.1vw;
  background-image: url("../images/company/company-name.webp");
  background-repeat: no-repeat;
  background-size: contain;
}
.company .company-sec03-l {
  width: 30%;
}
.company .company-sec03-r {
  width: 70%;
}
.company .company-sec03-txt {
  font-size: clamp(1.6rem, 1.8888888889vw, 1.8rem);
  letter-spacing: 0.12em;
  line-height: 1.8888888889;
}
.company .company-sec03-txt:not(:first-child) {
  margin-top: 5rem;
}
.company .company-sec03-name {
  margin-top: 2rem;
}
.company .company-sec03-post {
  font-size: clamp(1.6rem, 1.8888888889vw, 1.8rem);
  line-height: 1.8888888889;
  letter-spacing: 0.2em;
}
.company .company-sec03-ceo {
  font-size: clamp(1.6rem, 2vw, 2rem);
  line-height: 1.7;
  letter-spacing: 0.2em;
}

/*---//company---*/
/*-----single event-----*/
.event-cat-area {
  justify-content: center;
  gap: 3.5rem;
  margin-top: clamp(8.5rem, 13.3333333333vw, 15rem);
}

.eventcat-item {
  display: flex;
  gap: 3.5rem;
}

.eventcat-item a {
  display: block;
  font-size: clamp(1.6rem, 2.2222222222vw, 2.4rem);
}
.eventcat-item a::after {
  content: "|";
  margin-left: 3.5rem;
}

.event-select {
  width: 247px;
  padding: 1rem;
  text-align: center;
  border: none;
  border-radius: 0.5rem;
  background-color: #e4e4e4;
}

.single-event-contents {
  margin-top: clamp(12.5rem, 16.6666666667vw, 20rem);
  padding-bottom: clamp(8rem, 13.3333333333vw, 14rem);
}

.single-event-contentsBOX {
  margin-top: clamp(1.5rem, 5.5555555556vw, 10rem);
}

.single-event-top {
  justify-content: flex-start;
  gap: 5rem;
}

.single-event-cat {
  font-size: clamp(1.6rem, 2.2222222222vw, 2.5rem);
  font-weight: bold;
  color: var(--mainColor);
  padding-bottom: clamp(1rem, 1.6666666667vw, 2rem);
  border-bottom: 2.5px solid var(--mainColor);
}
.single-event-cat::before, .single-event-cat::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
}
.single-event-cat::before {
  margin-top: calc((1 - 1.75) * 0.5em);
}
.single-event-cat::after {
  margin-bottom: calc((1 - 1.75) * 0.5em);
}

.single-event-tit {
  margin-top: clamp(1.5rem, 2.2222222222vw, 2.5rem);
  font-size: clamp(2.6rem, 3.8888888889vw, 4.4rem);
  font-weight: bold;
  line-height: 1.3461538462;
  letter-spacing: 0.1em;
}

.single-event-gest {
  font-size: clamp(1.8rem, 2.4444444444vw, 2.8rem);
  margin-top: 2rem;
}

.single-event-gest span{
  display: block;
}

.single-event-write {
  margin-top: clamp(2rem, 2.7777777778vw, 3.5rem);
  margin-bottom: clamp(2rem, 2.7777777778vw, 3.5rem);
  font-size: clamp(1.6rem, 2vw, 2.2rem);
  line-height: 1.3636363636;
  letter-spacing: 0.1em;
}

.single-event-txt {
  font-size: clamp(1.6rem, 2vw, 2.2rem);
  margin-top: clamp(1.5rem, 2.2222222222vw, 2.5rem);
}

.single-event-youtube-flex {
  justify-content: space-between;
}

.single-event-youtube {
  margin-top: clamp(3rem, 5vw, 6rem);
}
.single-event-youtube iframe {
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
}

.single-event-youtube01,
.single-event-youtube02 {
  width: calc((100% - 5.5rem) / 2);
  height: 100%;
}

.single-event-bottom {
  padding-top: clamp(4rem, 7.7777777778vw, 10rem);
  padding-bottom: clamp(4rem, 6.6666666667vw, 8rem);
  gap: 17rem;
  justify-content: center;
  align-items: flex-end;
}

.single-event-sns {
  width: calc((100% - 17rem) / 2);
}
.single-event-sns h2 {
  margin-top: clamp(2rem, 2.7777777778vw, 3rem);
  font-weight: bold;
  font-size: clamp(2rem, 2.7777777778vw, 3rem);
  text-align: center;
}
.single-event-sns h2 span {
  color: var(--mainColor);
  font-weight: bold;
}
.single-event-sns p {
  font-size: clamp(1.1rem, 1.4444444444vw, 1.6rem);
  font-weight: bold;
  text-align: center;
}

.single-event-notes {
  width: calc((100% - 17rem) / 2);
  font-size: clamp(1.4rem, 1.7777777778vw, 1.8rem);
  line-height: 1.6666666667;
}

.single-event-notes-txt:not(:first-of-type) {
  margin-top: clamp(3rem, 3.8888888889vw, 4rem);
}

.single-event-sns-list {
  margin-top: clamp(2.5rem, 3.3333333333vw, 4rem);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(16.8rem, 1fr));
  gap: 3rem;
}

.single-event-sns-item {
  text-align: center;
}

.pagination-flex {
  gap: 12rem;
  justify-content: center;
}

.pagination a {
  background-color: var(--mainColor);
  padding: 0.5rem 1.5rem;
}

.event-select-box {
  position: relative;
}

.event-select-box::after {
  content: "▼";
  position: absolute;
  color: black;
  right: 9px;
  top: 3px;
}

.single-event span.new {
  margin-bottom: 5px;
  display: flex;
  gap: 10px;
  color: var(--mainColor);
  font-size: 2.5rem;
  font-weight: bold;
  align-items: center;
}
.single-event span.new::before, .single-event span.new::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
}
.single-event span.new::before {
  margin-top: calc((1 - 1.75) * 0.5em);
}
.single-event span.new::after {
  margin-bottom: calc((1 - 1.75) * 0.5em);
}

.single-event-details {
  width: 40.5%;
}

.single-event-img {
  width: 51.5%;
}
:root :where(p.has-background) {
    padding: 1em;
}
/*-------//single event--------*/
/*# sourceMappingURL=style02.css.map */