/* Main Common */
.sec:not(.sec-banner) {
  padding-top: 200px;
}

.sec:last-child {
  padding-bottom: 200px;
}

.hd {
  position: relative;
  padding-bottom: 20px;
  border-bottom: 1px solid #A8A9AC;
}

.hd-container {
  max-width: 1750px;
  width: 100%;
  margin: 0 auto;
  padding: 0px 15px;
}

.hd-title {
  font-size: 3.2rem;
  font-weight: 400;
}

@media screen and (max-width:1200px) {
  .sec:not(.sec-banner) {
    padding-top: 120px;
  }

  .sec:last-child {
    padding-bottom: 160px;
  }

  .hd-title {
    font-size: 2.6rem;
  }
}
@media screen and (max-width:1024px) {
  .sec:not(.sec-banner) {
    padding-top: 100px;
  }

  .sec:last-child {
    padding-bottom: 140px;
  }

  .hd  {
    padding-bottom: 12px;
  }
}
@media screen and (max-width:768px) {
  .sec:not(.sec-banner) {
    padding-top: 80px;
  }

  .sec:last-child {
    padding-bottom: 120px;
  }

  .hd-title {
    font-size: 2.2rem;
  }
}
@media screen and (max-width:576px) {
  .sec:not(.sec-banner) {
    padding-top: 60px;
  }

  .sec:last-child {
    padding-bottom: 100px;
  }

  .hd  {
    padding-bottom: 6px;
  }

  .hd-title {
    font-size: 2rem;
  }
}


/* Main Banner */
.sec-banner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.sec-banner .banner {
  position: relative;
  width: 100%;
  height: calc(var(--vh, 1vh)*100);
	height: 100svh;
  overflow: hidden;
}

.sec-banner .air-text .context {
  position: absolute;
  left: 50%;
  bottom: 10.41667vh;
  transform: translateX(-50%);
  max-width: 1750px;
  width: 100%;
  margin: 0 auto;
  padding: 0px 15px;
  z-index: 5;
}

.sec-banner .air-text .title {
  font-size: 8.6rem;
  color:#fff;
  margin-bottom: 5px;
  letter-spacing: -0.43rem;
}

.sec-banner .air-text .text {
  font-size: 2.2rem;
  color:#fff;
  line-height:1.5;
}

.sec-banner .banner .background {
  width: 100%;
  height: 100%;
  background-repeat:  no-repeat;
  background-position: center;
  background-size: cover;
}

.sec-banner .banner .background.bg01{
  background-image: url('/asset/img/main/main-banner-im.jpg');
}

.sec-banner .banner .background.bg02{
  background-image: url('/asset/img/main/main_visual02.png');
}

.sec-banner .banner .background.bg03{
  background-image: url('/asset/img/main/main_visual03.png');
}

.sec-banner .banner .background.bg04{
  background-image: url('/asset/img/main/main_visual04.png');
}

.sec-banner .banner .background.bg05{
  background-image: url('/asset/img/main/main_visual05.png');
}

.sec-banner .swiper-slide-active .banner .background{
  animation:scale-ani02 3s ease forwards;
}

@media screen and (max-width:1366px) {
  .sec-banner .banner .title {
    font-size: 6.8rem;
  }
}
@media screen and (max-width:1200px) {
  .sec-banner {
    height: calc(var(--vh, 1vh)*100 - 60px);
    height: calc(100svh - 60px);
  }

  .sec-banner .air-text .context {
    bottom: 6vh;
  }

  .sec-banner .air-text .title {
    font-size: 6rem;
  }

  .sec-banner .air-text .text {
    font-size: 2rem;
  }
}
@media screen and (max-width:1024px) {
  .sec-banner .air-text .context {
    top:50%;
    bottom: unset;
    transform: translate(-50%,-50%);
    text-align: center;
  }
}
@media screen and (max-width:768px) {
  .sec-banner .air-text .title {
    font-size: 4.8rem;
  }

  .sec-banner .air-text .text {
    font-size: 1.8rem;
  }
}
@media screen and (max-width:576px) {
  .sec-banner .air-text .title {
    font-size: 4rem;
  }

  .sec-banner .air-text .text {
    font-size: 1.4rem;
  }
}


/* Main About */
.sec-about .din {
  display: flex;
  gap:130px;
  max-width: 1750px;
  width: 100%;
  margin: 100px auto;
  padding: 0px 15px;
}

.sec-about .img {
  width: 58%;
  position: relative;
}

.sec-about .img img{
  position: relative;
  opacity: 0;
  width: 100%;
  height: 100%;
  z-index: 0; 
  transition: z-index 1s;
}
.sec-about .img img.air-img{
  position: absolute;
  left: 0;
  top: 0;
}


.sec-about .img img.po-si01{
  z-index: 1;
  opacity: 1;
}

.sec-about .txt {
  width: 25.1%;
}

.sec-about .dl {
  display:flex;
  max-width: 1750px;
  width: 100%;
  margin: 0 auto;
  /* margin: 100px auto; */
  /* padding: 0px 15px; */
  border-top: 1px solid #A8A9AC;
}

.sec-about .dl dd {
  flex:1 1;
  min-height: 320px;
  padding: 50px 3.47%;
}

.sec-about .dl dd:not(:last-child){
  border-right: 1px solid #A8A9AC;
}

.sec-about .dl p.count {
  margin-bottom: 40px;
}

@media screen and (max-width:1366px) {
  .sec-about .dl dd {
    padding: 50px 3%;
  }

}
@media screen and (max-width:1200px) {
  .sec-about .din {
    gap:60px;
  }

  .sec-about .txt {
    width: 30%;
  }

  .sec-about .dl dd {
    min-height: 280px;
  }
}
@media screen and (max-width:1024px) {
  .sec-about .din {
    flex-wrap: wrap;
    gap:40px;
    margin: 80px auto;
  }

  .sec-about .img {
    width: 100%;
  }

  .sec-about .txt {
    width: 100%;
  }

  .sec-about .dl {
    flex-wrap: wrap;
  }

  .sec-about .dl dd {
    flex:1 1 100%;
    min-height: auto;
    padding: 36px 20px;
    text-align: center;
  }

  .sec-about .dl dd:not(:last-child) {
    border-right: 0px;
    border-bottom: 1px solid #A8A9AC;
  }

  .sec-about .dl p.count {
    margin-bottom: 20px;
  }
}
@media screen and (max-width:768px) {
  .sec-about .din {
    margin: 60px auto;
  }

  .sec-about .dl p.count {
    margin-bottom: 12px;
  }
}
@media screen and (max-width:576px) {
  .sec-about .din {
    flex-wrap: wrap;
    gap:20px;
    margin: 40px auto;
  }

  .sec-about .dl dd {
    padding: 20px 12px;
  }

  .sec-about .dl p.count {
    margin-bottom: 6px;
  }
}


/* Main Global */
.sec-global .bd {
  margin-top: 60px;
}

.sec-global .list {
  display: flex;
  gap:40px;
}

.sec-global .list li {
  flex:1 1;
}
.sec-global .list .context .color-dark2{
line-height: 1.44;
letter-spacing: -0.036rem;
}


.sec-global .list .img {
  padding-bottom: 30px;
}

@media screen and (max-width:1200px) {
  .sec-global .list {
    gap:30px;
  }
}
@media screen and (max-width:1024px) {
  .sec-global .list {
    flex-wrap: wrap;
  }

  .sec-global .list li {
    flex:1 1 calc(50% - 15px);
  }

  .sec-global .list .img {
    padding-bottom: 20px;
  }
}
@media screen and (max-width:768px) {
  .sec-global .list {
    gap:30px 20px;
    max-width: 680px;
    width: 100%;
    margin: 0 auto;
  }

  .sec-global .list li {
    flex:1 1 calc(50% - 10px);
  }
}
@media screen and (max-width:576px) {
  .sec-global .list li {
    flex:1 1 100%;
    text-align: center;
  }

  .sec-global .list .img {
    display: flex;
    justify-content: center;
    padding-bottom: 12px;
  }

  .sec-global .list .img img{
    width: 100%;
    max-width: none;
  }
  .sec-global .list .context .m-text-left{
    text-align: left;
  }
  .sec-global .list .context .m-text-justify{
    text-align: justify;
  }
}


/* Main Hover */
.sec-hover{
  position: relative;
}
.sec-hover .din {
  display: flex;
  justify-content: flex-end;
}

.sec-hover .list {
  width: 66%;
  border-top: 1px solid #A8A9AC;
}

.sec-hover .list li {
  border-bottom: 1px solid #A8A9AC;
}

.sec-hover .list a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  width: 100%;
  height: 110px;
  transition: var(--transition-basic2);
  transition-duration: .4s;
}

.sec-hover .list a::after {
  content: "";
  display: block;
  position: absolute;
  top:50%;
  right:40px;
  transform: translateY(-50%) rotate(0deg);
  width: 24px;
  height: 23px;
  background: url('/asset/img/main/main-hover-im.png') no-repeat center;
}

.sec-hover .list a p {
  transition: var(--transition-basic2);
  transition-duration: .4s;
}

@media screen and (min-width:1201px) {
  /* .sec-hover .list li:hover a {
    background-color: #eee;
  } */

  .sec-hover .list li:hover a p {
    transform: translateX(20px);
  }
}
@media screen and (max-width:1200px) {

}
@media screen and (max-width:1024px) {
  .sec-hover .list {
    width: 100%;
  }

  .sec-hover .list a {
    height: 90px;
  }

  .sec-hover .list a::after {
    right: 30px;
    background-size: auto 21px;
  }
}
@media screen and (max-width:768px) {
  .sec-hover .list a {
    height: 70px;
  }

  .sec-hover .list a::after {
    right: 20px;
    width: 21px;
    background-size: auto 19px;
  }
}
@media screen and (max-width:576px) {
  .sec-hover .list a {
    height: 60px;
  }

  .sec-hover .list a::after {
    right: 12px;
    width: 19px;
    background-size: auto 17px;
  }
}


/* Main News */
.sec-news .news-widget {
  position: relative;
}

.sec-news .full-screen {
  width: 100%;
}

.sec-news .full-screen.absolute {
  position: absolute;
  top:0;
  left: 0;
}

.sec-news .full-screen-flex {
  display: flex;
}

.sec-news .slide-item {
  width: 36%;
}

.sec-news .slide-item.gpu {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
}

.sec-news .slide-item.flex-none {
  flex:none;
}

.sec-news .slide-item.relative {
  position: relative;
}

.sec-news .slide-item.h100 {
  height: 100%;
}

.sec-news .slide-item .thumb {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 66.666666666667%;
  overflow: hidden;
}

.sec-news .slide-item .thumb p {
  position: absolute;
  left: 20px;
  bottom: 20px;
  z-index: 2;
  font-size:1.4rem;
  color:#fff;
  opacity:0;
  transition-property:opacity;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:0.3s;
}

.sec-news .slide-item .thumb img {
  display: block;
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height: 100%;
}

.sec-news .slide-item .subject {
  line-height: 1.5;
}

.sec-news .full-screen-bak {
  padding-bottom: 20px;
}

.sec-news .full-screen-bak .cont {
  clip: rect(0, 0, 0, 0);
  border-width: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.sec-news .full-screen-bak .slide-item.active .thumb p {
  opacity: 1;
}

.sec-news .full-screen-hidden {
  overflow: hidden;
}

.sec-news .full-screen-text {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.sec-news .full-screen-text .text-item {
  grid-row-start:1;
  grid-column-start:1;
  opacity:0;
  transition-property:opacity;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:0.3s;
}

.sec-news .full-screen-text .cont {
  width: 36%;
  margin: 0 auto;
  text-align: center;
}

.sec-news .full-screen-text .text-item.active {
  opacity: 1;
}


@media screen and (max-width:1200px) {
  .sec-news .full-screen-text .cont {
    width: 68%;
  }
}
@media screen and (max-width:1024px) {
  .sec-news .full-screen-bak {
    padding-bottom: 12px;
  }
}
@media screen and (max-width:768px) {

}
@media screen and (max-width:576px) {
  .sec-news .full-screen-bak {
    padding-bottom: 6px;
  }
}

/* Popup */
#popup {
  position: relative;
}

.popup-layer {
  z-index: 10000;
  position: absolute;
  background: #fff;
  box-shadow: 0px 0px 20px 0px rgba(0,0,0,.25);
  animation: popup-fade .65s ease-in-out .35s forwards;
  opacity: 0;
  max-width:800px;
}

@keyframes popup-fade {
  0% { opacity: 0;
    -webkit-transform: translateY(25px);
    -ms-transform: translateY(25px);
    transform: translateY(25px); }
  100% { opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
}
.popup-layer__body {
  background: #fff;
}

.popup-layer__body img {
  display: block;
  margin: 0 auto;
  border: none;
  max-width: 100%;
}

.popup-layer__foot {
  background: #424242;
}

.popup-layer__foot ul {
  display:flex;
  flex-wrap: wrap;
}

.popup-layer__foot li {
  width:50%;
  padding:10px;
}

.popup-layer__foot li:first-child {
  padding-right:0;
}

.popup-layer__foot li:last-child {
  text-align: right;
}

.popup-layer__foot span {
  font-size: 1.5rem;
  color: #fff;
  cursor: pointer;
  transition:all 0.3s ease;
}

.popup-layer__foot label:hover span { opacity: .7; }

/* .popup-layer-foot { background: #424242; }
.popup-layer-foot span { font-size: 15px; color: #fff; }
.popup-layer-foot label:hover span { opacity: .7; }
.popup-layer-foot li:first-child { padding-right: 0; }
.popup-layer-foot li:last-child { text-align: right; } */


@media (max-width: 1024px){
  /* .popup-layer { z-index: 999; } */
  .popup-layer { top: 95px !important; left: 0 !important; margin: 0 5px; }
}
@media (max-width: 768px){

  .popup-layer {
    width:calc(100% - 10px);
  }

  .popup-layer img {
    max-width: none;
    width:100%;
    height: auto !important;
  }
  .popup-layer-foot span { font-size: 14px; }

}
@media (max-width: 375px){
  .popup-layer-foot li { width: 100%; }
  .popup-layer-foot li:last-child { text-align: left; }
}


.sec-hover-air{
  opacity: 0;
  visibility: hidden;
  width: 0;
  height: 0;
  position: fixed;
  top: 0;
  left: 0;
  transition: .5s linear;
  pointer-events: none;
}

.sec-hover-air.on{
  opacity: 1;
  visibility: visible;
  width: 100%;
  height: 100%;
  max-width: 460px;
  height: 280px;
}

@media all and (max-width:1200px){
  .sec-hover-air.on{
    opacity: 0;
    visibility: hidden;
    width: 0;
    height: 0;
    display: none;
  }

}