/* @group @variables */

[class*="o-section"] {
--section-child-margin-right: var(--x-padding-right);
--section-child-margin-left: var(--x-padding-left);
--section-content-visibility: auto;
--section-contain: layout;
}

[class*="a-section-media"] {
--section-child-margin-right: 0;
--section-child-margin-left: 0;
}

[class*="m-section-footer"]:not([class*="m-section-footer-secondary"]) {
--section-child-margin-right: var(--footer-margin-right);
--section-child-margin-left: var(--footer-margin-left);
}

[class*="m-profile-particular"] {
--section-child-margin-right: var(--push-margin-right);
--section-child-margin-left: var(--push-margin-left);
}

[class*="m-fraction"] {
--section-child-margin-right: var(--push-margin-right);
--section-child-margin-left: var(--push-margin-left);
}

[class*="m-contact-form"] {
--section-child-margin-right: var(--form-margin-right);
--section-child-margin-left: var(--form-margin-left);
}

[class*="o-section-primary"] {
--section-gap: 3.75rem 0;
--section-padding-block-end: 5.25rem;
}

[class*="o-section-secondary"] {
--section-padding-block-start: 3.75rem;
--section-padding-block-end: 5.25rem;
--section-gap: 3.75rem 0;
}

[class*="o-section-deutero"] {
--section-padding-block-start: 3.75rem;
--section-padding-block-end: 5.25rem;
--section-gap: 3.75rem 0;
--section-background-color: hsl(60deg 57% 95%);
}

[class*="o-section-zweite"] {
--section-padding-block-start: 3.75rem;
--section-padding-block-end: 5.25rem;
--section-gap: 3.75rem 0;
}

[class*="o-section-dritte"] {
--section-padding-block-start: 3.75rem;
--section-padding-block-end: 5.25rem;
--section-gap: 3.75rem 0;
--section-background-color: var(--color-primary);
}

[class*="o-section-secondo"] {
--section-padding-block-start: 5.25rem;
--section-padding-block-end: 5.25rem;
--section-gap: 3.75rem 0;
--section-background-color: hsl(240deg 25% 95%);
}

[class*="o-section-form"] {
--section-gap: 3.75rem 0;
--section-padding-block-start: 3.75rem;
--section-padding-block-end: 5.25rem;
--section-content-visibility: visible;
--section-contain: inline-size;
}

/* content-visibilityの指定をモーダル出現時には外す */

:has([class*="a-toggle-modal"]:checked) {
--section-content-visibility: visible;
}

/* @end @variables */

/* @group @o-section */

[class*="o-section"] {
position: relative;
z-index: var(--section-z-index);
display: grid;
grid-auto-flow: row;
grid-auto-columns: 1fr;
gap: var(--section-gap);
align-self: var(--section-align-self);
padding-block-start: var(--section-padding-block-start);
padding-block-end: var(--section-padding-block-end);
background-color: var(--section-background-color);
background-image: var(--section-background-image);
background-position: 0 0;
background-repeat: var(--section-background-repeat);
background-size: var(--section-background-size);
box-shadow: var(--section-box-shadow);
backface-visibility: hidden;
content-visibility: var(--section-content-visibility);
contain: var(--section-contain);
}

[class*="o-section"]>* {
margin-right: var(--section-child-margin-right);
margin-left: var(--section-child-margin-left);
}

[class*="m-fraction"] {
grid-column: var(--section-child-grid-column);
}

/* @end @o-section */

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

/* @group @variables */

[class*="o-section-secondo"] {
--clip-path-tip: clamp(1.5rem, 3vw + 1vh, 2.25rem);
--section-media-clip-path: polygon(0 0, 50% var(--clip-path-tip), 100% 0, 100% calc(100% - var(--clip-path-tip)), 50% 100%, 0 calc(100% - var(--clip-path-tip)));
}

/* @end @variables */

/* @group @o-section */

[class*="a-section-media"] {
position: absolute;
z-index: -2;
inset: 0;
clip-path: var(--section-media-clip-path);
}

[class*="a-section-media"] img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center center;
filter: var(--section-media-filter);
}

/* @end @o-section */

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

/* @group @variables */

[class*="a-section-media"] {
}

/* @end @variables */

/* @group @a-section-media */

[class*="a-section-media"],
[class*="a-section-media"] img {
position: absolute;
z-index: -2;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center center;
backdrop-filter: blur(.125rem);
}

[class*="a-section-media"] img {
filter: var(--section-media-filter);
}

/* @end @o-section */

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

/* @group @variables */

[class*="m-headline"] {
--head-2-margin-bottom: 0;
--head-2-font-family: var(--font-family-heading);
--head-2-font-size: clamp(1.875rem, 1.339rem + 2.68vw, 3rem);/* 30-48 to 320-992 */
--head-2-line-height: 1.4;
--font-family: var(--font-family-heading);
--font-weight: 600;
--head-2-word-break: keep-all;
--head-2-overflow-wrap: anywhere;
--word-break: keep-all;
--overflow-wrap: anywhere;
}

[class*="m-headline"]:not([class*="m-headline-secondary"]) {
--text-align: center;
}

[class*="m-headline-secondary"] {
--text-align: var(--text-align-segundo);
}

[class*="m-headline-tertiary"] [class*="m-headline"] {
--color: var(--color-white);
--head-2-emphasis-color: hsl(58deg 85% 37.5%);
}

/*[class*="m-headline-quaternary"] {
--span-font-family: 'Oswald', system-ui, -apple-system, sans-serif;
--span-font-size: clamp(2.25rem, 1.929rem + 1.61vw, 3.375rem);/* 36 to 54 / 320 > 1440 *!/
--span-color: hsl(50deg 82.5% 42.5%);
}

[class*="m-headline-quaternary"] span>span {
--span-font-weight: 500;
}*/

:where([class*="o-section-dritte"]) {
--color: var(--color-white);
}

/* @end @variables */

/* @group @m-headline */

[class*="m-headline"] {
position: relative;
z-index: 3;
display: grid;
grid-auto-flow: row;
gap: 1.125rem;
}

/* @end @m-headline */

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

/* @group @m-section-footer */

[class*="m-section-footer"] {
display: grid;
justify-content: center;
gap: .75rem;
}

/* @end @m-section-footer */

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

/* @group @variables */

[class*="a-content-block"] {
--content-block-gap: 0;
--grid-align-content: start;
}

[class*="a-content-block-primary"] {
--content-block-gap: .375rem;
}

[class*="a-content-block-secondary"] {
--content-block-gap: .75rem;
}

[class*="a-content-block-tertiary"] {
--content-block-gap: 1.125rem;
}

[class*="a-content-block-quaternary"] {
--content-block-gap: 1.5rem;
}

[class*="a-content-block-quinary"] {
--content-block-gap: 1.875rem;
}

[class*="a-content-block-senary"] {
--content-block-gap: 2.25rem;
}

[class*="a-content-block-octonary"] {
--content-block-gap: 3rem;
}

/* @end @variables */

/* @group @a-content-block */

[class*="a-content-block"] {
display: grid;
align-content: var(--grid-align-content);
grid-auto-flow: row;
grid-auto-columns: 1fr;
gap: var(--content-block-gap);
}

/* @end @a-content-block */

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

/* @group @variables */

[class*="m-grid"] {
--grid-template-columns: repeat(1, 1fr);
--gap: 3rem;
}

[class*="grille"] {
--grid-template-columns: repeat(1, 1fr);
--gap: 1.5rem;
}

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

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

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

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

[class*="m-grid-tertiary"],
[class*="m-grille-tertiary"] {
--grid-template-columns: repeat(3, 1fr);
}

}

@media (width >= 62em) { /* 992px -> * */

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

[class*="m-grid-deuxieme"],
[class*="m-grille-deuxieme"] {
--grid-template-columns: repeat(2, 1fr);
--direction: rtl;
}

[class*="m-grid-tertiary"],
[class*="m-grille-tertiary"] {
--grid-template-columns: repeat(3, 1fr);
}

[class*="m-grid-secondo"],
[class*="m-grille-secondo"] {
--grid-template-columns: repeat(3, 1fr);
}

}

/* @end @variables */

/* @group @m-grid */

[class*="m-grid"],
[class*="m-grille"] {
display: grid;
align-items: var(--align-items);
grid-template-columns: var(--grid-template-columns);
gap: var(--gap);
order: var(--order);
direction: var(--direction);
}

:where([class*="m-grid"])>*,
:where([class*="m-grille"])>* {
direction: ltr;
}

/* @end @m-grid */

/* @group @variables */

:where(main) {
--content-line-height: 1.5rem;
--content-marker-top: .75rem;
--content-marker-margin-left: .25rem;
--content-marker-spacing: 1.5rem;
--content-marker-width: .75rem;
--content-marker-height: .75rem;
--content-marker-background-color: var(--color-darkgray);
--content-list-clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}

/* @end @variables */

/* @group @m-content-list */

:where(main) ul:not([class])) {
position: relative;
z-index: 2;
display: grid;
grid-auto-columns: 1fr;
gap: .375rem;
align-content: start;
}

:where(ul:not([class]))>li {
padding-left: 1rem;
background-image: url('../img/sprite-svg.svg#icon-arrow-right');
background-position: 0 .5625rem;
background-repeat: no-repeat;
background-size: .5rem .5rem;
}

/* @end @m-content-list */

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

/* @group @m-counter-list */

:where(ol:not([class])) {
position: relative;
display: grid;
grid-auto-flow: row;
gap: .375rem;
align-content: start;
counter-reset: li-entry;
}

:where(ol:not([class]))>li {
position: relative;
counter-increment: li-entry;
padding-left: 1.25rem;
}

:where(ol:not([class]))>li:before {
box-sizing: border-box;
content: counter(li-entry)'.';
position: absolute;
top: 0;
left: 0;
display: grid;
place-items: center center;
speak: none;
}

/* @end @m-counter-list */

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

/* @group @m-content-list */

[class*="content-definition-list"] {
position: relative;
display: grid;
grid-auto-flow: row;
}

[class*="content-definition-list"] dd+dt {
margin-top: .375rem;
}

[class*="content-definition-list"] dt,
[class*="content-definition-list"] dd {
position: relative;
padding-left: 1.5rem;
}

[class*="content-definition-list"] dt:before {
content: '';
position: absolute;
top: .625rem;
left: .625rem;
width: .25rem;
height: .25rem;
background-color: currentColor;
border-radius: 50%;
}

/* @end @m-content-list */

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

/* @group @variables */

[class*="m-note-list"] {
--note-list-mark-size: .875rem;
--note-list-font-size: .875rem;
--note-list-line-height: 1.71428571;
--note-list-text-indent: calc(-1 * var(--note-list-mark-size));
}

[class*="m-note-list-secondary"] {
--note-list-mark-size: .75rem;
--note-list-font-size: .75rem;
--note-list-line-height: 1.5;
--note-list-text-indent: calc(-1 * var(--note-list-mark-size));
}

/* @end @variables */

/* @group @m-note-list */

[class*="m-note-list"] {
display: grid;
align-self: start;
grid-template-columns: repeat(1, 1fr);
gap: .375rem;
background-color: var(--note-list-background-color);
padding: var(--note-list-padding);
}

[class*="m-note-list"]>li,
[class*="a-note-detail"] {
position: relative;
margin-left: calc(var(--note-list-mark-size) + .25rem);
font-size: var(--note-list-font-size);
text-indent: calc(var(--note-list-text-indent));
}

[class*="m-note-list"]>li:before,
[class*="a-note-detail"]:before {
content: '※';
}

/* @end @m-note-list */