@charset 'utf-8';
/*
 * name:compliance-child.css
 * author:sovanda nulo
*/

/* compliance-child
------------------------------------------------ */


    @media screen and (min-width: 768px) {
        #contents { margin-bottom: 0; }
        .contents--title { width: 100%; }
    }

    @media screen and (max-width: 768px) {
        #more { background-image: none; z-index: 0; }
        #more:before { content: none; }
        #more:after { content: ''; display: block; position: absolute; bottom: 0; left: 0; width: 100vw; height: 118em; background: url(../../img/corporate/compliance/bg-more.jpg) no-repeat bottom right; background-size: cover; box-shadow: none; }
    }

.contents--compliance { padding-top: 7em; }
    
    @media screen and (max-width: 768px) {
        .contents--compliance { margin-top: -5.5em; padding-top: 4em; box-shadow: 0 0 15px rgba(102, 102, 102, .16); }
    }
    
.compliance__cols { display: block; position: relative; }
.compliance__cols--head { font-size: 1.8em; line-height: 1.5; font-weight: bold; text-align: center; margin-bottom: 2em; }
.compliance__col__child--desc ol + p,
.compliance__col__child--desc ul + p,
.compliance__col__child--desc p + ol,
.compliance__col__child--desc p + ul { margin-top: 1em; }
.compliance__col__child--desc ol li { list-style: number; margin-left: 1em; }
.compliance__col__child--desc ol li:not(:last-child),
.compliance__col__child--desc ul li:not(:last-child) { margin-bottom: .5em; }
.compliance__col__child--desc ul { display: block; }
.compliance__col__child--desc ul li { display: block; position: relative; padding-left: .8125em; }
.compliance__col__child--desc ul li:not(:last-child) { margin-bottom: .8125em; }
.compliance__col__child--desc ul li:before { content: ''; display: inline-block; width: .5em; height: .5em; position: absolute; left: 0; top: .6em; background: #CC1A2C; border-radius: 50%; }
.compliance__col__child--desc p + small { margin-top: .5em; }
.compliance__col__child--desc small { font-size: .75em; }
.compliance__col__child--desc small.c-note { display: block; padding-left: 1.2em; text-indent: -1.2em; }
.compliance__col__child--desc a { color: #CC1A2C; text-decoration: underline; }
.compliance__col__child--desc a.c-linelink { text-decoration: none; }
.compliance__col__child--desc a .i-pdf { display: inline-block; width: .84em; height: 1em; margin: 0 .1em; background: url(../../img/share/icon-pdf-R.svg) no-repeat; background-size: 100% 100%; }
.compliance__col__child--desc .d-more { display: block; position: relative; padding-left: 1em; }
.compliance__col__child--desc .d-more:not(:last-child) { margin-bottom: .5em; }
.compliance__col__child--desc .d-more:before { content: ''; display: inline-block; width: .5em; height: .5em; position: absolute; left: 0; top: .6em; background: #CC1A2C; border-radius: 50%; }
.compliance__col__child--desc .d-more dt { font-weight: bold; display: block; }
.compliance__col__child--desc .d-more2 { display: block; position: relative; }
.compliance__col__child--desc .d-more2 dt { font-size: 1.125em; font-weight: bold; margin-bottom: .5em; }
.compliance__col__child--desc .d-more2 dd ol li:not(:last-child),
.compliance__col__child--desc .d-more2 dd ul li:not(:last-child) { margin-bottom: .75em; }
.compliance__col__child--desc .bt-btn { font-weight: bold; min-width: 9.75em; margin-top: 1em; }
.compliance__col__child--desc .bt-btn a { text-decoration: none; display: inline-block; border: 1px solid #CC1A2C; color: #CC1A2C; padding: .3em 1.2em .4em; border-radius: .33em; transition: linear .25s; text-align: center; }

    @media screen and (min-width: 768px) {
        .compliance__cols { margin-top: 4em; padding: 2em 0; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
        .compliance__col { display: flex; flex-wrap: wrap; align-items: flex-start; }
        .compliance__col:not(:last-child) { border-bottom: 1px solid #ccc; padding-bottom: 2em; margin-bottom: 2em; }
        .compliance__col--title { font-size: 2.1em; font-weight: bold; line-height: 1.5; width: 25%; padding-right: 2.14em; box-sizing: border-box; }
        .compliance__col__childs { display: block; width: 75%; }
        .compliance__col__child { display: flex; flex-wrap: wrap; }
        .compliance__col__child:not(:last-child) { border-bottom: 1px solid #ccc; padding-bottom: 2em; margin-bottom: 2em; }
        .compliance__col__child--title { font-size: 1.8em; font-weight: bold; line-height: 1.51; width: 39.5%; padding-right: 2.77em; box-sizing: border-box; }
        .compliance__col__child--desc { width: 60.5%; font-size: 1.6em; line-height: 1.7; }
        .compliance__col__child--desc p + p { margin-top: 1.5625em; }
        .compliance__col__child--desc a:hover { text-decoration: none; }
        .compliance__col__child--desc .d-more2-top { margin-top: 2em; }
        .compliance__col__child--desc .bt-btn a:hover { color: #fff; background: #CC1A2C; }

        .compliance__cols2 { border: none; padding: 0; }
        .compliance__cols--body { padding: 2em 0; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }

        .compliance__col__childsfull,
        .compliance__col__childfull,
        .compliance__col__child--descfull,
        .compliance__col__child--titlefull { width: 100%; }
        .compliance__col__childfull .compliance__col__child--title { width: 25%; padding-right: 2.14em; }
        .compliance__col__childfull .compliance__col__child--desc { width: 75%; }
    }

    @media screen and (max-width: 768px) {
        .compliance__cols { margin-top: 2em; }
        .compliance__cols,
        .compliance__col { display: block; position: relative; }
        .compliance__cols--head { font-size: 1.6em; line-height: 1.7; margin-bottom: 1.5625em; }
        .compliance__col--title { font-size: 1.8em; font-weight: bold; line-height: 1.5; padding: 1em 1.11em; background: #F8F8F8; }
        .compliance__col__childs { display: block; position: relative; border-bottom: 1px solid #ccc; }
        .compliance__col__child { padding: 2em 0; display: block; position: relative; border-top: 1px solid #ccc; }
        .compliance__col__child--title,
        .compliance__col__child--desc { font-size: 1.6em; line-height: 1.7; padding: 0; }
        .compliance__col__child--title { margin-bottom: .5em; }
        .compliance__col__child--desc p + p { margin-top: 1.25em; }
        .compliance__col__child--desc .bt-btn { margin-top: .75em; }
        .compliance__col__child--desc .d-more2 dt { font-size: .875em; }
    }


/* custom page-professional page
------------------------------------------------ */
.page-professional .compliance__cols + .contents__detail--cmn { margin-top: 3.75em; }
.professional--banner { display: flex; flex-wrap: wrap; margin-top: 3.2em; }
.professional--banner li { display: inline-block; margin-right: 3em; }
.professional--banner li a { display: block; }
.professional--banner li a img { height: 6.2em; width: auto; }

    @media screen and (min-width: 768px) {
        .page-professional .contents__detail:last-child { margin-top: -7em; }

        .page-professional .contents__detail--break .contents__detail__head { width: 74.16%; }
        .page-professional .contents__detail--break .contents__detail--cover { width: 20.83%; }

        .page-professional .compliance__col--title { width: 20%; }
        .page-professional .compliance__col__childs { width: 80%; }
        .page-professional .compliance__col__child--title { width: 34.375%; }
        .page-professional .compliance__col__child--titlefull { width: 100%; }
        .page-professional .compliance__col__child--desc { width: 65.625%; }

        .professional--banner li a:hover { opacity: .8; }          

    }

    @media screen and (max-width: 768px) {
        .page-professional .contents__detail:last-child { margin-top: -2em; }
        .page-professional .contents__detail--break .contents__detail--cover { width: 66.67vw; margin: 0 auto; margin-top: 2.2em; }
        .page-professional .compliance__cols + .contents__detail--cmn { margin-top: 2.5em; }
        .professional--banner { margin-top: 2.4em; }
        .professional--banner li { display: block; }
        .professional--banner li:not(:last-child) { margin-bottom: 2em; }
    }

/* custom page-environmental page
------------------------------------------------ */
.page-environmental .compliance__cols { margin: 0; }

    @media screen and (min-width: 768px) {
        .page-environmental .compliance__cols .compliance__col__child--title { width: 33.33%; }
        .page-environmental .compliance__cols .compliance__col__child--desc:not(.compliance__col__child--descfull) { width: 66.66%; }
    }

/* custom page-privacy page
------------------------------------------------ */
.page-privacy .contents__detail:nth-of-type(3) .contents__detail--cmn h6 { margin-bottom: .65em; }
.page-privacy .privacy__links { display: block; position: relative; margin-top: 4em; }
.page-privacy .privacy__links li { font-size: 1.6em; line-height: 1.7; display: block; position: relative; padding-left: 1.125em; }
.page-privacy .privacy__links li:not(:last-child) { margin-bottom: .8125em; }
.page-privacy .privacy__links li:before { content: ''; display: inline-block; width: .380625em; height: .5875em; position: absolute; left: 0; top: .5em; transform: rotate(90deg); background: url(../../img/share/arrow-swipe-red.svg) no-repeat; background-size: 100% 100%; }
.page-privacy .privacy__links li a { display: inline-block; color: #CC1A2C; }
.page-privacy .privacy__infos { display: block; position: relative; margin-top: 9em; }
.page-privacy .privacy__info { display: block; position: relative; }
.page-privacy .privacy__info:not(:last-child) { margin-bottom: 9em; }
.page-privacy .privacy__info__subs { display: block; position: relative; margin-top: 5.4em; }
.page-privacy .privacy__info__sub { display: block; position: relative; }
.page-privacy .privacy__info__sub:not(:last-child) { margin-bottom: 5.4em; }
.page-privacy .privacy__data { margin-bottom: 6em; }
.page-privacy .privacy__info--required .compliance__col__child--desc p + p { margin-top: .75em; }
.page-privacy .privacy__info--required .compliance__col__child--desc ul li:not(:last-child) { margin-bottom: .5em; }
.page-privacy .privacy__contact .popup-btn { font-size: .57em; font-weight: normal; display: block; color: #CC1A2C; }
.page-privacy .contents__detail__popup .contents__detail--cmn.bor-top { margin-top: 1.5em; margin-bottom: 2.25em; padding-top: 1.875em; border-top: 1px solid #ccc; }
.page-privacy .contents__detail__values--table thead tr th:nth-of-type(3) { width: 6.3em; }
.page-privacy .contents__detail__values--table tbody tr td:nth-of-type(2) { text-align: center; }


    @media screen and (min-width: 768px) {
        .page-privacy .section--link li { max-width: 33em; }
        .page-privacy .contents__detail--break .contents__detail__head { width: 74.16%; }
        .page-privacy .contents__detail--break .contents__detail__head .contents__detail--cmn p:nth-child(n+3) { width: calc( 100% + 34.9% ); }
        .page-privacy .contents__detail--break .contents__detail--cover { width: 20.83%; }
        .page-privacy .privacy__contact .compliance__col__child--title { font-size: 2.1em; }
        .page-privacy .privacy__info--required .compliance__col__child--title { width: 39.55%; }
        .page-privacy .privacy__info--required .compliance__col__child--desc { width: calc( 100% - 39.55% ); }
        .page-privacy .privacy__contact .popup-btn { margin-top: .35em; }
        .page-privacy .contents__detail__values--table tbody tr th, 
        .page-privacy .contents__detail__values--table tbody tr td { padding-right: 1.1em; }
        .page-privacy .contents__detail__values--table tbody tr td:nth-of-type(2) { padding-left: 1.25em; }
    }

    @media screen and (max-width: 768px) {
        .page-privacy .contents__detail:nth-of-type(3) .contents__detail--cmn h6 { margin-top: 2.5em; margin-bottom: .33em; }
        .page-privacy .contents__detail--break .contents__detail--cover { width: 66.67vw; margin: 0 auto; margin-top: 2.2em; }
        .page-privacy .privacy__links { margin-top: 2.3em; }
        .page-privacy .privacy__links li { font-size: 1.4em; }
        .page-privacy .privacy__infos { margin-top: 4.5em; }
        .page-privacy .privacy__info:not(:last-child) { margin-bottom: 4em; }
        .page-privacy .privacy__info__subs { margin-top: 3.4em; }
        .page-privacy .privacy__info__sub:not(:last-child) { margin-bottom: 3.4em; }
        .page-privacy .privacy__data { margin-bottom: 4em; }
        .page-privacy .privacy__data .contents__detail__values--frame { width: 74.6em; }
        .page-privacy .privacy__data .contents__detail__values--table thead tr th:nth-of-type(3) { width: 5.5em; }
        .page-privacy .privacy__data .contents__detail__values--table tbody tr td:last-child { text-align: center; }
        .page-privacy .privacy__contact .popup-btn { font-size: .75em; margin-left: .35em; display: inline-block; }
    }


/* custom page-health page
------------------------------------------------ */
.page-health .health__data { display: block; position: relative; margin-top: 5.5em; }
.page-health .health__data--block { display: block; position: relative; }
.page-health .health__data--block:not(:last-child) { margin-bottom: 6em; }
.page-health .contents__detail__values { margin-top: 3.5em; }
.page-health .health--flow { display: block; position: relative; max-width: 80em; margin: 0 auto; margin-top: 5.4em; }
.page-health .health__declar { display: block; position: relative; padding: 5em 10em; margin-top: 3.4em; background: #FEF7F8; border-radius: .5em; }
.page-health .health__declar--tlt { font-size: 4.8em; line-height: 1.39; font-weight: normal; color: #CC1A2C; margin-bottom: .27em; }
.page-health .health__declar--desc { font-size: 2.1em; line-height: 1.7; }

    @media screen and (max-width: 768px) {
        .page-health .health__data { display: block; position: relative; margin-top: 3.5em; }
        .page-health .health__data--block:not(:last-child) { margin-bottom: 4em; }
        .page-health .contents__detail__values { margin-top: 1.5em; }
        .page-health .health--flow { margin-top: 3.4em; }
        .page-health .health--flow .contents__detail__values--frame { width: 50em; }
        .page-health .health__declar { padding: 4em 2.5em; margin: 0 -2.5em; margin-top: 2.4em; border-radius: 0; }
        .page-health .health__declar--tlt { font-size: 2em; line-height: 1.5; margin-bottom: .5em; }
        .page-health .health__declar--desc { font-size: 1.6em; line-height: 1.7; }
    }


/* custom page-multi-stakeholder page
------------------------------------------------ */
.page-multi-stakeholder .compliance__cols { margin: 7em 0 6em; }
    
    @media screen and (max-width: 768px) {
        .page-multi-stakeholder .compliance__cols { margin: 5em 0 4em; }
    }

/* custom page-charter page
------------------------------------------------ */

    @media screen and (max-width: 768px) {
        .page-charter .compliance__cols { margin: 5.7em 0 0; }
    }

/* custom page-compliance page
------------------------------------------------ */
.page-compliance .contents--block { padding-bottom: 0; }
.page-compliance .contents-links__menu { padding: 6em 9em 13em; box-shadow: none; border-radius: 0; }
.page-compliance .contents-links__menu--lists li { width: 31.66%; margin-right: 2.5%; border: none; border-radius: .5em; }
.page-compliance .contents-links__menu--lists li:before { content: none !important; }
.page-compliance .contents-links__menu--lists li:nth-child(3n) { margin-right: 0; }
.page-compliance .contents-links__menu--lists li:nth-child(n+4) { margin-top: 2.5%; }
.page-compliance .contents-links__menu--lists li a { padding: 1em 4em 1em 1.5em; }
.page-compliance .contents-links__menu--lists li span { font-size: 1.8em; }

    @media screen and (min-width: 768px) {
        .page-compliance #contents { margin-bottom: 20em; }
        .page-compliance .contents-links__menu--lists li a { min-height: 7.3em; }
    }

    @media screen and (max-width: 768px) {
        .page-compliance #more { background-image: url(../../img/business/bg-more.jpg); }
        .page-compliance #more:before { content: ''; }
        .page-compliance #more:after { content: none; }

        .page-compliance .contents--block { padding-bottom: 6em; }
        .page-compliance .contents-links__menu { padding: 6em 2.5em; margin: 0 -2.5em; }
        .page-compliance .contents-links__menu--lists li { width: 100%; margin: 0; }
        .page-compliance .contents-links__menu--lists li:nth-child(n+2) { margin-top: 1.5em; }
        .page-compliance .contents-links__menu--lists li a { padding: 1.2em 4em 1.2em 2em; }
        .page-compliance .contents-links__menu--lists li a:after { right: 2em; }
        .page-compliance .contents-links__menu--lists li span { font-size: 1.6em; line-height: 1.7; }
    }

/* custom page-contribution page
------------------------------------------------ */
.page-contribution .contents__detail__case { padding-bottom: 0 !important; border: none !important; }
.page-contribution .contents__detail__case:not(:last-child) { margin-bottom: 10em; }

    @media screen and (max-width: 768px) {
        .page-contribution .contents__detail__case:not(:last-child) { margin-bottom: 5em; }
    }




