/* --------------------------------------------------------
* mutual-footer.css
--------------------------------------------------------*/

/* @group @variables */

[class*="m-footer-banner-list"] {
}

/* @end @variables */

/* @group @m-footer-banner-list */

[class*="m-footer-banner-list"] {
overflow: hidden;
display: grid;
gap: 3rem 0;
padding: 0 var(--x-padding-right) 5.25rem var(--x-padding-left);
content-visibility: auto;
contain: layout;
}

:where([class*="m-footer-banner-list"]) a {
overflow: hidden;
display: grid;
}

:where([class*="m-footer-banner-list"]) img {
width: 100%;
transition: transform .3s 0s var(--transition-cubic-bezier);
}

:where([class*="m-footer-banner-list"] a:hover) img,
:where([class*="m-footer-banner-list"] a:focus) img {
width: 100%;
transform: scale(1.05);
}

@media (width < 48em) { /* 0 -> 767px */

[class*="m-footer-banner-list"] {
contain-intrinsic-size: 360px 900px; /* Set an intrinsic size (width and height) */
}

}

/* @end @m-footer-banner-list */

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

/* @group @variables */

[class*="o-mutual-footer"] {
--mutual-footer-grid-template-columns: var(--x-padding-left) 1fr var(--x-padding-right);
--mutual-footer-grid-gap: 3rem 0;
}

@media (width >= 48em) { /* 768px -> * */

[class*="o-mutual-footer"] {
--mutual-footer-grid-template-columns: var(--x-padding-left) 1fr 3rem 2fr var(--x-padding-right);
--mutual-footer-grid-template-rows: auto 1fr auto;
}

}

/* @end @variables */

/* @group @o-mutual-footer */

[class*="o-mutual-footer"] {
overflow: hidden;
display: grid;
grid-template-columns: var(--mutual-footer-grid-template-columns);
grid-template-rows: var(--mutual-footer-grid-template-rows);
grid-template-columns: var(--mutual-footer-grid-template-columns);
gap: var(--mutual-footer-grid-gap);
padding-top: 3rem;
background-color: var(--color-very-dark-gray);
color: var(--color-white);
content-visibility: auto;
contain: layout;
}

@media (width < 48em) { /* 0 -> 767px */

[class*="o-mutual-footer"] {
contain-intrinsic-size: 360px 900px; /* Set an intrinsic size (width and height) */
}

}

[class*="a-footer-logo"] {
grid-column: 2;
grid-row: 1;
}

[class*="m-footer-nav"] {
grid-column: 2;
grid-row: 2;
}

[class*="m-footer-social-list"] {
grid-column: 2;
grid-row: 3;
}

[class*="a-footer-copyright"] {
grid-column: 1 / span 3;
grid-row: 4;
}

@media (width >= 48em) { /* 768px -> * */

[class*="a-footer-logo"] {
grid-column: 2;
grid-row: 1;
}

[class*="m-footer-nav"] {
grid-column: 4;
grid-row: 1 / span 2;
}

[class*="m-footer-social-list"] {
grid-column: 2;
grid-row: 2;
}

[class*="a-footer-copyright"] {
grid-column: 1 / span 5;
grid-row: 3;
}

}

/* @end @m-footer-info */

/* @end @o-mutual-footer */

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

/* @group @variables */

@media (width < 48em) { /* 0 -> 767px */

[class*="a-footer-logo"] {
--footer-logo-text-align: center;
}

}

/* @end @variables */

/* @group @a-footer-logo */

[class*="a-footer-logo"] {
text-align: var(--footer-logo-text-align);
}

[class*="a-footer-logo"] img {
width: auto;
height: 3rem;
filter: brightness(0) invert(1);
}

/* @end @a-footer-logo */

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

/* @group @variables */

@media (width >= 48em) { /* 768px -> * */

[class*="m-footer-nav"] {
--footer-nav-grid-template-columns: repeat(2, 1fr);
}

}

/* @end @variables */

/* @group @m-footer-nav */

[class*="m-footer-nav"] {
display: grid;
grid-template-columns: var(--footer-nav-grid-template-columns);
gap: 2.25rem;
}

/* @end @m-footer-nav */

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

/* @group @a-footer-nav-detail */

[class*="a-footer-nav-detail"] {
display: grid;
align-items: start;
align-content: start;
grid-auto-flow: row;
grid-auto-columns: 1fr;
gap: 1.125rem;
}

/* @end @a-footer-nav-detail */

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

/* @group @variables */

[class*="a-footer-nav-label"] {
--font-size: 1.125rem;
--line-height: 1.33333333;
--font-weight: 500;
--color: var(--color-white);
}

/* @end @variables */

/* @group @a-footer-nav-label */

[class*="a-footer-nav-label"] {
padding: 0 0 .75rem;
box-shadow: 0 1px 0 0 var(--color-dimgray);
font-family: var(--font-family-heading);
}

/* @end @a-footer-nav-label */

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

/* @group @variables */

@media (width < 48em) { /* 0 -> 767px */

[class*="a-footer-nav-list"] {
--nav-list-grid-template-columns: repeat(2, 1fr);
}

}

/* @end @variables */

/* @group @a-footer-nav-list */

[class*="a-footer-nav-list"] {
display: grid;
justify-content: var(--nav-list-justify-content);
align-items: var(--nav-list-align-items);
align-content: var(--nav-list-align-content);
grid-template-columns: var(--nav-list-grid-template-columns);
gap: .75rem;
}

[class*="a-footer-nav-list"] li {
padding-left: 1.125rem;
background-image: url('../img/sprite-svg.svg#icon-footer-arrow-right');
background-position: 0 .375rem;
background-repeat: no-repeat;
background-size: .75rem .75rem;
}

/* @end @a-footer-nav-list */

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

/* @group @variables */

[class*="m-footer-info"] {
--footer-info-grid-template-rows: 1fr 2.25rem auto 2.25rem auto .75rem;
}

@media (width >= 48em) { /* 768px -> * */

[class*="m-footer-info"] {
--footer-info-justify-content: space-between;
--footer-info-grid-template-columns: auto 1.5rem 1fr;
--footer-info-grid-template-rows: 1fr 2.25rem auto .75rem auto;
}

}

/* @end @variables */

/* @group @m-footer-info */

[class*="m-footer-info"] {
box-sizing: border-box;
display: grid;
justify-content: var(--footer-info-justify-content);
grid-template-columns: var(--footer-info-grid-template-columns);
grid-template-rows: var(--footer-info-grid-template-rows);
}

/* @end @m-footer-info */

/* @group @m-footer-info */

[class*="m-footer-info"] {
padding-right: var(--footer-in-padding-right);
padding-left: var(--footer-in-padding-left);
}

/* @end @m-footer-info */

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

/* @group @variables */

[class*="a-footer-copyright"] {
--copyright-text-align: center;
}

@media (width >= 48em) { /* 768px -> * */

/*[class*="a-footer-copyright"] {
--copyright-text-align: right;
}

[class*="a-footer-copyright-form"] {
--copyright-text-align: center;
}*/

}

/* @end @variables */

/* @group ＠a-footer-copyright */

[class*="a-footer-copyright"] {
align-self: end;
overflow: hidden;
margin-top: 3rem;
padding: 1.5rem var(--x-padding-right) 1.5rem var(--x-padding-left);
background: red;
background-color: var(--color-white);
font-size: .75rem;
line-height: 1.5;
color: var(--color-text);
text-transform: uppercase;
word-break: keep-all;
overflow-wrap: anywhere;
text-align: var(--copyright-text-align);
}

/* @end @a-footer-copyright */

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

/* @group @variables */

[class*="m-footer-social-list"] {
--footer-social-list-justify-content: center;
--link-color: var(--color-white-action);
--link-action-color: var(--color-white);
--link-active-color: var(--color-white-active);
}

[class*="a-footer-social-link"] {
--link-color: var(--color-white-action);
--link-action-background-color: hsl(220deg 4% 30%);
--link-active-background-color: hsl(220deg 4% 40%);
--link-action-color: var(--color-white);
--link-active-color: var(--color-white-active);
--icon-width: 1.5rem;
--icon-height: 1.5rem;
}

@media (width < 30em) { /* 0 -> 767px */

[class*="m-footer-social-list"] {
--footer-social-list-grid-template-columns: repeat(3, 3rem);
}

}

@media (width >= 30em) and (width < 48em) { /* 480px -> 767px */

[class*="m-footer-social-list"] {
--footer-social-list-grid-template-columns: repeat(auto-fit, minmax(3rem, 3rem));
}

}

@media (width >= 48em) { /* 768px -> * */

[class*="m-footer-social-list"] {
--footer-social-list-justify-content: left;
--footer-social-list-grid-template-columns: repeat(auto-fit, minmax(3rem, 3rem));
}

}

/* @end @variables */

/* @group @m-footer-social-list */

[class*="m-footer-social-list"] {
align-self: start;
display: grid;
justify-content: var(--footer-social-list-justify-content);
align-items: center;
grid-template-columns: var(--footer-social-list-grid-template-columns);
gap: .75rem;
}

[class*="m-footer-social-list"] li {
display: contents;
text-align: center;
}

[class*="a-footer-social-link"] {
display: grid;
justify-content: center;
align-items: center;
width: 3rem;
height: 3rem;
margin-inline: auto;
transition: background-color .3s 0s var(--transition-cubic-bezier), color .3s 0s var(--transition-cubic-bezier);
}

[class*="a-footer-social-link"]:focus {
background-color: var(--link-action-background-color);
}

[class*="a-footer-social-link"]:active {
background-color: var(--link-active-background-color);
}

[class*="m-footer-social-list"] svg {
width: 1.5rem;
height: 1.5rem;
fill: currentColor;
}

@media (hover: hover) {

[class*="a-footer-social-link"]:hover {
background-color: var(--link-action-background-color);
}

}

/* @end @m-footer-social-list */

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

/* @group @variables */

:root {
--page-top-left: var(--x-padding-left);
--page-top-bottom: 1.875rem;
}

[class*="a-page-top"] {
--page-top-icon-size: 3.375rem;
--link-background-color: hsl(234.2deg 64.6% 40.6% / 50%);
--page-top-opacity: 0;
--page-top-transition: opacity .3s 0s var(--transition-cubic-bezier);
--page-top-link-transition: background-color 0s 0s var(--transition-cubic-bezier);
}

[class*="is-fit-sticky"] [class*="a-page-top"] {
--page-top-opacity: 1;
}

[class*="a-page-top"] a {
--page-top-link-transition: background-color .3s 0s var(--transition-cubic-bezier);
}

[class*="a-page-top"] a:hover,
[class*="a-page-top"] a:focus {
--link-after-background-color: hsl(234.2deg 64.6% 40.6% / 85%);
}

[class*="is-foot-sticky"] [class*="a-page-top"] {
--link-background-color: hsl(220deg 5% 50% / 87.5%);
}

[class*="is-foot-sticky"] [class*="a-page-top"] a:hover,
[class*="is-foot-sticky"] [class*="a-page-top"] a:focus {
--link-after-background-color: hsl(220deg 5% 50% / 62.5%);
}

/* @end @variables */

/* @group @a-page-top */

:where([class*="a-page-top"]) {
box-sizing: border-box;
position: fixed;
z-index: 3;
z-index: 11;
bottom: var(--page-top-bottom);
left: var(--page-top-left);
width: var(--page-top-icon-size);
height: var(--page-top-icon-size);
border-radius: .1875rem;
opacity: var(--page-top-opacity);
transition: var(--page-top-transition);
transform: var(--page-top-transform);
}

[class*="a-page-top"] a {
position: relative;
display: grid;
place-items: center;
width: var(--page-top-icon-size);
height: var(--page-top-icon-size);
background-color: var(--link-background-color);
border-radius: inherit;
transition: var(--page-top-link-transition);
-webkit-backdrop-filter: blur(.125rem);
backdrop-filter: blur(.125rem);
}

@media print {[class*="a-page-top"] {display: none;}}

[class*="a-page-top"] a:before,
[class*="a-page-top"] a:after {
content: '';
box-sizing: border-box;
}

[class*="a-page-top"] a:before {
position: relative;
z-index: 2;
inset: 0;
display: grid;
width: var(--page-top-icon-size);
height: var(--page-top-icon-size);
background-image: url('../img/sprite-svg.svg#icon-pagetop');
background-size: 1.875rem 1.875rem;
background-position: center center;
background-repeat: no-repeat;
}

[class*="a-page-top"] a:after {
position: absolute;
z-index: -1;
inset: 0;
display: block;
width: var(--page-top-icon-size);
height: var(--page-top-icon-size);
background-color: var(--link-after-background-color);
border-radius: inherit;
transition: transform .3s 0s var(--transition-cubic-bezier);
transform: scaleY(0);
transform-origin: top;
}

[class*="a-page-top"] a:hover:after,
[class*="a-page-top"] a:focus:after {
transform: scaleY(1);
transform-origin: bottom;
background-origin: bottom;
}

/* @end @a-page-top */