@charset "utf-8";

/*common*/
.pc-only { display: block!important; }
.sp-only { display: none!important; }

section, main { position: relative; display: block; }
html, body { width: 100%; overflow-x: hidden; }

img { max-width: 100%; }

@media screen and (max-width: 900px) {
	.pc-only { display: none!important; }
	.sp-only { display: block!important; }
}

/*loading*/
#loading { background: #fff; width: 100%; height: 100%; position: fixed; top: 0; left: 0; z-index: 10010; }
#loading > .inner { position: absolute; left: 50%; top: 50%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); }
.loading_en { position: relative; }
.loading_ja { position: relative; margin-top: 37px; height: 25px; }
.loading_en > div,
.loading_en > div img { width: 508px; margin: 0 auto; }
.loading_ja > div,
.loading_ja > div img { width: 358px; height: 25px; margin: 0 auto; }

.loading_en ._on { position: absolute; top: 0; left: 50%; -webkit-transform:translateX(-50%); transform:translateX(-50%); }
.loading_ja ._on { position: absolute; top: 0; left: 50%; -webkit-transform:translateX(-50%); transform:translateX(-50%); }

.loading_en ._on img {
    animation: copyClipIn forwards 1.5s cubic-bezier(0.36, 0.14, 0, 1) 2.5s 1 normal
}

.loading_en ._off img {
    animation: copyClipIn forwards 1.5s cubic-bezier(0.36, 0.14, 0, 1) .8s 1 normal
}

.loading_ja ._on img {
    animation: copyClipIn forwards 1.5s cubic-bezier(0.36, 0.14, 0, 1) 2.5s 1 normal
}

.loading_ja ._off img {
    animation: copyClipIn forwards 1.5s cubic-bezier(0.36, 0.14, 0, 1) .8s 1 normal
}

.loading_en ._on img,
.loading_ja ._on img {
    clip-path: inset(0 100% 0 0);
    opacity: 0
}

.loading_en ._off img,
.loading_ja ._off img {
    clip-path: inset(0 100% 0 0);
    z-index: -1;
    opacity: 0
}

@keyframes copyClipIn {
    from {
        opacity: 0
    }

    to {
        clip-path: inset(0);
        opacity: 1
    }
}

@media screen and (max-width: 900px) {
    .loading_ja { position: relative; margin-top: 20px; }
    .loading_en > div,
    .loading_en > div img { width: 305px; margin: 0 auto; }
    .loading_ja > div,
    .loading_ja > div img  { width: 214px; margin: 0 auto; }
}

/*fade*/
.js-scroll-fade:not(.top_about_ph):not(.hd_anime) { opacity: 0; }
.isActive:not(.top_about_ph):not(.hd_anime) {
    -webkit-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-animation-duration: 2.4s;
    animation-duration: 2.4s;
    -webkit-animation-name: fadeUp;
    animation-name: fadeUp;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}
@-webkit-keyframes fadeUp{
	0%{opacity:0;-webkit-transform:translateY(30px);transform:translateY(30px)}
    10%{opacity:0; }
	to{opacity:1;-webkit-transform:none;trfooter_logo_setansform:none}
}
@keyframes fadeUp{
	0%{opacity:0;-webkit-transform:translateY(30px);transform:translateY(30px)}
    10%{opacity:0; }
	to{opacity:1;-webkit-transform:none;transform:none}
}

/*navi*/
header { width: 100%; height: 80px; position: fixed; background: rgba(255,255,255,0.4); z-index: 10; }
.header_logo { width: 44px; position: absolute; left: 2.57%; top: 50%; z-index: 10001; -webkit-transform:translateY(-50%); transform:translateY(-50%); }
.header_logo img { width: 100%; line-height: 0; }

.btn_humberger_box { display: block; width: 115px; height: 80px; z-index: 10001; position: fixed; top: 0; right: 2.14%; box-sizing: border-box; -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
.btn_humberger { width: 115px; display: flex; align-items: center; cursor: pointer; position: absolute; top: 50%; left: 50%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); }
.btn_humberger .line { display: block; position: relative; width: 50px; height: 13px; margin-left: 10px; -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
.btn_humberger .line span {content: ""; width: 50px; height: 1px; display: block; -webkit-transition: all 0.6s cubic-bezier(0.36, 0.14, 0, 1), opacity 0.4s cubic-bezier(0.36, 0.14, 0, 1); transition: all 0.6s cubic-bezier(0.36, 0.14, 0, 1), opacity 0.4s cubic-bezier(0.36, 0.14, 0, 1); background: #000; position: absolute; }
.btn_humberger .line span:nth-child(2){ left: 0; bottom: 0; }
.btn_humberger .line span:nth-child(1){ left: 0; top: 0; }
.btn_humberger .line span:nth-child(3){ left: 0; top: 6px; }
body.open .btn_humberger .line span:nth-child(2){ transform: rotate(15deg); bottom: 50%!important; }
body.open .btn_humberger .line span:nth-child(1){ transform: rotate(-15deg); top: 50%!important; }
body.open .btn_humberger .line span:nth-child(3){ opacity: 0;}
.btn_humberger .txt { font-size: 1.8rem; position: relative; }
.btn_humberger .txt .open { -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
.btn_humberger .txt .close { opacity: 0; width: 100%; display: block; position: absolute; top: 0; left: 0; text-align: right; -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
body.open .btn_humberger .txt .open { opacity: 0; }
body.open .btn_humberger .txt .close { opacity: 1; }

.op_global_nav { width: 100%; height: 100vh; background: #FAFAFA; position: fixed; z-index: 9999; opacity: 0; pointer-events: none; position: fixed; -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
body.open .op_global_nav { opacity: 1; pointer-events: visible; }
.pc_global_nav .nav_head { width: 130px; position: absolute; left: 8.92%; top: 50%; }
.pc_global_nav .nav_head .nav_logo { width: 95px; margin: 0 auto; -webkit-transform:translateY(-50%); transform:translateY(-50%); }
.pc_global_nav .nav_head .nav_logo img { width: 100%; }
.pc_global_nav .nav_sns { display: flex; justify-content: space-between; align-items: center; }
.pc_global_nav .nav_sns .ico { width: 26px; }
.pc_global_nav .nav_body { width: 59.71%; margin-left: 30.28%; position: absolute; top: 50%; -webkit-transform:translateY(-50%); transform:translateY(-50%); }
.pc_global_nav .nav_main { display: flex; justify-content: space-between; }
.pc_global_nav .nav_box { width: 30%; }
.pc_global_nav .nav_item + .nav_item { margin-top: 40px; }
.pc_global_nav .nav_item .font_en { font-size: 2.4rem; }
.pc_global_nav .nav_item .font_ja { font-size: 1.2rem; }
.pc_global_nav .nav_item ul { margin-top: 20px; }
.pc_global_nav .nav_item li { font-size: 1.2rem; color: #6F6E6C; margin-left: 15px; }
.pc_global_nav .nav_item li a { padding-left: 1em; position: relative; }
.pc_global_nav .nav_item li a:before { content: "-"; display: inline-block; position: absolute; left: 0; }

.pc_global_nav .nav_sub { border-top: 1px solid #707070; margin-top: 70px; padding-top: 40px; }
.pc_global_nav .nav_sub ul { display: flex; }
.pc_global_nav .nav_sub ul li { font-size: 1.2rem; }
.pc_global_nav .nav_sub ul li + li { margin-left: 80px; }

.sp_global_nav { display: none; }

@media screen and (max-width: 900px) {
header { width: 100%; height: 80px; position: fixed; background: rgba(255,255,255,0.4); z-index: 10; }
    .header_logo { width: 44px; position: absolute; left: 5.12%; top: 50%; z-index: 10001; -webkit-transform:translateY(-50%); transform:translateY(-50%); }
.header_logo img { width: 100%; line-height: 0; }

    .btn_humberger_box { display: block; z-index: 10001; position: fixed; top: 0; right: 5.12%; box-sizing: border-box; -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
.btn_humberger { width: 115px; display: flex; align-items: center; }
.btn_humberger .line { display: block; position: relative; width: 50px; height: 13px; margin-left: 10px; -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
.btn_humberger .line span {content: ""; width: 50px; height: 1px; display: block; -webkit-transition: all 0.6s cubic-bezier(0.36, 0.14, 0, 1), opacity 0.4s cubic-bezier(0.36, 0.14, 0, 1); transition: all 0.6s cubic-bezier(0.36, 0.14, 0, 1), opacity 0.4s cubic-bezier(0.36, 0.14, 0, 1); background: #000; position: absolute; }
    body.open .btn_humberger .line span { background: #fff; }
.btn_humberger .line span:nth-child(2){ left: 0; bottom: 0; }
.btn_humberger .line span:nth-child(1){ left: 0; top: 0; }
.btn_humberger .line span:nth-child(3){ left: 0; top: 6px; }
.btn_humberger .txt { font-size: 1.8rem; position: relative;  }
    body.open .btn_humberger .txt span { color: #fff; }
    .btn_humberger .txt .close { display: none; }
    
    .accordion_header { position: relative; }
    .accordion_header .ico { content: ""; display: block; width: 12px; height: 6px; position: absolute; right: 0; top: 28px; line-height: 0; }
    .accordion_header .ico.open { transform: scale(-1, -1); }

    .op_global_nav { background: #313C34; overflow-y: scroll; }
    .sp_global_nav > .inner { width: 89.74%; margin: 0 auto; padding: 40px 0; }
    .sp_global_nav .nav_head { display: flex; align-items: center; }
    .sp_global_nav .nav_sns { display: flex; align-items: center; margin-left: 48px; }
    .sp_global_nav .nav_sns .ico { width: 23px; }
    .sp_global_nav .nav_sns a + a { margin-left: 21px; }
    .sp_global_nav .nav_main { font-size: 2.0rem; border-top: 1px solid #EEEEEE; margin-top: 30px; }
    .sp_global_nav .nav_item { border-bottom: 1px solid #EEEEEE; }
    .sp_global_nav .nav_item > a , .nav_item > div { display: block; color: #fff; padding: 14px 0; }
    .sp_global_nav .nav_main ul { margin: 0px 0 20px; display: none; margin-left: 1em; }
    .sp_global_nav .nav_main li a { font-size: 1.4rem; color: #fff; }
    
    .sp_global_nav .nav_sub { margin-top: 35px; }
    .sp_global_nav .nav_sub a { font-size:1.2rem; color: #fff; }
    .sp_global_nav .nav_sub li + li { margin-top: 16px; }
    .sp_global_nav .copyright { font-size: 1.2rem; color: #ABAFAC; margin-top: 20px; }
    
    .sp_global_nav { display: block; }
    .pc_global_nav { display: none; }
}

/*top*/
.top_main { position: relative; }
.top_main_slide .swiper-slide { position: relative; }
.top_main_slide .top_main_ph img { width: 100%; height: 100vh; object-fit: cover; }
.top_main_copy { position: absolute; top: 50%; left: 10%; -webkit-transform:translateY(-50%); transform:translateY(-50%); z-index: 2; }
.top_main_copy .catch .sub { display: block; font-size: 5.0rem; color: #fff; font-weight: 600; line-height: 1.0; text-shadow: rgba(0,0,0,0.25) 0 0 20px; }
.top_main_copy .catch .main { display: block; font-size: 9.0rem; color: #fff; font-weight: 600; line-height: 1.0; text-shadow: rgba(0,0,0,0.25) 0 0 20px; }
.top_main_copy .read { font-size: 1.8rem; color: #fff; font-weight: 500; }
.top_main_copy .link_more { margin-top: 20px; }
.top_main_copy .link_more a { color: #fff; }
.top_main_copy .link_more > * .ico svg line { stroke: #fff; }

.top_main_slide { opacity: 1; -webkit-transition: opacity 0s cubic-bezier(.165,.84,.44,1); transition: opacity 0s cubic-bezier(.165,.84,.44,1); }
.top_main_slide.is-animation { opacity: 1; }
.top_main_slide .top_main_ph img { width: 100%; height: 100vh; object-fit: cover; object-position: center; }

@keyframes zoomUp {
  0% {
    transform: scale(1.12);
  }
  100% {
    transform: scale(1);
  }
}
.top_main_slide .swiper-slide-active-prev img,
.top_main_slide .swiper-slide-active img {
  -webkit-transform: scale(1.12);
  transform: scale(1.12);
  -webkit-animation: zoomUp 9s linear 0s normal both;
  animation: zoomUp 9s linear 0s normal both;
}
.top_main_slide .swiper-pagination { display: none; }
.top_main_slide .swiper-pagination-not-clickable {
    pointer-events: none;
}

.top_main_data { width: 80%; display: flex; justify-content: space-between; position: absolute; left: 10%; bottom: 13px; z-index: 2; }
.top_main_data > div { width: 23.92%; padding: 8px 0; position: relative; text-align: center; line-height: 1.5; }
.top_main_data * { color: #fff; font-size: 1.4rem; font-weight: 500; }
.top_main_data strong { font-size: 2.7rem; font-weight: 700; }
.top_main_data .small_font { font-size: 1.8rem; }
.top_main_data > div:after { content: ""; display: block; position: absolute; top: 0; width: 100%; height: 100%; background: #6F6E6C; border: 1px solid #fff; opacity: 0.7; z-index: -1; }

.top_about > .inner { width: 80%; margin: 140px auto 120px; display: flex; justify-content: space-between; }
.top_about_read { width: 48.39%; font-size: 3.4rem; color: #6F6E6C; }
.top_about_copy { width: 42.94%; font-size: 1.6rem; line-height: 1.75; }
.top_about_copy .link_more a { margin-top: 70px; justify-content: flex-end; }

.link_more { font-size: 1.6rem; font-weight: 500; }
.link_more > * { color: #66886F; display: flex; align-items: center; }
.link_more > * .ico { line-height: 0; margin-left: 15px; }
.link_more > * .ico svg { width: 6px; }
.link_more > * .ico svg line { stroke: #66886F; }
.btn_more > * { display: block; background: #888888; border: 1px solid #888; text-align: center; font-size: 1.6rem; color: #fff; padding: 12px 0; margin-top: 18px; }
.btn_more._back a { max-width: 340px; margin: 84px auto 0; }
.btn_more._back + .btn_more._back a { margin-top: 20px; }

.top_common_hd { font-size: 4.0rem; text-align: center; position: relative; padding-top: 0; }
.top_common_hd:before { content: ""; display: block; width: 1px; height: 50px; background: #36383A; position: absolute; top: 0; left: 50%; -webkit-transform:translateY(-100%); transform:translateY(-100%); }
.top_common_ttl { font-size: 1.4rem; text-align: center; }
.top_common_read { font-size: 1.2rem; color: #6F6E6C; text-align: center; max-width: 550px; margin: 30px auto 0; }

.top_products { background: #F2F2F2; padding: 120px 0 90px; text-align: center; }
.top_products > .inner { width: 80%; margin: 0 auto; }
.top_products_list { display: flex; justify-content: space-between; margin-top: 64px; }
.top_products_item { width: 45.35%; }
.top_products_item > .inner { background: #fff; padding: 15px 0 12px; }
.top_products_item .font_en { font-size: 2.4rem; line-height: 1.2; }
.top_products_item .plan { font-size: 1.2rem; }
.top_products_item .ph { margin-top: 10px; }
.top_products_item .ph img { width: 100%; }
.top_products_item  .lineup { font-size: 1.2rem; margin-top: 12px; }
.top_products_item  .lineup .num { font-size: 2.4rem; display: inline-block; padding-right: 10px;}

.top_works { padding: 190px 0 0; }
.top_works > .inner { width: 80%; margin: 0 auto; }
.archive_works_list { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 62px 0 20px; }
.archive_products_item { width: 45.35%; margin-bottom: 65px; position: relative; }
.archive_products_item .ttl { font-size: 1.6rem; margin-top: 16px; }
.archive_products_item .type { font-size: 1.2rem; margin-top: 8px; }
.archive_products_item .cat { margin-top: 8px; }
.archive_products_item .cat span { display: inline-block; font-size: 1.2rem; border: 1px solid #6F6E6C; margin: 0 6px 6px 0; padding: 2px 11px; }
.archive_products_item .link_more { margin-top: 20px; }
.archive_products_item .ph { padding-bottom: 66.66%; position: relative; overflow: hidden; }
.archive_products_item._movie .ph { padding-bottom: 54.33%; }
.archive_products_item .ph > div > img,
.archive_products_item .ph > img { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%;-webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); object-fit: cover; }
.archive_products_item._movie .ico { display: block; width: 46px; height: 46px; position: absolute; top: 50%; left: 50%;-webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.archive_products_item._movie .ico img { position: relative; }
.top_works .btn_more > * { max-width: 340px; margin: 0 auto; }

.top_news { margin-top: 170px; }
.top_news._partnership { margin-top: 100px; }
.top_news .hd { font-size: 4.0rem; }
.top_news .ttl { font-size: 1.4rem; }
.top_news > .inner { width: 80%; margin: 0 auto; display: flex; justify-content: space-between; }
.top_news_head { width: 25.35%; }
.top_news_list { width: 74.65%; }
.top_news_item { display: flex; align-items: flex-start; padding: 25px 0; border-bottom: 1px solid #AAAAAA; }
.archive_news_list .top_news_item { padding: 40px 0; }
.top_news_item:first-child { padding-top: 0; }
.top_news_item .date { width: 84px; font-size: 1.2rem; }
.top_news_item .cat span { display: inline-block; width: 56px; padding: 2px 0; font-size: 1.2rem; color: #fff; background: #888888; border-radius: 3px; text-align: center; line-height: 1.5; }
.top_news_item .ttl { width: calc(100% - 160px); margin-left: 14px; font-size: 1.4rem; }
.top_news .link_more { margin-top: 56px; }
.top_news_item .ico { width: 20px; text-align: right; }
.top_news_item .ico svg { width: 6px; }
.top_news_item .ico svg line { stroke: #36383A; }

.top_movie { margin-top: 158px; padding: 70px 0; background: url("../img/top_movie_bgph.jpg") no-repeat center / cover; position: relative; }
.top_movie:before { content:""; display: block; width: 100%; height: 100%; position: absolute; top: 0; background: rgba(0,0,0,0.2); }
.top_movie_body { width: 74.57%; margin-left: 17.92%; background: rgba(255,255,255,0.9); }
.top_movie_body .read { font-size: 1.2rem; color: #6F6E6C; text-align: center; }
.top_movie_body > .inner { padding: 45px 4.02%; }
.top_movie_list { margin: 65px auto; display: flex; justify-content: space-between; }
.top_movie_item { width: 31.25%; }
.top_movie_item .ph { position: relative; padding-bottom: 54.33%; position: relative; overflow: hidden; }
.top_movie_item .ph > img { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); object-fit: cover; }
.top_movie_item .ph .ico { position: absolute; top: 50%; left: 50%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); }
.top_movie_item .ttl { font-size: 1.6rem; color: #6F6E6C; margin-top: 20px; }
.top_movie_body .btn_more > * { max-width: 340px; margin: 0 auto; }

.top_movie_head { display: flex; align-items: center; position: absolute; top: 0; left: 10%;-webkit-transform:rotate(90deg) translateY(-100%); transform:rotate(90deg) translateY(-100%); transform-origin: left top; }
.top_movie_head:before { content: ""; display: block; width: 55px; height: 1px; background: #fff; }
.top_movie_head .hd { font-size: 4.0rem; color: #fff; margin-left: 15px; line-height: 1; }
.top_movie_head .ttl { font-size: 1.4rem; color: #fff; margin-left: 23px; }

.top_banner > .inner { width: 80%; margin: 126px auto 0; display: flex; justify-content: space-between; }
.top_banner a { width: 48.12%; height: 204px; position: relative; text-align: center; color: #fff; }
.top_banner._triple a { width: 30.26%; }
.top_banner a .ph:after { content: ""; display: block; width: 100%; height: 100%; background: #9D9D9D; mix-blend-mode:multiply; position: absolute; top: 0; left: 0; }
.top_banner a .ph img { width: 1000%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; }
.top_banner a .txt { width: 100%; position: absolute; left: 50%; top: 50%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); }
.top_banner a .txt:before { content: ""; display: block; width: 1px; height: 70px; background: #fff; position: absolute; top: 0; left: 50%; -webkit-transform: translateY(-100%); transform: translateY(-100%); }
.top_banner a .font_en { font-size: 4.0rem; color: #fff; line-height: 1.2; }
.top_banner a .ttl { font-size: 1.4rem; color: #fff; }

.top_banner_lp > .inner { width: 80%; margin: 26px auto 0; display: flex; justify-content: center; }
.top_banner_lp a { width: 30.26%; }
.top_banner_lp a .txt { font-size: 1.6rem; text-align: center; margin-top: 10px; }
.top_banner_head .hd { font-size: 4.0rem; text-align: center; position: relative; padding-top: 0; margin-top: 80px; line-height: 1.2; }
.top_banner_head .ttl { font-size: 1.4rem; text-align: center; }

.top_sns > .inner { width: 80%; margin: 126px auto; display: flex; justify-content: space-between; }
.top_sns a { width: 31.87%; height: 70px; background: #F2F2F2; text-align: center; position: relative; }
.top_sns a .ico { position: absolute; left: 50%; top: 50%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); }

footer { background: #313C34; margin-top: 148px; }
footer > .inner { width: 80%; margin: 0 auto; padding: 60px 0 18px; }
.footer_company { display: flex; align-items: center; }
.footer_company .info { margin-left: 52px; }
.footer_company address { font-size: 1.4rem; color: #fff; margin-top: 15px; } 
.footer_nav { display: flex; margin-top: 65px; }
.footer_nav > ul { width: 20%; }
.footer_nav ul li { font-size: 1.2rem; color: #fff; margin-bottom: 10px; }
.footer_nav ul li li { color: #ADB1AE; margin-top: 10px; }
.footer_nav.sp { display: none; }

.footer_function { display: flex; justify-content: space-between; flex-direction: row-reverse; margin-top: 95px; }
.footer_function .copyright { font-size: 1.2rem; color: #ADB1AE; }
.footer_function ul { display: flex; justify-content: flex-end; }
.footer_function ul li { margin-left: 32px; }
.footer_function ul li a { font-size: 1.2rem; color: #ADB1AE; }
.footer_sns { display: none; }

@media screen and (max-width: 1400px) {
    .top_main_data * { color: #fff; font-size: 1.2rem; font-weight: 500; }
    .top_main_data strong { font-size: 2.1rem; font-weight: 700; }
}

@media screen and (max-width: 1100px) {
    .top_main_data * { color: #fff; font-size: 1.0rem; font-weight: 500; }
    .top_main_data strong { font-size: 1.7rem; font-weight: 700; }
    
    .top_banner a .font_en { font-size: 3.0rem; color: #fff; line-height: 1.2; }
}

@media screen and (max-width: 900px) {
.top_main { position: relative; }
    .top_main_copy { width: 100%; position: absolute; top: 100px; left: 0; -webkit-transform:translateY(0%); transform:translateY(0%); z-index: 2; text-align: center; }
    .top_main_copy .catch .sub { display: block; font-size: 4.0rem; color: #fff; font-weight: 600; line-height: 1.0; text-shadow: rgba(0,0,0,0.25) 0 0 20px; }
    .top_main_copy .catch .main { display: block; font-size: 6.5rem; color: #fff; font-weight: 600; line-height: 1.0; text-shadow: rgba(0,0,0,0.25) 0 0 20px; }
    .top_main_copy .read { font-size: 1.8rem; color: #fff; font-weight: 500; margin-top: 0; }
.top_main_copy .link_more { margin-top: 20px; }
.top_main_copy .link_more a { justify-content: center; color: #fff; }
.top_main_copy .link_more > * .ico svg line { stroke: #fff; }
    .top_main_copy .link_more .txt { line-height: 1.2; border-bottom: 1px solid #fff; }
    .top_main_copy .link_more > * .ico { margin-left: 5px; }

    .top_main_data { width: 89.76%; display: flex; justify-content: space-between; flex-wrap: wrap; position: absolute; left: 5.12%; bottom: 20px; z-index: 2; }
    .top_main_data > div { width: 48.57%; margin-top: 2.86%; padding: 8px 0; position: relative; text-align: center; line-height: 1.5; }
    .top_main_data * { color: #fff; font-size: 1.2rem; font-weight: 500; }
    .top_main_data strong { font-size: 2.7rem; font-weight: 700; letter-spacing: 0; }
.top_main_data > div:after { content: ""; display: block; position: absolute; top: 0; width: 100%; height: 100%; background: #6F6E6C; border: 1px solid #fff; opacity: 0.7; z-index: -1; }

    .top_about > .inner { width: 89.74%; margin: 75px auto; display: block; justify-content: space-between; }
    .top_about_read { width: auto; font-size: 2.8rem; color: #6F6E6C; }
    .top_about_copy { width: auto; font-size: 1.6rem; line-height: 1.75; margin-top: 40px; }
    .top_about_copy .link_more a { margin-top: 30px; justify-content: flex-end; }

.link_more { font-size: 1.6rem; font-weight: 500; }
.link_more > * { color: #66886F; display: flex; align-items: center; }
    .archive_products_item .link_more > * { justify-content: flex-end; }
.link_more > * .ico { line-height: 0; margin-left: 15px; }
.link_more > * .ico svg { width: 6px; }
.link_more > * .ico svg line { stroke: #66886F; }
    .btn_more a { background: #888888; text-align: center; font-size: 1.6rem; color: #fff; padding: 13px 0; margin-top: 36px; }
    .btn_more._back a { max-width: none; width: 89.74%; margin: 38px auto 0; }
    .single_body + .btn_more._back a { margin-top: 0; }

.top_common_hd { font-size: 4.0rem; text-align: center; position: relative; padding-top: 0; }
.top_common_hd:before { content: ""; display: block; width: 1px; height: 50px; background: #36383A; position: absolute; top: 0; left: 50%; -webkit-transform:translateY(-100%); transform:translateY(-100%); }
.top_common_ttl { font-size: 1.4rem; text-align: center; }
.top_common_read { font-size: 1.2rem; color: #6F6E6C; text-align: center; max-width: 550px; margin: 30px auto 0; }

    .top_products { background: #F2F2F2; padding: 86px 0 70px; text-align: center; }
    .top_products > .inner { width: 89.74%; margin: 0 auto; }
    .top_products_list { display: block; justify-content: space-between; margin-top: 0; }
    .top_products_item { display: block; width: auto; margin-top: 45px; }
.top_products_item .font_en { font-size: 2.4rem; }
.top_products_item .plan { font-size: 1.2rem; }
.top_products_item .ph { margin-top: 10px; }

    .top_works { padding: 111px 0 0; }
    .top_works > .inner { width: 89.74%; margin: 0 auto; }
    .archive_works_list { display: block; flex-wrap: wrap; justify-content: space-between; margin: 45px 0 20px; }
    .archive_products_item { display: block; width: 100%; margin-bottom: 65px; }
.archive_products_item .ttl { font-size: 1.6rem; margin-top: 16px; }
.archive_products_item .type { font-size: 1.2rem; margin-top: 8px; }
.archive_products_item .cat { margin-top: 8px; }
.archive_products_item .cat span { display: inline-block; font-size: 1.2rem; border: 1px solid #6F6E6C; margin-right: 6px; padding: 3px 11px; }
.archive_products_item .link_more { margin-top: 20px; }
    .top_works .btn_more a { max-width: 100%; margin: 0 auto; }

    .top_news { margin-top: 95px; }
    .top_news._partnership { margin-top: 60px; }
    .top_news .hd { font-size: 4.0rem; }
    .top_news .ttl { font-size: 1.4rem; }
    .top_news > .inner { width: 89.74%; margin: 0 auto; display: block; justify-content: space-between; }
    .top_news_head { width: 100%; text-align: center; }
    .top_news_list { width: 100%; margin-top: 37px; }
    .top_news_item { display: flex; align-items: flex-start; flex-wrap: wrap; padding: 25px 0; border-bottom: 1px solid #AAAAAA; position: relative; }
    .archive_news_list .top_news_item { padding: 25px 0; }
.top_news_item:first-child { padding-top: 0; }
.top_news_item .date { width: 84px; font-size: 1.2rem; }
.top_news_item .cat span { display: inline-block; width: 56px; padding: 2px 0; font-size: 1.2rem; color: #fff; background: #888888; border-radius: 3px; text-align: center; }
    .top_news_item .ttl { width: 85.71%; margin-left: 0; margin-top: 12px; font-size: 1.4rem; }
.top_news .link_more { margin-top: 28px; }
    .top_news .link_more a { justify-content: flex-end; }
    .top_news_item .ico { width: 20px; text-align: right; position: absolute; right: 0; top: 50%; -webkit-transform:translateY(-50%); transform:translateY(-50%); }
.top_news_item .ico svg { width: 6px; }
.top_news_item .ico svg line { stroke: #36383A; }

    .top_movie { margin-top: 98px; padding: 38px 0 26px; background: url("../img/top_movie_bgph.jpg") no-repeat center / cover; position: relative; }
    .top_movie_body { width: 89.74%; margin: 35px auto 0; background: rgba(255,255,255,0.9); }
.top_movie_body .read { font-size: 1.2rem; color: #6F6E6C; text-align: center; }
    .top_movie_body > .inner { padding: 28px 7.14%; }
    .top_movie_list { margin: 30px auto; display: block; justify-content: space-between; }
    .top_movie_item { display: block; width: auto; }
    .top_movie_item  + .top_movie_item { margin-top: 22px; }
.top_movie_item .ph { position: relative; }
.top_movie_item .ph .ico { position: absolute; top: 50%; left: 50%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); }
    .top_movie_item .ttl { font-size: 1.6rem; color: #6F6E6C; margin-top: 16px; }
    .top_movie_body .btn_more a { max-width: none; margin: 0 auto; }

    .top_movie_head { display: block; position: relative; top: auto; left: auto;-webkit-transform:rotate(0); transform:rotate(0); transform-origin: left top; text-align: center; }
    .top_movie_head:before { content: ""; display: block; width: 1px; height: 50px; margin: 0 auto; background: #fff; }
    .top_movie_head .hd { font-size: 4.0rem; color: #fff; margin-left: 0; line-height: 1.5; }
    .top_movie_head .ttl { font-size: 1.4rem; color: #fff; margin-left: 0; }

    .top_banner > .inner { width: 89.74%; margin: 48px auto 0; display: block; }
    .top_banner a { display: block; width: 100%; position: relative; text-align: center; color: #fff; }
    .top_banner._triple a { width: 100%; }
    .top_banner a + a { margin-top: 16px; }
    .top_banner a .ph img { width: 100%; height: 204px; object-fit: cover; }
.top_banner a .ph:after { content: ""; display: block; width: 100%; height: 100%; background: #9D9D9D; mix-blend-mode:multiply; position: absolute; top: 0; left: 0; }
.top_banner a .txt { width: 100%; position: absolute; left: 50%; top: 50%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); }
.top_banner a .txt:before { content: ""; display: block; width: 1px; height: 70px; background: #fff; position: absolute; top: 0; left: 50%; -webkit-transform: translateY(-100%); transform: translateY(-100%); }
.top_banner a .font_en { font-size: 4.0rem; color: #fff; line-height: 1.2; }
.top_banner a .ttl { font-size: 1.4rem; color: #fff; }
    
    .top_banner_lp > .inner { width: 89.74%; margin: 26px auto 0; display: flex; justify-content: center; flex-wrap: wrap; }
    .top_banner_lp a { width: 100%; max-width: 400px; margin: 0 auto; }

    .top_sns > .inner { width: 89.74%; margin: 48px auto 0; display: block; }
    .top_sns a { display: block; width: auto; height: 70px; background: #F2F2F2; text-align: center; position: relative; }
    .top_sns a + a { margin-top: 16px; }
.top_sns a .ico { position: absolute; left: 50%; top: 50%; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); }

    footer { background: #313C34; margin-top: 25px; }
    body.home footer { margin-top: 48px; }
    footer > .inner { width: 89.74%; margin: 0 auto; padding: 48px 0 18px; }
    .footer_company { display: block; align-items: center; }
    .footer_company .logo { text-align: center;  }
    .footer_company .info { margin-left: 0; text-align: center; margin-top: 32px; }
    .footer_company address { font-size: 1.4rem; color: #fff; margin-top: 15px; } 
    .footer_nav { margin-top: 32px; }
    .footer_nav > ul:first-child { border-top: none; }
    .footer_nav > ul { display: flex; flex-wrap: wrap; width: 100%; }
    .footer_nav ul li { width: 50%; font-size: 1.2rem; font-weight: 500; color: #fff; text-align: center; margin-bottom: 0; }
    .footer_nav ul li a { display: block; padding: 7px 0; }
    .footer_nav.pc { display: none; }
    .footer_nav.sp { display: block; }

    .footer_function { display: flex; justify-content: space-between; flex-direction: column; margin-top: 32px; }
    .footer_function .copyright { font-size: 1.2rem; color: #ADB1AE; margin-top: 32px; text-align: center; }
    .footer_function ul { display: flex; justify-content: center; }
    .footer_function ul li { margin-left: 40px; }
    .footer_function ul li:first-child { margin-left: 0; }
.footer_function ul li a { font-size: 1.2rem; color: #ADB1AE; }
    .footer_sns { display: flex; justify-content: center; align-items: center; margin-top: 32px; }
    .footer_sns a + a { margin-left: 49px; }
    .footer_sns .ico { width: 23px; }
}

/*common*/
.page_head > .inner { width: 80%; margin: 0 auto; padding: 180px 0 18px; }
.page_head .hd { font-size: 6.0rem; font-weight: 600; line-height: 1.2; }
.page_head .ttl { font-size: 1.8rem; position: relative; padding-left: 36px; }
.page_head .ttl:before { content: ""; display: block; width: 32px; height: 1px; background: #000; position: absolute; left: 0; top: 50%; }

.breadcrumbs { display: flex; align-items: flex-end; flex-wrap: wrap; font-size: 1.0rem; position: absolute; top: 102px; left: 6%; z-index: 2; }
.breadcrumbs._footer { position: relative; left: 10%; top: 115px; }
.breadcrumbs span { line-height: 1; }
.breadcrumbs .ico_arrow { width: 30px; height: 1px; margin: 0 4px; background: #aaa; }

@media screen and (max-width: 900px) {
    .page_head > .inner { width: 89.74%; margin: 0 auto; padding: 142px 0 0; }
    .page_head .hd { font-size: 4.8rem; }
    .page_head .ttl { font-size: 1.6rem; position: relative; padding-left: 36px; }
.page_head .ttl:before { content: ""; display: block; width: 32px; height: 1px; background: #000; position: absolute; left: 0; top: 50%; }

    .breadcrumbs { display: flex; align-items: flex-end; font-size: 1.0rem; position: absolute; top: 93px; left: 5.13%; z-index: 2; }
    .breadcrumbs span { line-height: 1; margin-top: 5px; }
.breadcrumbs .ico_arrow { width: 30px; height: 1px; background: #aaa; }
    .breadcrumbs._footer { position: relative; left: 5.12%; top: auto; margin-top: 80px; }
}

/*products*/
.archive_products_list { display: flex; flex-wrap: wrap; margin: 62px 0 35px; }
.archive_products_list .archive_products_item { width: 30.26%; margin-bottom: 80px; margin-left: 4.61%; }
.archive_products_list .archive_products_item:nth-child(3n+1) { margin-left: 0; }

.select_cat { width: 100%; padding: 9px 40px 9px 20px; box-sizing: border-box; background: #eee; border: none; border-radius: 30px; font-size: 1.4rem; }
.select_box { display: flex; }
.select_cat_wrap { margin-left: 10px; position: relative; }
.select_cat_wrap::after {
    content: "";
    display: block;
    position: absolute;
    top: 12px;
    right: 12px;
    width: 6px;
    height: 6px;
    border-right: 2px solid #333;
    border-bottom: 2px solid #333;
    transform: rotate(45deg);
}
.select_cat_wrap select {
    -webkit-appearance: none;
    appearance: none;
}

.page_body > .inner { width: 80%; margin: 0 auto; padding: 60px 0 18px; }

.archive_cat_list { display: flex; flex-wrap: wrap; }
.archive_cat_list a { font-size: 1.4rem; border: 1px solid #6F6E6C; padding: 7px 26px; margin: 0 10px 10px 0; }
.archive_cat_list .active { background: #6F6E6C; color: #fff; }

.page_nav { display: flex; justify-content: center; align-items: center; padding: 0 300px; position: relative; }
.page_nav .prev,
.page_nav .next { display: block; width: 23.75%; max-width: 266px; position: absolute;  font-size: 1.4rem; text-align: center; display: block; background: #888888; border: 1px solid #888; color: #fff; padding: 12px 0; box-sizing: border-box; }
.page_nav .prev { left: 0; }
.page_nav .next { right: 0; }
.page_nav .page-numbers:not(.prev):not(.next) { font-size: 1.4rem; margin: 0 15px; }
.page_nav .prev .ico,
.page_nav .next .ico { line-height: 0; }
.page_nav .prev .ico svg,
.page_nav .next .ico svg { width: 6px; }
.page_nav .prev .ico svg line,
.page_nav .next .ico svg line { stroke: #fff; }
.page_nav .prev .ico,
.page_nav .next .ico { position: absolute; top: 50%; }
.page_nav .prev .ico { left: 23px; -webkit-transform: scale(-1, 1) translateY(-50%); transform: scale(-1, 1) translateY(-50%); }
.page_nav .next .ico { right: 23px; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.page_nav span { border-bottom: 1px solid #000; }

@media screen and (max-width: 900px) {
    .archive_products_list { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 94px 0 35px; }
    .archive_products_list .archive_products_item { width: 47.5%; margin-bottom: 48px; margin-left: 5%;  }
    .archive_products_list .archive_products_item:nth-child(3n+1) { margin-left: 5%; }
    .archive_products_list .archive_products_item:nth-child(2n+1) { margin-left: 0; }
    
    .select_cat_wrap { margin-left: 0; position: relative; }
    .select_cat_wrap + .select_cat_wrap { margin-left: 10px; }

    .page_body > .inner { width: 89.74%; margin: 0 auto; padding: 60px 0 18px; }

.archive_cat_list { display: flex; flex-wrap: wrap; }
    .archive_cat_list a { font-size: 1.4rem; border: 1px solid #6F6E6C; padding: 4px 8px; margin-right: 10px; }
.archive_cat_list .active { background: #6F6E6C; color: #fff; }

    .page_nav { display: flex; flex-wrap: wrap; align-items: center; padding: 0 0 120px; }
    .page_nav .prev,
    .page_nav .next { width: 33.14%; min-width: 116px; max-width: 266px; bottom: 0; }
    .page_nav .prev { order: 2; }
    .page_nav .next { order: 3; }
    .page_nav .prev a,
    .page_nav .next a { font-size: 1.4rem; text-align: center; display: block; background: #888888; color: #fff; padding: 15px 0; position: relative;}
    .page_nav .num { font-size: 1.4rem; display: flex; justify-content: center; width: 100%; margin-bottom: 60px; order: 1; }
.page_nav .num > * { margin: 0 15px; }
.page_nav .num > span { border-bottom: 1px solid #000; }
.page_nav .prev .ico,
.page_nav .next .ico { line-height: 0; }
.page_nav .prev .ico svg,
.page_nav .next .ico svg { width: 6px; }
.page_nav .prev .ico svg line,
.page_nav .next .ico svg line { stroke: #fff; }
.page_nav .prev .ico,
.page_nav .next .ico { position: absolute; top: 50%; }
.page_nav .prev .ico { left: 23px; -webkit-transform: scale(-1, 1) translateY(-50%); transform: scale(-1, 1) translateY(-50%); }
.page_nav .next .ico { right: 23px; -webkit-transform: translateY(-50%); transform: translateY(-50%); } 
}

@media screen and (max-width: 600px) {
    .archive_products_list .archive_products_item { width: 100%; margin-bottom: 48px; margin-left: 0!important; }
}
    
/*products single*/
.products_head { position: relative; }
.products_head .ph img { width: 100%; height: 100vh; object-fit: cover; }
.products_head .ttl { width: 74.78%; min-width: 750px; padding: 10px 30px 10px 10%; box-sizing: border-box; position: absolute; bottom: 0; left: 0; background: #FAFAFA; display: flex; }
.products_head .ttl .num { font-size: 1.2rem; margin-top: 5px; }
.products_head .ttl .num span { font-size: 1.6rem; font-weight: 700; }
.products_head .ttl .name { font-size: 4.6rem; font-weight: 500; line-height: 1.0; margin-left: 15px; }
.products_head .ttl .read { font-size: 1.6rem; align-self: center; margin-left: 30px; }

.products_concept > .inner { width: 80%; margin: 116px auto 0; display: flex; justify-content: space-between; }
.products_concept > .inner > .txt { width: 36.60%; }
.products_concept > .inner > .ph { width: 55.62%; }
.products_concept > .inner > .ph._movie { padding-bottom: 30px; overflow: hidden; }
.products_concept .hd { font-size: 1.4rem; margin-bottom: 45px; }

.concept_slide_main { overflow: hidden; }
.concept_slide_nav { overflow: hidden; margin: 24px -18px 0; padding: 0 18px; position: relative; }
.concept_slide_main .swiper-slide,
.concept_slide_nav .swiper-slide > div { padding-bottom: 56%; position: relative; }
.concept_slide_main .swiper-slide img,
.concept_slide_nav .swiper-slide img { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }

.concept_slide_nav .swiper-button-prev { left: -0; }
.concept_slide_nav .swiper-button-next { right: -0; }

.movie_slide { position: absolute; width: 100%; height: 100%; }
.movie_slide .swiper-wrapper { height: 100%; }
.movie_slide .swiper-slide { height: 100%; position: relative; display: flex; justify-content: center; align-items: center; }
.movie_slide .swiper-slide .ico { width: 70px; height: 70px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.movie_slide .swiper-slide img { width: 100%; height: 100%; position: absolute; top: 0; left: 0; object-fit: cover; }
.movie_slide_box { padding-bottom: 56%; position: relative; }
.movie_slide_box .swiper-pagination { position: absolute; left: 0px; top: auto; bottom: -30px; transform: translate3d(0px, 0%, 0); }
.movie_slide_box .swiper-pagination-bullet,
.products_data_ph .main_ph .swiper-pagination-bullet { width: 10px; height: 10px; opacity: 0.5; background: #888; }
.movie_slide_box .swiper-pagination-bullet + .swiper-pagination-bullet,
.products_data_ph .main_ph .swiper-pagination-bullet + .swiper-pagination-bullet { margin-left: 10px!important; }
.movie_slide_box .swiper-pagination-bullet-active,
.products_data_ph .main_ph .swiper-pagination-bullet-active { opacity: 1; }

.products_data_ph .main_ph .swiper-pagination { position: absolute; left: 0px; top: auto; bottom: 0; transform: translate3d(0px, 0%, 0); }

.products_point .hd { font-size: 1.4rem; margin-bottom: 50px; }
.products_point > .inner { width: 80%; margin: 160px auto 0; }
.products_point_list { margin-top: 50px; display: flex; justify-content: space-between; flex-wrap: wrap; }
.products_point_item { width: 30.26%; margin-bottom: 64px; }
.products_point_item h2 { font-size: 1.8rem; margin-bottom: 12px; }
.products_point_item h2 .num { display: inline-block; width: 22px; height: 22px; margin-right: 10px; background: #000; font-size: 1.4rem; color: #fff; text-align: center; }
.products_point_item p { line-height: 1.75; }

.products_point_item .ph { margin-top: 24px; padding-bottom: 66.66%; position: relative; }
.products_point_item .ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; }

.products_data { background: #F2F2F2; margin-top: 170px; padding: 98px 0 90px; }
.products_data > .inner { width: 69.85%; margin: 0 auto; }
.tab-box { display: none; justify-content: center; margin-bottom: 92px; }
.tab-box.disp { display: flex; }
.tab-item { width: 197px; text-align: center; background: #fff; font-size: 1.4rem; padding: 8px 0; cursor: pointer; }
.tab-item + .tab-item { margin-left: 12px; }
.tab-item.active { background: #888888; color: #fff; }
.panel-item { display: none; }
.panel-item.active { display: block; }

.products_data_txt { display: flex; justify-content: space-between; }
.products_data_txt .data01,
.products_data_txt .data02 { width: 49.18%; }
.products_data_txt .data01 .hd { font-size: 1.4rem; }
.products_data_txt .data01 .name { font-size: 2.8rem; margin-top: 64px; }
.products_data_txt .data01 .tubo { font-size: 1.4rem; }
.products_data_txt .data01 .tubo span { font-size: 2.4rem; }
.products_data_txt .data01 .price { font-size: 1.6rem; }
.products_data_txt .data01 .price span { font-weight: 500; }

.products_data_txt .data02 table { font-size: 1.6rem; width: 100%; }
.products_data_txt .data02 th { font-weight: 500; width: 7em; }
.products_data_txt .data02 td { font-weight: 400; }
.products_data_txt .data02 th, .products_data_txt .data02 td { border-bottom: 1px solid #aaa; padding: 8px 0; }

.products_data_ph { margin-top: 55px; }
.products_data_ph .main_ph { overflow: hidden; position: relative; padding-bottom: 30px; }
.products_data_ph .main_ph .swiper-slide { padding-bottom: 62.5%; position: relative; }
.products_data_ph .main_ph .swiper-slide img { position: absolute; width: 100%; height: 100%; object-fit: cover; }
.products_data_ph .notes { font-size: 1.2rem; margin-top: 15px; }
.products_data_ph .sub_ph { display: flex; justify-content: space-between; position: relative; margin: 47px 0 30px; }
.products_data_ph .sub_ph > div { width: 44.17%; position: relative; }
.products_data_ph .sub_ph > div img { margin-left: 17.36%; width: 82.64%; }
.products_data_ph .sub_ph .floor { display: inline-block; width: 50px; height: 50px; padding: 13px 0; box-sizing: border-box; position: absolute; top: 50px; left: 0; border: 1px solid #000; border-radius: 50%; font-size: 2.0rem; font-weight: 400; line-height: 1; text-align: center; }

.products_architect > .inner { display: flex; justify-content: space-between; width: 80%; margin: 88px auto 0; padding: 32px; box-sizing: border-box; background: #fff; }
.products_architect_txt { margin-right: 39px; }
.products_architect_ph { min-width: 132px; width: 132px; }
.products_architect_txt .hd { font-size: 1.4rem; }
.products_architect_txt .company { font-size: 1.2rem; margin-top: 16px; }
.products_architect_txt .name { font-size: 1.6rem; margin-bottom: 16px; }
.products_architect_txt p { font-size: 1.4rem; }
.products_architect_txt .link_more a { justify-content: flex-end; margin-top: 16px; }


@media screen and (max-width: 900px) {
.products_head { position: relative; }
    .products_head .ph img { width: 100%; height: 66.66vw; object-fit: cover; }
    .products_head .ttl { width: 100%; min-width: auto; padding: 10px 5.14%; box-sizing: border-box; position: relative; bottom: 0; left: 0; background: #fff; display: flex; flex-wrap: wrap; }
    .products_head .ttl .num { font-size: 1.2rem; margin-top: 5px; }
    .products_head .ttl .num span { font-size: 1.4rem; font-weight: 700; }
    .products_head .ttl .name { font-size: 4.2rem; font-weight: 600; line-height: 1.0; margin-left: 15px; }
    .products_head .ttl .read { width: 100%; font-size: 1.4rem; align-self: center; margin-left: 0; margin-top: 8px; box-sizing: border-box; }

    .products_concept > .inner { width: 89.74%; margin: 70px auto 0; display: block; justify-content: space-between; }
    .products_concept > .inner > .txt { width: auto; }
    .products_concept > .inner > .ph { width: auto; margin-top: 30px; }
    .products_concept .hd { font-size: 1.4rem; margin-bottom: 25px; }

.concept_slide_main { overflow: hidden; }
.concept_slide_nav { overflow: hidden; margin-top: 24px; }

.movie_slide { overflow: hidden; }
.movie_slide .swiper-slide { position: relative; }
.movie_slide .swiper-slide .ico { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }

    .products_point .hd { font-size: 1.4rem; margin-bottom: 50px; }
    .products_point > .inner { width: 89.74%; margin: 128px auto 0; }
    .products_point_list { margin-top: 30px; display: block; }
    .products_point_item { width: auto; }
    .products_point_item + .products_point_item { margin-top: 50px;}
.products_point_item h2 { font-size: 1.8rem; margin-bottom: 12px; }
.products_point_item h2 .num { display: inline-block; width: 22px; height: 22px; margin-right: 10px; background: #000; font-size: 1.4rem; color: #fff; text-align: center; }
.products_point_item p { line-height: 1.75; }

.products_point_item .ph { margin-top: 24px; }

    .products_data { background: #F2F2F2; margin-top: 128px; padding: 40px 0 73px; }
.products_data > .inner { width: 89.74%; margin: 0 auto; }
    .tab-item { display: flex; justify-content: center; margin-bottom: 48px; }
.tab-item a { width: 197px; text-align: center; background: #fff; font-size: 1.4rem; padding: 8px 0; }
.tab-item a + a { margin-left: 12px; }

    .products_data_txt { display: block; justify-content: space-between; }
    .products_data_txt .data01,
    .products_data_txt .data02 { width: auto; }
.products_data_txt .data01 .hd { font-size: 1.4rem; }
    .products_data_txt .data01 .name { font-size: 2.8rem; margin-top: 50px; }
.products_data_txt .data01 .tubo { font-size: 1.4rem; }
.products_data_txt .data01 .tubo span { font-size: 2.4rem; }
.products_data_txt .data01 .price { font-size: 1.6rem; }
.products_data_txt .data01 .price span { font-weight: 500; }

    .products_data_txt .data02 table { font-size: 1.6rem; width: 100%; margin-top: 15px; }
.products_data_txt .data02 th { font-weight: 500; width: 7em; }
.products_data_txt .data02 td { font-weight: 400; }
.products_data_txt .data02 th, .products_data_txt .data02 td { border-bottom: 1px solid #aaa; padding: 8px 0; }

    .products_data_ph { margin-top: 28px; }
    .products_data_ph .sub_ph { display: block; justify-content: space-between; position: relative; margin: 47px 0 30px; }
    .products_data_ph .sub_ph > div { width: auto; position: relative; }
    .products_data_ph .sub_ph > div + div { margin-top: 36px; }
.products_data_ph .sub_ph > div img { margin-left: 17.36%; width: 82.64%; }
.products_data_ph .sub_ph .floor { display: inline-block; width: 50px; height: 50px; padding: 13px 0; box-sizing: border-box; position: absolute; top: 50px; left: 0; border: 1px solid #000; border-radius: 50%; font-size: 2.1rem; line-height: 1; text-align: center; } 

    .products_architect > .inner { display: flex; flex-direction: column-reverse; justify-content: center; width: 89.74%; margin: 54px auto 0; padding: 32px; box-sizing: border-box; background: #fff; }
    .products_architect_txt { margin-right: 0; }
    .products_architect_ph { min-width: 132px; width: 132px; margin: 0 auto 20px; }
    .products_architect_txt .hd { font-size: 1.4rem; text-align: center; }
    .products_architect_txt .company { font-size: 1.2rem; margin-top: 16px; text-align: center; }
    .products_architect_txt .name { font-size: 1.6rem; margin-bottom: 16px; text-align: center; }
.products_architect_txt p { font-size: 1.4rem; }
.products_architect_txt .link_more a { justify-content: flex-end; margin-top: 16px; }
}

/*about*/
.about_concept { display: flex; }
.about_concept_hd { width: 31.60%; }
.about_concept_txt { width: 68.40%; }

.about_common_hd { font-size: 4.0rem; font-weight: 700; line-height: 1.2; }
.about_common_ttl { font-size: 1.6rem; margin-top: 20px; }

.about_concept_txt .read { font-size: 2.8rem; line-height: 1.7; }
.about_concept_txt p { margin-top: 2em; }
.about_concept_ph { margin-top: 80px; }

.about_service,
.about_profile { border-top: 1px solid #000; margin-top: 100px; }
.about_ico { font-size: 1.4rem; margin: 10px 0 56px; }

.about_service_list { display: flex; justify-content: space-between; margin-top: 40px; }
.about_service_item { width: 30.26%; }
.about_service_item .num { font-size: 2.4rem; text-align: center; }
.about_service_item .ttl { font-size: 1.8rem; font-weight: 500; text-align: center; margin: 15px 0 20px; }
.about_service_item .ph { margin-bottom: 20px; }

.about_profile_body { display: flex; }
.about_profile_hd { width: 31.60%; }
.about_profile_tb { width: 68.40%; }
.about_profile_tb table th { font-weight: 400; width: 35%; }
.about_profile_tb table th, .about_profile_tb table td { font-size: 1.4rem; line-height: 2.2; border-bottom: 1px solid #aaa; padding: 40px 0; }
.about_profile_tb table tr:first-child th, .about_profile_tb table tr:first-child td { padding-top: 0; }

@media screen and (max-width: 900px) {
    .about_concept { display: block; }
    .about_concept_hd { width: auto; }
    .about_concept_txt { width: auto; margin-top: 35px; }

    .about_common_hd { font-size: 3.2rem; font-weight: 700; line-height: 1.2; }
    .about_common_ttl { font-size: 1.4rem; margin-top: 10px; }

    .about_concept_txt .read { font-size: 2.4rem; line-height: 1.5; }
    .about_concept_txt p { margin-top: 16px; }
    .about_concept_txt p + p { margin-top: 2em; }
    .about_concept_ph { margin-top: 16px; }

    .about_service,
    .about_profile { border-top: 1px solid #000; margin-top: 48px; }
    .about_ico { font-size: 1.4rem; margin: 10px 0 24px; }

    .about_service_list { display: block; margin-top: 40px; }
    .about_service_item { width: auto; }
    .about_service_item + .about_service_item { margin-top: 40px; }
    .about_service_item .num { font-size: 2.4rem; text-align: center; }
    .about_service_item .ttl { font-size: 1.8rem; font-weight: 500; text-align: center; margin: 10px 0 15px; }
    .about_service_item .ph { margin-bottom: 15px; text-align: center; }

    .about_profile { margin-bottom: 50px; }
    .about_profile_body { display: block; }
    .about_profile_hd { width: auto; }
    .about_profile_tb { width: auto; margin-top: 50px; }
    .about_profile_tb table, .about_profile_tb table th, .about_profile_tb table td, .about_profile_tb table tr { display: block; }
    .about_profile_tb table th, .about_profile_tb table td { font-size: 1.4rem; line-height: 2.2; border-bottom: 1px solid #aaa; }
    .about_profile_tb table th { font-weight: 400; width: 100%; border-bottom: none; padding: 24px 0 0; }
    .about_profile_tb table td { padding: 0 0 24px; }
.about_profile_tb table tr:first-child th, .about_profile_tb table tr:first-child td { padding-top: 0; }
}

/*news*/
.archive_news_list { margin: 80px 0 130px; }

/*news single*/
.single_head > .inner { width: 80%; margin: 0 auto; padding: 180px 0 18px; }
.single_head .ttl { font-size: 4.2rem; position: relative; line-height: 1.5; margin-top: 10px; }
.single_head .meta { display: flex; align-items: flex-start; }
.single_head .meta .date { width: 84px; font-size: 1.2rem; }
.single_head .meta .cat > * { display: inline-block; min-width: 56px; margin-right: 6px; padding: 2px 10px; font-size: 1.2rem; color: #fff; background: #888888; border-radius: 3px; text-align: center; line-height: 1.5; box-sizing: border-box; }
.single_head .meta .cat._works > *  { display: inline-block; width: auto; font-size: 1.2rem; border: 1px solid #6F6E6C; margin-right: 6px; padding: 2px 11px; color: #6F6E6C; background: none; border-radius: 0; }
.single_head .name { font-size: 1.8rem; margin-top: 20px; }

.single_body > .inner { width: 80%; margin: 0 auto; padding: 70px 0 18px; }
.single_body > .inner > * { margin-bottom: 40px; }
.single_body > .inner > figure { margin-bottom: 80px; }

.single_body > .inner h1,
.single_body > .inner h2 { font-size: 2.8rem; margin: 120px 0 20px; font-weight: 700; }
.single_body > .inner h3 { font-size: 2.0rem; margin: 60px 0 20px; font-weight: 700; }
.single_body > .inner h4,
.single_body > .inner h5,
.single_body > .inner h6 { font-size: 1.6rem; margin: 60px 0 20px; font-weight: 700; }
.single_body > .inner h1 + *,
.single_body > .inner h2 + *,
.single_body > .inner h3 + *,
.single_body > .inner h4 + *,
.single_body > .inner h5 + *,
.single_body > .inner h6 + * { margin-top: 0; }

.single_body > .inner ul li { font-size: 1.6rem; list-style-type: disc; }
.single_body > .inner ol li { font-size: 1.6rem; list-style-type: decimal; }
.single_body > .inner ul,
.single_body > .inner ol { padding-left: 2em; }

.modelhouse_data { width: 80%; margin: 50px auto 0; }
.modelhouse_data .address,
.modelhouse_data .time,
.modelhouse_data .holiday { font-size: 1.6rem; }


@media screen and (max-width: 900px) {
    .single_head > .inner { width: 89.74%; margin: 0 auto; padding: 142px 0 0; }
    .single_head .ttl { font-size: 2.4rem; position: relative; line-height: 1.5; margin-top: 10px; }
.single_head .meta { display: flex; align-items: flex-start; }
.single_head .meta .date { width: 84px; font-size: 1.2rem; }
.single_head .meta .cat > * { display: inline-block; min-width: 56px; padding: 2px 8px; font-size: 1.2rem; color: #fff; background: #888888; border-radius: 3px; text-align: center; }

    .single_body > .inner { width: 89.74%; margin: 0 auto; padding: 35px 0 18px; }
.single_body > .inner > * { margin-bottom: 30px; }
    .single_body > .inner > figure { margin-bottom: 45px; }

    .single_body > .inner h2 { font-size: 2.1rem; margin: 25px 0 20px; }
.single_body > .inner h2 + * { margin-top: 0; }
    
    .modelhouse_data { width: 89.74%; margin: 30px auto 0; }
    .modelhouse_data .googlemap { padding-top: 80%; }
}

/*performance*/
.archive_works_list._archive .archive_products_item,
.related_works_list .archive_products_item { padding-left: 25px; box-sizing: border-box; }
.archive_products_item .date { position: absolute; left: 0; top: 0; -webkit-transform:rotate(90deg) translateY(-85%); transform:rotate(90deg) translateY(-85%); transform-origin: left top; }

@media screen and (min-width: 901px) {
    .archive_works_list._archive .archive_products_item { width: 48.39%; }
    .archive_works_list._archive .archive_products_item:first-child { width: 100%; margin-bottom: 126px; }
    .archive_works_list._archive .archive_products_item:first-child .ttl { font-size: 2.8rem; margin-top: 0; }
    .archive_works_list._archive .archive_products_item .link_more > *,
    .related_works_list .archive_products_item .link_more > * { justify-content: flex-end; }
    .archive_works_list._archive .archive_products_item:first-child > .txt { width: 550px; position: absolute; right: 0; bottom: 0; padding: 35px 0 0 45px; box-sizing: border-box; background: #fff; }
}
@media screen and (max-width: 900px) {
    .archive_products_item .date { position: absolute; left: 0; top: 0; -webkit-transform:rotate(90deg) translateY(-85%); transform:rotate(90deg) translateY(-85%); transform-origin: left top; }
}

/*performance single*/
.single_related { background: #EEEEEE; margin-top: 240px; padding-top: 80px; }
.single_related > .inner { width: 80%; margin: 0 auto; }
.related_works_list { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 62px 0 20px; }
.single_related > .inner > .hd { font-size: 4.0rem; font-weight: 700; line-height: 1.5; }
.single_related > .inner > .ttl { font-size: 1.6rem; margin-top: 30px; }

@media screen and (max-width: 900px) {
    .single_related { background: #EEEEEE; margin-top: 40px; padding-top: 50px; }
    .single_related > .inner { width: 89.74%; margin: 0 auto; }
    .single_related > .inner > .hd { font-size: 3.2rem; font-weight: 700; line-height: 1.5; }
    .single_related > .inner > .ttl { font-size: 1.6rem; margin-top: 10px; }
}

/*process*/
.process_list_item { display: flex; justify-content: space-between; margin-top: 64px; padding-bottom: 98px; background: url("../img/process_arrow.svg") no-repeat center bottom; }
.process_list_item:last-child { padding-bottom: 0; background: none; }
.process_list_item > .num { width: 11.16%; font-size: 7.85vw; color: #66886F; line-height: 1; }
.process_list_item > .ph { width: 31.69%; }
.process_list_item > .txt { width: 49.28%; }
.process_list_item > .txt h2 { font-size: 2.8rem; font-weight: 600; margin-bottom: 20px; }

.process_list_item:nth-child(2n) > .num { order: 3; }
.process_list_item:nth-child(2n) > .ph { order: 2; }
.process_list_item:nth-child(2n) > .txt { order: 1; }
.process_list_item:nth-child(2n+1) > .num { order: 2; }
.process_list_item:nth-child(2n+1) > .ph { order: 1; }
.process_list_item:nth-child(2n+1) > .txt { order: 3; }

.process_movie { margin-top: 198px; }
.process_movie .ttl { margin-bottom: 45px; font-size: 2.8rem; text-align: center; }

.youtube {
  width: 87.5%;
  margin: 0 auto;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}
/*.wp-block-embed-youtube .wp-block-embed__wrapper { aspect-ratio: 16 / 9; }*/
.wp-block-embed-youtube .wp-block-embed__wrapper iframe {
    max-width: 800px;
    width: 100%;
    height: 100%;
    aspect-ratio: 16 / 9;
}
.process_movie .btn_more { max-width: 409px; margin: 198px auto 0; }

.font_bb { font-size: 2.0rem; font-weight: 700; }

.process_list_item .link_more { margin-top: 20px; }
.process_list_item .link_more .txt { color: #000; }
.process_list_item .link_more > * .ico svg line { stroke: #000; }

@media screen and (max-width: 900px) {
    .process_list { margin-top: 75px; }
    .process_list_item { display: block; margin-top: 42px; padding-bottom: 76px; background: url("../img/process_arrow.svg") no-repeat center bottom; }
.process_list_item:last-child { padding-bottom: 0; background: none; }
    .process_list_item .num { width: auto; font-size: 6.4rem; color: #66886F; line-height: 1; text-align: center; }
    .process_list_item .ph { width: auto; margin-top: 24px; text-align: center; }
    .process_list_item .txt { width: auto; margin-top: 24px; }
    .process_list_item .txt h2 { font-size: 2.4rem; font-weight: 600; margin-bottom: 16px; text-align: center;}

    .process_movie { margin-top: 124px; }
    .process_movie .ttl { margin-bottom: 14px; font-size: 1.6rem; text-align: center; }

    .youtube {
      width: 100%;
      margin: 0 auto;
      aspect-ratio: 16 / 9;
    }
    .youtube iframe,
    .wp-block-embed-youtube .wp-block-embed__wrapper iframe {
      width: 100%;
      height: 100%;
    }
    .process_movie .btn_more { max-width: 409px; margin: 98px auto 0; }
    
}

/*privacy*/
.page_body._privacy h2 { font-size: 1.6rem; margin: 2em 0; }
.page_body._privacy ul li { font-size: 1.6rem; padding-left: 0.6em; text-indent: -0.6em; line-height: 1.75; }


/* Google Mapを囲う要素 */
.googlemap {
  position: relative;
  width: 100%;
  height: 0;
  margin: 26px 0 40px;
  padding-top: 48.31%;
}
 
/* Google Mapのiframe */
.googlemap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*partnership*/
.partnership_banner { width: 718px; margin: -40px auto 0; background: #444444; border-radius: 10px; display: flex; align-items: center; position: relative; z-index: 2;}
.single_body + .partnership_banner { margin-top: 80px; }
.partnership_banner .ico { font-size: 1.9rem; color: #fff; font-weight: 700; background: #A18C3C; border-radius: 50%; width: 80px; height: 80px; margin-left: 5%; position: relative; }
.partnership_banner .ico span { width: 100%; position: absolute; top: 50%; -webkit-transform:translateY(-50%); transform:translateY(-50%); text-align: center; }
.partnership_banner .txt { margin-left: 3.2%; }
.partnership_banner .hd { font-size: 1.5rem; color: #A18C3C; }
.partnership_banner .ttl { font-size: 3.0rem; color: #fff; font-weight: 700; }
.partnership_banner .ph { width: 14.90%; margin-left: 6.26%; }
.partnership_banner .ph img {  -webkit-transform:translateY(-20px); transform:translateY(-20px); }

@media screen and (max-width: 900px) {
    .partnership_banner { width: 90%; margin: -40px auto 0; background: #444444; border-radius: 10px; display: flex; align-items: center; position: relative; z-index: 2;}
    .single_body + .partnership_banner { margin-top: 50px; }
    .partnership_banner .ico { font-size: 1.5rem; color: #fff; font-weight: 700; background: #A18C3C; border-radius: 50%; width: 80px; height: 80px; margin-left: 5%; position: relative; }
.partnership_banner .ico span { width: 100%; position: absolute; top: 50%; -webkit-transform:translateY(-50%); transform:translateY(-50%); text-align: center; }
    .partnership_banner .txt { width: calc(62% - 80px); margin: 20px 0 20px 3.2%; }
    .partnership_banner .hd { font-size: 1.2rem; color: #A18C3C; }
    .partnership_banner .ttl { font-size: 1.8rem; color: #fff; font-weight: 700; }
    .partnership_banner .ph { width: 18.90%; margin-left: 6.26%; }
.partnership_banner .ph img {  -webkit-transform:translateY(-20px); transform:translateY(-20px); }
}

/*contact*/
.page_body._contact .read { margin-bottom: 50px; }
.form_item { display: flex; flex-wrap: wrap; margin-top: 45px; }
.form_item dt { width: 355px; font-size: 1.8rem; font-weight: 500; padding: 24px 90px 24px 0; border-bottom: 1px solid #E2E2E2; box-sizing: border-box; }
.form_item dd { width: calc(100% - 355px); font-size: 1.6rem; padding: 24px 0; border-bottom: 1px solid #E2E2E2; }

.required { display: inline-block; position: relative; background: #66886F; color: #fff; font-size: 1.0rem; padding: 2px 8px; margin-left: 13px; }
.input_name,.input_txt,.input_zip,.input_date,select.select { width: 100%; box-sizing: border-box; border: none; font-size: 1.6rem; padding: 12px 20px; color: #333; background: #F5F5F5; }
.input_zip { max-width: 200px; }
select.select { max-width: 266px; }
textarea.message { width: 100%; height: 311px; box-sizing: border-box; border: none; font-size: 1.6rem; padding: 12px 20px; background: #F5F5F5; }
.input_radio { vertical-align: unset; margin-right: 10px; }
.form_item label + label { margin-left: 40px; }
.check_privacy { margin-bottom: 12px; }
.check_privacy .mwform-checkbox-field-text { display: none; }
.btn_submit { text-align: center; }
.btn_submit input { background: #000000; color: #fff; font-size: 1.8rem; text-align: center; width: 340px; padding: 18px 0; margin-top: 194px; }
.btn_submit input.btn_back { background: #ccc; color: #000; }
.btn_back input { background: #ccc; color: #000; margin-right: 10px; }
.form_item .notes { font-size: 1.4rem; }

.name_box { display: flex; align-items: center; }
.name_box > div { display: flex; align-items: center; }
.name_box > div + div { margin-left: 29px; }
.name_box .hd { white-space: nowrap; margin-right: 10px; }

.address_box { max-width: 482px; display: flex; align-items: center; }
.address_box + .address_box { margin-top: 24px; }
.address_box .hd { width: 6em; }
.address_box .txt { width: calc(100% - 6em); }

.date_box { display: flex; align-items: center; }
.date_box + .date_box { margin-top: 24px; }
.date_box .hd { width: 9em; }
.date_box .date { width: 220px; margin-left: 10px; }
.date_box .time { width: 220px; margin-left: 10px; }

.contact_privacy .formErrorContent { display: none!important; }

.grecaptcha-badge { visibility: hidden; }
.notes_privacy { font-size: 1.2rem; color: #999; text-align: center; margin-top: 30px; }

.mw_wp_form_confirm .name_box .hd,
.mw_wp_form_confirm .confirm-nodisp { display: none; }

@media screen and (max-width: 900px) {
    .form_item { display: flex; flex-wrap: wrap; margin-top: 45px; }
    .form_item dt { width: 100%; font-size: 1.8rem; font-weight: 500; padding: 24px 90px 0 0; border-bottom: none; box-sizing: border-box; }
    .form_item dd { width: 100%; font-size: 1.6rem; padding: 8px 0 24px; border-bottom: 1px solid #E2E2E2; }

    textarea.message { width: 100%; height: 300px; box-sizing: border-box; border: none; font-size: 1.6rem; padding: 12px 20px; background: #F5F5F5; }
    
    .name_box { display: block; align-items: center; }
    .name_box > div + div { margin: 8px 0 0; }
    
    .address_box + .address_box { margin-top: 16px; }
    .date_box + .date_box { margin-top: 16px; }
    
    .btn_submit input { background: #000000; color: #fff; font-size: 1.8rem; text-align: center; width: 340px; padding: 18px 0; margin-top: 64px; }
    
    .notes_privacy { font-size: 1.2rem; color: #999; text-align: left; }
}

/*thanks*/
.thanks_body { margin-top: 133px; }
.thanks_txt { text-align: center; }
body.thanks .contents_footer_illust,
body.error404 .contents_footer_illust { margin-top: 100px;}

@media screen and (max-width: 768px) {
    body.thanks .common_page_ttl { display: none; }
    .thanks_body { margin: 80px auto 0; width: 81.53%; }
    .thanks_txt { text-align: left; }
    body.thanks .contents_footer_illust,
    body.error404 .contents_footer_illust { margin-top: 73px;}
}

/*form*/
.wpcf7-not-valid-tip { display: none!important; }
.formError .formErrorContent { font-size: 1.4rem!important; color: #B51C1F!important; margin-top: 5px; background: none!important; }
.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output { display: none!important; }

/*link*/
.news_single_body .edit a,
*.link_txt { text-decoration: underline!important; }

@media screen and (min-width: 900px) {   
    .news_single_body .edit a:hover,
    *.link_txt:hover { text-decoration: none!important; }
        
    .archive_products_item .ph > div > img,
    .archive_products_item .ph > img,
    .top_movie_item .ph > img { -webkit-transition: transform 1.0s cubic-bezier(.16,1,.3,1); transition: transform 1.0s cubic-bezier(.16,1,.3,1); -webkit-transform-origin: left top; transform-origin: left top; }
    .archive_products_item:hover .ph > div > img,
    .archive_products_item:hover .ph > img,
    .top_movie_item:hover .ph > div > img,
    .top_movie_item:hover .ph > img { -webkit-transform: scale(1.07) translate(-50%, -50%); transform: scale(1.07) translate(-50%, -50%); }
    
    .link_more > * .ico { -webkit-transition: transform 1.0s cubic-bezier(.16,1,.3,1); transition: transform 1.0s cubic-bezier(.16,1,.3,1); -webkit-transform-origin: left top; transform-origin: left top; }
    .link_more > *:hover .ico { -webkit-transform: translateX(6px); transform: translateX(6px); }
    
    .btn_more > *,
    .page_nav .prev, .page_nav .next { -webkit-transition: all 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: all 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
    .btn_more > *:hover,
    .page_nav .prev:hover, .page_nav .next:hover { background: #fff; color: #000; border: 1px solid #888; }
    
    .page_head .btn a:not(.prev):not(.next) { -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
    .page_head .btn a:not(.prev):not(.next):hover { opacity: 0.7; }
    
}











