@import url(https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700;900);

@charset "UTF-8";

/*----------------------
 * 1. GENERAL
 *   1.1  Margin
 *   1.2  Text
 *   1.3  Titles and Subtitles
 *   1.4  Tables
 *   1.5  Breadcrumb
 *   1.6  Buttons
 *   1.7  Lists
 *   1.8 Other Elements
 *        1.8.1 plugins
 *        1.8.2 page top
 *        1.8.3 accordion
 *        1.8.4 modal
 *        1.8.5 Slideshow
 * 2. HEADER
 * 	  2.1 Main Nav
 *        2.1.1 main-nav
 *        2.1.2 sns Icon
 * 3. MAIN VISUAL
 *    3.1 Scroll Icon
 * 4. TOP PAGE
 * 	  4.1 Business
 * 	  4.2 Works
 *    4.3 Journal
 *    4.4 Ambassador
 *    4.5 News
 *    4.6 Recruit
 *    4.7 Info
 *    4.8 Recommend (lease-management / news)
 *    4.9 Service (lease-management)
 *    4.10 Request (lease-management)
 *    4.11 Contact (lease-management)
 *    4.12 Event (new-construction)
 *    4.13 Lineup (new-construction)
 *    4.15 Quality (new-construction)
 *    4.16 Support (new-construction)
 *    4.17 LIfeup / Model / Banner  (new-construction)
 *    4.18 Main under  (real-estate)
 *    4.19 Voice (real-estate)
 *    4.20 Search (real-estate)
 * 5. CONTENT
 * 	  5.1 Cate Main
 *    5.2 Icon New / Icon Ranking
 *    5.3 Content
 *    5.4 Journal page
 *    5.5 News page
 *    5.6 Lease Management page
 *        5.6.1 recommend swiper
 *        5.6.2 lifeup
 *        5.6.3 moshimo support
 *        5.6.4 banner top
 *    5.7 Search (Recommend)
 *    5.8 History page
 *    5.9 Recruit page
 *        5.9.1 Number of STK Horizontal (PC only)
 *        5.9.2 Number of STK Vertical (SP only)
 *        5.9.3 environment
 *        5.9.4 entry form
 *    5.10 Works page
 *        5.10.1 works detail swiper
 *    5.11 New Construction page
 *        5.11.1 lineup
 *        5.11.2 quality
 *        5.11.3 support
 *    5.12 Contact page
 *        5.12.1 catalog-form
 *    5.13 Partner page
 *    5.14 Ambassador page
 *    5.15 Real estate page
 *    5.16 Shop page
 *    5.17 SP Info page
 * 6. FOOTER
 * 7. PAGER
 * 8. INTERACTIONS
 * 9. 201218 journalとnewsのWP詳細ページ追加
 * 10. modelhouse-section
 * 11. lineup-section
 * 12. 210112 contact-link-box Fixed
 * 13. 210312 TOP Opening anime
 * 14. 210805 Contact Form7
 */

/*-------------------------------
 * 1.GENERAL
 * ----------------------------*/
html,
body {
	overflow-x: hidden;
}
body {
    font-family: YakuHanJP, 'Midashi Go MB31', sans-serif;
    margin: 0;
    padding: 0;
    font-size: 14px;
	letter-spacing: 0.03em;
	background: #dad8c8;
	color: #000;
	line-height: 1.8;
	overflow: hidden;
}
@media (max-width: 767.98px) {
    body {
        font-size: 13px;
    }
}

a {
    color: #000;
    text-decoration: none;
}
a:hover {
    cursor: pointer;
    color: #000;
    text-decoration: underline;
}
a:focus {
  outline: none;
  overflow: hidden;
  text-decoration: none;
}

a[href^="tel:"] {
	cursor: default;
	text-decoration: none;
}
a[href^="tel:"]:hover {
	text-decoration: none;
}
@media (max-width: 767.98px) {
	a[href^="tel:"] {
		cursor: pointer;
	}
}

input,
textarea {
    outline: none;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=search]:focus,
input[type=url]:focus,
textarea:focus {
	color: #000;
}

input:focus::-webkit-input-placeholder {
	color: transparent !important;
}
input:focus::-moz-placeholder {
	color: transparent !important;
}
input:focus::-ms-input-placeholder {
	color: transparent !important;
}
input:focus::placeholder {
	color: transparent !important;
}

hr {
     border-top: 1px solid #f2142b;
     margin-top: 20px;
     margin-bottom: 20px;
}
hr.gray {
     border-color: #d6d6d6;
}
@media (max-width: 767.98px) {
    hr {
        margin-top: 10px;
        margin-bottom: 10px;
    }
}

ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

strong.bold50 {
    font-weight: 500;
}
strong {
    font-weight: 600;
}

.section-wrap {
    width: 100%;
    padding: 0;
    margin: 1.5rem 0;
}
.section-wrap.h-100 {
    height: 100% !important;
    height: 100vh !important;
}
@media (max-width: 767.98px) {
    .section-wrap {
        margin: 1rem 0;
    }
    .section-wrap.h-100 {
        height: 100% !important;
    }
}

main {
    width: 100%;
    margin: 0;
    padding: 0;
    background: #dad8c8;
    /*position: relative;
    z-index: 20;
    -webkit-animation: fadeIn 1s linear both;
    animation: fadeIn 1s linear both;
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;*/
}
/* 20210318 暫定的に名口が追加 */
#journal-page main,
.modelhouse-section main {
    background: #fff;
}

.bg-gray {
    background: #dad8c8;
}
.bg-white {
    background: #fff;
}
.bg-beige {
    background: url(../image/bg-beige.png) 0 0 repeat;
}
.bg-green,
.bg-green-dark {
    background: #197b88;
    color: #fff;
}
.bg-green-light {
    background: #cceeeb;
}

.row-list .col-6 {
    padding-left: 20px;
    padding-right: 20px;
    margin-bottom: 40px;
}
@media (max-width: 767.98px) {
    .row-list .col-6 {
        padding-left: 8px;
        padding-right: 8px;
        margin-bottom: 25px;
    }
}

.flex-box {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
}
.flex-box .col {
    flex: 1;
}
.flex-box .col .txtarea {
    padding: 0 30px;
}
.flex-box .col:nth-of-type(odd) .txtarea {
    padding-right: 50px;
}
.flex-box .col:nth-of-type(even) .txtarea {
    padding-left: 50px;
}
@media (max-width: 1199.98px) {
    .flex-box {
        align-items: flex-start;
        align-content: flex-start;
    }
    .flex-box .col .txtarea {
        padding: 0 20px;
    }
    .flex-box .col:nth-of-type(odd) .txtarea {
        padding-right: 40px;
    }
    .flex-box .col:nth-of-type(even) .txtarea {
        padding-left: 40px;
    }
}
@media (max-width: 767.98px) {
    .flex-box .col {
        flex: 0 1 auto;
    }
    .flex-box .col .txtarea {
        padding: 10px 0 !important;
    }
    .order1 {
        order: 1;
    }
    .order2 {
        order: 2;
    }
}

.logo-service01 {
    width: 100px;
    margin: 0 auto 30px;
}
.logo-service02 {
    width: 140px;
    margin: 0 auto 30px;
}
.logo-service03 {
    width: 220px;
    margin: 0 auto 30px;
}
@media (max-width: 767.98px) {
    .logo-service01 {
        width: 80px;
        margin-bottom: 25px;
    }
    .logo-service02 {
        width: 120px;
        margin-bottom: 25px;
    }
    .logo-service03 {
        width: 170px;
        margin-bottom: 25px;
    }
}

.icon-news {
    display: inline-block;
    font-size: 11px;
    color: #fff;
    background: #197b88;
    border-radius: 4px;
    line-height: 1;
    text-align: center;
    padding: 5px 15px 6px;
}
@media (max-width: 767.98px) {
    .icon-news {
        font-size: 9px;
        padding: 5px 7px 4px;
    }
}
@media (max-width: 320.98px) {
    .icon-news {
        font-size: 8px;
        padding: 4px;
    }
}

.icon-people {
    display: inline-block;
    width: 27px;
    height: 37px;
    background: url(../image/icon/icon-people-black.svg) 0 0 no-repeat;
    background-size: contain;
    vertical-align: -20%;
    margin-right: 15px;
}
.icon-house {
    display: inline-block;
    width: 20px;
    height: 19px;
    background: url(../image/icon/icon-house-black.svg) 0 0 no-repeat;
    background-size: contain;
    vertical-align: -5%;
    margin-right: 10px;
}
.icon-eki {
    display: inline-block;
    width: 25px;
    height: 25px;
    background: url(../image/icon/icon-eki-black.svg) 0 0 no-repeat;
    background-size: contain;
    vertical-align: -20%;
    margin-right: 10px;
}
.icon-gaiyou {
  display: inline-block;
  width: 25px;
  height: 28px;
  background: url(../image/icon/icon-gaiyou-black.svg) 0 0 no-repeat;
  background-size: contain;
  vertical-align: -7.5%;
  margin-right: 10px;
}
.icon-kankyo {
    display: inline-block;
    width: 17px;
    height: 22px;
    background: url(../image/icon/icon-kankyo.svg) 0 0 no-repeat;
    background-size: contain;
    vertical-align: -12%;
    margin-right: 10px;
}
.icon-shousai {
    display: inline-block;
    width: 33px;
    height: 23px;
    background: url(../image/icon/icon-shousai.svg) 0 0 no-repeat;
    background-size: contain;
    vertical-align: -12%;
    margin-right: 10px;
}
@media (max-width: 767.98px) {
    .icon-people {
        width: 22px;
        height: 30px;
        margin-right: 12px;
        vertical-align: -25%;
    }
    .icon-eki {
        width: 22px;
        height: 22px;
        vertical-align: -20%;
    }
    .icon-gaiyou {
        width: 18px;
        height: 20px;
        vertical-align: -12%;
    }
    .icon-kankyo {
        width: 15px;
        height: 19px;
        vertical-align: -20%;
    }
    .icon-shousai {
        width: 25px;
        height: 17px;
        vertical-align: -17%;
    }
}

/* 1.1  Margin
 * ------------------------------*/
.mt00 { margin-top: 0 !important; }
.mt05 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt20 { margin-top: 20px !important; }
.mt30 { margin-top: 30px !important; }
.mt40 { margin-top: 40px !important; }
.mt50 { margin-top: 50px !important; }
.mt60 { margin-top: 60px !important; }
.mt70 { margin-top: 70px !important; }
.mt80 { margin-top: 80px !important; }

.mb00 { margin-bottom: 0 !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb80 { margin-bottom: 80px !important; }

@media (max-width: 767.98px) {
    .mt00-xs {
        margin-top: 0 !important;
    }
    .mt10-xs {
        margin-top: 10px !important;
    }
    .mt20-xs {
        margin-top: 20px !important;
    }
    .mt30-xs {
        margin-top: 30px !important;
    }
    .mt40-xs {
        margin-top: 40px !important;
    }
    .mt50-xs {
        margin-top: 50px !important;
    }
    .mt60-xs {
        margin-top: 60px !important;
    }
    .mt70-xs {
        margin-top: 70px !important;
    }
    .mt80-xs {
        margin-top: 80px !important;
    }
    .mb00-xs {
        margin-bottom: 0 !important;
    }
    .mb10-xs {
        margin-bottom: 10px !important;
    }
    .mb20-xs {
        margin-bottom: 20px !important;
    }
    .mb30-xs {
        margin-bottom: 30px !important;
    }
    .mb40-xs {
        margin-bottom: 40px !important;
    }
    .mb50-xs {
        margin-bottom: 50px !important;
    }
    .mb60-xs {
        margin-bottom: 60px !important;
    }
    .mb70-xs {
        margin-bottom: 70px !important;
    }
    .mb80-xs {
        margin-bottom: 80px !important;
    }
}

/* 1.2 Text
 * ------------------------------*/
p {
    line-height: 1.8;
}
.line-height18 {
    line-height: 1.8 !important;
}
.line-height2 {
    line-height: 2 !important;
}
.line-height235 {
    line-height: 2.35 !important;
}
.text-left {
    text-align: left !important;
}
.text-center {
    text-align: center !important;
}
.text-right {
    text-align: right !important;
}
@media (max-width: 767.98px) {
    p {
        line-height: 1.8 !important;
    }
    .line-height2,
    .line-height235 {
        line-height: 1.8 !important;
    }
     .text-left-xs {
        text-align: left !important;
    }
    .text-center-xs {
        text-align: center !important;
    }
    .text-right-xs {
        text-align: right !important;
    }
}

.letter-spacing00 {
    letter-spacing: 0 !important;
}
.letter-spacing10 {
    letter-spacing: 0.1em !important;
}
.letter-spacing20 {
    letter-spacing: 0.2em !important;
}
.letter-spacing30 {
    letter-spacing: 0.3em !important;
}
@media (max-width: 1199.98px) {
    .letter-spacing20,
    .letter-spacing30 {
        letter-spacing: 0.1em !important;
    }
}
@media (max-width: 767.98px) {
    .letter-spacing00-xs {
        letter-spacing: 0 !important;
    }
}

.txt-bb-gothic {
    font-family: 'Gothic Medium BBB', sans-serif !important;
}

.txt-roboto {
    font-family: 'Roboto', sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: 0.05em;
}
.txt-roboto.bold50 {
    font-weight: 500 !important;
}
.txt-roboto.bold70 {
    font-weight: 700 !important;
}
.txt-roboto.bold90 {
    font-weight: 900 !important;
}

.txt-red,
.txt-red a,
.txt-red a:hover {
    color: #f2142b !important;
}
.txt-green,
.txt-green a,
.txt-green a:hover {
    color: #197b88 !important;
}
.txt-white,
.txt-white a,
.txt-white a:hover {
    color: #fff !important;
}
.txt-black,
.txt-black a,
.txt-black a:hover {
    color: #000 !important;
}
.txt-gray,
.txt-gray a,
.txt-gray a:hover {
    color: #949494 !important;
}

a.txt-underline,
.txt-underline {
    text-decoration: underline !important;
}
a.txt-underline:hover {
    text-decoration: none !important;
}

/* fallback for IE */
.txt-clamp.line2 {
  display: block;
  overflow: hidden;
  line-height: 25px;
  height: 50px; /* 25px * 2 lines */
}
@supports (-webkit-line-clamp: 2) {
  .txt-clamp.line2 {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
}
@media (max-width: 767.98px) {
    .txt-clamp.line2 {
        line-height: 22px;
        height: 44px;
    }
}

.txt-clamp.line3 {
  display: block;
  overflow: hidden;
  line-height: 25px;
  height: 75px; /* 25px * 3 lines */
}
@supports (-webkit-line-clamp: 3) {
  .txt-clamp.line3 {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
}
@media (max-width: 767.98px) {
    .txt-clamp.line3 {
        line-height: 22px;
        height: 66px;
    }
}

.txt-clamp.line4 {
  display: block;
  overflow: hidden;
  line-height: 25px;
  height: 100px; /* 25px * 4 lines */
}
@supports (-webkit-line-clamp: 4) {
  .txt-clamp.line4 {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
  }
}
@media (max-width: 767.98px) {
    .txt-clamp.line4 {
        line-height: 22px;
        height: 88px;
    }
    .txt-clamp.line2-xs {
        display: block;
        overflow: hidden;
        line-height: 22px;
        height: 44px;
    }
}

.day {
    display: block;
    margin: 0;
    font-family: 'Gothic Medium BBB', sans-serif !important;
    color: #7e7e7e !important;
    font-size: 13px !important;
}
@media (max-width: 767.98px) {
    .day {
        font-size: 12px !important;
    }
}

.f10 { font-size: 10px !important; }
.f11 { font-size: 11px !important; }
.f12 { font-size: 12px !important; }
.f13 { font-size: 13px !important; }
.f14 { font-size: 14px !important; }
.f15 { font-size: 15px !important; }
.f16 { font-size: 16px !important; }
.f17 { font-size: 17px !important; }
.f18 { font-size: 18px !important; }
.f19 { font-size: 19px !important; }
.f20 { font-size: 20px !important; }
.f21 { font-size: 21px !important; }
.f22 { font-size: 22px !important; }
.f23 { font-size: 23px !important; }
.f24 { font-size: 24px !important; }
.f25 { font-size: 25px !important; }
@media (max-width: 991.98px) {
    .f18, .f19 {
        font-size: 16px !important;
    }
    .f20, .f21 {
        font-size: 17px !important;
    }
    .f22, .f23 {
        font-size: 18px !important;
    }
    .f24, .f25 {
        font-size: 20px !important;
    }
    .f13-sm {
        font-size: 13px !important;
    }
    .f12-sm {
        font-size: 12px !important;
    }
}
@media (max-width: 767.98px) {
    .f13, .f14 {
        font-size: 12px !important;
    }
    .f15, .f16 {
        font-size: 13px !important;
    }
    .f17, .f18 {
        font-size: 14px !important;
    }
    .f19, .f20, .f21 {
        font-size: 15px !important;
    }
    .f22, .f23, .f24, .f25 {
        font-size: 16px !important;
    }
    .f15-xs {
        font-size: 15px !important;
    }
    .f14-xs {
        font-size: 14px !important;
    }
    .f13-xs {
        font-size: 13px !important;
    }
    .f12-xs {
        font-size: 12px !important;
    }
}

/* 1.3 Titles and Subtitles
 * ------------------------------*/
h1, h2, h3, h4 {
    margin: 0;
    font-weight: 600;
    line-height: 1.5;
}

.section-ttl {
    margin: 0 0 20px;
    padding: 0;
    font-size: 35px;
    line-height: 1;
    letter-spacing: 0.05em;
    text-align: center;
    font-family: 'Roboto', sans-serif  !important;
    font-weight: 700;
}
.section-ttl div {
    padding: 0 10px 15px;
    display: inline-block;
    border-bottom: 1px solid #000;
}
.section-ttl div.white {
    border-color: #fff;
}
.section-ttl.ja {
    font-size: 18px;
    font-family: 'Midashi Go MB31', sans-serif !important;
}
.left-ttl .section-ttl {
    display: inline;
    margin-right: 20px;
}
.left-ttl .section-sub {
    display: inline;
    margin: 0;
}
.section-ttl.line {
    margin: 0 0 50px;
    padding: 0 0 20px;
    font-size: 19px;
    border-bottom: 1px solid #d5d5d5;
    text-align: left;
    font-family: 'Midashi Go MB31', sans-serif !important;
    font-weight: 600;
    letter-spacing: 0;
}
.section-sub {
    margin: 10px 0 70px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.1em;
    text-align: center;
}
@media (max-width: 991.98px) {
    .left-ttl {
        margin-left: 5px;
    }
}
@media (max-width: 767.98px) {
    .section-ttl {
        font-size: 25px;
    }
    .section-ttl.line {
        margin-bottom: 15px;
        font-size: 15px;
    }
    .section-ttl.ja {
        font-size: 15px;
    }
    .section-sub {
        margin-bottom: 40px;
        font-size: 13px;
    }
}

.sub {
    margin: 0;
    font-size: 43px;
    text-align: center;
    font-weight: 600;
}
.sub.large {
    margin-bottom: 40px;
    font-size: 46px;
}
.sub.small {
    font-size: 36px;
    margin-bottom: 30px;
}
.sub.ssmall {
    font-size: 27px;
    margin-bottom: 30px;
}
.sub .number {
    font-size: 61px;
    vertical-align:-5%;
}
@media (max-width: 1199.98px) {
    .sub {
        font-size: 26px;
    }
}
@media (max-width: 991.98px) {
    .sub {
        font-size: 30px;
    }
    .sub.large {
        font-size: 33px;
    }
    .sub.small {
        font-size: 30px;
    }
    .sub.ssmall {
        font-size: 25px;
    }
    .sub .number {
        font-size: 45px;
    }
}
@media (max-width: 767.98px) {
    .sub.large {
        font-size: 23px;
        margin-bottom: 20px;
    }
    .sub.small {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .sub.ssmall {
        font-size: 19px;
        margin-bottom: 20px;
    }
    .sub .number {
        font-size: 30px;
    }
}
@media (max-width: 320.98px) {
    .sub.large {
        font-size: 19px;
    }
    .sub.small {
        font-size: 18px;
    }
    .sub.ssmall {
        font-size: 17px;
    }
}

.subsub {
    margin: 0;
    font-size: 30px;
    text-align: center;
    font-weight: 600;
}
.subsub.en {
    letter-spacing: 0.05em;
    text-align: center;
    font-family: 'Roboto', sans-serif  !important;
    font-weight: 700;
}
.subsub.medium {
    font-size: 23px;
    line-height: 1.8;
}
.subsub.small {
    font-size: 20px;
}
@media (max-width: 1199.98px) {
    .subsub {
        font-size: 22px;
    }
}
@media (max-width: 991.98px) {
    .subsub {
        font-size: 25px;
    }
    .subsub.small {
        font-size: 18px;
    }
}
@media (max-width: 767.98px) {
    .subsub.medium {
        font-size: 15px;
    }
    .subsub.small {
        font-size: 15px;
    }
}

.sub-line {
    margin: 60px 0 15px;
    padding: 0 0 12px;
    font-size: 19px;
    border-bottom: 1px solid #d5d5d5;
    line-height: 1.6;
}
.sub-line.line-black {
    border-color: #292929;
}
.sub-line.large {
    margin-bottom: 30px;
    font-size: 28px;
}
@media (max-width: 767.98px) {
    .sub-line {
        margin-top: 30px;
        font-size: 14px;
    }
    .sub-line.large {
        margin-bottom: 15px;
        font-size: 16px;
    }
}

.sub-bg {
    max-width: 340px;
    background: #197b88;
    border-radius: 8px;
    color: #fff;
    font-size: 23px;
    box-sizing: border-box;
    padding: 11px 5px 10px;
    text-align: center;
    margin: 0 auto;
}
@media (max-width: 767.98px) {
    .sub-bg {
        font-size: 15px;
    }
}

.ttl-sub {
    margin: -20px 0 65px;
    padding-bottom: 10px;
    border-bottom: 2px solid #000;
    position: relative;
}
.ttl-sub.recommend {
    margin: -10px 0 100px;
    padding-right: 200px;
}
.ttl-sub .day {
    margin: 0 0 15px;
    font-size: 14px;
}
.ttl-sub .sub {
    font-size: 26px;
    margin: 12px 0 10px;
    text-align: left;
}
.ttl-sub .icon-news {
    vertical-align: 60%;
    margin-right: 20px;
}
.ttl-sub.news {
    margin-top: 0;
    margin-bottom: 50px;
}
.ttl-sub.news .day {
    /*margin-bottom: 10px;*/
    margin-bottom: -45px;
}
.ttl-sub.news .sub {
    margin-top: 0;
}
.ttl-sub.news a {
  text-decoration: none !important;
}
.ttl-sub.news a:hover {
  text-decoration: underline !important;
}
.ttl-sub .txt-back {
    display: block;
    position: absolute;
    bottom: 10px;
    right: 0;
    font-size: 12px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.ttl-sub .txt-back i {
    display: inline-block;
    margin-left: 5px;
}
.ttl-sub .txt-link-view {
  position: absolute;
  right: 0;
  top: -10px;
  margin: 0;
}
.ttl-sub .txt-link-view i {
  display: inline-block;
  margin-left: 5px;
  font-size: 12px;
  vertical-align: 6%;
}
.ttl-sub .txt-link-view a {
  text-decoration: none !important;
}
.ttl-sub .txt-link-view a:hover {
  text-decoration: underline !important;
}
@media (max-width: 991.98px) {
    .ttl-sub.recommend {
        margin-bottom: 65px;
    }
    .ttl-sub .sub {
        font-size: 22px;
    }
    .ttl-sub.news .day {
        margin-bottom: -35px;
    }
}
@media (max-width: 767.98px) {
    .ttl-sub {
        margin-top: -10px;
        padding-bottom: 3px;
        margin-bottom: 28px;
        border-width: 1px;
    }
    .ttl-sub.recommend {
        margin: 0 0 28px;
        padding-top: 10px;
        padding-right: 0;
    }
    .ttl-sub .icon-news {
        position: absolute;
        top: 1px;
        left: 80px;
        margin: 0;
    }
    .ttl-sub.news {
        margin-top: -20px;
        margin-bottom: 28px;
    }
    .ttl-sub .day {
        margin-bottom: 0;
        font-size: 13px;
    }
    .ttl-sub.news .day {
        margin-bottom: -20px;
    }
    .ttl-sub .sub {
        font-size: 16px;
        margin: 8px 0 10px;
    }
    .ttl-sub .txt-back {
        position: relative;
        top: 0;
        text-align: right;
        font-size: 11px;
        margin-top: 10px;
    }
    .ttl-sub .txt-link-view {
        top: -7px;
    }
}

.ttl-keyword {
    margin: -35px 0 90px;
    font-size: 13px;
    color: #7e7e7e;
}
.ttl-keyword .sub-keyword {
    height: 15px;
    background: url(../image/icon/icon-search-dark.svg) left center no-repeat;
    background-size: 15px 15px;
    font-size: 13px;
    padding-left: 20px;
    margin-right: 15px;
}
.ttl-keyword span {
    display: inline-block;
    line-height: 1;
    margin-right: 8px;
}
.ttl-keyword span a {
    display: block;
    color: #7e7e7e;
    padding: 8px 10px 7px;
    background: #e9e9e9;
}
.ttl-keyword span a:hover {
    color: #7e7e7e;
}
@media (max-width: 767.98px) {
    .ttl-keyword {
        margin: -10px 0 30px;
        font-size: 12px;
    }
    .ttl-keyword .sub-keyword {
        display: block;
        background-size: 13px 13px;
        font-size: 12px;
        margin-bottom: 10px;
    }
    .ttl-keyword span {
        margin-bottom: 5px;
        margin-right: 5px;
    }
    .ttl-keyword span a {
        padding: 8px 10px;
    }
}

/* 1.4 Tables
 * ------------------------------*/
table {
    width: 100%;
    border-collapse: collapse;
	border-spacing: 0;
	margin: 0 auto;
	border: 1px solid #adadad;
}
table th {
	padding: 10px;
	vertical-align: middle;
	font-weight: normal;
	border-bottom: 1px solid #adadad;
	border-right: 1px solid #adadad;
	background: #eaeaea;
}
table td {
	padding: 10px;
	vertical-align: middle;
	border-bottom: 1px solid #adadad;
	border-right: 1px solid #adadad;
}

.dl-table {
    margin: 10px 0 0;
}
.dl-table dl {
  width: 100%;
  display: table;
  border-top: 1px solid #adadad;
  border-bottom: 1px solid #adadad;
  margin: 0;
  font-family: 'Gothic Medium BBB', sans-serif !important;
}
.dl-table dl + dl {
  border-top: none;
}
.dl-table dl dt,
.dl-table dl dd {
  display: table-cell;
  padding: 15px 20px;
}
.dl-table dl dt {
    width: 28%;
    background-color: #eaeaea;
    font-weight: 400;
    vertical-align: middle;
}
.dl-table dl dd {
    width: 72%;
    vertical-align: middle;
}
@media (max-width: 767.98px) {
    .dl-table {
        margin-top: 0;
    }
  .dl-table dl {
    display: block;
  }
  .dl-table dl dt,
  .dl-table dl dd {
    display: block;
    width: 100%;
    padding: 5px 10px;
  }
  .dl-table dl.bd-none {
    border-bottom: none;
    }
}

/* 1.5 Breadcrumb
 * ------------------------------*/
#breadcrumb {
    margin: 0;
    position: absolute;
    left: 40px;
    bottom: 20px;
    font-size: 13px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.h-auto #breadcrumb {
    bottom: -40px;
}
@media (max-width: 767.98px) {
    #breadcrumb {
        display: none;
    }
}

#breadcrumb ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
    color: #fff;
}
#breadcrumb ul li {
    display: inline-block;
}
#breadcrumb ul li:after {
    padding: 0 6px 0 10px;
    content: ">";
}
#breadcrumb ul li:last-of-type:after {
    content: "";
}
#breadcrumb ul li a {
    color: #fff;
}
#breadcrumb ul li a:hover {
    color: #ccc;
    text-decoration: none;
}
.bg-white #breadcrumb ul,
.bg-white #breadcrumb ul li a {
    color: #000;
}

/* 1.6 Buttons
 * ------------------------------*/
.btn {
    display: block;
    width: 100%;
    max-width: 200px;
    margin: 60px auto 0;
    border-radius: 0;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    padding: 20px 10px;
    box-sizing: border-box;
    position: relative;
    border: 2px solid #000;
    color: #000;
    background: inherit;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.05em;
    outline: none;
    transition: all .3s;
    cursor: pointer;
    overflow: hidden;
    z-index: 1;
    text-decoration: none;
}
.btn.large {
    max-width: 300px;
}
.btn.h-small {
    padding: 15px 10px 14px;
}
.btn::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #000;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  -webkit-transform: translateX(110%);
  transform: translateX(110%);
  z-index: -1;
}
.btn:hover::before {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
.btn:hover,
.btn:focus,
.btn:active {
  color: #fff !important;
  text-decoration: none;
}
.btn:focus {
    outline: none;
    overflow: hidden;
    text-decoration: none;
}
.btn.ja {
    font-size: 15px;
    font-family: 'Midashi Go MB31', sans-serif !important;
}
.btn.bg-white {
    background: #fff;
}
.btn.white {
    border-color: #fff;
    color: #fff;
}
.btn.white::before {
    background: #fff;
}
.btn.white:hover,
.btn.white:focus,
.btn.white:active {
  color: #000 !important;
}
@media (max-width: 767.98px) {
    .btn {
        max-width: 180px;
        padding: 18px 10px;
        margin-top: 40px;
    }
    .btn.ja {
        font-size: 14px;
    }
    .btn.h-small {
        padding: 12px 10px;
    }
}

.btn i {
    font-size: 12px;
    display: block;
    vertical-align: 0%;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    margin: 0;
}

.btn-small {
    display: block;
    max-width: 97px;
    margin: 25px auto 0;
    border-radius: 0;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    padding: 0 10px 5px;
    box-sizing: border-box;
    position: relative;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    border-bottom: 1px solid #000;
    color: #000;
    background: inherit;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.05em;
    outline: none;
    transition: all .3s;
    text-align: center;
    text-decoration: none;
}
.btn-small::before,
.btn-small::after {
  position: absolute;
  top: -2px;
  right: -2px;
  bottom: -1px;
  left: -2px;
  z-index: 2;
  content: '';
  transition: all .3s;
}
.btn-small::before {
  border-bottom: 1px solid #197b88  !important;
  transform: scale(0, 1);
}
.btn-small::after {
  display: none;
}
.btn-small:hover,
.btn-small:focus,
.btn-small:active {
  color: #197b88 !important;
  text-decoration: none;
}
.btn-small:hover::after,
.btn-small:hover::before {
  transform: scale(1)  !important;
}
.btn-small:focus {
    outline: none;
    overflow: hidden;
    text-decoration: none;
}

.btn-small i {
    font-size: 12px;
    display: inline-block;
    vertical-align: -47%;
    margin-left: 10px;
    transform: translateY(-50%);
}
.btn-small.absolute-right {
    position: absolute;
    margin: 0;
    right: 65px;
    top: 50px;
}
.btn-small.absolute-bottom {
    display: block;
    width: 97px;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 30px;
}
@media (max-width: 991.98px) {
    .btn-small.relative-xs {
        position: relative !important;
        top: 0;
        right: 0;
        left: 0;
        margin: 25px auto 15px;
    }
}

.btn-small.white {
    border-color: #fff;
    color: #fff;
}
.btn-small.white::before,
.btn-small.white::after {
    border-color: #fff;
}

.btn-small.black-hover::before,
.btn-small.black-hover::after {
    border-color: #000 !important;
}
.btn-small.black-hover:hover,
.btn-small.black-hover:focus,
.btn-small.black-hover:active {
  color: #000 !important;
}

.btn-small.white-hover::before,
.btn-small.white-hover::after {
    border-color: #fff !important;
}
.btn-small.white-hover:hover,
.btn-small.white-hover:focus,
.btn-small.white-hover:active {
  color: #fff !important;
}

.btn-link-wrap {
    background: #fff;
    margin: 0 0 4.5rem;
    padding: 25px 60px;
    border-top: 2px solid #dfdfdf;
    border-bottom: 2px solid #dfdfdf;
}
.btn-link-wrap ul {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    margin: 0 auto;
}
.btn-link-wrap ul li {
    width: 25%;
    text-align: center;
    box-sizing: border-box;
    padding: 0 10px;
}
.btn-link-wrap ul li a {
    display: block;
    background: #197b88;
    padding: 10px;
    color: #fff;
    font-size: 18px;
    border: 2px solid #197b88;
    border-radius: 8px;
    position: relative;
    outline: none;
    transition: all .3s;
    cursor: pointer;
    overflow: hidden;
    z-index: 1;
}
.btn-link-wrap ul li a::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fff;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    -webkit-transform: translateX(110%);
    transform: translateX(110%);
    z-index: -1;
}
.btn-link-wrap ul li a:hover::before {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}
.btn-link-wrap ul li a:hover,
.btn-link-wrap ul li a:focus,
.btn-link-wrap ul li a:active {
    color: #197b88 !important;
    text-decoration: none;
}
.btn-link-wrap ul li.favorite a i {
    display: inline-block;
    margin-right: 5px;
    font-size: 24px;
    color: #197b88;
    vertical-align: -11%;
}
.btn-link-wrap ul li.favorite a {
    background: #fff;
    border-color: #dfdfdf;
    color: #000;
}
.btn-link-wrap ul li.favorite a:hover {
    background: #f1f1f1;
}
@media (max-width: 1199.98px) {
    .btn-link-wrap {
        padding: 25px 40px;
    }
    .btn-link-wrap ul li a {
        font-size: 15px;
    }
    .btn-link-wrap ul li.favorite a i {
        font-size: 18px;
    }
}
@media (max-width: 991.98px) {
    .btn-link-wrap {
        padding: 25px 10px;
    }
    .btn-link-wrap ul li {
        padding: 0 7px;
    }
    .btn-link-wrap ul li a {
        font-size: 13px;
        padding: 10px 5px;
    }
    .btn-link-wrap ul li.favorite a i {
        font-size: 16px;
    }
}
@media (max-width: 767.98px) {
    .btn-link-wrap {
        margin-bottom: 2rem;
        padding: 20px 0 10px;
    }
    .btn-link-wrap ul li {
        width: 50%;
        padding: 0 2px 10px;
    }
    .btn-link-wrap ul li a {
        font-size: 12px;
    }
    .btn-link-wrap ul li.favorite a i {
        font-size: 15px;
    }
}
@media (max-width: 320.98px) {
    .btn-link-wrap ul li a {
        font-size: 10px;
    }
    .btn-link-wrap ul li.favorite a i {
        font-size: 14px;
    }
}

.btn-waku {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    margin: 0 auto;
    width: 100%;
    height: 100px;
    margin: 0 auto;
    border-radius: 8px;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.8;
    padding: 0 10px;
    box-sizing: border-box;
    position: relative;
    border: 4px solid #000;
    color: #000;
    background: #fff;
    outline: none;
    transition: all .3s;
    cursor: pointer;
    overflow: hidden;
    z-index: 1;
    text-decoration: none;
    text-align: center;
}
.btn-waku::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #000;
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  -webkit-transform: translateX(110%);
  transform: translateX(110%);
  z-index: -1;
}
.btn-waku:hover::before {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
.btn-waku:hover {
  color: #fff;
  text-decoration: none;
}
.btn-waku:focus {
    outline: none;
    overflow: hidden;
    text-decoration: none;
}
.btn-waku .f12 {
    display: block;
    width: 100%;
}
@media (max-width: 767.98px) {
    .btn-waku {
        font-size: 15px;
        height: 60px;
        border-width: 3px;
    }
}

/* 1.7 Lists
 * ------------------------------*/
dl.dl-list {
    width: 100%;
    display: table;
    margin: 0;
    padding: 0;
}
dl.dl-list dt {
    width: 25%;
    display: table-cell;
    padding: 20px 10px;
    vertical-align: top;
}
dl.dl-list dd {
    width: 75%;
    display: table-cell;
    padding: 20px 10px;
    vertical-align: top;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
@media only screen and (max-width: 767px) {
    dl.dl-list dt,
    dl.dl-list dd {
        display: block;
        width: 100% !important;
        padding: 10px 0;
    }
}

ul.list-base {
    line-height: 1.9;
}
ul.list-base li {
    margin-bottom: 2px;
}

ul.disc-list {
    list-style: disc;
    margin: 0 0 10px 25px;
}

ol.ol-list {
    padding: 0;
    margin: 0 0 10px 22px;
    line-height: 1.9;
}

/* 1.8 Other Elements
 * ------------------------------*/
/* 1.8.1 plugins ------------*/
.googlemap {
    margin: 0 0 8rem;
}
.googlemap.event {
  margin-top: -55px;
  margin-bottom: 90px;
}
.googlemap iframe {
    width: 100%;
	margin: 0;
	padding: 0;
}
.txt-map {
    display: inline-block;
    margin: 10px 0 0 !important;
    float: right;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.txt-map.left {
    float: none;
}
.googlemap.event p.txt-map {
  margin-top: 10px !important;
}
.txt-map a {
    display: block;
    border-radius: 30px;
    padding: 3px 20px;
    font-size: 11px;
    border: 1px solid #bfbfbf;
    text-align: center;
    text-decoration: none !important;
}
.txt-map a:hover {
    text-decoration: none;
    background: #f1f1f1;
    transition: 0.5s;
}
@media (max-width: 767.98px) {
	.googlemap {
	    margin-bottom: 4rem;
		position: relative;
		padding-bottom: 75%;
		height: 0;
		overflow: hidden;
	}
	.googlemap.event {
	    margin-top: 0;
	    margin-bottom: 45px;
	}
	.googlemap iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
	}
}

.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.movie-box {
    margin: 50px auto 40px;
}
ul.movie-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: flex-start;
    align-content: flex-start;
    margin: 0 auto;
}
ul.movie-list li {
    width: 50%;
    padding: 0 8px;
    margin: 0 0 18px;
    text-align: center;
    box-sizing: border-box;
}
ul.movie-list li:nth-of-type(odd) {
    padding-left: 3px;
}
ul.movie-list li:nth-of-type(even) {
    padding-right: 3px;
}
ul.movie-list li:only-of-type {
    width: 100%;
    flex-grow: 1;
    padding: 0;
}
ul.movie-list li .movie {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
ul.movie-list li .movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
ul.movie-list li:only-of-type .movie {
    padding-top: 0;
}
ul.movie-list li:only-of-type .movie iframe {
    position: relative;
    width: 65%;
    height: 450px;
}
@media (max-width: 767.98px) {
    .movie-box {
      margin: 30px auto 10px;
    }
    ul.movie-list li {
      width: 100%;
      padding: 0 !important;
      margin-bottom: 20px;
    }
    ul.movie-list li .movie {
      position: relative !important;
      width: 100% !important;
      padding-top: 56.25% !important;
    }
    ul.movie-list li .movie iframe {
      position: absolute !important;
      top: 0 !important;
      right: 0 !important;
      width: 100% !important;
      height: 100% !important;
    }
}

.fb_iframe_widget, .fb_iframe_widget span, .fb_iframe_widget span iframe[style] {
  width: 100% !important;
}
.fb_iframe_widget {
  margin: 20px 0;
}

/* 1.8.2 page top ------------*/
#pagetop {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 24px;
    width: 44px;
    height: 44px;
    border-radius: 22px;
    z-index: 1000;
    transition: background-color 400ms;
    background: rgba(0,0,0,0.7) url(../image/pagetop.png) 50% 45% no-repeat;
    text-indent: 100% !important;
	white-space: nowrap;
	overflow: hidden;
}
#pagetop:hover {
    cursor: pointer;
    background: rgba(0,0,0,1) url(../image/pagetop.png) 50% 45% no-repeat;
}
@media (max-width: 767.98px) {
    #pagetop {
        width: 40px;
        height: 40px;
        border-radius: 20px;
        right: 16px;
    }
}

/* 1.8.3 accordion ------------*/
.accordion-box {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    margin: 0;
}
.accordion-ttl {
    cursor: pointer;
}
.accordion-txt {
    display: none;
}

/* 1.8.4 modal ------------*/
.modal-cont {
    width: 850px;
    margin: 0;
    padding: 30px 0;
    box-sizing: border-box;
    overflow-x: hidden;
}
.modal-cont.recruit {
    width: 580px;
    margin: 0;
    padding: 40px 0 30px;
    box-sizing: border-box;
    overflow-x: hidden;
}
@media (max-width: 991.98px) {
    .modal-cont {
        width: auto;
        padding: 30px 0 20px;
    }
    .modal-cont.recruit {
        width: 500px;
    }
}
@media (max-width: 767.98px) {
    .modal-cont.recruit {
        width: auto;
        padding: 30px 0 20px;
    }
}

.modal-cont .sub {
    margin: 0 0 20px;
    padding: 0 0 15px;
    font-size: 22px;
    line-height: 1.5;
    text-align: center;
    border-bottom: 2px solid #000;
}
.modal-cont.recruit .sub {
    margin-bottom: 30px;
}
.modal-cont.recruit .sub span {
    display: inline-block;
    margin-left: 10px;
    font-size: 16px;
}
.modal-cont.recruit .sub span.year {
    margin-left: 20px;
}
.modal-cont .txt-box {
    margin: 0 40px;
    border-bottom: 2px solid #000;
}
.modal-cont .txt {
    height: 300px;
    padding: 0 10px 10px;
    overflow-x: hidden;
    overflow-y: scroll;
    box-sizing: border-box;
}
.modal-cont.recruit .txt {
    height: 550px;
    padding: 0 40px 10px;
}
.modal-cont.recruit p {
    margin: 20px 0 0;
    text-align: justify;
    text-justify: inter-ideograph;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.modal-cont.recruit img + p {
    margin-top: 30px;
}
@media (max-width: 767.98px) {
    .modal-cont .sub {
        margin-bottom: 15px;
        font-size: 18px;
    }
    .modal-cont.recruit .sub {
        padding-bottom: 10px;
        margin-bottom: 15px;
        font-size: 16px;
    }
    .modal-cont.recruit .sub span {
        font-size: 13px;
    }
    .modal-cont.recruit .sub span.year {
        display: block !important;
        margin-left: 0;
    }
    .modal-cont .txt-box {
        height: auto !important;
        margin: 0 20px;
    }
    .modal-cont.recruit .txt {
        height: auto;
        padding: 0 10px 10px;
    }
    .modal-cont.recruit p {
        margin-top: 10px;
    }
    .modal-cont.recruit img + p {
        margin-top: 15px;
    }
}

.modal-cont .txt::-webkit-scrollbar {
    width: 5px;
}
.modal-cont .txt::-webkit-scrollbar-track {
    -webkit-border-radius: 10px;
    border-radius: 10px;
}
.modal-cont .txt::-webkit-scrollbar-thumb {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    background: #197b88;
}
.modal-cont .txt::-webkit-scrollbar-thumb:window-inactive {
	background: #197b88;
}

.modal-cont .modal-search-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.modal-cont .modal-search-list li {
    width: 20%;
}
.modal-cont .btn-submit {
    max-width: 200px;
    margin: 30px auto 0;
}
@media (max-width: 767.98px) {
    .modal-cont .modal-search-list li {
        width: 50%;
    }
    .modal-cont .btn-submit {
        max-width: 180px;
        margin-top: 30px;
    }
}

/*--- Color Box ---*/
#colorbox, #cboxOverlay, #cboxWrapper {
    z-index: 10200 !important;
}

#cboxOverlay {
    background: rgba(0,0,0,0.8);
}

#cboxLoadedContent {
    border: none;
}

#cboxPrevious {
  	background:url(../image/arrow-prev-white.svg) no-repeat top left;
  	width: 12px;
    height: 23px;
  	margin-top:-11px;
}
#cboxNext {
  	background:url(../image/arrow-next-white.svg) no-repeat top left;
  	width: 12px;
    height: 23px;
  	margin-top:-11px;
}
#cboxPrevious:focus,
#cboxNext:focus {
  outline: none;
  overflow: hidden;
  text-decoration: none;
}
#works-page #cboxPrevious {
  	background-image:url(../image/arrow-prev.svg) !important;
  	width: 15px;
    height: 28px;
  	margin-top:-14px;
  	left: 10px;
}
#works-page #cboxNext {
  	background-image:url(../image/arrow-next.svg) !important;
  	width: 15px;
    height: 28px;
  	margin-top:-14px;
  	right: 10px;
}
@media (max-width: 767.98px) {
    #works-page #cboxPrevious,
    #works-page #cboxNext {
        width: 12px;
        height: 23px;
        margin-top:-11px;
    }
}

#cboxClose {
    width: 17px;
    height: 17px;
    top: 12px;
    right: 12px;
    outline: none;
    background: url(../image/icon/icon-close.svg) 0 0 no-repeat;
    background-size: 17px 17px;
}
#cboxClose:hover {
    opacity: 0.7;
    transition: 0.7s;
}
#works-page #cboxClose {
  	background-image: url(../image/icon/icon-close-black.svg);
}

/*--- modaal ---*/
.modaal-inner-wrapper {
  padding: 0 !important;
}
.modaal-container {
  max-width: 600px !important;
  background: transparent !important;
}
.modal-cont.recruit {
  background: #fff !important;
  margin: 0 auto !important;
}
@media (max-width: 991.98px) {
  .modaal-container {
    max-width: 520px !important;
  }
}
@media (max-width: 767.98px) {
  .modaal-container {
    max-width: 60vw !important;
  }
  .modal-cont.recruit .txt {
    height: 70vh !important;
  }
}
@media (max-width: 480.98px) {
  .modaal-container {
    max-width: 98vw !important;
  }
  .modal-cont.recruit .txt {
    height: 70vh !important;
  }
}

/* 1.8.5 slideshow ------------*/
.grid-gallery ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.grid-gallery figure {
	margin: 0;
}

.grid-gallery figure img {
	display: block;
	width: 100%;
}

.grid-gallery figcaption p {
	margin: 0;
}

.grid {
	margin: 0;
}

.grid li {
	cursor: pointer;
}

.slideshow {
	position: fixed;
	background: rgba(0,0,0,0.7);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 21000 !important;
	opacity: 0;
	visibility: hidden;
	overflow: hidden;
	-webkit-perspective: 1000px;
	perspective: 1000px;
	-webkit-transition: opacity 0.5s, visibility 0s 0.5s;
	transition: opacity 0.5s, visibility 0s 0.5s;
}

.slideshow-open .slideshow {
	opacity: 1;
	visibility: visible;
	-webkit-transition: opacity 0.5s;
	transition: opacity 0.5s;
}

.slideshow ul {
	width: 100%;
	height: 100%;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-transform: translate3d(0,0,150px);
	transform: translate3d(0,0,150px);
	-webkit-transition: -webkit-transform 0.5s;
	transition: transform 0.5s;
}

.slideshow ul.animatable li {
	-webkit-transition: -webkit-transform 0.5s;
	transition: transform 0.5s;
}

.slideshow-open .slideshow ul {
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

.slideshow li {
	width: 900px;
	height: 470px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -235px 0 0 -450px;
	visibility: hidden;
}
@media (max-width: 1199.98px) {
    .slideshow li {
        width: 700px;
        margin-left: -350px;
    }
}
@media (max-width: 991.98px) {
    .slideshow li {
        width: 550px;
        margin-left: -275px;
    }
}
@media (max-width: 767.98px) {
	.slideshow li {
	    margin: 0;
		width: 75%;
		height: 85%;
		top: 50px;
		left: 0;
		right: 0;
		margin: auto;
	}
}

.slideshow li .txt-area {
    height: 460px;
    padding: 30px 20px 80px 0;
    margin: 0;
    overflow: scroll;
    overflow-x: hidden;
}
.slideshow li .txt-area p {
    margin: 0 0 10px;
    line-height: 1.7;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.slideshow li .txt-area .btn {
    margin: 20px auto 0;
    padding: 14px 10px;
}
.slideshow li .txt-area ul li {
    width: auto;
    height: auto;
    position: relative;
    top: 0;
    left: 0;
    margin: 0;
    visibility: visible;
    color: #000 !important;
    list-style-type: disc !important;
}
.slideshow li .txt-area {
  scrollbar-base-color: #000;
}
.slideshow li .txt-area::-webkit-scrollbar {
  width: 3px;
  height: auto;
}
.slideshow li .txt-area::-webkit-scrollbar-track {
  background: #fff;
  -webkit-border-radius: 10px;
  border-radius: 10px;
}
.slideshow li .txt-area::-webkit-scrollbar-thumb {
    background: #000;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}
@media (max-width: 1199.98px) {
    .slideshow li .txt-area p {
        font-size: 13px;
    }
}
@media (max-width: 991.98px) {
    .slideshow li .txt-area {
        padding-right: 10px;
        padding-bottom: 30px;
    }
}
@media (max-width: 767.98px) {
    .slideshow li .txt-area {
        height: auto;
        padding: 0;
    }
    .slideshow li .txt-area p {
        font-size: 11px;
        margin-bottom: 5px;
    }
    .slideshow li .txt-area .btn {
        padding: 10px;
    }
}
@media (max-width: 320.98px) {
    .slideshow li .txt-area {
        height: 300px;
    }
}

.slideshow li.show {
	visibility: visible;
}

.slideshow li:after {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(255,255,255,0.8);
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}

.slideshow li.current:after {
	visibility: hidden;
	opacity: 0;
	-webkit-transition: opacity 0.3s, visibility 0s 0.3s;
	transition: opacity 0.3s, visibility 0s 0.3s;
}

.slideshow figure {
	width: 100%;
	height: 100%;
	background: #fff;
	border: 30px solid #fff;
	overflow: hidden;
	display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}
.slideshow figure img {
    width: 420px;
    height: auto;
}
@media (max-width: 1199.98px) {
    .slideshow figure img {
        width: 320px;
    }
}
@media (max-width: 991.98px) {
    .slideshow figure {
        border: 20px solid #fff;
    }
    .slideshow figure img {
        width: 255px;
    }
}
@media (max-width: 767.98px) {
     .slideshow figure {
        display: block;
        border: 15px solid #fff;
    }
	.slideshow figure img {
		width: auto;
		margin: 0 auto;
		max-width: 100%;
	}
}

.slideshow figcaption {
    width: 420px;
    float: right;
	padding: 0 0 0 30px;
	box-sizing: border-box;
	position: relative;
}
.slideshow figcaption .logo {
    width: auto;
    height: 100px;
}
@media (max-width: 1199.98px) {
    .slideshow figcaption {
        width: 320px;
        padding-left: 20px;
    }
}
@media (max-width: 991.98px) {
    .slideshow figcaption {
        width: 255px;
    }
    .slideshow figcaption .logo {
        height: 80px;
    }
}
@media (max-width: 767.98px) {
    .slideshow figcaption {
        width: 100%;
        padding: 15px 0;
        float: none;
    }
    .slideshow figcaption .logo {
        height: 60px;
    }
}

.slideshow figcaption .sub {
    margin: 6px auto 12px;
    text-align: center;
    font-size: 25px;
    font-weight: 600;
    line-height: 1.5;
}
@media (max-width: 1199.98px) {
    .slideshow figcaption .sub {
        font-size: 20px;
    }
}
@media (max-width: 991.98px) {
    .slideshow figcaption .sub {
        font-size: 17px;
    }
}
@media (max-width: 767.98px) {
    .slideshow figcaption .sub {
        margin: 10px auto;
        font-size: 14px;
    }
}

/* Navigation */
.slideshow nav span {
	position: fixed;
	z-index: 1000;
	color: #59656c;
	text-align: center;
	padding: 2%;
	cursor: pointer;
	font-size: 2em;
}

.slideshow nav span.nav-prev,
.slideshow nav span.nav-next {
	top: 0;
	bottom: 0;
	margin: auto;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.slideshow nav span.nav-prev {
  left: 10%;
  width: 2px;
  height: 2px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}

.slideshow nav span.nav-next {
  right: 10%;
  width: 2px;
  height: 2px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media (max-width: 991.98px) {
    .slideshow nav span.nav-prev {
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }
    .slideshow nav span.nav-next {
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }
}
@media (max-width: 767.98px) {
    .slideshow nav span.nav-prev {
        left: 8.3%;
    }
    .slideshow nav span.nav-next {
        right: 8.3%;
    }
}

.slideshow nav span.nav-close {
    /*width: 28px;
    height: 28px;
    border-radius: 14px;
	top: 17%;
	right: 13%;
	padding: 0;
	background-color: #c2c2c2;*/
	top: 13%;
	right: 8.5%;
	padding: 0.5em 1em;
	color: #31373a;
}
.slideshow nav span.nav-close::before {
  content: "";
  position: absolute;
  /*top: 13px;
  right: 6px;
  width: 16px;
  height: 2px;*/
  top: 20px;
  right: 20px;
  width: 20px;
  height: 3px;
  background-color: #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.slideshow nav span.nav-close::after {
  content: "";
  position: absolute;
  /*top: 13px;
  right: 6px;
  width: 16px;
  height: 2px;*/
  top: 20px;
  right: 20px;
  width: 20px;
  height: 3px;
  background-color: #fff;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
@media (max-width: 1199.98px) {
    .slideshow nav span.nav-close {
        top: 18%;
    }
}
@media (max-width: 991.98px) {
    .slideshow nav span.nav-close {
        top: 13%;
        right: 60px;
    }
}
@media (max-width: 767.98px) {
	.slideshow nav span.nav-close {
	    top: 35px;
	    right: 0;
	}
	.slideshow nav span.nav-close::before {
	    height: 2px;
	}
	.slideshow nav span.nav-close::after {
	    height: 2px;
	}
}

/*-------------------------------
 * 2. HEADER
 * ----------------------------*/
header {
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 100;
    -webkit-animation: fadeIn 1s linear both;
    animation: fadeIn 1s linear both;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

header {
    display: block;
    margin: 0;
    position: fixed;
    top: 40px;
    left: 40px;
    z-index: 200;
}
header .logo-box {
    width: 210px;
    height: 300px;
    -webkit-transition: width .44s cubic-bezier(.3, .74, .5, .93) 0s, height .44s cubic-bezier(.3, .74, .5, .93);
    transition: width .44s cubic-bezier(.3, .74, .5, .93) 0s, height .44s cubic-bezier(.3, .74, .5, .93);
}
header .logo-box .logo {
    height: 150px;
    background: #197b88;
    margin: 0;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
}
header .logo-box .logo a {
    display: block;
    width: 210px;
    height: 150px;
    box-sizing: border-box;
    padding-top: 25px;
}
header .logo-box .logo a:hover {
    background: #005d6a;
    transition: 0.7s;
}
header .logo-box .logo img {
    display: block;
    width: 110px;
    height: 95px;
}
header .logo-box .txt {
    height: 150px;
    background: #fff;
    box-sizing: border-box;
    padding: 26px 10px;
}
header .logo-box h1 {
    font-size: 12px;
    line-height: 2;
    text-align: center;
}
@media (max-width: 991.98px) {
    header {
        position: absolute;
        top: 15px;
        left: 15px;
    }
    header .logo-box {
        width: 100px;
        height: 100px;
    }
    header .logo-box .logo {
        height: 100px;
    }
    header .logo-box .logo a {
        width: 100px;
        height: 100px;
        padding-top: 21px;
    }
    header .logo-box .logo img {
        width: 65px;
        height: 56px;
    }
    header .logo-box .txt {
        display: none;
    }
}
@media (max-width: 767.98px) {
    header .logo-box {
        width: 90px;
        height: 90px;
    }
    header .logo-box .logo {
        height: 90px;
    }
    header .logo-box .logo a {
        width: 90px;
        height: 90px;
        padding-top: 17px;
    }
    header .logo-box .logo img {
        width: 62px;
        height: 53px;
    }
}

header.smaller {
    display: block;
    margin: 0;
    position: fixed;
    top: 40px;
    left: 40px;
    z-index: 200;
}
header.smaller .logo-box {
    width: 100px;
    height: 100px;
    -webkit-transition: width .24s cubic-bezier(.3, .74, .5, .93) 0s, height .24s cubic-bezier(.3, .74, .5, .93) .04s;
    transition: width .24s cubic-bezier(.3, .74, .5, .93) 0s, height .24s cubic-bezier(.3, .74, .5, .93) .04s;
}
header.smaller .logo-box .logo {
    height: 100px;
}
header.smaller .logo-box .logo a {
    width: 100px;
    height: 100px;
    padding-top: 21px;
}
header.smaller .logo-box .logo img {
    width: 65px;
    height: 56px;
}
header.smaller .logo-box .txt {
    opacity: 0;
    display: none;
}
@media (max-width: 991.98px) {
    header.smaller {
        position: absolute;
        top: 15px;
        left: 15px;
    }
}

/* 2.1 Main Nav
 * ------------------------------*/
/* 2.1.1 main nav ------------*/
#main-menu {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10100 !important;
}

#nav-container {
    margin-left: auto;
    position: relative;
}

#nav-toggle {
    display: block;
    width: 56px;
    height: 56px;
    cursor: pointer;
    position: absolute;
    top: 30px;
    right: 30px;
    border-radius: 50%;
    -webkit-animation: fadeIn 1s linear both;
    animation: fadeIn 1s linear both;
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s;
}
#bgwhite-full-page #nav-toggle {
    top: 40px;
    right: 40px;
}
@media (max-width: 767.98px) {
    #bgwhite-full-page #nav-toggle {
        top: 25px;
        right: 25px;
    }
}

#nav-toggle .inner {
    position: relative;
    padding: 15px 12px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    box-sizing: border-box;
}

#nav-toggle .border {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
}
#nav-toggle .border:before {
    content: '';
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 3px solid #fff;
    border-radius: 50%;
    -webkit-transition: border-width .6s cubic-bezier(.18, .83, .36, 1.28), opacity .6s cubic-bezier(.18, .83, .36, 1.28) .02s, -webkit-transform .6s cubic-bezier(.18, .83, .36, 1.28);
    transition: border-width .6s cubic-bezier(.18, .83, .36, 1.28), opacity .6s cubic-bezier(.18, .83, .36, 1.28) .02s, -webkit-transform .6s cubic-bezier(.18, .83, .36, 1.28);
    transition: transform .6s cubic-bezier(.18, .83, .36, 1.28), border-width .6s cubic-bezier(.18, .83, .36, 1.28), opacity .6s cubic-bezier(.18, .83, .36, 1.28) .02s;
    transition: transform .6s cubic-bezier(.18, .83, .36, 1.28), border-width .6s cubic-bezier(.18, .83, .36, 1.28), opacity .6s cubic-bezier(.18, .83, .36, 1.28) .02s, -webkit-transform .6s cubic-bezier(.18, .83, .36, 1.28);
}
#nav-toggle .border:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    border-radius: 50%;
    -webkit-transition: all .1s cubic-bezier(.18, .83, .36, 1.28);
    transition: all .1s cubic-bezier(.18, .83, .36, 1.28);
}
#nav-toggle .border2 {
    background: #197b88;
    display: block;
    position: absolute;
    left: -25%;
    top: -25%;
    width: 150%;
    height: 150%;
    border-radius: 50%;
    -webkit-animation: scaleout 1.0s infinite ease-in-out;
    animation: scaleout 1.0s infinite ease-in-out;
}
@-webkit-keyframes scaleout {
    0% {
        transform: scale(.6);
        -webkit-transform: scale(.6);
    }
    100% {
        transform: scale(1);
        -webkit-transform: scale(1);
        opacity: 0;
    }
}
@keyframes scaleout {
    0% {
        transform: scale(.6);
        -webkit-transform: scale(.6);
    }
    100% {
        transform: scale(1);
        -webkit-transform: scale(1);
        opacity: 0;
    }
}

#nav-toggle:hover .border {
    opacity: 0;
}
#nav-toggle:hover .border:before {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
    opacity: 0;
}
#nav-toggle:hover .border:after {
    opacity: 0;
}

#nav-toggle .background {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #197b88;
    -webkit-transform: scale(0);
    transform: scale(0);
    opacity: 0;
    -webkit-transition: all .6s cubic-bezier(.18, .83, .36, 1.28);
    transition: all .6s cubic-bezier(.18, .83, .36, 1.28);
}

#nav-toggle .bar {
    width: 30px;
    height: 4px;
    border-radius: 1px;
    display: block;
    background-color: #000;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    content: '';
    -webkit-transition: 0.5s ease;
    transition: 0.5s ease;
}
#nav-toggle .bar01 {
    top: 11px;
    -webkit-transform-origin: left center;
    transform-origin: left center;
}
#nav-toggle .bar02 {
    top: 18px;
    -webkit-transform-origin: left center;
    transform-origin: left center;
}
#nav-toggle .bar03 {
    top: 25px;
    -webkit-transform-origin: left center;
    transform-origin: left center;
}
#nav-toggle .txt {
    font-size: 10px;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 500;
    bottom: 6px;
    width: auto !important;
    height: auto !important;
    border-radius: none;
    display: block;
    background-color: transparent;
    color: #000;
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
}
#nav-toggle:hover .bar {
    background-color: #fff;
}
#nav-toggle:hover .txt {
    color: #fff;
}
@media (max-width: 767.98px) {
    #nav-toggle {
        width: 49px;
        height: 49px;
        top: 15px;
        right: 16px;
        border: none;
    }
    #nav-toggle .inner {
        width: 49px;
        height: 49px;
    }
    #nav-toggle .bar {
        width: 26px;
        height: 3px;
    }
    #nav-toggle .bar01 {
        top: 11px;
    }
    #nav-toggle .bar02 {
        top: 17px;
    }
    #nav-toggle .bar03 {
        top: 23px;
    }
    #nav-toggle .txt {
        bottom: 5px;
        font-size: 9px;
    }
}

#nav-toggle.open {
    background: transparent;
    border-radius: 0;
    border: none;
}
#nav-toggle.open .inner {
    background-color: transparent;
}
#nav-toggle.open .border {
    opacity: 0;
}
#nav-toggle.open .border2 {
    display: none;
}
#nav-toggle.open .background {
    background-color: #197b88;
}
#nav-toggle.open .bar {
    width: 28px;
    background-color: #fff;
}
#nav-toggle.open .bar01 {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 15px;
    left: 8px;
}
#nav-toggle.open .bar02 {
    width: 0%;
    opacity: 0;
}
#nav-toggle.open .bar03 {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 35px;
    left: 8px;
}
#nav-toggle.open .txt {
    display: none;
}
@media (max-width: 767.98px) {
    #nav-toggle.open .bar01 {
        top: 13px;
    }
    #nav-toggle.open .bar03 {
        top: 33px;
    }
}

#nav-overlay {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: -1;
    background: rgba(25,123,136,1);
    border-radius: 50%;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    -webkit-transform: scale3d(0, 0, 0);
    transform: scale3d(0, 0, 0);
}
#nav-overlay.open {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
}

#nav-fullscreen {
    width: 100%;
    position: fixed;
    left: 70px;
    top: 50px;
    -webkit-transition: ease-in-out 0.25s;
    transition: ease-in-out 0.25s;
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    visibility: hidden;
    opacity: 0;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    color: #fff;
    font-size: 25px;
    letter-spacing: 0.08em;
}
#nav-fullscreen.open {
    visibility: visible;
    opacity: 1;
    -webkit-transition: ease-in-out 0.5s;
    transition: ease-in-out 0.5s;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}
@media (max-width: 991.98px) {
    #nav-fullscreen {
        left: 50px;
        font-size: 20px;
    }
}
@media (max-width: 767.98px) {
    #nav-fullscreen {
        font-size: 15px;
        left: 30px;
        top: 60px;
    }
}
@media (max-width: 360.98px) {
    #nav-fullscreen {
        top: 50px;
    }
}
@media (max-width: 320.98px) {
    #nav-fullscreen {
        font-size: 14px;
    }
}

#nav-fullscreen .nav-menu-cont {
    width: 100%;
    margin: 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
}
#nav-fullscreen ul.nav-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
#nav-fullscreen ul.nav-menu li {
    margin: 0 0 10px;
    padding: 0;
}
#nav-fullscreen ul.nav-menu li a {
    display: block;
    color: #fff;
    text-decoration: none;
    padding: 0;
}
#nav-fullscreen ul.nav-menu li span {
      display: inline-block;
      background: #fff;
      width: 75px;
      height: 26px;
      border-radius: 18px;
      margin-right: 15px;
      color: #197b88;
      font-size: 16px;
      text-align: center;
      letter-spacing: 0.15em;
      line-height: 1;
      box-sizing: border-box;
      padding-top: 5px;
      vertical-align: 18%;
}
#nav-fullscreen ul.nav-menu li a:hover {
    color: #99ddd8;
}
@media (max-width: 991.98px) {
    #nav-fullscreen ul.nav-menu li span {
        width: 65px;
        height: 24px;
        font-size: 14px;
        letter-spacing: 0.1em;
      }
}
@media (max-width: 767.98px) {
    #nav-fullscreen ul.nav-menu li {
        margin-bottom: 0;
        padding-bottom: 15px;
      }
      #nav-fullscreen ul.nav-menu li span {
        width: 55px;
        height: 20px;
        font-size: 13px;
        margin-right: 12px;
        vertical-align: 0%;
        padding-top: 4px;
      }
}

#nav-fullscreen ul.nav-menu .nav-sub-menu {
    display: none;
    position: absolute;
    top: 0;
    left: 32%;
    font-size: 16px;
    border-left: 1px solid #99ddd8;
    padding-left: 30px;
    -webkit-animation: fadeIn 0.7s ease both;
    animation: fadeIn 0.7s ease both;
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li {
    margin-bottom: 30px;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu.mb-low li {
    margin-bottom: 6px;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:last-of-type {
    margin-bottom: 0;
}
@media (max-width: 1199.98px) {
    #nav-fullscreen ul.nav-menu .nav-sub-menu {
        left: 40%;
    }
}
@media (max-width: 991.98px) {
    #nav-fullscreen ul.nav-menu .nav-sub-menu {
        left: 45%;
        font-size: 15px;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu li {
        margin-bottom: 20px;
    }
}
@media (max-width: 767.98px) {
    #nav-fullscreen ul.nav-menu .nav-sub-menu {
        position: relative;
        top: 0;
        left: 0;
        padding-left: 15px;
        margin-top: 10px;
        font-size: 13px;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu li {
        margin-bottom: 0;
        padding-bottom: 0;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu li a {
        padding-bottom: 5px;
        padding-top: 5px;
    }
}

#nav-fullscreen ul.nav-menu .js-menu {
    height: 50px;
}
#nav-fullscreen ul.nav-menu .js-menu,
#nav-fullscreen ul.nav-menu .nav-sub-menu li a {
    display: inline-block;
    cursor: pointer;
    position: relative;
    overflow: hidden;
}
#nav-fullscreen ul.nav-menu .js-menu:hover,
#nav-fullscreen ul.nav-menu .nav-sub-menu li a:hover {
    color: #99ddd8;
    transition: 0.5s;
}
#nav-fullscreen ul.nav-menu .js-menu::before,
#nav-fullscreen ul.nav-menu .nav-sub-menu li a::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-bottom: 1px solid #99ddd8;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    -webkit-transform: translateX(-110%);
    transform: translateX(-110%);
    z-index: -1;
}
#nav-fullscreen ul.nav-menu .js-menu:hover::before,
#nav-fullscreen ul.nav-menu .nav-sub-menu li a:hover::before {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}
@media (max-width: 991.98px) {
    #nav-fullscreen ul.nav-menu .js-menu {
        height: 45px;
    }
}
@media (max-width: 767.98px) {
    #nav-fullscreen ul.nav-menu .js-menu,
    #nav-fullscreen ul.nav-menu .nav-sub-menu li a {
        display: block;
        overflow: auto;
    }
    #nav-fullscreen ul.nav-menu .js-menu {
        height: auto;
    }
    #nav-fullscreen ul.nav-menu .js-menu::before,
    #nav-fullscreen ul.nav-menu .nav-sub-menu li a::before {
        display: none;
    }
}

#nav-fullscreen ul.sns-list {
    position: absolute;
    right: 100px;
    bottom: 70px;
    margin: 0;
}
#nav-fullscreen .fa-instagram,
#nav-fullscreen .fa-pinterest,
#nav-fullscreen .fa-facebook-square,
#nav-fullscreen .fa-twitter,
#nav-fullscreen .fa-youtube,
#nav-fullscreen .icon-line,
#nav-fullscreen .fa-tiktok {
    font-size: 20px;
}
#nav-fullscreen .icon-line {
    width: 20px;
    height: 19px;
    background-size: 20px 19px;
}
@media (max-width: 767.98px) {
    #nav-fullscreen ul.sns-list {
        bottom: 90px;
        right: 40px;
    }
}

#nav-fullscreen .btn-box {
    width: 100%;
    position: absolute;
    bottom: 75px;
    left: 0;
    margin: 0;
}
#nav-fullscreen .btn {
    width: 100%;
    margin: 0;
    padding: 11px 35px;
    font-size: 14px;
    line-height: 1;
    background: none;
    border-color: #fff;
    color: #fff;
}
#nav-fullscreen .btn::before {
    background: #fff;
}
#nav-fullscreen .btn:hover,
#nav-fullscreen .btn:focus,
#nav-fullscreen .btn:active {
  color: #197b88 !important;
}
@media (max-width: 767.98px) {
    #nav-fullscreen .btn-box {
        bottom: 140px;
        left: 0;
        padding: 0 45px 0 5px;
    }
    #nav-fullscreen .btn {
        max-width: 100%;
        padding: 10px 20px;
        font-size: 13px;
    }
}

/*-- 修正 menu 210728 --*/
#nav-fullscreen ul.nav-menu .nav-sub-menu {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: flex-start;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li {
  width: 100%;
  margin-bottom: 20px;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(9),
#nav-fullscreen ul.nav-menu .nav-sub-menu li:last-of-type {
  margin-bottom: 0;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(10),
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(11),
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(12),
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(13),
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(14),
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(15),
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(16),
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(17),
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(18) {
  left: 40%;
  position: absolute;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(11) {
  top: 11.5%;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(12) {
  top: 23%;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(13) {
  top: 34.5%;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(14) {
  top: 46%;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(15) {
  top: 57.5%;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(16) {
  top: 69%;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(17) {
  top: 80.5%;
}
#nav-fullscreen ul.nav-menu .nav-sub-menu li:nth-of-type(18) {
  top: 92%;
}
@media (max-width: 1199.98px) {
    #nav-fullscreen {
        left: 50px;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu {
        left: 34%;
    }
}
@media (max-width: 991.98px) {
    #nav-fullscreen ul.nav-menu .nav-sub-menu {
        position: relative;
        top: 0;
        left: 0;
        margin-bottom: 20px;
        padding-left: 15px;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu li {
        margin-bottom: 10px;
    }
    #nav-fullscreen ul.nav-menu .js-menu::before,
    #nav-fullscreen ul.nav-menu .nav-sub-menu li a::before {
        display: none;
    }
}
@media (max-width: 767.98px) {
    #nav-fullscreen {
      left: 30px;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu {
        margin-top: 10px;
        margin-bottom: 0;
        font-size: 13px;
        max-height: 40vh;
        overflow-y: scroll;
        overflow-x: hidden;
        scrollbar-base-color: #056774;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu::-webkit-scrollbar {
      width: 2px;
      height: auto;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu::-webkit-scrollbar-track {
      background: #fff;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu::-webkit-scrollbar-thumb {
      background: #056774;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu li {
        margin-bottom: 0;
        padding-bottom: 0;
        position: relative !important;
        left: 0 !important;
        top: 0 !important;
    }
    #nav-fullscreen ul.nav-menu .nav-sub-menu li a {
        padding-bottom: 5px;
        padding-top: 5px;
    }
}

/* 2.1.2 sns Icon ------------*/
ul.sns-list {
    margin: -3px 0 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: flex-start;
    align-content: flex-start;
}
ul.sns-list li {
    text-align: center;
    margin: 0 8px;
}
ul.sns-list li a {
    display: block;
    color: #fff;
}
ul.sns-list li a:hover {
    color: #fff;
    text-decoration: none;
}
ul.sns-list li:hover {
    opacity: 0.7;
    transition: 0.7s;
}

.fa-instagram,
.fa-pinterest,
.fa-facebook-square,
.fa-twitter,
.fa-youtube,
.icon-line,
.fa-tiktok {
    display: block;
    background: inherit;
    color: #fff !important;
    font-size: 25px;
    margin: 0;
}
.icon-line {
    width: 23px;
    height: 22px;
    background: url(../image/icon/icon-line.svg) center center no-repeat;
    background-size: 23px 22px;
}

/*-------------------------------
 * 3. MAIN VISUAL
 * ----------------------------*/
#main-visual {
    width: 100%;
    height: 100%;
    height: 100vh;
    padding: 0;
    margin: 0;
    position: relative;
    -webkit-animation: fadeIn 1s linear both;
    animation: fadeIn 1s linear both;
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
    z-index: 0;
}
#main-visual .ttl {
    position: absolute;
    font-size: 135px;
    top: 50%;
    left: 50%;
    color: #fff;
    text-align: center;
    transform: translate(-50%, -50%);
    line-height: 1.2;
    letter-spacing: -0.05em;
    z-index: 100;
}

#main-visual .btn {
    position: absolute;
    top: 38px;
    right: 120px;
    margin: 0;
    padding: 11px 35px;
    font-size: 14px;
    line-height: 1;
    background: none;
    -webkit-animation: fadeIn 1s linear both;
    animation: fadeIn 1s linear both;
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s;
}
#main-visual .btn.btn-contact {
    right: 330px;
}
@media (max-width: 767.98px) {
    #main-visual .btn-box {
      width: 100%;
      font-size: 13px;
      height: 40px !important;
      padding: 10px 20px;
      position: absolute;
      bottom: 80px;
      left: 0;
      right: 0;
      margin: auto;
    }
    #main-visual .btn {
      top: 0;
      right: 0;
      left: 0;
      margin: auto;
    }
}

#main-visual .btn-link-wrap {
    width: 100%;
    background: rgba(255,255,255,0.7);
    border: none;
    position: absolute;
    left: 0;
    bottom: -72px;
    z-index: 100;
    -webkit-animation: fadeInUp 1s linear both;
    animation: fadeInUp 1s linear both;
    -webkit-animation-delay: 4.5s;
    animation-delay: 4.5s;
  }
  #main-visual .btn-link-wrap ul li {
    text-align: left;
  }
  #main-visual .btn-link-wrap ul li a {
    font-size: 20px;
    background: #197b88;
    color: #fff;
    border: none;
    padding-left: 15px;
    display: block;
    position: relative;
    outline: none;
    transition: all .3s;
    cursor: pointer;
    overflow: hidden;
    z-index: 1;
  }
  #main-visual .btn-link-wrap ul li a::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fff;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    -webkit-transform: translateX(110%);
    transform: translateX(110%);
    z-index: -1;
}
#main-visual .btn-link-wrap ul li a:hover::before {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}
#main-visual .btn-link-wrap ul li a:hover,
#main-visual .btn-link-wrap ul li a:focus,
#main-visual .btn-link-wrap ul li a:active {
    color: #197b88 !important;
    text-decoration: none;
}
#main-visual .btn-link-wrap ul li span {
    display: inline-block;
    background: #fff;
    width: 60px;
    height: 23px;
    border-radius: 18px;
    margin-right: 15px;
    color: #197b88;
    font-size: 14px;
    text-align: center;
    letter-spacing: 0.1em;
    line-height: 1;
    box-sizing: border-box;
    padding-top: 5px;
    vertical-align: 11%;
}
#main-visual .btn-link-wrap ul li a:hover span {
    color: #fff;
    background: #197b88;
}
@media (max-width: 1350px) {
    #main-visual .btn-link-wrap ul li a {
      font-size: 18px;
    }
}
@media (max-width: 1300px) {
    #main-visual .btn-link-wrap ul li a {
      font-size: 15px;
    }
}
@media (max-width: 1199.98px) {
    #main-visual .btn-link-wrap ul li {
      text-align: center;
    }
    #main-visual .btn-link-wrap ul li a {
      font-size: 18px;
    }
    #main-visual .btn-link-wrap ul li span {
      display: none;
    }
}
@media (max-width: 991.98px) {
    #main-visual .btn-link-wrap ul li a {
      font-size: 15px;
      padding-left: 5px;
    }
}
@media (max-width: 767.98px) {
    #main-visual .btn-link-wrap {
      bottom: -32px;
    }
    #main-visual .btn-link-wrap ul li a {
      font-size: 13px;
    }
}

.s-wrap {
    width: 100%;
    position: absolute;
    margin: 0;
    z-index: 100;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.s-sub-cont {
    display: block;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 200;
}
@media (max-width: 767.98px) {
    .s-sub-cont svg {
        width: 80%;
        height: auto;
    }
}

.s-sub-1 {
    -webkit-animation: slideTextFade 2.0s ease 0s 1 normal;
    animation: slideTextFade 2.0s ease 0s 1 normal;
}
.s-sub-2 {
    -webkit-animation: slideTextFade 2.5s ease 0s 1 normal;
    animation: slideTextFade 2.5s ease 0s 1 normal;
}
.s-sub-3 {
    -webkit-animation: slideTextFade 3.0s ease 0s 1 normal;
    animation: slideTextFade 3.0s ease 0s 1 normal;
}
.s-sub-4 {
    -webkit-animation: slideTextFade 3.5s ease 0s 1 normal;
    animation: slideTextFade 3.5s ease 0s 1 normal;
}
.s-sub-5 {
    -webkit-animation: slideTextFade 4.0s ease 0s 1 normal;
    animation: slideTextFade 4.0s ease 0s 1 normal;
}
.s-sub-6 {
    -webkit-animation: slideTextFade 4.5s ease 0s 1 normal;
    animation: slideTextFade 4.5s ease 0s 1 normal;
}
.s-sub-7 {
    -webkit-animation: slideTextFade 5.0s ease 0s 1 normal;
    animation: slideTextFade 5.0s ease 0s 1 normal;
}
.s-sub-8 {
    -webkit-animation: slideTextFade 5.5s ease 0s 1 normal;
    animation: slideTextFade 5.5s ease 0s 1 normal;
}

/*----- main anime -----*/
#anime-area {
  width: 100%;
  position: absolute;
  margin: 0;
  z-index: 100;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -40%);
  text-align: center;
}
.anime-text-a g {
  opacity: 0;
}
/*.anime-text-a g.anime-txt08 {
  animation-name: shake;
  animation-duration: 0.2s;
  animation-iteration-count: infinite;
  -webkit-animation-name: shake;
  -webkit-animation-duration: 0.2s;
  -webkit-animation-iteration-count: infinite;
}*/
@media (max-width: 767.98px) {
  .anime-cont svg {
    width: 80%;
    height: auto;
  }
}

@-webkit-keyframes shake {
  from {
    transform: translateX(-3px);
  }
  50% {
    transform: translateX(3px);
  }
  to {
    transform: translateX(-3px);
  }
}
@keyframes shake {
  from {
    transform: translateX(-3px);
  }
  50% {
    transform: translateX(3px);
  }
  to {
    transform: translateX(-3px);
  }
}

/*---------- swiper ----------*/
.swiper-wrapper {
    z-index: 0 !important;
}

.swiper-slide {
    box-sizing: border-box;
    position: relative;
}

.swiper-button-prev:focus,
.swiper-button-next:focus {
  outline: none;
  overflow: hidden;
  text-decoration: none;
}
.swiper-button-prev,
.swiper-button-next {
    top: 58%;
    transform: translateY(-58%);
    width: 12px;
    height: 23px;
    background-size: 12px 23px;
    z-index: 30;
    text-indent: -9999px;
}
.swiper-button-prev {
    background-image: url(../image/arrow-prev.svg) !important;
    left: 0;
}
.swiper-button-prev.white {
    background-image: url(../image/arrow-prev-white.svg) !important;
}
.swiper-button-next {
    background-image: url(../image/arrow-next.svg) !important;
    right: 0;
}
.swiper-button-next.white {
    background-image: url(../image/arrow-next-white.svg) !important;
}
.swiper-button-prev:hover,
.swiper-button-next:hover {
    opacity: 0.8;
    transition: 0.7s;
}
@media (max-width: 767.98px) {
    .swiper-button-prev,
    .swiper-button-next {
        top: 45%;
        transform: translateY(-45%);
    }
}

.swiper-custom-parent {
    position: relative;
}
.swiper-custom-parent .swiper-button-prev,
.swiper-custom-parent .swiper-button-next {
    top: 25%;
    transform: translateY(-25%);
    width: 17px;
    height: 33px;
    background-size: 17px 33px;
}
.swiper-custom-parent .swiper-button-prev {
    left: -40px;
}
.swiper-custom-parent .swiper-button-next {
    right: -40px;
}
.swiper-custom-parent .swiper-button-prev.swiper-button-disabled,
.swiper-custom-parent .swiper-button-next.swiper-button-disabled {
    opacity: 0;
}
@media (max-width: 1199.98px) {
    .swiper-custom-parent .swiper-button-prev {
        left: -40px;
    }
    .swiper-custom-parent .swiper-button-next {
        right: -40px;
    }
}
@media (max-width: 991.98px) {
    .swiper-custom-parent .swiper-button-prev {
        left: -20px;
    }
    .swiper-custom-parent .swiper-button-next {
        right: -20px;
    }
}
@media (max-width: 767.98px) {
    .swiper-custom-parent .swiper-button-prev,
    .swiper-custom-parent .swiper-button-next {
        top: 13%;
        transform: translateY(-13%);
        width: 12px;
        height: 23px;
        background-size: 12px 23px;
    }
    .swiper-custom-parent .swiper-button-prev {
        left: -15px;
    }
    .swiper-custom-parent .swiper-button-next {
        right: -15px;
    }
}

.swiper-pagination {
    text-align: right;
    padding-right: 30px;
    padding-bottom: 10px;
}
.swiper-pagination-bullet {
    width: auto;
	height: auto;
	line-height: 1;
    background: none;
    text-align: center;
    color: #fff;
    font-size: 15px;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.05em;
    opacity: 1;
}
.swiper-pagination-bullet:after {
    padding: 0 5px 0 10px;
    content: "|";
}
.swiper-pagination-bullet:last-of-type:after {
    content: "";
}
.swiper-pagination-bullet-active {
    color: #197b88;
}
.swiper-pagination-bullet-active:after {
    color: #fff;
}
@media (max-width: 767.98px) {
    .swiper-pagination  {
        padding-right: 15px;
        padding-bottom: 5px;
    }
    .swiper-pagination-bullet {
        font-size: 14px;
    }
}

/*-- TOP main --*/
.swiper-main {
    width: 100%;
    height: 100%;
    height: 100vh;
}
.swiper-main .swiper-slide {
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.swiper-main .swiper-slide-active .slide-img,
.swiper-main .swiper-slide-duplicate-active .slide-img,
.swiper-main .swiper-slide-prev .slide-img {
    -webkit-animation: zoomUp 12s linear 0s;
    animation: zoomUp 12s linear 0s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.swiper-main .slide-img {
    width: 100%;
    height: 100%;
    height: 100vh;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

@-webkit-keyframes zoomUp {
  0% {
      -webkit-transform: scale(1);
      transform: scale(1);
  }
  100% {
      -webkit-transform: scale(1.15);
      transform: scale(1.15);
  }
}

@keyframes zoomUp {
  0% {
      -webkit-transform: scale(1);
      transform: scale(1);
  }
  100% {
      -webkit-transform: scale(1.15);
      transform: scale(1.15);
  }
}

/*-- TOP works --*/
@media (max-width: 991.98px) {
    .swiper-works .slide-img {
        width: 90%;
        margin: 0 auto;
    }
    .swiper-works .slide-img .imagearea {
        height: 400px;
    }
    .swiper-works .slide-img .imagearea-content img {
        width: auto;
        height: 400px;
        object-fit: cover;
    }
    .swiper-works .swiper-button-prev,
    .swiper-works .swiper-button-next {
        top: 45%;
        transform: translateY(-45%);
    }
    .swiper-works .sub {
        font-size: 18px;
        text-align: left;
        margin: 20px 0 5px;
        letter-spacing: 0;
    }
    .swiper-works .txt {
        margin: 15px 0 0;
    }
    .swiper-works .icon-logo {
        display: block;
        width: 110px;
        height: 50px;
        position: absolute;
        bottom: 0;
        right: 0;
        z-index: 1;
    }
    .swiper-works .icon-logo img {
        display: block;
        max-width: 100%;
    }
}
@media (max-width: 767.98px) {
    .swiper-works .slide-img {
        width: 87%;
    }
    .swiper-works .slide-img .imagearea {
        height: 250px;
    }
    .swiper-works .slide-img .imagearea-content img {
        height: 250px;
    }
    .swiper-works .sub {
        font-size: 14px;
        margin-top: 15px;
    }
    .swiper-works .txt {
        font-size: 11px;
    }
}
@media (max-width: 575.98px) {
    .swiper-works .slide-img {
        width: 87%;
    }
}

/*-- TOP journal --*/
@media (max-width: 991.98px) {
    .swiper-journal .slide-img {
        width: 90%;
        margin: 0 auto;
    }
    .swiper-journal .swiper-button-prev,
    .swiper-journal .swiper-button-next {
        top: 37%;
        transform: translateY(-37%);
    }
}
@media (max-width: 767.98px) {
    .swiper-journal .slide-img {
        padding-left: 8px;
        padding-right: 8px;
    }
    .swiper-journal .swiper-button-prev,
    .swiper-journal .swiper-button-next {
        top: 35%;
        transform: translateY(-35%);
    }
}
@media (max-width: 575.98px) {
    .swiper-journal .swiper-button-prev {
        left: -1px;
    }
    .swiper-journal .swiper-button-next {
        right: -1px;
    }
}
@media (max-width: 320.98px) {
    .swiper-journal .swiper-button-prev,
    .swiper-journal .swiper-button-next {
        top: 35%;
        transform: translateY(-35%);
    }
}

/*-- journal main page --*/
.swiper-journal-main {
    /*width: 100%;*/
    max-width: 800px;
    height: auto;
    overflow: visible;
    margin-bottom: 50px;
}
.swiper-journal-main .swiper-slide {
    position: relative;
    padding: 0 5px;
}
.swiper-journal-main .slide-img {
    width: 100%;
    height: 450px;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}
@media only screen and (min-width: 1500px) {
    .swiper-journal-main {
        max-width: 1000px;
    }
}
@media (max-width: 991.98px) {
    .swiper-journal-main {
        max-width: 600px;
    }
    .swiper-journal-main .slide-img {
        height: 400px;
    }
}
@media (max-width: 767.98px) {
    .swiper-journal-main {
        width: 100%;
        max-width: 100%;
    }
    .swiper-journal-main .swiper-slide {
        padding: 0;
    }
    .swiper-journal-main .slide-img {
        height: 350px;
    }
}

.swiper-journal-main .swiper-button-prev,
.swiper-journal-main .swiper-button-next {
    top: 53%;
    transform: translateY(-53%);
    width: 20px;
    height: 36px;
    background-size: 20px 36px;
}
.swiper-journal-main .swiper-button-prev {
    left: -22px;
}
.swiper-journal-main .swiper-button-next {
    right: -22px;
}
@media (max-width: 767.98px) {
    .swiper-journal-main .swiper-button-prev,
    .swiper-journal-main .swiper-button-next {
        display: none !important;
    }
}

.swiper-journal-main .swiper-pagination {
    text-align: center;
    padding: 0;
    bottom: -50px;
}
.swiper-journal-main .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: #bfbfbf;
}
.swiper-journal-main .swiper-pagination-bullet:after {
    padding: 0;
    content: "";
}
.swiper-journal-main .swiper-pagination-bullet-active {
    background: #197b88;
}
@media (max-width: 767.98px) {
    .swiper-journal-main .swiper-pagination {
        bottom: -35px;
    }
}

.swiper-journal-main .txt-box {
    display: block;
    width: 280px;
    height: 280px;
    padding: 20px;
    position: absolute;
    top: 30px;
    right: 30px;
    margin: 0;
    background: rgba(255,255,255,0.8);
    box-sizing: border-box;
}
.swiper-journal-main .txt-box .sub {
    font-size: 22px;
    margin: 0 0 15px;
    text-align: left;
    letter-spacing: -0.03em;
}
.swiper-journal-main .txt-box .txt {
    font-family: 'Gothic Medium BBB', sans-serif !important;
    letter-spacing: -0.03em;
    font-size: 15px;
}
.swiper-journal-main .txt-box .link {
    display: block;
    position: absolute;
    bottom: 15px;
    right: 20px;
    margin: 0;
    font-size: 14px;
}
.swiper-journal-main .txt-box .link i {
    display: inline-block !important;
    margin-left: 5px !important;
    font-size: 12px !important;
    vertical-align: 12% !important;
}
@media (max-width: 767.98px) {
    .swiper-journal-main .txt-box {
        width: auto;
        height: 90px;
        top: 260px;
        right: 0;
        left: 0;
        margin: auto;
        padding: 12px 15px;
    }
    .swiper-journal-main .txt-box .sub {
        font-size: 17px;
        margin-bottom: 5px;
        letter-spacing: 0;
    }
    .swiper-journal-main .txt-box .txt {
        display: none;
    }
    .swiper-journal-main .txt-box .link {
        font-size: 12px;
        bottom: 10px;
    }
    .swiper-journal-main .txt-box .link i {
        font-size: 11px !important;
        vertical-align: 2% !important;
    }
}

/*-- RECRUIT interviw --*/
.swiper-interview {
    padding-left: 20px;
    padding-right: 20px;
}
.swiper-interview.real-estate {
    margin-top: 3rem;
    text-align: center;
}
.swiper-interview .swiper-button-prev,
.swiper-interview .swiper-button-next {
    top: 38%;
    transform: translateY(-38%);
    width: 17px;
    height: 30px;
    background-size: contain;
}
.swiper-interview a:hover {
    text-decoration: none;
}
.swiper-interview .sub {
    font-size: 18px;
    text-align: left;
    margin: 20px 0 5px;
}
.swiper-interview.real-estate .sub {
    text-align: center;
}
.swiper-interview .txt {
    font-size: 15px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
@media (max-width: 991.98px) {
    .swiper-interview .swiper-button-prev,
    .swiper-interview .swiper-button-next {
        top: 42%;
        transform: translateY(-42%);
    }
}
@media (max-width: 767.98px) {
    .swiper-interview {
        padding-left: 15px;
        padding-right: 15px;
    }
    .swiper-interview.real-estate {
        margin-top: 2rem;
    }
    .swiper-interview .swiper-button-prev,
    .swiper-interview .swiper-button-next {
        top: 37%;
        transform: translateY(-37%);
        width: 12px;
        height: 23px;
    }
    .swiper-interview .sub {
        font-size: 15px;
        margin-top: 15px;
    }
    .swiper-interview .txt {
        font-size: 13px;
    }
}
@media (max-width: 320.98px) {
    .swiper-interview .swiper-button-prev,
    .swiper-interview .swiper-button-next {
        top: 31%;
        transform: translateY(-31%);
    }
}

.swiper-interview.real-estate a:hover .imagearea-content > img {
    -ms-transform: scale(1);
    transform: scale(1);
}
.swiper-interview.real-estate .imagearea {
    width: 250px;
    height: 250px;
    overflow: visible;
    margin: 0 auto;
}
.swiper-interview.real-estate .imagearea-content > img {
    width: 250px;
    height: 250px;
    border-radius: 50%;
    overflow: visible !important;
}
.swiper-interview.real-estate .imagearea-content .txt-overlay {
    border-radius: 50%;
    width: 250px;
    height: 250px;
}
@media (max-width: 1199.98px) {
    .swiper-interview.real-estate .imagearea,
    .swiper-interview.real-estate .imagearea-content > img,
    .swiper-interview.real-estate .imagearea-content .txt-overlay {
        width: 180px;
        height: 180px;
    }
}
@media (max-width: 767.98px) {
    .swiper-interview.real-estate .imagearea,
    .swiper-interview.real-estate .imagearea-content > img,
    .swiper-interview.real-estate .imagearea-content .txt-overlay {
        width: 120px;
        height: 120px;
    }
}

/*-- lineup page --*/
.swiper-lineup {
    margin: 40px auto 80px;
}
.swiper-lineup .slide-img {
    position: relative;
    overflow: hidden;
    cursor: pointer;
    box-sizing: border-box;
    padding: 0 !important;
    border: 3px solid #fff;
}
.swiper-lineup .slide-img:hover {
    border: 3px solid #197b88;
}
.swiper-lineup .slide-img:hover {
      transition: 0.5s;
}
.swiper-lineup .slide-img img {
    max-width: 100%;
    height: auto;
    margin: 0 auto;
    object-fit: cover;
    overflow: hidden;
}
@media (max-width: 767.98px) {
    .swiper-lineup {
      margin: 10px auto 30px;
      }
}

.swiper-custom-parent.lineup .swiper-button-next,
.swiper-custom-parent.lineup .swiper-button-prev {
    top: 58%;
    transform: translateY(-58%);
}
.swiper-custom-parent.lineup .swiper-button-prev {
    left: -20px;
}
.swiper-custom-parent.lineup .swiper-button-next {
    right: -20px;
}
@media (max-width: 1199.98px) {
    .swiper-custom-parent.lineup .swiper-button-next,
    .swiper-custom-parent.lineup .swiper-button-prev {
      top: 60%;
      transform: translateY(-60%);
    }
}
@media (max-width: 767.98px) {
    .swiper-custom-parent.lineup .swiper-button-next,
    .swiper-custom-parent.lineup .swiper-button-prev {
      top: 65%;
      transform: translateY(-65%);
    }
    .swiper-custom-parent.lineup .swiper-button-prev {
      left: -12px;
    }
    .swiper-custom-parent.lineup .swiper-button-next {
      right: -12px;
    }
}

/*-- lineup page detail IMG --*/
.swiper-lineup-detail .swiper-button-prev,
.swiper-lineup-detail .swiper-button-next {
    width: 14px;
    height: 26px;
    background-size: contain;
    top: 53%;
    transform: translateY(-53%);
}
.swiper-lineup-detail .swiper-button-prev {
    left: 15px;
}
.swiper-lineup-detail .swiper-button-next {
    right: 15px;
}
@media (max-width: 767.98px) {
    .swiper-lineup-detail .swiper-button-prev,
    .swiper-lineup-detail .swiper-button-next {
        top: 57%;
        transform: translateY(-57%);
    }
    .swiper-lineup-detail .swiper-button-prev {
        left: 10px;
    }
    .swiper-lineup-detail .swiper-button-next {
        right: 10px;
    }
}

/*-- Ambassador Interview --*/
.swiper-custom-parent.ambassador-interview .swiper-button-prev,
.swiper-custom-parent.ambassador-interview .swiper-button-next {
    width: 20px;
    height: 39px;
    background-size: contain;
    background-repeat: no-repeat;
    top: 38%;
    transform: translateY(-38%);
}
.swiper-custom-parent.ambassador-interview .swiper-button-prev {
    left: 80px;
    background-image: url(../image/arrow-prev.svg) !important;
}
.swiper-custom-parent.ambassador-interview .swiper-button-next {
    right: 80px;
    background-image: url(../image/arrow-next.svg) !important;
}
@media (max-width: 1199.98px) {
    .swiper-custom-parent.ambassador-interview .swiper-button-prev,
    .swiper-custom-parent.ambassador-interview .swiper-button-next {
        top: 33%;
        transform: translateY(-33%);
    }
    .swiper-custom-parent.ambassador-interview .swiper-button-prev {
        left: 50px;
    }
    .swiper-custom-parent.ambassador-interview .swiper-button-next {
        right: 50px;
    }
}
@media (max-width: 991.98px) {
    .swiper-custom-parent.ambassador-interview .swiper-button-prev,
    .swiper-custom-parent.ambassador-interview .swiper-button-next {
        top: 31%;
        transform: translateY(-31%);
    }
    .swiper-custom-parent.ambassador-interview .swiper-button-prev {
        left: 30px;
    }
    .swiper-custom-parent.ambassador-interview .swiper-button-next {
        right: 30px;
    }
}
@media (max-width: 767.98px) {
    .swiper-custom-parent.ambassador-interview .swiper-button-prev,
    .swiper-custom-parent.ambassador-interview .swiper-button-next {
        width: 12px;
        height: 23px;
    }
    .swiper-custom-parent.ambassador-interview .swiper-button-prev {
        left: -15px;
    }
    .swiper-custom-parent.ambassador-interview .swiper-button-next {
        right: -15px;
    }
}
@media (max-width: 320.98px) {
    .swiper-custom-parent.ambassador-interview .swiper-button-prev,
    .swiper-custom-parent.ambassador-interview .swiper-button-next {
        top: 27%;
        transform: translateY(-27%);
    }
}

/*3.1 Scroll Icon
 *------------------------------*/
#scrollIcon-wrap {
    width: 36px;
    height: 57px;
    position: absolute;
    box-sizing: content-box;
    margin-left: -15px;
    bottom: 10px;
    left: 50%;
    z-index: 100;
}
#main-visual #scrollIcon-wrap {
    bottom: 120px;
}
#scrollIcon-wrap .txt {
    font-size: 12px;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #fff;
}
#scrollIcon-wrap .txt.black {
    color: #000;
}
#scrollIcon {
    width: 36px;
    height: 46px;
    position: relative;
}
#scrollIcon .arrow {
    width: 30px;
	height: 15px;
	position: absolute;
	top: -5px;
	left: 0;
	right: 0;
	margin: auto;
	-webkit-animation: scrollIcon 1.8s infinite;
	animation: scrollIcon 1.8s infinite;
	box-sizing: border-box;
}
@media (max-width: 767.98px) {
    #scrollIcon-wrap {
        display: none;
    }
}

@-webkit-keyframes scrollIcon {
	0% {
		-webkit-transform: translate(0, 0);
		opacity: 1;
	}
	50% {
		opacity: 1;
	}
	75% {
		opacity: 1;
	}
	90% {
		opacity: 0;
		transform: translate(0, 15px);
	}
	100% {
		opacity: 0;
	}
}
@keyframes scrollIcon {
	0% {
		transform: translate(0, 0);
		opacity: 1;
	}
	50% {
		opacity: 1;
	}
	75% {
		opacity: 1;
	}
	90% {
		opacity: 0;
		transform: translate(0, 15px);
	}
	100% {
		opacity: 0;
	}
}

/*-------------------------------
 * 4. TOP PAGE
 * ----------------------------*/
/* 4.1 Business
 * ------------------------------*/
#tp-business a {
    display: block;
    color: #fff;
}
#tp-business a:hover {
    color: #fff;
    text-decoration: none;
}

#tp-business .sub {
    font-size: 52px;
    letter-spacing: 0.05em;
    line-height: 1.2;
    margin: 15px 0 10px;
}
#tp-business .subsub {
    margin-top: 5px;
}
#tp-business .sub-txt {
    font-family: 'Roboto', sans-serif !important;
    font-weight: 500;
    letter-spacing: 0.14em;
    font-size: 14px;
    text-align: center;
    color: #a3cacf;
    margin: 0 0 15px;
}
#tp-business .txt-catch {
    font-size: 17px;
    letter-spacing: 0.08em;
    text-align: center;
    margin: 0;
}
#tp-business .txt {
    margin: 0 0 10px;
    text-align: center;
}
@media (max-width: 1199.98px) {
    #tp-business .sub {
      font-size: 26px;
    }
    #tp-business .txt-catch {
      font-size: 14px;
    }
    #tp-business .sub-txt {
        margin-bottom: 10px;
        font-size: 13px;
    }
    #tp-business p {
        font-size: 13px;
    }
    #tp-business .btn-small {
        margin-top: 15px;
    }
}
@media (max-width: 991.98px) {
    #tp-business .sub {
      font-size: 30px;
      margin-top: 5px;
    }
    #tp-business .business-box {
        width: 100%;
        height: 200px;
        position: relative;
        background-size: cover !important;
        background-position: top center !important;
        background-repeat: no-repeat !important;
        display: flex;
        flex-flow: row nowrap;
        justify-content: center;
        align-items: center;
        align-content: center;
    }
    #tp-business .business-box a {
        display: block;
        width: 100%;
        height: 200px;
        padding-top: 20px;
        box-sizing: border-box;
    }
    #tp-business .business-box:hover {
        opacity: 0.8;
        transition: 0.7s;
    }
    #tp-business .business01 {
        background-image: url(../image/img-business01-xs-210622.jpg);
    }
    #tp-business .business02 {
        background-image: url(../image/img-business02-xs-210622.jpg);
    }
    #tp-business .business03 {
        background-image: url(../image/img-business03-xs.jpg);
    }
    #tp-business .business04 {
        background-image: url(../image/img-business04-xs-210622.jpg);
    }
    #tp-business .business06 {
        background-image: url(../image/img-business06-xs.jpg);
    }
}
@media (max-width: 767.98px) {
    #tp-business .sub,
    #tp-business .subsub {
        font-size: 25px !important;
    }
    #tp-business .business-box {
        background-position: center center !important;
    }
    #tp-business .business-box .sub-txt {
        font-size: 14px;
    }
}
@media (max-width: 320.98px) {
    #tp-business .sub,
    #tp-business .subsub {
        font-size: 22px !important;
    }
}

#tp-business .business-pc-box {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: stretch;
}
#tp-business .business-pc-box .col-lg-8,
#tp-business .business-pc-box .col-lg-4 {
    padding-left: 0;
    padding-right: 0;
}

#tp-business .btn.white {
    padding: 12px 10px;
    max-width: 150px;
    margin-top: 25px;
}
#tp-business .btn.white:hover,
#tp-business .btn.white:focus,
#tp-business .btn.white:active {
    color: #197b88 !important;
}
@media (max-width: 1199.98px) {
    #tp-business .btn.white {
      margin-top: 15px;
    }
}

#tp-business .icon {
    display: block;
    margin: 0 auto 10px;
    background: #fff;
    width: 85px;
    height: 30px;
    border-radius: 18px;
    color: #197b88;
    font-size: 18px;
    text-align: center;
    letter-spacing: 0.15em;
    line-height: 1;
    box-sizing: border-box;
    padding-top: 6px;
}
@media (max-width: 1199.98px) {
    #tp-business .icon {
      width: 75px;
      height: 26px;
      font-size: 15px;
      letter-spacing: 0.1em;
    }
}

#tp-business .business-box02 {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}
#tp-business .business-box02.business02-1 {
    background-image: url(../image/img-business02-1.jpg?v=20220224);
    background-position: right center !important;
}
#tp-business .business-box02.business02-2 {
    background-image: url(../image/img-business02-2.jpg?v=20220224);
}
#tp-business .business-box02.business02-2:hover {
    background-image: linear-gradient(rgba(255,255,255,.3),rgba(255,255,255,.3)), url(../image/img-business02-2.jpg?v=20220224);
}
#tp-business .business-box02.business02-3 {
    background-image: url(../image/img-business02-3.jpg);
}
#tp-business .business-box02.business02-4 {
    background-image: url(../image/img-business02-4.jpg);
    background-position: left center !important;
}
#tp-business .business-box02 .subsub,
#tp-business .business-box02 p {
  color: #fff;
}

/* 4.2 Works
 * ------------------------------*/
#tp-works a:hover {
    text-decoration: none;
}
#tp-works .container-fluid {
    position: relative;
}

#tp-works dl.dl-works {
    margin: 20px 0 0;
    display: table;
    width: 100%;
}
#tp-works dl.dl-works img {
    display: block;
    width: 120px;
    height: 48px;
}
#tp-works dl.dl-works dt,
#tp-works dl.dl-works dd {
    width: 50%;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}
#tp-works dl.dl-works dd {
    border-left: 1px solid #000;
    line-height: 1.5;
    text-align: left;
    padding-left: 15px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
@media (max-width: 991.98px) {
    #tp-works dl.dl-works {
        display: block;
    }
    #tp-works dl.dl-works dt,
    #tp-works dl.dl-works dd {
        display: block;
        width: 100%;
    }
    #tp-works dl.dl-works dd {
        border-left: none;
        text-align: center;
        padding: 10px 0 0;
    }
    #tp-works dl.dl-works img {
        width: 140px;
        height: 56px;
    }
}

/* 4.3 Journal
 * ------------------------------*/
#tp-journal a:hover {
    text-decoration: none;
}
#tp-journal .container-fluid {
    position: relative;
}

#tp-journal .section-ttl img {
    width: 75%;
    height: auto;
}
#tp-journal .section-sub {
    margin: 30px 0 20px;
    font-size: 17px;
}
@media (max-width: 991.98px) {
    #tp-journal .section-ttl {
        margin-bottom: 45px;
    }
    #tp-journal .section-ttl img {
        width: 60%;
    }
}
@media (max-width: 575.98px) {
    #tp-journal .section-sub {
        font-size: 13px;
    }
}

#tp-journal .waku {
    text-align: center;
    position: relative;
    padding: 20px 0;
    margin-top: 30px;
}
#tp-journal .waku.mark-margin {
    margin-top: 40px;
}
#tp-journal .waku::before,
#tp-journal .waku::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 6px;
  box-sizing: border-box;
}
#tp-journal .waku::before {
  top: 0;
  border-top: 2px solid #545454;
  border-bottom: 1px solid #a2a2a0;
}
#tp-journal .waku::after {
  bottom: 0;
  border-top: 1px solid #a2a2a0;
  border-bottom: 2px solid #545454;
}
#tp-journal .icon-mark {
    width: 105px;
    height: 32px;
    font-size: 15px;
    color: #fff;
    text-align: center;
    position: absolute;
    top: -15px;
    left: 0;
    right: 0;
    margin: auto;
    box-sizing: border-box;
    padding: 3px 5px 0;
    background: #545454;
    border-radius: 20px;
}
@media (max-width: 991.98px) {
    #tp-journal .icon-mark {
        position: relative;
        width: 200px;
        top: -35px;
    }
}
@media (max-width: 767.98px) {
    #tp-journal .waku.mark-margin {
        margin-top: 0;
    }
    #tp-journal .icon-mark {
        width: 95px;
        height: 28px;
        font-size: 14px;
        top: -23px;
        padding-top: 1px;
    }
}

#tp-journal .icon-new::after {
    border-width: 45px 45px 0 0;
}
#tp-journal .icon-new span {
    top: 10px;
    left: 4px;
}

#tp-journal .imagearea {
    height: 230px;
    border: 5px solid #197b88;
    margin: 0 0 20px;
}
@media (max-width: 991.98px) {
    #tp-journal .imagearea {
        height: 250px;
    }
}
@media (max-width: 767.98px) {
    #tp-journal .imagearea {
        height: 180px;
        border-width: 3px;
        margin-bottom: 15px;
    }
}
@media (max-width: 575.98px) {
    #tp-journal .imagearea {
        height: 130px;
    }
}
@media (max-width: 480.98px) {
    #tp-journal .imagearea {
        height: 110px;
    }
}
@media (max-width: 320.98px) {
    #tp-journal .imagearea {
        height: 100px;
    }
}

#tp-journal dl.dl-journal {
    margin: 0;
    padding: 0;
}
#tp-journal dl.dl-journal dt {
    font-weight: 400;
    color: #7e7e7e;
    font-size: 13px;
    margin: 0 0 10px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
#tp-journal dl.dl-journal dd {
    letter-spacing: 0;
}
@media (max-width: 575.98px) {
    #tp-journal dl.dl-journal dt {
        font-size: 12px;
    }
}
@media (max-width: 320.98px) {
    #tp-journal dl.dl-journal dt {
        font-size: 10px;
    }
}
#tp-journal .section-ttl a img:hover {
    opacity: 0.7;
    transition: 0.7s;
}

/* 4.4 Ambassador
 * ------------------------------*/
#tp-ambassador {
    background: url(../image/img-ambassador.jpg) center center no-repeat;
    background-size: cover;
    padding: 3.5rem 0 3rem;
    text-align: center;
    color: #fff;
}
#tp-ambassador .logo {
  width: 350px;
  margin: 0 auto 1.5rem;
}
#tp-ambassador .txt {
  font-size: 17px;
}
#tp-ambassador .btn {
  background: transparent;
  margin: 2rem auto 0;
}
@media (max-width: 767.98px) {
  #tp-ambassador {
    padding: 2rem 0;
  }
  #tp-ambassador .logo {
    width: 200px;
  }
  #tp-ambassador .txt {
    font-size: 14px;
  }
}
@media (max-width: 320.98px) {
  #tp-ambassador .logo {
    width: 180px;
  }
  #tp-ambassador .txt {
    font-size: 13px;
  }
}


/* 4.5 News
 * ------------------------------*/
#tp-news {
    position: relative;
   border-right: 0.75rem solid #dad8c8;
}
#tp-news a:hover {
    text-decoration: none;
}
@media (max-width: 991.98px) {
    #tp-news {
        border-right: none;
    }
}

#tp-news .news-cont {
    margin: 50px 0 0;
    height: 720px;
    overflow-y: auto;
    overflow-x: hidden;
}
#tp-news .news-cont p {
    letter-spacing: 0;
}
#tp-news .news-cont {
  scrollbar-base-color: #197b88;
}
#tp-news .news-cont::-webkit-scrollbar {
  width: 2px;
  height: auto;
}
#tp-news .news-cont::-webkit-scrollbar-track {
  background: #fff;
}
#tp-news .news-cont::-webkit-scrollbar-thumb {
  background: #197b88;
}
@media (max-width: 767.98px) {
    #tp-news .news-cont {
        margin-top: 40px;
        height: 560px;
    }
}

#tp-news ul.news-list li {
    margin: 0 10px 30px 0;
    overflow: hidden;
}
#tp-news ul.news-list li:last-of-type {
    margin-bottom: 0;
}
#tp-news ul.news-list .day {
    margin-bottom: 10px;
}
@media (max-width: 767.98px) {
    #tp-news ul.news-list li {
        margin: 0 5px 10px 0;
    }
    #tp-news ul.news-list .day {
        margin-bottom: 5px;
    }
}

#tp-news .btn-small {
    right: 45px;
}
@media (max-width: 991.98px) {
    #tp-news .btn-small {
        right: 20px;
    }
}
@media (max-width: 767.98px) {
    #tp-news .btn-small {
        right: 15px;
    }
}

/* 4.6 Recruit
 * ------------------------------*/
#tp-recruit {
    position: relative;
    border-left: 0.75rem solid #dad8c8;
    background: url(../image/img-recruit-210727.jpg) center bottom no-repeat;
    background-size: contain;
}
#tp-recruit .section-sub {
    margin-bottom: 50px;
}
#tp-recruit .sub {
    margin-bottom: 30px;
    font-size: 28px;
    line-height: 1.8;
}
@media (max-width: 991.98px) {
    #tp-recruit {
        border-left: none;
        padding-bottom: 450px !important;
    }
}
@media (max-width: 767.98px) {
    #tp-recruit {
      padding-bottom: 330px !important;
    }
    #tp-recruit .section-sub {
        margin-bottom: 40px;
    }
    #tp-recruit .sub {
        font-size: 20px;
        margin-bottom: 20px;
    }
}
@media (max-width: 575.98px) {
    #tp-recruit {
        padding-bottom: 230px !important;
    }
}
@media (max-width: 320.98px) {
    #tp-recruit {
        padding-bottom: 180px !important;
    }
    #tp-recruit .sub {
        font-size: 18px;
    }
}

/* 4.7 Info
 * ------------------------------*/
#tp-info a {
    display: block;
    color: #fff;
}
#tp-info a:hover {
    color: #fff;
    text-decoration: none;
}
#tp-info .bg-green:hover {
    background: #056774;
    transition: 0.5s;
}
#tp-info a:hover img {
    transition: 0.5s;
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}
#tp-info .col-6 {
    max-width: 23.5%;
}
@media (max-width: 991.98px) {
    #tp-info .col-6 {
        max-width: 49%;
        margin-bottom: 1rem;
    }
}
@media (max-width: 767.98px) {
    #tp-info a {
        height: 140px;
        display: flex;
        flex-flow: row wrap;
        justify-content: center;
        align-items: center;
        align-content: center;
    }
    #tp-info .col-6 {
        max-width: 48%;
        height: 140px;
    }
}

#tp-info .section-ttl {
    font-size: 30px;
}
#tp-info .section-sub {
    margin-bottom: 20px;
}
@media (max-width: 1199.98px) {
  #tp-info .section-ttl {
    font-size: 25px;
    white-space: nowrap;
  }
}
@media (max-width: 991.98px) {
  #tp-info .section-ttl {
    font-size: 30px;
    white-space: normal;
  }
}
@media (max-width: 767.98px) {
    #tp-info .section-ttl {
        width: 100%;
        font-size: 19px;
        line-height: 1.3;
        margin-bottom: 5px;
    }
    #tp-info .section-sub {
        width: 100%;
        margin-bottom: 0;
    }
}

#tp-info img {
    display: block;
    width: 80%;
    height: auto;
}

/* 4.8 Recommend (lease-management / News)
 * ------------------------------*/
#tp-recommend .container-fluid {
    position: relative;
}
#tp-recommend .btn-small.absolute-right {
    top: 70px;
    right: 80px;
}

.recommend-list .col-6 {
    margin-bottom: 25px;
    position: relative;
}
.recommend-list.news .col-6 {
    margin-bottom: 40px;
}
.recommend-list .day {
    margin: 18px 0 0;
}
.recommend-list .sub {
    font-size: 18px;
    text-align: left;
    margin: 20px 0 5px;
    letter-spacing: 0;
}
.recommend-list.news .sub {
    font-size: 14px;
    margin: 12px 0 0;
}
.recommend-list .txt {
    font-size: 12px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.recommend-list.works .txt {
    margin-top: 15px;
}
.recommend-list a:hover {
    text-decoration: none;
}
.recommend-list .imagearea {
  height: auto;
}
.recommend-list .imagearea-content > img {
  object-fit: contain;
}
@media (max-width: 767.98px) {
    .recommend-list .col-6 {
        margin-bottom: 10px;
    }
    .recommend-list .col-6 {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }
    .recommend-list.news .col-6 {
        margin-bottom: 30px;
    }
    .recommend-list.works.kanren .col-6:nth-of-type(odd) {
        padding-left: 15px !important;
        padding-right: 7px !important;
    }
    .recommend-list.works.kanren .col-6:nth-of-type(even) {
        padding-left: 7px !important;
        padding-right: 15px !important;
    }
    .recommend-list .day {
        margin-top: 15px;
    }
    .recommend-list .sub {
        font-size: 14px;
        margin-top: 15px;
    }
    .recommend-list.news .sub {
        margin-top: 10px;
    }
    .recommend-list.works .sub {
        word-break: break-all;
        overflow-wrap: break-word;
    }
    .recommend-list .txt {
        font-size: 11px;
    }
}
@media (max-width: 320.98px) {
    .recommend-list .day {
        font-size: 11px !important;
    }
}

.recommend-list .day-box {
    position: relative;
}

.recommend-list .icon-news {
    position: absolute;
    top: 0;
    right: 0;
}

.recommend-list .icon-logo {
    display: block;
    width: 120px;
    height: auto;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
}
.recommend-list .icon-logo img {
    display: block;
    max-width: 100%;
}

/* 4.9 Service (lease-management)
 * ------------------------------*/
#tp-service .container-fluid {
    padding-left: 0;
    padding-right: 0;
}
#tp-service,
#tp-service a {
    color: #fff;
}
#tp-service a:hover {
    color: #fff;
    text-decoration: none;
}
#tp-service .section-sub {
    margin-bottom: 50px;
}
@media (max-width: 767.98px) {
    #tp-service .section-sub {
        margin-bottom: 30px;
    }
}

#tp-service .img-bg {
    background: url(../image/lease-management/img-service-210615.jpg) center center no-repeat;
    background-size: cover;
}

/* index
 * ------------------------------*/
#cate-main.lease-service-moshimo.service {
    padding: 1.7em!important;
    padding-bottom: 0!important;
    height: 630px;
    background-image: none;
    background: #dad8c8;
}
.lease-service-moshimo.service .bg {
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    background-color: #FFF;
    text-align: center;
}
.lease-service-moshimo.service .bg .title {
    margin-bottom: 76px;
}
.lease-service-moshimo.service .bg .title .en {
    padding-bottom: 4px;
    font-size: 55px;
    font-weight: 700;
    letter-spacing: 0.1em;
    border-bottom: 2px solid #000;
}
.lease-service-moshimo.service .bg .title .jp {
    margin-top: 25px;
    display: block;
    font-size: 17px;
    letter-spacing: 0.15em;
}
.lease-service-moshimo.service .bg .txt {
    margin-bottom: 0;
    width: 100%;
    font-size: 17px;
    font-weight: 700;
    line-height: 2.12;
}
.lease-service-moshimo.service #breadcrumb ul li,
.lease-service-moshimo.service #breadcrumb ul li a {
    color: #000;
}
.lease-service-moshimo.service #breadcrumb ul li::after {
    color: #000;
}
.lease-service-moshimo.service #breadcrumb ul li a:hover {
    opacity: 0.5;
}
main.service {
    padding-top: 0!important;
}
main.service .container-fluid {
    padding-top: 0!important;
}
main.service .link-list li {
    display: flex;
    justify-content: space-between;
}
main.service .link-list li:not(:last-of-type) {
    margin-bottom: 50px;
}
main.service .link-list li .photo-box {
    width: 50%;
    background: url("../image/lease-management/service/photo25.jpg") no-repeat center / cover;
}
main.service .link-list li .photo-box.pho01 {
    background-image: url("../image/lease-management/service/photo26.jpg");
}
main.service .link-list li .photo-box.pho02 {
    background-image: url("../image/lease-management/service/photo27.jpg");
}
main.service .link-list li .photo-box.pho03 {
    background-image: url("../image/lease-management/service/photo28.jpg");
}
main.service .link-list li .photo-box.pho04 {
    background-image: url("../image/lease-management/service/photo29.jpg");
}
main.service .link-list li .photo-box.pho05 {
    background-image: url("../image/lease-management/service/photo30.jpg");
}
main.service .link-list li .text-box {
    padding: 52px 55px 54px;
    width: 50%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    background-color: #F0EFE9;
}
main.service .link-list li .text-box .ttl {
    margin-bottom: 9px;
    color: #197B88;
    font-size: 25px;
    font-weight: 700;
}
main.service .link-list li .text-box .ttl .sml {
    display: block;
    font-size: 18px;
}
main.service .link-list li .text-box .txt {
    margin-bottom: 49px;
    min-height: 80px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.85;
}
main.service .link-list li .text-box .btn {
    max-width: 146px;
    margin: 0 auto;
    padding: 11px 10px 10px;
    border: 1px solid #000;
}
@media (max-width: 991.98px) {
    main.service .link-list li .text-box {
        padding: 52px 40px 54px;
    }
}
@media (max-width: 767.98px) {
    #cate-main.lease-service-moshimo.service {
        padding: 1.2em!important;
        padding-bottom: 0!important;
        height: 360px;
    }
    #cate-main.lease-service-moshimo.service .bg {
        justify-content: flex-end;
        padding-bottom: 4em;
    }
    .lease-service-moshimo.service .bg .title {
        margin-bottom: 30px;
    }
    .lease-service-moshimo.service .bg .title .en {
        padding-bottom: 6px;
        font-size: 40px;
    }
    .lease-service-moshimo.service .bg .title .jp {
        margin-top: 20px;
        font-size: 13px;
    }
    .lease-service-moshimo.service .bg .txt {
        font-size: 12px;
    }
    main.service .container-fluid {
        padding-top: 0!important;
        padding-bottom: 3em;
    }
    main.service .link-list li {
        display: block;
    }
    main.service .link-list li:not(:last-of-type) {
        margin-bottom: 30px;
    }
    main.service .link-list li .photo-box {
        width: 100%;
        height: 300px;
    }
    main.service .link-list li .text-box {
        padding: 20px;
        width: 100%;
    }
    main.service .link-list li .text-box .ttl {
        font-size: 22px;
    }
    main.service .link-list li .text-box .ttl .sml {
        font-size: 15px;
    }
    main.service .link-list li .text-box .txt {
        margin-bottom: 30px;
        min-height: inherit;
    }
}
@media (max-width: 767.98px) and (min-width: 576px) {
    #cate-main.lease-service-moshimo.service {
        padding: 1.86em!important;
        padding-bottom: 0!important;
    }
}
@media (max-width: 374.98px) {
    .lease-service-moshimo.service .bg .txt {
        font-size: 10px;
    }
}

/* service02
 * ------------------------------*/
#cate-main.lease-service-moshimo.service02 {
    background-image: url("../image/lease-management/service/main-moshimo02.jpg");
}
.lease-moshimo-wrap.service02 .moshimo-list04 {
    margin: 45px 0 0;
}
.lease-moshimo-wrap.service02 .moshimo-list04 li:last-of-type {
    display: flex;
    align-items: center;
    justify-content: center;
}
.lease-moshimo-wrap.service02 .moshimo-list04 li .text {
    padding: 40px 0 20px;
    width: 100%;
    border-top: 2px solid #197B88;
    border-bottom: 2px solid #197B88;
    box-sizing: border-box;
}
.lease-moshimo-wrap.service02 .moshimo-list04 li .ttl01 {
    color: #197B88;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.7;
    text-align: center;
    letter-spacing: -0.06em;
}
.lease-moshimo-wrap.service02 .moshimo-list04 li .txt01 {
    margin-top: -6px;
    color: #197B88;
    font-size: 30px;
    font-weight: 700;
    text-align: center;
}
.lease-moshimo-wrap.service02 .moshimo-list04 li {
    margin-top: 45px;
}
.lease-moshimo-wrap.service02 .moshimo-list04 li .pho {
    margin-bottom: 33px;
}
.lease-moshimo-wrap.service02 .moshimo-list04 li .ttl {
    margin-bottom: 8px;
    font-size: 19px;
}
.lease-moshimo-wrap.service02 .moshimo-list04 li .txt {
    font-size: 15px;
}
@media (max-width: 767.98px) {
    .lease-moshimo-wrap.service02 .moshimo-list04 li:last-of-type {
        width: 100%;
    }
}
@media (max-width: 374.98px) {
    .lease-moshimo-wrap.service02 .moshimo-list04 li .ttl01 {
        font-size: 16px;
    }
    .lease-moshimo-wrap.service02 .moshimo-list04 li .txt01 {
        font-size: 26px;
    }
}

/* service03
 * ------------------------------*/
#cate-main.lease-service-moshimo.service03 {
    background-image: url("../image/lease-management/service/main-moshimo03.jpg");
}
.lease-moshimo-wrap.service03 .title {
    margin-top: 91px;
    padding: 17px 20px 16px;
    display: flex;
    justify-content: space-between;
    font-size: 20px;
    background-color: #F0EFEA;
    border-radius: 10px;
}
.lease-moshimo-wrap.service03 .title .txt {
    display: inline-block;
    margin-top: -6px;
}
.lease-moshimo-wrap.service03 .title .icon-list {
    display: flex;
}
.lease-moshimo-wrap.service03 .title .icon-list li {
    font-size: 15px;
    display: flex;
    align-items: center;
}
.lease-moshimo-wrap.service03 .title .icon-list li:not(:last-of-type) {
    margin-right: 15px;
}
.lease-moshimo-wrap.service03 .moshimo-list04 {
    margin-top: 8px;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li {
    position: relative;
    margin-top: 65px;
    padding-bottom: 60px;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .ttl {
    margin: 0 -9% 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-family: 'Midashi Go MB31', sans-serif !important;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .ttl .sml {
    font-size: 18px;
    font-feature-settings: "palt";
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .ttl img {
    margin-right: 2px;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .ttl img:last-of-type {
    margin-right: 8px;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .txt {
    font-size: 15px;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .ttl span {
    display: inline-block;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .ttl .txt {
    font-size: 20px;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .notes {
    width: 100%;
    padding: 4px 0;
    position: absolute;
    bottom: 0;
    left: 0;
    margin: 0;
    color: #197B88;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    background-color: #F0EFEA;
    border-radius: 5px;
    font-family: 'Midashi Go MB31', sans-serif !important;
    box-sizing: border-box;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .notes01 {
    padding-left: 20px;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .notes02 {
    padding-left: 60px;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .notes .sml {
    display: inline-block;
    font-size: 18px;
}
.lease-moshimo-wrap.service03 .moshimo-list04 li .notes .tag {
    width: 67px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    color: #FFF;
    font-size: 16px;
    background-color: #197B88;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}
@media (max-width: 1188.98px) {
    .lease-moshimo-wrap.service03 .title {
        display: block;
        text-align: center;
    }
    .lease-moshimo-wrap.service03 .title .icon-list {
        justify-content: center;
    }
}
@media (max-width: 991.98px) {
    .lease-moshimo-wrap.service03 .moshimo-list04 li .ttl,
    .lease-moshimo-wrap.service03 .moshimo-list04 li .ttl .txt {
        font-size: 16px;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li .ttl .txt .sml {
        font-size: 14px;
    }
}
@media (max-width: 767.98px) {
    .lease-moshimo-wrap.service03 .title {
        margin-top: 40px;
        padding: 17px 8px 16px;
        display: block;
    }
    .lease-moshimo-wrap.service03 .title .txt {
        margin-bottom: 14px;
        display: block;
        margin-top: 0;
        font-size: 14px;
        text-align: center;
    }
    .lease-moshimo-wrap.service03 .title .icon-list {
        margin: -6px 10px 0;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .lease-moshimo-wrap.service03 .title .icon-list li {
        margin: 6px auto 0;
        font-size: 13px;
        width: 50%;
    }
    .lease-moshimo-wrap.service03 .title .icon-list li:not(:last-of-type) {
        margin: 6px auto 0 0;
    }
    .lease-moshimo-wrap.service03 .title .icon-list li:not(:nth-of-type(2n)) {
        margin: 6px auto 0 0;
    }
    .lease-moshimo-wrap.service03 .title .icon-list li img {
        margin-right: 6px;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 {
        margin-top: 8px;
        display: block;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li {
        margin-top: 30px;
        padding-bottom: 0;
        width: 100%;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li .ttl {
        margin: 0 -12px 4px;
        font-size: 14px;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li .ttl .txt {
        font-size: 14px;
        margin-left: 0;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li .ttl .sml {
        display: inline-block;
        font-size: 13px;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li .txt {
        font-size: 12px;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li .notes {
        position: relative;
        margin-top: 17px;
        padding: 2px 0 3px;
        font-size: 15px;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li .notes01 {
        padding-left: 50px;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li .notes02 {
        padding-left: 50px;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li .notes .sml {
        font-size: 14px;
    }
    .lease-moshimo-wrap.service03 .moshimo-list04 li .notes .tag {
        width: 50px;
        font-size: 14px;
    }
}


/* service04
 * ------------------------------*/
#cate-main.lease-service-moshimo.service04 {
    background-image: url("../image/lease-management/service/main-moshimo04.jpg");
}
.lease-moshimo-wrap .moshimo-list04 {
    margin: 22px 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
}
.lease-moshimo-wrap .moshimo-list04::after {
    width: 30%;
    content: '';
}
.lease-moshimo-wrap .moshimo-list04 li {
    margin-top: 60px;
    width: 30%;
    word-break: break-all;
}
.lease-moshimo-wrap .moshimo-list04 li a {
    display: block;
}
.lease-moshimo-wrap .moshimo-list04 li span {
    display: block;
}
.lease-moshimo-wrap .moshimo-list04 li .pho {
    margin-bottom: 33px;
    text-align: center;
}
.lease-moshimo-wrap .moshimo-list04 li .pho img {
    width: 181px;
}
.lease-moshimo-wrap .moshimo-list04 li .ttl {
    margin-bottom: 6px;
    color: #197B88;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.01em;
    text-align: center;
}
.lease-moshimo-wrap .moshimo-list04 li .txt {
    font-size: 16px;
    line-height: 1.67;
}
@media (max-width: 1199.98px) {
    .lease-moshimo-wrap .moshimo-list04 li {
        width: 48%;
    }
}
@media (max-width: 767.98px) {
    .lease-moshimo-wrap .moshimo-list04 {
        display: block;
    }
    .lease-moshimo-wrap .moshimo-list04::after {
        display: none;
    }
    .lease-moshimo-wrap .moshimo-list04 li {
        width: auto;
    }
    .lease-moshimo-wrap .moshimo-list04 li .pho {
        margin-bottom: 20px;
    }
    .lease-moshimo-wrap .moshimo-list04 li .pho img {
        max-width: 181px;
        width: 100%;
    }
    .lease-moshimo-wrap .moshimo-list04 li .ttl {
        font-size: 16px;
    }
}
@media (max-width: 374.98px) {
    .lease-moshimo-wrap .moshimo-list04 {
        display: block;
    }
    .lease-moshimo-wrap .moshimo-list04 li {
        width: 100%;
    }
}




/* 4.10 Request (lease-management)
 * ------------------------------*/
#tp-request {
    background: url(../image/lease-management/img-request.jpg) center center no-repeat;
    background-size: cover;
    color: #fff;
    border-left: 0.75rem solid #dad8c8;
}
#tp-request .section-sub {
    margin-bottom: 50px;
}
#tp-request .btn {
    background-image: none;
}
@media (max-width: 991.98px) {
    #tp-request {
        border-left: none;
    }
}
@media (max-width: 767.98px) {
    #tp-request .section-sub {
        margin-bottom: 30px;
    }
}

/* 4.11 Contact (lease-management)
 * ------------------------------*/
#tp-contact {
    background: url(../image/lease-management/img-contact-2507.jpg) center center no-repeat;
    background-size: cover;
    color: #fff;
    border-left: 0.75rem solid #dad8c8;
}
#tp-contact .section-sub {
    margin-bottom: 50px;
}
#tp-contact .btn {
    background-image: none;
}
@media (max-width: 991.98px) {
    #tp-contact {
        border-left: none;
    }
}
@media (max-width: 767.98px) {
    #tp-contact .section-sub {
        margin-bottom: 30px;
    }
}

/* 4.12 Event (new-construction)
 * ------------------------------*/
#tp-event .container-fluid {
    position: relative;
}
#tp-event .btn-small.absolute-right {
    top: 70px;
    right: 80px;
}

.event-list .sub {
    font-size: 15px;
    margin: 10px 0 0;
}
.event-list .day {
    text-align: center;
    line-height: 1;
}
.event-list .icon {
    display: block;
    margin: 0 0 22px;
    font-size: 11px;
    text-align: center;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1;
}
.event-list .icon span {
    display: inline-block;
    padding-bottom: 5px;
    border-bottom: 1px solid #000;
}
.event-list a:hover {
    text-decoration: none;
}
@media (max-width: 767.98px) {
    .event-list .sub {
        font-size: 13px;
        margin-top: 15px;
    }
    .event-list .day {
        margin-bottom: -5px;
    }
    .event-list .icon {
        font-size: 10px;
        margin-bottom: 15px;
    }
}

#tp-event .imagearea {
    height: auto;
    margin: 0 0 20px;
}
#tp-event .imagearea-content > img {
  object-fit: contain;
}
@media (max-width: 767.98px) {
    #tp-event .imagearea {
        margin-bottom: 15px;
    }
}

/* 4.13 Lineup (new-construction)
 * ------------------------------*/
#tp-lineup a:hover {
    text-decoration: none;
}
#tp-lineup .container-fluid {
    position: relative;
}

#tp-lineup dl.dl-lineup {
    margin: 20px 0 0;
}
#tp-lineup dl.dl-lineup img {
    display: block;
    width: 120px;
    height: auto;
}
#tp-lineup dl.dl-lineup dt {
    text-align: center;
}
#tp-lineup dl.dl-lineup dd {
    width: 80%;
    border-top: 1px solid #000;
    line-height: 1.5;
    text-align: center;
    padding-top: 15px;
    margin: 20px auto 0;
}
@media (max-width: 1199.98px) {
    #tp-lineup dl.dl-lineup dd {
        width: 100%;
    }
}
@media (max-width: 991.98px) {
    #tp-lineup dl.dl-lineup {
        margin-top: 10px;
    }
    #tp-lineup dl.dl-lineup dd {
        padding-top: 10px;
        margin-top: 5px;
    }
}

/* 4.14 S-stage (new-construction)
 * ------------------------------*/
#tp-s-stage {
    background: url(../image/new-construction/img-s-stage.jpg) center center no-repeat;
    background-size: cover;
}
#tp-s-stage,
#tp-s-stage a {
    color: #fff;
}
#tp-s-stage a:hover {
    color: #fff;
    text-decoration: none;
}
#tp-s-stage .bg-green {
    background: rgba(25,123,136,0.84);
}
#tp-s-stage .container-fluid {
    padding-left: 0;
    padding-right: 0;
}

#tp-s-stage .section-ttl {
    margin: 20px 0;
}
#tp-s-stage .section-ttl img {
    width: 55%;
    height: auto;
}
#tp-s-stage .section-sub {
    margin: 0 0 50px;
}
@media (max-width: 1199.98px) {
    #tp-s-stage .section-ttl img {
        width: 60%;
    }
}
@media (max-width: 767.98px) {
    #tp-s-stage .section-sub {
        margin-bottom: 30px;
    }
}
@media (max-width: 575.98px) {
    #tp-s-stage .section-ttl img {
        width: 75%;
    }
}

/* 4.15 Quality (new-construction)
 * ------------------------------*/
#tp-quality {
    background: url(../image/new-construction/img-quality.jpg) center center no-repeat;
    background-size: cover;
    color: #fff;
    border-right: 0.75rem solid #dad8c8;
}
#tp-quality a {
    display: block;
    color: #fff;
    padding: 5rem 3rem;
}
#tp-quality a:hover {
    color: #fff;
    text-decoration: none;
}
#tp-quality:hover {
    opacity: 0.7;
    transition: 0.7s;
}
#tp-quality .section-sub {
    margin-bottom: 0;
}
@media (max-width: 991.98px) {
    #tp-quality {
        border-right: none;
    }
    #tp-quality a {
        padding: 3rem 0.5rem;
    }
}

/* 4.16 Support (new-construction)
 * ------------------------------*/
#tp-support {
    background: url(../image/new-construction/img-support-2507.jpg) center center no-repeat;
    background-size: cover;
    color: #fff;
    border-left: 0.75rem solid #dad8c8;
    padding: 0;
}
#tp-support a {
    display: block;
    color: #fff;
    padding: 5rem 3rem;
}
#tp-support a:hover {
    color: #fff;
    text-decoration: none;
}
#tp-support:hover {
    opacity: 0.8;
    transition: 0.7s;
}
#tp-support .section-sub {
    margin-bottom: 0;
}
@media (max-width: 991.98px) {
    #tp-support {
        border-left: none;
        margin-top: 1rem;
    }
    #tp-support a {
        padding: 3rem 0.5rem;
    }
}

/* 4.17 LIfeup / Model / Banner  (new-construction)
 * ------------------------------*/
#tp-life-model .flex-box {
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    color: #fff;
}
#tp-life-model .flex-box .col {
    flex: 0 1 49.2%;
    box-sizing: border-box;
    padding: 4rem 1rem 3rem;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}
#tp-life-model .flex-box .col.left {
    background: url("../image/new-construction/img-lifeup.jpg") bottom center no-repeat;
    background-size: cover;
    padding-bottom: 7.5rem;
}
#tp-life-model .flex-box .col.right {
    background: url("../image/new-construction/img-model.jpg") center center no-repeat;
    background-size: cover;
}
#tp-life-model .flex-box .logo {
    width: 325px;
    height: auto;
    margin: 0 auto 2rem;
}
#tp-life-model .flex-box .sub {
    width: 100%;
    font-size: 48px;
    margin: 0 0 1.5rem;
}
#tp-life-model .flex-box .subsub {
    width: 100%;
    font-size: 28px;
    margin: 0 0 1.5rem;
    line-height: 1.8;
}
#tp-life-model .flex-box .subsub.small {
    font-size: 20px;
}
#tp-life-model .flex-box .btn,
#tp-life-model .flex-box .btn-small {
    background: transparent;
    margin: 0.5rem auto 0;
}
@media (max-width: 1199.98px) {
    #tp-life-model .flex-box .col {
        flex: 0 1 48.9%;
    }
    #tp-life-model .flex-box .logo {
        width: 280px;
    }
    #tp-life-model .flex-box .sub {
        font-size: 38px;
    }
    #tp-life-model .flex-box .subsub {
        font-size: 25px;
    }
}
@media (max-width: 991.98px) {
    #tp-life-model .flex-box .col {
        flex: 0 1 48.3%;
    }
    #tp-life-model .flex-box .logo {
        width: 230px;
    }
    #tp-life-model .flex-box .sub {
        font-size: 28px;
    }
    #tp-life-model .flex-box .subsub {
        font-size: 20px;
    }
    #tp-life-model .flex-box .subsub.small {
        font-size: 16px;
    }
}
@media (max-width: 767.98px) {
    #tp-life-model .flex-box .col {
        flex: 0 1 100%;
        margin-bottom: 1rem;
        padding: 2.5rem 1rem 3rem;
    }
    #tp-life-model .flex-box .col.left {
      padding-bottom: 5rem;
    }
    #tp-life-model .flex-box .col.right {
        margin-bottom: 0;
    }
    #tp-life-model .flex-box .logo {
        width: 200px;
        margin-bottom: 1.5rem;
    }
    #tp-life-model .flex-box .sub {
        font-size: 23px;
        margin-bottom: 1rem;
    }
    #tp-life-model .flex-box .subsub {
        font-size: 16px;
        margin-bottom: 1rem;
    }
    #tp-life-model .flex-box .subsub.small {
        font-size: 14px;
    }
}

/* 4.18 Main under  (real-estate)
 * ------------------------------*/
#tp-real .flex-box {
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    color: #fff;
}
#tp-real .flex-box .col {
    flex: 0 1 49.2%;
    box-sizing: border-box;
    padding: 0;
    background: #197b88;
}
#tp-real .flex-box .col a {
    display: block;
    padding: 4rem 1rem;
    color: #fff;
    background: inherit;
}
#tp-real .flex-box .col a:hover {
    text-decoration: none;
    background: #056774;
    transition: 0.5s;
}
#tp-real .flex-box .sub {
    font-size: 48px;
    line-height: 1.2;
    margin: 1rem 0 0.5rem;
}
#tp-real .flex-box .sub span {
    display: inline-block;
    margin: 0 0.3rem;
    font-size: 80px;
}
@media (max-width: 1199.98px) {
    #tp-real .flex-box .col {
        flex: 0 1 48.9%;
    }
    #tp-real .flex-box .sub {
        font-size: 38px;
    }
    #tp-real .flex-box .sub span {
        font-size: 65px;
    }
}
@media (max-width: 991.98px) {
    #tp-real .flex-box .col {
        flex: 0 1 48.3%;
    }
    #tp-real .flex-box .sub {
        font-size: 25px;
    }
    #tp-real .flex-box .sub span {
        font-size: 45px;
    }
    #tp-real .flex-box .subsub {
        font-size: 20px;
    }
}
@media (max-width: 767.98px) {
    #tp-real .flex-box .col {
        flex: 0 1 100%;
        margin-bottom: 1rem;
    }
    #tp-real .flex-box .col:last-of-type {
        margin-bottom: 0;
    }
    #tp-real .flex-box .col a {
        padding: 1.5rem 1rem;
    }
    #tp-real .flex-box .sub {
        font-size: 23px;
    }
    #tp-real .flex-box .sub span {
        font-size: 40px;
    }
    #tp-real .flex-box .subsub {
        font-size: 18px;
    }
}
@media (max-width: 320.98px) {
    #tp-real .flex-box .sub {
        font-size: 20px;
    }
    #tp-real .flex-box .sub span {
        font-size: 37px;
    }
    #tp-real .flex-box .subsub {
        font-size: 16px;
    }
}

/* 4.19 Voice (real-estate)
 * ------------------------------*/
#tp-real-voice .subsub {
    text-align: left;
    margin: 2rem 0;
}
#tp-real-voice .btn {
    margin: 3rem 0 0;
}
@media (max-width: 1199.98px) {
    #tp-real-voice .subsub {
        margin: 0 0 1rem;
    }
    #tp-real-voice .btn {
        margin-top: 2rem;
    }
}
@media (max-width: 767.98px) {
    #tp-real-voice .subsub {
        margin: 0.2rem 0 1rem;
    }
    #tp-real-voice .btn {
        margin: 2rem auto 0;
    }
}

/* 4.20 Search (real-estate)
 * ------------------------------*/
#tp-real-search .real-search-list .col-6 {
    padding-left: 30px;
    padding-right: 30px;
    margin-bottom: 25px;
}
#tp-real-search .real-search-list .sub {
    font-size: 18px;
    text-align: center;
    margin: 20px 0 5px;
    letter-spacing: 0;
}
#tp-real-search .real-search-list a:hover {
    text-decoration: none;
}
@media (max-width: 1199.98px) {
    #tp-real-search .real-search-list .col-6 {
        padding-left: 20px;
        padding-right: 20px;
    }
}
@media (max-width: 767.98px) {
    #tp-real-search .real-search-list {
        margin-top: 40px;
    }
    #tp-real-search .real-search-list .col-6 {
        margin-bottom: 15px;
        padding-left: 8px;
        padding-right: 8px;
    }
    #tp-real-search .real-search-list .sub {
        font-size: 14px;
        margin-top: 15px;
    }
}

#tp-real-search .imagearea {
    height: 250px;
}
@media (max-width: 1199.98px) {
    #tp-real-search .imagearea {
        height: 180px;
    }
}
@media (max-width: 991.98px) {
    #tp-real-search .imagearea {
        height: 230px;
    }
}
@media (max-width: 480.98px) {
    #tp-real-search .imagearea {
        height: 150px;
    }
}
@media (max-width: 380.98px) {
    #tp-real-search .imagearea {
        height: 130px;
    }
}
@media (max-width: 320.98px) {
    #tp-real-search .imagearea {
        height: 110px;
    }
}

/*-------------------------------
 * 5. CONTENT
 * ----------------------------*/
/* 5.1 Cate Main
 * ------------------------------*/
#cate-main {
    width: 100%;
    height: 100%;
    height: 100vh;
    margin: 0;
    padding: 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    z-index: 0;
    position: relative;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    -webkit-animation: fadeIn 1s linear both;
    animation: fadeIn 1s linear both;
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}
#cate-main.lease-management {
    background-image: url(../image/lease-management/main-210622.jpg);
}
#cate-main.recommend {
    background-image: url(../image/lease-management/recommend/main-210622.jpg);
}
#cate-main.new-construction {
    background-image: url(../image/new-construction/main-210615.jpg);
}
#cate-main.quality {
    background-image: url(../image/new-construction/quality/main-210719.jpg);
}
#cate-main.support {
    background-image: url(../image/new-construction/support/main.jpg);
}
#cate-main.bunjouch {
    background-image: url(../image/new-construction/bunjouch/main.jpg);
}
#cate-main.renovation {
    background-image: url(../image/renovation/main-210622.jpg);
}
#cate-main.lineup {
    background-image: url(../image/new-construction/lineup/main-210622.jpg);
}
#cate-main.news {
    background-image: url(../image/news/main-210622.jpg);
}
#cate-main.our-business {
    background-image: url(../image/our-business/main.jpg);
}
#cate-main.recruit {
    background-image: url(../image/recruit/main-2507.jpg);
    background-position: top center !important;
}
#cate-main.concept {
    background-image: url("../image/concept/main-2507_2.jpg");
    background-position: bottom center !important;
}
#cate-main.outline {
    background-image: url("../image/outline/main.jpg");
}
#cate-main.works {
    background-image: url("../image/works/main-210622.jpg");
}
#cate-main.ambassador {
    background-image: url("../image/ambassador/main-210622.jpg");
}
#cate-main.real-estate {
    background-image: url("../image/real-estate/main.jpg");
}
#cate-main.reason {
    background-image: url("../image/real-estate/reason/main-210728.jpg");
    background-position: right center  !important;
}
#cate-main.features {
    background-image: url("../image/real-estate/features/main-210727.jpg");
}
#cate-main.shop {
    background-image: url("../image/shop/main.jpg");
}
#cate-main.sp-info-form {
    background-image: url("../image/sp-info-form/main.jpg");
}
#cate-main.life-up-town {
    background-image: url("../image/new-construction/life-up-town/main.jpg")  !important;
    background-position: bottom center  !important;
}
#cate-main.life-up-town.h-large {
    height: 100%;
    height: 100vh;
    background-position: bottom center !important;
}
#cate-main.life-up-town.h-mediun {
    background-position: 50% 30% !important;
}
#cate-main.lease-service-moshimo {
    background-image: url(../image/lease-management/service/main-moshimo.jpg);
}
#cate-main.lease-service05 {
    background-image: url(../image/lease-management/service/main-service05.jpg);
    background-position: left center !important;
}
#cate-main.service06 {
    background-image: url(../image/lease-management/service/main-service06.jpg);
}
#cate-main.service07 {
    background-image: url(../image/lease-management/service/main-service07.png?=20241016.1);
}
#cate-main.journal {
    display: block;
    height: auto;
}
#cate-main.h-mediun {
    height: 460px;
}
#cate-main.h-large {
    background: #fff;
    min-height: 600px;
    display: block;
    height: auto;
}
#cate-main.h-auto {
    height: auto;
    padding-bottom: 20px;
}
@media (max-width: 1199.98px) {
    #cate-main.life-up-town {
        height: 60vh !important;
        background-position: bottom center !important;
    }
    #cate-main.life-up-town.h-mediun {
        background-position: 50% 10% !important;
    }
}
@media (max-width: 991.98px) {
    #cate-main.h-large {
        min-height: 0;
        padding-top: 100px;
        padding-bottom: 80px;
    }
    #cate-main.h-auto {
        padding-top: 100px;
    }
}
@media (max-width: 767.98px) {
    #cate-main.lease-management {
        background-position: 85% 50% !important;
    }
    #cate-main.recruit {
        background-position: 62% 50% !important;
    }
    #cate-main.support {
        background-position: 90% 50% !important;
    }
    #cate-main.h-mediun {
        height: 300px;
    }
    #cate-main.h-auto,
    #cate-main.h-auto-xs {
        height: auto !important;
        padding: 100px 0 40px;
    }
}
@media (max-width: 575.98px) {
    #cate-main.lease-management,
    #cate-main.new-construction,
    #cate-main.real-estate {
        height: 60vh;
    }
    #cate-main.reason {
        background-position: 80% 50% !important;
    }
    #cate-main.lease-service05 {
        background-position: 30% 50% !important;
    }
}

#cate-main .cate-ttl {
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 88px;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1.3;
}
#cate-main .cate-ttl div {
    padding: 0 0 15px;
    display: inline-block;
    border-bottom: 2px solid #fff;
    -webkit-animation: fadeIn 1s linear both;
    animation: fadeIn 1s linear both;
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}
#cate-main .cate-ttl.ja {
    font-family: 'Midashi Go MB31', sans-serif !important;
    line-height: 1.6;
}
#cate-main.reason .cate-ttl.ja {
    line-height: 1.3;
}
#cate-main .cate-ttl .num {
    display: inline-block;
    font-size: 93px;
    vertical-align: -9%;
    margin: 0 3px;
}
#cate-main.journal .cate-ttl {
    width: 270px;
    margin: 30px auto 50px;
}
#cate-main.h-mediun .cate-ttl {
    font-size: 60px;
}
#cate-main.h-large .cate-ttl,
#cate-main.h-auto .cate-ttl {
    color: #000;
    font-size: 60px;
    padding-top: 140px;
}
#cate-main .cate-ttl.txt-black div,
#cate-main.h-large .cate-ttl div,
#cate-main.h-auto .cate-ttl div {
    border-color: #000;
}
#cate-main.lease-management .cate-ttl,
#cate-main.new-construction .cate-ttl,
#cate-main.renovation .cate-ttl,
#cate-main.real-estate .cate-ttl {
  font-family: 'Midashi Go MB31', sans-serif !important;
  font-size: 123px;
  letter-spacing: 0;
}
#cate-main.new-construction .cate-ttl,
#cate-main.renovation .cate-ttl {
    margin: 40px auto;
}
#cate-main.ambassador .cate-ttl {
    width: 400px;
}
#cate-main.life-up-town .cate-ttl img {
    width: 350px;
    height: 167px;
}
#cate-main.sp-info-form .cate-ttl-box {
    width: 420px;
    height: 460px;
    background: rgba(255,255,255,0.8);
    padding-top: 60px;
    box-sizing: border-box;
}
#cate-main.sp-info-form .cate-ttl-box div {
    border-color: #000;
}
#cate-main.sp-info-form .cate-ttl img {
    width: 255px;
    height: 218px;
}
@media (max-width: 1199.98px) {
    #cate-main .cate-ttl {
        font-size: 78px;
    }
    #cate-main .cate-ttl .num {
        font-size: 85px;
    }
    #cate-main.journal .cate-ttl {
        width: 230px;
    }
    #cate-main.lease-management .cate-ttl,
    #cate-main.new-construction .cate-ttl,
    #cate-main.renovation .cate-ttl,
    #cate-main.real-estate .cate-ttl {
        font-size: 100px;
    }
    #cate-main.ambassador .cate-ttl {
        width: 350px;
    }
    #cate-main.life-up-town .cate-ttl img {
        width: 300px;
        height: 143px;
    }
}
@media (max-width: 991.98px) {
    #cate-main .cate-ttl {
        font-size: 68px;
    }
    #cate-main .cate-ttl .num {
        font-size: 75px;
    }
    #cate-main.journal .cate-ttl {
        width: 180px;
    }
    #cate-main.h-mediun .cate-ttl {
        font-size: 50px;
    }
    #cate-main.h-large .cate-ttl,
    #cate-main.h-auto .cate-ttl {
        font-size: 50px;
        padding-top: 0;
    }
    #cate-main.ambassador .cate-ttl {
        width: 300px;
    }
    #cate-main.life-up-town .cate-ttl img {
        width: 250px;
        height: 119px;
    }
    #cate-main.sp-info-form .cate-ttl-box {
        width: 320px;
        padding-top: 30px;
    }
    #cate-main.sp-info-form .cate-ttl img {
        width: 200px;
        height: 271px;
    }
}
@media (max-width: 767.98px) {
    #cate-main .cate-ttl {
        font-size: 55px;
    }
    #cate-main .cate-ttl div {
        padding-bottom: 10px;
    }
    #cate-main .cate-ttl .num {
        font-size: 60px;
    }
    #cate-main.journal .cate-ttl {
        width: 140px;
        margin: 25px auto 20px;
    }
    #cate-main.h-mediun .cate-ttl,
    #cate-main.h-large .cate-ttl,
    #cate-main.h-auto .cate-ttl {
        font-size: 40px;
    }
    #cate-main.lease-management .cate-ttl,
    #cate-main.new-construction .cate-ttl,
    #cate-main.renovation .cate-ttl,
    #cate-main.real-estate .cate-ttl {
        font-size: 50px;
        margin-top: 0;
        margin-bottom: 0;
    }
    #cate-main.ambassador .cate-ttl {
        width: 230px;
    }
    #cate-main.life-up-town .cate-ttl img {
        width: 150px;
        height: 72px;
    }
    #cate-main.sp-info-form .cate-ttl-box {
        width: 160px;
        height: 300px;
        padding-top: 50px;
    }
    #cate-main.sp-info-form .cate-ttl img {
        width: 130px;
        height: 111px;
    }
}
@media (max-width: 575.98px) {
    #cate-main .cate-ttl {
        font-size: 40px;
        margin-top: -65px;
    }
    #cate-main .cate-ttl .num {
        font-size: 43px;
    }
    #cate-main.h-mediun .cate-ttl,
    #cate-main.h-large .cate-ttl,
    #cate-main.h-auto .cate-ttl {
        /*margin-top: -40px;*/
        margin-top: 0;
        font-size: 30px;
    }
    #cate-main.ambassador .cate-ttl {
        width: 170px;
    }
    #cate-main.reason .cate-ttl,
    #cate-main.features .cate-ttl {
        margin-top: 40px;
    }
}
@media (max-width: 320.98px) {
    #cate-main .cate-ttl {
        font-size: 35px;
    }
    #cate-main .cate-ttl .num {
        font-size: 38px;
    }
    #cate-main.journal .cate-ttl {
        width: 110px;
    }
    #cate-main.h-mediun .cate-ttl,
    #cate-main.h-large .cate-ttl,
    #cate-main.h-auto .cate-ttl {
        font-size: 25px;
    }
    #cate-main.lease-management .cate-ttl,
    #cate-main.new-construction .cate-ttl,
    #cate-main.renovation .cate-ttl,
    #cate-main.real-estate .cate-ttl {
        font-size: 50px;
    }
    #cate-main.ambassador .cate-ttl {
        width: 140px;
    }
    #cate-main.life-up-town .cate-ttl img {
        width: 130px;
        height: 62px;
        padding-left: 10px;
    }
}

#cate-main .cate-sub {
    width: 350px;
    font-size: 18px;
    margin: 30px 0 0;
    padding: 15px 10px;
    background: rgba(255,255,255,0.7);
    border-radius: 40px;
    box-sizing: border-box;
    text-align: center;
    font-weight: 500;
    color: #292929;
    letter-spacing: 0.1em;
    -webkit-animation: fadeIn 1s linear both;
    animation: fadeIn 1s linear both;
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s;
}
#cate-main .cate-sub.en {
    font-family: 'Roboto', sans-serif  !important;
    font-weight: 600;
    letter-spacing: 0.2em;
    font-size: 26px;
}
#cate-main.h-mediun .cate-sub,
#cate-main.h-large .cate-sub,
#cate-main.h-auto .cate-sub,
#cate-main.cate-line .cate-sub {
    width: auto;
    color: #fff;
    background: none;
    font-weight: 600;
    padding: 0;
    margin-top: 22px;
}
#cate-main.h-large .cate-sub,
#cate-main.h-auto .cate-sub {
    color: #000;
}
#cate-main.lease-management .cate-sub,
#cate-main.new-construction .cate-sub,
#cate-main.renovation .cate-sub,
#cate-main.real-estate .cate-sub {
  width: 250px;
  height: 53px;
  margin: 0 0 25px;
  padding: 11px 5px;
  font-size: 32px;
  letter-spacing: 0.4em;
  line-height: 1;
  color: #4f4f4f;
  -webkit-animation: fadeIn 1s linear both;
  animation: fadeIn 1s linear both;
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
}
#cate-main.life-up-town .cate-sub {
    font-size: 26px;
    line-height: 1.8;
    padding-top: 20px;
}
@media (max-width: 1199.98px) {
  #cate-main.life-up-town .cate-sub {
    font-size: 23px;
  }
}
@media (max-width: 991.98px) {
    #cate-main .cate-sub {
        width: 300px;
    }
    #cate-main.life-up-town .cate-sub {
        font-size: 20px;
    }
}
@media (max-width: 767.98px) {
    #cate-main .cate-sub {
        width: 200px;
        font-size: 15px;
        border-radius: 20px;
        padding: 8px;
        margin-top: 20px;
    }
    #cate-main .cate-sub.en {
        letter-spacing: 0.1em;
        font-size: 18px;
    }
    #cate-main.lease-management .cate-sub,
    #cate-main.new-construction .cate-sub,
    #cate-main.renovation .cate-sub,
    #cate-main.real-estate .cate-sub {
        width: 120px;
        height: 33px;
        padding: 8px 5px;
        margin-bottom: 20px;
        font-size: 20px;
        letter-spacing: 0.2em;
    }
    #cate-main.life-up-town .cate-sub {
        font-size: 15px;
        padding-top: 10px;
    }
}
@media (max-width: 575.98px) {
    #cate-main.h-mediun .cate-sub,
    #cate-main.h-large .cate-sub,
    #cate-main.h-auto .cate-sub,
    #cate-main.cate-line .cate-sub {
        font-size: 13px;
        margin-top: 13px;
    }
}
@media (max-width: 320.98px) {
  #cate-main.life-up-town .cate-sub {
    font-size: 14px;
  }
}

#cate-main .cate-ttl-sub {
  margin: 25px 0 0;
  font-size: 25px;
  font-family: 'Roboto', sans-serif !important;
  font-weight: 700;
  letter-spacing: 0.3em;
  color: #fff;
  -webkit-animation: fadeIn 1s linear both;
  animation: fadeIn 1s linear both;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}
@media (max-width: 767.98px) {
    #cate-main .cate-ttl-sub {
        margin-top: 20px;
        font-size: 16px;
        letter-spacing: 0.2em;
    }
}

#cate-main .cate-txt {
    width: 100%;
    padding: 0 15px;
    margin: 80px auto 0;
    text-align: center;
    font-size: 17px;
    line-height: 2.35;
}
#cate-main .cate-txt.large {
    font-size: 27px;
    line-height: 1.8;
}
@media (max-width: 991.98px) {
    #cate-main .cate-txt {
        margin-top: 50px;
    }
    #cate-main .cate-txt.large {
        font-size: 22px;
    }
}
@media (max-width: 767.98px) {
    #cate-main .cate-txt {
        margin-top: 30px;
        font-size: 14px;
    }
    #cate-main .cate-txt.large {
        font-size: 16px;
    }
}

#cate-main .btn {
    position: absolute;
    top: 38px;
    right: 120px;
    margin: 0;
    padding: 11px 35px;
    font-size: 14px;
    line-height: 1;
    background: none;
    -webkit-animation: fadeIn 1s linear both;
    animation: fadeIn 1s linear both;
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s;
}
#cate-main.journal .btn {
    top: 8px;
    -webkit-animation: fadeIn 1s linear both;
    animation: fadeIn 1s linear both;
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
}
@media (max-width: 991.98px) {
    #cate-main.journal .btn {
        max-width: 140px;
        padding: 11px 10px;
    }
}
@media (max-width: 767.98px) {
    #cate-main .btn-box {
        width: 100%;
        font-size: 13px;
        height: 40px !important;
        padding: 10px 20px;
        position: absolute;
        bottom: 80px;
        left: 0;
        right: 0;
        margin: auto;
    }
    #cate-main .btn {
        top: 0;
        right: 0;
        left: 0;
        margin: auto;
    }
    #cate-main.journal .btn-box {
        position: relative;
        top: 0;
        margin-bottom: 27px;
    }
    #cate-main.journal .btn {
        max-width: 140px;
        padding: 9px 10px 8px;
        right: 0;
    }
    #cate-main.h-mediun .btn-box {
        bottom: 30px;
    }
}

#cate-main ul.menu-list {
    margin: 0 15px 17px;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}
#cate-main ul.menu-list.line {
    margin-bottom: 40px;
    padding-bottom: 15px;
    border-bottom: 1px solid #000;
}
#cate-main ul.menu-list li {
    font-weight: 600;
    margin-bottom: 5px;
}
#cate-main ul.menu-list li a {
    padding: 0 10px;
}
#cate-main ul.menu-list li a:hover,
#cate-main ul.menu-list li.active a {
    color: #197b88;
    text-decoration: none;
}
#cate-main ul.menu-list li::after {
    content: "|";
    padding: 0 10px;
}
#cate-main ul.menu-list li:last-of-type::after {
    content: "";
}
@media (max-width: 767.98px) {
    #cate-main ul.menu-list {
        margin-top: 30px;
        margin-bottom: 10px;
    }
    #cate-main ul.menu-list.line {
        padding-bottom: 10px;
    }
    #cate-main ul.menu-list li a {
        padding: 0 3px;
    }
    #cate-main ul.menu-list li::after {
        padding: 0 3px;
    }
}

#cate-main .cate-ttl span:nth-child(1) {
    -webkit-animation: slideTextFade 2.0s ease 0s 1 normal;
    animation: slideTextFade 2.0s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(2) {
    -webkit-animation: slideTextFade 2.1s ease 0s 1 normal;
    animation: slideTextFade 2.1s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(3) {
    -webkit-animation: slideTextFade 2.2s ease 0s 1 normal;
    animation: slideTextFade 2.2s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(4) {
    -webkit-animation: slideTextFade 2.3s ease 0s 1 normal;
    animation: slideTextFade 2.3s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(5) {
    -webkit-animation: slideTextFade 2.4s ease 0s 1 normal;
    animation: slideTextFade 2.4s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(6) {
    -webkit-animation: slideTextFade 2.5s ease 0s 1 normal;
    animation: slideTextFade 2.5s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(7) {
    -webkit-animation: slideTextFade 2.6s ease 0s 1 normal;
    animation: slideTextFade 2.6s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(8) {
    -webkit-animation: slideTextFade 2.7s ease 0s 1 normal;
    animation: slideTextFade 2.7s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(9) {
    -webkit-animation: slideTextFade 2.8s ease 0s 1 normal;
    animation: slideTextFade 2.8s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(10) {
    -webkit-animation: slideTextFade 2.9s ease 0s 1 normal;
    animation: slideTextFade 2.9s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(11) {
    -webkit-animation: slideTextFade 3.0s ease 0s 1 normal;
    animation: slideTextFade 3.0s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(12) {
    -webkit-animation: slideTextFade 3.1s ease 0s 1 normal;
    animation: slideTextFade 3.1s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(13) {
    -webkit-animation: slideTextFade 3.2s ease 0s 1 normal;
    animation: slideTextFade 3.2s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(14) {
    -webkit-animation: slideTextFade 3.3s ease 0s 1 normal;
    animation: slideTextFade 3.3s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(15) {
    -webkit-animation: slideTextFade 3.4s ease 0s 1 normal;
    animation: slideTextFade 3.4s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(16) {
    -webkit-animation: slideTextFade 3.5s ease 0s 1 normal;
    animation: slideTextFade 3.5s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(17) {
    -webkit-animation: slideTextFade 3.6s ease 0s 1 normal;
    animation: slideTextFade 3.6s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(18) {
    -webkit-animation: slideTextFade 3.7s ease 0s 1 normal;
    animation: slideTextFade 3.7s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(19) {
    -webkit-animation: slideTextFade 3.8s ease 0s 1 normal;
    animation: slideTextFade 3.8s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(20) {
    -webkit-animation: slideTextFade 3.9s ease 0s 1 normal;
    animation: slideTextFade 3.9s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(21) {
    -webkit-animation: slideTextFade 4.0s ease 0s 1 normal;
    animation: slideTextFade 4.0s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(22) {
    -webkit-animation: slideTextFade 4.1s ease 0s 1 normal;
    animation: slideTextFade 4.1s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(23) {
    -webkit-animation: slideTextFade 4.2s ease 0s 1 normal;
    animation: slideTextFade 4.2s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(24) {
    -webkit-animation: slideTextFade 4.3s ease 0s 1 normal;
    animation: slideTextFade 4.3s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(25) {
    -webkit-animation: slideTextFade 4.4s ease 0s 1 normal;
    animation: slideTextFade 4.4s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(26) {
    -webkit-animation: slideTextFade 4.5s ease 0s 1 normal;
    animation: slideTextFade 4.5s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(27) {
    -webkit-animation: slideTextFade 4.6s ease 0s 1 normal;
    animation: slideTextFade 4.6s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(28) {
    -webkit-animation: slideTextFade 4.7s ease 0s 1 normal;
    animation: slideTextFade 4.7s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(29) {
    -webkit-animation: slideTextFade 4.8s ease 0s 1 normal;
    animation: slideTextFade 4.8s ease 0s 1 normal;
}
#cate-main .cate-ttl span:nth-child(30) {
    -webkit-animation: slideTextFade 4.9s ease 0s 1 normal;
    animation: slideTextFade 4.9s ease 0s 1 normal;
}

/* 5.2 Icon New / Icon Ranking
 * ------------------------------*/
/* Icon New ------------*/
.icon-new {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
}
.icon-new::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: #197b88 transparent transparent transparent;
    border-width: 55px 55px 0 0;
}
.icon-new span {
    display: block;
    position: absolute;
    margin: 0;
    top: 15px;
    left: 8px;
    font-family: 'Roboto', sans-serif  !important;
    font-weight: 700;
    font-size: 16px;
    color: #fff;
    transform: rotate( -45deg );
    z-index: 200;
}
@media (max-width: 767.98px) {
    .icon-new::after {
        border-width: 40px 40px 0 0;
    }
    .icon-new span {
        top: 10px;
        left: 4px;
        font-size: 13px;
    }
}

/* Icon Ranking ------------*/
.icon-ranking {
    display: block;
    position: absolute;
    top: 5px;
    left: -10px;
    z-index: 100;
}
.icon-ranking img {
    display: block;
    width: 35px;
    height: 28px;
}
@media (max-width: 767.98px) {
    .icon-ranking {
        top: -12px;
    }
}

/* 5.3 Content
 * ------------------------------*/
/* 5.3.1 naka main ------------*/
#naka-main {
    margin: 0;
    padding-bottom: 3rem;
    padding-right: 35px;
}
#naka-main .section-ttl {
    font-family: 'Midashi Go MB31', sans-serif !important;
    font-size: 19px;
    letter-spacing: 0;
    text-align: left;
    font-weight: 600;
}
@media (max-width: 991.98px) {
    #naka-main {
        padding-right: 25px;
    }
}
@media (max-width: 767.98px) {
    #naka-main {
        padding-right: 15px;
        padding-bottom: 1.5rem;
    }
    #naka-main .section-ttl {
        font-size: 15px;
    }
}

/* 5.3.2 sidebar ------------*/
#sidebar {
    margin: 0 0 2rem;
    text-align: left;
}
#sidebar .section-ttl {
    font-family: 'Midashi Go MB31', sans-serif !important;
    font-size: 19px;
    letter-spacing: 0;
    text-align: left;
    font-weight: 600;
}
#sidebar .section-ttl.line {
    border-bottom: 1px solid #d5d5d5;
    margin-bottom: 0;
}
#sidebar p + .section-ttl,
#sidebar div + .section-ttl,
#sidebar ul + .section-ttl,
#sidebar dl + .section-ttl {
    margin-top: 60px;
}
#sidebar .sub-line {
    margin-top: 0;
}
#sidebar p + .sub-line {
    margin-top: 30px;
}
#sidebar div + .sub-line,
#sidebar ul + .sub-line,
#sidebar dl + .sub-line {
    margin-top: 40px;
}
@media (max-width: 767.98px) {
    #sidebar {
        margin-bottom: 30px;
    }
    #sidebar .section-ttl,
    #sidebar .section-ttl.line {
        margin-bottom: 15px;
    }
    #sidebar p + .section-ttl,
    #sidebar div + .section-ttl,
    #sidebar ul + .section-ttl,
    #sidebar dl + .section-ttl {
        margin-top: 40px;
    }
}

#sidebar ul.list li {
    margin: 0;
    border-bottom: 1px solid #d5d5d5;
    position: relative;
}
#sidebar ul.list li a {
    padding: 20px 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
}
#sidebar ul.list li .imagearea {
    width: 30%;
    height: 70px;
}
#sidebar ul.list li .txtarea {
    width: 70%;
    box-sizing: border-box;
    padding-left: 15px;
}
@media (max-width: 991.98px) {
    #sidebar ul.list li .imagearea {
        height: 60px;
    }
}
@media (max-width: 767.98px) {
    #sidebar ul.list li {
        margin-bottom: 15px;
    }
    #sidebar ul.list li a {
        padding: 0 0 15px;
    }
    #sidebar ul.list li .imagearea {
        height: 80px;
    }
}

#sidebar ul.list li .day {
    font-size: 10px !important;
    line-height: 1;
}
#sidebar ul.list li .sub {
    font-size: 13px !important;
    line-height: 1.5;
    margin: 8px 0 0;
    text-align: left;
    letter-spacing: -0.03em;
}
@media (max-width: 767.98px) {
    #sidebar ul.list li .sub {
        line-height: 1.7;
        letter-spacing: 0;
    }
}

#sidebar ul.cate-list li {
    line-height: 1.8;
    letter-spacing: -0.03em;
    border-bottom: 1px solid #d5d5d5;
}
#sidebar ul.cate-list li:first-of-type {
    border-top: 1px solid #d5d5d5;
}
#sidebar ul.cate-list li a {
    display: block;
    padding: 14px 0 12px;
}
#sidebar ul.cate-list li i {
    display: inline-block;
    margin-right: 10px;
    font-size: 10px;
}
@media (max-width: 767.98px) {
    #sidebar ul.cate-list {
        margin-bottom: 30px;
    }
    #sidebar ul.cate-list li {
        letter-spacing: 0;
    }
    #sidebar ul.cate-list li a {
        padding: 11px 0 12px 5px;
    }
}

#sidebar .search {
    position: relative;
}
#sidebar .search form {
    margin: 0;
    padding: 0;
}
#sidebar .search input[type=text] {
    width: 100%;
    margin: 0 !important;
    padding: 2px 10px 0 20px !important;
    height: 44px;
    font-size: 13px;
    color: #9e9f9f;
    background: #fff;
    box-sizing: border-box;
    border-radius: 4px;
    border: 1px solid #dedede;
}
#sidebar .search input {
    outline: none;
}
#sidebar .search input::placeholder {
  color: #a8a8a8;
}
#sidebar .search input:-ms-input-placeholder {
  color: #a8a8a8;
}
#sidebar .search input::-ms-input-placeholder {
  color: #a8a8a8;
}
#sidebar .search .btn-search {
    width: 20px;
    height: 20px;
    background: url(../image/icon/icon-search.svg) 0 0 no-repeat;
    background-size: contain;
    position: absolute;
    top: 12px;
    right: 12px;
    margin: 0;
    border: none;
    border-radius: 0;
    cursor: pointer;
    z-index: 10;
}

dl.house-list {
    width: 100%;
    display: table;
    margin: 0;
    padding: 10px 0;
    border-bottom: 1px solid #d5d5d5;
}
dl.house-list.price {
    padding: 5px 0;
}
dl.house-list dt {
    display: table-cell;
    width: 45%;
    vertical-align: middle;
    font-size: 15px;
    font-weight: 600;
    font-family: 'Midashi Go MB31', sans-serif !important;
}
dl.house-list dd {
    display: table-cell;
    width: 55%;
    vertical-align: middle;
    font-size: 14px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
dl.house-list.price dd {
    font-size: 20px;
    font-weight: 600;
    font-family: 'Midashi Go MB31', sans-serif !important;
}
dl.house-list.gaiyou dt {
  width: 23%;
}
dl.house-list.gaiyou dd {
  width: 77%;
}
@media (max-width: 767.98px) {
    dl.house-list dt {
        font-size: 14px;
    }
    dl.house-list dd {
        font-size: 13px;
    }
    dl.house-list.price dd {
        font-size: 18px;
    }
    dl.house-list.gaiyou dt {
        width: 20%;
    }
    dl.house-list.gaiyou dd {
        width: 80%;
    }
}

ul.setsubi-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    margin: 0;
}
ul.setsubi-list li {
    width: 20%;
    box-sizing: border-box;
    padding: 0 0 8px;
}

.kukaku-box {
    border-bottom: 1px solid #d5d5d5;
    padding-bottom: 15px;
}
.kukaku-box p {
    margin: 10px 0 0;
    font-size: 15px;
}

dl.table-list {
    width: 100%;
    display: table;
    margin: 0;
    padding: 0;
}
dl.table-list dt {
    display: table-cell;
    width: 40%;
    vertical-align: top;
    font-family: 'Gothic Medium BBB', sans-serif !important;
    font-weight: 400;
    font-size: 14px;
}
dl.table-list.kukaku dt {
    width: 55%;
}
dl.table-list dd {
    display: table-cell;
    width: 60%;
    vertical-align: top;
    font-family: 'Gothic Medium BBB', sans-serif !important;
    font-size: 14px;
    padding-left: 15px;
}
dl.table-list.kukaku dd {
    width: 45%;
    text-align: right;
}
@media (max-width: 767.98px) {
    dl.table-list dt,
    dl.table-list dd {
        font-size: 13px;
    }
}

/* 5.4 Journal page
 * ------------------------------*/
#journal-page {
    background: #fff;
}
#journal-page header {
    top: 30px;
}
#journal-page header .logo-box {
    width: 80px;
    height: 80px;
}
#journal-page header .logo-box .logo {
    height: 80px;
}
#journal-page header .logo-box .logo a {
    width: 80px;
    height: 80px;
    padding-top: 18px;
}
#journal-page header .logo-box .logo img {
    width: 50px;
    height: 43px;
}
@media (max-width: 767.98px) {
    #journal-page header {
        top: 15px;
    }
    #journal-page header .logo-box {
        width: 60px;
        height: 60px;
    }
    #journal-page header .logo-box .logo {
        height: 60px;
    }
    #journal-page header .logo-box .logo a {
        width: 60px;
        height: 60px;
        padding-top: 12px;
    }
    #journal-page header .logo-box .logo img {
        width: 40px;
        height: 35px;
    }
}

.journal-list .col-6 {
    margin-bottom: 30px;
}
.journal-list.kanren .col-12 {
    box-sizing: border-box;
    padding-left: 20px;
    padding-right: 20px;
}
.journal-list .sub {
    font-size: 15px;
    margin: 12px 0 0;
    text-align: left;
    letter-spacing: -0.03em;
}
.journal-list a:hover {
    text-decoration: none;
}
@media (max-width: 767.98px) {
    .journal-list .col-6 {
        margin-bottom: 20px;
    }
    .journal-list .col-6:nth-of-type(odd) {
        padding-right: 8px;
    }
    .journal-list .col-6:nth-of-type(even) {
        padding-left: 8px;
    }
    .journal-list .sub {
        font-size: 14px;
        margin-top: 15px;
        letter-spacing: 0;
    }
    .journal-list .day {
        margin-bottom: -5px;
    }
    .journal-list.kanren {
        margin-left: 0;
        margin-right:  0;
    }
    .journal-list.kanren .col-12 {
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 15px;
        margin-bottom: 15px;
        display: table;
        border-bottom: 1px solid #d5d5d5;
    }
    .journal-list.kanren .imagearea {
        width: 30%;
        height: 80px;
        display: table-cell;
        vertical-align: top;
        box-sizing: border-box;
    }
    .journal-list.kanren .txtarea {
        width: 70%;
        display: table-cell;
        vertical-align: top;
        box-sizing: border-box;
        padding-left: 15px;
    }
    .journal-list.kanren .sub {
        font-size: 13px !important;
    }
    .journal-list.kanren .day {
        font-size: 10px !important;
        line-height: 1;
    }
}

.journal-list .imagearea {
    height: auto;
    margin: 0 0 18px;
}
.journal-list .imagearea-content > img {
  object-fit: contain;
}
@media (max-width: 767.98px) {
    .journal-list .imagearea {
        margin-bottom: 15px;
    }
}

/*---------- detail page ----------*/
.detail-wrap {
    margin: 0 0 6rem;
}
.detail-wrap.news {
    margin-bottom: 1.5rem;
}
.detail-wrap .sub {
    margin: 60px 0 5px;
    font-size: 26px;
    line-height: 1.6;
    text-align: left;
}
.detail-wrap p {
    margin: 30px 0;
    font-size: 15px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.detail-wrap.news .img {
    max-width: 95%;
    height: auto;
    margin: 80px auto;
}
@media (max-width: 991.98px) {
    .detail-wrap .sub {
        margin-top: 40px;
    }
    .detail-wrap.news .img {
        margin: 50px auto;
    }
}
@media (max-width: 767.98px) {
    .detail-wrap {
        margin-bottom: 3.5rem;
    }
    .detail-wrap.news {
        margin-bottom: 1rem;
    }
    .detail-wrap .sub {
        margin-top: 30px;
        font-size: 15px;
    }
    .detail-wrap p {
        margin: 20px 0;
        font-size: 13px;
    }
    .detail-wrap.news .img {
        max-width: 100%;
        margin: 30px auto;
    }
}

/* 5.5 News page
 * ------------------------------*/
.news-menu {
    width: 100%;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    border-bottom: 2px solid #000;
    margin-bottom: 90px !important;
}
.news-menu li {
    width: 14.285%;
    display: block;
    text-align: center;
    padding: 0;
    font-size: 14px;
    font-weight: 600;
}
.news-menu li div {
    box-sizing: border-box;
    padding: 0 2px;
}
.news-menu li a {
    display: block;
    width: 100%;
    color: #fff;
    padding: 12px 5px 10px;
    background: #bebebe;
    box-sizing: border-box;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}
.news-menu li a:hover,
.news-menu li a.active {
    text-decoration: none;
    color: #fff;
    background: #197b88;
}
.news-menu li a:hover {
    transition: 0.7s;
}
@media screen and (max-width: 991px) {
    .news-menu li {
        font-size: 13px;
    }
}
@media screen and (max-width: 767px) {
    .news-menu {
        flex-flow: row wrap;
        justify-content: flex-start;
        margin-bottom: 40px !important;
    }
    .news-menu li {
        width: 50%;
    }
    .news-menu li div {
        padding-top: 2px;
    }
    .news-menu li:nth-of-type(1) div,
    .news-menu li:nth-of-type(2) div {
        padding-top: 0;
    }
    .news-menu li:nth-of-type(odd) div {
        padding-left: 0;
    }
    .news-menu li:nth-of-type(even) div {
        padding-right: 0;
    }
    .news-menu li a {
        padding: 10px 5px;
    }
}
@media (max-width: 575.98px) {
    .news-menu {
        width: 104%;
        margin-left: -6px;
    }
}

/* 5.6 Lease Management page
 * ------------------------------*/
/* 5.6.1 recommend swiper ------------*/
.swiper-recommend .slide-img {
  overflow: hidden;
  position: relative;
  background-color: #fff;
  height: auto;
}
.swiper-recommend .slide-img img {
  max-width: 100%;
  width: 100%;
  height: auto;
  margin: 0 auto;
}
.swiper-recommend .swiper-button-prev,
.swiper-recommend .swiper-button-next {
    width: 14px;
    height: 26px;
    background-size: 14px 26px;
    top: 50%;
    transform: translateY(-50%);
}
.swiper-recommend .swiper-button-prev {
    left: 15px;
}
.swiper-recommend .swiper-button-next {
    right: 15px;
}
@media (max-width: 767.98px) {
    .swiper-recommend .swiper-button-prev {
        left: 10px;
    }
    .swiper-recommend .swiper-button-next {
        right: 10px;
    }
    .swiper-recommend .swiper-button-prev,
    .swiper-recommend .swiper-button-next {
        top: 60%;
        transform: translateY(-60%);
    }
}

.swiper-recommend-thumb {
  width: 100%;
  padding: 3px 0 0;
  margin: 0;
  box-sizing: border-box;
}
.swiper-recommend-thumb .swiper-wrapper {
    flex-flow: row wrap;
}
.swiper-recommend-thumb .slide-img {
  position: relative;
  overflow: hidden;
  cursor: pointer;
  width: 16.6666% !important;
  box-sizing: border-box;
  padding: 0 !important;
  border: 3px solid #fff;
}
.swiper-recommend-thumb .slide-img:hover,
.swiper-recommend-thumb .swiper-slide-thumb-active {
  border: 3px solid #197b88;
}
.swiper-recommend-thumb .slide-img:hover {
    transition: 0.5s;
}
.swiper-recommend-thumb .slide-img img {
    display: block;
  max-width: 100%;
  height: 110px;
  margin: 0 auto;
  object-fit: cover;
  overflow: hidden;
}
@media (min-width: 1500px) {
  .swiper-recommend-thumb .slide-img img {
    height: 130px;
  }
}
@media (min-width: 1700px) {
  .swiper-recommend-thumb .slide-img img {
    height: 150px;
  }
}
@media (min-width: 1900px) {
  .swiper-recommend-thumb .slide-img img {
    height: 170px;
  }
}
@media (min-width: 2100px) {
  .swiper-recommend-thumb .slide-img img {
    height: 190px;
  }
}
@media (min-width: 2300px) {
  .swiper-recommend-thumb .slide-img img {
    height: 210px;
  }
}
@media (min-width: 2500px) {
  .swiper-recommend-thumb .slide-img img {
    height: 230px;
  }
}
@media (max-width: 1199.98px) {
    .swiper-recommend-thumb .slide-img img {
        height: 80px;
    }
}
@media (max-width: 991.98px) {
    .swiper-recommend-thumb .slide-img img {
        height: 60px;
    }
}
@media (max-width: 575.98px) {
    .swiper-recommend-thumb {
        padding-top: 2px;
    }
    .swiper-recommend-thumb .slide-img {
        border: 2px solid #fff;
    }
    .swiper-recommend-thumb .slide-img:hover,
    .swiper-recommend-thumb .swiper-slide-thumb-active {
    border: 2px solid #197b88;
    }
    .swiper-recommend-thumb .slide-img img {
        height: 40px;
    }
}

/* 5.6.2 lifeup ------------*/
.lifeup-cont {
    padding: 0 90px;
}
.lifeup-cont.flex-box {
    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
}
.lifeup-cont .col {
    padding: 0 50px;
}
.lifeup-cont img {
    max-width: 100%;
    height: auto;
    
}
@media (max-width: 1199.98px) {
    .lifeup-cont {
        padding: 0 20px;
    }
    .lifeup-cont .col {
        padding: 0 30px;
    }
}
@media (max-width: 991.98px) {
    .lifeup-cont {
        padding: 0;
    }
    .lifeup-cont .col {
        padding: 0 15px;
    }
}
@media (max-width: 767.98px) {
    .lifeup-cont .col {
      flex: 0 1 100%;
      padding: 0;
    }
    .lifeup-cont img {
      display: block;
    }
}

.lifeup-cont .sub {
    margin: 30px 0 20px;
    font-size: 30px;
    text-align: left;
}
.lifeup-cont .subsub {
    margin: 0 0 30px;
    font-size: 20px;
    text-align: left;
    line-height: 2;
    letter-spacing: 0.2em;
}
.lifeup-cont p {
    margin: 30px 0;
    font-size: 15px;
    line-height: 2;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
@media (max-width: 1199.98px) {
    .lifeup-cont .sub {
        margin: 20px 0 10px;
    }
}
@media (max-width: 991.98px) {
    .lifeup-cont .sub {
        font-size: 22px;
    }
    .lifeup-cont .subsub {
        font-size: 18px;
    }
}
@media (max-width: 767.98px) {
    .lifeup-cont .sub {
        font-size: 17px;
        margin-top: 40px;
    }
    .lifeup-cont .subsub {
        font-size: 15px;
        line-height: 1.8;
        margin-bottom: 20px;
    }
    .lifeup-cont p {
        margin: 20px 0;
        font-size: 13px;
        line-height: 1.8;
    }
}

.line-box {
    padding-top: 40px;
    padding-bottom: 40px;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
}
.line-box p {
    margin: 0;
}
@media (max-width: 767.98px) {
    .line-box {
        padding-top: 20px;
        padding-bottom: 20px;
    }
}

/* 5.6.3 moshimo support ------------*/
.lease-moshimo-wrap .sub-line {
    font-size: 26px;
    border-width: 2px;
    margin-top: 80px;
    margin-bottom: 30px;
}
.lease-moshimo-wrap .sub-line span {
    display: inline-block;
    font-size: 19px;
    margin-left: 20px;
}
.lease-moshimo-wrap .sub-bg {
    max-width: 100%;
    background: #f0efe9;
    border-radius: 8px;
    color: #197b88;
    font-size: 23px;
    box-sizing: border-box;
    padding: 11px 5px 12px;
    text-align: center;
    margin: 0 auto 30px;
    line-height: 1.6;
}
.lease-moshimo-wrap .sub-bg span {
    display: block;
    color: #000;
    font-size: 14px;
}
@media (max-width: 1199.98px) {
    .lease-moshimo-wrap .sub-bg {
        font-size: 18px;
        line-height: 1.8;
    }
    .lease-moshimo-wrap .sub-bg span {
        font-size: 13px;
    }
}
@media (max-width: 991.98px) {
    .lease-moshimo-wrap .sub-line {
        margin-top: 60px;
        font-size: 23px;
    }
    .lease-moshimo-wrap .sub-line span {
        font-size: 17px;
    }
    .lease-moshimo-wrap .sub-bg {
        font-size: 17px;
    }
}
@media (max-width: 767.98px) {
    .lease-moshimo-wrap .sub-line {
        font-size: 16px;
        margin-top: 30px;
        margin-bottom: 15px;
    }
    .lease-moshimo-wrap .sub-line span {
        font-size: 13px;
        display: block;
        margin-left: 0;
    }
    .lease-moshimo-wrap .sub-bg {
        font-size: 15px;
        padding: 8px 5px 10px;
        margin: 10px auto 20px;
    }
    .lease-moshimo-wrap .sub-bg span {
        font-size: 12px;
    }
}

.lease-moshimo-wrap .flex-box {
    margin-top: 50px;
    align-items: flex-start;
    align-content: flex-start;
}
.lease-moshimo-wrap .flex-box .col {
    padding-left: 0;
    padding-right: 0;
    flex: auto;
}
.lease-moshimo-wrap .flex-box .col:nth-of-type(1) {
    max-width: 60%;
}
.lease-moshimo-wrap .flex-box .col:nth-of-type(2) {
    max-width: 40%;
}
@media (max-width: 991.98px) {
    .lease-moshimo-wrap .flex-box .col .txtarea {
        padding: 0 0 0 30px;
    }
}
@media (max-width: 767.98px) {
    .lease-moshimo-wrap .flex-box {
        margin-top: 20px;
    }
    .lease-moshimo-wrap .flex-box .col {
        max-width: 100% !important;
    }
    .lease-moshimo-wrap .flex-box .col .txtarea {
        padding: 0;
    }
}

.lease-moshimo-wrap .moshimo-list01 {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
}
.lease-moshimo-wrap .moshimo-list01 li {
    width: 17.5%;
    box-sizing: border-box;
    text-align: center;
    font-size: 12px;
    letter-spacing: -0.02em;
    margin-bottom: 20px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.lease-moshimo-wrap .moshimo-list01 li img {
    padding-bottom: 10px;
}
@media (max-width: 767.98px) {
    .lease-moshimo-wrap .moshimo-list01 {
        margin-top: -10px;
        margin-bottom: 10px;
    }
    .lease-moshimo-wrap .moshimo-list01 li {
        width: 45%;
        letter-spacing: 0;
        margin-bottom: 10px;
    }
}

.lease-moshimo-wrap .moshimo-list02 {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
    margin: 0;
}
.lease-moshimo-wrap .moshimo-list02 div:nth-of-type(1) {
    width: 70%;
    box-sizing: border-box;
    padding-right: 20px;
    font-size: 18px;
    color: #197b88;
}
.lease-moshimo-wrap .moshimo-list02 div:nth-of-type(2) {
    width: 30%;
    box-sizing: border-box;
}
.lease-moshimo-wrap .moshimo-list02 .txt {
    font-family: 'Gothic Medium BBB', sans-serif !important;
    font-size: 13px;
    margin: 0;
    color: #000;
}
@media (max-width: 1199.98px) {
    .lease-moshimo-wrap .moshimo-list02 {
        margin-bottom: 10px;
    }
}
@media (max-width: 767.98px) {
    .lease-moshimo-wrap .moshimo-list02 div:nth-of-type(1) {
        font-size: 15px;
    }
}

.lease-moshimo-wrap .moshimo-list03 {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    margin: 0;
}
.lease-moshimo-wrap .moshimo-list03 .box {
    width: 33.333%;
    box-sizing: border-box;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    margin-top: 30px;
}
.lease-moshimo-wrap .moshimo-list03 .box div:nth-of-type(1) {
    width: 25%;
    box-sizing: border-box;
}
.lease-moshimo-wrap .moshimo-list03 .box div:nth-of-type(2) {
    width: 75%;
    box-sizing: border-box;
    padding-left: 20px;
    padding-right: 20px;
}
.lease-moshimo-wrap .moshimo-list03 .txt {
    font-family: 'Gothic Medium BBB', sans-serif !important;
    margin: 0;
}
@media (max-width: 1199.98px) {
    .lease-moshimo-wrap .moshimo-list03 .box {
        align-items: flex-start;
        align-content: flex-start;
    }
    .lease-moshimo-wrap .moshimo-list03 .box div:nth-of-type(1) {
        width: 35%;
    }
    .lease-moshimo-wrap .moshimo-list03 .box div:nth-of-type(2) {
        width: 65%;
    }
}
@media (max-width: 767.98px) {
    .lease-moshimo-wrap .moshimo-list03 .box {
        width: 100%;
        margin-top: 20px;
        align-items: center;
        align-content: center;
    }
    .lease-moshimo-wrap .moshimo-list03 .box div:nth-of-type(1) {
        width: 30%;
    }
    .lease-moshimo-wrap .moshimo-list03 .box div:nth-of-type(2) {
        width: 70%;
        padding-right: 0;
        padding-left: 15px;
    }
}
@media (max-width: 320.98px) {
    .lease-moshimo-wrap .moshimo-list03 .box {
        font-size: 12px;
    }
}

.lease-moshimo-wrap .moshimo-box {
    align-items: center;
    align-content: center;
}
.lease-moshimo-wrap .moshimo-box .col {
    max-width: 50% !important;
}
.lease-moshimo-wrap .moshimo-box .col:nth-of-type(1) {
    padding-right: 25px;
}
.lease-moshimo-wrap .moshimo-box .col:nth-of-type(2) {
    padding-left: 25px;
}
.lease-moshimo-wrap .moshimo-box .txt {
    margin: 0 0 30px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
@media (max-width: 1199.98px) {
    .lease-moshimo-wrap .moshimo-box {
        align-items: flex-start;
        align-content: flex-start;
    }
    .lease-moshimo-wrap .moshimo-box .col:nth-of-type(1) {
        padding-right: 15px;
        max-width: 60% !important;
    }
    .lease-moshimo-wrap .moshimo-box .col:nth-of-type(2) {
        padding-left: 15px;
        max-width: 40% !important;
    }
}
@media (max-width: 991.98px) {
    .lease-moshimo-wrap .moshimo-box .col:nth-of-type(1) {
        max-width: 65% !important;
        padding-right: 10px;
    }
    .lease-moshimo-wrap .moshimo-box .col:nth-of-type(2) {
        max-width: 35% !important;
        padding-left: 10px;
    }
}
@media (max-width: 767.98px) {
    .lease-moshimo-wrap .moshimo-box .col:nth-of-type(1) {
        max-width: 100% !important;
        padding-right: 0;
    }
    .lease-moshimo-wrap .moshimo-box .col:nth-of-type(2) {
        max-width: 100% !important;
        padding-left: 0;
    }
    .lease-moshimo-wrap .moshimo-box .txt {
        margin: 10px 0;
    }
}

.lease-moshimo-wrap .moshimo-table {
    margin: 30px 0 15px;
    border: none;
}
.lease-moshimo-wrap .moshimo-table th {
    border: none;
    text-align: center;
    background-color: #fff;
    padding: 0 10px 20px 0;
}
.lease-moshimo-wrap .moshimo-table th:nth-of-type(1) {
    width: 55%;
}
.lease-moshimo-wrap .moshimo-table th:nth-of-type(2) {
    width: 24%;
}
.lease-moshimo-wrap .moshimo-table th:nth-of-type(3) {
    padding-right: 0;
    width: 21%;
}
.lease-moshimo-wrap .moshimo-table th span {
    display: block;
    border-radius: 6px;
    background-color: #f0efe9;
    color: #197b88;
    padding: 10px 2px;
}
.lease-moshimo-wrap .moshimo-table th:nth-of-type(3) span {
    background-color: #197b88;
    color: #fff;
}
.lease-moshimo-wrap .moshimo-table td {
    border: none;
    padding: 0;
    line-height: 1.6;
    text-align: center;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
@media (max-width: 1199.98px) {
    .lease-moshimo-wrap .moshimo-table {
        margin-top: 0;
    }
    .lease-moshimo-wrap .moshimo-table th:nth-of-type(1)  {
        width: 50%;
    }
    .lease-moshimo-wrap .moshimo-table th:nth-of-type(2)  {
        width: 27%;
    }
    .lease-moshimo-wrap .moshimo-table th:nth-of-type(3)  {
        width: 23%;
    }
}
@media (max-width: 991.98px) {
    .lease-moshimo-wrap .moshimo-table th:nth-of-type(1)  {
        width: 40%;
    }
    .lease-moshimo-wrap .moshimo-table th:nth-of-type(2)  {
        width: 33%;
    }
    .lease-moshimo-wrap .moshimo-table th:nth-of-type(3)  {
        width: 27%;
    }
}
@media (max-width: 767.98px) {
    .lease-moshimo-wrap .moshimo-table {
        margin-top: 30px;
    }
    .lease-moshimo-wrap .moshimo-table th {
        font-size: 12px;
        padding: 0 5px 10px 0;
    }
}
@media (max-width: 320.98px) {
    .lease-moshimo-wrap .moshimo-table th {
        font-size: 11px;
        padding: 0 2px 10px;
    }
}

/* 5.6.4 banner top ------------*/
#tp-lease-bnr .flex-box {
    justify-content: space-between;
}
#tp-lease-bnr .flex-box .col {
    flex: 0 1 49.2%;
    padding: 0;
}
@media (max-width: 767.98px) {
    #tp-lease-bnr .flex-box .col {
        flex: 0 1 100%;
        margin-bottom: 1rem;
    }
    #tp-lease-bnr .flex-box .col:last-of-type {
        margin-bottom: 0;
    }
}

/* 5.7 Search (Recommend)
 * ------------------------------*/
.icon-favorite-box {
    width: 28px;
    height: 27px;
    margin: 0;
    position: absolute;
    top: 0;
    right: 10px;
    z-index: 1000;
    cursor: pointer;
}
.icon-favorite-box .checkbox-parts {
    display: block;
    cursor: pointer;
}
.icon-favorite-box .checkbox-parts::before {
    content: '';
    width: 28px;
    height: 27px;
    border: none;
    background: url(../image/icon/icon-favorite-off.svg) 0 0 no-repeat;
}
.icon-favorite-box:hover .checkbox-parts::before {
    background: url(../image/icon/icon-favorite-on.svg) 0 0 no-repeat;
}
.icon-favorite-box .checkbox-input:checked + .checkbox-parts::before {
    background: url(../image/icon/icon-favorite-on.svg) 0 0 no-repeat;
}
.icon-favorite-box .checkbox-input:checked + .checkbox-parts::after {
    display: none;
}
@media (max-width: 575.98px) {
    .icon-favorite-box {
        width: 25px;
        height: 24px;
    }
    .icon-favorite-box .checkbox-parts::before {
        width: 25px;
        height: 24px;
        background-size: contain;
    }
}

.search-box .icon-favorite,
.ttl-sub .icon-favorite,
.recommend-box .icon-favorite {
    position: absolute;
    top: -40px;
    right: 0;
    margin: 0;
    color: #949494;
}
.ttl-sub .icon-favorite {
    top: 21px;
}
.recommend-box .icon-favorite {
    top: 115px;
    right: 75px;
}
.search-box .icon-favorite .circle,
.ttl-sub .icon-favorite .circle,
.recommend-box .icon-favorite .circle {
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #197b88;
    position: absolute;
    top: -4px;
    left: 27px;
    margin: 0;
}
.search-box .icon-favorite i,
.ttl-sub .icon-favorite i,
.recommend-box .icon-favorite i {
    margin-right: 10px;
    vertical-align: -12%;
    display: inline-block;
    font-size: 26px;
    color: #a9a9a9;
}
@media (max-width: 991.98px) {
    .ttl-sub .icon-favorite {
        top: -42px;
    }
    .recommend-box .icon-favorite {
        right: 20px;
    }
}
@media (max-width: 575.98px) {
    .search-box .icon-favorite,
    .ttl-sub .icon-favorite {
        font-size: 13px;
        top: -32px;
    }
    .recommend-box .icon-favorite {
        top: 140px;
    }
    .search-box .icon-favorite .circle,
    .ttl-sub .icon-favorite .circle,
    .recommend-box .icon-favorite .circle {
        width: 8px;
        height: 8px;
        top: -1px;
        left: 24px;
    }
    .search-box .icon-favorite i,
    .ttl-sub .icon-favorite i,
    .recommend-box .icon-favorite i {
        font-size: 22px;
    }
}

#tp-recommend.recommend-wrap .btn-small.absolute-right {
  top: 122px;
  right: 65px;
}
#tp-recommend.recommend-wrap .recommend-box .icon-favorite {
  top: 114px;
  right: 180px;
}
#tp-recommend.recommend-wrap .recommend-box.sp {
  display: none;
}
@media (max-width: 1199.98px) {
  #tp-recommend.recommend-wrap .recommend-box.pc {
    display: block;
  }
  #tp-recommend.recommend-wrap .recommend-box .icon-favorite {
    top: 119px;
    right: 160px;
    font-size: 12px;
  }
  #tp-recommend.recommend-wrap .recommend-box .icon-favorite i {
    font-size: 20px;
    margin-right: 7px;
  }
  #tp-recommend.recommend-wrap .recommend-box .icon-favorite .circle {
    width: 7px;
    height: 7px;
    top: -3px;
    left: 20px;
  }
}
@media (max-width: 991.98px) {
  #tp-recommend.recommend-wrap .recommend-box.pc {
    display: none;
  }
  #tp-recommend.recommend-wrap .recommend-box.sp {
    display: block;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: flex-start;
    align-content: flex-start;
    margin-left: -10px;
    margin-right: -10px;
  }
  #tp-recommend.recommend-wrap .recommend-box.sp .btn {
    margin: 10px auto 0;
    width: 100%;
  }
}
@media (max-width: 575.98px) {
  #tp-recommend.recommend-wrap .recommend-box.sp {
    justify-content: space-between;
  }
  #tp-recommend.recommend-wrap .recommend-box.sp .btn {
    width: 100%;
    height: 50px;
  }
  #tp-recommend.recommend-wrap .recommend-box.sp .btn.favorite {
    font-size: 11px;
    letter-spacing: 0;
  }
  #tp-recommend.recommend-wrap .recommend-box.sp .btn i {
      font-size: 13px;
    }
}
@media (max-width: 380.98px) {
#tp-recommend.recommend-wrap .recommend-box.sp .btn.favorite {
    text-align: left;
  }
}
@media (max-width: 360.98px) {
  #tp-recommend.recommend-wrap .recommend-box.sp .btn.favorite {
    font-size: 10px;
  }
}
@media (max-width: 320.98px) {
  #tp-recommend.recommend-wrap .recommend-box.sp .btn.favorite {
    font-size: 9px;
    padding-left: 5px;
  }
}

/*----- WPのお気に入り登録ボタンを修正 -----*/
.recommend-list .simplefavorite-button {
    position: absolute !important;
    background: none !important;
    border: none !important;
    top: 10px !important;
    right: -3px !important;
    outline: none !important;
}
.recommend-list .simplefavorite-button i {
    display: block !important;
    font-size: 26px !important;
    color: #a9a9a9 !important;
    opacity: 0.8 !important;
}
.recommend-list .simplefavorite-button.active i {
    color: #197b88 !important;
    opacity: 1 !important;
}
@media (max-width: 575.98px) {
    .recommend-list .simplefavorite-button {
        top: 5px !important;
        right: -15px !important;
    }
    .recommend-list .simplefavorite-button i {
        font-size: 22px !important;
    }
}

.btn-link-wrap .simplefavorite-button {
    width: 100% !important;
    display: block !important;
    background: #fff !important;
    border: 2px solid #dfdfdf !important;
    outline: none !important !important;
    border-radius: 8px !important;
    padding: 10px !important;
    color: #000 !important;
    font-size: 18px !important;
    font-weight: 600 !important;
}
.btn-link-wrap .simplefavorite-button:hover {
    background: #f1f1f1 !important;
    transition: 0.5s !important;
}
.btn-link-wrap .simplefavorite-button i {
    display: inline-block !important;
    font-size: 24px !important;
    color: #197b88 !important;
    vertical-align: -10% !important;
}
.btn-link-wrap .simplefavorite-button::after {
    display: inline-block !important;
    content: "お気に入りに追加" !important;
    padding-left: 5px !important;
}
@media (max-width: 1199.98px) {
    .btn-link-wrap .simplefavorite-button {
        font-size: 15px !important;
    }
    .btn-link-wrap .simplefavorite-button i {
        font-size: 18px !important;
    }
}
@media (max-width: 991.98px) {
    .btn-link-wrap .simplefavorite-button {
        font-size: 13px !important;
    }
    .btn-link-wrap .simplefavorite-button i {
        font-size: 16px !important;
    }
}
@media (max-width: 767.98px) {
    .btn-link-wrap .simplefavorite-button {
        font-size: 12px !important;
    }
    .btn-link-wrap .simplefavorite-button i {
        font-size: 15px !important;
    }
}
/*----- END WPのお気に入り登録ボタンを修正 -----*/

.search-box {
    width: 100%;
    padding: 30px 0;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
    margin-bottom: 100px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
    font-size: 14px;
    color: #a9a9a9;
    position: relative;
}
.search-box .col-12 {
    padding-right: 10px;
}
.search-box a {
    display: block;
    color: #a9a9a9;
}
.search-box a:hover {
    color: #a9a9a9;
    text-decoration: none;
}
.search-box .sub {
    font-size: 22px;
    text-align: left;
    color: #000;
    font-family: 'Midashi Go MB31', sans-serif !important;
    font-weight: 600;
}
@media (max-width: 991.98px) {
    .search-box {
        margin-top: 20px;
        padding-right: 4px;
    }
    .search-box .sub {
        font-size: 20px;
    }
}
@media (max-width: 767.98px) {
    .search-box {
        padding: 17px 0 20px;
        border-width: 1px;
        margin: 10px 0 40px;
    }
    .search-box .row {
        margin-left: 0;
        margin-right: 0;
    }
    .search-box .col-12 {
        padding-right: 0;
        padding-left: 0;
    }
    .search-box .sub {
        font-size: 15px;
    }
}
@media (max-width: 575.98px) {
    .search-box {
        margin: 5px 0 40px -7px;
        width: 105%;
    }
}

.search-box .icon {
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
.search-box .icon.eki {
    background-image: url(../image/icon/icon-eki.svg);
}
.search-box .icon.area {
    background-image: url(../image/icon/icon-area.svg);
}
.search-box .icon.time {
    background-image: url(../image/icon/icon-time.svg);
}
.search-box .icon.price {
    background-image: url(../image/icon/icon-price.svg);
}
.search-box .icon.madori {
    background-image: url(../image/icon/icon-madori.svg);
}
.search-box .icon.color {
    background-image: url(../image/icon/icon-color.svg);
    width: 21px;
    height: 21px;
    margin-right: 7px;
    vertical-align: -13%;
}

.search-box ul.search-list {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    border: 1px solid #d5d5d5;
    border-radius: 6px;
    margin: 15px 0 0;
}
.search-box ul.search-list li {
    width: 50%;
    box-sizing: border-box;
    text-align: center;
    border-right: 1px solid #d5d5d5;
}
.search-box ul.search-list li:last-of-type {
    border-right: none;
}
.search-box ul.search-list li a {
    padding: 10px 5px 5px;
}
.search-box ul.search-list li a:hover {
    background: #f1f1f1;
}
.search-box ul.search-list li .icon {
    display: block;
    width: 21px;
    height: 21px;
    margin: 0 auto 4px;
}
@media (max-width: 1199.98px) {
    .search-box ul.search-list li {
        font-size: 12px;
    }
}
@media (max-width: 991.98px) {
    .search-box ul.search-list {
        margin-bottom: 10px;
    }
    .search-box ul.search-list li {
        font-size: 14px;
    }
}
@media (max-width: 575.98px) {
    .search-box ul.search-list li {
        font-size: 13px;
    }
}

.search-box form select {
    width: 45%;
    background: #fff;
	padding: 2px 10px;
	box-shadow: none;
	-webkit-appearance: none;
	border: 1px solid #d5d5d5;
	border-radius: 6px;
	padding: 10px 10px 10px 33px;
	box-sizing: border-box;
	margin-top: 6px;
	margin-bottom: 9px;
	color: #a9a9a9;
}
.search-box form select.long-select {
    width: 100%;
}
.search-box form select:focus {
    outline: none;
    overflow: hidden;
    text-decoration: none;
}
.search-box form select.icon {
    background-position: 5% 50%;
    background-size: 21px 21px;
}
.search-box form select.icon.madori {
    background-position: 2.5% 50%;
}
@media (max-width: 1199.98px) {
    .search-box form select {
        width: 44%;
        font-size: 13px;
    }
}
@media (max-width: 991.98px) {
    .search-box form select {
        width: 47%;
        font-size: 14px;
        padding-left: 43px;
    }
}
@media (max-width: 575.98px) {
    .search-box form select {
        width: 46%;
        font-size: 13px;
        padding-left: 33px;
    }
}

.checkbox-input {
    display: none;
}
.checkbox-parts {
    display: inline-block;
    padding-left: 25px;
    position: relative;
    margin-right: 20px;
}
.checkbox-parts::before {
    content: "";
    display: block;
    position: absolute;
    top: 3px;
    left: 0;
    width: 18px;
    height: 18px;
    border: 1px solid #d5d5d5;
    border-radius: 3px;
}
.checkbox-input:checked + .checkbox-parts::before {
    border-color: #197b88;
    background: #197b88;
}
.checkbox-input:checked + .checkbox-parts::after {
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    left: 5px;
    width: 7px;
    height: 10px;
    transform: rotate(40deg);
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
}
@media (max-width: 1199.98px) {
    .checkbox-parts {
        padding-left: 20px;
        margin-right: 6px;
        font-size: 13px;
    }
    .checkbox-parts::before {
        width: 15px;
        height: 15px;
    }
}
@media (max-width: 991.98px) {
    .checkbox-parts {
        font-size: 14px;
    }
    .checkbox-parts::before {
        top: 5px;
    }
}
@media (max-width: 575.98px) {
    .checkbox-parts {
        font-size: 13px;
    }
    .checkbox-parts::before {
        top: 3px;
    }
}

.search-box .checkbox-parts.c-brown::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-brown::before {
    border-color: #893d19;
    background: #893d19;
}
.search-box .checkbox-parts.c-orange::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-orange::before {
    border-color: #e64329;
    background: #e64329;
}
.search-box .checkbox-parts.c-light-orange::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-light-orange::before {
    border-color: #ec8432;
    background: #ec8432;
}
.search-box .checkbox-parts.c-yellow::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-yellow::before {
    border-color: #f3d146;
    background: #f3d146;
}
.search-box .checkbox-parts.c-green::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-green::before {
    border-color: #79ab3c;
    background: #79ab3c;
}
.search-box .checkbox-parts.c-light-blue::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-light-blue::before {
    border-color: #54b2ce;
    background: #54b2ce;
}
.search-box .checkbox-parts.c-blue::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-blue::before {
    border-color: #0232f5;
    background: #0232f5;
}
.search-box .checkbox-parts.c-purple::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-purple::before {
    border-color: #792cac;
    background: #792cac;
}
.search-box .checkbox-parts.c-light-purple::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-light-purple::before {
    border-color: #bb358f;
    background: #bb358f;
}
.search-box .checkbox-input:checked + .checkbox-parts.c-white::before {
    border-color: #d5d5d5;
    background: #fff;
}
.search-box .checkbox-parts.c-black::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-black::before {
    border-color: #000;
    background: #000;
}
.search-box .checkbox-parts.c-light-gray::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-light-gray::before {
    border-color: #838f95;
    background: #838f95;
}
.search-box .checkbox-parts.c-gray::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-gray::before {
    border-color: #777665;
    background: #777665;
}
.search-box .checkbox-parts.c-light-brown::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-light-brown::before {
    border-color: #78645b;
    background: #78645b;
}
.search-box .checkbox-parts.c-beige::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-beige::before {
    border-color: #c9ae78;
    background: #c9ae78;
}
.search-box .checkbox-input:checked + .checkbox-parts.c-pattern::before {
    border-color: #d5d5d5;
    background: #fff;
}
.search-box .checkbox-parts.c-pink::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-pink::before {
    border-color: #ff99cc;
    background: #ff99cc;
}
.search-box .checkbox-parts.c-navy::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-navy::before {
    border-color: #000080;
    background: #000080;
}
.search-box .checkbox-parts.c-wood::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-wood::before {
    border-color: #8b4513;
    background: #8b4513;
}
.search-box .checkbox-parts.c-light-green::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-light-green::before {
    border-color: #90EE90;
    background: #90EE90;
}
.search-box .checkbox-parts.c-red::before,
.search-box .checkbox-input:checked + .checkbox-parts.c-red::before {
    border-color: #BE0032;
    background: #BE0032;
}

.search-box .checkbox-input:checked + .checkbox-parts.c-white::after,
.search-box .checkbox-input:checked + .checkbox-parts.c-pattern::after {
    border-color: #d5d5d5;
}

.search-box .search-type {
    margin-top: 0.1rem;
}
@media (max-width: 767.98px) {
    .search-box .search-type {
        margin-top: 0.5rem;
    }
}

.search-box .color-box {
    border: 1px solid #d5d5d5;
    border-radius: 6px;
    margin: 6px 0 0;
    padding: 10px;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
}
.search-box .color-box .txt {
    width: 70px;
}
.search-box ul.color-list {
    margin-bottom: -10px;
}
.search-box ul.color-list li {
    display: inline-block;
    position: relative;
}
/*.search-box ul.color-list li:last-of-type {
    padding-left: 25px;
}
.search-box ul.color-list li:last-of-type::before {
    display: block;
    content: "|";
    color: #d5d5d5;
    font-size: 24px;
    font-family: "游ゴシック",YuGothic, sans-serif !important;
    font-weight: 300;
    position: absolute;
    top: -7px;
    left: 4px;
}*/
.search-box ul.color-list li .checkbox-parts {
    margin-right: 0;
    padding-left: 21px;
}
/*.search-box ul.color-list li:last-of-type .checkbox-parts {
    padding-left: 25px;
}*/
.search-box ul.color-list li .checkbox-parts::before {
    top: -13px;
}
/*.search-box ul.color-list li:last-of-type .checkbox-parts::before {
    top: 4px;
}*/
.search-box ul.color-list li .checkbox-input:checked + .checkbox-parts::after {
    top: -11px;
}
/*.search-box ul.color-list li:last-of-type .checkbox-input:checked + .checkbox-parts::after {
    top: 6px;
}*/
@media (max-width: 1199.98px) {
    /*.search-box ul.color-list li:last-of-type {
        padding-left: 20px;
    }*/
    .search-box ul.color-list li .checkbox-parts {
        padding-left: 18px;
    }
}
@media (max-width: 575.98px) {
    .search-box .color-box .txt {
        width: 80px;
    }
    .search-box .color-box .txt .icon {
        display: block;
        margin-top: 3px;
        margin-bottom: 3px;
    }
    .search-box ul.color-list li {
        margin-bottom: -5px;
    }
    /*.search-box ul.color-list li:last-of-type::before {
        font-size: 20px;
    }
    .search-box ul.color-list li:last-of-type .checkbox-parts::before {
        top: 2px;
    }*/
}

.search-box .kara {
    display: inline-block;
    width: 6.8%;
    text-align: center;
}
@media (max-width: 991.98px) {
    .search-box .kara {
        width: 4.5%;
    }
}

.search-box .recommend-station,
.search-box .recommend-area,
.search-box .recommend-time {
    margin: 10px 10px 0 10px !important;
    color: #000 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
}
.search-box .recommend-station + .recommend-area {
    margin-top: 0 !important;
}
@media (max-width: 767.98px) {
    .search-box .recommend-station,
    .search-box .recommend-area,
    .search-box .recommend-time {
        font-size: 15px !important;
    }
}

.btn-submit-wrap {
    max-width: 300px;
    height: 65px;
    box-sizing: border-box;
    margin: 50px auto 0;
    position: relative;
    background: #197b88;
    z-index: 1;
    text-align: center;
    border-radius: 8px;
}
.btn-submit-wrap::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fff;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    -webkit-transform: translateX(110%);
    transform: translateX(110%);
    z-index: -1;
}
.btn-submit-wrap:hover::before {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}
.btn-submit-wrap:hover,
.btn-submit-wrap:focus,
.btn-submit-wrap:active {
  transition: 0.7s;
  text-decoration: none;
  color: #197b88 !important;
}
@media (max-width: 767.98px) {
    .btn-submit-wrap {
        margin-top: 15px;
        height: 55px;
    }
}

.btn-submit-wrap .btn-submit {
    display: block;
    max-width: 300px;
    height: 65px;
    font-family: 'Midashi Go MB31', sans-serif !important;
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    padding: 20px 10px;
    box-sizing: border-box;
    border: 2px solid #197b88;
    color: #fff;
    background: transparent;
    outline: none;
    transition: all .3s;
    cursor: pointer;
    overflow: hidden;
    z-index: 1;
    text-decoration: none;
    text-align: center;
}
.btn-submit-wrap .btn-submit:hover {
  background: transparent;
  text-decoration: none;
  color: #197b88 !important;
}
@media (max-width: 767.98px) {
    .btn-submit-wrap .btn-submit {
        font-size: 15px;
        height: 55px;
        padding-top: 18px;
    }
}

.search-box .btn-submit-wrap {
    max-width: 100%;
    margin-top: 0;
    height: 50px;
}
.search-box .btn-submit-wrap .btn-submit {
    max-width: 100%;
    height: 50px;
    padding-top: 14px;
}
@media (max-width: 767.98px) {
    .search-box .btn-submit-wrap .btn-submit {
        padding-top: 15px;
    }
}

.btn-submit {
    display: block;
    width: 100%;
    margin: 5px auto 0;
    font-family: 'Midashi Go MB31', sans-serif !important;
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    padding: 15px 10px;
    box-sizing: border-box;
    border: 2px solid #197b88;
    border-radius: 8px;
    color: #fff;
    background: #197b88;
    outline: none;
    transition: all .3s;
    cursor: pointer;
    overflow: hidden;
    z-index: 1;
    text-decoration: none;
    position: relative;
    text-align: center;
}
.btn-submit::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fff;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    -webkit-transform: translateX(110%);
    transform: translateX(110%);
    z-index: -1;
}
.btn-submit:hover::before {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}
.btn-submit:hover {
  transition: 0.7s;
  text-decoration: none;
  color: #197b88 !important;
}
.btn-submit:focus {
    outline: none;
    overflow: hidden;
    text-decoration: none;
}
@media (max-width: 991.98px) {
    .btn-submit {
        margin-top: 20px;
    }
}
@media (max-width: 767.98px) {
    .btn-submit {
        font-size: 15px;
    }
}

.btn-reset {
    display: block;
    width: 100%;
    margin: 0 auto 15px;
    font-family: 'Midashi Go MB31', sans-serif !important;
    font-size: 18px;
    font-weight: 600;
    line-height: 1;
    padding: 13.5px 10px;
    box-sizing: border-box;
    border: 2px solid #999;
    border-radius: 8px;
    color: #fff;
    background: #999;
    outline: none;
    transition: all .3s;
    cursor: pointer;
    overflow: hidden;
    z-index: 1;
    text-decoration: none;
    position: relative;
    text-align: center;
}
.btn-reset:hover {
  background: #666;
  border-color: #666;
}
.btn-reset:hover,
.btn-reset:focus,
.btn-reset:active {
  transition: 0.7s;
  text-decoration: none;
}
.btn-reset:focus {
    outline: none;
    overflow: hidden;
    text-decoration: none;
}
@media (max-width: 767.98px) {
    .btn-reset {
        font-size: 15px;
    }
}

.btn-submit-box {
  margin-top: -3.6rem;
}
.btn-submit-box .btn-submit {
  padding: 13px 10px;
}
.btn-submit-box .btn-submit:hover {
  background: #056774;
}
.btn-submit-box .btn-submit:hover,
.btn-submit-box .btn-submit:focus,
.btn-submit-box .btn-submit:active {
  color: #fff !important;
}
@media (max-width: 991.98px) {
  .btn-submit-box {
    margin-top: 1.5rem;
  }
}

/* 5.8 History page
 * ------------------------------*/
#history-wrap {
    margin: 0 0 20px;
}
#history-wrap .content {
    position: relative;
    z-index: 60;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
#history-wrap .content p {
    margin-bottom: 0;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}

#history-wrap .history-table {
    position: relative;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: none;
}
#history-wrap .history-table th,
#history-wrap .history-table td {
    width: 50%;
    padding: 32px;
    vertical-align: middle;
    position: relative;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
#history-wrap .history-table th {
    text-align: right;
    border-right: 1px solid #adadad;
    border-bottom: none;
    background: #eaeaea;
}
#history-wrap .history-table td {
    text-align: left;
    background: #eaeaea;
    border-bottom: none;
}
#history-wrap .history-table tr:nth-child(2n) th,
#history-wrap .history-table tr:nth-child(2n) td {
    background: #fff;
}
@media (max-width: 767.98px) {
    #history-wrap .history-table th,
    #history-wrap .history-table td {
        padding: 15px;
    }
    #history-wrap .history-table th {
        width: 25%;
    }
    #history-wrap .history-table td {
        width: 75%;
    }
}

#history-wrap .year {
    display: block;
    font-size: 31px;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 0.35em;
    font-style: italic;
    margin-bottom: 0.1em;
    position: relative;
    z-index: 60;
    line-height: 1;
    color: #197b88;
}
#history-wrap .year-sub {
    display: block;
    font-size: 14px;
    color: #7e7e7e;
    padding-right: 12px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
    position: relative;
    z-index: 60;
}
@media (max-width: 767.98px) {
    #history-wrap .year {
        font-size: 15px;
        letter-spacing: 0.35em;
    }
    #history-wrap .year-sub {
        font-size: 11px;
        letter-spacing: 0;
        padding-right: 5px;
    }
}

#history-wrap .thumb {
    width: 260px;
    position: absolute;
    top: 80px;
    left: 100px;
    z-index: 100;
    text-align: left;
}
#history-wrap .thumb.thumb01 {
    top: 80px;
}
#history-wrap .thumb.thumb02 {
    top: -25px;
}
#history-wrap .thumb img {
    width: 260px;
    height: auto;
    margin-bottom: 8px;
}
#history-wrap .thumb.tate {
  width: 200px;
  left: 125px;
}
#history-wrap .thumb.tate img {
  width: 200px;
}
@media (max-width: 1199.98px) {
    #history-wrap .thumb {
        left: 50px;
    }
    #history-wrap .thumb.tate {
        left: 80px;
    }
}
@media (max-width: 991.98px) {
    #history-wrap .thumb {
        width: 150px;
        left: 20px;
    }
    #history-wrap .thumb img {
        width: 150px;
    }
    #history-wrap .thumb.tate {
        width: 130px;
        left: 30px;
    }
    #history-wrap .thumb.tate img {
        width: 130px;
    }
}
@media (max-width: 767.98px) {
    #history-wrap .thumb-xs {
        max-width: 100%;
        height: auto;
        margin: 10px auto;
    }
}

/* 5.9 Recruit page
 * ------------------------------*/
.btn-recruit-box {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}
.btn-recruit-box li {
    width: 33.3333%;
    text-align: center;
    box-sizing: border-box;
    padding: 0 15px;
}
.btn-recruit-box li a {
    display: block;
    background: #292929;
    padding: 30px 10px;
    color: #fff;
    font-size: 23px;
    border: 2px solid #292929;
    border-radius: 100px;
}
.btn-recruit-box li a:hover {
    background: #444444;
    transition: 0.5s;
    border-color: #444444;
    text-decoration: none;
}
.btn-recruit-box li.green a {
    background: #197b88;
    border-color: #197b88;
}
.btn-recruit-box li.green a:hover {
    background: #056774;
    border-color: #056774;
}
@media (max-width: 991.98px) {
    .btn-recruit-box li a {
        border-radius: 40px;
    }
}
@media (max-width: 767.98px) {
    .btn-recruit-box li {
        width: 100%;
        padding: 0;
        margin-bottom: 15px;
    }
    .btn-recruit-box li a {
        padding: 10px;
        border-radius: 8px;
        font-size: 16px;
    }
}

.img-txt-message {
    margin: 50px 7px 0 0;
    text-align: right;
}
.img-txt-message img {
    max-width: 356px !important;
}
@media (max-width: 991.98px) {
    .img-txt-message img {
        max-width: 250px !important;
    }
}
@media (max-width: 767.98px) {
    .img-txt-message {
        margin-top: 30px;
    }
    .img-txt-message img {
        max-width: 200px !important;
    }
}

/* 5.9.1 Number of STK Horizontal (PC only) ------------*/
.recruit-num-pc .accordion-box {
    width: 100%;
    margin: 0 auto;
    padding: 20px 0;
    height: 220px;
    box-sizing: border-box;
    overflow: hidden;
}
.recruit-num-pc {
    padding: 0 10px;
    border-bottom: 1px dashed #acacac;
    text-align: center;
}
.recruit-num-pc:first-of-type {
    border-top: 1px dashed #acacac;
}
@media (max-width: 991.98px) {
    .recruit-num-pc {
        display: none;
    }
}

.recruit-num-pc .ttlarea {
    position: relative;
    left: 100px;
}
.recruit-num-pc .ttlarea i {
    display: block;
    position: absolute;
    margin: 0;
    top: 50%;
    transform: translateY(-50%);
    right: -90px;
    width: 15px;
    height: 28px;
    background: url(../image/arrow-next-gray.svg) 0 0 no-repeat;
    background-size: contain;
    vertical-align: -10%;
}
.recruit-num-pc .ttlarea.number10 {
    left: 120px;
}
.recruit-num-pc .ttlarea.number100 {
    left: 70px;
}
.recruit-num-pc .ttlarea.number100 i {
    right: -60px;
}
@media (max-width: 1199.98px) {
    .recruit-num-pc .ttlarea {
        left: 150px;
    }
    .recruit-num-pc .ttlarea i {
        top: 25%;
        transform: translateY(-25%);
        right: -50px;
    }
    .recruit-num-pc .ttlarea.number10 {
        left: 160px;
    }
    .recruit-num-pc .ttlarea.number100 {
        left: 120px;
    }
    .recruit-num-pc .ttlarea.number100 i {
        right: -40px;
    }
}

/*----- pc / sp 共通 recruit-number-img -----*/
.recruit-num-pc .recruit-number-img {
    display: inline-block;
    height: 84px;
    background-size: contain !important;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -250px;
	transform: translateY(-50%);
	cursor: pointer;
}
.recruit-num-pc .recruit-number-img.selected {
    margin-left: -120px;
}
.recruit-number-img.number48 {
    width: 248px;
    background: url(../image/recruit/img-number48_off.svg) 0 0 no-repeat;
}
.recruit-number-img.number64 {
	width: 246px;
	background: url(../image/recruit/img-number64_off.svg) 0 0 no-repeat;
}
.recruit-number-img.number82 {
	width: 250px;
	background: url(../image/recruit/img-number82_off.svg) 0 0 no-repeat;
}
.recruit-number-img.number100 {
	width: 313px;
	background: url(../image/recruit/img-number100_off.svg) 0 0 no-repeat;
}
.recruit-number-img.number10 {
	width: 230px;
	background: url(../image/recruit/img-number10_off.svg) 0 0 no-repeat;
}
.recruit-number-img.number48.selected {
	background: url(../image/recruit/img-number48_on.svg) 0 0 no-repeat;
}
.recruit-number-img.number64.selected {
	background: url(../image/recruit/img-number64_on.svg) 0 0 no-repeat;
}
.recruit-number-img.number82.selected {
	background: url(../image/recruit/img-number82_on.svg) 0 0 no-repeat;
}
.recruit-number-img.number100.selected {
	background: url(../image/recruit/img-number100_on.svg) 0 0 no-repeat;
}
.recruit-number-img.number10.selected {
	background: url(../image/recruit/img-number10_on.svg) 0 0 no-repeat;
}
@media (max-width: 1199.98px) {
    .recruit-num-pc .recruit-number-img {
        top: 30%;
	    transform: translateY(-30%);
	}
    .recruit-number-img {
        height: 55px;
        margin-left: -200px;
    }
    .recruit-number-img.number48 {
        width: 163px;
    }
    .recruit-number-img.number64 {
        width: 161px;
    }
    .recruit-number-img.number82 {
        width: 164px;
    }
    .recruit-number-img.number100 {
        width: 205px;
    }
    .recruit-number-img.number10 {
        width: 151px;
    }
}
@media (max-width: 991.98px) {
    .recruit-number-img {
        height: 40px !important;
    }
    .recruit-number-img.number48 {
        width: 118px !important;
    }
    .recruit-number-img.number64 {
        width: 117px !important;
    }
    .recruit-number-img.number82 {
        width: 119px !important;
    }
    .recruit-number-img.number100 {
        width: 149px !important;
    }
    .recruit-number-img.number10 {
        width: 110px !important;
    }
    .recruit-number-img.selected {
        margin-left: auto !important;
    }
}

.recruit-num-pc .txtarea {
    width: 780px;
    display: table;
    margin: 0 0 0 270px;
    text-align: left;
}
.recruit-num-pc .txtarea .img {
    display: table-cell;
    vertical-align: middle;
    width: 20%;
    padding-left: 90px;
}
.recruit-num-pc .txtarea img {
    width: 160px;
    height: 160px;
}
.recruit-num-pc .txtarea .subsub {
    font-size: 21px;
    text-align: left;
    margin: 10px 0;
    color: #00a89c;
}
.recruit-num-pc .txtarea .txt {
    display: table-cell;
    vertical-align: middle;
    padding-left: 30px;
    width: 80%;
    box-sizing: border-box;
}
@media (max-width: 1199.98px) {
    .recruit-num-pc .txtarea {
        margin-left: 180px;
        width: 78%;
    }
    .recruit-num-pc .txtarea .subsub {
        font-size: 18px;
    }
}

/* 5.9.2 Number of STK Vertical (SP only) ------------*/
.recruit-num-sp {
    display: none;
}
@media (max-width: 991.98px) {
    .recruit-num-sp {
        display: block;
        padding: 0 10px;
        border-top: 1px dashed #acacac;
    }
    .recruit-num-sp:last-of-type {
        border-bottom: 1px dashed #acacac;
    }
    .recruit-num-sp .accordion-box {
        display: block;
        width: 100%;
        margin: 0;
        padding: 20px 0 18px;
        height: auto;
    }
    .recruit-num-sp dl,
    .recruit-num-sp dt dt,
    .recruit-num-sp dl dd {
        margin: 0;
        padding: 0;
    }
    .recruit-num-sp dd {
        margin: 0;
        padding: 0;
    }
    .recruit-num-sp .recruit-number-img {
        display: block;
        margin: 0 auto;
    }
    .recruit-num-sp .ttlarea {
        position: relative;
    }
    .recruit-num-sp .ttlarea i {
        display: block;
        position: absolute;
        margin: 0;
        top: 46%;
        transform: translateY(-46%);
        right: 0;
        width: 11px;
        height: 20px;
        background: url(../image/arrow-next-gray.svg) 0 0 no-repeat;
        background-size: contain;
    }
    .recruit-num-sp .txtarea img {
        display: block;
        max-width: 100%;
        margin: 20px auto 15px;
        width: 120px;
        height: 120px;
    }
    .recruit-num-sp .txtarea .subsub {
        font-size: 15px;
        margin: 10px 0;
        color: #00a89c;
    }
    .recruit-num-sp .txtarea p {
        margin-bottom: 0;
    }
}

/* 5.9.3 environment ------------*/
.recruit-environment-box {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    margin: 0 0 50px;
}
.recruit-environment-box .imgarea {
    width: 30%;
    box-sizing: border-box;
}
.recruit-environment-box .txtarea {
    width: 70%;
    box-sizing: border-box;
    padding-left: 30px;
}
.recruit-environment-box .sub {
    font-size: 24px;
    text-align: left;
    color: #197b88;
    margin: 10px 0;
}
.recruit-environment-box .txt {
    font-size: 15px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
@media (max-width: 1199.98px) {
    .recruit-environment-box .sub {
        font-size: 20px;
    }
}
@media (max-width: 767.98px) {
    .recruit-environment-box {
        margin-bottom: 20px;
    }
    .recruit-environment-box .txtarea {
        padding-left: 15px;
    }
    .recruit-environment-box .sub {
        margin-top: 0;
        font-size: 15px;
    }
    .recruit-environment-box .txt {
        font-size: 13px;
        margin-bottom: 0;
    }
}

/* 5.9.4 entry form ------------*/
.entry-form-wrap .dl-list {
    width: 100%;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
}
.entry-form-wrap .dl-list dt {
    display: block;
    width: 20%;
    font-size: 17px;
    line-height: 1.5;
    padding: 40px 10px 8px;
    border-bottom: 1px dashed #fff;
}
.entry-form-wrap .dl-list dd {
    display: block;
    width: 80%;
    font-size: 16px;
    line-height: 1.5;
    padding: 40px 10px 8px;
    border-bottom: 1px dashed #adadad;
}
.entry-form-wrap .dl-list:last-of-type dt {
    padding-top: 70px;
}
.entry-form-wrap .dl-list:last-of-type dd {
    padding: 70px 0 0;
    border-bottom: none;
}
.entry-form-wrap .dl-list.col3 {
    width: 100%;
}
.entry-form-wrap .dl-list.col3 dd.left {
    width: 38%;
}
.entry-form-wrap .dl-list.col3 dd.right {
    width: 38%;
    margin-left: 5%;
    padding-top: 32px;
    padding-bottom: 6px;
}
.entry-form-wrap .calendar-note {
    font-size: 14px;
    color: #000;
}
@media (max-width: 991.98px) {
    .entry-form-wrap .dl-list dt {
        font-size: 16px;
    }
    .entry-form-wrap .dl-list dd {
        font-size: 15px;
    }
}
@media (max-width: 767.98px) {
    .entry-form-wrap .dl-list {
        flex-flow: row wrap;
    }
    .entry-form-wrap .dl-list dt {
        width: 100% !important;
        font-size: 14px !important;
        padding: 10px 5px 5px !important;
    }
    .entry-form-wrap .dl-list dd {
        width: 100% !important;
        font-size: 14px !important;
        margin: 0 !important;
        padding: 5px 5px 8px !important;
    }
    .entry-form-wrap .dl-list.col3 dd.right {
        padding: 10px 5px 6px !important;
    }
    .entry-form-wrap .dl-list:last-of-type dt {
        padding-top: 15px !important;
    }
}

.hissu {
    display: inline-block;
    margin: 0 5px;
    color: #197b88;
    vertical-align: -10%;
    font-size: 22px;
}
.form-cont .hissu {
    vertical-align: -12%;
}
.form-cont .txt {
    display: inline-block;
    font-size: 14px;
    line-height: 1.7;
}
@media (max-width: 767.98px) {
    .hissu {
        vertical-align: -20%;
    }
    .form-cont .txt {
        font-size: 12px;
    }
}

.form-cont form {
    margin: 60px 0 0;
    padding: 0;
}
.form-cont input,
.form-cont textarea,
.form-cont select {
	background: #fff;
	border: none;
	outline: none;
	box-shadow: none;
	padding: 5px 10px;
	font-size: 16px;
	color: #a9a9a9;
	border: none;
	margin: 0;
}
.form-cont select {
    color: #000;
}
.form-cont .formTbox {
	width: 80%;
}
.form-cont .formTbox-m {
	width: 60%;
}
.form-cont .formTbox-s {
	width: 20%;
}
.form-cont .formTarea {
	width: 100%;
	height: 140px;
	border: 1px solid #c2c2c2;
}
@media (max-width: 991.98px) {
    .form-cont .formTbox-s {
	    width: 30%;
	}
}
@media (max-width: 767.98px) {
    .form-cont form {
        margin-top: 0;
    }
	.form-cont input,
	.form-cont textarea,
	.form-cont select {
		font-size: 15px;
		padding: 5px 0 8px;
	}
	.form-cont .formTarea {
	    height: 100px;
	}
}

.form-cont label {
	font-weight: 400;
}
.form-cont input::placeholder {
    color: #a9a9a9;
    font-weight: 400;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.form-cont input::-webkit-input-placeholder {
    color: #a9a9a9;
    font-weight: 400;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.form-cont input:-ms-input-placeholder {
    color: #a9a9a9;
    font-weight: 400;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.form-cont input::-moz-placeholder {
    color: #a9a9a9;
    font-weight: 400;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.form-cont input[type=radio],
.form-cont input[type=checkbox] {
	margin-right: 5px;
}

/*Chrome、Safari*/
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
/*Firefox、IE*/
input[type="number"] {
    -moz-appearance:textfield;
}

/* 5.10 Works page
 * ------------------------------*/
.works-menu {
    width: 100%;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    margin-bottom: 60px;
}
.works-menu li {
    text-align: center;
    padding: 0;
    font-size: 15px;
    font-weight: 600;
}
.works-menu li::before {
    content: "|";
    padding: 0 30px;
}
.works-menu li:first-of-type::before {
    content: "";
    padding: 0;
}
.works-menu li a:hover,
.works-menu li .active {
    color: #197b88;
    text-decoration: none;
}
@media (max-width: 767.98px) {
    .works-menu {
        flex-flow: row wrap;
        border-top: 1px solid #adadad;
        margin-bottom: 40px;
    }
    .works-menu li {
        width: 50%;
        font-size: 14px;
        padding: 10px 5px;
        border-bottom: 1px solid #adadad;
        border-right: 1px solid #adadad;
    }
    .works-menu li:nth-of-type(odd) {
        border-left: 1px solid #adadad;
    }
    .works-menu li::before {
        display: none;
    }
    .works-menu li a {
        width: 100%;
        display: block;
    }
}
@media (max-width: 575.98px) {
    .works-menu {
        width: 104%;
        margin-left: -6px;
    }
}

.works-detail-comment {
    margin: 60px 0;
}
.works-detail-comment .left,
.works-detail-comment .right {
    box-sizing: border-box;
}
.works-detail-comment .left {
    padding-right: 30px;
}
.works-detail-comment .right {
    padding-left: 30px;
}
.works-detail-comment .sub-line {
    margin: 0 0 30px;
    height: 50px;
    box-sizing: border-box;
}
.works-detail-comment .txt {
    font-size: 15px;
    line-height: 2;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.works-detail-comment .sub-line + dl.house-list {
    margin-top: -28px;
}
.works-detail-comment .right .sub-line {
    padding-top: 10px;
}
@media (max-width: 767.98px) {
    .works-detail-comment {
        margin: 30px 0;
    }
    .works-detail-comment .left,
    .works-detail-comment .right {
        padding-left: 15px;
        padding-right: 15px;
    }
    .works-detail-comment .sub-line {
        margin-bottom: 20px;
        height: auto;
    }
    .works-detail-comment .txt {
        font-size: 13px;
    }
    .works-detail-comment .sub-line + dl.house-list {
        margin-top: -15px;
    }
}

/* 5.10.1 works detail swiper ------------*/
.swiper-works-detail .slide-img {
  overflow: hidden;
  position: relative;
}
.swiper-works-detail .slide-img img {
  width: 100%;
  height: 600px;
  margin: 0 auto;
  object-fit: cover;
  overflow: hidden;
}
@media (min-width: 1500px) {
    .swiper-works-detail .slide-img img {
        height: 700px;
    }
}
@media (max-width: 1199.98px) {
    .swiper-works-detail .slide-img img {
        height: auto;
    }
}
@media (max-width: 767.98px) {
    .swiper-works-detail .slide-img img {
        height: auto;
    }
}

.swiper-works-detail-thumb {
  width: 100%;
  padding: 3px 0 0;
  margin: 0;
  box-sizing: border-box;
}
.swiper-works-detail-thumb .swiper-wrapper {
    flex-flow: row wrap;
}
.swiper-works-detail-thumb .slide-img {
  position: relative;
  overflow: hidden;
  cursor: pointer;
  width: 16.6666% !important;
  box-sizing: border-box;
  padding: 0 !important;
  border: 3px solid #fff;
}
.swiper-works-detail-thumb .slide-img:hover,
.swiper-works-detail-thumb .swiper-slide-thumb-active {
  border: 3px solid #197b88;
}
.swiper-works-detail-thumb .slide-img:hover {
    transition: 0.5s;
}
.swiper-works-detail-thumb .slide-img img {
  max-width: 100%;
  height: 175px;
  margin: 0 auto;
  object-fit: cover;
  overflow: hidden;
}
@media (max-width: 1199.98px) {
    .swiper-works-detail-thumb .slide-img img {
        height: 130px;
    }
}
@media (max-width: 991.98px) {
    .swiper-works-detail-thumb .slide-img img {
        height: 100px;
    }
}
@media (max-width: 767.98px) {
    .swiper-works-detail-thumb .slide-img img {
        height: 80px;
    }
}
@media (max-width: 575.98px) {
    .swiper-works-detail-thumb {
        padding-top: 2px;
    }
    .swiper-works-detail-thumb .slide-img {
        border: 2px solid #fff;
    }
    .swiper-works-detail-thumb .slide-img:hover,
    .swiper-works-detail-thumb .swiper-slide-thumb-active {
        border: 2px solid #197b88;
    }
    .swiper-works-detail-thumb .slide-img img {
        height: 40px;
    }
}

/* 5.11 New Construction page
 * ------------------------------*/
 /* 5.11.1 lineup ------------*/
.lineup-list .col-6 {
    margin-bottom: 40px;
}
@media (max-width: 767.98px) {
    .lineup-list .col-6 {
        padding-left: 0;
        padding-right: 0;
        margin-bottom: 25px;
    }
    .lineup-list .col-6:nth-of-type(odd) {
        padding-right: 8px;
    }
    .lineup-list .col-6:nth-of-type(even) {
        padding-left: 8px;
    }
}

.lineup-list li:hover .imagearea-content > img {
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}
.lineup-list li .imagearea-content.txt-none .txt-overlay {
    opacity: 0;
}
.lineup-list li:hover .imagearea-content.txt-none .txt-overlay {
    opacity: 1;
}
.lineup-list li .img {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}

/* 5.11.2 quality ------------*/
.icon-check {
    display: block;
    max-width: 100px;
    background: #fff;
    color: #197b88;
    font-size: 15px;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 600;
    letter-spacing: 0.03em;
    margin: 0 auto 15px;
    border-radius: 20px;
    line-height: 1;
    padding: 5px 5px 4px;
    text-align: center;
}
@media (max-width: 767.98px) {
    .icon-check {
        font-size: 14px;
        padding: 4px 5px;
    }
}

.quality-cont {
    margin-top: 4rem;
}
.quality-list + .quality-cont {
    margin-top: 8rem;
}
.quality-cont .subsub {
    text-align: left;
    color: #197b88;
    margin: 6px 0 20px;
}
.quality-cont .icon-check {
    margin: 0 0 15px;
    background: #197b88;
    color: #fff;
    font-size: 17px;
    padding-bottom: 5px;
}
.quality-cont .txt {
    font-size: 18px;
    margin: 0;
}
@media (max-width: 767.98px) {
    .icon-check {
        font-size: 13px;
    }
    .quality-cont {
        margin-top: 1.5rem;
    }
    .quality-list + .quality-cont {
        margin-top: 3rem;
    }
    .quality-cont .subsub {
        margin: 4px 0 8px;
        font-size: 20px;
    }
    .quality-cont .icon-check {
        font-size: 15px;
        margin: 20px 0 12px;
        padding: 6px 5px 5px;
    }
    .quality-cont .txt {
        font-size: 15px;
    }
}

.quality-list {
    clear: both;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    margin: 5rem 0 0;
    text-align: center;
}
.quality-list.reverse {
    flex-direction: row-reverse;
}
.quality-list li {
    width: 15%;
    background: #dad8c8;
    font-size: 18px;
    line-height: 1.6;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    box-sizing: border-box;
}
.quality-list li.arrow {
    width: 6.25%;
    background: #fff;
    padding: 0 12px;
}
.quality-list li.arrow img {
    width: 100% !important;
    height: auto !important;
}
.quality-list li.arrow-sp {
    display: none;
}
.quality-list li a:hover {
    text-decoration: none;
}
.quality-list li.bg-green {
    background: #197b88;
    color: #fff;
}
.quality-list li.bg-green a {
    width: 100%;
    display: block;
    background: #197b88;
    color: #fff;
    padding: 60px 10px;
}
.quality-list li.bg-green a:hover {
    background: #056774;
    transition: 0.5s;
}
@media (max-width: 1199.98px) {
    .quality-list li {
        font-size: 14px;
    }
    .quality-list li.bg-green a {
        padding: 40px 10px;
    }
}
@media (max-width: 991.98px) {
    .quality-list li .f15 {
        font-size: 12px !important;
    }
}
@media (max-width: 767.98px) {
    .quality-list {
        margin: 3rem 0 0;
        flex-direction: row !important;
    }
    .quality-list li {
        width: 48%;
        margin-bottom: 10px;
    }
    .quality-list li.arrow {
        display: none;
    }
    .quality-list li.arrow-sp {
        display: block;
        width: 100%;
        background: #fff;
    }
    .quality-list li.arrow-sp img {
        width: 30px;
        height: auto;
    }
    .quality-list li .f15 {
        display: block;
        width: 100%;
    }
}

.quality-arrow-under {
    float: right;
    width: 15%;
    margin: 20px 0 15px;
    text-align: center;
}
.quality-arrow-under img {
    width: 23%;
    height: auto;
}
@media (max-width: 767.98px) {
    .quality-arrow-under {
        display: none;
    }
}

/* 5.11.3 support ------------*/
.support-cont {
    margin-top: 5rem;
}
.support-cont .col {
     padding-left: 0;
     padding-right: 0;
}
@media (max-width: 767.98px) {
    .support-cont {
        margin: 3rem 0 -2rem;
    }
}

.support-cont .num-ttl {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: center;
    align-content: flex-start;
    margin: 0 0 20px;
}
.support-cont .num-ttl .num {
    width: 18%;
    font-size: 18px;
    line-height: 1.2;
}
.support-cont .num-ttl .num span {
    display: block;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.03em;
    font-size: 55px;
    margin-left: -5px;
}
.support-cont .num-ttl .txt {
    width: 82%;
}
@media (max-width: 1199.98px) {
    .support-cont .num-ttl .num {
        width: 23%;
    }
    .support-cont .num-ttl .txt {
        width: 77%;
    }
}
@media (max-width: 767.98px) {
    .support-cont .num-ttl {
        margin: 10px 0;
    }
    .support-cont .num-ttl .num {
        font-size: 14px;
        line-height: 1.3;
    }
    .support-cont .num-ttl .num span {
        font-size: 35px;
        margin-left: 0;
    }
}

.support-cont .subsub {
    text-align: left;
    font-size: 28px;
}
@media (max-width: 1199.98px) {
    .support-cont .subsub {
        font-size: 24px;
    }
}
@media (max-width: 767.98px) {
    .support-cont .subsub {
        font-size: 20px;
    }
}

/* 5.12 Contact page
 * ------------------------------*/
.contact-box {
    max-width: 550px;
    margin: 0 auto;
    font-size: 18px;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.contact-box .tel,
.contact-box .tel a {
    font-size: 80px;
    color: #197b88;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.03em;
    margin: 0;
}
@media (max-width: 991.98px) {
    .contact-box {
        max-width: 500px;
        font-size: 16px;
    }
    .contact-box .tel,
    .contact-box .tel a {
        font-size: 70px;
    }
}
@media (max-width: 767.98px) {
    #contact-wrap {
        padding-top: 10px;
    }
    .contact-box {
        max-width: 300px;
        font-size: 13px;
    }
    .contact-box .tel {
        margin-top: -10px;
    }
    .contact-box .tel,
    .contact-box .tel a {
        font-size: 40px;
        letter-spacing: 0;
        text-align: center;
    }
    .contact-box .btn {
        margin-top: 30px;
    }
}
@media (max-width: 320.98px) {
    .contact-box .tel,
    .contact-box .tel a {
        font-size: 36px;
    }
}

.contact-txt-box {
  font-size: 16px;
  position: relative;
  overflow: hidden;
}
.contact-txt-box .btn {
  float: right;
  margin: 0;
}
@media (max-width: 767.98px) {
  .contact-txt-box {
    font-size: 13px;
  }
  .contact-txt-box .btn {
    float: none;
    margin: 0 auto;
  }
}

/* Added on 20210310*/
.hissu {
    margin: 0 0 0 8px;
    padding: 1px 6px 2px;
    background: #197b88;
    color: #fff;
    font-size: 12px;
    text-align: center;
    vertical-align: 10% !important;
    border-radius: 4px;
  }
  .form-cont .txt {
    font-family: 'Gothic Medium BBB', sans-serif !important;
  }
  .contact-txt-box {
    text-align: center;
    font-family: 'Gothic Medium BBB', sans-serif !important;
  }
  .contact-txt-box p {
    line-height: 2.35 !important;
  }
  @media (max-width: 767.98px) {
    .hissu {
      vertical-align: -20%;
      font-size: 11px;
      padding: 1px 5px 2px;
    }
    .form-cont .txt {
      font-size: 11px;
      margin: 10px 0 0;
    }
    .form-cont input::placeholder {
          font-size: 13px;
      }
    .contact-txt-box {
      text-align: left;
      font-family: 'Midashi Go MB31', sans-serif !important;
    }
  }
  
  .entry-form-wrap .dl-list dt {
    line-height: 1.8;
  }
  .entry-form-wrap .dl-list .bd-bottom {
    border-bottom: 1px dashed #adadad;
    padding: 0 0 8px;
    margin-left: -10px;
    margin-bottom: 10px;
  }
  @media (max-width: 767.98px) {
      .entry-form-wrap .dl-list {
          margin-top: 20px;
      }
      .entry-form-wrap .dl-list dt {
          padding: 10px 5px 0px !important;
      }
      .entry-form-wrap .dl-list dd {
          padding: 0 5px !important;
      }
      .entry-form-wrap .dl-list .bd-bottom {
          margin-left: 0;
          margin-bottom: 0;
          padding-bottom: 0;
      }
  }
  
.form-cont .wpcf7-checkbox {
    display: inline-block !important;
}
.form-cont .wpcf7-checkbox .wpcf7-list-item {
    display: inline-block !important;
    margin-bottom: 8px !important;
}
@media (max-width: 767.98px) {
    .form-cont .wpcf7-checkbox {
        margin-top: 10px !important;
        margin-bottom: 5px !important;
    }
    .form-cont .wpcf7-checkbox .wpcf7-list-item {
        margin-bottom: 5px !important;
    }
}

/* 5.12.1 catalog-form ------------*/
.catalog-list-title {
  text-align: center !important;
  font-size: 26px !important;
}
@media (max-width: 991.98px) {
  .catalog-list-title {
    font-size: 20px !important;
  }
}
@media (max-width: 767.98px) {
  .catalog-list-title {
    font-size: 14px !important;
  }
}

.wpcf7-form-control-wrap.catalog-list-item input[type="checkbox"] {
  display: none !important;
}
.wpcf7-form-control-wrap.catalog-list-item {
  display: block !important;
}
.wpcf7-form-control.catalog-list-item {
  width: 100% !important;
  margin: 0 0 3% !important;
  display: flex !important;
  flex-flow: row wrap !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  align-content: flex-start !important;
}
.wpcf7-form-control.catalog-list-item .wpcf7-list-item {
  display: block !important;
  width: 31% !important;
  margin: 5% 1% 6% !important;
  padding: 0 !important;
  position: relative !important;
  height: 350px !important;
}
@media (max-width: 1199.98px) {
  .wpcf7-form-control.catalog-list-item .wpcf7-list-item {
    height: 280px !important;
    margin-bottom: 8.5% !important;
  }
}
@media (max-width: 991.98px) {
  .wpcf7-form-control.catalog-list-item .wpcf7-list-item {
    width: 48% !important;
    margin: 6% 1% 11% !important;
    height: 200px !important;
    text-align: center;
    padding: 0 4% !important;
  }
}
@media (max-width: 767.98px) {
  .wpcf7-form-control.catalog-list-item .wpcf7-list-item {
    margin: 9% 1% 20% !important;
    height: 150px !important;
  }
}
@media (max-width: 320.98px) {
  .wpcf7-form-control.catalog-list-item .wpcf7-list-item {
    margin-bottom: 25% !important;
    padding: 0 2% !important;
  }
}

.wpcf7-form-control.catalog-list-item .wpcf7-list-item-label {
  color: #000 !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  display: inline-block !important;
  margin: 0 !important;
  cursor: pointer !important;
}
.wpcf7-form-control.catalog-list-item .wpcf7-list-item label:before {
  content: "" !important;
  width: 100% !important;
  height: 350px !important;
  display: block !important;
  margin: 0 auto 20px !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  overflow: hidden !important;
  top: 45px !important;
  left: 0 !important;
  right: 0 !important;
  position: absolute !important;
}

.wpcf7-form-control.catalog-list-item .wpcf7-list-item:nth-of-type(1) label:before {
  background-image: url(../image/contact/img01.jpg) !important;
}
.wpcf7-form-control.catalog-list-item .wpcf7-list-item:nth-of-type(2) label:before {
  background-image: url(../image/contact/img02.jpg) !important;
}
.wpcf7-form-control.catalog-list-item .wpcf7-list-item:nth-of-type(3) label:before {
  background-image: url(../image/contact/img03.jpg) !important;
}
.wpcf7-form-control.catalog-list-item .wpcf7-list-item:nth-of-type(4) label:before {
  background-image: url(../image/contact/img04.jpg) !important;
}
.wpcf7-form-control.catalog-list-item .wpcf7-list-item:nth-of-type(5) label:before {
  background-image: url(../image/contact/img05.jpg) !important;
}
.wpcf7-form-control.catalog-list-item .wpcf7-list-item:nth-of-type(6) label:before {
  background-image: url(../image/contact/img06.jpg) !important;
}
.wpcf7-form-control.catalog-list-item .wpcf7-list-item label:hover:before {
  opacity: 0.75 !important;
  transition: 0.5s !important;
}
@media (max-width: 1199.98px) {
  .wpcf7-form-control.catalog-list-item .wpcf7-list-item-label {
    font-size: 15px !important;
  }
  .wpcf7-form-control.catalog-list-item .wpcf7-list-item label:before {
    width: 80% !important;
    height: 280px !important;
  }
}
@media (max-width: 991.98px) {
  .wpcf7-form-control.catalog-list-item .wpcf7-list-item label:before {
    height: 200px !important;
  }
}
@media (max-width: 767.98px) {
  .wpcf7-form-control.catalog-list-item .wpcf7-list-item-label {
    font-size: 13px !important;
  }
  .wpcf7-form-control.catalog-list-item .wpcf7-list-item label:before {
    height: 150px !important;
  }
}
@media (max-width: 320.98px) {
  .wpcf7-form-control.catalog-list-item .wpcf7-list-item-label {
    font-size: 12px !important;
  }
}

.wpcf7-form-control.catalog-list-item input[type="checkbox"] + .wpcf7-list-item-label:before {
  content: "\f00c" !important;
  border: 2px solid #000 !important;
  border-radius: 4px !important;
  color: #fff !important;
  display: inline-block !important;
  width: 28px !important;
  height: 26px !important;
  margin: 0 10px 0 27px !important;
  padding: 0 !important;
  vertical-align: top !important;
  font: normal normal normal 24px FontAwesome !important;
  text-align: center !important;
  transition: 0.5s !important;
}
.wpcf7-form-control.catalog-list-item input[type="checkbox"]:checked + .wpcf7-list-item-label:before {
  color: #197b88 !important;
}
@media (max-width: 1199.98px) {
  .wpcf7-form-control.catalog-list-item input[type="checkbox"] + .wpcf7-list-item-label:before {
    width: 25px !important;
    height: 23px !important;
    font: normal normal normal 20px FontAwesome !important;
  }
}
@media (max-width: 991.98px) {
  .wpcf7-form-control.catalog-list-item input[type="checkbox"] + .wpcf7-list-item-label:before {
    width: 20px !important;
    height: 18px !important;
    font: normal normal normal 16px FontAwesome !important;
    margin: 0 5px 0 0 !important;
  }
}

.wpcf7-form-control.catalog-list-item input[type="checkbox"] + .wpcf7-list-item-label:after {
  content: "" !important;
  width: 100% !important;
  height: 447px !important;
  border: solid 5px rgba(0,0,0,0) !important;
  position: absolute !important;
  top: -25px !important;
  left: 0 !important;
  right: 0 !important;
  margin: 0 auto !important;
  z-index: 100 !important;
  transition: 0.5s !important;
}
.wpcf7-form-control.catalog-list-item input[type="checkbox"]:checked + .wpcf7-list-item-label:after {
  border: solid 5px #197b88 !important;
}
@media (max-width: 1199.98px) {
  .wpcf7-form-control.catalog-list-item input[type="checkbox"] + .wpcf7-list-item-label:after {
    height: 380px !important;
  }
}
@media (max-width: 991.98px) {
  .wpcf7-form-control.catalog-list-item input[type="checkbox"] + .wpcf7-list-item-label:after {
    height: 300px !important;
  }
}
@media (max-width: 767.98px) {
  .wpcf7-form-control.catalog-list-item input[type="checkbox"] + .wpcf7-list-item-label:after {
    height: 230px !important;
    top: -15px !important;
  }
}

/* 5.13 Partner page
 * ------------------------------*/
ul.partner-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items: flex-start;
    align-content: flex-start;
    margin: 20px 0 0;
}
ul.partner-list li {
    width: 25%;
    box-sizing: border-box;
    padding: 0 20px;
}
@media (max-width: 767.98px) {
    ul.partner-list {
        margin: 0 0 10px;
    }
    ul.partner-list li {
        width: 50%;
        padding: 0 10px 20px;
    }
    ul.partner-list li:nth-of-type(odd) {
        padding-left: 0;
    }
    ul.partner-list li:nth-of-type(even) {
        padding-right: 0;
    }
}

/* 5.14 Ambassador page
 * ------------------------------*/
.ambassador-wrap {
    margin: 0;
}
.ambassador-wrap .subsub {
    font-size: 34px;
    letter-spacing: 0.05em;
}
.ambassador-wrap hr {
    margin: 7em 0;
}
@media (max-width: 1199.98px) {
    .ambassador-wrap .subsub {
        font-size: 28px;
    }
}
@media (max-width: 991.98px) {
    .ambassador-wrap .subsub {
        font-size: 25px;
    }
    .ambassador-wrap hr {
        margin: 4em 0;
    }
}
@media (max-width: 767.98px) {
    .ambassador-wrap .subsub {
        font-size: 20px;
    }
}
@media (max-width: 320.98px) {
    .ambassador-wrap .subsub {
        font-size: 18px;
    }
}

.ambassador-wrap .img01,
.ambassador-wrap .img02,
.ambassador-wrap .img03 {
    position: relative;
}
.ambassador-wrap .img01 img,
.ambassador-wrap .img02 img,
.ambassador-wrap .img03 img {
    width: 320px;
    height: auto;
    position: absolute;
    margin: 0;
}
.ambassador-wrap .img01 img {
    top: -110px;
    right: 40px;
}
.ambassador-wrap .img02 img {
    top: -80px;
    left: 40px;
}
.ambassador-wrap .img03 img {
    top: -55px;
    left: 40px;
}
@media (max-width: 1199.98px) {
    .ambassador-wrap .img01 img,
    .ambassador-wrap .img02 img {
        width: 250px;
    }
    .ambassador-wrap .img03 img {
        width: 250px;
        top: -40px;
    }
}
@media (max-width: 991.98px) {
    .ambassador-wrap .img01 img,
    .ambassador-wrap .img02 img {
        width: 180px;
        top: -50px;
    }
    .ambassador-wrap .img03 img {
        width: 180px;
        top: -10px;
    }
}
@media (max-width: 767.98px) {
    .ambassador-wrap .img01 img,
    .ambassador-wrap .img02 img,
    .ambassador-wrap .img03 img {
        width: 140px;
    }
}
@media (max-width: 575.98px) {
    .ambassador-wrap .img01 img {
        width: 110px;
        right: 0;
        top: -40px;
    }
    .ambassador-wrap .img02 img {
        width: 110px;
        left: 0;
        top: -50px;
    }
    .ambassador-wrap .img03 img {
        width: 110px;
        left: -20px;
        top: -30px;
    }
}
@media (max-width: 320.98px) {
    .ambassador-wrap .img01 img,
    .ambassador-wrap .img02 img,
    .ambassador-wrap .img03 img {
        width: 90px;
    }
}

.ambassador-wrap .sub-ambassador01 {
    width: 150px;
    margin: 0 auto 40px;
}
.ambassador-wrap .sub-ambassador02 {
    width: 180px;
    margin: 0 auto 40px;
}
@media (max-width: 991.98px) {
    .ambassador-wrap .sub-ambassador01 {
        width: 130px;
    }
    .ambassador-wrap .sub-ambassador02 {
        width: 160px;
    }
}
@media (max-width: 767.98px) {
    .ambassador-wrap .sub-ambassador01 {
        width: 100px;
        margin-bottom: 20px;
    }
    .ambassador-wrap .sub-ambassador02 {
        width: 130px;
        margin-bottom: 20px;
    }
}
@media (max-width: 575.98px) {
    .ambassador-wrap .sub-ambassador01 {
        width: 80px;
    }
    .ambassador-wrap .sub-ambassador02 {
        width: 110px;
    }
}

.ambassador-wrap ul.ambassador-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: stretch;
    align-content: stretch;
    margin: 80px auto 0;
}
.ambassador-wrap ul.ambassador-list li {
    width: 28%;
    margin: 0 20px 40px;
    background: #00a99d;
    color: #fff;
    border-radius: 25px;
    font-size: 25px;
    box-sizing: border-box;
    padding: 40px 20px;
    text-align: center;
}
.ambassador-wrap ul.ambassador-list li img {
    width: 120px;
    height: auto;
    padding-bottom: 30px;
}
.ambassador-wrap ul.ambassador-list li .txt {
    height: 100px;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}
@media (max-width: 1199.98px) {
    .ambassador-wrap ul.ambassador-list li {
        font-size: 20px;
    }
    .ambassador-wrap ul.ambassador-list li img {
        width: 100px;
    }
    .ambassador-wrap ul.ambassador-list li .txt {
        height: 80px;
    }
}
@media (max-width: 991.98px) {
    .ambassador-wrap ul.ambassador-list {
        margin-top: 40px;
    }
    .ambassador-wrap ul.ambassador-list li {
        font-size: 16px;
        margin: 0 15px 20px;
        padding: 30px 10px;
        width: 25%;
    }
    .ambassador-wrap ul.ambassador-list li img {
        width: 80px;
    }
    .ambassador-wrap ul.ambassador-list li .txt {
        height: 40px;
    }
}
@media (max-width: 767.98px) {
    .ambassador-wrap ul.ambassador-list {
        margin-top: 30px;
    }
    .ambassador-wrap ul.ambassador-list li {
        margin: 0 10px 20px;
        width: 48%;
        border-radius: 12px;
    }
    .ambassador-wrap ul.ambassador-list li:nth-of-type(odd) {
        margin-left: 0 !important;
    }
    .ambassador-wrap ul.ambassador-list li:nth-of-type(even) {
        margin-right: 0 !important;
    }
}
@media (max-width: 575.98px) {
    .ambassador-wrap ul.ambassador-list li {
        width: 48%;
        margin: 0 5px 10px;
        font-size: 13px;
        padding: 15px 5px 20px;
    }
    .ambassador-wrap ul.ambassador-list li img {
        width: 60px;
    }
    .ambassador-wrap ul.ambassador-list li .txt {
        height: 20px;
    }
}
@media (max-width: 320.98px) {
    .ambassador-wrap ul.ambassador-list li {
        width: 47%;
    }
}

.ambassador-wrap ul.ambassador-txt-list {
    text-align: center;
    font-size: 27px;
    margin: 60px auto 0;
    line-height: 2.35;
}
@media (max-width: 991.98px) {
    .ambassador-wrap ul.ambassador-txt-list {
        font-size: 22px;
        margin-top: 30px;
        line-height: 2;
    }
}
@media (max-width: 767.98px) {
    .ambassador-wrap ul.ambassador-txt-list {
        font-size: 18px;
        margin-top: 20px;
    }
}
@media (max-width: 575.98px) {
    .ambassador-wrap ul.ambassador-txt-list {
        font-size: 13px;
    }
}

.ambassador-wrap ul.ambassador-interview-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: flex-start;
    align-content: flex-start;
    margin: 60px auto 0;
}
.swiper-ambassador-interview {
    margin: 60px auto 0;
    width: 80%;
}
.ambassador-wrap ul.ambassador-interview-list li {
    width: 40%;
    box-sizing: border-box;
    padding: 0 30px;
    text-align: center;
}
.ambassador-wrap ul.ambassador-interview-list li .txt,
.swiper-ambassador-interview .txt {
    font-size: 20px;
    margin: 15px 0;
    text-align: center;
}
.ambassador-wrap ul.ambassador-interview-list li img,
.swiper-ambassador-interview img {
    display: block;
    width: 400px !important;
    height: 400px !important;
    border-radius: 50%;
    border: 23px solid #cceeeb;
    margin: auto;
    object-fit: cover;
}
.ambassador-wrap ul.ambassador-interview-list li a:hover img,
.swiper-ambassador-interview a:hover img {
    border-color: #66cbc4;
    transition: 0.5s; 
}
.ambassador-wrap ul.ambassador-interview-list .btn,
.swiper-ambassador-interview .btn {
    font-size: 15px;
    margin-top: 40px;
}
@media (max-width: 1199.98px) {
    .ambassador-wrap .btn-recruit-box li {
        width: 50%;
    }
    .ambassador-wrap ul.ambassador-interview-list li img,
    .swiper-ambassador-interview img {
        width: 280px !important;
        height: 280px !important;
    }
}
@media (max-width: 991.98px) {
    .ambassador-wrap ul.ambassador-interview-list {
        margin-top: 30px;
    }
    .ambassador-wrap ul.ambassador-interview-list li .txt,
    .swiper-ambassador-interview .txt {
        font-size: 18px;
    }
    .ambassador-wrap ul.ambassador-interview-list li img,
    .swiper-ambassador-interview img {
        width: 210px !important;
        height: 210px !important;
        border-width: 18px;
    }
    .ambassador-wrap .btn-recruit-box {
        font-size: 13px;
    }
}
@media (max-width: 767.98px) {
    .ambassador-wrap ul.ambassador-interview-list {
        margin-top: 20px;
    }
    .swiper-ambassador-interview {
        margin-top: 20px;
        width: 100%;
    }
    .ambassador-wrap ul.ambassador-interview-list li .txt,
    .swiper-ambassador-interview .txt {
        font-size: 16px;
    }
    .ambassador-wrap ul.ambassador-interview-list li img,
    .swiper-ambassador-interview img {
        width: 190px !important;
        height: 190px !important;
        border-width: 10px;
    }
}
@media (max-width: 575.98px) {
    .ambassador-wrap ul.ambassador-interview-list li {
        width: 50%;
        padding: 0 10px;
    }
    .ambassador-wrap ul.ambassador-interview-list li:nth-of-type(odd) {
        padding-left: 0;
    }
    .ambassador-wrap ul.ambassador-interview-list li:nth-of-type(even) {
        padding-right: 0;
    }
    .ambassador-wrap ul.ambassador-interview-list li .txt,
    .swiper-ambassador-interview .txt {
        font-size: 14px;
    }
    .ambassador-wrap ul.ambassador-interview-list li img,
    .swiper-ambassador-interview img {
        width: 140px !important;
        height: 140px !important;
    }
    .ambassador-wrap .btn-recruit-box li {
        width: 100%;
    }
    .ambassador-wrap ul.ambassador-interview-list .btn,
    .swiper-ambassador-interview .btn {
        font-size: 12px;
        line-height: 1.7;
        margin-top: 20px;
    }
}
@media (max-width: 360.98px) {
    .ambassador-wrap ul.ambassador-interview-list li img,
    .swiper-ambassador-interview img {
        width: 130px !important;
        height: 130px !important;
    }
    .ambassador-wrap ul.ambassador-interview-list .btn,
    .swiper-ambassador-interview .btn {
        font-size: 11px;
        line-height: 1.6;
    }
}
@media (max-width: 320.98px) {
    .ambassador-wrap ul.ambassador-interview-list li img,
    .swiper-ambassador-interview img {
        width: 110px !important;
        height: 110px !important;
    }
}

ul.ambassador-movie {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: flex-start;
  align-content: flex-start;
  margin: 3rem auto 0;
}
ul.ambassador-movie li {
  width: 33.333%;
  box-sizing: border-box;
  padding: 2rem 1rem 0;
}
ul.ambassador-movie li .movie {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
ul.ambassador-movie li .movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
@media (max-width: 767.98px) {
  ul.ambassador-movie {
    margin-top: 1rem;
  }
  ul.ambassador-movie li {
    width: 100%;
    padding: 1rem 0 0;
  }
}

/* 5.15 Real estate page
 * ------------------------------*/
.contact-green-wrap {
    background: #197b88;
    color: #fff;
    margin-top: 5rem;
}
.contact-green-wrap .container-fluid {
    position: relative;
}
.contact-green-wrap .contact-img {
    width: 160px;
    position: absolute;
    top: -63px;
    left: 0;
    right: 0;
    margin: auto;
}
@media (max-width: 991.98px) {
    .contact-green-wrap .contact-img {
        width: 140px;
    }
}
@media (max-width: 767.98px) {
    .contact-green-wrap .contact-img {
        width: 120px;
        top: -60px;
    }
}

.point-list {
    clear: both;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    margin: 1.5rem 0 3rem;
    text-align: center;
}
.point-list.center {
    justify-content: center;
}
.point-list li {
    width: 15%;
    font-size: 23px;
    line-height: 1.6;
    box-sizing: border-box;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
   align-items: stretch;
    align-content: stretch;
    background: #197b88;
    border-radius: 6px;
    position: relative;
}
.point-list.center li {
    margin-left: 1%;
    margin-right: 1%;
}
.point-list li a:hover {
    text-decoration: none;
}
.point-list li a {
    width: 100%;
    display: block;
    background: #197b88;
    color: #fff;
    padding: 60px 10px 50px;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items:  center;
    align-content:  center;
    border-radius: 6px;
}
.point-list li a:hover {
    background: #056774;
    transition: 0.5s;
}
.point-list li .icon {
    display: block;
    width: 100%;
    font-size: 14px;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-align: center;
    position: absolute;
    top: 20px;
}
.point-list li .small {
    display: block;
    font-size: 13px;
    margin-bottom: 5px;
}
.point-list li i {
    display: block;
    width: 100%;
    font-size: 14px;
    text-align: center;
    position: absolute;
    bottom: 10px;
}
@media (max-width: 1199.98px) {
    .point-list li {
        font-size: 18px;
    }
    .point-list.center li {
        width: 18%;
    }
}
@media (max-width: 991.98px) {
    .point-list li {
        font-size: 14px;
    }
    .point-list li a {
        padding: 50px 10px 40px;
    }
    .point-list li .small {
        font-size: 12px;
    }
}
@media (max-width: 767.98px) {
    .point-list {
        justify-content: space-between !important;
        margin-bottom: 1.8rem;
    }
    .point-list li {
        width: 48% !important;
        margin: 0 0 10px !important;
        font-size: 15px;
    }
    .point-list li .icon {
        top: 15px;
    }
    .point-list li .small {
        font-size: 11px;
    }
}
@media (max-width: 320.98px) {
    .point-list li .small {
        font-size: 10px;
    }
}

.real-estate-box {
    align-items: center;
    align-content: center;
}
.real-estate-box .arrow {
    display: block;
    width: 70%;
    height: auto;
    padding-top: 50px;
}
.real-estate-box .icon {
    display: block;
    max-width: 150px;
    background: #197b88;
    color: #fff;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em;
    font-size: 22px;
    border-radius: 8px;
    text-align: center;
    margin: 0 auto 20px;
    line-height: 1;
    padding: 12px 5px 10px;
}
@media (max-width: 767.98px) {
    .real-estate-box .icon {
        max-width: 100px;
        font-size: 15px;
        padding: 8px 5px;
    }
    .real-estate-box .arrow {
        width: 20%;
        transform: rotate(90deg);
        padding-top: 20px;
        padding-bottom: 20px;
    }
}

ul.real-estate-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items:  flex-start;
    align-content:  flex-start;
    margin: 1rem 0 2.5rem;
}
ul.real-estate-list li {
    width: 48%;
    color: #197b88;
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    align-items:  flex-start;
    align-content:  flex-start;
    margin:  20px 0 0;
    padding-bottom: 17px;
    border-bottom: 1px solid #197b88;
}
ul.real-estate-list li:last-of-type {
    border-bottom: none;
}
ul.real-estate-list li .num {
    width: 15%;
    font-size: 42px;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em;
    line-height: 1;
}
ul.real-estate-list li .txt {
    width: 85%;
    font-size: 23px;
}
@media (max-width: 991.98px) {
    ul.real-estate-list li .num {
        font-size: 32px;
    }
    ul.real-estate-list li .txt {
        font-size: 20px;
    }
}
@media (max-width: 767.98px) {
    ul.real-estate-list {
        margin:  0.5rem 0;
    }
    ul.real-estate-list li {
        width: 100%;
        margin-top: 12px;
        padding-bottom: 10px;
    }
    ul.real-estate-list li .num {
        width: 12%;
        font-size: 23px;
    }
    ul.real-estate-list li .txt {
        width: 88%;
        font-size: 14px;
    }
}

.features-cont + .features-cont {
    margin-top: 2rem;
}
.features-cont .col {
    padding-left: 0;
    padding-right: 0;
}
.features-cont .num {
    font-size: 22px;
    line-height: 1.2;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 500;
    letter-spacing: 0.03em;
    margin: 0 0 20px;
    color: #197b88;
}
.features-cont .num span {
    display: inline-block;
    font-size: 40px;
    margin-left: 15px;
    vertical-align: -5%;
    font-weight: 700;
}
@media (max-width: 767.98px) {
    .features-cont + .features-cont {
        margin-top: 1rem;
    }
    .features-cont .num {
        margin: 5px 0 10px;
        font-size: 14px;
        line-height: 1.3;
    }
    .features-cont .num span {
        font-size: 30px;
        margin-left: 10px;
    }
}

.features-cont .subsub {
    text-align: left;
    color: #197b88;
    margin-bottom: 25px;
}
.features-cont .sub-txt {
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 1.8;
}
.features-cont .sub-line {
    font-size: 23px;
    border-color: #000;
    text-align: center;
    padding-bottom: 20px;
}
@media (max-width: 991.98px) {
    .features-cont .sub-line {
        font-size: 20px;
        padding-bottom: 10px;
    }
}
@media (max-width: 767.98px) {
    .features-cont .subsub {
        font-size: 16px;
        margin-bottom: 15px;
    }
    .features-cont .sub-txt {
        font-size: 14px;
    }
    .features-cont .sub-line {
        font-size: 15px;
        padding-bottom: 10px;
    }
}

.features-list {
    clear: both;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
    margin: 2em 0 0;
    text-align: center;
}
.features-list.center {
    justify-content: center;
}
.features-list li {
    width: 16%;
    font-size: 15px;
    box-sizing: border-box;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
   align-items: stretch;
    align-content: stretch;
    background: #197b88;
    border-radius: 6px;
    position: relative;
}
.features-list.center li {
    margin-left: 0.4%;
    margin-right: 0.4%;
}
.features-list li {
    background: #197b88;
    color: #fff;
    padding: 10px;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items:  center;
    align-content:  center;
    border-radius: 6px;
}
.features-list li .img {
    width: 60%;
    padding-bottom: 10px;
}
.features-list li .img.large {
    width: 80%;
}
.features-list li .txt {
    width: 100%;
    line-height: 1.5;
}
.features-list li .small {
    font-size: 12px;
    display: inline-block;
    margin-bottom: 10px;
}
@media (max-width: 1199.98px) {
    .features-list li {
        font-size: 14px;
    }
}
@media (max-width: 991.98px) {
    .features-list li .small {
        font-size: 11px;
    }
}
@media (max-width: 767.98px) {
    .features-list {
        justify-content: space-between !important;
        margin-bottom: 1.8rem;
    }
    .features-list li {
        width: 49% !important;
        padding: 0 10px;
        margin: 0 0 10px !important;
        font-size: 13px;
    }
    .features-list li .img {
        padding-bottom: 0;
    }
    .features-list li .small {
        margin-bottom: 0;
    }
}
@media (max-width: 320.98px) {
    .features-list li .small {
        font-size: 10px;
    }
}

.features-box {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
   align-items: stretch;
    align-content: stretch;
    margin: 2rem 0 0;
}
.features-box div {
    width: 32%;
    border: 1px solid #000;
    margin-top: 25px;
    box-sizing: border-box;
    padding: 35px;
}
.features-box .sub {
    font-size: 18px;
    height: 40px;
    text-align: center;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
   align-items: center;
    align-content: center;
    margin: 0 0 20px;
    line-height: 1.8;
}
.features-box ul.list {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
   align-items: flex-start;
    align-content: flex-start;
    margin: 0;
}
.features-box ul.list li {
    width: 48.5%;
    height: 58px;
    box-sizing: border-box;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
   align-items: center;
    align-content: center;
    background: #197b88;
    color: #fff;
    padding: 10px;
    margin: 10px 0 0;
    border-radius: 6px;
    text-align: center;
    line-height: 1.5;
}
@media (max-width: 1199.98px) {
    .features-box div {
        padding: 25px 20px 20px;
    }
    .features-box .sub {
        line-height: 1.6;
    }
}
@media (max-width: 991.98px) {
    .features-box {
        margin-top: 0;
    }
    .features-box div {
        width: 48.5%;
        padding: 20px 15px 15px;
        margin-top: 20px;
    }
    .features-box .sub {
        font-size: 16px;
        margin-bottom: 10px;
    }
}
@media (max-width: 767.98px) {
    .features-box {
        margin-top: -1rem;
    }
    .features-box div {
        width: 100%;
        padding: 20px 15px 15px;
        margin-top: 15px;
    }
    .features-box .sub {
        height: auto;
    }
}

/* 5.16 Shop page
 * ------------------------------*/
.shop-cont {
  padding: 8rem;
}
.shop-cont .flex-box {
  margin-top: 5rem;
}
.shop-cont .flex-box:first-of-type {
  margin-top: 0;
}
.shop-cont .col {
  padding-left: 0;
  padding-right: 0;
}
.shop-cont .sub {
  text-align: left;
}
.shop-cont .tel {
  font-size: 32px;
  font-family: 'Roboto', sans-serif !important;
  font-weight: 700;
  letter-spacing: 0.05em;
  margin: 0;
  line-height: 1;
}
.shop-cont .btn-small {
  margin: 40px 0 0;
}
@media (max-width: 1199.98px) {
  .shop-cont {
    padding: 5rem 3rem;
  }
}
@media (max-width: 991.98px) {
  .shop-cont {
    padding: 3rem 1rem;
  }
  .shop-cont .sub {
    margin: 10px 0 15px;
  }
  .shop-cont .tel {
    font-size: 25px;
  }
}
@media (max-width: 767.98px) {
  .shop-cont {
    padding: 1.5rem 0 2rem;
  }
  .shop-cont .flex-box {
    margin-top: 2.5rem;
  }
  .shop-cont .tel {
    margin-top: -15px;
    letter-spacing: 0.03em;
  }
  .shop-cont .tel {
    font-size: 22px;
  }
  .shop-cont .btn-small {
    margin: 20px auto 0;
  }
}

/* 5.17 SP Info page
 * ------------------------------*/
.sp-info-wrap .sub {
    font-size: 40px;
    position: relative;
}
.sp-info-wrap .sub span {
    font-size: 26px;
}
.sp-info-wrap .icon-vr {
    width: 170px;
    position: absolute;
    top: -30px;
    right: 60px;
}
.sp-info-wrap .subsub {
    font-size: 26px;
    text-align: left;
    color: #197b88;
    margin: 0 0 20px;
}
@media (max-width: 1199.98px) {
    .sp-info-wrap .sub {
        font-size: 35px;
    }
    .sp-info-wrap .sub span {
        font-size: 23px;
    }
    .sp-info-wrap .icon-vr {
        width: 140px;
        top: -30px;
        right: -30px;
    }
}
@media (max-width: 991.98px) {
    .sp-info-wrap .sub {
        font-size: 30px;
    }
    .sp-info-wrap .sub span {
        font-size: 20px;
    }
    .sp-info-wrap .icon-vr {
        width: 140px;
        top: 0;
        right: 0;
    }
}
@media (max-width: 767.98px) {
    .sp-info-wrap .sub {
        font-size: 20px;
        text-align: left;
    }
    .sp-info-wrap .sub span {
        font-size: 15px;
    }
    .sp-info-wrap .subsub {
        font-size: 16px;
        margin: 20px 0 15px;
    }
    .sp-info-wrap .icon-vr {
        width: 100px;
    }
}
@media (max-width: 320.98px) {
    .sp-info-wrap .sub {
        font-size: 18px;
    }
    .sp-info-wrap .icon-vr {
        width: 80px;
    }
}

/*-------------------------------
 * 6. FOOTER
 * ----------------------------*/
footer {
    margin: 0;
    padding: 0;
}
footer a,
footer a:hover {
    color: #fff;
}
@media (max-width: 991.98px) {
    footer {
        background: transparent !important;
    }
}

footer .footer-top .ttl {
    margin: 0 0 25px;
    padding-bottom: 10px;
    border-bottom: 1px solid #fff;
}
footer .footer-top ul.list li {
    font-size: 12px;
    line-height: 2.5;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
footer .footer-top ul.list + .ttl {
    margin-top: 40px;
}

footer .footer-bottom {
    border-top: 1px solid #fff;
    padding-top: 35px;
    margin: 50px 15px 5px;
}
footer .footer-bottom div {
    padding: 0;
}
footer .footer-bottom ul.list li {
    display: inline-block;
    margin-right: 30px;
}
footer .footer-bottom ul.list li:last-of-type {
    margin-right: 0;
}
@media (max-width: 1199.98px) {
    footer .footer-bottom ul.list li {
        margin-right: 10px;
    }
}
@media (max-width: 991.98px) {
    footer {
        margin-top: -20px;
    }
    footer .row {
        margin: 0;
    }
    footer .container-fluid {
        padding-left: 0;
        padding-right: 0;
    }
    footer .footer-bottom {
        margin: 0;
        border-top: none;
    }
    footer .footer-bottom ul.list {
        display: flex;
        flex-flow: row wrap;
        justify-content: center;
        align-items: center;
        align-content: center;
    }
    footer .footer-bottom ul.list li {
        width: 50%;
        margin: 0;
        background: #197b88;
        border-right: 1px solid #dad8c8;
        border-bottom: 1px solid #dad8c8;
        text-align: center;
        font-weight: 600;
    }
    footer .footer-bottom ul.list li:hover {
        background: #056774;
        transition: 0.7s;
    }
    footer .footer-bottom ul.list li a {
        display: block;
        padding: 20px 10px;
    }
    footer .footer-bottom ul.list li a:hover {
        text-decoration: none;
    }
    footer .footer-bottom ul.list li:nth-child(even) {
        border-right: none;
    }
}

footer .copy {
    font-size: 10px;
    text-align: right;
    margin: 0;
}
@media (max-width: 1199.98px) {
    footer ul.sns-list {
        margin-left: 30px;
    }
}
@media (max-width: 991.98px) {
    footer .copy {
        background: #197b88;
        text-align: center;
    }
    footer ul.sns-list {
        margin-left: 0;
        padding: 22px 0 15px;
        background: #197b88;
        border-top: 1px solid #dad8c8;
    }
}

/*-------------------------------
 * 7. PAGER
 * ----------------------------*/
.pager_list {
    margin: 50px auto 0;
    padding: 0;
    text-align: center;
}
.pager_list li {
    list-style: none;
    display: inline-block;
    line-height: 1;
    margin: 0 1px;
}
.pager_list li a {
    display: block;
    padding: 8px 12px;
    color: #000;
    background-color: #fff;
    font-size: 14px;
    overflow: hidden;
    transition: background-color 300ms, color 300ms;
    border: 1px solid #bebebe;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 500;
}
.pager_list li a:hover,
.pager_list li.here,
.pager_list li.here a {
    color: #fff;
    background-color: #197b88;
    border: 1px solid #197b88;
    text-decoration: none;
}
.pager_list li.next a {
    border: none;
    background-color: transparent;
    text-decoration: none;
    font-weight: 300;
}
.pager_list li.next a:hover {
    text-decoration: underline;
    color: #000;
}
@media (max-width: 767.98px) {
    .pager_list {
        margin: 0 auto 30px;
    }
    .pager_list li a {
        padding: 8px 10px;
        font-size: 13px;
    }
}

/*-------------------------------
 * 8. INTERACTIONS
 * ----------------------------*/
.opacity:hover {
  opacity: 0.8;
  transition: 0.7s;
}

a:hover .imagearea-content > img {
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}

.imagearea {
    width: 100%;
    position: relative;
    display: block;
    overflow: hidden;
}
.imagearea:before {
    content: "";
    display: block;
    padding-top: 66.667%;
}

.imagearea-content {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    display: block;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    align-content: flex-start;
}

.imagearea-content > img {
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: 50% 50%;
    transition: transform 600ms cubic-bezier(0.39, 0.575, 0.565, 1);
    overflow: hidden !important;
}

.imagearea-content .txt-overlay {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
    background: rgba(25,123,136,0.65);
    transition: opacity 600ms cubic-bezier(0.39, 0.575, 0.565, 1);
    color: #fff;
    z-index: 10;
}
a .imagearea-content.txt-none .txt-overlay {
    opacity: 0;
}
a:hover .imagearea-content.txt-none .txt-overlay {
    opacity: 1;
}
.imagearea-content .txt-overlay {
    color: #fff;
    text-align: center;
}
.imagearea-content .txt-overlay .more {
    margin: 0;
    display: block;
    font-size: 13px;
    font-family: 'Roboto', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.05em;
}
.imagearea-content span {
    display: block;
    width: 100%;
}
.imagearea-content span i {
    display: inline-block;
    margin-left: 10px;
    vertical-align: 5%;
    font-size: 12px;
}
@media (max-width: 991.98px) {
    .imagearea-content .txt-overlay .more {
        font-size: 14px;
    }
}
@media (max-width: 767.98px) {
    .imagearea-content .txt-overlay .more {
        font-size: 11px;
    }
}

/*--------- keyframes --------- */
@-webkit-keyframes slideTextFade {
    0%, 25% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes slideTextFade {
    0%, 25% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-webkit-keyframes letter-glow {
  0% {
    opacity: 0;
    text-shadow: 0px 0px 1px rgba(255, 255, 255, 0.1);
  }
  66% {
    opacity: 1;
    text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.9);
  }
  77% {
    opacity: 1;
  }
  100% {
    opacity: 0.7;
    text-shadow: 0px 0px 20px rgba(255, 255, 255, 0);
  }
}

@keyframes letter-glow {
  0% {
    opacity: 0;
    text-shadow: 0px 0px 1px rgba(255, 255, 255, 0.1);
  }
  66% {
    opacity: 1;
    text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.9);
  }
  77% {
    opacity: 1;
  }
  100% {
    opacity: 0.7;
    text-shadow: 0px 0px 20px rgba(255, 255, 255, 0);
  }
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0.25;
    }
}
@keyframes fadeOut {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0.25;
    }
}

@-webkit-keyframes fadeOut-0 {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@keyframes fadeOut-0 {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  30% {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  30% {
    opacity: 0;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

/*------------------------------------------------------------
	headline01
------------------------------------------------------------*/
.headline01 {
    margin-bottom: 86px;
    color: #292929;
    font-size: 16px;
    text-align: center;
}
.headline01 .en {
    margin-bottom: 10px;
    padding-bottom: 5px;
    display: inline-block;
    font-family: 'Roboto', sans-serif !important;
    font-size: 35px;
    line-height: 1.4;
    letter-spacing: 0.1em;
    border-bottom: 1px solid #292929;
}
@media all and (max-width: 767.98px) {
    .headline01 {
        margin-bottom: 20px;
        font-size: 13px;
    }
    .headline01 .en {
        font-size: 17.5px;
    }
}
/*------------------------------------------------------------
	headline02
------------------------------------------------------------*/
.headline02 {
    margin-bottom: 28px;
    font-size: 36px;
    text-align: center;
}
@media all and (max-width: 767.98px) {
    .headline02 {
        margin-bottom: 20px;
        font-size: 23px;
    }
}
@media (max-width: 320.98px) {
    .headline02 {
        font-size: 19px;
    }
}
/*------------------------------------------------------------
	comtable
------------------------------------------------------------*/
.comtable {
    width: 45.7%;
}
.comtable table {
    width: 100%;
    border: none;
    border-collapse: collapse;
}
.comtable th,
.comtable td {
    padding: 12px 16px 11px 0;
    text-align: left;
    line-height: 1.8;
    vertical-align: top;
    border-right: none;
    border-left: none;
    box-sizing: border-box;
    border-top: 2px dotted #D6D6D6;
    border-bottom: 2px dotted #D6D6D6;
    background-color: #FFF;
}
.comtable td {
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
.comtable th {
    width: 25%;
    font-weight: 600;
}
@media all and (max-width: 767.98px) {
    .comtable {
        width: auto;
    }
}

/*------------------------------------------------------------
	main-box
------------------------------------------------------------*/
.main-box {
    margin: 0 auto;
    padding: 0 10px;
    max-width: 1120px;
}
@media all and (max-width: 767.98px) {
    .main-box {
        max-width: inherit;
        padding: 0;
    }
}
/*------------------------------------------------------------
	concept-section
------------------------------------------------------------*/
.concept-section {
    padding-bottom: 1.5rem;
}
.concept-section .main-box {
    max-width: inherit;
    padding: 0 20px;
}
.concept-section img {
    max-width: 100%;
    height: auto;
}
.concept-section .page-title h2 {
    font-size: 18px;
}
.concept-section .page-title h2 .en {
    margin-bottom: 25px;
    font-size: 88px;
}
.concept-section .section {
    padding: 5rem 3rem 6rem;
    background-color: #FFF;
}
.concept-section .section .c-txt {
    margin-bottom: 34px;
    font-size: 17px;
    line-height: 2.15;
    font-weight: 700;
    text-align: center;
}
.concept-section .section .c-txt01 {
    margin-bottom: 95px;
}
.concept-section .img-box {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: row-reverse;
}
.concept-section .img-box .photo {
    width: 50%;
}
.concept-section .img-box .txt-box {
    padding: 0 5%;
    width: 50%;
    box-sizing: border-box;
}
.concept-section .img-box .txt-box.left {
    padding-left: 0;
}
.concept-section .img-box .txt-box.right {
    padding-right: 0;
}
.concept-section .img-box .txt-box h4 {
    margin: 20px 0;
    font-size: 21px;
    line-height: 1.7;
}
.concept-section .img-box .txt-box p {
    line-height: 1.8;
    font-weight: 600;
    text-align:justify;
    text-justify:distribute-all-lines;
}
.concept-section .img-box01 {
    flex-direction: row;
}
@media (max-width: 991.98px) {
    .concept-section .section {
        padding-left: 0;
        padding-right: 0;
    }
}
@media all and (max-width: 767.98px) {
    .concept-section .section {
        padding: 3rem 0 1rem;
    }
    .concept-section .main-box {
        padding: 0;
    }
    .concept-section .section .c-txt {
        margin: 0 15px 20px;
        font-size: 14px;
    }
    .concept-section .section .c-txt01 {
        margin-bottom: 30px;
    }
    .concept-section .img-box {
        margin-bottom: 30px;
        display: block;
    }
    .concept-section .img-box .photo {
        margin-bottom: 20px;
        width: auto;
    }
    .concept-section .img-box .txt-box {
        padding: 0 15px !important;
        width: auto;
    }
    .concept-section .img-box .txt-box h4 {
        margin-bottom: 15px;
        font-size: 16px;
    }
}

/*------------------------------------------------------------
	outline-content
------------------------------------------------------------*/
.outline-content {
    padding-bottom: 0;
}
.outline-content #main {
    padding: 20px 20px 100px;
    background: #E2E0D3;
}
.outline-content img {
    max-width: 100%;
    height: auto;
}
.outline-content .message {
    margin-bottom: 20px;
    padding: 90px 0 100px;
    background-color: #FFF;
}
.outline-content .message .img-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.outline-content .message .img-box .photo {
    width: 41%;
}
.outline-content .message .img-box .txt-box {
    margin-top: -12px;
    width: 54.2%;
    font-size: 17px;
    font-weight: 700;
}
.outline-content .message .img-box .txt-box p {
    margin-bottom: 74px;
    line-height: 2.55;
}
.outline-content .message .img-box .txt-box .r-txt {
    margin: 0 7px 0 0;
    text-align: right;
}
.outline-content .message .img-box .txt-box .r-txt img {
    max-width: 356px;
}
.outline-content .vison {
    margin-bottom: 23px;
    padding: 86px 0;
    text-align: center;
    background-color: #FFF;
}
.outline-content .vison .main-box {
    max-width: inherit;
    padding: 0 20px;
}
.outline-content .vison .headline01 {
    margin-bottom: 70px;
}
.outline-content .vison .ttl {
    margin-bottom: 30px;
    font-size: 46px;
    font-weight: 700;
    line-height: 1.78;
    letter-spacing: 0.1em;
}
.outline-content .vison p {
    font-size: 17px;
    font-weight: 700;
    line-height: 2.5;
    letter-spacing: 0.05em;
}
.outline-content .outline {
    padding: 90px 0 0;
    text-align: center;
    background-color: #FFF;
}
.outline-content .outline .main-box {
    max-width: inherit;
    padding: 0 20px;
}
.outline-content .outline .headline01 {
    margin-bottom: 65px;
}
.outline-content .outline .comtable01 th {
    width: 37%;
}
.outline-content .outline .section {
    margin-bottom: 86px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-left: 3rem;
    padding-right: 3rem;
}
.outline-content .outline .map-box {
    padding-left: 3rem;
    padding-right: 3rem;
}
.outline-content .outline .map {
    margin-bottom: 19px;
    height: 528px;
    background-color: #CCC;
}
.outline-content .outline .map iframe {
    width: 100%;
    height: 100%;
}
.outline-content .outline .link {
    display: flex;
    justify-content: flex-end;
}
.outline-content .outline .link a {
    margin: 0;
    padding: 3px 0 2px;
    width: 130px;
    font-size: 11px;
    display: inline-block;
    border-radius: 35px;
    overflow: hidden;
    border: 1px solid #BFBFBF;
}
.outline-content .outline .link a:hover {
    border-color: #000;
}
@media (max-width: 1199.98px) {
  .outline-content .vison .ttl {
    font-size: 36px;
  }
}
@media (max-width: 991.98px) {
  .outline-content .outline .section {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .outline-content .vison .ttl {
    font-size: 26px;
  }
}
@media all and (max-width: 767.98px) {
    .pc {
        display: none;
    }
    .outline-content .message {
        margin-bottom: 10px;
        padding: 30px 15px;
    }
    .outline-content .message .img-box {
        display: block;
    }
    .outline-content .message .img-box .photo {
        margin-bottom: 30px;
        width: auto;
    }
    .outline-content .message .img-box .photo img {
        width: 100%;
    }
    .outline-content .message .img-box .txt-box {
        margin-top: 0;
        width: auto;
        font-size: 14px;
    }
    .outline-content .message .img-box .txt-box p {
        margin-bottom: 30px;
    }
    .outline-content .message .img-box .txt-box .r-txt img {
        max-width: 200px;
    }
    .outline-content .vison {
        margin-bottom: 10px;
        padding: 30px 15px;
    }
    .outline-content .vison .main-box {
        padding-left: 0;
        padding-right: 0;
    }
    .outline-content .vison .headline01 {
        margin-bottom: 30px;
    }
    .outline-content .vison .ttl {
        margin-bottom: 20px;
        font-size: 21px;
    }
    .outline-content .vison p {
        font-size: 14px;
    }
    .outline-content .outline {
        padding: 30px 15px;
    }
    .outline-content .outline .main-box {
        padding-left: 0;
        padding-right: 0;
    }
    .outline-content .outline .headline01 {
        margin-bottom: 30px;
    }
    .outline-content .outline .comtable01 {
        margin-top: 30px;
    }
    .outline-content .outline .section {
        margin: 0 -10px 30px;
        display: block;
        padding: 0 !important;
    }
    .outline-content .outline .map-box {
        margin: 0 -10px;
        padding-left: 0;
        padding-right: 0;
    }
    .outline-content .outline .map {
        margin-bottom: 10px;
        padding-bottom: 56.25%;
        height: auto;
        position: relative;
    }
    .outline-content .outline .map iframe {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
    }
}

.simplefavorite-button.active {
    opacity: .7
}

.simplefavorite-button.has-count {
    position: relative
}

.simplefavorite-button.preset {
    display: inline-block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    background: transparent;
    background-color: #fff;
    border: 1px solid #ccc;
    -webkit-box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.1), 1px 1px 1px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.1), 1px 1px 1px 0px rgba(0, 0, 0, 0.1);
    padding: .5em 1em .5em 2em;
    position: relative;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    cursor: pointer;
    -webkit-transition: all 200ms ease;
    -o-transition: all 200ms ease;
    transition: all 200ms ease
}

/*-------------------------------
 *  * 9. 201218 journalとnewsのWP詳細ページ追加
 * ----------------------------*/
body#journal-page .journal-detail-wrap h2,
.detail-wrap.news h2 {
    margin: 60px 0 5px !important;
    font-size: 26px !important;
    line-height: 1.6 !important;
    text-align: left !important;
}
body#journal-page .journal-detail-wrap h3,
.detail-wrap.news h3 {
    margin: 0 0 20px !important;
    font-size: 22px !important;
    line-height: 1.6 !important;
    text-align: left !important;
}
body#journal-page .journal-detail-wrap h4,
.detail-wrap.news h4 {
    margin: 0 0 20px !important;
    font-size: 17px !important;
    line-height: 1.6 !important;
    text-align: left !important;
}
body#journal-page .journal-detail-wrap p,
.detail-wrap.news p {
    margin: 30px 0 !important;
    font-size: 15px !important;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
body#journal-page .journal-detail-wrap .wp-block-image {
    margin-top: 6rem !important;
}
body#journal-page .journal-detail-wrap h2 + .wp-block-image,
body#journal-page .journal-detail-wrap h3 + .wp-block-image,
body#journal-page .journal-detail-wrap h4 + .wp-block-image,
body#journal-page .journal-detail-wrap h5 + .wp-block-image,
body#journal-page .journal-detail-wrap h6 + .wp-block-image {
    margin-top: 1.5rem !important;
}
body#journal-page .journal-detail-wrap .wp-block-image:first-of-type {
    margin-top:  0 !important;
}

@media (max-width: 991.98px) {
    body#journal-page .journal-detail-wrap h2,
    .detail-wrap.news h2 {
        margin-top: 40px !important;
    }
}
@media (max-width: 767.98px) {
    body#journal-page .journal-detail-wrap h2,
    .detail-wrap.news h2 {
        margin-top: 30px !important;
        font-size: 15px !important;
    }
    body#journal-page .journal-detail-wrap h3,
    .detail-wrap.news h3 {
        font-size: 14px !important;
    }
    body#journal-page .journal-detail-wrap h4,
    .detail-wrap.news h4 {
        font-size: 13px !important;
    }
    body#journal-page .journal-detail-wrap p,
    .detail-wrap.news p {
        margin: 20px 0 !important;
        font-size: 13px !important;
    }
    body#journal-page .journal-detail-wrap .wp-block-image {
        margin-top: 3.5rem !important;
    }
    body#journal-page .journal-detail-wrap h2 + .wp-block-image,
    body#journal-page .journal-detail-wrap h3 + .wp-block-image,
    body#journal-page .journal-detail-wrap h4 + .wp-block-image,
    body#journal-page .journal-detail-wrap h5 + .wp-block-image,
    body#journal-page .journal-detail-wrap h6 + .wp-block-image {
        margin-top: 1rem !important;
    }
}

body#journal-page .journal-detail-wrap .wp-block-columns,
.detail-wrap.news .wp-block-columns {
    margin-bottom: 0 !important;
    margin-top: 20px !important;
}
body#journal-page .journal-detail-wrap .wp-block-columns .wp-block-image,
.detail-wrap.news .wp-block-columns .wp-block-image {
    margin-bottom: 0 !important;
    margin-top: 20px !important;
}
@media (max-width: 767.98px) {
    body#journal-page .journal-detail-wrap .wp-block-columns,
    .detail-wrap.news .wp-block-columns {
        margin-top: 0 !important;
    }
}

body#journal-page .journal-detail-wrap .wp-block-table,
.detail-wrap.news .wp-block-table {
    margin-top: 20px !important;
    font-weight: 400 !important;
    font-family: 'Gothic Medium BBB', sans-serif !important;
}
body#journal-page .journal-detail-wrap .wp-block-table strong,
.detail-wrap.news .wp-block-table strong {
    font-family: 'Midashi Go MB31', sans-serif !important;
    font-weight: 600 !important;
}
body#journal-page .journal-detail-wrap .wp-block-table figcaption,
.detail-wrap.news .wp-block-table figcaption {
    display: block !important;
    margin-top: 10px !important;
}

body#journal-page .journal-detail-wrap .blocks-gallery-grid,
.detail-wrap.news .blocks-gallery-grid {
    list-style-type: none !important;
}
body#journal-page .journal-detail-wrap .blocks-gallery-grid .blocks-gallery-image,
body#journal-page .journal-detail-wrap .blocks-gallery-grid .blocks-gallery-item,
body#journal-page .journal-detail-wrap .wp-block-gallery .blocks-gallery-image,
body#journal-page .journal-detail-wrap .wp-block-gallery .blocks-gallery-item,
.detail-wrap.news .blocks-gallery-grid .blocks-gallery-image,
.detail-wrap.news .blocks-gallery-grid .blocks-gallery-item,
.detail-wrap.news .wp-block-gallery .blocks-gallery-image,
.detail-wrap.news .wp-block-gallery .blocks-gallery-item {
    margin: 0 8px 15px 8px !important;
}
_::-webkit-full-page-media, _:future, :root body#journal-page .journal-detail-wrap .blocks-gallery-grid .blocks-gallery-image figure,
_::-webkit-full-page-media, _:future, :root body#journal-page .journal-detail-wrap .blocks-gallery-grid .blocks-gallery-item figure,
_::-webkit-full-page-media, _:future, :root body#journal-page .journal-detail-wrap .wp-block-gallery .blocks-gallery-image figure,
_::-webkit-full-page-media, _:future, :root body#journal-page .journal-detail-wrap .wp-block-gallery .blocks-gallery-item figure  {
    height: auto !important;
}
_::-webkit-full-page-media, _:future, :root .detail-wrap.news .blocks-gallery-grid .blocks-gallery-image figure,
_::-webkit-full-page-media, _:future, :root .detail-wrap.news .blocks-gallery-grid .blocks-gallery-item figure,
_::-webkit-full-page-media, _:future, :root .detail-wrap.news .wp-block-gallery .blocks-gallery-image figure,
_::-webkit-full-page-media, _:future, :root .detail-wrap.news .wp-block-gallery .blocks-gallery-item figure {
    height: auto !important;
}
@media (max-width: 767.98px) {
    body#journal-page .journal-detail-wrap .blocks-gallery-grid .blocks-gallery-image,
    body#journal-page .journal-detail-wrap .blocks-gallery-grid .blocks-gallery-item,
    body#journal-page .journal-detail-wrap .wp-block-gallery .blocks-gallery-image,
    body#journal-page .journal-detail-wrap .wp-block-gallery .blocks-gallery-item,
    .detail-wrap.news .blocks-gallery-grid .blocks-gallery-image,
    .detail-wrap.news .blocks-gallery-grid .blocks-gallery-item,
    .detail-wrap.news .wp-block-gallery .blocks-gallery-image,
    .detail-wrap.news .wp-block-gallery .blocks-gallery-item {
        margin: 0 5px 10px 5px !important;
    }
}

body#journal-page .journal-detail-wrap .wp-block-buttons .wp-block-button,
.detail-wrap.news .wp-block-buttons .wp-block-button {
    display: block !important;
    margin: 0 auto !important;
}
body#journal-page .journal-detail-wrap .wp-block-button__link,
.detail-wrap.news .wp-block-button__link {
    display: block !important;
    width: 100% !important;
    max-width: 240px !important;
    margin: 0 auto !important;
    border-radius: 0 !important;
    font-size: 20px !important;
    line-height: 1 !important;
    padding: 15px 10px !important;
    box-sizing: border-box !important;
    position: relative !important;
    border: 1px solid #000 !important;
    color: #fff !important;
    background: #000 !important;
    font-weight: 600 !important;
    outline: none !important;
    transition: all .3s !important;
    cursor: pointer !important;
    overflow: hidden !important;
    z-index: 1 !important;
    text-decoration: none !important;
}
body#journal-page .journal-detail-wrap .wp-block-button__link::before,
.detail-wrap.news .wp-block-button__link::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  background: #fff !important;
  -webkit-transition: 0.5s ease-in-out !important;
  transition: 0.5s ease-in-out !important;
  -webkit-transform: translateX(110%) !important;
  transform: translateX(110%) !important;
  z-index: -1 !important;
}
body#journal-page .journal-detail-wrap .wp-block-button__link:hover::before,
.detail-wrap.news .wp-block-button__link:hover::before {
  -webkit-transform: translateX(0) !important;
  transform: translateX(0) !important;
}
body#journal-page .journal-detail-wrap .wp-block-button__link:hover,
body#journal-page .journal-detail-wrap .wp-block-button__link:focus,
body#journal-page .journal-detail-wrap .wp-block-button__link:active,
.detail-wrap.news .wp-block-button__link:hover,
.detail-wrap.news .wp-block-button__link:focus,
.detail-wrap.news .wp-block-button__link:active {
  color: #000 !important;
  text-decoration: none !important;
}
body#journal-page .journal-detail-wrap .wp-block-button__link:focus,
.detail-wrap.news .wp-block-button__link:focus {
    outline: none !important;
    overflow: hidden !important;
    text-decoration: none !important;
}
@media (max-width: 767.98px) {
    body#journal-page .journal-detail-wrap .wp-block-button__link,
    .detail-wrap.news .wp-block-button__link {
        font-size: 15px !important;
        max-width: 200px !important;
        padding: 12px 10px !important;
    }
}

body#journal-page .journal-detail-wrap ul,
.detail-wrap.news ul {
    list-style: disc;
    margin: 30px 0;
}
body#journal-page .journal-detail-wrap ul li,
.detail-wrap.news ul li {
    line-height: 1.9;
    font-family: 'Gothic Medium BBB', sans-serif !important;
    font-weight: 400 !important;
    margin: 0 0 0 20px;
}
body#journal-page .journal-detail-wrap ol,
.detail-wrap.news ol {
    padding: 0;
    margin: 30px 0;
}
body#journal-page .journal-detail-wrap ol li,
.detail-wrap.news ol li {
    line-height: 1.9;
    font-family: 'Gothic Medium BBB', sans-serif !important;
    font-weight: 400 !important;
    margin: 0 0 0 25px;
}
@media (max-width: 767.98px) {
    body#journal-page .journal-detail-wrap ul,
    body#journal-page .journal-detail-wrap ol,
    .detail-wrap.news ul,
    .detail-wrap.news ol {
        margin: 20px 0;
    }
    body#journal-page .journal-detail-wrap ul li,
    .detail-wrap.news ul li {
        line-height: 1.8;
        margin-left: 20px;
    }
    body#journal-page .journal-detail-wrap ol li,
    .detail-wrap.news ol li {
        line-height: 1.8;
    }
}

body#journal-page .journal-detail-wrap img,
.detail-wrap.news img {
  max-width: 100% !important;
  width: 100% !important;
  height: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

body#journal-page .journal-detail-wrap a,
.detail-wrap.news a {
    text-decoration: underline;
}
body#journal-page .journal-detail-wrap a:hover,
.detail-wrap.news a:hover {
    text-decoration: none;
}
.detail-wrap.news .btn {
    text-decoration: none;
}
@media (max-width: 767.98px) {
    body#journal-page #sidebar {
        margin-top: 3rem;
    }
}

/*------------------------------------------------------------
	* 10. modelhouse-section
------------------------------------------------------------*/
.modelhouse-section {
    margin: 1.5rem 1.5rem 4.3rem;
    background: #FFF;
}
.modelhouse-section #cate-main.h-mediun {
    margin-bottom: -1.1rem;
    height: 424px;
}
.modelhouse-section #cate-main .cate-ttl {
    color: #231815;
}
.modelhouse-section #cate-main .cate-ttl div {
    padding-bottom: 5px;
    border-bottom-color: #231815;
}
.modelhouse-section #cate-main.h-mediun .cate-sub {
    margin-top: 20px;
    color: #231815;
}
.modelhouse-section #breadcrumb {
    font-size: 14px;
    left: 20px;
    bottom: 60px;
}
.modelhouse-section #breadcrumb ul {
    color: #231815;
}
.modelhouse-section #breadcrumb ul li a {
    color: #231815;
}
.modelhouse-section .main-box {
    max-width: inherit;
    padding: 0 3rem 4.5rem;
}
.modelhouse-section .img-box {
    padding-right: 1.5%;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
    align-content: center;
}
.modelhouse-section .img-box:nth-child(2n) {
    padding-right: 0;
    flex-direction: row-reverse;
}
.modelhouse-section .img-box .photo-box {
    width: 50.7%;
}
.modelhouse-section .img-box:nth-child(2n) .photo-box {
    width: 50%;
}
.modelhouse-section .img-box .photo-box img {
    width: 100%;
}
.modelhouse-section .img-box .text-box {
    width: 44%;
}
.modelhouse-section .img-box .text-box h4 {
    margin-bottom: 6.2%;
    font-size: 26px;
}
.modelhouse-section .img-box .text-box p {
    font-size: 15px;
}
.modelhouse-section .img-box .text-box .btn-box {
    margin-right: 8.5%;
}
.modelhouse-section .img-box .text-box .btn {
    max-width: 270px;
    font-size: 14px;
    font-weight: 400;
    border-width: 1px;
    margin-top: 3rem !important;
}
@media (max-width: 1199.98px) {
    .modelhouse-section .img-box .text-box h4 {
        font-size: 20px;
        margin-bottom: 1.5rem !important;
    }
    .modelhouse-section .img-box .text-box p {
        font-size: 1.5vw;
    }
    .modelhouse-section .img-box .text-box .btn {
        margin-top: 1.5rem !important;
    }
    .modelhouse-section .img-box .photo-box img {
        height: 500px;
        object-fit: cover;
    }
}
@media (max-width: 991.98px) {
    .modelhouse-section .main-box {
        padding: 0 5px 2rem;
    }
    .modelhouse-section .img-box .photo-box img {
        height: 380px;
    }
}
@media all and (max-width: 767.98px) {
    .modelhouse-section #cate-main.h-mediun {
        margin-bottom: -4rem;
        height: 300px;
    }
    .modelhouse-section .main-box {
        max-width: inherit;
    }
    .modelhouse-section .img-box {
        margin-bottom: 3rem;
        padding-right: 0;
        display: block;
    }
    .modelhouse-section .img-box:last-child {
        margin-bottom: 0;
    }
    .modelhouse-section .img-box .photo-box {
        margin-bottom: 20px;
        width: auto !important;
    }
    .modelhouse-section .img-box .photo-box img {
        height: auto;
    }
    .modelhouse-section .img-box .text-box {
        margin-top: 0 !important;
        width: auto !important;
    }
    .modelhouse-section .img-box .text-box h4 {
        margin-bottom: 1rem !important;
        font-size: 16px !important;
    }
    .modelhouse-section .img-box .text-box p {
        font-size: 13px;
    }
    .modelhouse-section .img-box .text-box .btn-box {
        margin-right: 0;
    }
}
@media all and (max-width: 575.98px) {
    .modelhouse-section {
        margin: 1rem 1rem 0;
    }
}


/*------------------------------------------------------------
	* 11. lineup-section
------------------------------------------------------------*/
.lineup-section #cate-main.h-mediun {
    margin-bottom: -3.4rem;
}
.lineup-section .main-box {
    max-width: inherit;
    padding: 0;
}
.lineup-section .section {
    padding: 5rem 3rem 1rem;
}
.lineup-section .main-box .photo {
  	display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: flex-start;
    align-content: flex-start;
    margin: 0 auto 86px;
    max-width: 986px;
}
.lineup-section .main-box .photo div {
  	width: 50%;
}
.lineup-section .main-box .photo img {
    max-width: 100%;
}
.lineup-section .h4-ttl01 {
    margin-bottom: 46px;
    text-align: center;
}
.lineup-section .top-text {
    margin-bottom: 30px;
    line-height: 2.2;
    text-align: center;
}
.lineup-section .photo-list {
    margin-bottom: 112px;
    padding-top: 10px;
    display: flex;
    flex-wrap: wrap;
}
.lineup-section .photo-list li {
    margin-top: 17px;
    width: 18.92%;
}
.lineup-section .photo-list li:not(:nth-child(5n)) {
    margin-right: 1.3%;
}
.lineup-section .photo-list li img {
    width: 100%;
}
.lineup-section .photo-list a:hover {
  	opacity: 0.7;
  	transition: 0.7s;
}
.lineup-section .housemap-box {
    margin-bottom: 90px;
    display: flex;
    justify-content: space-between;
}
.lineup-section .housemap-box .photo-box {
    width: calc(100% - 336px);
}
.lineup-section .housemap-box .photo-box img {
    width: 100%;
}
.lineup-section .housemap-box .text-box {
    margin-top: -6px;
    width: 302px;
}
.lineup-section .housemap-box .text-box h4 {
    margin-bottom: 10px;
    padding-left: 30px;
    font-size: 20px;
    background: url(../image/new-construction/lineup/h4_icon01.png) no-repeat left top 1px / 20px auto;
}
.lineup-section .housemap-box .text-box table {
    border: none;
    border-top: 1px solid #ccc;
}
.lineup-section .housemap-box .text-box th,
.lineup-section .housemap-box .text-box td {
    padding-right: 0;
    vertical-align: top;
    border-right: none;
    background: #FFF !important;
}
.lineup-section .housemap-box .text-box th {
    width: 20%;
    padding-right: 0;
    padding-left: 0;
}
.lineup-section .housemap-box .text-box td dl {
    margin-bottom: 0;
}
.lineup-section .housemap-box .text-box td dt {
    margin-right: 5%;
    float: left;
    clear: left;
    font-weight: normal;
}
.lineup-section .housemap-box .text-box td dd {
    margin-bottom: 0;
    overflow: hidden;
}
.lineup-section .img-box {
    padding-right: 0;
}
.lineup-section .img-box .photo-box {
    width: 50%;
}
.lineup-section .img-box .text-box {
    margin-top: 6%;
    width: 44.8%;
}
.lineup-section .img-box .text-box h4 {
    font-size: 24px;
}
.lineup-section .btn-link-wrap {
    margin: 89px 0 70px !important;
    padding: 0;
    border: none;
    position: static !important;
}
.lineup-section .btn-link-wrap ul {
    margin-bottom: 42px;
}
.lineup-section .btn-link-wrap ul li {
    width: 31.5%;
    padding: 0 2.2%;
}
.lineup-section .btn-link-wrap ul li a {
    padding: 16px 1% 14px;
    font-size: 17px;
    border-radius: 0;
}
.lineup-section .btn-link-wrap ul li span {
    padding-right: 13%;
    display: inline-block;
    position: relative;
    vertical-align: top;
}
.lineup-section .btn-link-wrap ul li span::before,
.lineup-section .btn-link-wrap ul li span::after {
    width: 12px;
    height: 1px;
    position: absolute;
    right: 0;
    top: 50%;
    background: #FFF;
    content: "";
}
.lineup-section .btn-link-wrap ul li span::after {
    margin-top: -2px;
    width: 6px;
    transform: rotate(50deg);
}
.lineup-section .btn-link-wrap ul li span::after {
    margin-top: -2px;
    width: 6px;
    transform: rotate(50deg);
}
.lineup-section .more {
    margin-bottom: 0;
    text-align: center;
}
.lineup-section .more a {
    font-size: 14px;
    text-decoration: underline;
}
.lineup-section .more a:hover {
    text-decoration: none;
}
.lineup-section .bottom_slide-box {
    margin: 0 -10px 50px;
}
.lineup-section .bottom_slide-box h4 {
    margin-bottom: 50px;
    padding-bottom: 9px;
    font-size: 20px;
    border-bottom: 1px solid #E0E0E0;
}
.lineup-section .bottom_slide-box .slider {
    margin-left: -5px;
    padding: 0 25px;
}
.lineup-section .bottom_slide-box .slider li {
    padding: 0;
    font-size: 12px;
    text-align: center;
}
.lineup-section .bottom_slide-box .slider li a {
    display: block;
    text-decoration: none;
}
.lineup-section .bottom_slide-box .slider li a:hover {
    opacity: 0.7;
}
.lineup-section .bottom_slide-box .slider li img {
    width: 100%;
}
.lineup-section .bottom_slide-box .slider li .mark {
    margin: 14px auto 7px;
    padding: 0 0 15px;
    width: 120px;
    height: auto;
    border-bottom: 1px solid #000;
    background-color: #fff;
}
.lineup-section .bottom_slide-box .slider .slick-arrow {
    margin: 0;
    font-size: 0;
    padding: 0;
    border-radius: 0;
    border: none !important;
    outline: none !important;
    background: none;
    appearance: none;
	-webkit-appearance: none;
    -moz-appearance: none;
    width: 20px;
    height: 36px;
    background: url(../image/new-construction/lineup/arrow01.png) no-repeat center center / 20px 36px;
    position: absolute;
    left: 0;
    top: 23%;
    transform: translateY(-23%)
    z-index: 10;
}
.lineup-section .bottom_slide-box .slider .slick-arrow:hover {
    opacity: 0.7;
}
.lineup-section .bottom_slide-box .slider .slick-next {
    left: auto;
    right: 0;
    background-image: url(../image/new-construction/lineup/arrow02.png);
}
@media (min-width: 768px) and (max-width: 1030px) {
    .lineup-section .btn-link-wrap ul li {
        min-width: 300px;
    }
}
@media (max-width: 991.98px) {
    .lineup-section .section {
        padding-left: 0;
        padding-right: 0;
    }
}
@media all and (max-width: 767.98px) {
    .lineup-section .section {
        padding: 3rem 0 1rem;
    }
    .lineup-section #cate-main.h-mediun {
        margin-bottom: -5rem;
    }
    .lineup-section .main-box .photo {
        margin-bottom: 25px;
        max-width: inherit;
    }
    .lineup-section .h4-ttl01 {
        margin-bottom: 15px;
        font-size: 20px;
    }
    .lineup-section .top-text {
        margin-bottom: 15px;
        line-height: 2.2;
    }
    .lineup-section .photo-list {
        margin-bottom: 40px;
        padding-top: 0;
        justify-content: space-between;
    }
    .lineup-section .photo-list li {
        margin-top: 10px;
        width: calc((100% - 10px) / 2);
    }
    .lineup-section .photo-list li:not(:nth-child(5n)) {
        margin-right: 0;
    }
    .lineup-section .photo-list li img {
        width: 100%;
    }
    .lineup-section .housemap-box {
        margin-bottom: 20px;
        display: block;
    }
    .lineup-section .housemap-box .photo-box {
        width: auto;
    }
    .lineup-section .housemap-box .text-box {
        margin-top: 15px;
        width: auto;
    }
    .lineup-section .housemap-box .text-box h4 {
        margin-bottom: 10px;
        padding-left: 25px;
        font-size: 16px;
        background-size: 16px auto;
    }
    .lineup-section .housemap-box .text-box th,
    .lineup-section .housemap-box .text-box td {
        font-size: 12px;
    }
    .lineup-section .housemap-box .text-box th {
        width: 16%;
    }
    .lineup-section .btn-link-wrap {
        margin: 20px 0 40px !important;
    }
    .lineup-section .btn-link-wrap ul {
        margin: 0 auto 15px;
        max-width: 350px;
        display: block;
    }
    .lineup-section .btn-link-wrap ul li {
        width: auto;
        padding: 0;
    }
    .lineup-section .btn-link-wrap ul li:not(:last-child) {
        margin-bottom: 10px;
    }
    .lineup-section .btn-link-wrap ul li a {
        padding: 10px 1% 11px;
        font-size: 12px;
        border-radius: 0;
    }
    .lineup-section .more {
        margin-bottom: 0;
    }
    .lineup-section .more a {
        font-size: 12px;
        text-decoration: underline;
    }
    .lineup-section .more a:hover {
        text-decoration: underline;
    }
    .lineup-section .bottom_slide-box {
        margin: 0;
    }
    .lineup-section .bottom_slide-box h4 {
        margin-bottom: 20px;
        padding-bottom: 5px;
        font-size: 17px;
    }
    .lineup-section .bottom_slide-box .slider {
        margin-left: -5px;
        padding: 0 25px;
    }
    .lineup-section .bottom_slide-box .slider li {
        padding: 0;
        font-size: 12px;
        text-align: center;
    }
}

/*------------------------------------------------------------
	* 12. 210112 contact-link-box Fixed
------------------------------------------------------------*/
body.contact-link-box footer {
	padding-bottom: 135px !important;
}
body.contact-link-box .btn-link-wrap {
	position: fixed;
	bottom: 0;
	left: 0;
	margin: 0;
	z-index: 10;
	width: 100%;
}
@media (max-width: 991.98px) {
	body.contact-link-box footer {
		padding-bottom: 0 !important;
	}
	body.contact-link-box footer .copy {
	    padding-bottom: 110px !important;
	}
}
@media (max-width: 767.98px) {
	body.contact-link-box footer .copy {
		padding-bottom: 154px !important;
	}
}

body.contact-link-box #pagetop {
    bottom: 34px !important;
}
@media (max-width: 991.98px) {
    body.contact-link-box #pagetop {
        bottom: 123px !important;
    }
}
@media (max-width: 767.98px) {
    body.contact-link-box #pagetop {
        bottom: 168px !important;
    }
}

/*------------------------------------------------------------
	* 13. 210312 TOP Opening anime
------------------------------------------------------------*/
body#top-page {
  background: #197b88;
}

body#top-page.appear {
  background: #dad8c8;
}

body#top-page.appear .opening-anime-bg01,
body#top-page.appear .opening-anime-bg02 {
  display:block;
}
body#top-page.appear .opening-anime-bg01 {
  animation-name: PageAnime;
  animation-duration: 1.4s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
  content: "";
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100vh;
  bottom: 50%;
  left:0;
  transform: scaleY(1);
  background-color: #197b88;
}
body#top-page.appear .opening-anime-bg02 {
  animation-name: PageAnime2;
  animation-duration: 1.4s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards;
  content: "";
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100vh;
  top: 50%;
  left: 0;
  transform: scaleY(1);
  background-color: #197b88;
}

@keyframes PageAnime {
  0% {
    transform-origin:top;
    transform:scaleY(1);
  }
  100% {
    transform-origin:top;
    transform:scaleY(0);
  }
}
@-webkit-keyframes PageAnime {
  0% {
    transform-origin:top;
    transform:scaleY(1);
  }
  100% {
    transform-origin:top;
    transform:scaleY(0);
  }
}
@keyframes PageAnime2 {
  0% {
    transform-origin:bottom;
    transform:scaleY(1);
  }
  100% {
    transform-origin:bottom;
    transform:scaleY(0);
  }
}
@-webkit-keyframes PageAnime2 {
  0% {
    transform-origin:bottom;
    transform:scaleY(1);
  }
  100% {
    transform-origin:bottom;
    transform:scaleY(0);
  }
}

body#top-page #main-wrap {
  opacity: 0;
  width: 100%;
}
body#top-page.appear #main-wrap {
  animation-name: PageAnimeAppear;
  animation-duration: 1s;
  animation-delay: 0.2s;
  animation-fill-mode:forwards;
  opacity: 0;
}

@keyframes PageAnimeAppear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes PageAnimeAppear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

#opening-anime-area {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 999;
  background:#fff;
  text-align: center;
  overflow: hidden;
}
#logo-opening {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#logo-opening img {
  width: 300px;
  height: 300px;
}
@media (max-width: 767.98px) {
  #logo-opening img {
    width: 150px;
    height: 150px;
  }
}

.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/*-------------------------------
 * 14. 210805 Contact Form7
 * ----------------------------*/
.wpcf7-response-output {
  font-family: "ヒラギノ角ゴ ProN W3", "メイリオ", "ＭＳ Ｐゴシック", sans-serif!important;
}

/* 20220422 */
@media (min-width:1780px) {
    #tp-business .business-box02 p {
        text-align: center!important;
    }
}

/* 20230629 */
.model-house-title {
    display: flex;
    align-items: center;
    margin-bottom: 40px;
  }
  .model-house-title::before,
  .model-house-title::after {
    content: "";
    flex-grow: 1;
    height: 2px;
    background-color: black;
  }
  .model-house-title::before {
    margin-right: 1rem;
  }
  .model-house-title::after {
    margin-left: 1rem;
  }
  .model-house-title div {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .model-house-title span {
    font-size: 16px;
  }
  
  .img-box + .model-house-title {
    margin-top: 120px;
  }

  .modelhouse-section .img-box.model-house-box:nth-child(even) {
    padding-right: 1.5%;
    flex-direction: row;
  }
  .modelhouse-section .img-box.model-house-box:nth-child(odd) {
    padding-right: 0;
    flex-direction: row-reverse;
  }
  
  
  @media (max-width: 767.98px) {
    .model-house-title {
      margin-bottom: 24px;
      font-size: 22px;
    }
    .model-house-title span {
      font-size: 14px;
    }
    .img-box + .model-house-title {
      margin-top: 64px;
    }
  }

  /* 20240902 */
  .tab-wrap {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    background-color: #F0EFE9;
  }
  .tab__menu {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: 60px;
    row-gap: 24px;
    margin-bottom: 40px;
    padding: 16px 0;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
  }
  .tab__menu-item {
    position: relative;
    font-size: 16px;
    text-align: center;
    transition: 0.5s;
  }
  .tab__menu-item a {
    transition: 0.5s;
  }
  .tab__menu-item a:hover {
    text-decoration: none;
    color: #197b88;
  } 
  .tab__menu-item:hover {
    cursor: pointer;
    color: #197b88;
  }
  .tab__menu-item a:hover::before,
  .tab__menu-item:hover::before {
    content: "";
    position: absolute;
    top: 50%;
    left: -16px;
    width: 10px;
    height: 20px;
    background-image: url(../image/works/icon-arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    transform: translateY(-46%);
  }
  .tab__panel-box001,
  .tab__panel-box002,
  .tab__panel-box003,
  .tab__panel-box004,
  .tab__panel-box005,
  .tab__panel-box006 {
    display: none;
  }
  .tab__panel-box.is-show {
    display: block;
  }
  
  
  .tab__panel {
    margin: 0 auto;
  }
  .tab__sub-menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    column-gap: 40px;
    row-gap: 24px;
    padding: 0 40px 32px;
  }
  .tab__sub-menu a {
    font-size: 16px;
  }
  .tab__sub-menu a:hover {
    text-decoration: none;
    color: #197b88;
  }
  @media (max-width: 940px) {
    .tab-wrap {
      width: 100%;
    }
    .tab__sub-menu {
      padding: 0 24px 40px;
    }
  }
  @media (max-width: 480px) {
    .tab__menu {
      column-gap: 32px;
      row-gap: 16px;
    }
    .tab__sub-menu {
      column-gap: 32px;
      row-gap: 16px;
      padding: 0 16px 40px;
    }
  }
  
  .recommend-list {
    margin-top: 40px;
  }
  