@charset "utf-8";

/* 初期化 */

section,
div,
header,
#contents footer,
h2 {
    position: relative;
    z-index: 1;
}

tr,
th,
td {
    vertical-align: middle;
}

/* 初期化ここまで */

/* 共通設定 */
body {
    min-width: 1044px;
    font-family: -apple-system,YuGothic, 'Yu Gothic', "游ゴシック体", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'メイリオ', Meiryo, sans-serif;
    color: #333;
    font-weight: 400;
    line-height: 1.5;
}

#contents,
#parts-contents {
    overflow: hidden;
    position: relative;
    z-index: 6;
}
/* 20210528 test umeda */
video {
  width: 100%;
  max-width: 1500px;
}

.sp {
    display: none !important;
}

.inner {
    width: 1024px;
    margin: 0 auto;
}

.txt-m {
    font-weight: 500;
}

.txt-b {
    font-weight: 700;
}

section {
    background: #FFF;
}

#contents h2,
#parts-contents h2 {
    font-weight: 700;
    font-size: 36px;
    text-align: center;
}

h2:not([class])::before,
h2.renovation-title1::before {
    content: "";
    width: 100%;
    height: 84px;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position: right;
    background-size: contain;
    z-index: -1;
    image-rendering: crisp-edges;
}

h2.renovation-title1::before {
    height: 74px;
    bottom: 11px;
    background-position: bottom right 12px;
}

h2:not([class])::after {
    content: "";
    display: block;
    width: 80px;
    height: 10px;
    margin: 10px auto 50px;
    background-color: #333;
}

/* a{
    position: relative;
}
a:hover::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: rgba(255, 255, 255, 0.2);
    pointer-events: none;
} */

/* ファーストビュー */
section.firstView {
    width: 100%;
    height: 575px;
    overflow: hidden;
}

section.firstView>.inner {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    padding-top: 5px;
    /* position: absolute;
    top: 0;
    left: calc((100vw - 1024px) / 2); */
}
/* 20210528 umeda */
section.firstView_sub>.inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
	align-items: center;
    padding-top: 180px;
    /* position: absolute;
    top: 0;
    left: calc((100vw - 1024px) / 2); */
}
section.firstView_sub>.inner_sub {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
	align-items: center;
    padding-top: 180px;
    /* position: absolute;
    top: 0;
    left: calc((100vw - 1024px) / 2); */
}
/* 20210528 umeda */
section.firstView_sub2>.inner_sub {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
	align-items: center;
    /* padding-top: 180px;
    position: absolute;
    top: 0;
    left: calc((100vw - 1024px) / 2); */
}

section.firstView>.inner_sub {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
	align-items: center;
    padding-top: 180px;
    /* position: absolute;
    top: 0;
    left: calc((100vw - 1024px) / 2); */
}
.sz-logo {
    width: 337px;
}

section.firstView h1,
#mainContent section.firstView h1 {
    font-size: 60px;
    font-weight: 700;
    text-align: left;
    letter-spacing: -0.05em;
    line-height: 110px;
    color: #FFF;
    text-shadow: 1px 1px 0px #192f54, -1px -1px 0px #2d3641,
        1px -1px 0px #192f54, -1px 1px 0px #192f54,
        2px 2px 0px #192f54, -2px -2px 0px #2d3641,
        2px -2px 0px #192f54, -2px 2px 0px #192f54,
        2px 1px 0px #192f54, -2px -1px 0px #2d3641,
        2px -1px 0px #192f54, -2px 1px 0px #192f54,
        1px 2px 0px #192f54, -1px -2px 0px #2d3641,
        1px -2px 0px #192f54, -1px 2px 0px #192f54,
        0px 2px 0px #192f54, 0px -2px 0px #2d3641,
        2px 0px 0px #192f54, -2px 0px 0px #192f54;
}
/* 20210528 umeda */
section.firstView_sub h1,
#mainContent section.firstView_sub h1 {
    font-size: 60px;
    font-weight: 700;
    text-align: center;
    letter-spacing: -0.05em;
    line-height: 110px;
    color: #FFF;
    text-shadow: 1px 1px 0px #192f54, -1px -1px 0px #2d3641,
        1px -1px 0px #192f54, -1px 1px 0px #192f54,
        2px 2px 0px #192f54, -2px -2px 0px #2d3641,
        2px -2px 0px #192f54, -2px 2px 0px #192f54,
        2px 1px 0px #192f54, -2px -1px 0px #2d3641,
        2px -1px 0px #192f54, -2px 1px 0px #192f54,
        1px 2px 0px #192f54, -1px -2px 0px #2d3641,
        1px -2px 0px #192f54, -1px 2px 0px #192f54,
        0px 2px 0px #192f54, 0px -2px 0px #2d3641,
        2px 0px 0px #192f54, -2px 0px 0px #192f54;
}

section.firstView h1 .txt-small,
#mainContent h1 .txt-small {
    font-size: 0.8em;
}
/* 20210528 umeda */
section.firstView_sub h1 .txt-small,
#mainContent h1 .txt-small {
    font-size: 0.8em;
}

.fv-bgWrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 100%;
    /* position: fixed; */
    position: absolute;
    top: 0;
    left: 0;
    z-index: -10;
}


.fv-img {
    width: 100%;
    height: 100%;
    display: flex;
    position: absolute;
    top: 0;
}

.fv-img01 {
    width: 350px;
    height: 416px;
    position: absolute;
    top: 70px;
    left: calc((100% - 1024px) / 2);
    background: url(/newhp/images/full_renovation/firstview_img01.jpg) no-repeat center / cover;
    z-index: 2;
}

.fv-img02 {
    width: 50%;
    min-width: 190px;
    height: 380px;
    position: absolute;
    top: 0;
    right: calc(((100% - 1024px) / 2) + 1024px + 15px);
    /* right: 365px; */
    background: url(/newhp/images/full_renovation/firstview_img02.jpg) no-repeat right / cover;
}

.fv-grid {
    width: 178px;
    height: 262px;
    position: absolute;
    bottom: 0;
    /* right: 340px; */
    right: calc(((100% - 1024px) / 2) + 1003px);
    background: url(/newhp/images/full_renovation/firstview_grid.png) no-repeat right / cover;
    z-index: -1;
}

.fv-bgMain {
    width: 80%;
    height: 100%;
    position: absolute;
    top: 0;
    left: calc(35% + 15px);
    overflow: hidden;
    filter: drop-shadow(0px 0px 0 rgba(255, 255, 255, 0)); /* 黒い線対策 */
}
/* 20210528 umeda */
.fv-bgMain_sub {
    width: 80%;
    height: 100%;
    position: absolute;
    top: 0;
    /* left: calc(35% + 15px); */
    overflow: hidden;
    filter: drop-shadow(0px 0px 0 rgba(255, 255, 255, 0)); /* 黒い線対策 */
}

/* IE11用 黒い線対策 */
_:-ms-lang(x)::-ms-backdrop,
.fv-videoWrap {
    transform: scale(1.1);
}

.fv-videoWrap video {
    height: 100%;
    transform: translateX(-25%);
}
/* 20210528 umeda */
.fv-videoWrap_sub {
    /* transform: scale(1.1); */
	top: 0px;
}

.fv-videoWrap_sub video {
    height: 100%;
    /* transform: translateX(-25%); */
}


.firstView .contact-btn {
    width: 429px;
    height: 87px;
    margin-bottom: 40px;
    overflow: hidden;
}
/* 20210528 umeda */
.firstView_sub .contact-btn {
    width: 429px;
    height: 87px;
    margin-bottom: 20px;
    overflow: hidden;
}
/* 20210602 umeda */
.firstView_sub2 .contact-btn {
    width: 429px;
    height: 87px;
    margin-bottom: 20px;
    overflow: hidden;
}
.firstView_sub .contact-btn_sub {
    width: 429px;
    height: 87px;
    margin-bottom: 20px;
    overflow: hidden;
}

/* こんなお悩みはありませんか */
section.trouble {
    padding-top: 78px;
}

.trouble h2::before {
    background-image: url(/newhp/images/full_renovation/trouble_title.png);
}

.trouble-baloonArea {
    display: flex;
    justify-content: center;
    align-items: normal;
    margin-bottom: 90px;
}

.trouble-baloonBlock {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

.trouble-baloonBlock:not(:last-of-type) {
    margin-right: 35px;
}

.trouble-baloon {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 300px;
    height: 60px;
    font-size: 18px;
    text-align: center;
    letter-spacing: 0;
    line-height: 1.2;
    position: relative;
    transition: all 500ms ease 0s;
}

.trouble-baloon::before {
    content: "";
    display: block;
    width: calc(100% + 10px);
    height: calc(100% + 30px);
    position: absolute;
    top: 0;
    left: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    z-index: -1;
}

.trouble-baloon.baloon1::before {
    background-image: url(/newhp/images/full_renovation/baloon_01.svg);
}

.trouble-baloon.baloon2::before {
    background-image: url(/newhp/images/full_renovation/baloon_02.svg);
}

.trouble-baloon.baloon3::before {
    background-image: url(/newhp/images/full_renovation/baloon_03.svg);
}

.trouble-baloon:not(:last-of-type) {
    margin-bottom: 50px;
}

.trouble-baloon .txt-b {
    display: inline;
}

.trouble-baloon.txt-narrow {
    letter-spacing: -0.07em;
}

/* なんでこんなマンションに */
.trouble-copy {
    height: 152px;
    padding-top: 52px;
    background-image: url(/newhp/images/full_renovation/trouble_bg.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.trouble-copy::before {
    content: "";
    display: block;
    width: 239px;
    height: 204px;
    background-image: url(/newhp/images/full_renovation/trouble_person.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: absolute;
    bottom: 0;
    right: calc(((100% - 1024px) / 2) + 133px);
}

.trouble-copy p {
    width: 264px;
    margin-left: 127px;
}

/* マンション騒音の解決案 */
section.renovation {
    text-align: center;
    padding-bottom: 80px;
    overflow: hidden;
}

.renovation h2::before {
    background-image: url(/newhp/images/full_renovation/renovation_title.png);
}

.renovation-titleWrap {
    margin-bottom: 55px;
    padding-top: 83px;
}

.renovation h2 {
    font-weight: 500;
}

.renovation-title1 {
    margin-bottom: 80px;
}

.renovation-title1::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: calc(50% - 26px);
    bottom: -78px;
    border: 26px solid #f84603;
    border-right: 26px solid transparent;
    border-bottom: 26px solid transparent;
    border-left: 26px solid transparent;
}

.renovation-title2 {
    font-size: 36px;
}

.renovation-title2 .txt-b {
    font-size: 42px;
}

.renovation-titleWrap .txt-sml {
    font-size: 30px;
}

.renovation p:not([class]) {
    font-size: 24px;
}

.renovation-bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    transition: transform 1000ms ease 0s;
}

.renovation-bg div {
    width: calc(100vw - 1024px - ((100vw - 1024px) / 2));
    height: 100%;
    position: absolute;
    top: 0;
}

.rnv-bg_first {
    left: -10px;
}

.rnv-bg_second {
    right: -10px;
}

.renovation-bg div span {
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    background-color: #dcdcdc;
    transition: all 500ms ease 0s;
    /* animation: rnv_float 1500ms ease 0s alternate-reverse infinite forwards; */
}

.rnv-bgWrap span:first-of-type {
    transition-delay: 500ms;
}

.rnv-bgWrap span:nth-of-type(2) {
    transition-delay: 375ms;
}

.rnv-bgWrap span:nth-of-type(3) {
    transition-delay: 250ms;
}

.rnv-bgWrap span:nth-of-type(4) {
    transition-delay: 125ms;
}

.rnv-bgWrap span:last-of-type {
    transition-delay: 0s;
}

/* 音の計測風景 */
section.measure{
    position: relative;
}
.measure h2::before {
    background-image: url(/newhp/images/full_renovation/measure_title.png);
}

.movie_attention{
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 4;
    font-size: 18px;
    text-align: right;
    line-height: 1;
}
.movie-wrap{
    height: 535px;
    position: relative;
}
.movie-wrap::before{
    content: "";
    display: block;
    width: 100%;
    height: calc(100% - 134px);
    position: absolute;
    top: 67px;
    left: 0;
    background-color: #ececec;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
section.measure .movieList{
    display: flex;
    justify-content: space-between;
    align-items: center;
    list-style-type: none;
    height: 100%;
    margin: 0 auto;
}

.movieList li{
    width: 320px;
    position: relative;
    transform-origin: center;
    overflow: hidden;
}
.movieList li:hover{
    cursor: pointer;
}
.movie_inner{
    width: 100%;
    height: 535px;
    position: relative;
    /* top: 0;
    left: 0;
    z-index: 2;
    background: url(/newhp/images/full_renovation/movie_icon1.png) no-repeat center / 40%;
    transition: background-image 300ms ease 0s; */
}
.movieList li::before, .movieList li::after {
    content: "";
    display: block;
    width: 120px;
    height: 120px;
    position: absolute;
    top: calc(50% - 60px);
    left: calc(50% - 60px);
    z-index: 3;
    background: url(/newhp/images/full_renovation/movie_icon1.png) no-repeat center / contain;
    transition: opacity 300ms ease 0s;
    opacity: 1;
}

.movieList li::after{
    background: url(/newhp/images/full_renovation/movie_icon2.png) no-repeat center / contain;
    opacity: 1;
    z-index: 2;
}

.movieList li:hover::before{
    opacity: 0;
}

/* .movieList li:hover::after{
    opacity: 1;
} */

.movie_inner:hover{
    pointer-events: none;
}
/* .movieList li:hover .movie_inner{
    background-image: url(/newhp/images/full_renovation/movie_icon2.png);
} */
.movieList .measure_video_wrap{
    position: absolute;
    top: 0;
    left: 0;
}
.movieList .measure_video_wrap::before{
    content: "";
    display: block;
    width: calc(100% - 14px);
    height: calc(100% - 177px - 14px);
    position: absolute;
    top: 75px;
    left: 7px;
    border: 1px solid #FFF;
    transition: all 300ms ease 0s;
}
.movieList li.movie-active .measure_video_wrap::before,
.movieList li:hover .measure_video_wrap::before{
    height: calc(100% - 14px);
    top: 7px;
    border-color: rgba(255, 255, 255, 0);
}

.measure_video_wrap video{
    width: 100%;
    height: auto;
}
.movie-active{
    height: 100%;
}
.movieList li.movie-active::before,
.movieList li.movie-active:hover::before,
.movieList li.movie-active::after,
.movieList li.movie-active:hover::after{
    background-image: none;
}

.movie-control{
    display: none;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
}
.movieList li.movie-active .movie-control{
    display: block;
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.4) 90%, rgba(0, 0, 0, 0) 100%);
}
.movie-control .movie-controlBox{
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    color: #FFF;
}


/* 流れ */
section.flow {
    padding: 72px 0 109px;
}

.flow h2::before {
    background-image: url(/newhp/images/full_renovation/flow_title.png);
}

ul.flow-list {
    width: 1024px;
    margin: 0 auto 40px;
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    align-items: flex-start;
}

ul.flow-list:last-of-type {
    margin-bottom: 0;
}

.flow-list li {
    width: 260px;
    position: relative;
}

.flow-list h3 {
    margin-bottom: 29px;
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    position: relative;
    z-index: 2;
}

.flow-list-img {
    width: 100%;
    height: 220px;
    margin-bottom: 22px;
    z-index: 2;
}

.flow-list-img img {
    box-shadow: 2px 1px 10px 0px rgba(0, 0, 0, 0.15);
}



.flow-list p {
    position: relative;
    z-index: 1;
}

.flow-list h3 .txt-sml {
    font-size: 16px;
    position: relative;
    top: -3px;
}

.flow-list-lineArea {
    width: 1024px;
    height: calc(100% - 196px);
    margin: 0 auto;
    position: absolute;
    top: 196px;
    left: calc((100% - 1024px) / 2);
    z-index: -1;
}

/* リノベーション事例 */
section.works {
    padding: 19px 0 95px;
    position: relative;
    overflow: hidden;
    z-index: 0;
}

.works h2::before {
    background-image: url(/newhp/images/full_renovation/works_title.png);
}

section.works::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background: url(/newhp/images/full_renovation/works_bg.jpg) no-repeat center / cover;
    z-index: 1;
}

.works .inner::before {
    content: "";
    display: block;
    width: 108%;
    height: 110%;
    position: absolute;
    top: -2%;
    left: -2%;
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 0, #FFF 4%, #FFF 96%, rgba(255, 255, 255, 0) 100%);
}

/* リノベーション事例（価格ページ用） */

section.works_cost {
    padding: 19px 0 95px;
    position: relative;
    overflow: hidden;
    z-index: 0;
}

.works_cost h2::before {
    background-image: url(/newhp/images/full_renovation/works_title.png);
}

.works_cost .inner::before {
    content: "";
    display: block;
    width: 108%;
    height: 110%;
    position: absolute;
    top: -2%;
    left: -2%;
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 0, #FFF 4%, #FFF 96%, rgba(255, 255, 255, 0) 100%);
}

/* リノベーション事例（価格ページ用）ここまで */

.works-block {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-shrink: 0;
}

.works-block:not(:last-of-type) {
    margin-bottom: 106px;
}

.works-block:nth-of-type(even) {
    flex-direction: row-reverse;
}

.works-block h3 {
    order: 2;
    overflow: hidden;
    text-indent: 300px;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: contain;
}

.works-slideWrap {
    order: 1;
    width: 44%;
}

.works-slideWrap::before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #dcdcdc;
    position: absolute;
    top: 16px;
    left: 17px;
}

.works-slide {
    width: 100%;
    height: 300px;
}

.works-slideNav {
    width: auto;
    height: 100%;
    overflow: hidden;
}

.works-slideNav .slick-active::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.75);
}

.works-slideNav .slick-current::after {
    display: none;
}

.works-txtWrap {
    order: 2;
    width: 47%;
    padding-top: 38px;
}

.works-table {
    width: 98%;
    margin-bottom: 82px;
    font-size: 24px;
    border-collapse: collapse;
}

.works-block:nth-of-type(even) .works-table {
    margin-left: auto;
}

.works-block:nth-of-type(2) .works-table {
    margin-bottom: 50px;
}

.works-block th,
.works-block td {
    padding: 11px 0 9px;
    border-bottom: 1px solid #333;
}

.works-block .border-blank th,
.works-block .border-blank td {
    padding-bottom: 0;
    border-bottom: none;
}

.works-block th {
    width: 26%;
    text-align: left;
    font-weight: 700;
}

.works-block:nth-of-type(even) th {
    width: 70%;
}

.works-block:nth-of-type(even) th span:not([class]) {
    display: inline-block;
    width: 40%;
    margin-left: 60%;
}

.works-block td {
    text-align: right;
}

.works-block:nth-of-type(odd) td span:not([class]) {
    display: inline-block;
    width: 40%;
    margin-right: 60%;
}

.works-block .works-table-single {
    font-size: 18px;
    padding-top: 0;
}

.works-block:nth-of-type(3) .works-table-single p {
    padding-right: 44%;
}

.works-table .txt-number {
    font-size: 30px;
}

.works-table-changeTxt {
    font-size: 20px;
}

.works-block:nth-of-type(1) .works-table-changeTxt {
    text-align: left;
}


.works-comment.comment1 {
    width: 69%;
    margin: 0 auto;
}

.works-comment.comment2 {
    width: 80%;
}

.works-comment.comment3 {
    width: 84.7%;
    margin: 0 auto;
}

/* 20210423 umeda add */
/* こだわり */
section.commit {
    /* text-align: center; */
    padding-bottom: 80px;
}

.commit h2::before {
    background-image: url(/newhp/images/full_renovation/commit_title.png);
}

/* お問い合わせボタン 追従＆体験エリア */
.contactBtnWrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

.tel-btn {
    width: 429px;
    background-color: #FFF;
    line-height: 1.2;
    border: 2px solid #164490;
    border-radius: 10px;
    margin-right: 82px;
    overflow: hidden;
}

.tel-btn a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    color: #164490;
    text-decoration: none;
}

.tel-btn p:not([class]) {
    font-size: 18px;
}

.tel-btn-num {
    font-size: 34px;
    position: relative;
}

.tel-btn-num::before {
    content: "";
    display: inline-block;
    width: 33px;
    height: 1em;
    vertical-align: middle;
    background: url(/newhp/images/full_renovation/phone_icon.png) no-repeat center / contain;
}

.tel-btn-reception {
    font-size: 16px;
}

.contact-btn {
    border-radius: 10px;
    background-image: -moz-linear-gradient(90deg, rgb(248, 54, 0) 0%, rgba(250, 204, 34, 0.99608) 100%);
    background-image: -webkit-linear-gradient(90deg, rgb(248, 54, 0) 0%, rgba(250, 204, 34, 0.99608) 100%);
    background-image: -ms-linear-gradient(90deg, rgb(248, 54, 0) 0%, rgba(250, 204, 34, 0.99608) 100%);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.19);
    overflow: hidden;
}

.contact-btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: #FFF;
    font-weight: 700;
    font-size: 30px;
    /* text-shadow:1px 1px 0px #ffffff,1px -1px 0px #ffffff,-1px -1px 0px #ffffff,-1px 1px 0px #ffffff; */
}

.contact-btn.col a {
    flex-direction: column;
    line-height: 0.6;
}
/* 20210528 umeda */
.contact-btn_sub {
    border-radius: 10px;
    background-image: -moz-linear-gradient(90deg, rgb(248, 54, 0) 0%, rgba(250, 204, 34, 0.99608) 100%);
    background-image: -webkit-linear-gradient(90deg, rgb(248, 54, 0) 0%, rgba(250, 204, 34, 0.99608) 100%);
    background-image: -ms-linear-gradient(90deg, rgb(248, 54, 0) 0%, rgba(250, 204, 34, 0.99608) 100%);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.19);
    overflow: hidden;
}

.contact-btn_sub a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: #FFF;
    font-weight: 700;
    font-size: 30px;
    /* text-shadow:1px 1px 0px #ffffff,1px -1px 0px #ffffff,-1px -1px 0px #ffffff,-1px 1px 0px #ffffff; */
}

.contact-btn_sub.col a {
    flex-direction: column;
    line-height: 0.6;
}
.soundproof .tel-btn,
.soundproof .contact-btn {
    width: 429px;
    height: 120px;
}

.soundproof .tel-btn-num {
    font-size: 46px;
}

.soundproof .tel-btn-num::before {
    width: 46px;
    position: relative;
    left: -2px;
    bottom: 2px;
}
.soundproof .contact-btn a{
    /* height: 2.6em; */
    padding: 23px 0;
    display: inline-grid;
    grid-template-rows: 22px 30px 30px;
    line-height: 0;
}
/* 以下IE11用 */
_:-ms-lang(x)::-ms-backdrop,
.soundproof .contact-btn a{
    display: flex;
    line-height: 0.6;
}
_:-ms-lang(x)::-ms-backdrop,
.contact-btn span{
    padding-top: 0.3em;
    margin-bottom: -0.2em;
}


#following_contact .tel-btn,
#following_contact .contact-btn {
    width: 41.8%;
    height: 100%;
}

/* お問い合わせ追従 */
#following_contact {
    width: 100%;
    height: 120px;
    background-color: #eee;
    border-top: 2px solid #FFF;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 1000;
    transition: transform 300ms linear 0s;
}

#following_contact>div,
#following_contact .inner,
#following_contact .contactBtnWrap {
    height: 100%;
}

#following_contact .contactBtnWrap {
    padding: 18px 0;
}

#following_contact.bnr-hidden {
    transform: translateY(130px);
}


/* 防音体験 */
section.soundproof {
    padding: 18px 0 44px;
    background-color: #eee;
    text-align: center;
}

.soundproof-title {
    display: inline-block;
    width: 1024px;
    margin: 0 auto 27px;
    padding: 24px 0;
    background-color: #333;
    color: #FFF;
    letter-spacing: 0.1em;
    line-height: 1;
    transform: skewX(45deg);
}

.soundproof-title span {
    display: inline-block;
    transform: skewX(-45deg);
}

.soundproof-title::before,
.soundproof-title::after {
    content: "";
    display: inline-block;
    width: calc((100vw - 800px) / 2);
    min-width: 100px;
    height: 84px;
    position: absolute;
    top: 0;
    background-color: #333;
}

.soundproof-title::before {
    right: calc(100% + 16px);
}

.soundproof-title::after {
    left: calc(100% + 16px);
}

.soundproof-txt {
    letter-spacing: -0.05em;
    margin-bottom: 26px;
}



/* フッター */
/* footer {
    padding: 40px 0 14px;
    color: #FFF;
    background: #333;
} */

#toTop {
    width: 60px;
    height: 52px;
    position: absolute;
    bottom: 60px;
    left: calc((100% - 1024px) / 2 + 1024px + 20px);
    background-color: #7d7d7d;
    z-index: 5;
}

#toTop a {
    display: inline-block;
    width: 100%;
    height: 100%;

    background: url(/newhp/images/full_renovation/to-top.png) no-repeat center / 30px 15px;
}
#toTop a:hover{
    background-color: rgba(255, 255, 255, 0.2);
}

/* .footer-main {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 267px;
    margin-bottom: 54px;
}

footer p,
footer a {
    color: #FFF;
}

.footer-img {
    width: 404px;
}

.footer-txtWrap {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    height: 100%;
    margin-right: 181px;
}

.footer-txtWrap h3 {
    font-size: 30px;
    line-height: 1;
}

.footer-link-web {
    position: relative;
}

.footer-link-web::after {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 8px;
    position: relative;
    top: 2px;
    background: url(/newhp/images/full_renovation/external-link-alt.png) no-repeat center / contain;
}

.footer-link-web a {
    text-decoration: none;
}

.footer-link-web a:hover {
    background-color: transparent;
    border-bottom: 1px solid #FFF;
} */

.copyright {
    text-align: center;
    font-size: 14px;
}

/* アニメーション設定 */


@keyframes PCbaloon{
 0%{
    transform: translateY(0);
 }
 50%{
    transform: translateY(-10px);
 }
 100%{
     transform: translateY(0);
 }
}
@keyframes rnv_float{
    0%{
        transform: translateY(0);
    }
    100%{
        transform: translateY(4px);
    }
}
.flow-list-line.effect {
    transform: scale(0, 1);
}

@media screen and (min-width: 769px) {

    /***********************************
             パソコンサイズ限定
     ***********************************/
    /* 電話番号のリンクを無効化 */
    a[href^=tel] {
        pointer-events: none;
    }

    a:hover {
        background-color: rgba(255, 255, 255, 0.2);
        /* opacity: 0.4; */
    }

    /* こんなお悩み欄 吹き出し */
    .baloon-target{
        /* transform: scale(1.2) translateY(-10px); */
        animation: PCbaloon 750ms ease 0s 1 backwards;
        z-index: 3;
    }
    .trouble-baloonBlock:nth-of-type(n+4){
        display: none;
    }


    /* 解決案：背景 */
    .rnv-bg_second {
        transform: scale(-1, 1);
    }

    .rnv-bgWrap span:first-of-type {
        width: calc((100vw - 1024px) / 2);
        /* left: 0; */
        right: 107px;
    }

    .rnv-bgWrap span:nth-of-type(2) {
        width: 40px;
        right: 53px;
    }

    .rnv-bgWrap span:nth-of-type(3) {
        width: 20px;
        height: 96%;
        right: 26px;
    }

    .rnv-bgWrap span:nth-of-type(4) {
        width: 10px;
        height: 94%;
        right: 9px;
    }

    .rnv-bgWrap span:last-of-type {
        width: 5px;
        height: 90%;
        right: 0;
    }
    /* 計測風景：上下の余白 */
    section.measure h2::after{
        margin-bottom: 0;
    }
    .movie_inner::before,
    .movie_inner::after{
        content: "";
        display: block;
        width: 100%;
        height: 67px;
        position: absolute;
        left: 0;
        z-index: 5;
        background-color: #FFF;
        transition: top 300ms ease 0s,
        bottom 300ms ease 0s;
    }
    .movie_inner::before{
        top: 0;
        background-image: linear-gradient(to top,rgba(0,0,0,0.1) 0,rgba(0,0,0,0.08) 2px,rgba(0,0,0,0.02) 5px,rgba(255,255,255,0) 10px, rgba(255,255,255,0) 100%);
    }
    .movie_inner::after{
        bottom: 0;
        background-image: linear-gradient(to bottom,rgba(0,0,0,0.1) 0,rgba(0,0,0,0.08) 2px,rgba(0,0,0,0.02) 5px,rgba(255,255,255,0) 10px, rgba(255,255,255,0) 100%);
    }
    .movieList li:hover .movie_inner::before,
    .movieList li.movie-active .movie_inner::before{
        top: -70px;
        
    }
    .movieList li:hover .movie_inner::after,
    .movieList li.movie-active .movie_inner::after{
        bottom: -70px;
    }

    /* 流れ：背景 */
    .flow-list-img::before,
    .flow-list-img::after {
        content: "";
        display: block;
        width: 136px;
        height: 110px;
        position: absolute;
        background-color: #eee;
        z-index: -1;
    }

    .flow-list:nth-of-type(odd) li:nth-of-type(odd) .flow-list-img::before,
    .flow-list:nth-of-type(even) li:nth-of-type(even) .flow-list-img::before {
        /* 1,3,5,7,9 左上 */
        top: -10px;
        left: -10px;
    }

    .flow-list:nth-of-type(odd) li:nth-of-type(odd) .flow-list-img::after,
    .flow-list:nth-of-type(even) li:nth-of-type(even) .flow-list-img::after {
        /* 1,3,5,7,9 右下 */
        bottom: -10px;
        right: -10px;
    }

    .flow-list:nth-of-type(odd) li:nth-of-type(even) .flow-list-img::before,
    .flow-list:nth-of-type(even) li:nth-of-type(odd) .flow-list-img::before {
        /* 2,4,6,8 左下 */
        bottom: -10px;
        left: -10px;
    }

    .flow-list:nth-of-type(odd) li:nth-of-type(even) .flow-list-img::after,
    .flow-list:nth-of-type(even) li:nth-of-type(odd) .flow-list-img::after {
        /* 2,4,6,8 右上 */
        top: -10px;
        right: -10px;
    }

    /* 流れ：線の演出 */
    .flow-list-lineBox {
        /* 上中下の位置取り */
        width: 260px;
        height: 60px;
        position: absolute;
        top: 0;
        left: calc((100% - 260px) / 2);
    }

    .flow-list-lineBox.top {
        top: 158px;
    }

    .flow-list-lineBox.center {
        top: 589px;
    }

    .flow-list-lineBox.bottom {
        top: 972px;
    }

    .flow-list-line {
        /* 横に伸びる線 */
        width: 110vw;
        height: 10px;
        background: #dcdcdc;
        position: absolute;
        top: 0;
        left: calc((100vw - 260px) / -2);
        transition: transform 1000ms linear 0s;
        transform-origin: left;
    }

    .flow-list-lineBox.top .flow-list-line {
        left: -260px;
    }

    .flow-list-lineBox.bottom .flow-list-line {
        left: auto;
        right: -260px;
    }

    .flow-list-stripe {
        display: block;
        width: 1024px;
        height: 10px;
        position: absolute;
        top: 0;
        left: calc((260px - 1024px) / 2);
        z-index: 5;
    }

    .flow-list-lineBox::before,
    .flow-list-lineBox::after,
    .flow-list-stripe::before,
    .flow-list-stripe::after {
        /* 斜めに区切る線 */
        content: "";
        display: block;
        width: 38px;
        height: 11px;
        background: url(/newhp/images/full_renovation/flowlist-bg_pc.png) no-repeat center / cover;
        position: absolute;
        top: 0;
        z-index: 1;
    }

    .flow-list-lineBox::before {
        left: -76px;
    }

    .flow-list-lineBox:after {
        right: -76px;
    }

    .flow-list-stripe::before {
        left: calc(((100vw - 1024px) / -4));
    }

    .flow-list-stripe::after {
        right: calc(((100vw - 1024px) / -4));
    }

    .flow-list-lineBox.top .flow-list-stripe::before {
        display: none;
    }

    .flow-list-lineBox.bottom .flow-list-stripe::after {
        display: none;
    }

    /* 事例：見出し */
    .works-block:nth-of-type(1) h3 {
        width: 27px;
        height: 70px;
        background-image: url(/newhp/images/full_renovation/works_1.png);
    }

    .works-block:nth-of-type(2) h3 {
        width: 38px;
        height: 70px;
        background-image: url(/newhp/images/full_renovation/works_2.png);
    }

    .works-block:nth-of-type(3) h3 {
        width: 33px;
        height: 70px;
        background-image: url(/newhp/images/full_renovation/works_3.png);
    }
	/* umeda 20210428 */
		section.firstView>.inner_on {
		display:none;
	}
	/* umeda 20210528 */
		section.firstView_sub>.inner_on {
		display:none;
	}
		section.firstView>.inner_on_sub {
		display:none;
	}
		section.firstView_sub>.inner_on_sub {
		display:none;
	}
	/* umeda 202106028 */	
		section.firstView_sub2>.inner_on_sub {
		display:none;
	}	
	
	/* 20210528 */
	.fv-bgWrap_sub {
		display: flex;
		justify-content: space-between;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		/* position: fixed; */
		position: absolute;
		top: 0;
		left: 0;
		z-index: -10;
	}	
	section.trouble_onoff {
		padding-top: 78px;
	}
	/* 20210528 umeda */
	section.firstView_sub {
		width: 100%;
		height: 575px;
		overflow: hidden;
	}
	/* 20210602 umeda */
	section.firstView_sub2 {
		width: 100%;
		/* height: 0px; */
		padding-top: 30px;
		overflow: hidden;
	}	
	/* 20210602 umeda */	
.h1_main_sub {
	text-align: center;
	letter-spacing: -0.05em;
	color:red;
	font-weight: 800;
	font-size: 4.5em;
	margin-bottom: 20px;
  text-shadow:1px 1px 0 #fcd695, -1px -1px 0 #fcd695,
              -1px 1px 0 #fcd695, 1px -1px 0 #fcd695,
              0px 1px 0 #fcd695,  0-1px 0 #fcd695,
              -1px 0 0 #fcd695, 1px 0 0 #fcd695;
}
h1_main_sub_txt-small {
    font-size: 0.8em;
}
	
}

@media screen and (min-width: 1140px){
    /* ある程度サイズが大きい場合 */
    .fv-bgMain {
        width: 60%;
        left: auto;
        right: 0;
    }
	/* 20210528 umeda */	
    .fv-bgMain_sub {
        /* width: 60%; */
        left: auto;
        /* right: 0; */
    }	
	section.trouble_onoff {
		padding-top: 78px;
	}	
}
@media screen and (min-width: 1500px){
    /* もっとサイズが大きい場合 */
    .fv-bgMain{
        width: 62%;
        top: 15px;
        right: -5%;
    }
	/* 20210528 umeda */
    .fv-bgMain_sub{
        /* width: 100%;
        top: 15px;
        right: -5%; */
		top: 0px;
    }	
    .fv-videoWrap video{
        width: 100%;
        height: auto;
        transform: translateX(0);
    }
	/* 20210528 umeda */
    .fv-videoWrap_sub video{
        width: 100%;
        height: auto;
        /* transform: translateX(0); */
    }
    .fv-videoWrap video{
        width: 100%;
        height: auto;
        transform: translateX(0);
    }
	/* 20210528 umeda */
    .fv-videoWrap_sub video{
        width: 100%;
        height: auto;
        /* transform: translateX(0); */
    }
	
	section.trouble_onoff {
		padding-top: 78px;
	}	

}

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

    /***********************************
               スマートフォン版
     ***********************************/
    /* 共通設定 */
    body {
        min-width: 100%;
    }

    .sp {
        display: block !important;
    }

    .pc {
        display: none !important;
    }

    .inner {
        width: 94%;
    }

    h2 {
        font-size: 30px;
    }

    h2:not([class])::before,
    h2.renovation-title1::before {
        height: 54px;
        top: -19%;
        background-position: center;
    }
    p{
        font-size: 18px;
    }

    /* SP:ファーストビュー */
    section.firstView {
        height: 100vh;
        min-height: 575px;
    }
/* 20210528 umeda */
    section.firstView_sub {
        /* height: 100vh; */
        min-height:180px;
    }
	
    .sz-logo {
        width: 65%;
        max-width: 337px;
        min-width: 240px;
    }
    section.firstView h1,
    #mainContent section.firstView h1 {
        margin-top: auto;
        margin-bottom: 20px;
        font-size: 10vw;
        line-height: 1.4;
        letter-spacing: -0.09em;
    }	
/* 20210528 umeda */
    section.firstView_sub h1,
    #mainContent section.firstView_sub h1 {
        margin-top: auto;
        margin-bottom: 20px;
        font-size: 10vw;
        line-height: 1.4;
        letter-spacing: -0.09em;
    }

/*    .h1_main_sub {
        margin-top: auto;
        margin-bottom: 20px;
        font-size: 10vw;
        line-height: 1.4;
        letter-spacing: -0.09em;
    }
	*/
/* 20210602 umeda */
.h1_main_sub {
    text-align: center;
    letter-spacing: -0.09em;	
	color:red;
	font-weight: 700;
	font-size: 2.2em;
	margin-bottom:20px;
  text-shadow:1px 1px 0 #fcd695, -1px -1px 0 #fcd695,
              -1px 1px 0 #fcd695, 1px -1px 0 #fcd695,
              0px 1px 0 #fcd695,  0-1px 0 #fcd695,
              -1px 0 0 #fcd695, 1px 0 0 #fcd695;
}
h1_main_sub_txt-small {
    font-size: 0.7em;
}
	
/* umeda 20210428 */
	.inner_none{
		display:none !important;
	}
	section.firstView>.inner_on {
    height: 100%;
    /* display: flex; */
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    /* padding-top: 5px; */
		z-index: 10;
	padding-top: 400px;	
    /* position: absolute;
    top: 0;
    left: calc((100vw - 1024px) / 2); */
}
		section.firstView_sub>.inner_on {
    height: 100%;
    /* display: flex; */
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    /* padding-top: 5px; */
		z-index: 10;
	padding-top: 400px;	
    /* position: absolute;
    top: 0;
    left: calc((100vw - 1024px) / 2); */
}
	/* umeda 20210528 */
	section.firstView>.inner_on_sub {
    height: 100%;
    /* display: flex; */
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    /* padding-top: 5px; */
		z-index: 10;
	padding-top: 100px;	
    /* position: absolute;
    top: 0;
    left: calc((100vw - 1024px) / 2); */
}
		/* umeda 20210528 */
	section.firstView_sub>.inner_on_sub {
    height: 100%;
    /* display: flex; */
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    /* padding-top: 5px; */
		z-index: 10;
	padding-top: 100px;	
    /* position: absolute;
    top: 0;
    left: calc((100vw - 1024px) / 2); */
}
			/* umeda 20210602 */
	section.firstView_sub2>.inner_on_sub {
    height: 100%;
    /* display: flex; */
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    /* padding-top: 5px; */
		z-index: 10;
	/* padding-top: 100px;	
    position: absolute;
    top: 0;
    left: calc((100vw - 1024px) / 2); */
}
	
	/* 20210528 */
	.fv-bgWrap_sub {
		display: flex;
		justify-content: space-between;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		/* position: fixed; */
		position: absolute;
		/* top: -50px; */ /* 20210602 */
		left: 0;
		z-index: -10;
	}
	
section.trouble_onoff {
    padding-top: 0px;
}
	
    .firstView .contact-btn {
        width: 72%;
        min-width: 288px;
        margin: 0 auto 40px;
        letter-spacing: -0.05em;
    }

    .firstView .contact-btn a {
        font-size: 24px;
    }
/* 20210528 */
    .firstView_sub .contact-btn {
        width: 72%;
        min-width: 288px;
        margin: 0 auto 40px;
        letter-spacing: -0.05em;
    }

    .firstView_sub .contact-btn a {
        font-size: 24px;
    }	
    .firstView_sub .contact-btn_sub {
        width: 72%;
        min-width: 288px;
        margin: 0 auto 40px;
        letter-spacing: -0.05em;
    }
    .firstView_sub .contact-btn_sub a {
        font-size: 24px;
    }
/* 20210602 */
    .firstView_sub2 .contact-btn {
        width: 72%;
        min-width: 288px;
        margin: 0 auto 40px;
        letter-spacing: -0.05em;
    }

    .firstView_sub2 .contact-btn a {
        font-size: 24px;
    }	
/* */	
    .fv-img01 {
        width: 80%;
        height: 50vh;
        top: 20vh;
        left: 0;
    }
    .fv-img02{
        display: none;
    }
    .fv-grid{
        bottom: 12vh;
        right: 0;
    }

    .fv-bgMain {
        width: 80%;
        height: auto;
        top: 60px;
        left: auto;
        right: 0;
    }
/* 20210528 umeda */
    .fv-bgMain_sub {
        width: 100%;
        height: auto;
        /* top: 60px; */ /* 20210602 */
        left: auto;
        /* right: 0; */
    }
	
    .fv-videoWrap {
        width: 100%;
        /* height: 100%; */
        padding-top: 115%;
    }

    .fv-videoWrap video {
        transform: translateX(-35%);
        position: absolute;
        top: 0;
        left: 0;
    }
/* 20210528 umeda */
	    .fv-videoWrap_sub {
        width: 100%;
        /* height: 100%; */
        padding-top: 50%;
    }

    .fv-videoWrap_sub video {
        /* transform: translateX(-35%); */
        position: absolute;
        top: 0;
        left: 0;
		width: 100%;
    }
	

    /* SP:こんなお悩み */
    .trouble-baloonBlock:not(:last-of-type) {
        margin-right: 0;
    }

    /* SP版：こんなお悩み吹き出し */
    .trouble-baloonArea{
        height: 280px;
    }
    .trouble-baloonBlock{
        width: 100%;
        position: absolute;
        top: 0;
        /* left: calc((100vw - 330px) / 2); */
        left: 0;
        transition: all 500ms ease 0s;
    }
    .currentBaloon{
        z-index: 5;
    }
    .blankBaloon{
        z-index: 0;
    }
    .blankBaloon .trouble-baloon{
        opacity: 0.9;
    }

    .baloon-hidden{
        z-index: -2;
        visibility: hidden;
        opacity: 0;
    }
    .blankBaloon .trouble-baloon::after{
        content: "";
        display: block;
        width: calc(100% + 13px);
        height: calc(100% + 55px);
        position: absolute;
        top: -13px;
        left: -4px;
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        opacity: 1;
        z-index: 5;
        /* transition: all 300ms ease 0s; */
    }
    .trouble-baloon.baloon1::after {
        background-image: url(/newhp/images/full_renovation/baloon_01_sp.png);
    }
    .trouble-baloon.baloon2::after {
        background-image: url(/newhp/images/full_renovation/baloon_02_sp.png);
    }
    .trouble-baloon.baloon3::after {
        background-image: url(/newhp/images/full_renovation/baloon_03_sp.png);
    }
    .blankBaloon .trouble-baloon::before,
    .blankBaloon span{
        visibility: hidden;
    }
    .trouble-baloon {
        width: 90%;
        max-width: 330px;
        letter-spacing: -0.1em;
    }
    .trouble-baloonBlock:nth-of-type(odd) .trouble-baloon:nth-of-type(even),
    .trouble-baloonBlock:nth-of-type(even) .trouble-baloon:nth-of-type(odd){
        margin-left: auto;
    }
    .trouble-baloonBlock:nth-of-type(even) .trouble-baloon:nth-of-type(even),
    .trouble-baloonBlock:nth-of-type(odd) .trouble-baloon:nth-of-type(odd){
        margin-right: auto;
    }
    .currentBaloon.bln-animation{
        transform: scale(1.1);
        opacity: 0;
    }
    .blankBaloon.bln-animation .trouble-baloon::before,
    .blankBaloon.bln-animation .trouble-baloon span{
        visibility: hidden;
    }
    .baloon-hidden.bln-animation{
        visibility: visible;
    }
    .trouble-baloonBlock.currentBaloon .trouble-baloon::after{
        visibility: hidden;
        opacity: 0;
    }

    /* SP:どうしてこんなマンションに */
    .trouble-copy p {
        margin-left: 3%;
    }

    .trouble-copy::before {
        right: 3%;
    }

    /* SP:解決案 */
    .renovation h2 {
        letter-spacing: -0.075em;
    }

    .renovation-titleWrap {
        padding-top: 100px;
    }

    .renovation-titleWrap .txt-sml {
        font-size: 28px;
    }

    h2.renovation-title1::before {
        top: -46%;
    }

    .renovation-title2 .txt-b {
        font-size: 30px;
    }

    .renovation p:not([class]) {
        font-size: 18px;
        letter-spacing: -0.05em;
    }

    /* SP:解決案：背景 */
    .renovation-bg div {
        width: 100%;
        height: 300px;
    }

    .rnv-bg_first {
        left: 0;
    }

    .renovation-bg .rnv-bg_second {
        top: auto;
        bottom: 0;
        right: 0;
    }

    .renovation-bg div span {
        width: 100%;
        right: 0;
    }

    .rnv-bg_second {
        transform: scale(1, -1);
    }

    .rnv-bgWrap span:first-of-type {
        height: 5px;
        top: 40px;
    }

    .rnv-bgWrap span:nth-of-type(2) {
        height: 10px;
        top: 25px;
    }

    .rnv-bgWrap span:nth-of-type(3) {
        height: 20px;
        top: 0;
    }
    /* SP:計測風景 */
    section.measure{
        padding-top: 60px;
    }
    .measure h2::before{
        top: -28%;
    }
    section.measure h2::after{
        margin-bottom: 14px;
    }
    .movie_attention{
        position: static;
        text-align: center;
        font-size: 14px;
        margin-bottom: 1em;
    }
    .movie-wrap{
        height: auto;
    }
    .movie-wrap::before{
        height: 70%;
        top: 15%;
        box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    }
    section.measure .movieList{
        flex-direction: column;
        flex-wrap: wrap;
    }
    .movieList li{
        width: 50%;
        max-width: 320px;
        margin-top: -110px;
        margin-right: auto;
    }
    .movieList li:first-of-type{
        margin-top: 0;
    }
    .movieList li:nth-of-type(even){
        margin-right: 0;
        margin-left: auto;
    }
    .movieList li::before, .movieList li::after {

        width: 40%;
        height: 40%;
        top: calc(50% - 20%);
        left: calc(50% - 20%);
    }
    .movie_inner{
        height: 100%;
        position: absolute;
    }
    .movieList .measure_video_wrap{
        display: inline-block;
        height: calc(100% - 7px);
        position: relative;
    }
    .movieList .measure_video_wrap::before{
        height: calc(100% - 21px);
        top: 7px;
    }
    .movieList li.movie-active .measure_video_wrap::before,
    .movieList li:hover .measure_video_wrap::before{
        height: calc(100% - 7px);
        width: 100%;
        top: 0;
        left: 0;
    }
    .movie-control{
        bottom: 7px;
    }

    /* SP:流れ */
    section.flow{
        padding-bottom: 80px;
    }
    ul.flow-list {
        display: block;
        width: 100%;
        margin-bottom: 0;
    }

    .flow-list li {
        width: 100%;
        margin: 0 auto 70px;
        position: relative;
        transition: all 300ms ease 0s;
    }
    .flow-list li.effect{
        opacity: 0;
        transform: translateY(20px);
    }

    .flow-list:last-of-type li:last-of-type {
        margin-bottom: 0;
    }

    .flow-list h3 {
        font-size: 20px;
        margin-bottom: 10px;
    }

    .flow-list-img, .flow-list li p {
        width: 260px;
        margin: 0 auto;
        z-index: 1;
    }
    .flow-list-img{
        margin-bottom: 20px;
    }

    /* SP版流れ：背景 */
    .flow-list li::before,
    .flow-list li::after {
        content: "";
        display: block;
        width: 40%;
        max-width: 260px;
        height: 40vw;
        max-height: 240px;
        position: absolute;
        background-color: #eee;
        z-index: -1;
    }
    .flow-list:nth-of-type(odd) li:nth-of-type(odd)::before,
    .flow-list:nth-of-type(even) li:nth-of-type(even)::before {
        /* 1,3,5,7,9 左上 */
        top: -10px;
        right: 57%;
    }

    .flow-list:nth-of-type(odd) li:nth-of-type(even)::after,
    .flow-list:nth-of-type(even) li:nth-of-type(odd)::after {
        /* 2,4,6,8 右上 */
        top: -10px;
        left: 57%;
    }

    .flow-list:nth-of-type(odd) li:nth-of-type(odd)::after,
    .flow-list:nth-of-type(even) li:nth-of-type(even)::after {
        /* 1,3,5,7,9 右下:非表示 */
        display: none;
    }

    .flow-list:nth-of-type(odd) li:nth-of-type(even)::before,
    .flow-list:nth-of-type(even) li:nth-of-type(odd)::before {
        /* 2,4,6,8 左下:非表示 */
        display: none;
    }

    /* SP:事例 */
    section.works{
        padding-top: 51px;
    }

    .works .inner::before {
        width: 104%;
        height: 120%;
        left: -2%;
        top: -10%;
    }

    .works-block {
        display: block;
    }

    .works-block h3 {
        width: 10vw;
        min-width: 60px;
        height: 10vw;
        min-height: 60px;
        position: absolute;
        top: -5%;
        left: -3%;
        background-color: #000;
        background-position: center;
        background-size: 30%;
        z-index: 2;
    }

    .works-block:nth-of-type(1) h3 {
        background-image: url(/newhp/images/full_renovation/works_1_sp.png);
    }

    .works-block:nth-of-type(2) h3 {
        left: auto;
        right: -3%;
        background-image: url(/newhp/images/full_renovation/works_2_sp.png);
        background-size: 50%;
    }

    .works-block:nth-of-type(3) h3 {
        background-image: url(/newhp/images/full_renovation/works_3_sp.png);
        background-size: 40%;
    }

    .works-slide {
        height: auto;
    }

    .works-slideWrap {
        width: 100%;
    }

    .works-slideWrap::before {
        top: 8px;
        left: 8px;
    }
    .works-slide img{
        width: 100%;
    }

    .works-txtWrap {
        width: 100%;
        padding-top: 16px;
    }

    .works-table,
    .works-block:nth-of-type(2) .works-table {
        font-size: 20px;
        margin-bottom: 20px;
    }

    .works-block th,
    .works-block td {
        padding-top: 4px;
    }

    .works-block th {
        width: 20%;
        min-width: 145px;
    }

    .works-block:nth-of-type(even) .works-table td {
        min-width: 145px;
    }

    .works-block:nth-of-type(odd) td span:not([class]) {
        width: 80%;
        max-width: 166px;
    }

    .works-block:nth-of-type(even) th span:not([class]) {
        width: 60%;
        margin-left: 40%;
    }

    .works-block:nth-of-type(3) .works-table-single p {
        padding-right: 20%;
    }

    .works-table .works-table-changeTxt {
        padding-top: 4px;
        font-size: 18px;
    }

    .works-comment {
        width: 100%;
        min-width: 300px;
        max-width: 400px;
    }
    .works-comment.comment1{
        width: 78%;
        min-width: 260px;
        max-width: 340px;
    }
    .works-comment.comment2 {
        width: 86%;
        margin: 0 auto;
    }
    
    .works-comment.comment3{
        width: 88%;
    }

    /* SP:お問い合わせボタン */
    /* .contact-btn span{
        display: block;
        margin: 0;
        padding: 0;
    } */
    #following_contact .tel-btn,
    #following_contact .contact-btn {
        width: 50%;
        height: 100%;
        margin: 0;
        border-radius: 0;
    }
    #following_contact .tel-btn a{
        justify-content: flex-end;
    }

    #following_contact .tel-btn-num,
    #following_contact .contact-btn a {
        font-size: 18px;
    }
    #following_contact .tel-btn-num{
        margin-bottom: 2px;
        left: -6px;
    }
    #following_contact .tel-btn-num::before{
        position: relative;
        left: 4px;
        bottom: 2px;
    }
    #following_contact .tel-btn-reception {
        font-size: 12px;
        margin-bottom: 6px;
    }

    /* SP:お問い合わせ追従 */
    #following_contact {
        height: 60px;
        border-top: none;
    }

    #following_contact .inner {
        width: 100%;
    }

    #following_contact .contactBtnWrap {
        padding: 0;
    }

    /* SP:防音体験 */
    .soundproof-title {
        width: 92%;
        letter-spacing: -0.05em;
        line-height: 1.4;
        transform: skewX(-10deg);
    }

    .soundproof-title span {
        display: block;
        transform: skewX(10deg);
        white-space: nowrap;
    }

    .soundproof-title::before,
    .soundproof-title::after {
        width: 50%;
        height: 100%;
    }

    .soundproof .contactBtnWrap {
        display: block;
    }

    .soundproof .tel-btn,
    .soundproof .contact-btn {
        width: 100%;
        height: auto;
        padding: 20px 0;
    }

    .soundproof .tel-btn {
        margin-bottom: 30px;
    }
    .soundproof .tel-btn p:not([class]){
        font-size: 16px;
        margin-bottom: 6px;
    }
    .soundproof .tel-btn-num {
        font-size: 36px;
        margin-bottom: 6px;
    }

    .soundproof .tel-btn-num::before {
        position: relative;
        height: 1em;
        bottom: 4px;
    }
    .soundproof .contact-btn{
        padding: 0;
    }
    

    /* SP:フッター */
    /* footer {
        padding-top: 30px;
    }

    .footer-img_sp {
        width: 100%;
        padding-top: calc((250 / 360) * 100%);
        background-image: url(/newhp/images/full_renovation/footer_img01.jpg);
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
    }

    .footer-main {
        height: auto;
        margin-bottom: 38px;
        display: block;
        font-size: 14px;
    }

    .footer-address {
        margin-bottom: 30px;
    }

    .footer-txtWrap {
        margin-right: 0;
    }

    .footer-txtWrap h3 {
        width: 100%;
        margin-bottom: 30px;
        font-size: 24px;
        text-align: center;
    } */

    .copyright {
        font-size: 12px;
    }

    #toTop {
        position: relative;
        width: 100%;
        height: 44px;
        bottom: -14px;
        left: 0;
        /* width: 50px;
        height: 44px;
        left: auto;
        right: 0;
        bottom: 35px; */
    }
}

@media screen and (max-width: 400px){
    .fv-bgMain{
        top: 50px;
    }
/* 20210528 umeda */
	    .fv-bgMain_sub{
        /* top: 50px; */
			top: 0px; /* 20210602 */
    }
}

/* IE11 フォントのずれ防止策 */
_:-ms-lang(x)::-ms-backdrop,
body {
    font-family: "メイリオ", "ＭＳ ゴシック", sans-serif;
}