header h1 {
  position: absolute;
  z-index: 99;
  color: #fff;
}

header .logo .on {
  position: absolute;
  left: 0;
  right: 0;
  z-index: 1;
  opacity: 0;
}

header .logo.white img {
  opacity: 0;
}

header .logo.white .on {
  opacity: 1;
}

.enkaku {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  margin-top: 51px;
}

.enkaku div {
  width: 691px;
}

.enkaku span {
  font-size: 23px;
  margin-bottom: 30px;
}

.enkaku dl {
  display: flex;
  border-bottom: 1px solid #d3d3d3;
  margin: 5px 0;
}

.enkaku dt {
  width: 25%;
  text-align: start;
}

.enkaku dd {}

@media screen and (max-width: 768px) {
  .enkaku {
    margin-top: 10vw;
  }

  .enkaku div {
    width: 100%;
  }

  .enkaku dt {
    width: auto;
    font-weight: 700;
  }

  .enkaku dl {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  header .hd-contact .bnr a:before {
    content: "";
    width: 28px;
    height: 28px;
    background: url("../img/shared/ft_ico2.png") no-repeat 0 0/100%;
  }

}

#key {
  color: #fff;
  text-align: center;
}

#key .bg_fix {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}

#key .js-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 2;
  pointer-events: none;
}

#key .js-bg li {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: flex-end;
}

#key .js-bg li.frame1 {
  z-index: 8;
  opacity: 0;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 2;
  align-items: flex-end;
  transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  -webkit-transition: opacity 0.3s ease;
}

#key .key_fade {
  pointer-events: none;
  position: fixed;
  bottom: 0;
  z-index: 2;
  left: 0;
  right: 0;
  height: 100vh;
}

#key .key_fade .slick-list {
  transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  -webkit-transition: opacity 0.3s ease;
}

#key .key_fade li {
  display: block !important;
  height: 100vh;
}

#key .lead {
  position: relative;
  z-index: 9;
}

#key .lead .key_info {
  padding: 20vw 0;
  position: relative;
  z-index: 4;
}

#key .lead .key_info span {
  display: block;
  margin-top: 7vw;
  font-size: 4vw;
}

#key .lead .key_info h2 {
  font-size: 22vw;
  letter-spacing: 0.07em;
  line-height: 1;
}

#key .lead dt {
  font-size: 9vw;
  padding-bottom: 2vw;
}

#key .key-cont {
  position: relative;
}

#key .key-sec1 {
  position: relative;
  z-index: 1;
  padding-top: 30vh;
}

#key .key-sec1 .key-txt {
  text-align: start;
  position: absolute;
  top: 100vh;
  left: 0;
  right: 0;
  z-index: 1;
  padding-top: 130vh;
}

#key .key-sec1 .key-txt .key-txt-pin {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  transition: opacity 0.5s ease;
  -moz-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
}

#key .key-sec1 .key-txt .key-txt-pin.active {
  opacity: 1;
}

#key .key-sec1 .key-txt h3 {
  text-align: center;
  font-size: 6vw;
  padding: 10vw 0 5vw 0;
  letter-spacing: 0.17em;
}

#key .key-sec1 .key-txt .txt {
  /* text-shadow: #000 1px 0 10px; */
  padding: 0 5%;
}

#key .key-sec1 .key-txt .photo_list {
  gap: 5vw;
}

#key .key-sec1 .key-txt .photo_list li {
  width: 50%;
}

#key .key-sec1 .key-txt .photo_list li:nth-child(1) {
  width: 31%;
  margin-left: 8vw;
}

#key .key-sec1 .key-txt .photo_list li:nth-child(2) {
  width: 45%;
  margin-top: 16vw;
}

#key .key-sec1 .key-txt .photo_list li:nth-child(4) {
  width: 39%;
  margin: 13vw 4vw 0 0;
}

#key .key-sec1 .key-txt .photo_list li:nth-child(5) {
  width: 74%;
}

#key .key-sec1 .key-txt .photo_list li:nth-child(7) {
  width: 30%;
  margin-right: 0;
}

#key .key-sec1 .key-txt .photo_list li:nth-child(6) {
  width: 53%;
  margin: 24vw 0 0 8%;
}

#key.active .key_fade .slick-list {
  opacity: 0;
}

#key.active .js-bg li.frame1 {
  opacity: 1;
}

#key.active .js-bg li.frame1.hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

@media screen and (min-width: 768px) {
  #key .key_fade li {
    height: 100vh;
  }

  #key .lead {
    height: 100vh;
    display: flex;
    align-items: center;
  }

  #key .lead .key_info {
    padding: 100px 0;
    position: relative;
    z-index: 9;
    width: 50%;
    font-size: 16px;
  }

  #key .lead .key_info h2 {
    font-size: 128px;
    padding-bottom: 35px;
  }

  #key .lead .key_info span {
    display: block;
    margin-top: 55px;
    margin-right: 10px;
    font-size: 18px;
  }

  #key .lead dt {
    font-size: 47px;
    letter-spacing: 0.09em;
    padding-bottom: 35px;
  }

  #key .photo-fixed1 img {
    width: 100%;
    height: auto;
  }

  #key .photo-fixed2 {
    height: 100vh;
  }

  #key .key-sec1 {
    position: relative;
    z-index: 1;
    padding-top: 60vh;
  }

  #key .key-sec1 .key-txt {
    text-align: center;
    padding-top: 90vh;
    top: 160vh;
  }

  #key .key-sec1 .key-txt .key-txt-pin {
    width: 440px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }

  #key .key-sec1 .key-txt h3 {
    font-size: 26px;
    padding-bottom: 60px;
  }

  #key .key-sec1 .key-txt .txt {
    padding: 0 0 100px;
  }

  #key .key-sec1 .key-txt .photo_list {
    gap: 57px;
    max-width: 1200px;
    margin: 0 auto;
  }

  #key .key-sec1 .key-txt .photo_list li {
    width: 51.834%;
  }

  #key .key-sec1 .key-txt .photo_list li img {
    width: 100%;
    height: auto;
  }

  #key .key-sec1 .key-txt .photo_list li:nth-child(1) {
    width: 29%;
    margin-left: 4%;
  }

  #key .key-sec1 .key-txt .photo_list li:nth-child(2) {
    width: 43%;
    margin-top: 12%;
  }

  #key .key-sec1 .key-txt .photo_list li:nth-child(4) {
    width: 39%;
    margin: 12% 2% 0 0;
  }

  #key .key-sec1 .key-txt .photo_list li:nth-child(5) {
    width: 74%;
  }

  #key .key-sec1 .key-txt .photo_list li:nth-child(7) {
    width: 29%;
    margin-right: 0;
  }

  #key .key-sec1 .key-txt .photo_list li:nth-child(6) {
    width: 49.584%;
    margin: 22% 0 0 15%;
  }

  #key.active .key_fade .slick-list {
    opacity: 0;
  }

  #key.active .js-bg li.frame1 {
    opacity: 1;
  }

  #key.active .js-bg li.frame1.hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
}

section {
  background-color: #fff;
}

#sec1 .info {
  padding: 8vw 8% 10vw;
}

#sec1 .info h2 {
  text-align: center;
  font-size: 20px;
  padding-bottom: 20px;
  letter-spacing: 0.15em;
  line-height: 1.3em;
}

#sec1 .info h2 small {
  font-size: 4vw;
  font-family: "Zen Kaku Gothic New";
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  #sec1 .info h2 {
    line-height: 1em;
  }

  #sec1 .info h2 small {
    letter-spacing: 0.1em;
    font-size: 15px;
    font-family: "Zen Kaku Gothic New";
    font-weight: 500;
  }

  #sec1 .sec1-js {
    display: flex;
    justify-content: space-between;
  }

  #sec1 .sec1-js .col-l,
  #sec1 .sec1-js .col-r {
    width: 50%;
    position: relative;
  }

  #sec1 .js-photo {
    height: 100vh;
    position: absolute;
    left: 0;
    width: 100%;
  }

  #sec1 .js-photo li {
    height: 100%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    opacity: 0;
    transition: opacity 0.3s ease;
    -moz-transition: opacity 0.3s ease;
    -webkit-transition: opacity 0.3s ease;
  }

  #sec1 .js-photo li.active {
    opacity: 1;
  }

  #sec1 .item {
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  #sec1 .info {
    text-align: justify;
    padding: 0;
    width: 336px;
  }

  #sec1 .info h2 {
    text-align: left;
    font-size: 33px;
    padding-bottom: 55px;
  }
}

#sec2 {
  position: relative;
}

#sec2 .sec2-js {
  position: relative;
  height: 75vw;
}

#sec2 .sec2-js li {
  transition: 0.3s;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

#sec2 .sec2-js li.top {
  background: url("../img/concept/bg1.jpg") repeat center 0;
  color: #fff;
  display: flex;
  justify-content: center;
  height: 275vw;
  padding-top: 75vw;
}

#sec2 .txt {
  padding: 5% 5% 15vw;
}

#sec2 .js {
  position: relative;
}

#sec2 .js:before {
  background: url("../img/concept/bg1.jpg") repeat center 0;
  content: "";
  position: absolute;
  top: 0;
  width: 50%;
  height: 100%;
  z-index: 5;
}

#sec2 h2 {
  position: absolute;
  top: 10vw;
  left: 15vw;
  text-align: left;
  z-index: 6;
  color: #fff;
  font-size: 8vw;
  line-height: 1.1;
}

#sec2 h2 span {
  letter-spacing: 0.07em;
}

#sec2 .js-control {
  display: flex;
  flex-direction: column;
  width: 5px;
  height: 40vw;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5vw;
  z-index: 10;
  border-radius: 5px;
  border: 1px solid;
  overflow: hidden;
}

#sec2 .js-control span {
  flex: 1;
  background-color: #000;
  opacity: 0;
}

#sec2 .js-control span.active {
  opacity: 1;
}

@media screen and (min-width: 768px) {
  #sec2 .sec2-in {
    display: flex;
    align-content: center;
    min-height: 100vh;
    height: 1240px;
    flex-wrap: wrap;
  }

  #sec2 .js,
  #sec2 .info {
    width: 100%;
  }

  #sec2 .sec2-js {
    height: 741px;
    text-align: center;
    width: 1000px;
    margin: 0 auto;
  }

  #sec2 .sec2-js li {
    text-align: center;
  }

  #sec2 .sec2-js li.top {
    height: 275vw;
    padding-top: 75vw;
  }

  #sec2 .txt {
    padding: 0;
    text-align: center;
    position: relative;
    z-index: 10;
    background: linear-gradient(90deg, #fff 50%, #000 50%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  #sec2 .js {
    position: static;
    margin-bottom: -50px;
  }

  #sec2 h2 {
    top: 50%;
    left: 25%;
    transform: translate(-50%, -50%);
    font-size: 130px;
    line-height: 1.1;
  }

  #sec2 h2 span {
    line-height: 125px;
    display: inline-block;
  }

  #sec2 .js-control {
    width: 7px;
    height: 256px;
    right: calc(50% - 472px);
  }
}

#sec3 {
  background: url("../img/concept/bg2.jpg") repeat center 0;
  padding: 10vw 0 0;
}

#sec3 h2 {
  text-align: center;
  font-size: 7.5vw;
  padding-bottom: 5vw;
}

#sec3 h2 span {
  display: inline-block;
  letter-spacing: 0.15em;
  border-bottom: 1px solid #7b7b7b;
}

#sec3 .lead {
  padding: 4vw 5% 10vw;
}


#sec3 .banner .bnr-item {
  width: 100%;
  position: relative;
  text-align: center;
  font-size: 18px;
}

#sec3 .banner .bnr-item dt {
  padding-bottom: 25px;
  position: relative;
}

#sec3 .banner .bnr-item dt:before {
  content: "";
  border-right: 1px solid #7c7c7c;
  border-top: 1px solid #7c7c7c;
  position: absolute;
  right: 15px;
  top: 16px;
  width: 36px;
  height: 24px;
}

#sec3 .banner .bnr-item dt:after {
  position: absolute;
  right: 11px;
  top: 32px;
  z-index: 1;
  content: "";
  width: 8px;
  height: 8px;
  border-right: 1px solid #7c7c7c;
  border-bottom: 1px solid #7c7c7c;
  transform: rotate(45deg) skew(7deg, 7deg);
}

#sec3 .banner .bnr-item dt span {
  letter-spacing: 0.07em;
}

#sec3 .banner .bnr-item dd a {
  display: block;
  position: relative;
  height: 60vw;
}

/* #sec3 .banner .bnr-item dd a::before {
  content: "";
  background: url("../img/concept/arow.png") no-repeat center/8vw;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
} */

@media screen and (min-width: 768px) {
  #sec3 {
    padding: 141px 0 0;
  }

  #sec3 h2 {
    text-align: left;
    font-size: 50px;
    padding: 0 0 0 15px;
  }

  #sec3 h2 span {
    display: inline-block;
    letter-spacing: 0.15em;
    border: none;
    line-height: 1;
  }

  #sec3 .lead {
    padding: 0;
    display: flex;
    gap: 25px;
    width: 900px;
    margin: 0 auto 141px;
    text-align: justify;
    align-items: center;
  }

  #sec3 .lead .txt {
    width: auto;
    border-left: 1px solid;
    padding: 0px 0 3px 35px;
  }

  #sec3 .banner .bnr-item {
    width: 50%;
    font-size: 30px;
    line-height: 40px;
  }

  #sec3 .banner .bnr-item dt {
    padding-bottom: 0;
    text-align: right;
    position: absolute;
    left: calc(50% - 79px);
    top: 2px;
    transform: translateY(-100%);
  }

  #sec3 .banner .bnr-item dt:before {
    left: -37px;
    top: 116px;
    width: 29px;
    height: 64px;
    border-right: none;
    border-left: 1px solid #7c7c7c;
    right: auto;
  }

  #sec3 .banner .bnr-item dt:after {
    right: auto;
    left: -42px;
    top: 169px;
    width: 11px;
    height: 11px;
    transform: rotate(45deg) skew(7deg, 7deg);
  }

  #sec3 .banner .bnr-item dt.ext {
    top: -372px;
    left: calc(50% + 22px);
    text-align: left;
  }

  #sec3 .banner .bnr-item dt.ext:before {
    border-top: none;
    top: 86px;
    left: 10px;
    height: 352px;
  }

  #sec3 .banner .bnr-item dt.ext:after {
    left: 5px;
    top: 423px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1430px) {
  #sec3 .banner .bnr-item dt.ext {
    left: 22%;
  }
}

@media screen and (min-width: 768px) {
  #sec3 .banner .bnr-item dd a {
    height: 609px;
    overflow: hidden;
  }

  /* #sec3 .banner .bnr-item dd a::before {
    background-size: 58px;
  } */

  #sec3 .banner .bnr-item dd a img {
    transition: 0.5s all ease-in-out !important;
  }

  #sec3 .banner .bnr-item dd a:hover img {
    opacity: 1 !important;
    transform: scale(1.05);
  }
}

#sec4 {
  padding: 20vw 5%;
}

#sec4 h2 {
  text-align: center;
  border-top: 1px solid #999999;
  border-bottom: 1px solid #999999;
  font-size: 7vw;
  line-height: 1.4;
  letter-spacing: 0.17em;
  padding: 5vw;
  margin-bottom: 10vw;
}

#sec4 .contact {
  padding: 60px 10% 50px;
  position: relative;
  border-bottom: 1px solid #999999;
}

#sec4 .contact h3 {
  position: absolute;
  left: 0;
  bottom: -34px;
}

#sec4 .contact h3 span {
  letter-spacing: 0.19em;
}

#sec4 .contact .tel {
  padding-top: 20px;
  text-align: center;
  font-size: 20px;
  letter-spacing: 0.13em;
}

#sec4 .contact .tel span {
  font-size: 15px;
  letter-spacing: 0.13em;
}

#sec4 .txt .one {
  margin: 7vw 0;
  display: block;
}

#sec4 .txt .one span {
  margin-top: 10px;
  display: block;
}

@media screen and (min-width: 768px) {
  #sec4 {
    max-width: 770px;
    margin: 0 auto;
    padding: 175px 0 180px;
    text-align: center;
  }

  #sec4 h2 {
    font-size: 26px;
    line-height: 1.4;
    padding: 23px 0 27px;
    margin-bottom: 68px;
  }

  #sec4 .txt {
    max-width: 620px;
    margin: 0 auto;
  }

  #sec4 .txt .one {
    margin: 40px 0;
    display: block;
  }

  #sec4 .txt .one span {
    margin-top: 10px;
    display: block;
  }

  #sec4 .contact {
    padding: 50px 10% 92px;
    position: relative;
  }

  #sec4 .contact h3 {
    position: absolute;
    left: 18px;
    bottom: -36px;
  }

  #sec4 .contact .tel {
    padding-top: 40px;
    text-align: center;
    font-size: 26px;
  }

  #sec4 .contact .tel span {
    font-size: 21px;
  }
}

@media screen and (max-width: 768px) {

  #key .key-sec1 .pin-spacer,
  #key .key-sec1 .photo-fixed2 {
    max-height: 100vh !important;
    height: 100vh !important;
  }

  #key .key-sec1 picture img {
    object-fit: cover;
    height: 100vh;
    margin-top: -1vw;
  }

  #sec1 {
    margin-top: 99vh;
  }

  #key .key-sec1 .key-txt .txt {
    text-shadow: #000 1px 0 10px;
  }
}

#sec3 .banner .bnr-item {
  position: relative;
}

#sec3 .banner .bnr-item div {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 5;
  color: #fff;
  font-size: 40px;
}

#sec3 .banner .bnr-item::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: .3;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

#sec3 .banner .bnr-item div p:nth-child(2) {
  font-size: 18px;
}

#sec3 .banner .bnr-item div p:hover {
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  #sec3 .banner .bnr-item div {
    font-size: 6vw;
  }

  #sec3 .banner .bnr-item div p:nth-child(2) {
    font-size: 4vw;
  }
}

/*# sourceMappingURL=concept.css.map */


.remodal {
  background-color: transparent;
  max-width: 800px;
}

.remodal .remodal-close {
  background: url("../img/shared/close_w.png") no-repeat center 0/100%;
  color: #fff;
  width: 49px;
  font-size: 11px;
  padding: 33px 0 0;
}



@media screen and (min-width: 768px) {
  .remodal {
    padding: 74px 0 0;
  }

  .remodal .remodal-close {
    width: 64px;
    font-size: 18px;
    padding: 39px 0 0;
    margin-bottom: -60px;
  }
}

.popoup {
  position: relative;
  z-index: 1;
}

.popoup:after {
  content: "";
  z-index: -1;
  background: #fff;
  top: 40vw;
  left: 0;
  right: 0;
  bottom: 10vw;
  position: absolute;
}

.popoup .group {
  background: url("../img/index/popup_bg_sp.png") no-repeat center bottom/100%;
  padding: 0 5% 20vw;
  overflow: hidden;
}

.popoup .logo {
  width: 16vw;
  position: absolute;
  top: 10vw;
  right: 3vw;
  z-index: 1;
}

.popoup .logo img {
  width: 100%;
  height: auto;
}

.popoup .item {
  border-bottom: 1px solid #3a3939;
  padding: 0 0% 10vw;
  margin-bottom: 5vw;
  position: relative;
}

.popoup .item:first-child:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  border-bottom: 2px solid #3a3939;
}

.popoup .item .photo {
  margin: 0 -5vw 4vw;
}

.popoup .item h2 {
  font-size: 4.5vw;
}

.popoup .item h2 span {
  letter-spacing: 0.13em;
  font-size: 9vw;
}

.popoup .item h2 .t {
  display: inline-block;
  background-color: #fff;
  letter-spacing: 0.13em;
  line-height: 1.6;
  padding: 0 5px;
  font-size: 4.8vw;
  margin-bottom: 2vw;
}

.popoup .item .bnr-shared {
  width: 80%;
}

.popoup {
  background: #fff;
  min-height: 762px;
  margin: 0 auto;
  display: flex;
  text-align: start;
  flex-flow: column;
  align-items: center;
  padding-top: 70px;
}

.popoup .ttl {
  text-align: center;
  margin-bottom: 50px;
  font-size: 20px;
}

.popoup .ttl span {
  font-size: 50px;
  margin-bottom: -7px;
  display: block;
}

.popoup span {
  font-size: 20px;
}

.popoup .main_qa {
  width: 90%;
}

.popoup .main_qa>div>div {
  margin-left: 20px;
  margin-bottom: 15px;
}

.popoup .main_qa>div {
  border-bottom: 1px solid;
  margin-top: 10px;
}

.popoup .bnr-shared {
  margin: 50px 0 70px;
}

.remodal .remodal-close {
  filter: invert(100%) sepia(0%) saturate(11%) hue-rotate(143deg) brightness(101%) contrast(93%);
}

@media screen and (max-width: 768px) {
  .popoup {
    background: #fff;
    margin: 0 auto;
    display: flex;
    text-align: start;
    flex-flow: column;
    align-items: center;
    padding-top: 13.3vw;
  }

  .popoup .ttl {
    text-align: center;
    margin-bottom: 5.3vw;
    font-size: 4.3vw;
    line-height: 1.5em;
  }

  .popoup .ttl span {
    font-size: 10.3vw;
    margin-bottom: -1.9vw;
    display: block;
  }

  .popoup span {
    font-size: 5.3vw;
  }

  .popoup .main_qa {
    width: 90%;
  }

  .popoup .main_qa>div>div {
    margin-left: 5.3vw;
    margin-bottom: 4vw;
  }

  .popoup .main_qa>div {
    border-bottom: 0.27vw solid;
    margin-top: 2.7vw;
  }

  .popoup .bnr-shared {
    margin: 13.3vw 0;
  }
}

.popup_btn {
  margin: -2vw auto 10vw auto;
}

@media screen and (min-width: 768px) {
  .popup_btn {
    margin: -43px 0 0 14px;
  }

  .popoup:after {
    display: none;
  }

  .popoup .group {
    background: none;
    padding: 140px 0 0;
    overflow: hidden;
  }

  .popoup .logo {
    width: 52px;
    top: 58px;
    right: 25px;
  }

  .popoup .item {
    padding: 0 0 44px;
    position: relative;
    width: 280px;
    margin: 0 auto 40px;
  }

  .popoup .item:last-child {
    margin-bottom: 0;
  }

  .popoup .item .photo {
    display: none;
  }

  .popoup .item h2 {
    font-size: 19px;
    padding-bottom: 27px;
  }

  .popoup .item h2 span {
    font-size: 31px;
  }

  .popoup .item h2 .t {
    line-height: 27px;
    padding: 0 6px;
    font-size: 17px;
    margin-bottom: 12px;
  }

  .popoup .item .bnr-shared {
    width: 222px;
    margin: 0 auto;
  }

  .popoup .item .bnr-shared a {
    line-height: 42px;
    font-size: 18px;
    padding: 0 6px 0 0;
  }

  .popoup .item .bnr-shared a:after {
    right: 14px;
  }
}

#sec3 {
  position: relative;
}

#sec3::after {
  position: absolute;
  content: url(../img/concept/s3_bgimg_03_03.png);
  height: 661px;
  width: 240px;
  top: 0;
  right: 3%;
  opacity: 0.5;
}

@media screen and (min-width: 768px) {
  /* header .hd-contact {
    color: #fff;
    filter: invert(88%) sepia(61%) saturate(0%) hue-rotate(229deg) brightness(107%) contrast(101%);
  } */
}

@media screen and (max-width: 768px) {
  #sec3::after {
    position: absolute;
    content: url(../img/concept/s3_bgimg2_03.png);
    height: 661px;
    width: 240px;
    top: 4px;
    right: -41%;
    opacity: 0.5;
  }
}

#sec3 .banner {
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 768px) {
  .popoup {
    margin-top: -10vw;
  }

  .remodal .remodal-close {
    top: 19px;
  }
}