/* page-footer - common --------------------------------------------------------*/

/* @group @variables */

[class*="o-page-footer-primo"] {
--page-footer-background-color: hsl(65deg 48% 95%);
}

/* @end @variables */

/* @group @o-page-footer */

[class*="o-page-footer"] {
position: relative;
background-color: var(--page-footer-background-color);
font-size: .875erm;
line-height: 1.42857143;
color: hsl(0deg 0% 27%);
content-visibility: auto;
}

[class*="o-page-footer"] a {
text-decoration: none;
}

[class*="o-page-footer"] h2,
[class*="o-page-footer"] h3 {
margin: 0;
font-size: 1rem;
line-height: 1.5;
font-weight: 600;
font-variation-settings-strong: "wght" 600;
}

/* @end @o-page-footer */

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

/* @group @variables */

[class*="a-page-footer-icon-primary"] {
}

[class*="a-page-footer-icon-secondary"] {
--page-footer-icon-padding-right: var(--x-padding-right);
}

/* @end @variables */

/* @group @a-page-footer-icon */

[class*="a-page-footer-icon"] {
display: grid;
grid-auto-flow: column;
justify-content: end;
/*padding-right: var(--page-footer-icon-padding-right);
padding-left: var(--page-footer-icon-padding-left);*/
}

[class*="a-page-footer-icon"] svg {
width: auto;
height: var(--footer-icon-height);
height: clamp(4.75rem, 2.821rem + 9.64vw, 11.5rem); /* 72〜184 / 320〜1440 */
fill: hsl(65deg 79% 49%);
}

/* @end @a-page-footer-icon */

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

/* @group @m-page-footer-body */

[class*="m-page-footer-body"] {
display: grid;
grid-auto-flow: row;
gap: 3.75rem;
padding-top: 3.75rem;
padding-right: var(--x-padding-right);
padding-bottom: 4.5rem;
padding-left: var(--x-padding-left);
background-color: hsl(65deg 79% 49%);
}

/* @end @m-page-footer-body */

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

/* @group @m-page-footer-inner */

[class*="m-page-footer-inner"] {
display: grid;
grid-auto-flow: row;
gap: 3rem;
}

/* @end @m-page-footer-inner */

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

/* @group @variables */

@media all and (max-width:47.9375em) {

[class*="m-page-footer-head"] {
--page-footer-head-grid-auto-flow: row;
--page-footer-head-justify-content: center;
}

}

@media all and (min-width: 48em) {

[class*="m-page-footer-head"] {
--page-footer-head-justify-content: space-between;
--page-footer-head-grid-auto-flow: column;
}

}

/* @end @variables */

/* @group @m-page-footer-head */

[class*="m-page-footer-head"] {
display: grid;
justify-content: var(--page-footer-head-justify-content);
grid-auto-flow: var(--page-footer-head-grid-auto-flow);
gap: 1.5rem;
text-align: center;
}

/* @end @m-page-footer-head */

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

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

[class*="a-page-footer-logo"] img {
width: auto;
height: 2.5rem;
}

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

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

/* @group @a-page-footer-application */

[class*="a-page-footer-application"] {
display: grid;
justify-content: center;
grid-template-columns: repeat(2, 10rem);
gap: 1rem;
}

/* @end @a-page-footer-application */

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

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

@media all and (max-width:47.9375em) {

[class*="a-footer-nav-toggle"] {
display: grid;
align-items: center;
grid-template-columns: 1fr auto;
gap: .75rem;
margin-right: var(--footer-in-padding-right);
margin-left: var(--footer-in-padding-left);
padding: 1.125rem .75rem;
background-color: transparent;
cursor: pointer;
transition: var(--link-premier-transition);
}

[class*="a-footer-nav-toggle"]:hover,
[class*="a-footer-nav-toggle"]:focus {
background-color: hsl(65deg 79% 54%);
color: hsl(0deg 0% 27%);
}

[class*="a-footer-toggle-label"] {
grid-column: 1;
grid-row: 1;
}
 
[class*="a-footer-toggle-icon"] {
grid-column: 2;
grid-row: 1;
width: .75rem;
height: auto;
transition: var(--transform-transition);
}
input:checked + h3 [class*="a-footer-toggle-icon"] {
transform: scale(1, -1);
}

}

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

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

/* @group @variables */

[class*="m-footer-nav-detail"] {
--opacity-transition: opacity var(--transition-time) 0s var(--transition-cubic-bezier);
}

@media all and (min-width:48em) {

[class*="m-footer-nav-detail"] {
--footer-nav-detail-gap: 1rem;
}

}

/* @end @variables */

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

[class*="m-footer-nav-detail"] {
display: grid;
align-items: start;
align-content: start;
gap: var(--footer-nav-detail-gap);
transition: var(--link-premier-transition);
}

@media all and (max-width:47.9375em) {

[class*="m-footer-nav-detail"] {
border-bottom: 1px dotted hsl(0deg 0% 20%); 
}
input:checked + [class*="m-footer-nav-detail"] {
background-color: hsla(220, 20%, 15%, 1);
}

}

@media all and (min-width:48em) {

[class*="m-footer-nav-detail"] h3 {
font-size: 1.125rem;
line-height: 1.33333333;
}

}

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

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

/* @group @variables */

@media all and (max-width:47.9375em) {

[class*="m-page-footer-nav"] {
--footer-nav-border-top: 1px dotted hsl(0deg 0% 20%);
}

}

@media all and (min-width: 48em) {

[class*="m-page-footer-nav"] {
--footer-nav-grid-template-columns: repeat(2, 1fr);
--footer-nav-gap: 1.875rem;
--footer-nav-list-gap: .75rem;
}

}

@media all and (min-width: 62em) {

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

}

/* @end @variables */

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

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

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

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

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

@media all and (max-width:47.9375em) {

[class*="a-page-footer-nav-list"] {
box-sizing: border-box;
overflow: hidden;
max-height: 0;
padding-left: 1rem;
border-top: 1px dotted transparent;
transition: var(--max-height-border-transition);
}
input:checked ~ [class*="a-page-footer-nav-list"] {
max-height: 50rem;
border-top-color: hsl(0deg 0% 20%);
}

[class*="a-page-footer-nav-list"] a {
display: grid;
align-items: center;
height: 3rem;
padding: 1rem;
}

[class*="a-page-footer-nav-list"] a:hover,
[class*="a-page-footer-nav-list"] a:focus {
background-color: hsl(65deg 79% 54%);
}

[class*="a-page-footer-nav-list"] li:not(:last-of-type) {
border-bottom: 1px dotted hsl(0deg 0% 20%);
}

}

[class*="a-page-footer-nav-list"] a {
color: hsl(0deg 0% 20%);
transition: var(--link-premier-transition);
}

[class*="a-page-footer-nav-list"] a:hover,
[class*="a-page-footer-nav-list"] a:focus {
color: hsl(0deg 0% 33%);
}

[class*="a-page-footer-nav-list"] {
display: grid;
gap: var(--footer-nav-list-gap);
}

@media all and (min-width: 48em) {

[class*="a-page-footer-nav-list"] a {
border-bottom: 1px solid transparent;
}

[class*="a-page-footer-nav-list"] a:hover,
[class*="a-page-footer-nav-list"] a:focus {
border-bottom-color: hsl(0deg 0% 36%);
}

}

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

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

/* @group @variables */

[class*="m-page-footer-more"] {
--footer-more-grid-auto-flow: row;
}

@media all and (min-width: 48em) {

[class*="m-page-footer-more"] {
--footer-more-grid-auto-flow: column;
--footer-more-padding-top: calc(1.5rem - 1px);
--footer-more-border-top: 1px solid hsl(0deg 0% 20%);
}

}

/* @end @variables */

/* @group @m-page-footer-more */

[class*="m-page-footer-more"] {
display: grid;
align-items: center;
grid-auto-flow: var(--footer-more-grid-auto-flow);
gap: 1.5rem;
padding-top: var(--footer-more-padding-top);
border-top: var(--footer-more-border-top);
}

/* @end @m-page-footer-more */

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

/* @group @variables */

[class*="a-page-footer-copyright"] {
--footer-copyright-font-size: .75erm;
--footer-copyright-line-height: 1.33333333;
}

@media all and (max-width:47.9375em) {

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

}

@media all and (min-width: 48em) {

[class*="a-page-footer-copyright"] {
--footer-copyright-font-size: .875erm;
--footer-copyright-line-height: 1.42857143;
}

}

/* @end @variables */

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

[class*="a-page-footer-copyright"] {
grid-column-start: -1;
display: grid;
text-align: var(--footer-copyright-text-align);
font-size: var(--footer-copyright-font-size);
line-height: var(--footer-copyright-line-height);
word-break: keep-all;
overflow-wrap:anywhere;
text-transform: uppercase;
}

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

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

/* @group @variables */

[class*="a-page-footer-sns"] {
--footer-sns-justify-content: center;
--footer-sns-gap: 1.5rem;
}

@media all and (min-width: 48em) {

[class*="a-page-footer-sns"] {
--footer-sns-justify-content: end;
}

}

/* @end @variables */

/* @group @a-page-footer-sns */

[class*="a-page-footer-sns"] {
display: grid;
grid-auto-flow: column;
justify-content: var(--footer-sns-justify-content);
gap: var(--footer-sns-gap);
}

[class*="a-page-footer-sns"] a {
color: inherit;
transition: var(--link-proto-transition);
}

[class*="a-page-footer-sns"] a:hover,
[class*="a-page-footer-sns"] a:focus {
color: hsl(0deg 0% 40%);
}

[class*="a-page-footer-sns"] svg {
width: 2.25rem;
height: 2.25rem;
fill: currentColor;
transition: inherit;
}

/* @end @a-page-footer-sns */

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

/* @group @variables */
:root {
--page-top-right: var(--x-padding-right);
}

@media all and (min-width: 82.5em) {

[class*="a-page-top"] {
--page-top-transform: translate(calc(100% + .75rem));
}

}
:root {
--page-top-icon-size: 3.375rem;
--page-top-icon-background-color: hsl(347deg 84% 64% / 82.5%);
--page-top-icon-action-background-color: hsl(347deg 84% 64% / 100%);
--page-top-opacity: 0;
--page-top-transition: background-color 0s ease;
}

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

[class*="a-page-top"] a:hover,
[class*="a-page-top"] a:focus {
--page-top-icon-background-color: transparent;
--page-top-transition: background-color .3s ease;
}

/* @end @variables */

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

[class*="a-page-top"] a {
position: relative;
display: grid;
justify-content: center;
align-items: center;
grid-template-rows: 1.5rem 1rem;
gap: .25rem;
padding: .18755rem 0 0;
width: var(--page-top-icon-size);
height: var(--page-top-icon-size);
background-color: var(--page-top-icon-background-color);
border-radius: inherit;
color: hsl(0deg 0% 100%);
font-size: .625rem;
line-height: 1.2;
text-decoration: none;
text-align: center;
transform: var(--page-top-transform);
transition: var(--page-top-transition) ;
}

[class*="a-page-top"] a:hover,
[class*="a-page-top"] a:focus {
background-color: var(--page-top-icon-action-background-color);
}

[class*="a-page-top"] svg {
width: 1.875rem;
height: auto;
margin: 0 auto;
fill: hsl(0deg 0% 100%);
}

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

[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 */