@charset 'utf-8';
/*
 * name:business-child.css
 * author:sovanda nulo
*/

/* business-child
------------------------------------------------ */

/* main style */
.lp-frame { border: 1px solid #ccc; box-sizing: border-box; }


/* section more */
#more { padding: 4.5em 0 4em; background: #fff; z-index: 2; }
.more--title { display: block; max-width: 23em; margin-bottom: 2em; }
.more--title img { display: block; width: 100%; height: auto; }
.more--lists { display: block; position: relative; }
.more--list { display: flex; flex-wrap: wrap; align-items: flex-start; }
.more--list:not(:last-child) { margin-bottom: 1em; }
.more--list dt { font-size: 2.1em; font-weight: bold; line-height: 1.33; width: 8.57em; }
.more--list ul { display: flex; flex-wrap: wrap; align-items: center; margin-top: -1.6em; }
.more--list li { display: inline-block; position: relative; margin: 1.6em 3em 0 0; }
.more--list li a { display: inline-block; }
.more--list li a:after { content: ''; display: inline-block; vertical-align: .1em; width: .61em; height: .94em; margin-left: .9em; background: url(../../img/share/arrow-swipe-red.svg) no-repeat; background-size: 100% 100%; }
.more--list li span { font-size: 1.6em; font-weight: normal; line-height: 1.75; display: inline-block; }

    @media screen and (min-width: 768px) {
        .more--list li a:hover { color: #CC1A2C; }
    }
    @media screen and (max-width: 768px) {
        #more { padding: 6em 0 10em; background-image: url(../../img/business/bg-more.jpg); background-repeat: no-repeat; background-position: center; background-size: 100% 100%; }
        #more:before { content: ''; display: inline-block; width: 100%; height: 1em; position: absolute; left: 0; top: -1em; box-shadow: 0 0 15px rgba(102, 102, 102, .16); }
        .more--block { padding: 3em 2em 2.7em; background: #fff; border: 1px solid #F2F2F2; border-radius: .5em; box-sizing: border-box; }
        .more--title { max-width: 18em; }
        .more--list { display: block; }
        .more--list:not(:last-child) { margin-bottom: 2.2em; }
        .more--list dt { font-size: 1.6em; line-height: 1.5; width: 100%; margin-bottom: .5em }
        .more--list ul { display: block; margin: 0; }
        .more--list li { display: block; margin: 0; }
        .more--list li:not(:last-child) { margin-bottom: .9em; }
        .more--list li span { font-size: 1.4em; line-height: 1.5; }

    }

/* section contents */
#contents { margin-bottom: 20em; z-index: 3; }
.contents--head { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; margin-bottom: 6.5em; }
.contents--title { width: 60%; display: inline-block; position: relative; }
.contents--title .ct-En { font-family: "Roboto", serif; font-size: 1.6em; font-weight: 500; letter-spacing: .02em; line-height: 1.75; text-align: center; display: inline-block; min-width: 12.125em; padding: 0 1em; color: #fff; box-sizing: border-box; background: url(../../img/business/bg-subtlt.png) no-repeat; background-size: 100% 100%; }
.contents--title .ct-Jp { font-size: 4.8em; font-weight: bold; line-height: 1.39; margin-top: .125em; }
.contents--desc { font-size: 2.2em; font-weight: bold; line-height: 1.54; width: 38.5%; }
.contents--block { display: block; overflow: hidden; padding: 0 9em 13em; position: relative; width: calc( 100% + 18em ); margin-left: -9em; background: #fff; box-shadow: 0 0 40px rgba(102, 102, 102, .16); border-radius: .5em; box-sizing: border-box; }
.contents--visual { display: block; position: relative; margin: 0 -9em 13em; }

    @media screen and (max-width: 768px) {
        #contents { margin-bottom: 0; }
        .contents--head { display: block; margin-bottom: 5.5em; }
        .contents--title { width: calc( 100% + 5em ); display: block; padding: 3.5em 2.5em 1.8em 3.5em; margin: 0 -2.5em; box-sizing: border-box; background-image: url(../../img/business/bg-content-title.jpg); background-repeat: no-repeat; background-position: right bottom; background-size: 8em; }
        .contents--title .ct-En { font-size: 1.5em; line-height: 1.4; min-width: 10em; }
        .contents--title .ct-Jp { font-size: 2.6em; line-height: 1.3; margin-top: .38em; }
        .contents--desc { font-size: 1.8em; line-height: 1.5; width: 100%; }
        .contents--visual { margin: 0 -2.5em 3em; }
        .contents--block { padding: 0 2.5em 5.7em; width: calc( 100% + 5em ); margin-left: -2.5em; box-shadow: none; border-radius: 0; }
    }

/* main detail */
.contents__details { display: block; position: relative; }
.contents__detail { display: block; position: relative; }
.contents__detail:not(:last-child) { margin-bottom: 13em; }
/*.contents__detail:first-child { margin-bottom: 10em; }*/
.contents__detail--links { margin-bottom: 6.5em !important; }
.contents__detail__head { display: block; position: relative; }
.contents__detail--title { display: block; position: relative; padding: 2.2em 0; margin-bottom: 5em; }
.contents__detail--title span { font-size: 4em; font-weight: bold; line-height: 1.5; display: inline-block; position: relative; }
.contents__detail--title.t-2 { padding-bottom: 0; margin-bottom: 4em; }
.contents__detail--title:before { content: ''; display: inline-block; width: 20em; height: 10.37em; position: absolute; left: -9em; top: 0; background-image: url(../../img/business/bg-detial-title.png); background-repeat: no-repeat; background-size: 100% 100%; }
.contents__detail--title2 { display: block; position: relative; padding-left: 6.8em; margin-bottom: 3.3em; }
.contents__detail--title2 span { font-size: 3.2em; font-weight: bold; line-height: 1.5; display: inline-block; }
.contents__detail--title2:before { content: ''; display: inline-block; width: 5.8em; height: 3em; position: absolute; left: 0; top: 1em; background-image: url(../../img/business/bg-detial-title2.png); background-repeat: no-repeat; background-size: 100% 100%; }
.contents__detail--cmn { font-size: 1.6em; line-height: 1.7; }
.contents__detail--cmn ol,
.contents__detail--cmn ul { display: block; position: relative; list-style: initial; }
.contents__detail--cmn ol li { display: list-item; list-style: number; margin-left: 1em; }
.contents__detail--cmn ul li { display: list-item; list-style: disc; margin-left: 1em; }
.contents__detail--cmn ol li:not(:last-child),
.contents__detail--cmn ol li:not(:last-child) { margin-bottom: .875em; }
.contents__detail--cover { display: block; overflow: hidden; border: 1px solid #ccc; border-radius: .5em; box-sizing: border-box; }
.contents__detail--cover.no-border { border: none; }

    .contents__detail--break { display: flex; flex-wrap: wrap; justify-content: space-between; }
    .contents__detail--break .contents__detail__head { width: 47.5%; }
    .contents__detail--break .contents__detail--cover { width: 47.5%; }
    
    @media screen and (min-width: 768px) {
        .contents__detail.pma-100 { margin-bottom: 10em; }
    }

    @media screen and (max-width: 768px) {
        .contents__detail:not(:last-child) { margin-bottom: 6em; }
        .contents__detail--links { margin-bottom: 4em !important; }
        .contents__detail--title { padding: 2.3em 0; margin-bottom: 3em; }
        .contents__detail--title span { font-size: 2.3em; }
        .contents__detail--title.t-2,
        .contents__detail--title.t-3 { padding-bottom: 0; margin-bottom: 3em; }
        .contents__detail--title:before { width: 15.48em; height: 8em; left: -9.9em; background-image: url(../../img/business/bg-detial-title.png); }
        .contents__detail--title2 { padding-left: 1.5em; margin-bottom: 1.5em; }
        .contents__detail--title2 span { font-size: 1.8em; }
        .contents__detail--title2:before { width: 3.471em; height: 1.8em; left: -2.5em; top: .25em; }

        .contents__detail--break { display: block; }
        .contents__detail--break .contents__detail__head,
        .contents__detail--break .contents__detail--cover { width: 100%; }
        .contents__detail--break .contents__detail--cover { margin-top: 3.5em; }
    }

/*store list*/
.contents__detail__store { display: block; position: relative; margin-bottom: 9.4em; }
.contents__detail__store--block { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; position: relative; padding: 4em 0; border-bottom: 1px solid #ccc; }
.contents__detail__store--block:first-child { border-top: 1px solid #ccc; }
.contents__detail__store--pic { width: 33.33%; display: block; overflow: hidden; border-radius: .5em; }
.contents__detail__store--cont { width: 61.66%; padding-right: 2em; box-sizing: border-box; }
.contents__detail__store--head { display: flex; flex-wrap: wrap; align-items: flex-start; margin-bottom: 2.4em; }
.contents__detail__store--title { font-size: 2.6em; font-weight: bold; line-height: 1.46; margin-right: .69em; }
.contents__detail__store--note { font-size: 1.4em; font-weight: bold; line-height: 1.7; margin: .357em 0; color: #fff; padding: .175em 1em; background: #29B800; border-radius: 10em; display: inline-block; }
.contents__detail__store__links { display: flex; flex-wrap: wrap; margin-bottom: 4em; margin-top: -2em; }
.contents__detail__store__link { display: inline-block; max-width: 28em; width: 100%; margin-top: 2em; margin-right: 2.7em; }
.contents__detail__store__link a { position: relative; display: flex; flex-wrap: wrap; align-items: center; overflow: hidden; padding: .5em 2em; width: 100%; min-height: 5em; border-radius: .5em; border: 1px solid #999; box-sizing: border-box; }
.contents__detail__store__link span { display: inline-block; position: relative; }
.contents__detail__store__link.l-website a { border-color: #093483; background: #093483; color: #fff; }
.contents__detail__store__link.l-website a:after { content: ''; display: inline-block; position: absolute; right: 2em; top: 50%; transform: translateY(-50%); width: 2em; height: 2em; margin-left: .333em; background-image: url(../../img/share/arrow-link-bw.svg); background-repeat: no-repeat; background-size: 100% 100%; transition: background-image .2s ease; }
.contents__detail__store__link.l-website span { font-size: 1.6em; font-weight: bold; }
.contents__detail__store__link.l-website span:after { content: ''; display: inline-block; vertical-align: -.1em; width: 1em; height: 1em; margin-left: .333em; background-image: url(../../img/share/icon-link-w.svg); background-repeat: no-repeat; background-size: 100% 100%; transition: background-image .2s ease; }
.contents__detail__store__link.l-phone a { justify-content: center; }
.contents__detail__store__link.l-phone span { font-size: 2.1em; font-weight: bold; }
.contents__detail__store__link.l-phone span:before { content: ''; display: inline-block; vertical-align: -.1em; width: 1em; height: 1em; margin-right: .5em; background-image: url(../../img/share/icon-phone.svg); background-repeat: no-repeat; background-size: 100% 100%; transition: background-image .2s ease; }
.contents__detail__store--desc { display: table; border-collapse: collapse; width: 100%; }
.contents__detail__store--desc dl { display: flex; flex-wrap: wrap; align-items: flex-start; }
.contents__detail__store--desc dl:not(:last-child) { margin-bottom: 2.5em; }
.contents__detail__store--desc dl dt,
.contents__detail__store--desc dl dd { font-size: 1.6em; line-height: 1.7; }
.contents__detail__store--desc dl dt { font-weight: bold; width: 5.875em }
.contents__detail__store--desc dl dd { width: calc( 100% - 5.875em ); }
.contents__detail__store--desc dl dd a { text-decoration: underline; color: #093483; }
.contents__detail__store--desc dl dd .bt-maps { font-weight: bold; width: 9.75em; text-align: center; margin-top: 1em; }
.contents__detail__store--desc dl dd .bt-maps a { color: initial; text-decoration: none; display: block; border: 1px solid #999; padding: .3em 0 .4em; border-radius: .33em; transition: linear .25s; }
.contents__detail__store--desc dl dd .bt-maps a:after { content: ''; display: inline-block; vertical-align: -.1em; width: 1em; height: 1em; margin-left: .333em; background-image: url(../../img/share/icon-link-b.svg); background-repeat: no-repeat; background-size: 100% 100%; transition: background-image .2s ease; }

    @media screen and (min-width: 768px) {
        .contents__detail__store__link.l-website a:hover { background: white; color: #093483; }
        .contents__detail__store__link.l-website a:hover:after { background-image: url(../../img/share/arrow-link-bl.svg); }
        .contents__detail__store__link.l-website a:hover span:after { background-image: url(../../img/share/icon-link-bl.svg); }
        .contents__detail__store__link.l-phone a:hover { border-color: #333; background: #333; color: #fff; }
        .contents__detail__store__link.l-phone a:hover span:before { background-image: url(../../img/share/icon-phone-w.svg); }
        .contents__detail__store--desc dl dd a:hover { text-decoration: none; }
        .contents__detail__store--desc dl dd .bt-maps a:hover { border-color: #333; background: #333; color: #fff; }
        .contents__detail__store--desc dl dd .bt-maps a:hover:after { background-image: url(../../img/share/icon-link-w.svg); }
    }

    @media screen and (max-width: 768px) {
        .contents__detail__store { margin-bottom: 6em; }
        .contents__detail__store--block { flex-direction: column-reverse; padding: 3em 0 4em; }
        .contents__detail__store--pic { width: 100%; margin-top: 3em }
        .contents__detail__store--cont { width: 100%; padding: 0; }
        .contents__detail__store--head { display: block; margin-bottom: 2.5em; }
        .contents__detail__store--title { font-size: 2em; margin: 0; }
        .contents__detail__store--note { font-size: 1.3em; line-height: 1.2; margin: 0; margin-top: .2em; padding: .2em .76em; }
        .contents__detail__store__links { display: block; margin: 0; margin-bottom: 2.7em; }
        .contents__detail__store__link { display: block; margin: 0 auto; }
        .contents__detail__store__link:not(:last-child) { margin-bottom: 1em; }
        .contents__detail__store--desc dl:not(:last-child) { margin-bottom: 1.7em; }
        .contents__detail__store--desc dl dt { font-weight: bold; width: 5em }
        .contents__detail__store--desc dl dd { width: calc( 100% - 5em ); }
    }


.contents__detail__solves { display: block; position: relative; }
.contents__detail__solve { padding: 6em 0; display: flex; flex-wrap: wrap; justify-content: space-between; position: relative; }
.contents__detail__solve:not(:last-child) { margin-bottom: .3em; }
.contents__detail__solve:after { content: ''; display: block; width: 4.3em; height: 7em; position: absolute; right: -9em; bottom: 0; background: url(../../img/top/crop-bot-what.png) no-repeat; background-size: cover; z-index: 2; }
.contents__detail__solve--head { width: 27.91%; position: relative; z-index: 2; }
.contents__detail__solve--tlt { font-size: 3.2em; font-weight: bold; line-height: 1.5; margin-bottom: .71875em; max-width: 8.59275em; }
.contents__detail__solve--desc { font-size: 1.6em; line-height: 1.7; max-width: 17.1875em; }
.contents__detail__solve .swiper-pagi--prev,
.contents__detail__solve .swiper-pagi--next { left: 13.38%; right: auto; top: auto; transform: none; bottom: 6em; background: #fff; }
.contents__detail__solve .swiper-pagi--next { left: 18.8%; }
.contents__detail__solve-swiper-pagination { position: absolute; left: 0; bottom: 6em; width: initial; height: 5em; display: flex; align-items: center; }
.contents__detail__solve-swiper-pagination span { font-family: "Roboto", serif; font-size: 1.8em; letter-spacing: .08em; display: inline-block; position: relative; }
.contents__detail__solve .swiper-pagination-current { padding-right: 2em; }
.contents__detail__solve .swiper-pagination-current:after { content: ''; display: inline-block; position: absolute; right: 1em; top: calc( 50% - .555em ); width: 1px; height: 1.11em; transform: rotate(45deg); background: #ccc; }
.contents__detail__solve--swiper { width: calc( 65.83% + 34.16%); margin-right: -28.73%; overflow: initial; }
.contents__detail__solve--swiper .swiper-slide { width: 31.666%; height: auto; margin-right: 3em; box-sizing: border-box; }
.contents__detail__solve--swiper .swiper-slide:nth-child(n+4) { display: none; }
.contents__detail__solve--swiper.swiper-initialized .swiper-wrapper { flex-wrap: initial; }
.contents__detail__solve--swiper.swiper-initialized .swiper-slide:nth-child(n+4) { display: block; }
.contents__detail__solve__box { display: block; position: relative; }
.contents__detail__solve__box--pic { display: block; overflow: hidden; border-radius: .5em; margin-bottom: 2.6em; }
.contents__detail__solve__box--pic img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: linear .2s; }
.contents__detail__solve__box--desc {display:  block; position: relative; }
.contents__detail__solve__box--tlt { position: relative; display: inline-block; }
.contents__detail__solve__box--tlt span { font-size: 2.2em; font-weight: bold; line-height: 1.54; display: inline-block; }
.contents__detail__solve__box--tlt:after { content: ''; display: inline-block; vertical-align: -.2em; width: 2em; height: 2em; margin-left: .2em; background: url(../../img/share/arrow-link.svg) no-repeat; background-size: 100% 100%; }
.contents__detail__solve__box--tlt .i-icon { width: 1.7em; height: 1.7em; position: absolute; right: 0; top: 50%; transform: translateY(-50%); }
.contents__detail__solve__box--cmn { font-size: 1.6em; line-height: 1.7; }

    @media screen and (min-width: 768px) {
        /* .what--swiperNot.swiper-initialized .swiper-wrapper { flex-direction: row-reverse; justify-content: flex-end; }*/
        .contents__detail__solve:before { content: ''; display: block; position: absolute; width: 200vw; height: 100%; left: 50%; top: 0; transform: translateX(-50%); background: #F8F8F8; }
        .contents__detail__solve--swiper:after { content: ''; display: block; position: absolute; width: 100vw; height: calc( 100% + 12em ); right: 100%; top: 50%; transform: translateY(-50%); background: #F8F8F8; z-index: 2; }
        .contents__detail__solve .swiper-pagi:hover { background: #ccc; }
        .contents__detail__solve__box:hover .contents__detail__solve__box--pic img { transform: scale(1.1); }
    }

    @media screen and (max-width: 768px) {
        .contents__detail__solve { padding: 6em 2.5em 5.6em; width: 100vw; position: relative; left: 50%; transform: translateX(-50%); display: block; background: #F8F8F8; box-sizing: border-box; }
        .contents__detail__solve:not(:last-child) { margin-bottom: .5em; }
        .contents__detail__solve:after { width: 3.5em; height: 5.7em; left: auto; right: 0; }
        .contents__detail__solve--head { width: 100%; margin-bottom: 3.4em; }
        .contents__detail__solve--tlt { font-size: 2.3em; margin-bottom: .65em; max-width: 100%; }
        .contents__detail__solve--desc { max-width: 100%; }
        .contents__detail__solve--swiper { width: 100%; margin: 0; }
        .contents__detail__solve--swiper .swiper-wrapper { display: block; }
        .contents__detail__solve--swiper .swiper-slide { width: 100%; margin: 0; display: block !important; }
        .contents__detail__solve--swiper .swiper-slide:nth-child(n+2) { margin-top: 4.4em; }
        .contents__detail__solve__box--pic { margin-bottom: 2.2em; }
        .contents__detail__solve__box--tlt span { font-size: 1.8em; line-height: 1.38; }
        .contents__detail__solve__box--tlt:after { vertical-align: -.16em; width: 1.6em; height: 1.6em; margin-left: .4em; }
        .contents__detail__solve__box--tlt .i-icon { width: 1.5em; height: 1.5em; }

        .contents__detail__solve .swiper-pagi--prev,
        .contents__detail__solve .swiper-pagi--next,
        .contents__detail__solve-swiper-pagination  { display: none; }
    }


.contents__detail__cases { display: block; position: relative; }
.contents__detail__case { display: block; position: relative; }
.contents__detail__case:not(:last-child) { padding-bottom: 4em; margin-bottom: 4em; border-bottom: 1px solid #ccc; }
.contents__detail__case--title { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; margin-bottom: 3em; }
.contents__detail__case--title .ct-En { font-family: "Roboto", serif; font-size: 1.6em; font-weight: 500; letter-spacing: .02em; line-height: 1.875; text-align: center; display: inline-block; width: 9.86em; padding: 0 1em; margin: .875em 0; color: #fff; box-sizing: border-box; background: url(../../img/business/bg-subtlt2.png) no-repeat; background-size: 100% 100%; }
.contents__detail__case--title .ct-Jp { font-size: 3.2em; line-height: 1.5; font-weight: bold; width: calc( 100% - 5.625em ); }
.contents__detail__case--title .ct-Jp small { font-size: inherit; display: inline-block; }
.contents__detail__case__lists { display: block; position: relative; }
.contents__detail__case__list { display: flex; flex-wrap: wrap; justify-content: space-between; }
.contents__detail__case__list:not(:last-child) { margin-bottom: 6em; }
.contents__detail__case__list--pic { display: block; overflow: hidden; border-radius: .5em; width: 33.33%; box-sizing: border-box; }
.contents__detail__case__list--desc { width: 63.33%; }
.contents__detail__case__list--title { font-size: 2.6em; font-weight: bold; line-height: 1.46; margin-bottom: .73em; }
.contents__detail__case__list--cmn { font-size: 1.6em; line-height: 1.7; }
.contents__detail__case__list--cmn ul { display: block; position: relative; }
.contents__detail__case__list--cmn ul li { display: block; position: relative; padding-left: .8125em; }
.contents__detail__case__list--cmn ul li strong { display: block; }
.contents__detail__case__list--cmn ul li:not(:last-child) { margin-bottom: .3125em; }
.contents__detail__case__list--cmn ul li:before { content: ''; display: inline-block; width: .5em; height: .5em; position: absolute; left: 0; top: .6em; background: #CC1A2C; border-radius: 50%; }


    @media screen and (min-width: 768px) {
        .contents__detail__case--title .ct-Jp small { font-size: .6875em; margin-left: 1em; }

        .contents__detail__cases2 .contents__detail__case__list--pic { width: 47.5%; }
        .contents__detail__cases2 .contents__detail__case__list--desc { width: 47.5%; }
    }

    @media screen and (max-width: 768px) {
        .contents__detail__case { margin: 0 -2.5em; padding: 0 2.5em; padding-bottom: 3.5em !important; border-bottom: 1px solid #ccc !important; }
        .contents__detail__case.cc-last { padding-bottom: 0 !important; border: none !important; }
        .contents__detail__case--title { display: block; margin-bottom: 2.5em; }
        .contents__detail__case--title .ct-En { font-size: 1.3em; line-height: 1.384; width: 9.13em; margin: 0; margin-left: -2.8em; margin-bottom: .7692em; box-sizing: border-box; background: url(../../img/business/bg-subtlt2_sp.png) no-repeat; background-size: 100% 100%; }
        .contents__detail__case--title .ct-Jp { font-size: 1.8em; width: 100%; }
        .contents__detail__case__list { display: block; }
        .contents__detail__case__list:not(:last-child) { margin-bottom: 4.5em; }
        .contents__detail__case__list--pic { width: 100%; margin-bottom: 2em; }
        .contents__detail__case__list--desc { width: 100%; }
        .contents__detail__case__list--title { font-size: 1.6em; line-height: 1.5; margin-bottom: .25em; }
    }

.contents__detail__recruit { margin-top: 8em; display: block; position: relative; }
.contents__detail__recruit--tab { display: flex; flex-wrap: wrap; position: relative; z-index: 2; }
.contents__detail__recruit--tab:before,
.contents__detail__recruit--tab:after { content: ''; display: inline-block; position: absolute; top: 0; left: 0; width: calc( 100% / 3 ); height: .5em; border-top-right-radius: .5em; border-top-left-radius: .5em; background: linear-gradient(90deg, #530000 0%, #e70012 40%, #e70012 100%); z-index: 3; transition: ease .2s; }
/*.contents__detail__recruit--tab:before { background: #fff; z-index: 2; border-radius: none; transition: none; }*/
.contents__detail__recruit--tab li { cursor: pointer; height: 7em; width: calc( 100% / 3 ); box-sizing: border-box; display: flex; align-items: center; justify-content: center; position: relative; border: 1px solid #fff; border-bottom: none; border-top-left-radius: .5em; border-top-right-radius: .5em; transition: linear .2s; }
.contents__detail__recruit--tab li:after { content: ''; display: inline-block; position: absolute; bottom: -1px; left: 0; width: 100%; height: 1px; background: #fff; z-index: 3; opacity: 0; }
.contents__detail__recruit--tab li span { font-size: 1.8em; font-weight: bold; display: inline-block; color: #999; }
.contents__detail__recruit--tab li.active { border-color: #ccc; }
.contents__detail__recruit--tab li.active span { color: #CC1A2C; }
.contents__detail__recruit--tab li.active:after { opacity: 1; }

    .tab-02 .contents__detail__recruit--tab:before,
    .tab-02 .contents__detail__recruit--tab:after { left: calc( 100% - (( 100% / 3 ) * 2 )); }
    .tab-03 .contents__detail__recruit--tab:before,
    .tab-03 .contents__detail__recruit--tab:after { left: calc( 100% - ( 100% / 3 )); }

.contents__detail__recruit--main { display: block; overflow: hidden; }
.contents__detail__recruit--boxs { width: 300%; display: flex; align-items: flex-start; flex-wrap: wrap; transition: ease .2s; }
.contents__detail__recruit--box { padding: 8em 8em 10em; border: 1px solid #ccc; border-radius: .5em; width: calc( 100% / 3 ); height: 0; box-sizing: border-box; transition: ease .2s; }
.contents__detail__recruit--break { display: block; position: relative; }
.contents__detail__recruit--break:not(:last-child) { margin-bottom: 6em; }
.contents__detail__recruit--box.active { height: initial; }

    .tab-02 .contents__detail__recruit--boxs { margin-left: -100%; }
    .tab-03 .contents__detail__recruit--boxs { margin-left: -200%; }
    .tab-01 .contents__detail__recruit--box { border-top-left-radius: 0; }
    .tab-03 .contents__detail__recruit--box { border-top-right-radius: 0; }

    @media screen and (min-width: 768px) {
        .contents__detail__recruit--tab li:not(.active):hover { background: #FAFAFA; }
        .contents__detail__recruit--tab li:hover span { color: #CC1A2C; }
    }

    @media screen and (max-width: 768px) {
        .contents__detail__recruit { margin: 0 -2.5em; margin-top: 4.5em; }
        .contents__detail__recruit--tab:before,
        .contents__detail__recruit--tab:after { border-radius: 0; }
        .contents__detail__recruit--tab li { height: 5em; border-radius: 0; padding: .5em; text-align: center; border: none; border-right: 1px solid #E8E8E8; border-top: .5em solid #E8E8E8; }
        .contents__detail__recruit--tab li:last-child { border-right: none; }
        .contents__detail__recruit--tab li:nth-of-type(1),
        .contents__detail__recruit--tab li:nth-of-type(2) { border-right: 1px solid #E8E8E8; }
        .contents__detail__recruit--tab li span { font-size: 1.4em; line-height: 1.1; }
        .contents__detail__recruit--tab li.active { border-color: #E8E8E8; border-bottom-color: #fff; }

        .contents__detail__recruit--box { padding: 3em 2.5em 0; border: none; border-top: 1px solid #E8E8E8; border-radius: 0; }
        .contents__detail__recruit--break:not(:last-child) { margin-bottom: 4.5em; }
    }

.contents__detail__recruit__head { padding: 2em 4em; margin-bottom: 4em; display: flex; flex-wrap: wrap; justify-content: space-between; border-radius: .5em; background: #FEF7F8; }
.contents__detail__recruit__head--title { font-size: 3.5em; font-weight: normal; line-height: 1.3; width: 67.7%; }
.contents__detail__recruit__head--title.t-full { width: 100%; }
.contents__detail__recruit__head--position { display: flex; flex-direction: column; justify-content: center; padding-left: 2.5em; width: 27.6%; border-left: 1px solid #ccc; box-sizing: border-box; }
.contents__detail__recruit__head--position dt { font-size: 1.6em; font-weight: bold; line-height: 1.7; margin-bottom: .75em; display: block; }
.contents__detail__recruit__head--position dt:before { content: ''; display: inline-block; vertical-align: .2em; width: .375em; height: .375em; margin-right: .33em; background: #CC1A2C; border-radius: 50%; }
.contents__detail__recruit__head--position dd { font-size: 1.8em; line-height: 1.3; }
.contents__detail__recruit__head--position dd small { font-size: .77em; line-height: 1.3; display: block; }
.contents__detail__recruit__lists { display: block; position: relative; max-width: 96em; margin: 0 auto; }
.contents__detail__recruit__list { display: flex; flex-wrap: wrap; justify-content: space-between; }
.contents__detail__recruit__list:not(:last-child) { margin-bottom: 8em; }
.contents__detail__recruit__list--pic { display: block; overflow: hidden; border-radius: .5em; width: 51.05%; }
.contents__detail__recruit__list--desc { width: 42.7%; padding-right: 5em; box-sizing: border-box; }
.contents__detail__recruit__list--title { font-size: 2.6em; font-weight: bold; line-height: 1.46; margin-bottom: .53em; }
.contents__detail__recruit__list--cmn { font-size: 1.6em; line-height: 1.7; }

    @media screen and (min-width: 768px) {
        .contents__detail__recruit__list:nth-child(2n) { flex-direction: row-reverse; }
        .contents__detail__recruit__list:nth-child(2n) .contents__detail__recruit__list--desc { padding: 0; padding-left: 5em; }
    }

    @media screen and (max-width: 768px) {
        .contents__detail__recruit__head { padding: 2.5em 2em; margin-bottom: 5em; display: block; }
        .contents__detail__recruit__head--title { font-size: 2em; line-height: 1.5; width: 100%; }
        .contents__detail__recruit__head--position { display: block; padding: 0; padding-top: 1.5em; margin-top: 1.5em; width: 100%; border: none; border-top: 1px solid #ccc; }
        .contents__detail__recruit__head--position dt { font-size: 1.4em; margin-bottom: .2em; }
        .contents__detail__recruit__head--position dd { font-size: 1.6em; line-height: 1.5; }
        .contents__detail__recruit__head--position dd small { font-size: .875em; line-height: 1.5; }
        .contents__detail__recruit__list { display: block; }
        .contents__detail__recruit__list:not(:last-child) { margin-bottom: 4.5em; }
        .contents__detail__recruit__list--pic { width: 100%; margin-bottom: 2em; }
        .contents__detail__recruit__list--desc { width: 100%; padding-right: 0; }
        .contents__detail__recruit__list--title { font-size: 1.6em; line-height: 1.5; margin-bottom: .25em; }
    }

.contents__detail__extra { display: block; position: relative; margin-top: 4.4em; }
.contents__detail__extra--title { font-size: 2.6em; font-weight: bold; line-height: 1.46; margin-bottom: .73em; }
.contents__detail__extra__lists { display: block; position: relative; border-top: 1px solid #ccc; }
.contents__detail__extra__list { display: block; position: relative; border-bottom: 1px solid #ccc; }
.contents__detail__extra__list--head { cursor: pointer; position: relative; padding: 3em 0; padding-right: 8em; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; transition: linear .2s; }
.contents__detail__extra__list--head .lh-tag { display: block; width: 10em; }
.contents__detail__extra__list--head .lh-tag span { font-size: 1.4em; font-weight: bold; line-height: 2em; color: #CC1A2C; border: 1px solid #CC1A2C; display: block; text-align: center; border-radius: 10em; box-sizing: border-box; }
.contents__detail__extra__list--head .lh-tlt { display: block; width: calc( 100% - 12em ); }
.contents__detail__extra__list--head .lh-tlt:after { content: ''; display: block; width: 2.5em; height: 2.5em; position: absolute; right: 3em; top: calc( 50% - ( 2.5em / 2 ) ); opacity: 0; background: #CC1A2C; border-radius: 50%; }
.contents__detail__extra__list--head .lh-tlt span { font-size: 2.1em; font-weight: bold; line-height: 1.33; display: block; }
.contents__detail__extra__list--head:after, 
.contents__detail__extra__list--head:before { content: ''; display: block; width: 2.5em; height: .2em; position: absolute; right: 3em; top: calc( 50% - .1em ); background: #CC1A2C; }
.contents__detail__extra__list--head:before { transform: rotate(90deg); }

    .contents__detail__extra__list.on .contents__detail__extra__list--head:before { opacity: 0 !important; }

    @media screen and (min-width: 768px) {
        .contents__detail__extra__list--head:hover { background: #FEF7F8; }
        .contents__detail__extra__list--head:hover:after,
        .contents__detail__extra__list--head:hover:before { opacity: 0; }
        .contents__detail__extra__list--head:hover .lh-tlt:after { opacity: 1; transform: scale(.4); transition: linear .2s; }
    }

    @media screen and (max-width: 768px) {
        .contents__detail__extra { margin-top: 3.6em; }
        .contents__detail__extra--title { font-size: 1.6em; line-height: 1.5; }
        .contents__detail__extra__list--head { padding: 2em 0; padding-right: 4em; }
        .contents__detail__extra__list--head .lh-tag { width: 7.2em; }
        .contents__detail__extra__list--head .lh-tag span { font-size: 1.3em; line-height: 1.538em; }
        .contents__detail__extra__list--head .lh-tlt { width: calc( 100% - 8.2em ); }
        .contents__detail__extra__list--head .lh-tlt:after { content: none; }
        .contents__detail__extra__list--head .lh-tlt span { font-size: 1.5em; }
        .contents__detail__extra__list--head:after, 
        .contents__detail__extra__list--head:before { width: 1.6em; right: 1.5em; border-radius: 1em; }
    }

.contents__detail__extra__list--cont { display: none; position: relative; padding-bottom: 5em; }
.contents__detail__extra__list--frame { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; position: relative; }
.contents__detail__extra__list--pic { width: 30%; display: block; overflow: hidden; border-radius: .5em; }
.contents__detail__extra__list--desc { width: 65%; display: table; border-collapse: collapse; }
.contents__detail__extra__list--desc tr th,
.contents__detail__extra__list--desc tr td { font-size: 1.6em; line-height: 1.7; text-align: left; vertical-align: top; box-sizing: border-box; padding-bottom: .875em }
.contents__detail__extra__list--desc tr:last-child th,
.contents__detail__extra__list--desc tr:last-child td { padding-bottom: 0; }
.contents__detail__extra__list--desc tr th { width: 10em; }
.contents__detail__extra__list--desc tr td a,
.contents__detail__extra__list--desc tr td span { display: inline-block; position: relative; }
.contents__detail__extra__list--desc tr td a { color: #CC1A2C; }
.contents__detail__extra__list--desc tr td a:after { content: ''; display: inline-block; vertical-align: -.1em; width: 1em; height: 1em; margin-left: .33em; background: url(../../img/share/icon-link-r.svg) no-repeat; background-size: 100% 100%; }

    @media screen and (min-width: 768px) {
        .contents__detail__extra__list--desc tr td span:before { content: ""; position: absolute; left: 0; width: 100%; bottom: 0; background: #CC1A2C; height: 1px; transition-property: width; transition-duration: 0.3s; transition-timing-function: ease-out; }
        .contents__detail__extra__list--desc tr td a:hover span:before { left: auto; right: 0; width: 0; }
    }

    @media screen and (max-width: 768px) {
        .contents__detail__extra__list--cont { padding: 1em 0 3em; }
        .contents__detail__extra__list--frame { display: block; }
        .contents__detail__extra__list--pic { width: 100%; margin-bottom: 2.5em; }
        .contents__detail__extra__list--desc,
        .contents__detail__extra__list--desc tbody,
        .contents__detail__extra__list--desc tr,
        .contents__detail__extra__list--desc tr th,
        .contents__detail__extra__list--desc tr td { width: 100%; display: block; padding: 0; }
        .contents__detail__extra__list--desc tr th { margin-bottom: .35em; }
        .contents__detail__extra__list--desc tr:not(:last-child) { margin-bottom: 1.1em; }
        .contents__detail__extra__list--desc tr td a,
        .contents__detail__extra__list--desc tr td a span { text-decoration: underline; }
    }

.contents__detail_achiev { display: block; position: relative; margin-top: 7em; }
.contents__detail_achiev--title { font-size: 2.1em; font-weight: bold; line-height: 1.5; margin-bottom: .7619em; }
.contents__detail_achiev--block { width: 100%; display: block; position: relative; overflow-x: auto; -ms-overflow-style: none; scrollbar-width: none; }
.contents__detail_achiev--frame { display: flex; flex-wrap: wrap; position: relative; overflow: hidden; width: 120em; border-bottom: 1px solid #ccc; border-top-right-radius: .5em; border-top-left-radius: .5em; }
.contents__detail_achiev--table { display: table; border-collapse: collapse; width: 100%; box-sizing: border-box; }
.contents__detail_achiev--table tr th,
.contents__detail_achiev--table tr td { font-size: 1.6em; line-height: 1.7; text-align: left; vertical-align: middle; padding: 1.25em 1.25em; border-right: 1px solid #ccc; box-sizing: border-box; }
.contents__detail_achiev--table thead tr th { padding-left: .625em; padding-right: .625em; }
.contents__detail_achiev--table tbody tr th { width: 6.5em; padding-right: .625em; }
.contents__detail_achiev--table tbody tr td { width: 18.5em; padding-right: 1em; }
.contents__detail_achiev--table thead tr { background: #F5D1D4; }
.contents__detail_achiev--table tbody tr:nth-child(even) { background: #FEF7F8; }
.contents__detail_achiev--table tbody tr td:last-child,
.contents__detail_achiev--table thead tr th:last-child { border: none; }
.contents__detail_achiev--table thead tr th { border-color: #fff; text-align: center; }
.contents__detail_achiev--table tr .ct_blank { min-height: 1.7em; display: block; }

    @media screen and (max-width: 768px) {
        .contents__detail_achiev { padding-bottom: 2.3em; margin-top: 3.5em; }
        .contents__detail_achiev--title { font-size: 1.6em; margin-bottom: .5625em; }
        .contents__detail_achiev--block { width: calc( 100% + 5em ); margin: 0 -2.5em; }
        .contents__detail_achiev--frame { width: 87.6em; margin: 0 2.5em; }
        .contents__detail_achiev--table tr th,
        .contents__detail_achiev--table tr td { font-size: 1.4em; padding: 1.13em .7142em; }
        .contents__detail_achiev--table tbody tr th { width: 5.3em; }
        .contents__detail_achiev--table tbody tr td { width: 13em; }

        .contents__detail_achiev--scrollbar { position: absolute; left: 50%; bottom: 0; width: calc(100vw - 5em); transform: translateX(-50%); background: #E8E8E8; height: .3em; border-radius: 10em; pointer-events: none }
        .contents__detail_achiev--scrollbar span { position: absolute; left: 0; height: .3em; background: #CC1A2C; border-radius: 10em }
    }

.contents__detail__comment { display: flex; flex-wrap: wrap; }
.contents__detail__comment__list { width: 47.5%; margin-right: 5%; }
.contents__detail__comment__list:nth-child(2n) { margin-right: 0; }
.contents__detail__comment__list:nth-child(n+3) { margin-top: 5%; }
.contents__detail__comment--head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; margin-bottom: 1.6em; }
.contents__detail__comment--num { font-size: 1.4em; font-weight: bold; line-height: 1.7; margin: .357em 0; color: #fff; padding: .175em 1em; max-width: 10.28em; width: 100%; background: #CC1A2C; border-radius: 10em; text-align: center; display: block; box-sizing: border-box; }
.contents__detail__comment--cmn { font-size: 1.4em; line-height: 1.5; width: calc( 100% - 11.71em ); }
.contents__detail__comment--tlt { font-size: 2.6em; line-height: 1.423; padding: 0 1.1538em .6538em; margin-bottom: .769em; text-align: center; background-image: url(../../img/business/sales/arrow-tlt.png); background-repeat: no-repeat; background-position: center bottom; background-size: 100% 2.038em; }
.contents__detail__comment--pic { display: block; overflow: hidden; border-radius: .5em; }
.contents__detail__comment--desc { font-size: 1.6em; line-height: 1.7em; margin-top: 1.875em; }

    @media screen and (max-width: 768px) {
        .contents__detail__comment__list { width: 100%; margin-right: 0; }
        .contents__detail__comment__list:first-child { margin-top: 1em; }
        .contents__detail__comment__list:nth-child(n+2) { margin-top: 4.8em; }
        .contents__detail__comment--head { display: block; margin-bottom: 1em; }
        .contents__detail__comment--num { font-size: 1.3em; line-height: 1.2; margin: 0 auto; margin-bottom: .38em; padding: .2em 0; max-width: 8.77em; }
        .contents__detail__comment--cmn { font-size: 1.2em; line-height: 1.5; width: 100%; text-align: center; }
        .contents__detail__comment--tlt { font-size: 1.8em; line-height: 1.5; padding: 0 1.1538em .72em; margin-bottom: 1.11em; text-align: center; background-image: url(../../img/business/sales/arrow-tlt_sp.png); background-repeat: no-repeat; background-position: center bottom; background-size: 100% 1.66em; }
        .contents__detail__comment--desc { margin-top: 1.25em; }
    }

.contents__detail__testimonials { display: flex; flex-wrap: wrap; }
.contents__detail__testimonials__list { width: 31.66%; margin-right: 2.51%; }
.contents__detail__testimonials__list:nth-child(3n) { margin-right: 0; }
.contents__detail__testimonials__list:nth-child(n+4) { margin-top: 5%; }
.contents__detail__testimonials--num { font-size: 1.4em; font-weight: bold; line-height: 1.7; margin: .357em auto .71em; color: #fff; padding: .175em 1em; max-width: 10.28em; width: 100%; background: #CC1A2C; border-radius: 10em; text-align: center; display: block; box-sizing: border-box; }
.contents__detail__testimonials--tlt { font-size: 2.6em; line-height: 1.423; padding: 0 .4em .42em; margin-bottom: .769em; text-align: center; background-image: url(../../img/business/sales/arrow-tlt2.png); background-repeat: no-repeat; background-position: center bottom; background-size: 100% 1.15em; }
.contents__detail__testimonials--pic { display: block; max-width: 14.3em; margin: 0 auto; }
.contents__detail__testimonials--desc { font-size: 1.6em; line-height: 1.7em; padding: 1.875em 1.875em 1.5em; background: #FEF7F8; border-radius: .333em; box-sizing: border-box; }
    
    @media screen and (max-width: 768px) {
        .contents__detail__testimonials { display: block; }
        .contents__detail__testimonials__list { width: 100%; margin-right: 0; }
        .contents__detail__testimonials__list:nth-child(n+2) { margin-top: 5em; }
        .contents__detail__testimonials--num { font-size: 1.3em; line-height: 1.2; margin: 0 auto; margin-bottom: .84em; padding: .2em 0; max-width: 8.77em;  }
        .contents__detail__testimonials--tlt { font-size: 1.8em; line-height: 1.5; padding: 0 1.1538em .72em; margin-bottom: 1.11em; text-align: center; background-image: url(../../img/business/sales/arrow-tlt_sp.png); background-repeat: no-repeat; background-position: center bottom; background-size: 100% 1.66em; }
        .contents__detail__testimonials--desc { padding: 1.875em 1.5625em 1.5em; margin: 0 -1.5625em; }
    }

.contents__detail__features { display: block; overflow: hidden; position: relative; border-radius: .5em; }
.contents__detail__features--block { position: relative; display: flex; flex-wrap: wrap; padding: 4em 5em; padding-left: 0; background: #FEF7F8; }
.contents__detail__features--num { width: 10.43%; margin-right: 4.34%; color: #CC1A2C; display: block; position: relative; text-align: center; }
.contents__detail__features--num .fn-txt { font-size: 1.6em; font-weight: 500; letter-spacing: .02em; line-height: 1.3; display: block; }
.contents__detail__features--num .fn-num { font-size: 4.8em; line-height: 1.3; display: block; }
.contents__detail__features--pic { width: 34.78%; margin-right: 3.5%; display: block; overflow: hidden; border-radius: .5em; }
.contents__detail__features--desc { width: 46.95%; }
.contents__detail__features--title { font-size: 2.6em; font-weight: bold; line-height: 1.46; margin-bottom: .53em; }
.contents__detail__features--cmn { font-size: 1.6em; line-height: 1.7; }
.contents__detail__features--cmn ul li { display: block; position: relative; padding-left: .8125em; }
.contents__detail__features--cmn ul li:not(:last-child) { margin-bottom: .8125em; }
.contents__detail__features--cmn ul li:before { content: ''; display: inline-block; width: .5em; height: .5em; position: absolute; left: 0; top: .6em; background: #CC1A2C; border-radius: 50%; }

    @media screen and (min-width: 768px) {
        .contents__detail__features--block:nth-child(2n) { background: #fff; }
        .contents__detail__features--block:nth-child(2n) .contents__detail__features--num { order: 1; }
        .contents__detail__features--block:nth-child(2n) .contents__detail__features--pic { order: 3; margin: 0; margin-left: 3.5%; }
        .contents__detail__features--block:nth-child(2n) .contents__detail__features--desc { order: 2; }
    }

    @media screen and (max-width: 768px) {
        .contents__detail__features { margin: 2.3em -2.5em 0; border-radius: 0; }
        .contents__detail__features--block { padding: 0; background: none; }
        .contents__detail__features--num { width: initial; margin: 0; text-align: left; position: absolute; left: 1.5em; top: 2em; color: #fff; z-index: 5; }
        .contents__detail__features--num .fn-num { font-size: 3.9em; line-height: 1.34; margin-top: -.25em; }
        .contents__detail__features--pic { width: 100%; margin: 0; border-radius: 0; }
        .contents__detail__features--pic:before { content: ''; display: block; width: 12.5em; height: 20.4em; position: absolute; left: 0; top: 0; background: url(../../img/top/crop-top-what_sp.png) no-repeat; background-size: cover; z-index: 2; }
        .contents__detail__features--desc { width: 100%; padding: 3em 2.5em 3.8em; box-sizing: border-box; }
        .contents__detail__features--title { font-size: 2em; line-height: 1.45; margin-bottom: .75em; }
        .contents__detail__features--cmn ul li:not(:last-child) { margin-bottom: .75em; }
        .contents__detail__features--block:nth-child(odd) .contents__detail__features--desc { background: #FEF7F8; }
    }

.contents__detail__website { display: block; position: relative; overflow: hidden; margin-top: 8em; border: .5em solid #F8F8F8; border-radius: .5em; }
.contents__detail__website--pic { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: block; overflow: hidden; border-radius: .5em; }
.contents__detail__website--pic img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.contents__detail__website--desc { max-width: 55em; padding: 4.8em 8em 5em; display: block; position: relative; z-index: 2; }
.contents__detail__website--tlte { font-size: 3.2em; font-weight: bold; line-height: 1.5; margin-bottom: .4em }
.contents__detail__website--cmn { font-size: 1.6em; line-height: 1.7; }
.contents__detail__website--btn { margin-top: 3.8em; }
.contents__detail__website--btn span:after { content: ''; display: inline-block; vertical-align: -.1em; width: 1em; height: 1em; margin-left: .333em; background-image: url(../../img/share/icon-link-w.svg); background-repeat: no-repeat; background-size: 100% 100%; transition: background-image .2s ease; }

    @media screen and (min-width: 768px) {
        .contents__detail__website--btn:hover span:after { background-image: url(../../img/share/icon-link-r.svg); }
    }

    @media screen and (max-width: 768px) {
        .contents__detail__website { margin-top: 5em; background: #F8F8F8; }
        .contents__detail__website--pic { position: relative; border-radius: 0; border-top-left-radius: .5em; border-top-right-radius: .5em; }
        .contents__detail__website--desc { max-width: 100%; padding: 3em 1.5em 3.5em; }
        .contents__detail__website--tlte { font-size: 2.3em; margin-bottom: .47em }
    }

.contents__detail__location { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; position: relative; }
.contents__detail__location--pic { width: 47.5%; display: block; overflow: hidden; border-radius: .5em; }
.contents__detail__location--desc { width: 47.5%; }
.contents__detail__location--title { font-size: 2.6em; font-weight: bold; line-height: 1.46em; margin-bottom: .73em; }
.contents__detail__location--cmn { font-size: 1.6em; line-height: 1.7; }
.contents__detail__location--info { display: block; position: relative; margin-top: 5.7em; }
.contents__detail__location--info dl { display: flex; flex-wrap: wrap; justify-content: space-between; border-top: 1px solid #ccc; }
.contents__detail__location--info dl:last-child { border-bottom: 1px solid #ccc; }
.contents__detail__location--info dl dt,
.contents__detail__location--info dl dd { font-size: 1.6em; line-height: 1.7; padding: 1.12em 0; }
.contents__detail__location--info dl dt { width: 11.25em; }
.contents__detail__location--info dl dd { width: calc( 100% - 12.5em ); }
.contents__detail__location--info dl dd strong { font-size: 1.625em; line-height: 1.046; letter-spacing: .02em; font-weight: bold; display: inline-block; }
.contents__detail__location--date { font-size: 1.6em; line-height: 1.7; text-align: right; margin-top: 1em; }

    @media screen and (max-width: 768px) {
        .contents__detail__location { display: block; }
        .contents__detail__location--pic,
        .contents__detail__location--desc { width: 100%; }
        .contents__detail__location--pic { margin-top: 4em; }
        .contents__detail__location--title { font-size: 1.6em; line-height: 1.5em; margin-bottom: .5em; }
        .contents__detail__location--info { margin-top: 3.7em; }
        .contents__detail__location--info dl dt,
        .contents__detail__location--info dl dd { font-size: 1.6em; line-height: 1.7; padding: 1.12em 0; }
        .contents__detail__location--info dl dt { font-weight: bold; width: 7em; }
        .contents__detail__location--info dl dd { width: calc( 100% - 7.9375em ); }
    }

.contents__detail__lcm { padding: 0 2.5em 10em; display: block; position: relative; border-radius: .5em; background: #F8F8F8; }
.contents__detail__lcm__mx { display: block; position: relative; margin: 0 -2.5em; margin-bottom: 8em; }
.contents__detail__lcm__mx--pic { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: block; overflow: hidden; }
.contents__detail__lcm__mx--pic img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.contents__detail__lcm__mx--desc { max-width: 55em; min-height: 28em; padding: 2.5em 7.4em; display: flex; justify-content: center; flex-direction: column; position: relative; z-index: 2; }
.contents__detail__lcm__mx--tlte { font-size: 3.2em; font-weight: bold; line-height: 1.5; margin-bottom: .4em; color: #CC1A2C; }
.contents__detail__lcm__mx--cmn { font-size: 1.6em; font-weight: bold; line-height: 1.7; }
.contents__detail__lcm__mx--circle { position: absolute; width: 45.4em; top: -5.5em; right: 9.2em; }

    @media screen and (max-width: 768px) {
        .contents__detail__lcm { padding: 0 2.5em 5.4em; margin: 0 -2.5em; border-radius: 0; }
        .contents__detail__lcm__mx { margin-bottom: calc( 80vw + 5em ); }
        .contents__detail__lcm__mx--desc { max-width: 100%; min-height: initial; padding: 2.5em 2.5em 11.46vw; text-align: center; }
        .contents__detail__lcm__mx--tlte { font-size: 2.3em; line-height: 1.5; margin-bottom: .43em; }
        .contents__detail__lcm__mx--circle { width: calc( 100vw - 5em ); top: auto; right: 2.5em; bottom: -80vw; }
    }

.contents__detail__lcm--note { font-size: 3.5em; line-height: 1.3; padding: .5714em 1.1428em; max-width: 29.71em; display: block; margin: 0 auto 1.1428em; background: #fff; border-radius: .1425em; box-sizing: border-box; }
.contents__detail__lcm__lists { display: block; position: relative; max-width: 96em; margin: 0 auto; }
.contents__detail__lcm__list { display: flex; flex-wrap: wrap; justify-content: space-between; }
.contents__detail__lcm__list:not(:last-child) { margin-bottom: 8em; }
.contents__detail__lcm__list--pic { width: 51.04%; display: block; overflow: hidden; border-radius: .5em; }
.contents__detail__lcm__list--desc { width: 37.5%; margin-right: 5.2%; }
.contents__detail__lcm__list--title { font-size: 2.6em; font-weight: bold; line-height: 1.46; margin-bottom: .53em; }
.contents__detail__lcm__list--cmn { font-size: 1.6em; line-height: 1.7; }
.contents__detail__lcm--btn { max-width: 57em; margin: 8em auto 0; }
.contents__detail__lcm--btn a { font-size: 2.1em; padding: 1.5em 1.42em; background: #fff; color: #CC1A2C; }
.contents__detail__lcm--btn a:after { width: 1.42em; height: 1.42em; right: 1.42em; background-image: url(../../img/share/arrow-link.svg); }
.contents__detail__lcm--btn span:after { content: ''; display: inline-block; vertical-align: -.1em; width: 1em; height: 1em; margin-left: .333em; background-image: url(../../img/share/icon-link-r.svg); background-repeat: no-repeat; background-size: 100% 100%; transition: background-image .2s ease; }

    @media screen and (min-width: 768px) {
        .contents__detail__lcm__list:nth-child(2n) { flex-direction: row-reverse; }
        .contents__detail__lcm__list:nth-child(2n) .contents__detail__lcm__list--desc { margin: 0; margin-left: 5.2%; }
        .contents__detail__lcm--btn a:hover { color: #fff; background: #CC1A2C; }
        .contents__detail__lcm--btn a:hover:after { background-image: url(../../img/share/arrow-link-w.svg); }
        .contents__detail__lcm--btn:hover span:after { background-image: url(../../img/share/icon-link-w.svg); }
    }

    @media screen and (max-width: 768px) {
        .contents__detail__lcm--note { font-size: 2em; line-height: 1.5; padding: 1.25em 1em .85em; margin-bottom: 1.5em; }
        .contents__detail__lcm__list { display: block; }
        .contents__detail__lcm__list:not(:last-child) { margin-bottom: 4.8em; }
        .contents__detail__lcm__list--pic { width: 100%; margin-bottom: 2em; }
        .contents__detail__lcm__list--desc { width: 100%; margin: 0; }
        .contents__detail__lcm__list--title { font-size: 1.6em; line-height: 1.5; margin-bottom: .5em; }
        .contents__detail__lcm--btn { margin-top: 5em; }
        .contents__detail__lcm--btn a { font-size: 1.8em; padding: 1.33em 1.11em; }
        .contents__detail__lcm--btn a:after { width: 1.11em; height: 1.11em; right: 1.11em; }
    }





/* custom Digital page
------------------------------------------------ */
    @media screen and (min-width: 768px) {
        .page-digital .section--link li:not(:last-child) { max-width: 33em; }
        .page-digital .contents__detail--break .contents__detail__head { width: 53.33%; }
        .page-digital .contents__detail--break .contents__detail--cover { width: 31.66%; margin-right: 12em; }
    }

/* custom Sales page
------------------------------------------------ */
.page-sales #related { margin-bottom: 20em; }

    @media screen and (max-width: 768px) {
        .page-sales #related { background: none; margin: 0; padding-bottom: 6em; z-index: 1; }
        .page-sales #related:before { content: ''; display: block; position: absolute; top: 0; left: 0; width: 8em; height: 13em; background: url(../../img/business/bg-related2.jpg) no-repeat bottom right; background-size: 100% 100%; box-shadow: none }
        .page-sales #related:after { content: ''; display: inline-block; width: 100%; height: 1em; position: absolute; left: 0; top: -1em; box-shadow: 0 0 15px rgba(102, 102, 102, .16); }
        .page-sales #more { padding-top: 0; background: none; z-index: 0; }
        .page-sales #more:before { content: ''; display: block; position: absolute; top: auto; left: 0; bottom: -4em; width: 100%; height: 88em; background: url(../../img/business/bg-more2.jpg) no-repeat bottom right; background-size: 100% 100%; box-shadow: none }
    }



