@charset "utf-8";

/* sub.css */


/*

	A. DESKTOP

		1. COMMON
			- DISPLAY
			- LOADING
			- WRAPPER

		2. HEADER
			- NAV
			- BREADCRUMBS

		3. FOOTER
		4. INDEX

		5. PARTS
			- HEADING
			- PAGENATION
			- BUTTON
			- TAGS

		6. NEWS
		7. WORKS
		8. RECRUIT
		9. CONTACT & RECRUIT CONTACT
		10. PRIVACY
		11. ERROR
		12. ABOUT US
		13. STRENGTH


	B. MOBILE

		1. COMMON
			- BOX
			- DISPLAY
			- WRAPPER

		2. HEADER
			- NAV
			- BREADCRUMBS

		3. FOOTER

		4. INDEX

		5. PARTS
			- HEADING
			- PAGENATION
			- BUTTON
			- TAGS

		6. NEWS
		7. WORKS
		8. RECRUIT
		9. CONTACT & RECRUIT CONTACT
		10. PRIVACY
		11. ERROR
		12. ABOUT US

*/


/* -------------------------------------------

	A. DESKTOP

/* -------------------------------------------
		1. COMMON
	------------------------------------------- */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');

/* DISPLAY */

.sp-none {
    display: block !important;
}

.pc-none {
    display: none !important;
}


/* LOADING */

#loading {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999;
    background: url(../images/common/loading.gif) no-repeat center center #fff;
}

#loading.loading-ajax {
    background: url(../images/common/loading-ajax.gif) no-repeat center center rgba(0, 0, 0, 0.3);
}

.ie8 #loading.loading-ajax {
    background-color: transparent;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr=#30000000, endColorstr=#30000000);
}

.spinner {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    height: 21px;
    margin: auto;
    width: 70px;
    text-align: center;
}

.gif {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -9px 0 0 -35px;
    display: none;
}

.spinner>div {
    width: 18px;
    height: 18px;
    background-color: #e12929;
    border-radius: 100%;
    display: inline-block;
    -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
    animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
}

.spinner .bounce2 {
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
}

.indent {
    display: inline-block;
}

.u-mb0 {
    margin-bottom: 0 !important;
}

.u-mt0 {
    margin-top: 0 !important;
}

@-webkit-keyframes sk-bouncedelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0)
    }
    40% {
        -webkit-transform: scale(1.0)
    }
}

@keyframes sk-bouncedelay {
    0%,
    80%,
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    40% {
        -webkit-transform: scale(1.0);
        transform: scale(1.0);
    }
}


/** overwrite **/

#loading {
    background-image: none !important;
}


/* WRAPPER */

.wrapper {
    width: 960px;
    margin: 0 auto;
    position: relative;
}

.content-wrapper {
    width: 960px;
    padding: 0 10px;
    margin: 0 auto;
    position: relative;
}


/*--------------------------
    LightBox
  ---------------------------*/

#lbox {
    display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    background: rgba(0, 0, 0, 0.85);
}

#lbox .lbox-inr {
    width: 700px;
    height: 400px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 101;
}

#lbox .lbox-inr iframe {
    width: 700px;
    height: 400px;
    border: none;
}

#lbox #close {
    position: absolute;
    bottom: -35px;
    right: 0;
    width: 34px;
    height: 34px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

#lbox #close:hover {
    cursor: pointer;
}

#lbox #close:before,
#lbox #close:after {
    content: '';
    display: block;
    width: 1px;
    height: 100%;
    background: #fff;
    position: absolute;
    top: 0;
    left: 50%;
}

#lbox #close:before {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

#lbox #close:after {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}

#lbox #clickable {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    opacity: .3;
}


/*--------------------------
    movie-youtube
  ---------------------------*/

#jks .movie-youtube {
    padding-top: 69px;
}

.movie-youtube.documentary {
    margin: 0 auto 82px;
    padding-top: 0;
}

.movie-youtube.documentary .movie-youtube__txt {
    line-height: 1.7;
}

.movie-youtube.documentary .movie-youtube__iframe {
    margin-bottom: 3.1%;
}

.movie-youtube.documentary .movie-youtube__ttl {
    margin-bottom: 35px;
}

.movie-youtube.documentary .movie-youtube__ttl .txt {
    letter-spacing: 0.1em;
}

.youtube-wrap {
    margin: auto;
    background: #F2F2F2;
    width: auto;
}

.movie-youtube {
    max-width: 844px;
    /*width: 75%; */
    margin: 0 auto 110px;
    padding-top: 100px;
}

.movie-youtube iframe {
    width: 100%;
    margin-bottom: 20px;
}

.movie-youtube__ttl {
    /*  margin-bottom: 15px;*/
    margin: 20px auto 5px;
}

.movie-youtube__ttl .txt {
    display: inline-block;
    line-height: 1.4;
    vertical-align: middle;
    font-size: 22px;
    font-weight: 600;
}

.movie-youtube__ttl .img {
    width: 30px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    margin-right: 13px;
}

.movie-youtube__ttl .img img {
    max-width: 100%;
    height: auto;
}

.movie-youtube__iframe {
    position: relative;
    width: 100%;
    padding-top: 56.28%;
    margin-bottom: 2.9%;
    overflow: hidden;
}

@media screen and (max-width: 768px) {
    .movie-youtube__iframe:last-of-type {
        margin-bottom: 15px;
    }
    #jks .movie-youtube__iframe:last-of-type {
        margin-bottom: 15px;
    }
}

.movie-youtube__iframe iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.movie-youtube__thumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

.movie-youtube__txt {
    font-size: 14px;
    margin-top: 5px;
    letter-spacing: 0.11em;
    line-height: 1.8;
}

.youtube_container {
    max-width: 660px;
    /* 任意の横幅を指定 */
    height: auto;
    margin-bottom: 10px;
}


/* -------------------------------------------
		2. HEADER
	------------------------------------------- */

#header,
#index-header {
    width: 100%;
    height: 69px;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
}

#index-header {
    display: none;
}

#header header,
#index-header header {
    position: relative;
    height: 69px;
}

#header h1,
#index-header h1 {
    position: absolute;
    top: 0;
    left: 50px;
}

#header h1 a,
#index-header h1 a {
    display: block;
    text-indent: -9999px;
    width: 172px;
    height: 69px;
    background: url(../images/common/logo.png) no-repeat 0 0;
}

.ie8 .index #header h1 a {
    width: 170px;
    background: url(../images/common/logo.png) no-repeat 0 0;
}

@media screen and (min-width: 1300px) {
    #header h1 a {
        width: 325px;
        background: url(../images/common/logo.png) no-repeat 0 0;
    }
}

.btn-contact {
    display: block;
    text-indent: -9999px;
    width: 130px;
    height: 69px;
    background: url(../images/common/btn-contact.png) no-repeat 0 0;
    position: absolute;
    top: 0;
    right: 50px;
    z-index: 1;
}

.contact-box {
    display: none;
    width: 246px;
    height: 211px;
    background: url(../images/common/bg-contact-box.png) no-repeat 0 0;
    position: absolute;
    top: 69px;
    right: 50px;
    z-index: 1;
    line-height: 1;
}

.index .contact-box {
    display: block;
}

.contact-box img {
    display: block;
    width: 100%;
    height: auto;
}

.btn-contact:hover,
.contact-box a:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}


/* NAV */

.btn-menu,
.btn-menu.btn-menu-close {
    display: none;
}

.nav {}

.nav-header {
    display: none;
}

.nav ul {
    text-align: center;
    font-size: 0;
}

.nav li {
    line-height: 69px;
    display: inline-block;
}

.nav li a {
    display: block;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
    font-size: 16px;
    background: url(../images/common/icon-nav-works.png) no-repeat left center;
    padding: 0 2.5vw 0 32px;
}

.nav li a.works {
    background-image: url(../images/common/icon-nav-works.png);
}

.nav li a.news {
    background-image: url(../images/common/icon-nav-news.png);
}

.nav li a.aboutus {
    background-image: url(../images/common/icon-nav-aboutus.png);
}

.nav li a.recruit {
    background-image: url(../images/common/icon-nav-recruit.png);
}


/* BREADCRUMBS */

.breadcrumbs {
    background: #66c4e1;
    overflow: hidden;
    margin: 69px 0 0;
}

.breadcrumbs ul {
    width: 960px;
    margin: 0 auto;
    list-style-type: none;
    padding: 18px 0;
}

.breadcrumbs li {
    display: table-cell;
    white-space: nowrap;
    line-height: 1;
    font-size: 12px;
    color: #fff;
    padding-left: 14px;
    vertical-align: middle;
}

.breadcrumbs li:before {
    content: ">";
    padding-right: 10px;
}

.breadcrumbs li:first-child {
    padding-left: 0;
}

.breadcrumbs li:first-child:before {
    content: "";
    padding-right: 0;
}

.breadcrumbs li a {
    color: #fff;
    text-decoration: none;
}

.breadcrumbs li:first-child a {
    display: block;
    width: 9px;
    height: 12px;
    background: url(../images/common/icon-breadcrumbs-home.png) no-repeat left 2px;
    text-indent: -9999px;
}

.breadcrumbs li:last-child {
    font-weight: bold;
}


/* -------------------------------------------
		3. FOOTER
	------------------------------------------- */

.footer-head {
    position: relative;
    /*background: url(../images/common/bg-footer-head.png) no-repeat bottom center;*/
    /*background-size: cover;*/
}

.footer-head .backstretch {
    display: none !important;
}

.footer-head img.sp-none {
    position: relative;
    z-index: 1;
}

.building-inner {
    z-index: 1;
    position: relative;
}

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

.bg-footer-head {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.bg-footer-head img {
    display: block;
    width: 100%;
    height: auto;
}

.footer-padding-wrap {
    padding: 0 4%;
    position: relative;
}

.footer-content {
    width: 100%;
    margin: 0 auto;
    background: #fefcda;
    padding-top: 30px;
}

.share {}

.index .share {
    margin: 0 auto 20px;
}

.share ul {
    font-size: 0;
    text-align: center;
    line-height: 1;
}

.index .share ul {
    padding-top: 42px;
    background: url(../images/common/bg-footer-share.png) no-repeat top center;
}

.share ul li {
    display: inline-block;
    vertical-align: top;
    margin: 0 7px;
}

.footer-list-box {
    display: grid;
    grid-template-columns: auto auto auto;
    grid-template-rows: auto auto;
    width: calc(100% - min(19%, 200px) - 1%);
    grid-template-columns: calc(100%/3) calc(100%/3) calc(100%/3);
}

.footer-list {
    list-style-type: none;
    font-size: 0;
    line-height: 1;
    text-align: center;
    padding: 50px 0 0;
}

.footer-list li {
    display: inline-block;
}

.footer-list li a {
    font-size: 14px;
    text-decoration: none;
    display: block;
    padding: 2px 20px;
    border-left: 1px solid #fff;
}

.footer-list li:first-child a {
    border-left: 0px solid #fff;
}

.footer-list li a:hover {
    text-decoration: underline;
}

.footer-right-box {
    width: max(19%, 200px);
}

.footer-item-ttl {
    font-size: 16px;
    line-height: 1.69;
    font-weight: bold;
    padding-bottom: 8px;
}

.footer-content__wapper {
    width: auto;
    max-width: 1030px;
    min-width: 900px;
}

.footer-chou {
    position: absolute;
    bottom: 8%;
    right: 13%;
    transform: translate(50%, 50%);
}

.foote-contents__inner {
    display: flex;
    justify-content: space-between;
}

.footer-list__item:nth-child(1) {
    grid-column: 1/2;
    grid-row: 1/2;
}

.footer-list__item:nth-child(2) {
    grid-column: 2/3;
    grid-row: 1/3;
}

.footer-list__item:nth-child(3) {
    grid-column: 3/4;
    grid-row: 1/3;
}

.footer-list__item:nth-child(4) {
    grid-column: 1/2;
    grid-row: 2/3;
    padding-top: 40px;
}

.footer-list__child a {
    font-size: 14px;
    line-height: 2;
    text-decoration: none;
    align-items: center;
    display: block;
    max-width: 215px;
}

.footer-list__child a::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 1px;
    background-color: #FF0000;
    margin-right: 8px;
    position: relative;
    top: -0.4em;
}

.footer-list__child a:hover {
    text-decoration: underline;
}

.footer-right-box a {
    display: block;
    text-decoration: none;
}

.footer-right-box a:hover {
    text-decoration: underline;
}

.footer-right__bottom {
    display: flex;
    justify-content: flex-start;
}

.footer-right__sns {
    display: flex;
    align-items: center;
    margin-left: 20px;
}

.footer-right__sns a {
    margin-right: 13px;
    transition: 300ms;
}

.footer-right__sns a:hover {
    opacity: 0.75;
}

.footer-bottom-outwrap {
    background-color: #fff;
    /* border-top: 1px solid #D9D172; */
    margin-top: 60px;
    padding: 0 4%;
}

.footer-bottom {
    display: flex;
    justify-content: space-between;
    max-width: 1320px;
    margin: 0 auto;
    padding: 29px 0;
}

.footer-bottom a {
    text-decoration: none;
}

.footer-bottom__alp {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-right: 4%;
    width: 100%;
    max-width: 608px;
}

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

.footer-bottom__alp .txt {
    width: 260px;
    margin-left: 2%;
}

.footer-bottom__bt {
    display: flex;
    align-items: center;
    min-width: 525px;
    justify-content: flex-end;
}

.footer-bottom__bt a {
    padding-right: 40px;
    border-right: 1px solid #D9D172;
}

.copyright {
    font-size: 11px;
    line-height: 1;
    padding-left: 40px;
}


/* -------------------------------------------
		4. INDEX
	------------------------------------------- */


/* 背景色 */

.index #container {
    background: #66c4e1;
}


/* 見出し */

.ttl-index {
    margin: 0 auto;
}

.ttl-index img {
    margin: 0 auto;
}


/* イラスト */

.illust {
    position: relative;
    margin: 69px 0 0;
}

.logo-index-sp {
    display: none;
}


/* イラスト下バナー */

.banner {
    display: flex;
    font-size: 0;
    line-height: 1;
    width: 940px;
    margin: -18px auto 0;
    position: relative;
    z-index: 1;
}

.banner li {
    display: inline-block;
    margin-left: 16px;
    vertical-align: top;
}

.banner li:first-child {
    margin-left: 0;
}

.banner li img {
    display: block;
    width: 100%;
    height: auto;
}


/* ピックアップ */

#pickup {
    padding: 100px 0 0;
    margin: -62px 0 0;
    background-color: #fff;
    border-right: 20px solid #66c4e1;
    border-left: 20px solid #66c4e1;
}

#pickup .ttl-index {
    margin-bottom: 50px;
}

.pickup-list {
    display: flex;
    justify-content: flex-start;
    width: 100%;
    max-width: 1260px;
    margin: 0 auto 40px;
    margin: 0 auto 5%;
    padding: 0 20px;
}

.pickup-list li {
    max-width: 300px;
    width: calc((100% - 60px) / 4);
    margin-right: 20px;
    list-style: none;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}

.pickup-list li:nth-of-type(4n) {
    margin-right: 0;
}

.pickup-list li img {
    max-width: 100%;
    height: auto;
}

.pickup-list li p {
    margin-top: 20px;
}

.pickup-list li a {
    display: block;
    text-decoration: none;
}

.pickup-list li a:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}


/* 最新施工事例 */

#new-release {
    background: #fff;
    position: relative;
    padding: 140px 0 100px;
    /* margin: -62px 0 0; */
    /*border-right: 20px solid #66c4e1;*/
    /*border-left: 20px solid #66c4e1;*/
}

.border-right,
.border-left {
    position: absolute;
    top: 0;
    width: 20px;
    height: 100%;
    min-height: 100%;
    background: #66c4e1;
}

.border-right {
    right: 0;
}

.border-left {
    left: 0;
}

.release-list-wrapper {
    position: relative;
    z-index: 1;
    margin: 0;
}

.release-list {
    margin: 0 auto;
    list-style-type: none;
    font-size: 0;
    line-height: 1;
    text-align: center;
}

.release-list li {
    display: inline-block;
    width: 300px;
    margin: 0 10px 50px;
    vertical-align: top;
    padding-top: 50px;
}

.release-list li a {
    display: block;
    position: relative;
    text-decoration: none;
}

.release-list li a div.img {
    background: #000;
}

.release-list li a img {
    display: block;
    width: 100%;
    height: auto;
}

.release-list li a:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.release-list li a h3 {
    font-size: 16px;
    line-height: 24px;
    color: #262621;
    margin: 45px 0 0;
}

.release-list li a span {
    display: block;
    width: 62px;
    height: 62px;
    position: absolute;
    top: -31px;
    left: 10px;
    background: url(../images/index/icon-release-list-new-bg.png) no-repeat 0 0;
    z-index: 1;
}

.icon-release-list-prev,
.icon-release-list-next,
.slick-prev,
.slick-next {
    display: block;
    width: 50px;
    height: 50px;
    position: absolute;
    top: 140px;
    margin: -50px 0 0;
    margin: -30px 0 0;
    text-indent: -9999px;
    z-index: 1;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.icon-release-list-prev,
.slick-prev {
    background: url(../images/index/icon-release-list-prev.png) no-repeat 0 0;
    left: 50%;
    margin-left: -498px;
}

.icon-release-list-next,
.slick-next {
    background: url(../images/index/icon-release-list-next.png) no-repeat 0 0;
    right: 50%;
    margin-right: -498px;
}

.slick-prev:hover,
.slick-next:hover {
    cursor: pointer;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.slick-slide,
.slick-slide a {
    outline: none;
}


/* コンセプトリノベ施工事例 */

#concept-renovation {
    padding: 138px 0 100px;
    border-right: 20px solid #66c4e1;
    border-left: 20px solid #66c4e1;
    color: #fff;
}

#concept-renovation h2 {
    text-align: center;
    font-size: 26px;
    font-weight: bold;
}

#concept-renovation p {
    width: 413px;
    margin: 50px auto 100px;
    font-size: 16px;
    line-height: 24px;
}


/* CONCEPT 朝日リビングの強み */

#concept {
    position: relative;
    padding: 219px 0 132px;
    background: #fff;
    border-right: 20px solid #66c4e1;
    border-left: 20px solid #66c4e1;
}

#concept .ttl-index {
    position: relative;
    z-index: 1;
}

.bg-concept {
    display: block;
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
}

.strength-list {
    list-style-type: none;
    width: 1000px;
    margin: 86px auto 0;
    position: relative;
    z-index: 1;
}

.strength-list li {
    width: 480px;
    margin: 0 0 86px;
}

.strength-list li.swot {
    float: left;
}

.strength-list li.swot a h3 {
    letter-spacing: -0.08em;
}

.strength-list li.jks {
    float: right;
}

.strength-list li a p {
    margin: 34px 0;
}

.strength-list li.chokotto {
    margin: 0;
    float: right;
}

.strength-list li.construction {
    margin: 0;
    float: left;
}

.strength-list li.construction a h3 {
    letter-spacing: -0.05em;
}

.strength-list li a {
    display: block;
    position: relative;
    background: #66c4e1;
    text-decoration: none;
    padding: 48px 0 25px 212px;
    min-height: 272px;
}

.strength-list li a span:not(.strength-list li a span.indent) {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}

.strength-list li a h3 {
    display: flex;
    align-items: center;
    min-height: 62px;
    margin: 0 0 15px;
    color: #fff;
    font-weight: bold;
    font-size: 24px;
    line-height: 1.28;
}

.strength-list li a p {
    font-weight: bold;
    font-size: 14px;
    line-height: 26px;
    font-weight: bold;
    margin: 0 0 26px;
    /*padding: 0 65px 0 0;*/
    padding: 0;
}

.strength-list li a div {
    display: inline-block;
    background: url(../images/index/icon-strength-arrow.png) no-repeat 143px center #fff;
    border-radius: 5px;
    font-size: 14px;
    width: 163px;
    height: 41px;
    line-height: 41px;
    text-align: center;
    font-weight: bold;
}

.strength-list li a:hover div {
    color: #fff;
    background: url(../images/index/icon-strength-arrow-on.png) no-repeat 143px center #e12929;
}

.strength-list li a figure {
    position: absolute;
}

.strength-list li.swot a figure.sp-none {
    top: -21px;
    left: 10px;
}

.strength-list li.swot a figure.sp-none.on {
    top: -21px;
    left: 10px;
    display: none !important;
}

.strength-list li.swot a:hover figure.sp-none {
    display: none !important;
}

.strength-list li.swot a:hover figure.sp-none.on {
    display: block !important;
}

.strength-list li.jks a figure.sp-none {
    top: -26px;
    left: 11px;
}

.strength-list li.jks a figure.sp-none.on {
    top: -26px;
    left: 11px;
    display: none !important;
}

.strength-list li.jks a:hover figure.sp-none {
    display: none !important;
}

.strength-list li.jks a:hover figure.sp-none.on {
    display: block !important;
}

.strength-list li.chokotto a figure.sp-none {
    top: -30px;
    left: -6px;
}

.strength-list li.chokotto a figure.sp-none.on {
    top: -30px;
    left: -6px;
    display: none !important;
}

.strength-list li.chokotto a:hover figure.sp-none {
    display: none !important;
}

.strength-list li.chokotto a:hover figure.sp-none.on {
    display: block !important;
}

.strength-list li.chokotto a h3 {
    letter-spacing: -0.05em;
}

.strength-list li.construction a figure.sp-none {
    top: -33px;
    left: 16px;
}

.strength-list li.construction a figure.sp-none.on {
    top: -27px;
    left: 4px;
    display: none !important;
}

.strength-list li.construction a:hover figure.sp-none {
    display: none !important;
}

.strength-list li.construction a:hover figure.sp-none.on {
    display: block !important;
}


/* 勝つ改修 */

#katsu-kaisyu {
    padding: 100px 0;
    border-right: 20px solid #66c4e1;
    border-left: 20px solid #66c4e1;
    color: #fff;
}

#katsu-kaisyu h2 {
    text-align: center;
    font-size: 26px;
    font-weight: bold;
}

#katsu-kaisyu p {
    width: 551px;
    margin: 42px auto 50px;
    font-size: 16px;
    line-height: 24px;
}


/* NEWS / FACEBOOK */

.news-facebook {
    display: block;
    display: table;
    table-layout: fixed;
    width: 100%;
    font-size: 0;
}

#news,
#facebook {
    background: #fff;
    border: 20px solid #66c4e1;
    border-bottom: 0;
    display: table-cell;
    width: 50%;
    padding: 50px 0;
    vertical-align: top;
}

#news {
    border-right: 10px solid #66c4e1;
}

#facebook {
    border-left: 10px solid #66c4e1;
}

/* #facebook .news-index-list::-webkit-scrollbar {
    display: none;
} */
#facebook .news-index-list {
    overflow: auto !important;
    overflow-y: scroll;
} 

#sb_instagram, #sbi_images {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
} 

.fb-plugin-wrapper {
    width: 411px;
    margin: 0 auto;
    padding: 85px 0 105px;
}

.news-index-list {
    list-style-type: none;
    padding: 0 7.5%;
    margin: 44px 0 50px;
}

.news-index-list li {
    margin: 50px 0 0;
}

.news-index-list li:first-child {
    margin: 0;
}

.news-index-list li .news-index-thumb {
    width: 250px;
    width: 42%;
    float: left;
    margin-right: 4%;
}

.news-index-list li .news-index-thumb img {
    display: block;
    width: 100%;
    height: auto;
}

.news-index-list li .tags,
.news-index-list li h3,
.news-index-list li .news-date {
    overflow: hidden;
    /*margin: 0 0 0 46%;*/
}

.news-index-list li .tags a {
    margin: 0 10px 10px 0;
}

.news-index-list li h3 {
    margin: 0 0 4% 46%;
}

.news-index-list li h3 a {
    font-size: 16px;
    line-height: 24px;
    color: #262621;
    text-decoration: none;
}

.index #facebook .btn-blue {
    display: none;
}


/* CONTACT */

#contact {
    position: relative;
    padding: 82px 0 120px;
}

.bg-contact {
    display: block;
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
}

.contact-list {
    z-index: 1;
    position: relative;
    list-style-type: none;
    width: 960px;
    margin: 0 auto;
}

.contact-list li {
    position: relative;
    width: 470px;
    padding: 130px 0 0;
    text-align: center;
}

.contact-list li.tel {
    float: left;
}

.contact-list li.mail {
    float: right;
}

.contact-list li.mail:hover {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.contact-list li h3 {
    font-weight: bold;
    font-size: 21px;
    line-height: 1;
    color: #333333;
    margin-bottom: 10px;
}

.contact-list li h3 strong,
.contact-list li h3 em {
    font-style: normal;
    font-size: 28px;
}

.contact-list li h3 strong {
    color: #e12929;
}

.contact-list-content {
    background: #fff;
}

.contact-list-content p {
    display: none;
}

.contact-list li.tel .contact-list-content {
    padding: 165px 0 48px;
}

.contact-list li.mail .contact-list-content {
    padding: 165px 0 70px;
}

.contact-page .contact-list-content {
    background: #d1edf6;
}

.bg-contact-list {
    display: block;
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
}

.contact-list li figure {
    display: block;
    position: absolute;
    z-index: 2;
}

.contact-list li.tel figure {
    top: 23px;
    left: 76px;
}

.contact-list li.mail figure {
    top: 46px;
    left: 84px;
}

.contact-list li.mail figure.cat {
    bottom: -30px;
    right: -51px;
    top: inherit;
    left: inherit;
}

.btn-contact-list {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: -29px;
}

.btn-contact-list span,
.btn-contact-list a {
    display: block;
    position: relative;
    width: 320px;
    height: 60px;
    margin: 0 auto;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    line-height: 60px;
    text-decoration: none;
    border-radius: 10px;
}

.btn-contact-list span {
    background: url(../images/index/icon-btn-contact-list-tel.png) no-repeat 30px center #e12929;
    padding-left: 26px;
}

.btn-contact-list a {
    background: url(../images/index/icon-btn-contact-list-mail.png) no-repeat 30px center #e12929;
}

.btn-contact-list span img {
    display: inline-block;
    vertical-align: -4px;
}

.btn-contact-list a:after {
    content: " ";
    display: block;
    width: 9px;
    height: 15px;
    background: url(../images/index/icon-btn-contact-list-arrow.png) no-repeat 0 0;
    position: absolute;
    right: 40px;
    top: 50%;
    margin-top: -7px;
}

.contact-list li .contact-note {
    display: block;
    width: 100%;
    font-size: 14px;
    font-weight: bold;
    height: 22px;
}

.contact-page .contact-list li .contact-note {
    color: #262621;
}


/* SHARE */

#index-share {
    position: relative;
}

.bg-index-share {
    display: block;
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
}

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


/* -------------------------------------------
		5. PARTS
	------------------------------------------- */


/* HEADING */

.ttl-content {
    padding: 180px 0 0;
    margin: -125px auto 50px;
}

.ttl-content img {
    margin: 0 auto;
}


/* PAGER */

.pagination {
    text-align: center;
    font-size: 0;
    line-height: 1;
}

.pagination span,
.pagination a {
    display: inline-block !important;
    vertical-align: top;
    text-align: center;
    font-size: 14px;
    text-decoration: none;
    padding: 0;
    width: 40px;
    height: 40px;
    line-height: 40px;
    margin: 0 8px;
}

.pagination span.pc-none,
.pagination a.pc-none {
    display: none !important;
}

.pagination span.current {
    background: #e5e5e5;
}

.pagination a.prev,
.pagination a.next {
    text-indent: -9999px;
    padding: 9px;
    background: url(../images/common/icon-pagenation-prev.png) no-repeat center center #4c4c4c;
}

.pagination a.prev {
    margin-left: 0;
}

.pagination a.next {
    background-image: url(../images/common/icon-pagenation-next.png);
    margin-right: 0;
}


/* BUTTON */

.btn,
.btn-back,
.btn-back-works,
.btn-back-news,
.btn-more,
.btn-load,
.btn-blue,
.btn-refine-search {
    text-align: center;
}

.btn-back-news {
    margin-top: 50px;
}

.btn a,
.btn-back a,
.btn-back-works a,
.btn-back-news a,
.btn-more a,
.btn-load a,
.btn-blue a,
.btn-refine-search a {
    text-align: left;
    display: inline-block;
    color: #fff;
    font-size: 16px;
    line-height: 28px;
    font-weight: bold;
    background: url(../images/common/icon-btn.png) no-repeat 90% center #3673e4;
    text-decoration: none;
    border-radius: 10px;
    padding: 14px 80px 14px 26px;
}

.btn-back-works a {
    text-align: center;
    padding: 14px 65px 14px 100px;
    background: url(../images/common/icon-btn-back.png) no-repeat 60px center #e12929;
}

.btn-back a,
.btn-back-news a {
    text-align: center;
    padding: 14px 80px;
    background: url(../images/common/icon-btn-back.png) no-repeat 30px center #e12929;
}

.btn-back a {
    width: 500px;
    margin: 0 auto;
}

.btn-more a,
.btn-load a,
.btn-blue a {
    text-align: center;
    padding: 14px;
    background: url(../images/common/icon-btn.png) no-repeat 90% center #e12929;
    min-width: 320px;
}

.btn-load a {
    background: url(../images/common/icon-btn-load.png) no-repeat 90% center #e12929;
    min-width: 320px;
}

.btn-blue a {
    background-color: #3673e4;
}

.btn-refine-search a {
    background: #e12929;
    text-align: center;
    padding: 14px 26px;
}

.btn-submit {
    display: flex;
    align-items: center;
    max-width: 720px;
    margin: 0 auto;
    flex-wrap: wrap;
}

.btn-submit input {
    border: 0;
    display: block;
    margin: 0 auto;
    width: 320px;
    font-size: 16px;
    background: url(../images/common/icon-btn.png) no-repeat 90% center #3673e4;
    color: #fff;
    padding: 23px 80px;
    line-height: 1;
    border-radius: 10px;
}

.btn a:hover,
.btn-back a:hover,
.btn-back-works a:hover,
.btn-back-news a:hover,
.btn-more a:hover,
.btn-load a:hover,
.btn-blue a:hover,
.btn-refine-search a:hover,
.btn-submit input:hover {
    cursor: pointer;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}


/* TAGS */

.tags {
    font-size: 0;
}

.tags a {
    display: inline-block;
    font-size: 14px;
    line-height: 1;
    color: #808080;
    border: 2px solid #808080;
    font-weight: bold;
    padding: 7px 9px;
    margin: 0 10px 0 0;
    text-decoration: none;
}

.tags a.mansion {
    border-color: #fc2a83;
    color: #fc2a83;
}

.tags a.exterior-wall {
    border-color: #4e82d7;
    color: #4e82d7;
}

.tags a.exterior {
    border-color: #c2a567;
    color: #c2a567;
}

.tags a.heights {
    border-color: #6ed3e2;
    color: #6ed3e2;
}

.tags a.interior {
    border-color: #fac61b;
    color: #fac61b;
}

.tags a.single-house {
    border-color: #8cc3a5;
    color: #8cc3a5;
}

.tags a.concept {
    border-color: #ee4e4e;
    color: #ee4e4e;
}

.tags a.collaboration {
    border-color: #ba78b0;
    color: #ba78b0;
}


/* -------------------------------------------
		6. NEWS
	------------------------------------------- */

.news-cat-list {
    list-style-type: none;
    font-size: 0;
    line-height: 1;
    text-align: center;
}

.news-cat-list li {
    display: inline-block;
    margin: 0 10px 0 0;
    min-width: 100px;
}

.news-cat-list li a {
    display: block;
    text-align: center;
    color: #808080;
    border: 2px solid #e6e6e6;
    background: #fff;
    font-size: 14px;
    font-weight: bold;
    text-decoration: none;
    padding: 8px 16px;
}

.news-cat-list li a.current {
    color: #fff;
    border: 2px solid #dd261e;
    background: #dd261e;
}

.news-list {
    width: 970px;
    list-style-type: none;
    margin: 50px 0 0 -10px;
    font-size: 0;
}

.news-list li {
    display: inline-block;
    vertical-align: top;
    width: 300px;
    margin: 0 10px 50px;
}

.news-list li img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 0 10px;
}

.news-list li a:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.news-list li a {
    text-decoration: none;
}

.news-list li .tags a {
    margin: 0 10px 10px 0;
}

.news-list li h3 {
    margin: 0 0 3px;
}

.news-list li h3 a {
    font-size: 16px;
    line-height: 24px;
    color: #262621;
}

.news-list li p {
    font-size: 16px;
    line-height: 26px;
    color: #262621;
}

.news-date {
    display: block;
    margin: 14px 0 0;
    font-size: 16px;
    line-height: 1;
    color: #666666;
    font-weight: bold;
}


/* DETAIL */

.news-detail-wrapper {
    width: 820px;
    margin: 0 auto;
    padding: 50px 0 0;
}

.ttl-news-detail {
    font-size: 26px;
    line-height: 32px;
}

.news-detail-wrapper .news-date {
    margin: 16px 0 20px;
}

.news-detail-wrapper .tags {
    margin: 0 0 30px;
}

.news-detail-eyecatch {}

.news-detail-eyecatch img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

.news-detail-content {
    margin: 50px 0;
}

.news-detail-content p {
    margin: 0 0 50px;
    font-size: 16px;
    line-height: 26px;
}

.news-detail-content img {
    max-width: 100%;
    height: auto;
}

.news-detail-content a:hover {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.news-detail-wrapper .share ul {
    text-align: left;
}


/* -------------------------------------------

	朝日リビング追加（ＰＣ）

/* -------------------------------------------

/* 2022社員旅行（2023/03/30） ココから　*/

h3.special {
    font-size: 22px;
    color: #3673e4;
    font-weight: bold;
    margin: 0 0 32px;
}

div.special-block {
    margin: 0 auto 52px;
}

p.special-text {
    margin-bottom: 25px;
}

p.special-text2 {
    margin-bottom: 0;
}

.special-img {
    margin-bottom: 30px;
}

div.comment {
    background: #F2F2F2;
    padding: 20px;
    margin: 0 auto 25px;
    font-size: 16px;
    line-height: 26px;
    font-style: italic;
}

dl.dot-none {
    font-size: 16px;
}


/* 2022社員旅行（2023/03/30） ココまで　*/


/* CULTUREボタン（2023/07/19） ココから　*/

div.related {
    width: 100%;
    text-align: center;
    margin: 120px auto;
    padding: 50px 0;
    border: 2px solid;
    border-color: #66c4e1 transparent #66c4e1 transparent;
    background-color: #f7fcfd;
    font-size: 180%;
    font-weight: 900;
    display: block;
    line-height: 1.5em;
}

div.related a {
    margin: auto;
    width: auto;
    text-decoration: none;
    color: #fff;
    background-color: #00BCD4;
    display: block;
    text-align: center;
    padding: 15px;
    border-radius: 5px;
    font-size: 180％;
    box-shadow: 0 2px 10px 0 #9E9E9E;
    transition: .3s;
}

div.related a:hover {
    text-decoration: underline;
    opacity: 1;
    transform: translate3d(0, 5px, 0);
    box-shadow: none;
}


/* CULTUREボタン（2023/07/19） ココまで　*/


/* ワーママ（2024/05/09） ココから　*/

dl.explain {
    margin: auto;
    padding-bottom: 0;
}

dl.explain dt {
    font-weight: bold;
    font-size: 120%;
}

dl.explain dd.child {
    padding-left: 3em;
}

dl.explain ul {
    margin-bottom: 10px;
}

dl.explain li {
    margin-left: 1em;
    padding-left: 1em;
    text-indent: -1em;
}

.caption {
    font-size: 130%;
    margin: 35px auto;
    align-items: center;
    display: flex;
    width: 98%;
}

.caption::before,
.caption::after {
    content: '';
    height: 1px;
    background-color: #ccc;
    flex-grow: 1;
}

.caption::before {
    margin-right: 1rem;
}

.caption::after {
    margin-left: 1rem;
}

dl.intoro dt {
    margin: 0;
}

dl.intoro ul {
    padding-left: 1em;
    margin-bottom: 0;
}


/* ワーママ（2024/05/09） ココまで　*/


/* -------------------------------------------
		7. WORKS
	------------------------------------------- */

.refine-search {
    background: #f2f2f2;
    text-align: center;
    padding: 50px 0;
}

.toggle-refine-search,
.btn-refine-search {
    display: none
}

.refine-search-box p {
    font-weight: bold;
    font-size: 14px;
    margin: 0 0 20px;
}

.refine-search-box .tags {}

.refine-search-box .tags a {
    background: #fff;
    border-color: #e6e6e6;
    margin: 0 10px 10px;
    padding: 7px 18px;
}

.refine-search-box .tags a.current {
    background: #E12929;
    border-color: #E12929;
    color: #fff;
}

.refine-search-renovation {
    margin: 40px 0 0;
}

.works-list {
    list-style-type: none;
    width: 1000px;
    margin: 50px 0 0 -15px;
    font-size: 0;
}

.works-list li {
    /*float: left;*/
    display: inline-block;
    vertical-align: top;
    width: 300px;
    margin: 0 15px 50px;
}

.works-list li img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 0 10px;
}

.works-list li a:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.works-list li h3 {
    margin: 5px 0 3px;
}

.works-list li h3 a {
    font-size: 16px;
    line-height: 24px;
    text-decoration: none;
    color: #262621;
}

.works-list li p {
    font-size: 14px;
    color: #262621;
}

.works-list li .tags a {
    margin: 0 10px 10px 0;
}


/* DETAIL */

.works-detail-head {
    position: relative;
    width: 100%;
    margin: 0 0 50px;
}

.img-works-detail ul {
    font-size: 0;
    line-height: 1;
    position: relative;
    width: 100%;
    width: 960px;
    margin: 0 auto;
}

.img-works-detail li {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.img-works-detail li img {
    display: block;
    width: 100%;
    height: auto;
}

.works-detail-thumb {
    list-style-type: none;
    line-height: 1;
    width: 960px;
    margin: -44px auto 0;
    z-index: 1;
    position: relative;
}

.slick-list {
    overflow: hidden !important;
}

.works-detail-thumb li {
    float: left;
    width: 176px;
    margin: 0 0 0 20px;
    position: relative;
}

.works-detail-thumb li:first-child {
    margin: 0;
}

.works-detail-thumb li a div {
    position: relative;
    background: #000;
}

.works-detail-thumb li a div img {
    display: block;
    width: 100%;
    height: auto;
}

.works-detail-thumb li a:hover div img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.works-detail-thumb li a div span {
    display: none;
    width: 100%;
    height: 100%;
    border: 8px solid #262621;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.works-detail-thumb li a.current div span,
.works-detail-thumb li.slick-current a div span {
    display: block;
}

.btn-works-detail-thumb,
.works-detail-thumb .slick-prev,
.works-detail-thumb .slick-next {
    display: block;
    width: 50px;
    height: 50px;
    text-indent: -9999px;
    position: absolute;
    top: 50%;
    margin: -25px 0 0;
}

.works-detail-thumb .slick-prev,
.btn-works-detail-thumb.prev {
    left: 50%;
    margin-left: -510px;
}

.works-detail-thumb .slick-next,
.btn-works-detail-thumb.next {
    right: 50%;
    margin-right: -510px;
}

.ttl-works-detail {
    font-size: 26px;
    margin: 20px 0;
}

.ttl-works-detail-sub {
    font-size: 14px;
}

.article {
    margin: 70px 0 0;
    position: relative;
}

.entry-body {
    width: 570px;
    padding: 0 0 90px;
    float: left;
}

.entry-body img, .entry-body figure {
  max-width: 100%;
  height: auto;
}

.entry-body figure {
  margin-top: 30px;
}

.entry-body figure figcaption {
  font-size: 16px !important;
}

.entry-body p,
.entry-body ul,
.entry-body ol {
    margin: 30px 0 0;
    font-size: 16px;
    line-height: 30px;
    letter-spacing: .05em;
}

.entry-body h2, .entry-body h3, .entry-body h4, .entry-body h5 {
  margin: 30px 0 0;
}

.entry-body h2:first-child,
.entry-body h3:first-child,
.entry-body h4:first-child,
.entry-body h5:first-child {
  margin: 0;
}


.entry-body p {}

.entry-body .border,
.news-detail-content .border {
    border-top: #ccc 1px solid;
    border-bottom: #ccc 1px solid;
    padding: 15px 0 15px 31px;
    font-size: 16px;
}

.news-detail-content ul,
.news-detail-content ol,
.news-detail-content dl {
    padding: 5px 0;
    font-size: 16px;
    line-height: 30px;
    margin: 0 0 30px;
}

.news-detail-content dt {
    margin-bottom: 15px;
}

.news-detail-content dd {
    margin-left: 10px;
}

.news-detail-content .border {
    margin-bottom: 30px;
}

.entry-body ul,
.entry-body ol {
    padding: 5px 0 5px 31px;
}

.entry-body p:first-child,
.entry-body ul:first-child {
    margin: 0;
}

.works-before-after {
    list-style-type: none;
    line-height: 1;
    margin: 0 0 60px;
    background: url(../images/works/icon-works-before-after.png) no-repeat center 106px;
}

.works-before-after li {
    width: 450px;
    float: right;
}

.works-before-after li:first-child {
    float: left;
}

.works-before-after li img {
    display: block;
    width: 100%;
    height: auto;
}

.works-before-after li p {
    margin: 20px 0 0;
}

.works-info {
    width: 320px;
    float: right;
    margin: 0 0 90px;
}

.works-info h3 {
    color: #fff;
    background: #262621;
    font-size: 18px;
    line-height: 1;
    padding: 12px 11px;
    font-weight: normal;
}

.works-info .result h3 {
    background: #e12929;
}

.works-info dl {
    list-style-type: none;
    font-size: 14px;
    line-height: 1;
    margin: 10px 0 50px;
    border-bottom: 1px dashed #cccccc;
}

.works-info .result dl {
    border-bottom: 0;
    margin: 10px 0 0;
}

.works-info dt,
.works-info dd {
    width: 160px;
    float: left;
    padding: 10px 12px;
    border-top: 1px dashed #cccccc;
}

.works-info dt:first-child,
.works-info dt:first-child+dd {
    border-top: 0;
}

.works-info dt {
    font-weight: bold;
    width: 148px;
}

.works-info dd {
    width: 172px;
    padding: 10px 0 10px 12px;
}

.works-info .result dt {
    color: #e12929;
    padding: 10px 0 10px 12px;
    white-space: nowrap;
}

.works-info .result dd {
    font-weight: bold;
    white-space: nowrap;
}

.works-info .result dd em {
    font-style: normal;
    font-size: 20px;
    color: #e12929;
}

.works-voice-box {}

.works-voice h3 {
    font-size: 18px;
    line-height: 1;
    background: url(../images/works/img-works-voice-planner.png) no-repeat top left;
    padding: 38px 0 7px 64px;
    margin: 40px 0 14px;
}

.works-voice.planner h3 {
    background-image: url(../images/works/img-works-voice-planner.png);
    margin: 0 0 14px;
}

.works-voice.architect h3 {
    background-image: url(../images/works/img-works-voice-architect.png);
}

.works-voice.company h3 {
    background-image: url(../images/works/img-works-voice-company.png);
}

.works-voice.customer h3 {
    background-image: url(../images/works/img-works-voice-customer.png);
}

.works-voice.male h3 {
    background-image: url(../images/works/img-works-voice-male.png);
}

.works-voice.female h3 {
    background-image: url(../images/works/img-works-voice-female.png);
}

.works-voice p {
    font-size: 14px;
    line-height: 26px;
    font-weight: bold;
    background: #fe8ab6;
    border-radius: 20px;
    padding: 28px 18px;
    position: relative;
}

.works-voice p:before {
    content: "";
    display: block;
    position: absolute;
    top: -10px;
    left: 20px;
    border-bottom: 10px solid #fe8ab6;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
}

.works-voice.planner p {
    background: #fe8ab6;
}

.works-voice.planner p:before {
    border-bottom: 10px solid #fe8ab6;
}

.works-voice.architect p {
    background: #88e3be;
}

.works-voice.architect p:before {
    border-bottom: 10px solid #88e3be;
}

.works-voice.company p {
    background: #fff66c;
}

.works-voice.company p:before {
    border-bottom: 10px solid #fff66c;
}

.works-voice.customer p {
    background: #9edaf0;
}

.works-voice.customer p:before {
    border-bottom: 10px solid #9edaf0;
}

.works-voice.male p,
.works-voice.female p,
.works-voice.free p {
    background: #ffcb70;
}

.works-voice.male p:before,
.works-voice.female p:before {
    border-bottom: 10px solid #ffcb70;
}

.related-works {
    margin: 130px 0 50px;
}

.related-works h2 {
    text-align: center;
    font-size: 25px;
}

.sns-share {
    padding: 120px 0 10px;
}

.sns-share-txt {
    text-align: center;
    font-size: 20px;
    font-weight: 600;
}

.sns-share-btn {
    display: flex;
    justify-content: center;
    margin: 40px 0 0;
}

.sns-share-btn li {
    list-style: none;
    padding: 0 25px;
}

.sns-share-btn a:hover {
    opacity: .7;
}

.news-detail-wrapper .sns-share {
    padding-top: 50px;
}


/* -------------------------------------------
		8. RECRUIT
	------------------------------------------- */


/* RECRUIT TOP */

.ttl-recruit {
    text-align: center;
    font-size: 24px;
    margin: 0 auto 80px;
}

.recruit-column .ttl-recruit {
    margin: 0 auto 50px;
}

.recruit-index-box {
    margin: 100px 0 0;
}

.job-list {
    list-style-type: none;
}

.job-list li {
    margin: 50px 0 0;
}

.job-list li:first-child {
    margin: 0;
}

.job-list li a {
    display: block;
    text-decoration: none;
    color: #fff;
    text-align: center;
    padding: 77px 0 50px;
}

.job-list li a h4 {
    font-size: 26px;
    line-height: 1;
}

.job-list li a p {
    font-size: 16px;
    line-height: 24px;
    width: 560px;
    margin: 44px auto 50px;
}

.job-list li a div {
    font-size: 16px;
    font-weight: bold;
    line-height: 60px;
    margin: 0 auto;
    width: 320px;
    height: 60px;
    border-radius: 10px;
    background: url(../images/common/icon-btn.png) no-repeat 90% center #e12929;
}

.job-list li a:hover div {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.recruit-staff-item a {
    display: block;
    width: 100%;
    height: 345px;
    text-decoration: none;
    font-size: 16px;
    line-height: 30px;
    padding: 64px 490px 0 60px;
    background: url(../images/recruit/bg-recruit-staff.jpg) no-repeat 0 0;
}

.recruit-staff-item a p {
    font-size: 16px;
    line-height: 30px;
    margin: 0 auto 67px;
}

.recruit-staff-item a div {
    text-align: center;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    line-height: 60px;
    margin: 0 auto;
    width: 320px;
    height: 60px;
    border-radius: 10px;
    background: url(../images/common/icon-btn.png) no-repeat 90% center #e12929;
}

.recruit-staff-item a:hover div {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.recruit-flow img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.recruit-column {
    background: #f2f2f2;
    padding: 50px 0 40px;
}

.recruit-column-list {
    list-style-type: none;
    width: 1020px;
    margin: 0 0 0 -30px;
}

.recruit-column-list li {
    float: left;
    width: 450px;
    margin: 0 30px 30px;
}

.recruit-column-list li img {
    display: block;
    width: 100%;
    height: auto;
}

.recruit-column-list li a:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}


/* JOB DETAIL */

.job-detai-head {
    width: 100%;
    /*min-width: 960px;*/
    height: 345px;
    overflow: hidden;
}

.ttl-job-detai-head {
    width: 960px;
    margin: 0 auto;
    position: relative;
}

.ttl-job-detai-head h2 {
    position: absolute;
    top: 160px;
    left: 48px;
    font-size: 26px;
    line-height: 1;
    color: #fff;
}

.job-detai-head img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.job-detail-table {
    list-style-type: none;
    margin: 0 10px 0;
    border-collapse: collapse;
    margin: 0 0 100px;
}

.job-detail-table th,
.job-detail-table td {
    border-bottom: 1px solid #dddddd;
    line-height: 28px;
    vertical-align: top;
}

.job-detail-table th {
    font-weight: bold;
    font-size: 20px;
    width: 140px;
    text-align: right;
    padding: 48px 16px;
}

.job-detail-table td {
    font-size: 16px;
    width: 800px;
    padding: 48px 60px 48px 100px;
}


/* STAFF */

.staff-list {
    list-style-type: none;
    flex-wrap: wrap;
    display: flex;
}

.staff-list li {
    width: 300px;
    margin: 0 10px 60px;
}

.staff-list li a {
    display: block;
    text-decoration: none;
    text-align: center;
}

.staff-list li a img {
    display: block;
    width: 250px;
    height: auto;
    margin: 0 auto;
}

.staff-list li a:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.staff-list li a h3,
.staff-list li a h4 {
    font-size: 20px;
    font-weight: bold;
    line-height: 1;
    margin: 30px 0 18px;
}

.staff-list li a p {
    font-size: 16px;
    line-height: 28px;
}


/* STAFF DETAIL */

.img-staff-detail {
    position: relative;
    display: flex;
    flex-wrap: wrap;
}

.img-box,
.txt-box {
    width: 100%;
}

.img-staff-detail img {
    display: block;
    width: 100%;
    height: auto;
    min-width: 1400px;
    min-height: 390px;
}

.txt-staff-detail {
    position: relative;
    width: 820px;
    margin: 0 auto;
}

.txt-staff-detail p,
.txt-staff-detail h2,
.txt-staff-detail span {
    display: block;
    position: absolute;
    color: #fff;
    left: 0px;
}

.txt-staff-detail p {
    top: 88px;
    font-size: 26px;
    line-height: 46px;
    font-weight: bold;
}

.txt-staff-detail h2 {
    top: 240px;
    font-size: 20px;
    font-weight: bold;
}

.txt-staff-detail span {
    top: 280px;
    font-size: 16px;
    line-height: 26px;
}

.movie__up {
    margin-top: 76px;
}

.movie__up-block {
    width: 100%;
    max-width: 760px;
    aspect-ratio: 16/8.95;
    margin: 0 auto;
}

.movie__up-block iframe {
    width: 100%;
    height: 100%;
}

.movie__down {
    margin-bottom: 76px;
}

.movie__down-block {
    width: 100%;
    max-width: 760px;
    aspect-ratio: 16/8.95;
    margin: 0 auto;
}

.movie__down-block iframe {
    width: 100%;
    height: 100%;
}

.interview {
    margin: 70px 0;
}

.interview-list {
    list-style-type: none;
    width: 820px;
    margin: 0 auto;
}

.interview-list li {
    margin: 60px 0 0;
}

.interview-list li:first-child {
    margin: 0;
}

.interview-list li .question {
    font-size: 22px;
    color: #3673e4;
    font-weight: bold;
    background: url(../images/recruit/icon-staff-q.png) no-repeat 3px 0;
    padding: 10px 0 3px 52px;
    margin: 0 0 32px;
}

.interview-list li .answer {
    font-size: 16px;
    line-height: 28px;
    padding: 0 0 0 3px;
}

.interview-list li .image {
    margin-top: 32px;
    text-align: center;
}

.schedule {
    background: #f2f2f2;
    padding: 50px 0 100px;
}

.interview-list li .image img {
    max-width: 100%;
}

.schedule .ttl-recruit {
    font-size: 20px;
    margin: 0 0 50px;
}

.schedule-list {
    list-style-type: none;
    position: relative;
}

.schedule-list li {
    /*margin: 21px 0 0;*/
    position: relative;
    overflow: hidden;
    height: 241px;
}

.schedule-list li:first-child {
    margin: 0;
}

.schedule-list li:before {
    content: ".";
    font-size: 0;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../images/recruit/bg-staff-schedule-list.png) repeat-y 0 0 #f2f2f2;
    z-index: 0;
}

.schedule-list li:first-child:before {
    height: 50%;
}

.schedule-list li.last-child:before {
    bottom: inherit;
    top: 0;
    height: 50%;
}

.schedule-list li:last-child:before {
    bottom: inherit;
    top: 0;
    height: 50%;
}

.schedule-list li .hour {
    float: left;
    width: 84px;
    height: 84px;
    background: url(../images/recruit/bg-staff-schedule-hour.png) no-repeat 0 0;
    margin: 69px 0 0 63px;
    font-size: 20px;
    line-height: 84px;
    text-align: center;
    color: #fff;
    font-weight: bold;
    position: relative;
    z-index: 2;
}

.schedule-list li .content {
    float: right;
    width: 800px;
    height: 221px;
    position: relative;
    background: #fff;
    padding: 38px 400px 0 108px;
    position: relative;
    z-index: 2;
}

.schedule-list li .content h4 {
    color: #3673e4;
    font-size: 20px;
    margin: 0 0 20px;
}

.schedule-list li .content p {
    font-size: 16px;
    line-height: 26px;
}

.schedule-list li .content .mask {
    width: 800px;
    height: 221px;
    position: absolute;
    top: 0;
    right: 0;
    background: url(../images/recruit/bg-staff-schedule-content.png) no-repeat top right;
    z-index: 1;
    pointer-events: none;
}

.schedule-list li .content .img {
    position: absolute;
    top: 0;
    right: 0;
    line-height: 1;

    border-radius: 0 30px 30px 0;
    overflow: hidden;
}

.schedule-list li .content .img img {
  display: block;
  position: relative;
}
.schedule-list li .content .img:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  box-shadow: 26px 0px 20px 0px rgb(255 255 255) inset;
}

#movie-other-wrap {
    padding-top: 80px;
}

#movie-other {
    margin: 0px auto 70px;
    position: relative;
    max-width: 800px;
}

#movie-other-ttl {
    text-align: center;
    font-size: 16px;
    padding: 19px 0;
    position: relative;
    cursor: pointer;
    background: #e12929;
    color: #FFF;
    border-radius: 10px;
}

#movie-other-ttl.open {
    border-radius: 10px 10px 0 0;
}

#movie-other-ttl:hover {
    opacity: .7;
}

#movie-other-ttl span {
    color: #FFF;
    background: url(../images/recruit/open.png) no-repeat center right;
    padding: 10px 36px 10px 0;
    position: absolute;
    right: 3%;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
}

#movie-other-ttl.open span {
    background: url(../images/recruit/close.png) no-repeat center right;
}

.movie-other-list {
    padding: 50px 4%;
    display: none;
    position: relative;
    background: #f5f5f5;
    border-radius: 0 0 10px 10px;
}

.movie-other-block {
    max-width: 650px;
    margin: 0 auto 26px;
}

.movie-other-block-ttl {
    font-size: 16px;
    font-weight: 800;
    margin: 0 0 10px;
    padding: 0 0 0 27px;
    background: url(../images/recruit/icon-movie.png) no-repeat center left;
}

.movie-other-block img {
    max-width: 100%;
}

.movie-other-row {
    display: flex;
    justify-content: space-between;
}

.movie-other-item {
    width: 48%;
}

.movie-other-link {
    display: block;
    transition: opacity .5s ease;
    position: relative;
}

.movie-other-link::after {
    content: '';
    width: 40px;
    height: 40px;
    background: url(../images/recruit/movie-btn.png) no-repeat center/contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.movie-other-link:hover {
    opacity: .7;
}

.movie-other-topbtn {
    position: absolute;
    bottom: 10px;
    right: 10px;
    width: 50px;
    height: 50px;
    text-indent: -99999px;
    white-space: nowrap;
    z-index: 50;
}

.movie-other-topbtn a {
    display: flex;
    background: #e02828;
    position: relative;
    border: solid 1px #e02828;
    height: 100%;
    transition: all .5s ease;
}

.movie-other-topbtn a:hover {
    background: #FFF;
    opacity: 1;
}

.movie-other-topbtn a:before {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    border-top: #FFF 2px solid;
    border-left: #FFF 2px solid;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    position: absolute;
    top: 44%;
    left: 34%;
}

.movie-other-topbtn a:hover:before {
    border-color: #e02828;
}

#moviie-lbox {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .85);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
    display: none;
}

.moviie-lbox-inr {
    width: 90%;
    max-width: 1024px;
    position: relative;
    z-index: 102;
}

.moviie-lbox-item {
    z-index: 1;
}

#moviie-lbox video {
    width: 100%;
    outline: none;
    max-height: 75vh;
}

#moviie-lbox #movie-close {
    position: absolute;
    right: 0;
    top: -59px;
    width: 44px;
    height: 44px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    z-index: 1;
}

#moviie-lbox #movie-close:hover {
    cursor: pointer;
}

#moviie-lbox #movie-close:before,
#moviie-lbox #movie-close:after {
    content: '';
    display: block;
    width: 2px;
    height: 100%;
    background: #fff;
    position: absolute;
    top: 0;
    left: 50%;
}

#moviie-lbox #movie-close:before {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

#moviie-lbox #movie-close:after {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}

#moviie-lbox #clickable {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    opacity: .3;
    overflow: hidden;
    overflow-y: auto;
    /* scrollにはしないことでスクロールの必要がないときはスクロールバーを表示させない */
    -webkit-overflow-scrolling: touch;
}


/* -------------------------------------------
		9. CONTACT & RECRUIT CONTACT
	------------------------------------------- */

.form-box {}

.txt-form {
    font-size: 16px;
    line-height: 30px;
    text-align: center;
}

.form-table {
    width: 100%;
    border-collapse: collapse;
    margin: 40px 10px 50px;
}

.form-table tr.witness th,
.form-table tr.witness td {
    display: none;
}

.form-table th,
.form-table td {
    border-top: 1px solid #d6d6d6;
}

@media screen and (min-width: 769px) {
    .failed .form-table td#data-contents {
        padding-left: 30px;
    }
}

@media screen and (max-width: 768px) {
    .failed .form-table td#data-contents span {
        padding: 0 1em;
    }
}

.form-table th {
    width: 330px;
    font-size: 20px;
    line-height: 1.6;
    text-align: right;
    vertical-align: top;
    padding: 57px 8px 57px 0;
}

.form-table th.is-up {
    padding: 41px 20px 45px 0;
}

.form-table th.lt-05 {
    letter-spacing: -0.5px;
}

.form-table td {
    width: 660px;
    padding: 50px 0 50px 16px;
    font-size: 16px;
}

.form-table td.is-flex {
    display: flex;
    align-items: center;
}

.form-table td.is-flex .form-table__date {
    margin-right: 32px;
}

.form-table td .wpcf7-list-item-label {
    font-size: 16px;
}

.form-table__date {
    max-width: 180px;
}

.form-table__time {
    width: 180px;
    border: 1px solid #262621;
    padding: 6px 4px;
    border-radius: 4px;
    color: #262621;
    font-size: 16px;
}

.form-table__message {
    display: block;
    font-size: 16px;
    margin: 0 0 16px;
}

.form-table td input[type="text"],
.form-table td input[type="email"],
.form-table td input[type="number"],
.form-table td input[type="tel"],
.form-table td textarea {
    display: block;
    width: 100%;
    background: #f5f5f5;
    border: 0;
    border-radius: 3px;
    font-size: 16px;
    padding: 1em;
    padding: 0 1em;
}

.form-table td input[type="text"],
.form-table td input[type="email"],
.form-table td input[type="number"],
.form-table td input[type="tel"] {
    height: 44px;
    line-height: 44px;
    /*line-height: 1;*/
}

.form-table td textarea {
    height: 148px;
    padding: 1em;
    line-height: 1.7;
}

input.wpcf7c-conf {
    cursor: default;
}

input.wpcf7c-conf::placeholder {
    color: #fff;
}

input.wpcf7c-conf::-ms-input-placeholder {
    color: #fff;
}

input.wpcf7c-conf::-ms-input-placeholder {
    color: #fff;
}

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #f5f5f5 inset;
}

input.wpcf7c-conf:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #fff inset;
}

.mwform-radio-field {
    margin-top: 12px;
    display: block;
    width: 100%;
    vertical-align: top;
}

.form-table .wpcf7-list-item.first {
    display: block;
    margin-top: 0;
}

.form-table .wpcf7-list-item {
    margin-left: 0;
}

.wpcf7-radio .wpcf7-list-item {
    display: block;
    width: 100%;
    vertical-align: top;
    margin-top: 20px;
}

.wpcf7-radio .wpcf7-list-item:first-child {
    margin-top: 0;
}

.form-table .wpcf7-list-item label {
    font-size: 16px;
    line-height: 1;
    display: inline-block;
    /*margin: 0 0 0 10px;*/
    background: url(../images/common/img-radio.png) no-repeat 0 0 transparent;
    padding: 0 0 0 26px;
}

.form-table .wpcf7-list-item label.checked {
    background: url(../images/common/img-radio-on.png) no-repeat 0 0 transparent;
}

.form-table .wpcf7-list-item input[type="radio"] {
    display: inline-block;
    /*width: 15px;*/
    /*height: 15px;*/
    /*background: url(../images/common/img-radio.png) no-repeat 0 0 transparent;*/
    border: 0;
    width: 0;
    height: 0;
    opacity: 0;
}

.form-table .wpcf7-list-item label:hover,
.mwform-radio-field input[type="radio"]:hover {
    cursor: pointer;
}

.wpcf7-form-control {
    display: block;
    margin: 0 0 27px;
}

.form-table .checkbox label {
    padding-left: 0;
    background: none;
}

.form-table .wpcf7-list-item input[type="checkbox"] {
    appearance: auto;
    opacity: 1;
    width: 16px;
    height: 16px;
    position: relative;
    top: 1px;
}

.privacy-box {
    text-align: center;
}

.privacy-box a {
    color: #159cde;
}

.wpcf7c-btn-back {
    background: url(../images/common/icon-btn-back.png) no-repeat 10% center #3673e4 !important;
}

div.wpcf7-mail-sent-ok {
    display: none !important;
}

.form-table .wpcf7c-conf {
    background: none !important;
    background-color: #FFF !important;
    border: none !important;
    appearance: none;
}

.form-table span.wpcf7-not-valid-tip {
    margin: 27px 0;
}

div.wpcf7-response-output {
    text-align: center;
    padding: 12px 10px !important;
    line-height: 1.5;
}

.mwform-radio-field:first-child {
    margin-top: 0;
}

.mwform-radio-field label {
    font-size: 16px;
    line-height: 1;
    display: inline-block;
    /*margin: 0 0 0 10px;*/
    background: url(../images/common/img-radio.png) no-repeat 0 0 transparent;
    padding: 0 0 0 26px;
}

.mwform-radio-field label.checked {
    background: url(../images/common/img-radio-on.png) no-repeat 0 0 transparent;
}

.mwform-radio-field input[type="radio"] {
    display: inline-block;
    /*width: 15px;*/
    /*height: 15px;*/
    /*background: url(../images/common/img-radio.png) no-repeat 0 0 transparent;*/
    border: 0;
    width: 0;
    height: 0;
    opacity: 0;
}

.mwform-radio-field label:hover,
.mwform-radio-field input[type="radio"]:hover {
    cursor: pointer;
}

.select-wrap {}

.select-wrap select {
    display: block;
    width: 100%;
    height: 44px;
    font-size: 16px;
    line-height: 44px;
    padding: 0 0 0 24px;
    border: 1px solid #cccccc;
    border-radius: 3px;
    background: url(../images/common/img-select.png) no-repeat top right;
}

.select-wrap select[name="working_place"] {
    appearance: none;
}

.ie8 .select-wrap select {
    height: auto;
    line-height: 1;
    padding: 12px 0 12px 24px;
    background: none;
}

.ie9 .select-wrap select {
    background: none;
}


/* ALERT */

.form-error {
    text-align: center;
    border: 1px solid #e12929;
    padding: 22px 76px;
    margin: 40px 0 0;
}

.ttl-form-error {
    display: inline-block;
    font-size: 16px;
    color: #e12929;
    font-weight: bold;
    margin: 0 0 32px;
    padding: 4px 0 4px 42px;
    text-align: center;
    background: url(../images/common/icon-form-error.png) no-repeat left center;
}

.txt-form-error {
    text-align: left;
    font-size: 16px;
    line-height: 30px;
    color: #e12929;
}

.error {
    background-color: #ffd9d9 !important;
}

.form-table th.error {
    background-color: inherit !important;
}


/* COMPLETE */

.txt-form-complete {
    font-size: 20px;
    line-height: 1.8;
    text-align: center;
    width: 620px;
    margin: 0 auto;
}

.txt-form-complete.is-basic {
    font-size: 14px;
}

.companies {}

.txt-companies {
    font-size: 14px;
    line-height: 26px;
    width: 620px;
    margin: 40px auto 0;
}

.companies .txt-companies:first-child {
    margin: 100px auto 0;
}

.txt-companies strong {
    font-weight: bold;
    font-size: 20px;
    line-height: 36px;
}

.form-box .btn-back {
    margin: 50px auto 100px;
}


/* -------------------------------------------
		10. PRIVACY
	------------------------------------------- */

.txt-privacy {
    font-size: 16px;
    line-height: 30px;
    text-align: center;
    margin: 0 auto 50px;
    padding: 0 33px;
    letter-spacing: .05em;
}

.privacy-table,
.company-table,
.gyomu-table {
    width: 100%;
    border-collapse: collapse;
}

.privacy-table th,
.privacy-table td,
.company-table th,
.company-table td {
    border-top: 1px solid #cfcfcf;
    vertical-align: top;
}

.privacy-table th,
.company-table th,
.gyomu-table th {
    font-size: 20px;
    line-height: 33px;
    font-weight: bold;
    text-align: right;
    width: 310px;
    padding: 50px 70px 50px 0;
}

.privacy-table td,
.company-table td,
.gyomu-table td {
    font-size: 16px;
    line-height: 30px;
    padding: 50px 8px 25px 0;
    letter-spacing: .05em;
}


/* -------------------------------------------
		11. ERROR
	------------------------------------------- */

.error-box {
    padding: 150px 0 0;
}

.error-box figure img {
    display: block;
    margin: 0 auto;
}

.error-box h2 {
    font-size: 18px;
    line-height: 30px;
    font-weight: bold;
    text-align: center;
    margin: 42px 0 50px;
}

.error-box.search-error-box h2 {
    font-size: 16px;
}


/* -------------------------------------------
		12. ABOUT US
	------------------------------------------- */


/* PAGE MENU */

.page-menu {
    background: #f2f2f2;
    margin: 0 0 100px;
}

.page-menu ul {
    list-style-type: none;
    width: 960px;
    margin: 0 auto;
    font-size: 0;
    line-height: 1;
    text-align: center;
}

.page-menu ul li {
    display: inline-block;
}

.page-menu ul li a {
    display: block;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
    padding: 22px 27px;
}

.page-menu ul li a.current {
    color: #e12929;
}

.page-menu ul li a:hover {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
    zoom: 1;
}

.ttl-aboutus {
    margin: 0 auto;
}

.ttl-aboutus img {
    margin: 0 auto;
}


/* MASSAGE */

.message {
    margin: 90px 0 0;
}

.img-message {
    margin: 86px 0 60px;
}

.img-message img {
    display: block;
    width: 100%;
    height: auto;
}

.txt-message {
    width: 455px;
    margin: 0 0 50px;
}

.txt-message-left {
    float: left;
}

.txt-message-right {
    float: right;
}

.txt-message p {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: .05em;
}

.signature {
    clear: both;
    text-align: right;
    font-size: 18px;
}

.signature span {
    display: block;
    margin: 0 0 10px;
}

.signature p {
    float: right;
    font-size: 0;
    width: 135px;
    height: 29px;
    background: url(../images/aboutus/img-aboutus-message-signature.png) no-repeat right top;
}


/* CONCEPT */

.concept {
    margin: 150px 0 0;
}

.img-concept {
    margin: 86px 0 60px;
}

.img-concept img {
    display: block;
    width: 100%;
    height: auto;
}

.concept-list {
    border: 1px solid #e12929;
}

.concept-list-item {
    padding: 50px 70px;
    border-top: 1px solid #e12929;
}

.concept-list-item:first-child {
    border: 0;
}

.concept-list-item h4 {
    font-size: 20px;
    padding: 4px 0 5px 18px;
    line-height: 1;
    background: url(../images/aboutus/icon-aboutus-concept.png) no-repeat left center;
    margin: 0 0 18px;
}

.concept-list-item p {
    font-size: 16px;
    line-height: 30px;
}


/* BUSINESS */

.business {
    margin: 0;
}

.txt-business {
    width: 634px;
    margin: 64px auto 0;
    font-size: 16px;
    line-height: 30px;
    letter-spacing: .05em;
}

.img-business {
    margin: 50px 0 0;
}

.img-business img {
    display: block;
    width: 100%;
    height: auto;
}

.txt-business-sub {
    background: #f2f2f2;
    text-align: center;
    font-size: 16px;
    line-height: 30px;
    letter-spacing: .05em;
    padding: 0 0 70px;
}

.txt-business-sub h4 {
    font-size: 20px;
}

.business-list {
    list-style-type: none;
    margin: -17px auto 0;
    padding: 0;
    position: relative;
}

.business-list li {
    width: 452px;
}

.business-list li.for-business {
    float: left;
}

.business-list li.for-life {
    float: right;
}

.img-business-list {
    line-height: 1;
}

.img-business-list img {
    display: block;
    width: 100%;
    height: auto;
}

.business-list-content {
    padding: 0 65px 50px;
    background: #f2f2f2;
    min-height: 470px;
}

.business-list-content p {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: .05em;
    /*min-height: 190px;*/
    min-height: 11.9em;
}

.business-list-content .btn-more a {
    text-align: left;
    padding: 14px 0 14px 18px;
    width: 100%;
    font-size: 16px;
    background-position: 93% center;
}

.business-list-content .btn-more {
    margin: 30px 0 0;
}


/* GYOMU */

.gyomu-table {
    margin: 0;
}

.gyomu-table th,
.gyomu-table td {
    vertical-align: top;
}

.gyomu-table td p {
    margin-top: 0;
    margin-bottom: auto;
}

.gyomu-table th {
    font-size: 20px;
    line-height: 33px;
    font-weight: bold;
    text-align: right;
    width: 310px;
    padding: 50px 70px 50px 0;
}

.gyomu-table th.image {
    text-align: center;
    padding: 0;
}

th.image img {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
    border: 1px solid #cfcfcf;
    width: 92%;
    max-width: 496px;
}

.privacy-table td,
.company-table td,
.gyomu-table td {
    font-size: 16px;
    line-height: 30px;
    padding: 50px 8px 50px 0;
    letter-spacing: .05em;
}

.gyomu-table td p {
    margin-top: 1em;
}

.gyomu-table td p:first-child {
    margin-top: 0;
}

.disc-list {
    margin-left: 6px;
    padding-left: 1em;
}

.disc-list li {
    list-style-type: disc;
}

.gyomu-text {
    width: 883.2px;
    margin: 0 auto;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.9;
    letter-spacing: 0.11em;
    text-align: left;
}

.gyomu-main-image {
    text-align: center;
}

.gyomu-main-image img {
    margin: 25px auto;
    border: 1px solid #cfcfcf;
}

.gyomu-image-box {
    width: 92%;
    margin: 45px auto 0;
    text-align: center;
}

.gyomu-image-box img {
    width: auto;
    height: auto;
    margin: 0 0 15px;
    border: 1px solid #cfcfcf;
}


/* ACCESS */

.access {
    padding: 0 10px;
}

.access-list {
    list-style-type: none;
    margin: 0 0 76px;
}

.access-list li {
    position: relative;
    border-top: 1px solid #cfcfcf;
    padding: 0 120px 0 0;
}

.access-list li .img {
    position: absolute;
    width: 110px;
    height: 110px;
    top: 24px;
    right: 0;
}

.access-list li .img img {
    display: block;
    width: 100%;
    height: auto;
}

.access-list li .office,
.access-list li .address {
    display: table-cell;
    vertical-align: middle;
}

.access-list li .office {
    width: 220px;
    padding: 0 52px 0 0;
}

.access-list li .office h3 {
    font-size: 20px;
    line-height: 36px;
    font-weight: bold;
    text-align: right;
}

.access-list li .address {
    font-size: 16px;
    line-height: 30px;
    padding: 24px 0 24px 50px;
}

.btn-map {
    display: block;
}

.btn-map a {
    display: inline-block;
    width: 56px;
    height: 15px;
    background: url(../images/aboutus/icon-map.png) no-repeat left center;
    text-indent: -9999px;
    vertical-align: middle;
}


/* COMPANY */

.company-table {
    margin: 0;
}

.company-table th,
.company-table td {}

.company-table th {}

.company-table td.executive {
    padding: 14px 8px 14px 0;
}

.company-table td p {
    margin-top: 1em;
}

.company-table td p:first-child {
    margin-top: 0;
}

.company-table td div {
  float: left;
}

.company-table td div:first-child {
    float: left;
    width: calc(50% - 20px);
    margin-right: 20px;
}

.company-table td em {
    font-weight: bold;
    font-style: normal;
    margin-right: 0.5em;
}

.executive-list {
    list-style-type: none;
}

.executive-list dt,
.executive-list dd {
    float: left;
    height: 48px;
    line-height: 20px;
}

.executive-list dt {
    font-size: 20px;
    /*line-height: 33px;*/
    font-weight: bold;
    text-align: right;
    width: 310px;
    padding: 14px 70px 14px 0;
}

.executive-list dd {
    width: 642px;
    font-size: 16px;
    padding: 14px 0;
    letter-spacing: .05em;
}


/* HISTORY */

.history-list {
    list-style-type: none;
    width: 480px;
    padding: 0 10px 0 0;
    float: left;
    margin: 158px 0 100px;
}

.history-list:first-child {
    margin: 0;
}

.history-list li {
    padding: 38px 0 0;
    position: relative;
}

.history-list li:first-child {
    padding: 0;
}

.history-list li:before {
    content: '.';
    font-size: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../images/aboutus/bg-history-list.png) repeat-y 0 0;
    position: absolute;
    top: 0;
    left: 0;
}

.history-list li:first-child:before {
    top: 12px;
}

.history-list li:last-child:before {
    height: 52px;
}

.history-list li.last-child:before {
    height: 52px;
}

.history-list li .year {
    width: 135px;
    padding: 0 32px 0 0;
    float: left;
    background: url(../images/aboutus/icon-history-circle.png) no-repeat 112px 12px;
}

.history-list li .content {
    width: 335px;
    float: right;
}

.history-list li .year h3 {
    font-size: 20px;
    line-height: 33px;
    text-align: right;
}

.history-list li .content p {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 0.05em;
}


/* -------------------------------------------
		13. STRENGTH
	------------------------------------------- */

.renovation-report-content {}

.main-renovation-report {
    position: relative;
    height: 504px;
}

.main-renovation-report h2 {
    text-align: center;
    padding: 100px 0 50px;
    position: relative;
}

.main-renovation-report h2 img {
    display: block;
    margin: 0 auto;
}

.main-renovation-report p {
    font-size: 16px;
    line-height: 30px;
    color: #fff;
    padding: 0 165px;
}

.ttl-renovation-report-content {
    font-size: 26px;
    color: #4a2609;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    margin: 80px auto 0;
}

.ttl-renovation-report-content em {
    color: #e12929;
    font-style: normal;
}

.img-renovation-report-content img {
    display: block;
    width: 100%;
    height: auto;
}

.step-list {
    list-style-type: none;
}

.step-list li {
    list-style-type: none;
}

.step-list li.swot {
    background: #ceeeb6;
}

.step-list li.jks {
    background: #f8e0e3;
}

.step-list li.construction {
    background: #fff1c8;
}

.step-list li.chokotto {
    background: #d6eaf7;
    padding: 0 0 30px;
}

.step {
    position: absolute;
    top: 0;
    left: 8px;
}

.step-list-content {
    padding: 0 0 0 190px;
}

.ttl-step {
    padding: 40px 0 20px;
}

.ttl-step p {
    font-size: 16px;
    line-height: 30px;
}

.ttl-step h4 {
    font-size: 26px;
    line-height: 30px;
    font-weight: bold;
}

.txt-step {
    font-size: 16px;
    line-height: 30px;
    padding: 0 70px 0 0;
}

.img-step {
    margin: 26px 0 0;
}

.img-step p {
    font-size: 16px;
    line-height: 30px;
    margin: 5px 0 0;
}

.img-step img {
    display: block;
    width: 316px;
    height: auto;
}

.step-list li figure {
    display: block;
    position: absolute;
}

.step-list li.swot figure {
    top: 244px;
    right: 38px;
}

.step-list li.jks figure {
    top: 211px;
    right: 19px;
}

.step-list li.construction figure {
    top: 205px;
    right: 53px;
}

.step-list li.chokotto figure {
    top: 256px;
    right: 15px;
}

.step-list li .btn-more {
    margin: 70px 0 40px;
}

.bottom {
    line-height: 1;
}

.bottom img {
    display: block;
    width: 100%;
    height: auto;
}

.renovation-flow {
    padding: 120px 0 88px;
}

.renovation-flow h3 {
    text-align: center;
    font-size: 25px;
    margin: 0 0 100px;
}

.renovation-flow-list {
    list-style-type: none;
    background: url(../images/strength/bg-renovation-flow-list.png) no-repeat 0 115px;
}

.renovation-flow-list li {
    float: left;
    width: 300px;
    margin: 0 10px;
}

.renovation-flow-list li img {
    display: block;
    width: 100%;
    height: auto;
}

.renovation-flow-list li h4 {
    display: none;
}

.renovation-flow-list li p {
    font-size: 16px;
    line-height: 30px;
    margin: 20px 0 0;
    padding: 0 39px;
    letter-spacing: .05em;
}


/* DETAIL */

.strength-detail-head {
    width: 100%;
    height: 455px;
    overflow: hidden;
}

.ttl-strength-detail-head-wrapper {
    position: relative;
    width: 960px;
    margin: 0 auto;
}

.ttl-strength-detail-head {}

.ttl-strength-detail-head h2,
.ttl-strength-detail-head p {
    text-align: center;
    color: #fff;
    font-weight: bold;
}

.ttl-strength-detail-head h2 {
    font-size: 36px;
    line-height: 1;
    padding: 174px 0 32px;
}

.ttl-strength-detail-head p {
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
}

.ttl-strength-detail-head p span {
    font-size: 14px;
    font-weight: 500;
    display: block;
}

.strength-detail-head img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}

.txt-strength-detail {}

#chokotto .txt-strength-detail {
    background: #d6eaf7;
}

#swot .txt-strength-detail {
    background: #ceeeb6;
}

#jks .txt-strength-detail {
    background: #f8e0e3;
}

#jks .content-wrapper .mb40 {
    margin-bottom: 30px;
    padding-bottom: 0;
}

#construction .txt-strength-detail {
    background: #fff1c8;
}

.txt-strength-detail h3 {
    font-size: 20px;
    line-height: 33px;
    padding: 95px 290px 40px 24px;
}

.txt-strength-detail p {
    font-size: 16px;
    line-height: 30px;
    letter-spacing: 0.1em;
    padding: 0 260px 117px 24px;
}

#chokotto .txt-strength-detail h3 {
    font-weight: 600;
    letter-spacing: 0.05em;
    padding-top: 105px;
}

#chokotto .txt-strength-detail p {
    font-weight: 300;
    letter-spacing: 0.1em;
    padding-bottom: 74px;
}

#jks .txt-strength-detail h3 {
    padding-top: 93px;
}

#jks .txt-strength-detail p {
    padding-bottom: 92px;
    width: 92%;
    letter-spacing: 0.08em;
}

#swot,
#construction {}

#construction {
    margin-bottom: 100px;
}

#swot,
#construction .ttl-strength-detail-head h2 {}

#swot .content-wrapper {
    max-width: 960px;
    padding: 0 10px 58px;
}

#swot .renovation-report {
    max-width: 960px;
    margin: 0 auto 57px;
    border-bottom: 1px solid #000000;
}

#swot .renovation-report .content-wrapper {
    max-width: 808px;
    padding: 0 10px 106px;
}

#swot .renovation-report .content-wrapper.is-movie {
    border-bottom: none;
    padding-bottom: 0;
}

#swot .renovation-report .content-wrapper a {
    position: relative;
    width: 349px;
    padding: 15px;
}

#swot .renovation-report .content-wrapper a::before {
    content: "";
    background: url(../images/strength/movie-icon.png) no-repeat;
    background-size: contain;
    display: inline-block;
    width: 39px;
    height: 28px;
    position: absolute;
    left: 22px;
    top: 50%;
    transform: translateY(-50%);
}

#swot .swot-strategy .content-wrapper {
    max-width: 808px;
    padding: 0;
}

#swot .swot-strategy {
    padding: 88px 0 0;
}

#swot .ttl-strength-detail {
    margin-bottom: 34px;
    letter-spacing: 0.1em;
}

#swot .txt-strength-detail h3 {
    padding-top: 94px;
    letter-spacing: 0.05em;
}

#swot .txt-strength-detail p {
    padding-bottom: 92px;
}

#swot .swot-strategy__txt {
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 0.1em;
    line-height: 1.7;
    margin-bottom: 115px;
    text-align: center;
}

#swot .ttl-strength-head01 {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #000000;
    padding-bottom: 20px;
    text-align: center;
}

#swot .ttl-strength-head01 span {
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.05em;
}

#swot .ttl-strength-head01 .number {
    font-size: 40px;
    font-weight: 500;
    color: #68975d;
    margin-right: 11px;
    letter-spacing: 0;
}

#swot .swot-strategy__box {
    margin-bottom: 144px;
}

#swot .swot-strategy__box h5 {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.6;
    text-align: center;
    margin-top: 24px;
    margin-bottom: 18px;
}

#swot .swot-strategy__box h5 span {
    display: block;
    font-size: 14px;
    font-weight: 300;
}

#swot .swot-strategy__box .swot-txt {
    margin-top: 20px;
}

#swot .swot-strategy__box ul {
    display: flex;
    justify-content: space-between;
    list-style: none;
}

#swot .swot-txt {
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 0.1em;
}

#swot .swot {
    margin-bottom: 120px;
}

#swot .swot .ttl-strength-head01 {
    margin-bottom: 30px;
}

#swot .swot img {
    width: 823px;
    margin-bottom: 21px;
}

#swot .swot .swot-txt {
    line-height: 1.7;
    margin-left: 5px;
}

#swot .swot-target {
    margin-bottom: 143px;
}

#swot .swot-target .swot-txt {
    line-height: 1.8;
}

#swot .swot-target .ttl-strength-head01 {
    margin-bottom: 35px;
    display: flex;
    justify-content: center;
    align-items: end;
}

#swot .swot-target .swot-target__box {
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
}

#swot .swot-target .swot-target__contents {
    width: 250px;
    text-align: center;
    padding: 29px 13px 28px 13px;
}

#swot .swot-target .swot-target__contents ul {
    list-style: none;
}

#swot .swot-target .swot-target__contents .swot-target__head {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 14px;
}

#swot .swot-target .swot-target__contents ul li {
    font-size: 18px;
    font-weight: 400;
    border-radius: 19.9px;
    width: 190px;
    padding: 8.9px 5px;
}

#swot .swot-target .swot-target__contents.is-01 {
    border: 5px solid #bbddec;
    margin-right: 133px;
}

#swot .swot-target .swot-target__contents.is-02 {
    border: 5px solid #f3d59a;
}

#swot .swot-target .swot-target__contents.is-01 ul {
    margin-bottom: -27px;
}

#swot .swot-target .swot-target__contents.is-02 ul {
    margin-bottom: -10px;
}

#swot .swot-target .swot-target__contents.is-01 li {
    background: #e1eef4;
    margin: 0 auto 27px auto;
}

#swot .swot-target .swot-target__contents.is-02 li {
    background: #fdf3dc;
    margin: 0 auto 10px auto;
}

#swot .swot-target .swot-target__list {
    list-style: none;
    display: flex;
    justify-content: space-between;
    margin-bottom: 36px;
}

#swot .swot-target .swot-target__list li {
    text-align: center;
}

#swot .swot-target .swot-target__list li img {
    margin-bottom: 7px;
}

#swot .swot-target .swot-target__list li .swot-target__txt {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0.1em;
}

#swot .renovation-report .swot-txt {
    text-align: center;
    margin-bottom: 57px;
    line-height: 1.7;
}

#swot .renovation-report img {
    width: 100%;
    margin-bottom: 80px;
}

#construction .txt-strength-detail h3 {}

#construction .txt-strength-detail p {}

.txt-strength-detail figure {
    display: block;
    position: absolute;
    top: -20px;
    right: -11px;
}

#chokotto .txt-strength-detail figure {
    top: -46px;
    right: -11px;
}

#jks .txt-strength-detail figure {
    top: -33px;
    right: -5px;
}

#swot .txt-strength-detail figure {
    top: -33px;
    right: -1px;
}

#construction .txt-strength-detail figure {
    top: -38px;
    right: 14px;
}

#construction .ttl-strength-detail {
    margin-bottom: 32px;
}

#construction .tech-manner,
#construction .tech-manner-top {
    max-width: 960px;
    margin: 0 auto;
}

#construction .tech-manner .tech-manner-box,
#construction .tech-manner-top .tech-manner-box {
    margin: 0 0 65px;
}

#construction .tech-manner .tech-manner-box:last-child {
    margin: 0 0 47px;
}

#construction .tech-manner .tech-manner-box .mb30,
#construction .tech-manner-top .mb30 {
    margin-bottom: 30px;
}

#construction .tech-manner p,
#construction .tech-manner-top p {
    font-size: 16px;
    font-weight: 300;
    line-height: 1.9;
    letter-spacing: 0.11em;
}

#construction .tech-manner-list {
    display: flex;
    justify-content: space-between;
    margin: 22.2px auto 0;
    column-gap: 20px;
}

@media screen and (max-width: 768px) {
    #construction .tech-manner-list {
        column-gap: 15px;
    }
}

#construction .tech-manner-list li {
    width: calc(50% - 10px);
}
#construction .tech-manner-list li img {
    width: 100%;
    object-fit: contain;
}

#chokotto,
#jks,
#construction,
#swot {}

#chokotto .strength-rate {
    padding: 28px 10px 116px;
    text-align: center;
}

#chokotto .ttl-strength-detail-head h2 {
    padding: 170px 0 34px;
    font-weight: 500;
}

#chokotto .ttl-strength-detail-head p {
    font-size: 20px;
    letter-spacing: 0.05em;
    font-weight: 500;
    letter-spacing: 0;
}

.ttl-strength-detail {
    text-align: center;
    font-size: 25px;
    font-weight: bold;
}

.strength-flow {
    padding: 70px 0 0;
}

.strength-flow-list {
    list-style-type: none;
    margin: 45px 0 0;
    background: url(../images/strength/bg-strength-flow-list.png) no-repeat 0 102px;
}

.strength-flow-list li {
    width: 229px;
    float: left;
    margin: 0 0 0 66px;
}

.strength-flow-list li:first-child {
    margin: 0 0 0 60px;
}

.strength-flow-list li img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto 20px;
}

.strength-flow-list li p {
    font-size: 16px;
    line-height: 30px;
}

.strength-service {
    width: 960px;
    margin: 0 auto;
    padding: 120px 10px 0;
}

.strength-table {
    width: 100%;
    border-collapse: collapse;
    margin: 50px auto 0;
}

.strength-table th,
.strength-table td {
    vertical-align: top;
    border-top: 1px solid #cfcfcf;
}

.strength-table th {
    font-size: 20px;
    line-height: 33px;
    font-weight: bold;
    text-align: right;
    padding: 45px 65px 45px 0;
    width: 240px;
}

.strength-table td {
    font-size: 16px;
    line-height: 30px;
    padding: 45px 55px 45px 0;
}

.strength-case {
    width: 960px;
    margin: 0 auto;
    padding: 120px 10px 0;
}

.strength-example {
    width: 960px;
    margin: 0 auto;
    padding: 90px 0;
    position: relative;
}

#swot .strength-example,
#construction .strength-example {
    margin-top: 60px;
    padding: 20px 0 0;
}

#jks .strength-example {
    margin-top: 60px;
    padding: 20px 0;
}

#jks .strength-example .strength-about__txt {
    font-size: 16px;
    line-height: 1.9;
    margin-bottom: 31px;
    letter-spacing: 0.1em;
    text-align: center;
}

#jks .strength-example .ttl-strength-detail {
    margin-bottom: 31px;
}

#jks .strength-contents {
    display: flex;
    justify-content: space-between;
    margin-right: -20px;
}

#jks .strength-planning {
    list-style: none;
    border: 1px solid #e2b0b6;
    max-width: 478px;
    margin-right: 20px;
    padding: 38px 41px 50px 41px;
}

#jks .strength-example-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 37px -113px auto -10px;
    width: auto;
}

#jks .strength-planning li:first-child {
    margin-bottom: 47px;
}

#jks .strength-planning li:nth-child(2) {
    margin-bottom: 62px;
}

#jks .strength-planning:last-child li:nth-child(2) {
    margin-bottom: 47px;
}

#jks .strength-planning li img {
    margin: 0 auto 12px;
    display: block;
}

#jks .strength-planning li h4 {
    font-size: 22px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 14px;
    letter-spacing: 0.1em;
}

#jks .strength-planning li p {
    font-size: 14px;
    line-height: 1.93;
    letter-spacing: 0.05em;
}

#jks .strength-example-list li {
    max-width: 386px;
    margin-right: 101px;
    margin-bottom: 47px;
}

.strength-instagram {
    background: #fdf6f7;
    max-width: 960px;
    margin: 0 auto;
    padding: 78px 70px 80px 80px;
    margin-bottom: 61px;
}

.strength-instagram .strength-instagram__head {
    font-size: 24px;
    font-weight: 600;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 41px;
    margin-left: -24px;
    letter-spacing: 0.1em;
}

.strength-instagram .strength-instagram__head img {
    margin-right: 16px;
}

.strength-instagram .strength-instagram__box {
    display: flex;
}

.strength-instagram .strength-instagram__box img {
    margin-right: 40px;
}

.strength-instagram .strength-instagram__box .strength-instagram__txt p {
    font-size: 14px;
    font-weight: 300;
    line-height: 1.85;
    margin-bottom: 24px;
    margin-top: -6px;
    letter-spacing: 1.6px;
}

.strength-instagram .strength-instagram__box .strength-instagram__follow {
    margin-bottom: 32px;
    margin-right: -18px;
}

.strength-instagram .strength-instagram__box .strength-instagram__follow img {
    margin-right: 18px;
}

.strength-instagram .strength-instagram__box .btn-more {
    margin-left: 55px;
}

.strength-example-list {
    list-style-type: none;
    width: 980px;
    margin: 50px 0 0 -10px;
}

.strength-example-list li {
    float: left;
    width: 470px;
    margin: 0 10px;
}

.strength-example-list li img {
    display: block;
    width: 100%;
    height: auto;
}

.strength-example-list li p {
    font-size: 14px;
    margin: 8px 0 0;
    letter-spacing: 2px;
    line-height: 1.8;
}


/*point-club */

.point-club {
    background: #D6EAF7;
    padding: 71px 0 61px;
}

.point-slide-case {
    margin: 50px 0 50px;
    background: #FFF;
    padding: 0 10px;
}

.point-slide-case .ttl-strength-detail {
    padding: 50px 10px;
    border-bottom: solid 1px #CCC;
}

.point-example-case .ttl-strength-detail {
    padding: 50px 10px;
    font-weight: 600;
}

.strength-rate .ttl-strength-detail {
    padding: 45px 10px;
    font-weight: 600;
}

.point-example-case {
    margin: 0px 0 21px;
    background: #FFF;
    padding: 0 60px 9px;
}

.point-slide-table,
.point-example-table {
    width: 100%;
    font-size: 20px
}

.point-slide-table tr,
.point-example-table tr {
    border: solid 1px #b4b4b4;
    margin-bottom: 50px;
    display: block;
}

.point-club .is-02 .sum-point::after {
    left: 46.4%;
}

.point-club .point-example-table tr:first-child ul li.sum-point::before {
    background: none;
    border: solid 1px #3a67ce;
}

.point-club .is-03 .sum-point::after {
    left: 48.7%;
}

.point-slide-table tr:last-of-type {
    border-bottom: none;
}

.point-slide-table th,
.point-example-table th {
    font-weight: bold;
    text-align: right;
    font-weight: 600;
}

.point-slide-table td,
.point-example-table td,
.point-slide-table th,
.point-example-table th {
    padding: 44px 20px 34px 0;
}

.point-example-table th {
    width: 167px;
    text-align: center;
    vertical-align: top;
}

.point-example-table td {
    font-size: 18px;
}

.point-example-table ul ul {
    margin-top: 10px;
}

.point-example-table li {
    list-style: none;
    margin-bottom: 6px;
}

.point-example-table li.get-point {
    margin-bottom: 18px;
    letter-spacing: 0.04em;
}

.point-example-table li:nth-child(3) {
    margin-bottom: 12px;
    letter-spacing: 0.06em;
}

.point-example-table li:first-child {
    margin-bottom: 40px;
}

.point-example-table li.return {
    margin-bottom: 41.6px;
    letter-spacing: 0.04em;
    position: relative;
}

.point-example-table li.return::after {
    content: "▼";
    color: #cc3d34;
    position: absolute;
    top: 34px;
    left: 180px;
}

.point-example-table li:last-of-type {
    margin-bottom: 9px;
    line-height: 1.67;
}

.point-example-table li:first-child span.head {
    font-weight: 500;
}

.point-example-table li span {
    font-weight: bold;
    letter-spacing: 0.03em;
}

.point-club .down-pointing {
    color: #cc3d34;
    padding-left: 180px;
}

.point-club .sum-point {
    padding: 0 0 2px;
    letter-spacing: 0.04em;
    position: relative;
    text-indent: -1.6em;
    margin-left: 1.6em;
}

.point-club .sum-point:after {
    content: "";
    background: #dcdcdc;
    width: 593px;
    height: 1px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 100%;
}

.point-club .get-point::before {
    content: '';
    width: 10px;
    height: 10px;
    border: solid 1px #3a67ce;
    border-radius: 50%;
    display: inline-block;
    margin: -5px 9px 0 0;
    vertical-align: middle;
}

.point-club .sum-point::before {
    content: '';
    width: 10px;
    height: 10px;
    background: #3a67ce;
    border-radius: 50%;
    display: inline-block;
    margin: -5px 11px 0 0;
    vertical-align: middle;
}

.point-club .return::before {
    content: '';
    display: inline-block;
    width: 10px;
    height: 6px;
    border-bottom: 2px solid #3a67ce;
    border-left: 2px solid #3a67ce;
    transform: rotate(-45deg);
    margin: 0px 9px 0 0;
    position: relative;
    top: -5px;
}

.point-attention li {
    font-size: 18px;
    margin-left: 20px;
    text-indent: -0.3em;
    line-height: 1.3em;
    letter-spacing: 0.08em;
}

.point-btn.btn-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: end;
    padding: 56px 0 30px;
}

.point-btn.is-prev {
    padding: 0;
    margin-bottom: 95px;
}

.point-btn.btn-box .content-wrapper.is-concept {
    width: 100%;
}

.point-btn.btn-box .content-wrapper.is-next {
    margin-right: 30px;
}

.point-btn.btn-box .content-wrapper.is-next .btn-more a {
    background: url(../images/common/icon-btn.png) no-repeat 93% center #e12929;
}

.point-btn.btn-box .content-wrapper {
    margin: 0;
    width: 455px;
}

.point-btn {
    padding: 65px 0 37px;
}

.point-btn .content-wrapper a {
    font-weight: 500;
    min-width: 455px;
}

.point-btn .content-wrapper .btn-more p {
    font-size: 17.98px;
    font-weight: 600;
    letter-spacing: 0.05em;
    display: inline-block;
    position: relative;
}

.point-btn .content-wrapper .btn-more p::before,
.point-btn .content-wrapper .btn-more p::after {
    content: "";
    position: absolute;
    width: 1px;
    height: 26px;
    background: #cc3d34;
}

.point-btn .content-wrapper .btn-more p::before {
    transform: rotate(-29deg);
    left: -9px;
}

.point-btn .content-wrapper .btn-more p::after {
    transform: rotate(29deg);
    right: -7px;
}

.point-btn .content-wrapper .btn-more p .is-red {
    font-size: 20.98px;
    color: #cc3d34;
    font-weight: bold;
}

.point-btn .content-wrapper.is-next a {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.05em;
    padding: 30px 62px 30px 30px;
    margin-top: 9px;
}

.point-btn .content-wrapper.is-next a span {
    font-size: 21.98px;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-right: 7px;
}

.point-btn .content-wrapper.is-concept a {
    font-size: 20px;
    color: #cc3d34;
    background: url(../images/common/icon-btn-back-red.png) no-repeat 6.2% center #ffffff;
    border: 3px solid #e12929;
    padding: 18px 8px 16px 43px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.point-btn .content-wrapper.is-concept a .concept-box {
    text-align: left;
    display: inline-block;
    line-height: 1.1;
    margin-right: 20px;
}

.point-btn .content-wrapper.is-concept a .is-bold {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0.1em;
}

.point-btn .content-wrapper.is-concept a .is-small {
    font-size: 14px;
    letter-spacing: 0;
}

.point-btn .content-wrapper.is-contact {
    margin-bottom: 30px;
}

.point-btn.btn-box .content-wrapper.is-contact {
    margin-bottom: 0;
}

.point-btn .content-wrapper.is-contact a {
    font-size: 18px;
    padding: 30px 10px 30px 30px;
    background: url(../images/common/icon-btn.png) no-repeat 93% center #e12929;
    position: relative;
}

.point-btn .content-wrapper.is-contact a::before {
    content: "";
    background: url(../images/strength/img-strength-icon-chokotto.png) no-repeat;
    background-size: contain;
    display: inline-block;
    width: 52px;
    height: 52px;
    position: absolute;
    left: 40px;
    top: 50%;
    transform: translateY(-50%);
}

.point-btn .content-wrapper.is-contact span {
    font-size: 22px;
    font-weight: bold;
}

.tomonokai {
    background: #d6eaf7;
    padding: 50px 0;
}

.txt-tomonokai {
    text-align: center;
    font-size: 16px;
    line-height: 30px;
    margin: 40px auto 0;
}

.tomonokai-list {
    list-style-type: none;
    margin: 40px 0 0;
}

.tomonokai-list li {
    float: right;
    width: 470px;
}

.tomonokai-list li:first-child {
    float: left;
}

.tomonokai-list-content {
    background: #fff;
    padding: 0 85px;
    height: 175px;
}

.tomonokai-list li h4 {
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    margin: 0 0 20px;
}

.tomonokai-list li p {
    font-size: 16px;
    line-height: 30px;
}

.strength-works {
    margin: 100px 0 105px;
}

.swot-strategy {
    padding: 100px 0 0;
}

.swot-strategy-list {
    list-style-type: none;
    background: url(../images/strength/bg-swot-strategy-list.png) no-repeat center 188px;
    margin: 70px auto 0;
}

.swot-strategy-list li {
    float: right;
    width: 340px;
    margin: 0 60px;
}

.swot-strategy-list li:first-child {
    float: left;
}

.swot-strategy-list li img {
    display: block;
    width: 100%;
    height: auto;
}

.swot-strategy-list li p {
    font-size: 16px;
    line-height: 30px;
    padding: 0 20px;
}

.tech-manner-top {
    padding: 0;
}

.tech-manner {
    padding: 100px 0 0;
}

.tech-manner-box {
    margin: 0 0 85px;
}

.tech-manner-list {
    list-style-type: none;
    width: 960px;
    margin: 45px auto 0;
}

.tech-manner-list li {
    font-size: 15.5px;
    font-weight: 500;
    line-height: 1.9;
}

.tech-manner-list li img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 0 15px;
}

.tech-manner-list li p {
    font-size: 16px;
    line-height: 30px;
    margin: 40px 0 0;
}

.base-repair {
    background: #fff1c8;
    padding: 88px 0 82px;
}

.base-repair-txt {
    width: 960px;
    font-size: 16px;
    line-height: 30px;
    margin: 36px auto 0;
    font-weight: 500;
}

.base-repair-box {
    width: 960px;
    margin: 29px auto 0;
    display: flex;
    justify-content: space-between;
}

.base-repair-list__ttl {
    font-size: 16px;
    font-weight: 600;
    color: #000;
    padding: 0 0 0 25px;
    margin: 0 0 14px;
    background: url(../images/strength/movie_icon.png)no-repeat left 0 top 2.5px;
}

.renostone {
    padding: 120px 0 60px;
}

.renostone-list {
    list-style-type: none;
    width: 960px;
    margin: 45px auto 0;
}

.renostone-list li {}

.renostone-list li img {
    display: block;
    width: 100%;
    height: auto;
}

.renostone-list li p {
    font-size: 16px;
    line-height: 30px;
    margin: 40px 0 0;
}


/* -------------------------------------------

	B. MOBILE

	------------------------------------------- */

@media screen and (max-width: 768px) {
    /* -------------------------------------------
			1. COMMON
		------------------------------------------- */
    /* BOX */
    div#container,
    #header,
    #footer,
    #contents {
        min-width: 100%;
    }
    #contents {
        padding: 0 0 50px;
    }
    /* DISPLAY */
    .sp-none {
        display: none !important;
    }
    .pc-none {
        display: block !important;
    }
    img {
        max-width: 100%;
        height: auto;
    }
    /* WRAPPER */
    .wrapper {
        width: 100%;
        min-width: 100%;
    }
    .content-wrapper {
        width: 100%;
        padding: 0 6.25%;
    }
    #swot .content-wrapper {
        padding: 0 10px 0;
    }
    #swot .renovation-report .content-wrapper {
        padding: 0 0 53px;
    }
    /*--------------------------
    movie-youtube
  ---------------------------*/
    #jks .movie-youtube {
        padding: 55px 0 0;
        margin-bottom: 85px;
    }
    .youtube-wrap {
        margin: auto;
        background: #F2F2F2;
        width: auto;
    }
    .movie-youtube {
        max-width: 90%;
        /*width: 75%; */
        margin: 0 auto 55px;
        padding-top: 55px;
    }
    .movie-youtube iframe {
        width: 100%;
        margin-bottom: 20px;
    }
    .movie-youtube__ttl {
        /*  margin-bottom: 15px;*/
        margin: 20px auto 5px;
    }
    .movie-youtube.documentary .movie-youtube__ttl {
        margin-bottom: 7px;
    }
    .movie-youtube__ttl .img {
        width: 25px;
    }
    .movie-youtube__ttl .txt {
        font-size: 16px;
        width: calc(100% - 38px);
        text-align: left;
    }
    .movie-youtube.documentary {
        margin: 0 auto 55px;
        padding: 0;
    }
    .movie-youtube__txt {
        font-size: 14px;
        text-align: left;
    }
    .movie-youtube.documentary .movie-youtube__iframe:last-of-type {
        margin-bottom: 15px
    }
    .youtube_container {
        max-width: 660px;
        /* 任意の横幅を指定 */
        height: auto;
        margin-bottom: 10px;
    }
    .strength-instagram {
        padding: 20px 20px 20px 20px;
        margin: 0 6.25% 30px;
    }
    .strength-instagram .strength-instagram__head {
        font-size: 18px;
        margin-bottom: 20px;
    }
    .strength-instagram .strength-instagram__box {
        display: block;
    }
    .strength-instagram .strength-instagram__box img {
        margin-right: 0;
    }
    .strength-instagram .strength-instagram__box .btn-more {
        margin-left: 0;
    }
    .strength-instagram .strength-instagram__box .strength-instagram__txt p {
        margin-bottom: 12px;
        margin-top: 0;
    }
    .strength-instagram .strength-instagram__box .strength-instagram__follow {
        margin-bottom: 16px;
        margin-right: 0;
        text-align: center;
    }
    .strength-instagram .strength-instagram__box .strength-instagram__follow img {
        margin-right: 0;
        display: inline-block;
    }
    .strength-instagram .strength-instagram__box img {
        margin: 0 auto 10px;
        display: block;
    }
    .strength-instagram .strength-instagram__head img {
        margin-right: 8px;
    }
    /* -------------------------------------------
			2. HEADER
		------------------------------------------- */
    #header,
    #index-header {
        width: 100%;
        height: 50px;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 100;
    }
    #index-header {
        display: block;
        top: -100%;
        -webkit-transition: all .4s;
        transition: all .4s;
    }
    #index-header.show {
        top: 0;
    }
    .index #header {
        background: transparent;
        position: absolute;
        top: 0;
        left: 0;
    }
    #header header,
    #index-header header {
        height: inherit;
    }
    #header h1,
    #index-header h1,
    .nav-header h2 {
        position: absolute;
        top: 0;
        left: 19px;
    }
    #header h1 a,
    #index-header h1 a,
    .index #header h1 a,
    .nav-header h2 a {
        display: block;
        text-indent: -9999px;
        width: 110px;
        height: 50px;
        background: url(../images/common/logo-sp.png) no-repeat 0 0;
        background-size: 110px 50px;
    }
    .index #header h1 {
        display: none;
    }
    .btn-contact {
        display: block;
        text-indent: 0;
        width: 95px;
        height: 50px;
        background: #e12929;
        position: absolute;
        top: 0;
        right: 54px;
        z-index: 101;
        color: #fff;
        font-size: 12px;
        font-weight: bold;
        line-height: 50px;
        text-decoration: none;
        text-align: center;
    }
    .btn-contact:hover {
        opacity: 1;
    }
    /*
	.index #header {display: none;}
	#index-header {top: 0;}
	*/
    .contact-box,
    .index .contact-box {
        display: none;
        width: 100%;
        height: auto;
        background: #e12929;
        position: absolute;
        top: 50px;
        left: 0;
        right: inherit;
        z-index: 100;
    }
    .index #header .contact-box {
        top: 0;
        background: #fff;
    }
    .index #header .contact-box .nav-header {
        top: 0;
        border-bottom: 1px solid transparent;
    }
    .contact-box li {
        list-style-type: none;
        line-height: 1;
        border-top: 1px solid #cccccc;
    }
    .contact-box li:first-child {
        border-top: 0;
    }
    .contact-box li a {
        display: block;
        background: #e12929;
        color: #fff;
        text-decoration: none;
        font-size: 18px;
    }
    .contact-box li a span {
        display: block;
        background: url(../images/common/icon-nav-tel-sp.png) no-repeat 11.25% center;
        background-size: 24px 22px;
        padding: 8.75% 10% 8.75% 25%;
    }
    .contact-box li a.tel span {
        background-image: url(../images/common/icon-nav-tel-sp.png);
    }
    .contact-box li a.mail span {
        background-image: url(../images/common/icon-nav-mail-sp.png);
    }
    .btn-contact:hover,
    .contact-box a:hover img {
        opacity: 1;
    }
    /* NAV */
    .btn-menu {
        display: block;
        text-indent: -9999px;
        width: 54px;
        height: 50px;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 101;
    }
    .index .btn-menu {
        top: 0;
        right: 0;
        position: absolute;
    }
    .index .btn-menu.open {
        top: 0;
        right: 0;
        position: fixed;
    }
    .index #index-header .btn-menu {
        top: 0;
        right: 0;
        position: absolute;
    }
    .index #index-header .btn-menu.open {
        top: 0;
        right: 0;
    }
    .btn-menu span {
        display: block;
        width: 24px;
        height: 4px;
        background: #dd261e;
        position: absolute;
        right: 15px;
        -webkit-transition: all .2s;
        transition: all .2s;
    }
    .index .btn-menu span {
        /*background: #fff; */
    }
    .index #index-header .btn-menu span {
        background: #dd261e;
    }
    .index .btn-menu.open span {
        background: #dd261e;
    }
    .index #index-header .btn-menu.open span {
        background: #dd261e;
    }
    .btn-menu span:nth-of-type(1) {
        top: 15px;
    }
    .btn-menu span:nth-of-type(2) {
        top: 23px;
    }
    .btn-menu span:nth-of-type(3) {
        top: 31px;
    }
    .btn-menu.open span:nth-of-type(1) {
        -webkit-transform: translateY(8px) rotate(-45deg);
        -ms-transform: translateY(8px) rotate(-45deg);
        transform: translateY(8px) rotate(-45deg);
    }
    .btn-menu.open span:nth-of-type(2) {
        opacity: 0;
    }
    .btn-menu.open span:nth-of-type(3) {
        -webkit-transform: translateY(-8px) rotate(45deg);
        -ms-transform: translateY(-8px) rotate(45deg);
        transform: translateY(-8px) rotate(45deg);
    }
    .nav {
        display: none;
        width: 100%;
        position: fixed;
        top: 0;
        left: 0;
        background: #fff;
        z-index: 100;
    }
    .nav-header {
        display: block;
        position: relative;
        height: 50px;
        border-bottom: 1px solid #cccccc;
    }
    .nav li,
    .index .nav li {
        line-height: 1;
        display: block;
    }
    .nav li a,
    .index .nav li a {
        display: block;
        font-size: 18px;
        font-weight: normal;
        background: url(../images/common/icon-nav-works-sp.png) no-repeat 35% center;
        background-size: 24px 22px;
        border-bottom: 1px solid #cccccc;
        padding: 8.75% 0 8.75% 10%;
    }
    .nav li a.works,
    .index .nav li a.works {
        background-image: url(../images/common/icon-nav-works-sp.png);
    }
    .nav li a.news,
    .index .nav li a.news {
        background-image: url(../images/common/icon-nav-news-sp.png);
    }
    .nav li a.aboutus,
    .index .nav li a.aboutus {
        background-image: url(../images/common/icon-nav-aboutus-sp.png);
    }
    .nav li a.recruit,
    .index .nav li a.recruit {
        background-image: url(../images/common/icon-nav-recruit-sp.png);
    }
    .nav li:last-child a,
    .index .nav li:last-child a {
        background: none;
        padding: 8.75% 0;
    }
    .nav li.nav-dropdown a,
    .index .nav li.nav-dropdown a {
        color: #fff;
        padding: 8.75% 10%;
        background: url(../images/common/icon-nav-dropdown-sp.png) no-repeat 92% center #e12929;
        background-size: 24px 22px;
    }
    .nav li.nav-dropdown a.contact,
    .index .nav li.nav-dropdown a.contact {
        background-image: url(../images/common/icon-nav-dropdown-sp.png);
    }
    .nav li.nav-dropdown a.contact.open,
    .index .nav li.nav-dropdown a.contact.open {
        background-image: url(../images/common/icon-nav-dropdown-open-sp.png);
    }
    .nav li.nav-dropdown ul {
        display: none;
    }
    .nav li.nav-dropdown ul li a.tel,
    .index .nav li.nav-dropdown ul li a.tel,
    .nav li.nav-dropdown ul li a.mail,
    .index .nav li.nav-dropdown ul li a.mail {
        background-image: url(../images/common/icon-nav-tel-sp.png);
        background-position: 11.25% center;
        text-align: left;
        padding: 8.75% 10% 8.75% 25%;
    }
    .nav li.nav-dropdown ul li a.mail,
    .index .nav li.nav-dropdown ul li a.mail {
        background-image: url(../images/common/icon-nav-mail-sp.png);
    }
    /* BREADCRUMBS */
    .breadcrumbs {
        margin: 50px 0 0;
    }
    .breadcrumbs ul {
        width: 100%;
        padding: 16px 6.25%;
    }
    .breadcrumbs li {
        font-size: 9px;
        padding-left: 10px;
    }
    .breadcrumbs li:before {
        padding-right: 10px;
    }
    .breadcrumbs li:first-child a {
        width: 9px;
        height: 9px;
        background: url(../images/common/icon-breadcrumbs-home-sp.png) no-repeat left center;
        background-size: 9px 9px;
    }
    /* -------------------------------------------
			3. FOOTER
		------------------------------------------- */
    .index #footer {
        background: #66c4e1;
    }
    .footer-head {
        background: url(../images/common/bg-footer-head-sp.png) no-repeat bottom center !important;
        background-size: cover !important;
    }
    .bg-footer-head {
        display: none;
    }
    .footer-content {}
    .share {}
    .share ul {}
    .index .share ul {
        padding-top: 34px;
        background: url(../images/common/bg-footer-share-sp.png) no-repeat top center;
        background-size: 55px 11px;
    }
    .share ul li {
        margin: 0 5px;
    }
    .footer-list-box {
        justify-content: space-around;
    }
    .footer-list {
        padding: 30px 0 0;
    }
    .footer-list li {}
    .footer-list li:last-child {
        display: block;
        width: 100%;
        margin-top: 20px;
    }
    .footer-list li a,
    .footer-list li:first-child a {
        padding: 2px 7px;
    }
    .footer-list li:last-child a {
        border: 0;
    }
    .footer-list li a:hover {
        text-decoration: none;
    }
    .footer-item-ttl {
        padding-top: 18px;
        padding-bottom: 2px;
    }
    .foote-contents__inner a {
        text-decoration: none;
    }
    .footer-list__child a {
        font-size: 13px;
        line-height: 2;
    }
    .footer-list__child a::before {
        top: -0.3em;
    }
    .footer-list__item:nth-child(4) {
        padding: 0;
    }
    .footer-content__wapper {
        display: flex;
        justify-content: center;
        max-width: none;
        min-width: auto;
    }
    .foote-contents__inner {
        display: block;
    }
    .footer-list-box {
        width: auto;
        display: block;
    }
    .footer-item-ttl {
        font-size: 15px;
    }
    .footer-right-box {
        width: auto;
    }
    .footer-right__top {
        margin-top: 15px;
    }
    .footer-right-box .footer-item-ttl {
        padding-top: 10px;
    }
    .footer-bottom-outwrap {
        margin-top: 55px;
    }
    .footer-bottom {
        display: block;
        text-align: center;
    }
    .footer-right__bottom {
        padding-top: 15px;
    }
    .footer-right__bottom .footer-item-ttl {
        padding: 0;
    }
    .footer-bottom__alp {
        display: block;
        width: auto;
        margin-right: 0;
    }
    .footer-bottom__alp .txt {
        margin: 0;
        width: auto;
    }
    .footer-bottom__home {
        padding-bottom: 6px;
        margin-right: 0;
    }
    .footer-bottom__bt {
        display: block;
        min-width: auto;
        margin-top: 18px;
    }
    .footer-bottom__bt a {
        padding: 0;
        border-right: none;
        margin: 3.5% 0 3%;
        display: inline-block;
        font-size: 12px;
    }
    .footer-chou {
        bottom: 1%;
        right: 14%;
        width: 25%;
    }
    .copyright {
        font-size: 12px;
        padding: 1.5% 4% 0;
    }
    /* -------------------------------------------
			4. INDEX
		------------------------------------------- */
    /* 背景色 */
    .index #container {
        background: #fff;
    }
    .index #contents {
        padding-bottom: 0;
        position: relative;
    }
    /* 見出し */
    .ttl-index img {
        display: block;
        width: 100%;
        height: auto;
    }
    /* イラスト */
    .illust {
        margin: 0;
    }
    .logo-index-sp {
        display: block;
        width: 100%;
        position: absolute;
        top: 67px;
    }
    .logo-index-sp img {
        display: block;
        width: 100%;
        height: auto;
    }
    .banner {
        flex-wrap: wrap;
        width: 100%;
        margin: -7.2% auto 0;
        padding: 0 6.25%;
    }
    .banner li {
        display: inline-block;
        margin: 0;
        vertical-align: top;
    }
    .banner li:first-child {
        width: 46.4%;
        margin-right: 3.6%;
    }
    .banner li:nth-child(2) {
        width: 50%;
    }
    .banner li:last-child {
        margin-top: 3.6%;
        width: 100%;
    }
    /* ピックアップ */
    #pickup {
        border: 0;
    }
    .pickup-list {
        flex-wrap: wrap;
        padding: 0 6.25%;
    }
    .pickup-list li {
        width: calc(50% - 10px);
        margin-right: 10px;
        margin-bottom: 10px;
        font-size: 14px;
        font-weight: 400;
    }
    .pickup-list li:nth-of-type(2n) {
        margin-right: 0;
    }
    .pickup-list li p {
        margin-top: 10px;
    }
    /* 最新施工事例 */
    #new-release {
        padding: 50px 0;
    }
    .border-right,
    .border-left {
        display: none;
    }
    .release-list-wrapper {
        margin: 0 0 48px;
    }
    .release-list li {
        width: 212px;
        margin: 0 3px;
        padding-top: 50px;
    }
    .release-list li a:hover img {
        opacity: 1;
    }
    .release-list li a h3 {
        font-size: 14px;
        font-weight: normal;
        margin: 42px 0 0;
    }
    .release-list li a span {
        background: url(../images/index/icon-release-list-new-bg-sp.png) no-repeat 0 0;
        background-size: 62px 62px;
    }
    .icon-release-list-prev,
    .icon-release-list-next,
    .slick-prev,
    .slick-next {
        top: 118px;
        width: 36px;
        height: 36px;
        margin: -22px 0 0;
        text-indent: -9999px;
    }
    .icon-release-list-prev,
    .slick-prev {
        background: url(../images/index/icon-release-list-prev-sp.png) no-repeat 0 0;
        background-size: 36px 36px;
        margin-left: -128px;
    }
    .icon-release-list-next,
    .slick-next {
        background: url(../images/index/icon-release-list-next-sp.png) no-repeat 0 0;
        background-size: 36px 36px;
        margin-right: -128px;
    }
    .slick-prev:hover,
    .slick-next:hover {
        cursor: pointer;
        opacity: 1;
    }
    .btn-more {
        padding: 0 6.25%;
    }
    /* コンセプトリノベ施工事例 */
    #concept-renovation {
        padding: 75px 6.25% 50px;
        border-right: 0;
        border-left: 0;
        background: url(../images/index/bg-concept-renovation.jpg) no-repeat top center !important;
        background-size: cover;
    }
    #concept-renovation h2 {
        font-size: 25px;
        line-height: 40px;
        text-align: left;
    }
    #concept-renovation p {
        width: 100%;
        margin: 45px auto 70px;
        font-size: 15px;
        line-height: 30px;
    }
    /* CONCEPT 朝日リビングの強み */
    #concept {
        padding: 30.625% 0 56px;
        border-right: 0;
        border-left: 0;
    }
    .strength-list {
        width: 100%;
        margin: 147px auto 0;
        padding: 0 6.25%;
    }
    .strength-list li {
        width: 100%;
        margin: 0 0 125px;
    }
    .strength-list li.swot,
    .strength-list li.jks,
    .strength-list li.construction {
        margin: 0 0 125px;
        float: none;
    }
    .strength-list li a {
        padding: 48px 20px !important;
    }
    .strength-list li a span:not(.strength-list li a span.indent) {
        width: 67px;
        height: 88px;
    }
    .strength-list li.chokotto a span:not(.strength-list li.chokotto a span.indent) {
        width: 100px;
        height: 88px;
    }
    .strength-list li a h3 {
        justify-content: center;
        position: relative;
        z-index: 2;
        min-height: 0;
        margin: 0 0 20px;
        font-size: 25px;
        text-align: center;
        text-shadow: -2px -2px 0 #66c4e1, -2px -1px 0 #66c4e1, -2px 0px 0 #66c4e1, -2px 1px 0 #66c4e1, -2px 2px 0 #66c4e1, -1px -2px 0 #66c4e1, -1px -1px 0 #66c4e1, -1px 0px 0 #66c4e1, -1px 1px 0 #66c4e1, -1px 2px 0 #66c4e1, 0px -2px 0 #66c4e1, 0px -1px 0 #66c4e1, 0px 0px 0 #66c4e1, 0px 1px 0 #66c4e1, 0px 2px 0 #66c4e1, 1px -2px 0 #66c4e1, 1px -1px 0 #66c4e1, 1px 0px 0 #66c4e1, 1px 1px 0 #66c4e1, 1px 2px 0 #66c4e1, 2px -2px 0 #66c4e1, 2px -1px 0 #66c4e1, 2px 0px 0 #66c4e1, 2px 1px 0 #66c4e1, 2px 2px 0 #66c4e1;
    }
    .strength-list li a p {
        line-height: 28px;
        font-weight: normal;
        margin: 0 auto 30px;
        padding: 0;
        text-align: center;
    }
    .strength-list li.construction a p {
        padding: 0;
    }
    .strength-list li a div {
        background: url(../images/index/icon-strength-arrow-sp.png) no-repeat 90% center #fff;
        background-size: 11px 19px;
        width: 100%;
        height: 45px;
        line-height: 45px;
        text-align: center;
    }
    .strength-list li a:hover div {
        background: url(../images/index/icon-strength-arrow-sp.png) no-repeat 90% center #fff;
        background-size: 11px 19px;
        color: inherit;
    }
    .strength-list li.swot a figure.pc-none {
        width: 113px;
        height: 176px;
        top: -97px;
        left: 50%;
        margin-left: -57px;
    }
    .strength-list li.swot a figure.sp-none,
    .strength-list li.swot a figure.sp-none.on,
    .strength-list li.swot a:hover figure.sp-none,
    .strength-list li.swot a:hover figure.sp-none.on {
        display: none !important;
    }
    .strength-list li.jks a figure.pc-none {
        width: 115px;
        height: 175px;
        top: -89px;
        left: 50%;
        margin-left: -56px;
    }
    .strength-list li.jks a figure.sp-none,
    .strength-list li.jks a figure.sp-none.on,
    .strength-list li.jks a:hover figure.sp-none,
    .strength-list li.jks a:hover figure.sp-none.on {
        display: none !important;
    }
    .strength-list li.chokotto a figure.pc-none {
        width: 130px;
        height: 178px;
        top: -95px;
        left: 44%;
        margin-left: -60px;
    }
    .strength-list li.chokotto a figure.sp-none,
    .strength-list li.chokotto a figure.sp-none.on,
    .strength-list li.chokotto a:hover figure.sp-none,
    .strength-list li.chokotto a:hover figure.sp-none.on {
        display: none !important;
    }
    .strength-list li.construction a figure.pc-none {
        width: 98px;
        height: 181px;
        top: -96px;
        left: 50%;
        margin-left: -49px;
    }
    .strength-list li.construction a figure.sp-none,
    .strength-list li.construction a figure.sp-none.on,
    .strength-list li.construction a:hover figure.sp-none,
    .strength-list li.construction a:hover figure.sp-none.on {
        display: none !important;
    }
    /* 勝つ改修 */
    #katsu-kaisyu {
        padding: 50px 6.25%;
        border-right: 0;
        border-left: 0;
        background: url(../images/index/bg-katsu-kaisyu.jpg) no-repeat top center !important;
        /*background-size: cover;*/
        background-size: cover !important;
    }
    #katsu-kaisyu h2 {
        font-size: 25px;
        line-height: 40px;
    }
    #katsu-kaisyu p {
        width: 100%;
        margin: 36px auto 50px;
        font-size: 15px;
        line-height: 30px;
    }
    /* NEWS / FACEBOOK */
    .news-facebook {
        display: block;
        table-layout: none;
    }
    #news,
    #facebook {
        border: 0;
        display: block;
        width: 100%;
        padding: 50px 0 0;
    }
    #facebook {
        padding: 20px 6.25% 50px;
    }
    .fb-plugin-wrapper {
        display: none;
    }
    .news-index-list {
        padding: 0 6.25%;
        margin: 50px 0;
    }
    .news-index-list li {
        margin: 24px 0 0;
    }
    .news-index-list li .news-index-thumb {
        width: 42%;
        margin-right: 4%;
    }
    .news-index-list li .tags,
    .news-index-list li h3,
    .news-index-list li .news-date {
        /*margin: 0 0 0 48%;*/
        margin: 0;
    }
    .news-index-list li .news-date {
        margin: 0 0 0 46%;
    }
    .news-index-list li h3 a {
        font-size: 12px;
        line-height: 22px;
        font-weight: normal;
    }
    .news-index-list li .news-date {
        font-size: 12px;
    }
    .index #news .btn-more {
        padding: 0 6.25%;
    }
    .index #facebook .btn-blue {
        display: block;
    }
    /* -------------------------------------------

	朝日リビング追加（SP）

    /* -------------------------------------------

    /* CULTUREボタン（2023/07/19） ココから　*/
    div.related a {
        font-size: 70%;
        line-height: 1.5em;
    }
    /* CULTUREボタン（2023/07/19） ココまで　*/
    /* CONTACT */
    #contact {
        background: #66c4e1;
        padding: 82px 6.25% 50px;
    }
    .contact-page {
        padding: 25px 6.25% 0;
    }
    .bg-contact {
        display: none;
    }
    .contact-list {
        width: 100%;
        margin: 50px auto 0;
    }
    .contact-list li {
        width: 100%;
        padding: 27.5% 0 0;
    }
    .contact-list li.tel,
    .contact-list li.mail {
        float: none;
    }
    .contact-list li.mail {
        margin: 100px 0 0;
    }
    .contact-list li.mail:hover {
        opacity: 1;
        filter: alpha(opacity=100);
        -ms-filter: "alpha(opacity=100)";
        zoom: 1;
    }
    .contact-list li h3 {
        font-size: 16px;
    }
    .contact-list li h3 strong,
    .contact-list li h3 em {
        font-size: 22px;
    }
    .contact-list-content,
    .contact-list li.tel .contact-list-content,
    .contact-list li.mail .contact-list-content {
        background: #fff;
        padding: 41% 0 34px;
    }
    .contact-page .contact-list-content,
    .contact-page .contact-list li.tel .contact-list-content,
    .contact-page .contact-list li.mail .contact-list-content {
        background: #d1edf6;
    }
    .contact-list li.tel figure {
        /*width: 223px;*/
        /*height: 166px;*/
        width: 80.53571429%;
        top: 23px;
        left: 50%;
        /*margin-left: -110px;*/
        margin-left: -40%;
    }
    .contact-list li.mail figure {
        /*width: 245px;*/
        /*height: 149px;*/
        width: 88.75%;
        top: 23px;
        left: 50%;
        /*margin-left: -120px;*/
        margin-left: -42%;
    }
    .contact-list li.mail figure.cat {
        display: none;
    }
    .btn-contact-list {
        bottom: -24px;
    }
    .btn-contact-list span,
    .btn-contact-list a {
        width: 92.85%;
        height: 45px;
        font-size: 14px;
        line-height: 45px;
    }
    .btn-contact-list span {
        background: url(../images/index/icon-btn-contact-list-tel-sp.png) no-repeat 29px center #e12929;
        background-size: 24px 18px;
        padding-left: 26px;
    }
    .btn-contact-list a {
        background: url(../images/index/icon-btn-contact-list-mail-sp.png) no-repeat 29px center #e12929;
        background-size: 24px 18px;
    }
    .btn-contact-list span img {
        display: inline-block;
        vertical-align: -4px;
        width: 157px;
        height: auto;
    }
    .btn-contact-list a:after {
        content: " ";
        display: block;
        width: 11px;
        height: 14px;
        background: url(../images/index/icon-btn-contact-list-arrow-sp.png) no-repeat 0 0;
        background-size: 11px 14px;
        margin-top: -6px;
    }
    .tel .btn-contact-list a:after {
        display: none;
    }
    .contact-list li .contact-note {
        /*bottom: -55px;*/
    }
    .contact-page .contact-list li .contact-note {
        color: #262621;
    }
    /* SHARE */
    #index-share {
        background: #66c4e1;
        margin: 0;
        padding: 20px 0;
    }
    .index .share {
        margin: 0 auto;
    }
    .bg-index-share {
        /*display: none;*/
        top: -13px;
    }
    /* -------------------------------------------
			5. PARTS
		------------------------------------------- */
    /* HEADING */
    .ttl-content {
        margin: calc(15.6% - 150px) auto 8.5%;
        padding: 150px 6.25% 0;
    }
    .ttl-content img {
        display: block;
        width: 100%;
        height: auto;
    }
    .ttl-content.is-reservation-form {
        max-width: 300px;
    }
    .ttl-content.is-complete {
        max-width: 500px;
    }
    /* PAGER */
    .pagination {}
    .pagination span,
    .pagination a {
        font-size: 14px;
        padding: 0;
        width: 32px;
        height: 32px;
        line-height: 32px;
        margin: 0 4px;
    }
    .pagination span.sp-none,
    .pagination a.sp-none {
        display: none !important;
    }
    .pagination span.pc-none,
    .pagination a.pc-none {
        display: inline-block !important;
    }
    .pagination span.current {}
    .pagination a.prev,
    .pagination a.next {
        padding: 9px;
        background: url(../images/common/icon-pagenation-prev-sp.png) no-repeat center center #4c4c4c;
        background-size: 7px 10px;
    }
    .pagination a.prev {
        margin-right: 8px;
        margin-left: 0;
    }
    .pagination a.next {
        background-image: url(../images/common/icon-pagenation-next-sp.png);
        margin-left: 8px;
        margin-right: 0;
    }
    /* BUTTON */
    .btn-back-news {
        margin-top: 17.9%;
    }
    .btn a,
    .btn-back a,
    .btn-back-works a,
    .btn-back-news a,
    .btn-more a,
    .btn-load a,
    .btn-blue a,
    .btn-refine-search a {
        display: block;
        font-size: 14px;
        line-height: 21px;
        background: url(../images/common/icon-btn-sp.png) no-repeat 92.5% center #3673e4;
        background-size: 11px 19px;
        padding: 5% 20% 5% 9%;
        max-width: 100%;
    }
    .btn-back a,
    .btn-back-works a,
    .btn-back-news a {
        text-align: center;
        padding: 5% 12%;
        background: url(../images/common/icon-btn-back-sp.png) no-repeat 7.5% center #e12929;
        background-size: 11px 19px;
    }
    .btn-more a,
    .btn-load a,
    .btn-blue a {
        background: url(../images/common/icon-btn-sp.png) no-repeat 90% center #e12929;
        background-size: 11px 19px;
        min-width: inherit;
    }
    .btn-load a {
        background: url(../images/common/icon-btn-load-sp.png) no-repeat 90% center #e12929;
        background-size: 19px 11px;
    }
    .btn-blue a {
        background-color: #3673e4;
    }
    .btn-refine-search a {
        padding: 5% 20%;
        background: #e12929;
    }
    .wpcf7c-elm-step2 {
        margin-bottom: 20px !important;
    }
    .btn-submit input {
        width: 100%;
        font-size: 14px;
        background: url(../images/common/icon-btn-sp.png) no-repeat 90% center #3673e4;
        background-size: 11px 19px;
        padding: 5% 20%;
    }
    .btn a:hover,
    .btn-back a:hover,
    .btn-back-works a:hover,
    .btn-back-news a:hover,
    .btn-more a:hover,
    .btn-load a:hover,
    .btn-blue a:hover,
    .btn-refine-search a:hover,
    .btn-submit input:hover {
        opacity: 1;
    }
    /* TAGS */
    .tags {}
    .tags a {
        font-size: 12px;
        border: 1px solid #808080;
        padding: 5px 7px;
        margin: 0 10px 0 0;
    }
    /* -------------------------------------------
			6. NEWS
		------------------------------------------- */
    .news-cat-list {
        text-align: left;
    }
    .news-cat-list li {
        margin: 0 10px 10px 0;
        min-width: 82px;
    }
    .news-cat-list li a {
        font-size: 12px;
        padding: 10px 12px;
    }
    .news-list {
        width: 100%;
        margin: 6.1% 0 0;
    }
    .news-list li {
        width: 100%;
        display: block;
        margin: 0 0 18%;
    }
    .news-list li img {
        margin: 0 0 15px;
    }
    .news-list li a:hover img {
        opacity: 1;
    }
    .news-list li a {}
    .news-list li h3 {
        margin: 5px 0;
    }
    .news-list li h3 a {
        font-size: 18px;
        line-height: 28px;
    }
    .news-list li p {
        font-size: 15px;
        line-height: 28px;
    }
    .news-date {
        margin: 10px 0 0;
        font-size: 14px;
    }
    /* DETAIL */
    .news-detail-wrapper {
        width: 100%;
        margin: 0 auto;
        padding: 15.7% 6.25% 0;
    }
    .ttl-news-detail {
        font-size: 18px;
        line-height: 28px;
    }
    .news-detail-wrapper .news-date {
        margin: 12px 0 15px;
    }
    .news-detail-wrapper .tags {
        margin: 0 0 15px;
    }
    .news-detail-content {
        margin: 8.9% 0 17.9%;
    }
    .news-detail-content p {
        margin: 0 0 40px;
        font-size: 15px;
        line-height: 28px;
    }
    .news-detail-content a {
        word-break: break-all;
    }
    .news-detail-content a:hover {
        opacity: 1;
    }
    .news-detail-wrapper .share ul {
        text-align: center;
    }
    /* -------------------------------------------
			7. WORKS
		------------------------------------------- */
    .refine-search {
        background: inherit;
        padding: 0 0 26px;
        padding: 0;
    }
    .refine-search-box {
        display: none;
        background: #f2f2f2;
        padding: 24px 0 26px;
    }
    .refine-search-box p {
        font-size: 12px;
        margin: 0 0 10px;
    }
    .refine-search-box .tags a {
        background: #fff;
        border-color: #e6e6e6;
        margin: 0 2px 10px;
        margin: 0 2.5px 10px;
        padding: 9px 15px;
    }
    .refine-search-renovation {
        margin: 20px 0 0;
    }
    .toggle-refine-search {
        display: block;
        color: #fff;
        text-align: center;
        font-size: 14px;
        line-height: 1;
        font-weight: bold;
        text-decoration: none;
        padding: 15px 0;
        background: url(../images/works/icon-toggle-refine-search.png) no-repeat 87.5% center #808080;
        background-size: 19px 11px;
    }
    .toggle-refine-search.open,
    .toggle-refine-search:active {
        color: #262621;
        background: url(../images/works/icon-toggle-refine-search-open.png) no-repeat 87.5% center #f2f2f2;
        background-size: 19px 11px;
        margin-bottom: 1px;
    }
    .toggle-refine-search:active {
        margin-bottom: 0;
    }
    .toggle-refine-search.open:active {
        margin-bottom: 1px;
    }
    .btn-refine-search {
        display: block;
        padding: 0 6.25%;
        margin: 30px 0 0;
    }
    .works-list {
        width: 100%;
        margin: 25px 0 0;
        padding: 0 6.25%;
    }
    .works-list li {
        float: none;
        width: 100%;
        margin: 0 0 50px;
    }
    .works-list li img {
        margin: 0 0 15px;
    }
    .works-list li a:hover img {
        opacity: 1;
    }
    .works-list li h3 {
        margin: 0;
    }
    .works-list li h3 a {
        font-size: 18px;
        line-height: 28px;
    }
    .works-list li p {}
    /* DETAIL */
    .works-detail-head {
        margin: 0 0 10px;
    }
    .img-works-detail ul {
        font-size: 0;
        line-height: 1;
        position: relative;
        width: 100%;
    }
    .img-works-detail li {}
    .img-works-detail li img {}
    .works-detail-thumb {
        width: 100%;
        margin: 10px auto 0;
        padding: 0 6.25%;
    }
    .works-detail-thumb li {
        float: left;
        width: 22%;
        margin: 0 4% 4% 0;
    }
    .works-detail-thumb li:first-child {
        margin: 0 4% 4% 0;
    }
    .works-detail-thumb li:nth-child(4n) {
        margin: 0;
    }
    .works-detail-thumb li a div span {
        border: 4px solid #262621;
    }
    .btn-works-detail-thumb {
        display: none;
    }
    .ttl-works-detail {
        font-size: 18px;
        line-height: 28px;
        margin: 10px 0 3px;
        padding: 0 6.25%;
    }
    .ttl-works-detail-sub,
    .works-detail-body .tags {
        padding: 0 6.25%;
    }
    .article {
        margin: 25px 0 0;
        position: relative;
    }
    .entry-body {
        width: 100%;
        padding: 0;
        min-height: inherit;
        padding: 0 6.25%;
        margin: 0 0 50px;
        float: none;
    }
    .entry-body p {
        font-size: 15px;
        line-height: 30px;
        letter-spacing: .05em;
    }
    .works-before-after {
        margin: 0 0 60px;
        padding: 0 6.25%;
        background: none;
    }
    .works-before-after li {
        width: 100%;
        float: none;
        position: relative;
    }
    .works-before-after li:first-child {
        float: none;
        margin: 0 0 42px;
    }
    .works-before-after li:first-child:after {
        content: "";
        display: block;
        width: 26px;
        height: 14px;
        background: url(../images/works/icon-works-before-after-sp.png) no-repeat 0 0;
        -webkit-background-size: 26px 14px;
        background-size: 26px 14px;
        position: absolute;
        bottom: -28px;
        left: 50%;
        margin-left: -13px;
    }
    .works-before-after li p {
        margin: 9px 0 0;
    }
    .works-info {
        float: none;
        width: 100%;
        margin: 0;
        position: relative;
        top: inherit;
        right: inherit;
    }
    .works-info h3 {
        padding: 10px 6.25%;
    }
    .works-info dl {
        font-size: 15px;
    }
    .works-info .result dl {
        border-bottom: 0;
        margin: 10px 0 0;
    }
    .works-info dt,
    .works-info dd {
        width: 50%;
        border-top: 1px dashed #cccccc;
    }
    .works-info dt,
    .works-info .result dt {
        padding: 10px 0 10px 6.25%;
    }
    .works-info dd {
        padding: 10px 6.25% 10px 0;
        padding: 10px 0 10px 0;
        letter-spacing: .05em;
    }
    .works-info .result dd em {
        font-size: inherit;
    }
    .works-voice-box {
        margin: 42px 0 0;
        padding: 0 6.25%;
    }
    .works-voice h3 {
        margin: 23px 0 18px !important;
        padding: 38px 0 7px 56px;
    }
    .works-voice.planner h3 {}
    .works-voice.architect h3 {}
    .works-voice.company h3 {}
    .works-voice.customer h3 {}
    .works-voice.free h3 {}
    .works-voice p {
        font-size: 14px;
        line-height: 28px;
        border-radius: 10px;
        padding: 20px;
        letter-spacing: .05em;
    }
    .related-works {
        margin: 55px 0 10px;
    }
    .sns-share {
        padding: 50px 2% 10px;
    }
    .sns-share-txt {
        text-align: center;
        font-size: 16px;
        font-weight: 600;
    }
    .sns-share-btn {
        display: flex;
        justify-content: center;
        margin: 10px 0 0;
    }
    .sns-share-btn li {
        list-style: none;
        padding: 0 10px;
    }
    .news-detail-wrapper .sns-share {
        padding: 0px;
    }
    /* -------------------------------------------
			8. RECRUIT
		------------------------------------------- */
    /* RECRUIT TOP */
    .ttl-recruit {
        font-size: 25px;
        margin: 0 auto 74px;
    }
    .recruit-staff .ttl-recruit,
    .recruit-flow .ttl-recruit {
        margin: 0 auto 48px;
    }
    .recruit-column .ttl-recruit {
        margin: 0 auto 25px;
    }
    .recruit-index-box {
        margin: 20px 0 74px;
    }
    .recruit-index-box.recruit-flow {
        margin: 20px 0 48px;
    }
    .job-list {
        padding: 0 3.125%;
    }
    .job-list li {
        margin: 25px 0 0;
    }
    .job-list li.reform-sales {
        background: url(../images/recruit/img-job-list-reform-sales.jpg) no-repeat 70% center !important;
        background-size: cover !important;
    }
    .job-list li.reform-planner {
        background: url(../images/recruit/img-job-list-reform-planner.jpg) no-repeat 84% center !important;
        background-size: cover !important;
    }
    .job-list li.architect {
        background: url(../images/recruit/img-job-list-architect.jpg) no-repeat 62% center !important;
        background-size: cover !important;
    }
    .job-list li.pr {
        background: url(../images/recruit/img-job-list-pr-pc) no-repeat 62% center !important;
        background-size: cover !important;
    }
    .job-list li.area-sales {
        background: url(../images/recruit/img-job-list-area-sales.jpg) no-repeat 40% center !important;
        background-size: cover !important;
    }
    .job-list li.clerk {
        background: url(../images/recruit/img-job-list-jimu-sp.jpg) no-repeat 40% center !important;
        background-size: cover !important;
    }
    .job-list li.multi-skilled-worker {
        background: url(../images/recruit/img-job-list-reform-versatile-sp.jpg) no-repeat 40% center !important;
        background-size: cover !important;
    }
    .backstretch {
        display: none;
    }
    .job-list li a {
        padding: 50px 0;
    }
    .job-list li a h4 {
        font-size: 25px;
        line-height: 34px;
    }
    .job-list li a p {
        font-size: 15px;
        line-height: 30px;
        width: 100%;
        margin: 36px auto 25px;
        padding: 0 3.125%;
        text-align: left;
    }
    .job-list li a div {
        font-size: 14px;
        line-height: 45px;
        margin: 0 auto;
        width: 96.825%;
        height: 45px;
        background: url(../images/common/icon-btn-sp.png) no-repeat 92.5% center #e12929;
        background-size: 11px 19px;
    }
    .job-list li a:hover div {
        opacity: 1;
        filter: alpha(opacity=100);
        -ms-filter: "alpha(opacity=100)";
    }
    .recruit-staff {
        padding: 0 3.125%;
    }
    .recruit-staff-item a {
        padding: 123px 0 50px;
        background: url(../images/recruit/bg-recruit-staff-sp.jpg) no-repeat 0 0;
        background-size: cover;
        color: #fff;
    }
    .recruit-staff-item a p {
        font-size: 15px;
        line-height: 30px;
        margin: 0px auto 25px;
        padding: 0 3.125%;
        text-align: left;
    }
    .recruit-staff-item a div {
        font-size: 14px;
        line-height: 45px;
        margin: 0 auto;
        width: 96.825%;
        height: 45px;
        background: url(../images/common/icon-btn-sp.png) no-repeat 92.5% center #e12929;
        background-size: 11px 19px;
    }
    .recruit-staff-item a:hover div {
        opacity: 1;
        filter: alpha(opacity=100);
        -ms-filter: "alpha(opacity=100)";
    }
    .recruit-flow img {}
    .recruit-column {
        padding: 25px 0;
    }
    .recruit-column-list {
        width: 100%;
        margin: 0;
        padding: 0 3.125%;
    }
    .recruit-column-list li {
        width: 100%;
        float: none;
        margin: 10px 0 0;
    }
    .recruit-column-list li:first-child {
        margin: 0;
    }
    .recruit-column-list li a:hover img {
        opacity: 1;
        filter: alpha(opacity=100);
        -ms-filter: "alpha(opacity=100)";
    }
    /* JOB DETAIL */
    .job-detai-head {
        width: 100%;
        height: auto;
    }
    .ttl-job-detai-head {
        width: 100%;
    }
    .ttl-job-detai-head h2 {
        position: absolute;
        top: 70px;
        left: 6.25%;
        font-size: 17px;
    }
    .job-detail-table {
        margin: 0;
        margin: 0 0 50px;
    }
    .job-detail-table th,
    .job-detail-table td {
        border-bottom: 0;
        display: block;
    }
    .job-detail-table th {
        font-weight: bold;
        font-size: 15px;
        width: 100%;
        text-align: left;
        padding: 20px 6.25% 8px;
    }
    .job-detail-table td {
        font-size: 14px;
        width: 100%;
        padding: 0 6.25% 20px;
        border-bottom: 1px solid #dddddd;
    }
    .staff-list.job-detail-staff-list {
        padding: 0 16.825%;
    }
    .staff-list.job-detail-staff-list li {
        float: none;
        width: 100%;
        margin: 0 0 50px
    }
    /* STAFF */
    .staff-list {
        padding: 0 6.25%;
    }
    .staff-list li {
        width: 50%;
        margin: 0 0 30px;
    }
    .staff-list li a {}
    .staff-list li a img {
        width: 80%;
        height: auto;
    }
    .staff-list li a:hover img {
        opacity: 1;
    }
    .staff-list li a h3,
    .staff-list li a h4 {
        font-size: 14px;
        margin: 15px 0 9px;
    }
    .staff-list li a p {
        font-size: 13px;
        line-height: 15px;
    }
    /* STAFF DETAIL */
    div[class^="img-staff-detail"] {
        flex-direction: column-reverse;
        border-bottom: #ccc 1px solid;
    }
    .img-staff-detail img {
        display: block;
        width: 100%;
        height: auto;
        min-width: inherit;
        min-height: inherit;
    }
    .txt-staff-detail {
        width: 100%;
        padding: 4% 4% 6%;
    }
    .txt-staff-detail>div {
        position: relative;
        padding: 0 0 0 15px;
        margin: 12px 0 0;
    }
    .txt-staff-detail>div:before,
    .txt-staff-detail>div:after {
        content: '';
        display: block;
        width: 3px;
        height: 46%;
        position: absolute;
        left: 0;
    }
    .txt-staff-detail>div:before {
        background: #3674e3;
        bottom: 50%;
    }
    .txt-staff-detail>div:after {
        background: #e12927;
        top: 50%;
    }
    .txt-staff-detail p,
    .txt-staff-detail h2,
    .txt-staff-detail span {
        color: #000;
        left: 0;
        position: relative;
        top: 0 !important;
    }
    .txt-staff-detail p {
        font-size: 16px;
        color: #0e2f8c;
        line-height: 27px;
        letter-spacing: 0;
    }
    .txt-staff-detail h2 {
        font-size: 15px;
        margin: 0 0 3px;
    }
    .txt-staff-detail span {
        top: 130px;
        font-size: 13px;
        line-height: 19px;
    }
    .movie__up {
        width: 90%;
        margin: 50px auto -15px;
        padding: 0;
    }
    .movie__down {
        width: 90%;
        padding: 0;
        margin: 0 auto 76px;
    }
    .interview {
        margin: 50px 0 35px;
        padding: 0 6.25%
    }
    .interview-list {
        width: 100%;
    }
    .interview-list li {
        margin: 50px 0 0;
    }
    .interview-list li .question {
        font-size: 15px;
        background: url(../images/recruit/icon-staff-q-sp.png) no-repeat 0 0;
        background-size: 21px 21px;
        padding: 1px 0 0 30px;
        margin: 0 0 20px;
    }
    .interview-list li .answer {
        font-size: 14px;
        padding: 0;
    }
    .schedule {
        padding: 45px 6.25% 25px;
    }
    .schedule .ttl-recruit {
        display: none;
    }
    .schedule-list:after {
        content: "";
        font-size: 0;
        display: block;
        position: absolute;
        bottom: 0;
        left: 40px;
        width: 3px;
        height: 100%;
        background: #3673e4;
        z-index: 1;
    }
    .schedule-list li {
        margin: 40px 0 0;
        height: auto;
        position: relative;
        background: #fff;
        border-radius: 15px;
        padding: 7.5% 7.142857143%;
        padding: 19.64285714% 7.5% 7.142857143%;
        overflow: visible;
        z-index: 2;
        position: relative;
    }
    .schedule-list li:before {
        display: none;
    }
    .schedule-list li .hour {
        float: none;
        width: 60px;
        height: 60px;
        background: url(../images/recruit/bg-staff-schedule-hour-sp.png) no-repeat 0 0;
        background-size: 60px 60px;
        margin: 0;
        font-size: 14px;
        line-height: 60px;
        position: absolute;
        top: -19px;
        left: 12px;
    }
    .schedule-list li .content {
        float: none;
        width: 100%;
        height: inherit;
        position: static;
        background: transparent;
        padding: 0;
    }
    .schedule-list li .content h4 {
        font-size: 19px;
        margin: 0 0 15px;
        text-align: center;
    }
    .schedule-list li .content p {
        font-size: 14px;
        line-height: 28px;
    }
    .schedule-list li .content .mask {
        display: none;
    }
    .schedule-list li .content .img {
        position: static;
        top: inherit;
        right: inherit;
        margin: 15px 0 0;

        border-radius: 0;
    }
    #movie-other-wrap {
        margin: -60px 0 0;
    }
    #movie-other {
        width: 96%;
        margin: 0 auto 80px;
    }
    #movie-other-ttl {
        font-size: 13px;
        text-align: left;
        padding: 20px 3%;
    }
    #movie-other-ttl span {
        background: url(../images/recruit/open.png) no-repeat center right/contain;
        padding: 0 27px 0px 0px;
    }
    #movie-other-ttl.open span {
        background: url(../images/recruit/close.png) no-repeat center right/contain;
        padding: 0 27px 0px 0px;
    }
    .movie-other-link::after {
        width: 25px;
    }
    /* -------------------------------------------
			9. CONTACT & RECRUIT CONTACT
		------------------------------------------- */
    .form-box {}
    .txt-form {
        font-size: 14px;
        line-height: 28px;
        text-align: left;
        padding: 0 6.25%;
    }
    .form-table {
        width: 100%;
        margin: 25px 0 25px;
    }
    .form-table th,
    .form-table td {
        display: block;
        width: 100%;
    }
    .form-table th {
        font-size: 15px;
        text-align: left;
        padding: 24px 6.25% 0 !important;
    }
    .form-table td {
        padding: 24px 6.25%;
        font-size: 14px;
        line-height: 28px;
        border-top: 0;
    }
    .form-table tr.witness th,
    .form-table tr.witness td {
        display: none !important;
    }
    .form-table tr.witness th.is-shown,
    .form-table tr.witness td.is-shown {
        display: block !important;
    }
    .form-table td.is-flex {
        display: block;
    }
    .form-table td.is-flex .form-table__date {
        margin-right: 0;
    }
    .form-table__date {
        max-width: 170px;
    }
    .form-table__time {
        width: 170px;
        height: 42px;
        padding: 8px 2px;
        border-radius: 3px;
        font-size: 14px;
    }
    .form-table__message {
        font-size: 13px;
        margin: 0 0 0;
    }
    .wpcf7-radio .wpcf7-list-item {
        margin-top: 5px;
    }
    .form-table td .wpcf7-list-item-label {
        font-size: 14px;
    }
    .form-table td input[type="text"],
    .form-table td input[type="email"],
    .form-table td input[type="number"],
    .form-table td input[type="tel"],
    .form-table td textarea {
        font-size: 14px;
        border-radius: 10px;
    }
    .form-table td input[type="text"],
    .form-table td input[type="email"],
    .form-table td input[type="number"],
    .form-table td input[type="tel"] {
        height: 60px;
        line-height: 1;
    }
    .form-table td textarea {
        height: 125px;
    }
    .form-table span.wpcf7-not-valid-tip {
        margin: 16px 0;
    }
    .wpcf7-form-control {
        margin: 0 0 16px;
    }
    .mwform-radio-field {
        margin: 18px 0 0;
        vertical-align: middle;
        line-height: 1;
    }
    .mwform-radio-field label {
        display: block;
        width: 100%;
        font-size: 14px;
        background: url(../images/common/img-radio-sp.png) no-repeat left center transparent;
        background-size: 18px 18px;
        padding: 2px 0 2px 30px;
    }
    .mwform-radio-field label.checked {
        background: url(../images/common/img-radio-sp-on.png) no-repeat 0 0 transparent;
        background-size: 18px 18px;
    }
    .mwform-radio-field input[type="radio"] {
        display: inline-block;
        /*width: 15px;*/
        /*height: 15px;*/
        /*background: url(../images/common/img-radio.png) no-repeat 0 0 transparent;*/
        border: 0;
        width: 0;
        height: 0;
        opacity: 0;
    }
    .select-wrap {}
    .select-wrap select {
        height: 60px;
        font-size: 14px;
        line-height: 60px;
        padding: 0 0 0 16px;
        background: url(../images/common/img-select-sp.png) no-repeat top right;
        background-size: 40px 60px;
        border-radius: 10px;
    }
    /* ALERT */
    .form-error {
        text-align: left;
        border-left: 0;
        border-right: 0;
        padding: 25px 0 25px 6.25%;
        margin: 25px 0 0;
    }
    .ttl-form-error {
        display: block;
        font-size: 14px;
        line-height: 28px;
        margin: 0 0 32px;
        padding: 20px 0 0;
        text-align: left;
        background: url(../images/common/icon-form-error-sp.png) no-repeat left top;
        background-size: 13px 13px;
    }
    .txt-form-error {
        font-size: 14px;
        line-height: 28px;
    }
    .form-table th.error {
        background-color: #ffd9d9 !important;
    }
    /* COMPLETE */
    .txt-form-complete {
        font-size: 14px;
        line-height: 28px;
        text-align: left;
        width: 100%;
        padding: 0 6.25%;
    }
    .txt-form-complete.is-basic {
        font-size: 14px;
        line-height: 1.8;
    }
    .companies {}
    .txt-companies {
        font-size: 14px;
        line-height: 26px;
        width: 100%;
        margin: 40px auto 0;
        padding: 0 6.25%;
    }
    .companies .txt-companies:first-child {
        margin: 50px auto 0;
    }
    .txt-companies strong {
        font-weight: bold;
        font-size: 18px;
        line-height: 28px;
    }
    .form-box .btn-back {
        margin: 50px auto;
    }
    /* -------------------------------------------
			10. PRIVACY
		------------------------------------------- */
    .txt-privacy {
        font-size: 14px;
        line-height: 28px;
        margin: 0 auto 25px;
        padding: 0 6.25%;
        text-align: left;
    }
    .privacy-table,
    .company-table,
    .gyomu-table {}
    .privacy-table th,
    .privacy-table td,
    .company-table th,
    .company-table td,
    .gyomu-table th,
    .gyomu-table td {
        display: block;
    }
    .privacy-table th,
    .company-table th,
    .gyomu-table th {
        font-size: 15px;
        line-height: 1;
        font-weight: bold;
        text-align: left;
        width: 100%;
        padding: 25px 6.25% 20px;
    }
    .privacy-table td,
    .company-table td,
    .gyomu-table td {
        font-size: 14px;
        line-height: 28px;
        padding: 0 6.25% 25px;
        width: 100%;
        border: 0;
    }
    /* -------------------------------------------
			11. ERROR
		------------------------------------------- */
    .error-box {
        padding: 75px 0 0;
    }
    .error-box figure img {}
    .error-box h2,
    .error-box.search-error-box h2 {
        font-size: 14px;
        line-height: 28px;
        margin: 20px 0 75px;
    }
    /* -------------------------------------------
			12. ABOUT US
		------------------------------------------- */
    /* PAGE MENU */
    .page-menu {
        margin: 0;
    }
    .page-menu ul {
        list-style-type: none;
        width: 100%;
    }
    .page-menu ul li {
        width: 33%;
        max-width: 33%;
    }
    .page-menu ul li:nth-of-type(4),
    .page-menu ul li:nth-of-type(5),
    .page-menu ul li:nth-of-type(6) {
        border-top: 1px solid #fff;
    }
    .page-menu ul li a {
        display: block;
        text-decoration: none;
        font-size: 14px;
        font-weight: bold;
        padding: 14px 0;
    }
    .page-menu ul li a:hover {
        opacity: 1;
    }
    /* MASSAGE */
    .message {
        margin: 75px 0 0;
    }
    .img-message {
        margin: 50px 0 0;
    }
    .txt-message {
        width: 100%;
        margin: 0 0 50px;
        padding: 0 6.25%;
    }
    .txt-message p {
        font-size: 14px;
        line-height: 28px;
    }
    .signature {
        font-size: 14px;
        padding: 0 6.25%;
    }
    .signature span {}
    .signature p {
        width: 113px;
        height: 24px;
        background: url(../images/aboutus/img-aboutus-message-signature-sp.png) no-repeat right top;
        background-size: 113px 24px;
    }
    /* CONCEPT */
    .concept {
        margin: 75px 0 0;
    }
    .img-concept {
        margin: 50px 0;
    }
    .concept-list {
        border-left: 0;
        border-right: 0;
    }
    .concept-list-item {
        padding: 50px 6.25%;
    }
    .concept-list-item h4 {
        font-size: 15px;
        padding: 0;
        background: none;
        margin: 0 0 20px;
    }
    .concept-list-item p {
        font-size: 14px;
        line-height: 28px;
    }
    /* BUSINESS */
    .business {
        margin: 75px 0 0;
    }
    .txt-business {
        width: 100%;
        margin: 42px auto 0;
        font-size: 14px;
        line-height: 28px;
        padding: 0 6.25%;
    }
    .img-business {
        margin: 50px 0 0;
    }
    .img-business img {
        display: block;
        width: 100%;
        height: auto;
    }
    .txt-business-sub {
        font-size: 14px;
        line-height: 30px;
        padding: 0 6.25% 40px;
    }
    .txt-business-sub h4 {
        font-size: 15px;
    }
    .business-list {
        margin: -17px auto 0;
    }
    .business-list li {
        width: 100%;
    }
    .business-list li.for-business,
    .business-list li.for-life {
        float: none;
    }
    .business-list-content {
        padding: 0 6.25% 50px;
        min-height: auto;
    }
    .business-list-content p {
        font-size: 14px;
        line-height: 28px;
        min-height: auto;
        margin: 0 0 50px;
    }
    .business-list-content .btn-more a {
        padding: 5% 25px 5% 4.5%;
        width: 100%;
        font-size: 14px;
        background: url(../images/common/icon-btn-sp.png) no-repeat 95% center #e12929;
        background-size: 11px 19px;
    }
    .business-list-content .btn-more {
        margin: 20px 0 0;
    }
    /* GYOMU */
    .gyomu-table {
        margin: 0;
        /*       border-bottom: 1px solid #cfcfcf; */
    }
    /* ACCESS */
    .access {
        padding: 0;
    }
    .access-list {
        margin: 0;
    }
    .access-list li {
        position: relative;
        padding: 25px 0;
        padding: 25px 6.25%;
    }
    .access-list li .img {
        display: none;
        position: static;
        width: 100%;
        height: auto;
        top: inherit;
        right: inherit;
    }
    .access-list li .img img {
        display: block;
        width: 100%;
        height: auto;
    }
    .access-list li .office,
    .access-list li .address {
        display: block;
    }
    .access-list li .office {
        width: 100%;
        padding: 0;
    }
    .access-list li .office h3 {
        font-size: 15px;
        line-height: 36px;
        text-align: left;
        margin: 0 0 5px;
    }
    .access-list li .address {
        font-size: 14px;
        line-height: 28px;
        padding: 0;
    }
    .btn-map {
        display: block;
    }
    .btn-map a {
        width: 48px;
        height: 13px;
        background: url(../images/aboutus/icon-map-sp.png) no-repeat left center;
        background-size: 48px 13px;
    }
    /* COMPANY */
    .company-table {
        margin: 0;
    }
    .company-table tr:first-child th {
        border: 0;
    }
    .company-table td.executive {
        padding: 25px 6.25%;
        border-top: 1px solid #cfcfcf;
    }
    .company-table td div,
    .company-table td div:first-child {
        float: none;
        width: 100%;
    }
    .company-table td em {
        font-weight: normal;
        display: block;
    }
    .company-table td em:before {
        content: '【';
    }
    .company-table td em:after {
        content: '】';
    }
    .executive-list dt,
    .executive-list dd {
        float: none;
        height: auto;
        line-height: 28px;
    }
    .executive-list dt {
        font-size: 14px;
        text-align: left;
        width: 100%;
        padding: 30px 0 0 0;
    }
    .executive-list dt:first-child {
        padding: 0;
    }
    .executive-list dd {
        width: 100%;
        font-size: 14px;
        padding: 0;
    }
    /* HISTORY */
    .history-list {
        width: 100%;
        /*padding: 0 6.25% 0 38px;*/
        padding: 0;
        float: none;
        margin: 0;
    }
    .history-list:first-child {
        margin: 70px 0 0;
    }
    .history-list li {
        padding: 28px 0 0;
        position: relative;
    }
    .history-list li:first-child {
        padding: 0;
    }
    .history-list:first-child li:last-child {
        padding: 28px 0;
    }
    .history-list li:before {
        content: '.';
        font-size: 0;
        display: block;
        width: 1px;
        height: 100%;
        background: #cccccc;
        position: absolute;
        top: 0;
        left: 19px;
    }
    .history-list:last-child li:first-child:before {
        top: 0;
    }
    .history-list li:last-child:before,
    .history-list li.last-child:before {
        height: 46px;
    }
    .history-list:first-child li:last-child:before,
    .history-list:first-child li.last-child:before {
        height: 100%;
    }
    .history-list li .year {
        width: 100%;
        padding: 0 0 0 38px;
        float: none;
        background: url(../images/aboutus/icon-history-circle-sp.png) no-repeat 16px 12px;
        background-size: 7px 7px;
    }
    .history-list li .content {
        width: 100%;
        float: none;
        padding: 0 0 0 38px;
    }
    .history-list li .year h3 {
        font-size: 15px;
        line-height: 33px;
        text-align: left;
    }
    .history-list li .content p {
        font-size: 14px;
        line-height: 28px;
    }
    /* -------------------------------------------
			13. STRENGTH
		------------------------------------------- */
    .renovation-report-content {}
    .main-renovation-report {
        background: url(../images/strength/img-renovation-report-main-sp.jpg) no-repeat center center !important;
        background-size: cover !important;
        height: inherit;
        padding: 55px 0;
    }
    .main-renovation-report h2 {
        padding: 0 0 20px;
        position: relative;
    }
    .main-renovation-report h2 img {
        width: 100%;
        height: auto;
    }
    .main-renovation-report p {
        font-size: 12px;
        line-height: 23px;
        /*padding: 0 2.5% 0 5.625%;*/
        padding: 0 2.5% 0 5%;
    }
    .ttl-renovation-report-content {
        font-size: 22px;
        line-height: 40px;
        margin: 45px auto 0;
    }
    .ttl-renovation-report-content em {
        display: block;
    }
    .step-list {}
    .step-list li {}
    .step-list li.swot {}
    .step-list li.jks {}
    .step-list li.construction {}
    .step-list li.chokotto {
        padding: 0;
    }
    .step {
        position: static;
        top: inherit;
        left: inherit;
        width: 62px;
        margin: 0 auto;
    }
    .step img {
        display: block;
        width: 100%;
        height: auto;
    }
    .step-list-content {
        padding: 0 6.25%;
    }
    .ttl-step {
        padding: 16px 0 24px;
    }
    .ttl-step p {
        font-size: 15px;
        text-align: center;
    }
    .ttl-step h4 {
        font-size: 26px;
        line-height: 30px;
        text-align: center;
    }
    .txt-step {
        font-size: 15px;
        line-height: 30px;
        padding: 15px 0 0;
    }
    .img-step {
        margin: 15px 0 0;
    }
    .img-step img {
        width: 100%;
    }
    .step-list li figure {
        display: block;
        position: static;
        margin: 0 auto;
    }
    .step-list li figure img {
        display: block;
        width: 100%;
        height: auto;
    }
    .step-list li.swot figure {
        top: inherit;
        right: inherit;
        width: 170px;
    }
    .step-list li.jks figure {
        top: inherit;
        right: inherit;
        width: 173px;
    }
    .step-list li.construction figure {
        top: inherit;
        right: inherit;
        width: 145px;
    }
    .step-list li.chokotto figure {
        top: inherit;
        right: inherit;
        width: 192px;
    }
    .step-list li .btn-more {
        margin: 40px 0 50px;
    }
    .renovation-flow {
        padding: 75px 0 0;
    }
    .renovation-flow h3 {
        font-size: 18px;
        margin: 0 0 50px;
    }
    .renovation-flow-list {
        background: none;
    }
    .renovation-flow-list li {
        float: none;
        width: 100%;
        margin: 0;
        padding: 0 6.25% 65px;
        position: relative;
    }
    .renovation-flow-list li:last-child {
        padding: 0 6.25%;
    }
    .renovation-flow-list li:after {
        content: "";
        display: block;
        background: url(../images/strength/bg-renovation-flow-list-sp.png) no-repeat bottom center;
        background-size: 21px 14px;
        width: 100%;
        height: 14px;
        position: absolute;
        left: 0;
        bottom: 29px;
    }
    .renovation-flow-list li:last-child:after {
        display: none;
    }
    .renovation-flow-list li h4 {
        display: block;
        font-size: 15px;
        text-align: center;
        margin: 22px 0 0;
    }
    .renovation-flow-list li p {
        font-size: 14px;
        line-height: 24px;
        margin: 12px 0 0;
        padding: 0;
    }
    /* DETAIL */
    .strength-detail-head {
        height: 240px;
    }
    #chokotto .strength-detail-head {
        background: url(../images/strength/img-strength-detail-head-chokotto-sp.jpg) no-repeat top center !important;
        background-size: cover !important;
    }
    #jks .strength-detail-head {
        background: url(../images/strength/img-strength-detail-head-jks-sp.jpg) no-repeat top center !important;
        background-size: cover !important;
    }
    #swot .strength-detail-head {
        background: url(../images/strength/img-strength-detail-head-swot-sp.jpg) no-repeat top center !important;
        background-size: cover !important;
    }
    #construction .strength-detail-head {
        background: url(../images/strength/img-strength-detail-head-construction-sp.jpg) no-repeat top center !important;
        background-size: cover !important;
    }
    #construction .ttl-strength-detail-head p span {
        font-size: 12px;
    }
    #construction .tech-manner p,
    #construction .tech-manner-top p {
        font-size: 14px;
        margin-bottom: 10px;
    }
    #construction .tech-manner-list li {
        width: 48%;
        margin: 0;
    }
    .ttl-strength-detail-head-wrapper {
        width: 100%;
    }
    #chokotto .ttl-strength-detail-head h2 {
        font-size: 20px;
        line-height: 40px;
        padding: 70px 0 0;
    }
    #chokotto .ttl-strength-detail-head p {
        font-size: 14px;
        line-height: 24px;
    }
    .ttl-strength-detail-head h2 {
        font-size: 20px;
        line-height: 40px;
        padding: 70px 0 0;
    }
    #construction .ttl-strength-detail-head h2 {
        padding: 35px 0 0;
    }
    .ttl-strength-detail-head p {
        font-size: 14px;
        line-height: 24px;
    }
    .txt-strength-detail {
        padding: 0 0 38px;
    }
    #chokotto .strength-rate {
        padding: 14px 6.25% 58px;
    }
    #jks .content-wrapper .mb40 {
        margin-bottom: 15px;
        padding-bottom: 0;
    }
    #chokotto .txt-strength-detail {}
    #swot .txt-strength-detail {}
    #jks .txt-strength-detail {}
    #construction .txt-strength-detail {}
    .txt-strength-detail h3,
    #chokotto .txt-strength-detail h3,
    #jks .txt-strength-detail h3,
    #swot .txt-strength-detail h3,
    #construction .txt-strength-detail h3 {
        font-size: 15px;
        line-height: 30px;
        padding: 15px 0;
        text-align: center;
    }
    .txt-strength-detail p,
    #chokotto .txt-strength-detail p,
    #jks .txt-strength-detail p,
    #swot .txt-strength-detail p,
    #construction .txt-strength-detail p {
        font-size: 14px;
        line-height: 28px;
        padding: 0;
        letter-spacing: 0.05em;
    }
    #jks .txt-strength-detail p {
        width: 100%;
    }
    .txt-strength-detail figure,
    #chokotto .txt-strength-detail figure,
    #jks .txt-strength-detail figure,
    #swot .txt-strength-detail figure,
    #construction .txt-strength-detail figure {
        display: block;
        position: static;
        top: inherit;
        right: inherit;
        margin: 0 auto;
    }
    #chokotto .txt-strength-detail figure {
        width: 150px;
        margin-top: -18px;
    }
    #jks .txt-strength-detail figure {
        width: 146px;
        margin-top: -36px;
    }
    #swot .txt-strength-detail figure {
        width: 138px;
        margin-top: -37px;
    }
    #construction .txt-strength-detail figure {
        width: 119px;
        margin-top: -42px;
    }
    .txt-strength-detail figure img {
        display: block;
        width: 100%;
        height: auto;
    }
    .strength-flow {
        padding: 50px 0 0;
    }
    .strength-flow-list {
        background: none;
    }
    .strength-flow-list li {
        width: 100%;
        float: none;
        margin: 0;
    }
    .strength-flow-list li:first-child {
        margin: 0;
    }
    .strength-flow-list li:after {
        content: "";
        display: block;
        width: 100%;
        height: 14px;
        background: url(../images/strength/bg-strength-flow-list-sp.png) no-repeat bottom center;
        background-size: 22px 14px;
        margin: 12px 0 16px;
    }
    .strength-flow-list li:last-child:after {
        display: none;
    }
    .strength-flow-list li:last-child {}
    .strength-flow-list li img {
        margin: 0 0 10px;
    }
    .strength-flow-list li p {
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 0.05em;
    }
    .strength-service {
        width: 100%;
        /*padding: 100px 6.25% 0;*/
        padding: 100px 3.75% 0;
    }
    .strength-table th,
    .strength-table td {
        vertical-align: middle;
        border-top: 0;
        display: block;
        width: 100%;
        padding: 0;
        text-align: left;
    }
    .strength-table th {
        border-top: 1px solid #cfcfcf;
        font-size: 15px;
        line-height: 30px;
        padding: 20px 0 0 5px;
    }
    .strength-table td {
        font-size: 14px;
        line-height: 28px;
        padding: 12px 0 20px 5px;
    }
    .strength-case {
        width: 100%;
        padding: 70px 3.75% 0;
    }
    .strength-example {
        width: 100%;
        padding: 45px 6.25% 115px;
    }
    #jks .strength-example {
        margin-top: 0;
    }
    #jks .strength-example,
    #swot .strength-example,
    #construction .strength-example {
        padding: 45px 6.25% 0;
    }
    .strength-example-list {
        width: 100%;
        margin: 50px 0 0;
    }
    .strength-example-list li {
        float: left;
        width: 100%;
        margin: 40px 0 0;
    }
    .strength-example-list li:first-child {
        float: none;
        width: 100%;
        margin: 0;
    }
    .strength-example-list li p {
        font-size: 14px;
        line-height: 24px;
    }
    /*point-club*/
    .point-club {
        padding: 20px 0 50px;
    }
    .point-club .txt-tomonokai {
        margin-top: 0;
    }
    .point-club .ttl-strength-detail {
        padding: 40px 10px;
        margin: 0;
    }
    .strength-rate .ttl-strength-detail {
        padding: 40px 10px;
    }
    .point-slide-table td,
    .point-example-table td,
    .point-slide-table th,
    .point-example-table th {
        padding: 10px 0;
        display: block;
        text-align: center;
        font-size: 12px;
    }
    .point-example-table td,
    .point-example-table th {
        font-size: 16px;
        text-align: left;
        width: auto;
    }
    .point-example-table td {
        font-size: 14px;
        padding: 0;
    }
    .point-example-table li.get-point {
        text-indent: -1.7em;
        margin-left: 1.7em;
    }
    .point-slide-table tr,
    .point-example-table tr {
        margin-bottom: 25px;
        padding: 10px 20px;
        display: block;
    }
    .point-club .sum-point:after {
        width: 100%;
    }
    .point-club .is-02 .sum-point::after {
        left: 50%;
    }
    .point-club .is-03 .sum-point::after {
        left: 50%;
    }
    .point-club .ttl-strength-detail {
        padding: 25px 5px;
    }
    .point-club .down-pointing {
        padding-left: 0;
        text-align: center;
    }
    .point-attention li {
        font-size: 14px;
        text-indent: 0;
    }
    .point-example-table li:first-child.return {
        margin-bottom: 41.6px;
        text-indent: -1.6em;
        margin-left: 1.6em;
    }
    .point-example-table li.return::after {
        top: 115%;
        left: 50%;
        transform: translateX(-50%);
    }
    .point-example-case {
        margin: 0px 0 12px;
        padding: 0 30px;
    }
    .point-example-table li:first-child {
        margin-bottom: 20px;
    }
    .point-btn.btn-box {
        padding: 32px 0 17px;
    }
    .point-btn .content-wrapper .btn-more p {
        font-size: 14px;
    }
    .point-btn .content-wrapper .btn-more p .is-red {
        font-size: 18px;
    }
    .point-btn.btn-box .content-wrapper.is-next {
        margin-right: 0;
        padding: 0 6.25% 17px;
    }
    .point-btn .content-wrapper .btn-more p::before,
    .point-btn .content-wrapper .btn-more p::after {
        height: 20px;
    }
    .point-btn .content-wrapper .btn-more p::before {
        left: -7px;
    }
    .point-btn .content-wrapper.is-next a {
        margin-top: 2px;
    }
    .point-btn .content-wrapper .btn-more p::after {
        right: -8px;
    }
    .point-btn .content-wrapper.is-next a span {
        font-size: 16px;
        margin-right: 0;
    }
    .point-btn .content-wrapper.is-next a {
        padding: 17px 10px 15px 30px;
    }
    .point-btn.btn-box.swot .content-wrapper.is-next .btn-more a {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .point-btn {
        padding: 32px 0 17px;
    }
    .point-btn .content-wrapper a {
        min-width: auto;
        width: 100%;
        height: 76px;
        max-width: 315px;
        margin: 0 auto;
    }
    .point-btn .content-wrapper.is-concept a .concept-box {
        margin-right: 10px;
    }
    .point-btn .content-wrapper.is-concept a {
        font-size: 18px;
        padding: 15px 8px 13px 43px;
    }
    .point-btn .content-wrapper.is-concept a .is-bold {
        font-size: 20px;
    }
    .point-btn .content-wrapper.is-concept a .is-small {
        font-size: 12px;
    }
    .point-btn .content-wrapper.is-contact {
        margin-bottom: 15px;
    }
    .point-btn .content-wrapper.is-contact a {
        font-size: 16px;
        padding: 17px 10px 15px 30px
    }
    .point-btn .content-wrapper.is-contact a::before {
        width: 26px;
        height: 26px;
        left: 20px;
    }
    .point-btn .content-wrapper.is-contact span {
        font-size: 18px;
    }
    .point-btn.is-prev {
        margin-bottom: 30px;
    }
    .tomonokai {
        padding: 50px 6.25%;
    }
    .txt-tomonokai {
        text-align: left;
        font-size: 14px;
        line-height: 28px;
        margin: 40px auto 0;
    }
    .tomonokai-list {
        list-style-type: none;
        margin: 30px 0 0;
    }
    .tomonokai-list li {
        float: none;
        width: 100%;
    }
    .tomonokai-list li:first-child {
        float: none;
        margin-bottom: 35px;
    }
    .tomonokai-list-content {
        background: #fff;
        padding: 0 0 25px;
        height: inherit;
    }
    .tomonokai-list li h4 {
        font-size: 16px;
        margin: 0 0 10px;
    }
    .tomonokai-list li p {
        font-size: 14px;
        line-height: 28px;
        padding: 0 30px;
    }
    .strength-works {
        margin: 50px 0 0;
    }
    .swot-strategy {
        padding: 50px 0 0;
    }
    #swot .swot-strategy {
        padding: 50px 6.25% 0;
    }
    .swot-strategy-list {
        background: none;
        margin: 35px auto 0;
    }
    .swot-strategy-list li {
        float: none;
        width: 100%;
        margin: 0;
    }
    .swot-strategy-list li:first-child {
        float: none;
    }
    .swot-strategy-list li:after {
        content: "";
        display: block;
        background: url(../images/strength/bg-swot-strategy-list-sp.png) no-repeat top center;
        width: 100%;
        height: 14px;
        background-size: 21px 14px;
        margin: 30px 0;
    }
    .swot-strategy-list li:last-child:after {
        display: none;
    }
    .swot-strategy-list li p {
        font-size: 14px;
        line-height: 24px;
        padding: 0;
        letter-spacing: 0.05em;
    }
    .tech-manner,
    .tech-manner-top {
        padding: 45px 6.25% 0;
    }
    .ttl-strength-detail {
        text-align: center;
        font-size: 20px;
        font-weight: bold;
        margin: 0 0 17px;
    }
    #jks .strength-example .ttl-strength-detail {
        margin-bottom: 20px;
    }
    #jks .strength-example .strength-about__txt {
        margin-bottom: 15px;
        font-size: 14px;
        text-align: left;
    }
    #jks .strength-contents {
        display: block;
        margin-bottom: -15px;
        margin-right: 0;
    }
    #jks .strength-planning {
        margin-right: 0;
        margin: 0 auto 15px;
        padding: 20px;
    }
    #jks .strength-planning li {
        margin-right: 0;
    }
    #jks .strength-planning li img {
        margin: 0 auto 8px;
        display: block;
    }
    #jks .strength-planning li:first-child {
        margin-bottom: 22px;
    }
    #jks .strength-planning li:nth-child(2) {
        margin-bottom: 32px;
    }
    #jks .strength-planning li h4 {
        font-size: 18px;
        margin-bottom: 10px;
    }
    #jks .strength-example-list li {
        margin-bottom: 0;
        margin-right: 0;
    }
    #jks .strength-example-list {
        margin: 37px 0 auto 0;
    }
    #swot .swot-txt {
        font-size: 14px;
    }
    #swot .renovation-report .swot-txt {
        text-align: left;
        margin-bottom: 20px;
    }
    #swot .ttl-strength-detail {
        margin-bottom: 20px;
    }
    #swot .swot-strategy__txt {
        font-size: 14px;
        margin-bottom: 45px;
        text-align: left;
    }
    #swot .swot-strategy__box h5 span {
        font-size: 12px;
    }
    #swot .ttl-strength-head01 {
        font-size: 20px;
    }
    #swot .ttl-strength-head01 .number {
        font-size: 30px;
    }
    #swot .ttl-strength-head01 span {
        font-size: 18px;
    }
    #swot .ttl-strength-head01 {
        padding-bottom: 6px;
    }
    #swot .swot-strategy__box h5 {
        font-size: 17px;
        margin-top: 15px;
        margin-bottom: 10px;
    }
    #swot .swot-strategy__box ul li {
        width: 48%;
    }
    #swot .swot-strategy__box {
        margin-bottom: 60px;
    }
    #swot .swot .ttl-strength-head01 {
        margin-bottom: 15px;
    }
    #swot .swot-target .ttl-strength-head01 {
        margin-bottom: 20px;
        letter-spacing: 0;
    }
    #swot .swot img {
        margin-bottom: 12px;
    }
    #swot .swot {
        margin-bottom: 60px;
    }
    #swot .swot-target {
        margin-bottom: 80px;
    }
    #swot .swot-target .swot-target__box {
        display: block;
        margin-bottom: 20px;
    }
    #swot .swot-target .swot-target__contents .swot-target__head {
        font-size: 18px;
        margin-bottom: 10px;
    }
    #swot .swot-target .swot-target__contents li,
    #swot .swot-target .swot-target__contents.is-01 li {
        margin: 0 auto 15px auto;
    }
    #swot .swot-target .swot-target__contents li:last-child {
        margin-bottom: 0;
    }
    #swot .swot-target .swot-target__contents.is-01 {
        margin: 0 auto 15px;
        padding: 15px 5px 45px 5px;
    }
    #swot .swot-target .swot-target__contents.is-02 {
        margin: 0 auto;
        padding: 15px 5px 28px 5px;
    }
    #swot .swot-target .swot-target__contents ul li {
        font-size: 16px;
        width: 90%;
        max-width: 280px;
    }
    #swot .swot-target .swot-target__list {
        margin-bottom: 15px;
        justify-content: center;
        margin: 0 -10px -10px 0;
    }
    #swot .swot-target .swot-target__contents {
        padding: 15px 5px 15px 12px;
        max-width: 330px;
        width: 100%;
    }
    #swot .swot-target .swot-target__list li .swot-target__txt {
        font-size: 14px;
    }
    #swot .swot-target .swot-target__list {
        flex-wrap: wrap;
    }
    #swot .swot-target .swot-target__list li {
        width: 46%;
        margin: 0 10px 20px 0;
    }
    #swot .swot-target .swot-target__list li img {
        margin-bottom: 0;
    }
    #swot .ttl-strength-detail {
        margin-bottom: 10px;
    }
    #swot .renovation-report .content-wrapper a {
        padding: 17px 10px 15px 30px;
    }
    #swot .renovation-report {
        margin: 0 auto 28px;
        width: 90%;
    }
    #swot .renovation-report img {
        margin-bottom: 45px;
    }
    #swot .renovation-report .content-wrapper a {
        margin: 0 auto;
        background: url(../images/common/icon-btn.png) no-repeat 93% center #e12929;
        max-width: 349px;
        width: 100%;
    }
    #swot .renovation-report .content-wrapper a::before {
        width: 30px;
        height: 16px;
    }
    .tech-manner-box {
        margin: 0 0 45px;
    }
    #construction .tech-manner .tech-manner-box,
    #construction .tech-manner-top .tech-manner-box {
        margin: 0 0 45px;
    }
    #construction .tech-manner .tech-manner-box .mb30,
    #construction .tech-manner-top .tech-manner-box .mb30 {
        margin-bottom: 15px;
    }
    #construction .ttl-strength-detail {
        line-height: 1.4;
    }
    #construction .ttl-strength-detail {
        margin-bottom: 12px;
    }
    #construction .tech-manner .tech-manner-box:last-child {
        margin-bottom: 23px;
    }
    .tech-manner-list li {
        font-size: 13.6px;
        font-weight: 500;
        line-height: 1.9;
    }
    .tech-manner-list {
        width: 100%;
        margin: 0 auto;
    }
    .tech-manner-list li p {
        font-size: 14px;
        line-height: 24px;
        margin: 20px 0 0;
        letter-spacing: 0.05em;
    }
    .base-repair {
        background: #fff1c8;
        padding: 35px 0 22px;
    }
    .base-repair-txt {
        width: 87.5%;
        font-size: 14px;
        line-height: 2;
        margin: 20px auto 25px;
        font-weight: 500;
    }
    .base-repair-box {
        width: 100%;
        margin: 15px auto 0;
        display: block;
        text-align: center;
        /* justify-content: space-between; */
    }
    .base-repair-txt .sp {
        display: none;
    }
    .base-repair-list {
        margin: 0 0 20px;
    }
    .base-repair-list__ttl {
        font-size: 15px;
        font-weight: 600;
        color: #000;
        padding: 0 0 0 25px;
        margin: 0 0 6px;
        background: url(../images/strength/movie_icon.png)no-repeat left 0 top 2px /20px auto;
        display: inline-block;
    }
    .base-repair-list__movie {
        width: 92%;
        margin: 0 auto;
    }
    .renostone {
        padding: 60px 0 0;
    }
    .renostone-list {
        width: 100%;
        margin: 45px auto 0;
    }
    .renostone-list li p {
        font-size: 14px;
        line-height: 24px;
        margin: 20px 0 0;
        letter-spacing: 0.05em;
        padding: 0 6.25%;
    }
}


/* END */

@media all and (min-width: 768px) {
    .txt-staff-detail.is-right {
        position: relative;
        width: 960px;
        margin: 0 auto;
    }
    .txt-staff-detail.is-right p,
    .txt-staff-detail.is-right h2,
    .txt-staff-detail.is-right span {
        margin: 0 0 0 310px;
    }
    .u-mb0-pc {
        margin-bottom: 0 !important;
    }
}

@media all and (max-width: 374px) {
    .txt-staff-detail p {
        font-size: 14px;
        line-height: 24px;
    }
}

@media all and (max-width: 350px) {
    .ttl-content.is-complete+.form-box .btn-back a {
        font-size: 13px;
        background-size: 11px 16px;
    }
    .strength-list li a p {
        font-size: 13px;
    }
}



.news-detail-content h2, .news-detail-content h3, .news-detail-content h4, .news-detail-content h5 {
  margin-bottom: 35px;
}

.news-detail-content p {
  margin-bottom: 35px;
}


.news-detail-content ul {
  margin-left: 0.125em;
  list-style-position: inside;
}

.news-detail-content .wp-block-image {
  margin-bottom: 35px;
}

.news-detail-content .wp-block-embed {
  margin-bottom: 35px;
}

.wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}



.news-detail-content .alignright, .news-detail-content .has-text-align-right {
  text-align:right;
}

.news-detail-content .aligncenter, .news-detail-content .has-text-align-center {
  text-align:center;
}

.wp-block-quote  {
  margin-bottom: 35px;
  max-width: 500px;
  padding: 1em 1.5em;
  border-left: 4px solid #f2f2f2;
  color: #333333;
}

.wp-block-quote :has(cite) {
  padding-bottom: .5em;
}

.wp-block-quote  p {
  margin-top: 0;
  margin-bottom: 0;
}

.wp-block-quote cite {
  display: block;
  color: #737373;
  font-size: .8em;
  text-align: right;
}

.news-detail-content figcaption.wp-element-caption {
  font-size: 16px !important;
}
@media screen and (max-width: 768px) {
  .news-detail-content figcaption.wp-element-caption {
    font-size: 15px !important;
  }
}