@charset "UTF-8";
/*//////////////////////////////////////////////////

	TOPページ

//////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////

	変数設定

//////////////////////////////////////////////////*/
/*===============================
// ブレイクポイント変数
/==============================*/
/*===============================
// カラー変数
/==============================*/
/*===============================
// フォント変数
/==============================*/
/*===============================
// フォントサイズ変数
/==============================*/
/*//////////////////////////////////////////////////

	mixin設定

//////////////////////////////////////////////////*/
/*===============================
// ブレイクポイントの設定
/==============================*/
/*===============================
// 横幅の設定
// @include w_box(横幅にしたい数値) デフォルト1200px
/==============================*/
/*===============================
// 文字サイズの可変設定
// @include font(最小フォントサイズ, 最大フォントサイズ, 最小ブラウザサイズ, 最大ブラウザサイズ);
/==============================*/
/*===============================
// 文字サイズの可変を呼び出し
/==============================*/
/*===============================
// 表示切り替え設定
/==============================*/
/*===============================
// 文字行間の可変設定
// @include l_height(line-height,font-size);
/==============================*/
/*===============================
// 文字間隔の可変設定
// @include l_space(サイズ);
/==============================*/
/*===============================
// marginの可変設定
// @include margin(横幅, 上, 右, 下, 左);
/==============================*/
/*===============================
// paddingの可変設定
// @include padding(横幅, 上, 右, 下, 左);
/==============================*/
/*===============================
// positionの自動設定
// @include center(xy);上下左右中央
// @include center(x);左右中央
// @include center(y);上下中央
/==============================*/
/*===============================
// flexの自動設定
// @include flex_wrap;
/==============================*/
/*===============================
// flexの自動設定：align-items
// @include items(center);
// @include items(stretch);
// @include items(start);
// @include items(end);
/==============================*/
/*===============================
// flexの自動設定：justify-content
// @include justify(between);
// @include justify(center);
// @include justify(start);
// @include justify(end);
/==============================*/
/*===============================
// flex要素の幅設定
// @include flex_box(サイズ＆単位);　デフォルト48%
/==============================*/
/*===============================
// box-sizingの設定
// @include box;
/==============================*/
/*===============================
// ベンダープレフィックス設定
// @include prefix(border-radius, 10px);
/==============================*/
/*===============================
// 値にプレフィックスを付与
// @include value_prefix(display, flex);
/==============================*/
/*===============================
// border生成
// @include border(full);四方 デフォルト 1px solid
// @include border(top);上線 デフォルト 1px solid
// @include border(bottom);下線 デフォルト 1px solid
// @include border(left);左線 デフォルト 1px solid
// @include border(right);右線 デフォルト 1px solid
/==============================*/
/*===============================
// 角丸の設定
// @include radius(角丸のサイズ); デフォルト4px
/==============================*/
/*===============================
// 円の生成
// @include circle(円のサイズ);
/==============================*/
/*===============================
// 円の生成：可変
// @include v_circle; 親要素に横幅指定必須
/==============================*/
/*===============================
// くの字矢印の生成
// @include arrow(三角のサイズ,線の太さ); デフォルト4px,1px
/==============================*/
/*===============================
// 三角の生成
// @include triangle(向き,三角のサイズ,色);
/==============================*/
/*===============================
// 背景画像の生成
// @include back_image("画像パス");
/==============================*/
/*===============================
// グラデーションの生成
// @include gradient("最初の色,最後の色");
/==============================*/
/*===============================
// 文字の位置設定
// @include t_align(center);
// @include t_align(left);
// @include t_align(right);
/==============================*/
/*===============================
// object-fit設定
// @include ofi(contain);
// @include ofi(cover);
/==============================*/
#header {
  background: none;
  backdrop-filter: blur(0px);
}
#header .header-container .logo {
  opacity: 0;
  pointer-events: none;
}
#header .header-container .menu_btn .menu_btn-line span {
  background: #ffffff;
}
#header.active {
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(2px);
}
#header.active .header-container .logo {
  opacity: 1;
  pointer-events: auto;
}
#header.active .header-container .menu_btn .menu_btn-line span {
  background: #262626;
}

#contents {
  margin-top: 0;
}

section {
  position: relative;
  z-index: 1;
}

/* メインビジュアル */
#mv {
  z-index: 2;
}
#mv .mv-container {
  position: relative;
}
#mv .mv-container .mv-wp .slick-count {
  font-size: 3.467vw;
  color: #ffffff;
  position: absolute;
  left: 5.333vw;
  bottom: 4.8vw;
}
#mv .mv-container .mv-wp .slick-count .current {
  color: #7e7e7e;
}
#mv .mv-container .mv-catch {
  font-size: 4.267vw;
  font-family: "Shippori Mincho B1", "Noto Serif JP", serif;
  color: #ffffff;
  text-align: left;
  position: absolute;
  left: 5.333vw;
  bottom: 12.533vw;
}
#mv .mv-container .mv-scroll {
  display: none;
}
#mv .pickup_info {
  width: 355px;
  background: #262626;
  position: absolute;
  right: 0;
  bottom: -55px;
}
#mv .pickup_info .pickup_info-list {
  padding: 21px 20px;
}
#mv .pickup_info .pickup_info-list .pickup_info-item a {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  justify-content: space-between;
  font-size: 1.3rem;
  align-items: center;
  color: #ffffff;
  line-height: 1;
}
@media (min-width: 375px) {
  #mv .pickup_info .pickup_info-list .pickup_info-item a {
    font-size: calc(1.3rem + (1vw - 3.75px) * 0.1009081736);
  }
}
@media (min-width: 1366px) {
  #mv .pickup_info .pickup_info-list .pickup_info-item a {
    font-size: 1.4rem;
  }
}
#mv .pickup_info .pickup_info-list .pickup_info-item a .date {
  flex: 0 1 26.984127%;
  width: 26.984127%;
  position: relative;
}
#mv .pickup_info .pickup_info-list .pickup_info-item a .date::before {
  content: "";
  width: 1px;
  height: 20.5px;
  background: #ffffff;
  position: absolute;
  top: 50%;
  right: -10px;
  transform: translateY(-50%);
}
#mv .pickup_info .pickup_info-list .pickup_info-item a .title {
  flex: 0 1 65.079365%;
  width: 65.079365%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

/* コンセプト */
#concept {
  padding-top: 93px;
  padding-bottom: 16.8vw;
  background-image: url("/img/home/bg_consept_sp.jpg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
#concept .concept-container {
  width: 89.34%;
}
#concept .concept-wp .concept-left {
  margin-bottom: 28px;
}
#concept .concept-wp .concept-left .title {
  font-size: 1.4rem;
  margin-bottom: 10px;
  line-height: 2.6rem;
}
@media (min-width: 375px) {
  #concept .concept-wp .concept-left .title {
    font-size: calc(1.4rem + (1vw - 3.75px) * 0.1009081736);
  }
}
@media (min-width: 1366px) {
  #concept .concept-wp .concept-left .title {
    font-size: 1.5rem;
  }
}
#concept .concept-wp .concept-left .catch_copy {
  font-size: 2.4rem;
  margin-bottom: 13px;
  text-align: left;
  line-height: 4rem;
}
@media (min-width: 375px) {
  #concept .concept-wp .concept-left .catch_copy {
    font-size: calc(2.4rem + (1vw - 3.75px) * 0.6054490414);
  }
}
@media (min-width: 1366px) {
  #concept .concept-wp .concept-left .catch_copy {
    font-size: 3rem;
  }
}
#concept .concept-wp .concept-left .text {
  font-size: 1.4rem;
  margin-bottom: 13px;
  font-weight: 400;
  line-height: 3rem;
  letter-spacing: 0.15em;
}
@media (min-width: 375px) {
  #concept .concept-wp .concept-left .text {
    font-size: calc(1.4rem + (1vw - 3.75px) * 0.1009081736);
  }
}
@media (min-width: 1366px) {
  #concept .concept-wp .concept-left .text {
    font-size: 1.5rem;
  }
}
#concept .concept-wp .concept-left .link_btn {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  justify-content: space-between;
  justify-content: flex-start;
}
#concept .concept-wp .concept-left .link_btn .link {
  flex: 0 1 calc((100% - 9px) / 2);
  width: calc((100% - 9px) / 2);
  padding: 6px 15px;
  font-size: 1.4rem;
  line-height: 2rem;
  text-align: center;
  background: #ffffff;
  border: 1px solid #96865c;
  box-sizing: border-box;
}
#concept .concept-wp .concept-left .link_btn .link + .link {
  margin-left: 9px;
}
#concept .concept-wp .concept-right {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  justify-content: space-between;
  justify-content: flex-start;
}
#concept .concept-wp .concept-right .image > img, #concept .concept-wp .concept-right .image-c2 > img, #concept .concept-wp .concept-right .image-c1 > img {
  box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.16);
}
#concept .concept-wp .concept-right .image-c1 {
  flex: 0 1 50.169492%;
  width: 50.169492%;
}
#concept .concept-wp .concept-right .image-c2 {
  flex: 0 1 44.067797%;
  width: 44.067797%;
  margin-top: 54px;
  margin-left: 5.76271186%;
}

/* 施工事例 */
#works {
  background: #555454;
  position: relative;
}
#works .works-container {
  padding-top: 9.653vw;
  padding-bottom: 16vw;
}
#works .works-ttl {
  font-size: 1.6rem;
  margin-bottom: 34.7px;
  font-weight: 500;
  line-height: 1;
  color: #ffffff;
}
@media (min-width: 375px) {
  #works .works-ttl {
    font-size: calc(1.6rem + (1vw - 3.75px) * 0.2018163471);
  }
}
@media (min-width: 1366px) {
  #works .works-ttl {
    font-size: 1.8rem;
  }
}
#works .works-list {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  justify-content: space-between;
}
#works .works-list .works-item {
  flex: 0 1 47.164179%;
  width: 47.164179%;
}
#works .works-list .works-item .thumbnail {
  margin-bottom: 7px;
}
#works .works-list .works-item .tag_area {
  margin-bottom: 13px;
  font-size: 0;
}
#works .works-list .works-item .tag_area > * {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}
#works .works-list .works-item .tag_area .date {
  font-size: 1.1rem;
  color: #ffffff;
}
@media (min-width: 375px) {
  #works .works-list .works-item .tag_area .date {
    font-size: calc(1.1rem + (1vw - 3.75px) * 0.2018163471);
  }
}
@media (min-width: 1366px) {
  #works .works-list .works-item .tag_area .date {
    font-size: 1.3rem;
  }
}
#works .works-list .works-item .tag_area .category, #works .works-list .works-item .tag_area .category-grazie_mille, #works .works-list .works-item .tag_area .category-pace_ful {
  font-size: 1.1rem;
  margin-left: 8px;
  padding: 4.5px 7.5px;
  letter-spacing: 0.02em;
  background: #2E2E2E;
}
@media (min-width: 375px) {
  #works .works-list .works-item .tag_area .category, #works .works-list .works-item .tag_area .category-grazie_mille, #works .works-list .works-item .tag_area .category-pace_ful {
    font-size: calc(1.1rem + (1vw - 3.75px) * 0.1009081736);
  }
}
@media (min-width: 1366px) {
  #works .works-list .works-item .tag_area .category, #works .works-list .works-item .tag_area .category-grazie_mille, #works .works-list .works-item .tag_area .category-pace_ful {
    font-size: 1.2rem;
  }
}
#works .works-list .works-item .tag_area .category-pace_ful {
  color: #b9ddac;
}
#works .works-list .works-item .tag_area .category-grazie_mille {
  color: #eee9af;
}
#works .works-list .works-item .title {
  font-size: 1.4rem;
  line-height: 2.8rem;
  color: #ffffff;
}
@media (min-width: 375px) {
  #works .works-list .works-item .title {
    font-size: calc(1.4rem + (1vw - 3.75px) * 0.1009081736);
  }
}
@media (min-width: 1366px) {
  #works .works-list .works-item .title {
    font-size: 1.5rem;
  }
}
#works .works-list .works-item:nth-child(n+3) {
  margin-top: 8.059701%;
}
#works .works-btn {
  padding: 45px 0 15px;
}
#works .works-btn a::after {
  background: #FFF;
}
#works::before {
  content: "";
  width: 100vw;
  height: 17.973vw;
  background-image: url("/img/home/bg_works_sp.svg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: calc(-16.693vw + 0.5px);
  left: 50%;
  transform: translateX(-50%);
}

/* 受賞履歴 */
#awards {
  position: relative;
  padding-top: 40%;
  margin-bottom: 50px;
}
#awards::before, #awards::after {
  display: block;
  position: absolute;
  z-index: -1;
  width: 100%;
  content: "";
}
#awards::before {
  top: 0;
  left: 0;
  aspect-ratio: 375/200;
  background: url("/img/home/awards_bg.jpg") center/cover no-repeat;
}
#awards::after {
  top: 7%;
  right: 0%;
  aspect-ratio: 375/430;
  background: linear-gradient(rgba(38, 38, 38, 0) 0%, rgba(38, 38, 38, 0.4) 5%, #262626 30%);
}
#awards .awards-catch {
  margin-bottom: 30px;
  color: #FFF;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
}
@media (min-width: 375px) {
  #awards .awards-catch {
    font-size: calc(1.6rem + (1vw - 3.75px) * 0.4036326942);
  }
}
@media (min-width: 1366px) {
  #awards .awards-catch {
    font-size: 2rem;
  }
}
#awards .awards-wp {
  position: relative;
  padding: 20px 20px 40px;
  background: rgba(255, 255, 255, 0.95);
}
#awards .awards-wp::after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: #96865c;
  content: "";
}
#awards .awards-wp .awards-ttl {
  margin-bottom: 5px;
  font-size: 1.2rem;
  text-align: center;
  line-height: 1.5;
}
@media (min-width: 375px) {
  #awards .awards-wp .awards-ttl {
    font-size: calc(1.2rem + (1vw - 3.75px) * 0.2018163471);
  }
}
@media (min-width: 1366px) {
  #awards .awards-wp .awards-ttl {
    font-size: 1.4rem;
  }
}
#awards .awards-wp .awards-ttl span {
  color: #96865c;
  font-size: 3rem;
  font-family: "Montserrat", sans-serif;
}
@media (min-width: 375px) {
  #awards .awards-wp .awards-ttl span {
    font-size: calc(3rem + (1vw - 3.75px) * 0.8072653885);
  }
}
@media (min-width: 1366px) {
  #awards .awards-wp .awards-ttl span {
    font-size: 3.8rem;
  }
}
#awards .awards-wp .awards-cont .awards-year {
  padding-bottom: 5px;
  margin-bottom: 15px;
  border-bottom: 1px solid #D5D5D5;
  color: #96865c;
  font-size: 1.6rem;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  font-weight: normal;
}
#awards .awards-wp .awards-cont .awards-list {
  font-size: 1.2rem;
  letter-spacing: -0.05em;
  line-height: 2;
}
#awards .awards-wp .awards-btn {
  margin-top: 30px;
  text-align: center;
}

/* 下層リンク*/
#link {
  margin-bottom: 75px;
}
#link .link-list li.link-flow a {
  background: url("/img/home/link_img01.jpg") center/cover no-repeat;
}
#link .link-list li.link-about a {
  background: url("/img/home/link_img02.jpg") center/cover no-repeat;
}
#link .link-list li.link-staff a {
  background: url("/img/home/link_img03.jpg") center/cover no-repeat;
}
#link .link-list li a {
  position: relative;
  width: 100%;
  margin-bottom: 20px;
  aspect-ratio: 335/135;
  color: #FFF;
  text-align: center;
}
#link .link-list li .link-ttl {
  position: absolute;
  top: 15%;
  left: 50%;
  transform: translate(-50%, 0);
  font-family: "Montserrat", sans-serif;
  font-size: 4rem;
  line-height: 1.2;
  font-weight: 500;
  mix-blend-mode: overlay;
  letter-spacing: 0.1em;
}
@media (min-width: 375px) {
  #link .link-list li .link-ttl {
    font-size: calc(4rem + (1vw - 3.75px) * 1.8163471241);
  }
}
@media (min-width: 1366px) {
  #link .link-list li .link-ttl {
    font-size: 5.8rem;
  }
}
#link .link-list li .link-ttl::after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 2.2em;
  height: 1px;
  background: #FFF;
  content: "";
}
#link .link-list li .link-catch {
  position: absolute;
  top: 75%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  font-size: 1.4rem;
  line-height: 1.4;
}
@media (min-width: 375px) {
  #link .link-list li .link-catch {
    font-size: calc(1.4rem + (1vw - 3.75px) * 0.1009081736);
  }
}
@media (min-width: 1366px) {
  #link .link-list li .link-catch {
    font-size: 1.5rem;
  }
}

/* お知らせ */
#info {
  margin-bottom: 120px;
}
#info .info-wp {
  position: relative;
  padding: 20px 20px 30px;
  background: #FFF;
  box-sizing: border-box;
}
#info .info-wp::before {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(0, -85%);
  color: #FFF;
  font-family: "Montserrat", sans-serif;
  font-size: 4rem;
  line-height: 1;
  letter-spacing: 0.1em;
  content: "NEWS";
}
@media (min-width: 375px) {
  #info .info-wp::before {
    font-size: calc(4rem + (1vw - 3.75px) * 1.0090817356);
  }
}
@media (min-width: 1366px) {
  #info .info-wp::before {
    font-size: 5rem;
  }
}
#info .info-wp .info-ttl {
  margin-bottom: 12px;
  font-size: 1.6rem;
  text-align: left;
}
@media (min-width: 375px) {
  #info .info-wp .info-ttl {
    font-size: calc(1.6rem + (1vw - 3.75px) * 0.2018163471);
  }
}
@media (min-width: 1366px) {
  #info .info-wp .info-ttl {
    font-size: 1.8rem;
  }
}
#info .info-wp .info-list {
  margin-bottom: 30px;
}
#info .info-wp .info-list li:first-of-type a {
  padding-top: 0;
}
#info .info-wp .info-list li a {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  justify-content: space-between;
  padding: 15px 0;
  border-bottom: 1px solid #D5D5D5;
}
#info .info-wp .info-list li .thumbnail {
  width: 40%;
}
#info .info-wp .info-list li .info-detail {
  width: 55%;
}
#info .info-wp .info-list li .info-detail .info-date {
  margin-bottom: 5px;
  color: #7E7E7E;
  font-size: 1.2rem;
  line-height: 1.4;
}
@media (min-width: 375px) {
  #info .info-wp .info-list li .info-detail .info-date {
    font-size: calc(1.2rem + (1vw - 3.75px) * 0.1009081736);
  }
}
@media (min-width: 1366px) {
  #info .info-wp .info-list li .info-detail .info-date {
    font-size: 1.3rem;
  }
}
#info .info-wp .info-list li .info-detail .info-title {
  font-size: 1.4rem;
  line-height: 1.7;
}
#info .info-wp .info-btn a {
  width: 165px;
  height: 40px;
  margin: 0 auto;
  border: 1px solid #000;
  font-size: 1.4rem;
  font-family: "Montserrat", sans-serif;
  line-height: 40px;
  text-align: center;
}

/*------------------------------
		769px以上
------------------------------*/
@media screen and (min-width: 769px) {
  #header .header-container .menu_navi {
    opacity: 0;
    pointer-events: none;
  }
  #header.active .header-container .menu_navi {
    opacity: 1;
    pointer-events: auto;
  }
  #mv .mv-container .mv-wp .slick-count {
    font-size: 0.952vw;
    left: 30.307vw;
    bottom: 3.66vw;
  }
  #mv .mv-container .mv-catch {
    font-size: 1.611vw;
    left: 7.54vw;
    bottom: 7.394vw;
  }
  #mv .mv-container .mv-scroll {
    display: block;
    line-height: 1;
    transform: rotate(90deg);
    position: absolute;
    left: 7.54vw;
    bottom: 2.196vw;
  }
  #mv .mv-container .mv-scroll .scroll_txt {
    font-size: 1.025vw;
    letter-spacing: 0.0799em;
    color: #ffffff;
  }
  #mv .mv-container .mv-scroll .scroll_arrow {
    display: block;
    width: 6.442vw;
    max-width: 88px;
    height: 1px;
    background: #96865c;
    position: absolute;
    top: calc(100% + 11.4px);
    left: 35px;
    animation: arrow 1.4s ease-in-out infinite;
  }
  #mv .pickup_info {
    width: 517px;
    bottom: -33px;
  }
  #mv .pickup_info .pickup_info-list {
    padding: 25.5px 30px;
  }
  #mv .pickup_info .pickup_info-list .pickup_info-item a .date {
    flex: 0 1 auto;
    width: auto;
  }
  #mv .pickup_info .pickup_info-list .pickup_info-item a .date::before {
    right: -10px;
  }
  #mv .pickup_info .pickup_info-list .pickup_info-item a .title {
    flex: 0 1 74.398249%;
    width: 74.398249%;
  }
  #concept {
    padding-top: 87px;
    padding-bottom: 10.761vw;
    background-image: url("/img/home/bg_consept_pc.jpg");
  }
  #concept .concept-container {
    width: 100%;
  }
  #concept .concept-wp {
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;
    justify-content: space-between;
  }
  #concept .concept-wp .concept-left {
    flex: 0 1 40%;
    width: 40%;
  }
  #concept .concept-wp .concept-left .title {
    margin-bottom: 15px;
  }
  #concept .concept-wp .concept-left .catch_copy {
    margin-bottom: 10px;
    line-height: 5rem;
  }
  #concept .concept-wp .concept-left .text {
    margin-bottom: 24px;
    letter-spacing: 0.08em;
  }
  #concept .concept-wp .concept-left .link_btn .link {
    flex: 0 1 100%;
    width: 100%;
    max-width: 205px;
    padding: 15px;
    line-height: 1;
  }
  #concept .concept-wp .concept-left .link_btn .link + .link {
    margin-top: 13px;
    margin-left: 0;
  }
  #concept .concept-wp .concept-left .link_btn .link:hover {
    color: #ffffff;
    background: #96865c;
  }
  #concept .concept-wp .concept-right {
    flex: 0 1 50%;
    width: 50%;
  }
  #concept .concept-wp .concept-right .image-c1 {
    flex: 0 1 47.959184%;
    width: 47.959184%;
    margin-top: 84px;
  }
  #concept .concept-wp .concept-right .image-c2 {
    flex: 0 1 44.081633%;
    width: 44.081633%;
    margin-top: 0;
    margin-left: 7.959184%;
  }
  #works .works-container {
    padding-top: 4.334vw;
    padding-bottom: 5.066vw;
  }
  #works .works-ttl {
    margin-bottom: 27.5px;
  }
  #works .works-list {
    justify-content: flex-start;
  }
  #works .works-list .works-item {
    flex: 0 1 30.612245%;
    width: 30.612245%;
    margin-right: 4.08163265%;
  }
  #works .works-list .works-item a:hover .thumbnail img {
    transform: scale(1.15);
  }
  #works .works-list .works-item a:hover .thumbnail::before {
    opacity: 1;
  }
  #works .works-list .works-item .thumbnail {
    margin-bottom: 11px;
    position: relative;
    overflow: hidden;
  }
  #works .works-list .works-item .thumbnail img {
    transition: 0.3s;
  }
  #works .works-list .works-item .thumbnail::before {
    content: "more";
    width: 100%;
    font-size: 1.5rem;
    font-family: "Montserrat", sans-serif;
    line-height: 200px;
    text-align: center;
    color: #ffffff;
    background: rgba(0, 0, 0, 0.3);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    transition: 0.3s;
    z-index: 1;
    opacity: 0;
  }
  #works .works-list .works-item .tag_area .category, #works .works-list .works-item .tag_area .category-pace_ful, #works .works-list .works-item .tag_area .category-grazie_mille {
    margin-left: 14px;
  }
  #works .works-list .works-item:nth-child(3n) {
    margin-right: 0;
  }
  #works .works-list .works-item:nth-child(n+3) {
    margin-top: 0;
  }
  #works .works-list .works-item:nth-child(n+4) {
    margin-top: 50px;
  }
  #works .works-btn {
    padding-top: 70px;
  }
  #works::before {
    height: 8.873vw;
    background-image: url("/img/home/bg_works_pc.svg");
    top: calc(-8.873vw + 0.5px);
  }
  #awards {
    width: 100%;
    aspect-ratio: 375/200;
    padding: 0;
    margin-bottom: 180px;
  }
  #awards::after {
    top: 0;
    aspect-ratio: 375/200;
    background: linear-gradient(to right, rgba(38, 38, 38, 0) 0%, rgba(38, 38, 38, 0.4) 28%, #262626 42%);
  }
  #awards .awards-catch {
    position: absolute;
    top: 10%;
    left: 32%;
    margin: 0;
    text-align: left;
  }
  #awards .awards-wp {
    position: absolute;
    top: 32%;
    left: 32%;
    width: 64%;
    max-width: 580px;
    padding: 30px 40px 40px;
    box-sizing: border-box;
    overflow: hidden;
  }
  #awards .awards-wp .awards-ttl {
    text-align: left;
  }
  #awards .awards-wp .awards-ttl span {
    margin-right: 0.5em;
  }
  #awards .awards-wp .awards-cont {
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;
    justify-content: space-between;
    justify-content: flex-start;
    flex-wrap: nowrap;
  }
  #awards .awards-wp .awards-cont .awards-year {
    padding: 0 0.5em 0 0;
    margin: 0 0.5em 0 0;
    border-bottom: none;
    border-right: 1px solid #D5D5D5;
  }
  #awards .awards-wp .awards-btn {
    text-align: right;
  }
  #awards .awards-wp .awards-btn a {
    margin-right: 4em;
  }
  #link {
    margin-bottom: 100px;
  }
  #link .link-list {
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;
    justify-content: space-between;
  }
  #link .link-list li {
    width: 32%;
  }
  #link .link-list li a {
    aspect-ratio: 370/263;
    margin-bottom: 0;
  }
  #link .link-list li a:hover {
    opacity: 1;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  }
  #link .link-list li .link-ttl {
    top: 28%;
    font-size: 4rem;
  }
}
@media screen and (min-width: 769px) and (min-width: 769px) {
  #link .link-list li .link-ttl {
    font-size: calc(4rem + (1vw - 7.69px) * 3.0150753769);
  }
}
@media screen and (min-width: 769px) and (min-width: 1366px) {
  #link .link-list li .link-ttl {
    font-size: 5.8rem;
  }
}
@media screen and (min-width: 769px) {
  #link .link-list li .link-catch {
    font-size: 1.2rem;
    line-height: 2;
  }
}
@media screen and (min-width: 769px) and (min-width: 769px) {
  #link .link-list li .link-catch {
    font-size: calc(1.2rem + (1vw - 7.69px) * 0.5025125628);
  }
}
@media screen and (min-width: 769px) and (min-width: 1366px) {
  #link .link-list li .link-catch {
    font-size: 1.5rem;
  }
}
@media screen and (min-width: 769px) {
  #info .info-wp {
    padding: 30px 9% 40px;
  }
  #info .info-wp .info-ttl {
    margin-bottom: 20px;
  }
  #info .info-wp .info-list li a {
    padding: 20px 0;
  }
  #info .info-wp .info-list li a .thumbnail {
    overflow: hidden;
  }
  #info .info-wp .info-list li a .thumbnail img {
    transition: 0.3s;
  }
  #info .info-wp .info-list li a:hover {
    color: #96865c;
  }
  #info .info-wp .info-list li a:hover .thumbnail img {
    transform: scale(1.2);
  }
  #info .info-wp .info-list li .thumbnail {
    width: 18%;
  }
  #info .info-wp .info-list li .info-detail {
    width: 78%;
  }
  #info .info-wp .info-btn a:hover {
    background: #000;
    color: #FFF;
  }
}
/*------------------------------
		961px以上
------------------------------*/
@media screen and (min-width: 961px) {
  #awards .awards-catch {
    left: 40%;
  }
  #awards .awards-wp {
    left: 40%;
  }
  #awards .awards-wp .awards-cont .awards-year {
    margin-right: 15px;
    padding-right: 15px;
  }
}
/*------------------------------
		1200px以上
------------------------------*/
@media screen and (min-width: 1200px) {
  #awards {
    aspect-ratio: 1366/440;
    max-height: 440px;
  }
  #awards::before {
    width: 62%;
    aspect-ratio: 847/440;
    max-height: 440px;
  }
  #awards::after {
    width: 100%;
    aspect-ratio: 1366/440;
    max-height: 440px;
  }
  #awards .awards-catch {
    left: 50%;
  }
  #awards .awards-wp {
    top: 34%;
    left: 50%;
  }
}
/*------------------------------
		1366px以上
------------------------------*/
@media screen and (min-width: 1366px) {
  #mv .mv-container .mv-wp .slick-count {
    font-size: 1.3rem;
    left: 414px;
    bottom: 50px;
  }
  #mv .mv-container .mv-catch {
    font-size: 2.2rem;
    left: 103px;
    bottom: 101px;
  }
  #mv .mv-container .mv-scroll {
    left: 103px;
    bottom: 30px;
  }
  #mv .mv-container .mv-scroll .scroll_txt {
    font-size: 1.4rem;
  }
}
/*# sourceMappingURL=style.css.map */
