@charset "UTF-8";
*,:before,:after {
    box-sizing:border-box;
    background-repeat:no-repeat
}
:before,:after {
    text-decoration:inherit;
    vertical-align:inherit
}
:where(:root) {
    cursor:default;
    line-height:1.5;
    word-wrap:break-word;
    -moz-tab-size:4;
    -o-tab-size:4;
    tab-size:4;
    -webkit-tap-highlight-color:transparent;
    -webkit-text-size-adjust:100%
}
:where(body) {
    margin:0
}
:where(h1) {
    font-size:2em;
    margin:.67em 0
}
:where(dl,ol,ul) :where(dl,ol,ul) {
    margin:0
}
:where(hr) {
    color:inherit;
    height:0
}
:where(nav) :where(ol,ul) {
    list-style-type:none;
    padding:0
}
:where(nav li):before {
    content:"​";
    float:left
}
:where(pre) {
    font-family:monospace,monospace;
    font-size:1em;
    overflow:auto
}
:where(abbr[title]) {
    text-decoration:underline;
    -webkit-text-decoration:underline dotted;
    text-decoration:underline dotted
}
:where(b,strong) {
    font-weight:bolder
}
:where(code,kbd,samp) {
    font-family:monospace,monospace;
    font-size:1em
}
:where(small) {
    font-size:80%
}
:where(audio,canvas,iframe,img,svg,video) {
    vertical-align:middle
}
:where(iframe) {
    border-style:none
}
:where(svg:not([fill])) {
    fill:currentColor
}
:where(table) {
    border-collapse:collapse;
    border-color:inherit;
    text-indent:0
}
:where(button,input,select) {
    margin:0
}
:where(button,[type=button i],[type=reset i],[type=submit i]) {
    -webkit-appearance:button
}
:where(fieldset) {
    border:1px solid #a0a0a0
}
:where(progress) {
    vertical-align:baseline
}
:where(textarea) {
    margin:0;
    resize:vertical
}
:where([type=search i]) {
    -webkit-appearance:textfield;
    outline-offset:-2px
}
::-webkit-inner-spin-button,::-webkit-outer-spin-button {
    height:auto
}
::-webkit-input-placeholder {
    color:inherit;
    opacity:.54
}
::-webkit-search-decoration {
    -webkit-appearance:none
}
::-webkit-file-upload-button {
    -webkit-appearance:button;
    font:inherit
}
:where(dialog) {
    background-color:#fff;
    border:solid;
    color:#000;
    height:-moz-fit-content;
    height:fit-content;
    left:0;
    margin:auto;
    padding:1em;
    position:absolute;
    right:0;
    width:-moz-fit-content;
    width:fit-content
}
:where(dialog:not([open])) {
    display:none
}
:where(details>summary:first-of-type) {
    display:list-item
}
:where([aria-busy=true i]) {
    cursor:progress
}
:where([aria-controls]) {
    cursor:pointer
}
:where([aria-disabled=true i],[disabled]) {
    cursor:not-allowed
}
:where([aria-hidden=false i][hidden]) {
    display:inline;
    display:initial
}
:where([aria-hidden=false i][hidden]:not(:focus)) {
    clip:rect(0,0,0,0);
    position:absolute
}
:root {
    --scrollbar-width: 0px;
    --range-active-color: #000;
    --range-inactive-color: #d1d1d1;
    --window-min-width: 390px;
    font-size:10px
}
html,body {
    min-height:100vh
}
html {
    display:flex;
    flex-direction:column
}
body {
    display:flex;
    flex-direction:column;
    width:100%;
    min-width:390px;
    padding-right:0;
    padding-right:var(--scrollbar-width, 0);
    font-family:Noto Sans JP,Hiragino Sans,Hiragino Kaku Gothic ProN,ヒラギノ角ゴ ProN W3,メイリオ,meiryo,arial,sans-serif;
    font-size:1.4rem;
    line-height:1.6;
    color:#231815;
    word-break:normal;
    word-wrap:anywhere;
    background:#fff
}
li {
    list-style-type:none
}
a {
    color:#231815;
    -webkit-text-decoration:none;
    text-decoration:none;
    transition:opacity .3s
}
b {
    font-weight:700
}
em {
    font-style:normal;
    font-weight:700
}
strong {
    font-weight:700
}
sup {
    font-size:80%
}
i {
    font-style:italic
}
img {
    display:block;
    max-width:100%;
    height:auto
}
p,ul,ol,dl,dt,dd,table,h1,h2,h3,h4,h5,h6,blockquote,form {
    padding:0;
    margin:0
}
dfn,cite {
    font-style:normal
}
small {
    font-size:1.2rem
}
table {
    width:100%;
    border-spacing:0;
    border-collapse:collapse
}
[disabled] {
    cursor:default
}
input:not([type=checkbox]):not([type=radio]):not([type=range]),select,button,textarea {
    font-family:Noto Sans JP,Hiragino Sans,Hiragino Kaku Gothic ProN,ヒラギノ角ゴ ProN W3,メイリオ,meiryo,arial,sans-serif;
    color:#231815;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    border-radius:0
}
input[type=number] {
    -webkit-appearance:none;
    -moz-appearance:textfield
}
input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button {
    margin:0;
    -webkit-appearance:none;
    appearance:none
}
input[type=range] {
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none
}
input[type=reset]:not(:disabled),input[type=image]:not(:disabled),input[type=submit]:not(:disabled),input[type=button]:not(:disabled),button:not(:disabled),select:not(:disabled) {
    cursor:pointer
}
button,select {
    padding:0;
    font-size:1.4rem;
    line-height:1.4;
    background:none;
    border:0;
    border-radius:0
}
select:disabled {
    opacity:1
}
select::-ms-expand {
    display:none
}
::-moz-placeholder {
    color:#23181580;
    opacity:1
}
::placeholder {
    color:#23181580;
    opacity:1
}
[hidden] {
    display:none
}
@keyframes loading {
    to {
        rotate:1turn
    }
}
@keyframes modal-fadein {
    0% {
        opacity:0
    }
    to {
        opacity:1
    }
}
@keyframes modal-fadeout {
    0% {
        opacity:1
    }
    to {
        opacity:0
    }
}
.l-header {
    display:grid;
    grid-template-areas:"back logo utility";
    grid-template-rows:1fr;
    grid-template-columns:1fr auto 1fr;
    grid-gap:10px;
    gap:10px;
    padding:16px;
    background:#3a3a3a
}
.l-header__logo {
    grid-area:logo
}
.l-header__back {
    grid-area:back
}
.l-header__utility {
    display:flex;
    grid-area:utility;
    gap:0 16px;
    justify-self:end
}
.l-header .c-btn {
    height:100%
}
@media screen and (max-width: 767.98px) {
    .l-header:has(.l-header__utility>:not(:only-child)) {
        grid-template-areas:"logo logo" "back utility";
        grid-template-rows:auto 1fr;
        grid-template-columns:auto 1fr
    }
    .l-header:has(.l-header__utility>:not(:only-child)) .l-header__logo {
        justify-self:center
    }
    .l-header__logo img {
        width:131px
    }
}
@media screen and (min-width: 768px),print {
    .l-header {
        padding:16px 40px
    }
    .l-header__logo {
        align-self:center
    }
    .l-header__utility {
        -moz-column-gap:24px;
        column-gap:24px
    }
}
.l-loading {
    position:fixed;
    top:0;
    left:0;
    z-index:200;
    width:100%;
    height:100%;
    background:#ffffffb3
}
.l-loading__loader {
    position:absolute;
    top:50%;
    left:50%;
    display:grid;
    width:152px;
    aspect-ratio:1;
    -webkit-mask:conic-gradient(from 9deg,rgba(0,0,0,.1),rgba(0,0,0,.55));
    mask:conic-gradient(from 9deg,rgba(0,0,0,.1),rgba(0,0,0,.55));
    translate:-50% -50%;
    animation:loading 1s infinite steps(20);
    animation-play-state:running
}
.l-loading__loader>div {
    position:absolute;
    top:0;
    left:0;
    display:grid;
    width:100%;
    height:100%
}
.l-loading__loader,.l-loading__loader:before,.l-loading__loader:after,.l-loading__loader>div:before,.l-loading__loader>div:after {
    background:radial-gradient(closest-side at 50% 5%,#000 96%,#0000) 50% 0/9% 91% repeat-y,radial-gradient(closest-side at 5% 50%,#000 96%,#0000) 0 50%/91% 9% repeat-x;
    will-change:rotate
}
.l-loading__loader:before,.l-loading__loader:after,.l-loading__loader>div:before,.l-loading__loader>div:after {
    grid-area:1/1;
    content:""
}
.l-loading__loader:before {
    rotate:18deg
}
.l-loading__loader:after {
    rotate:36deg
}
.l-loading__loader>div:before {
    rotate:54deg
}
.l-loading__loader>div:after {
    rotate:72deg
}
.l-loading__txt {
    position:absolute;
    top:50%;
    left:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    width:152px;
    aspect-ratio:1;
    font-size:1.6rem;
    font-weight:700;
    line-height:1.7;
    text-align:center;
    translate:-50% -50%
}
.l-loading__txt p>span {
    margin:0 2px 0 0;
    font-size:2.6rem
}
.l-main {
    flex-grow:1;
    padding:30px 16px
}
.l-main__inner {
    max-width:1360px;
    margin:0 auto
}
@media screen and (min-width: 768px),print {
    .l-main {
        padding:26px 16px 40px
    }
    .l-header+.l-main {
        padding-top:40px
    }
}
.l-main-simulation {
    display:grid;
    flex-grow:1;
    grid-template-areas:"foot" "visual" "control" "nav" "head" "body";
    grid-template-rows:repeat(5,auto) 1fr;
    grid-template-columns:minmax(0,1fr);
    width:100%
}
.l-main-simulation__nav {
    grid-area:nav
}
.l-main-simulation__foot {
    grid-area:foot;
    background:#f9f9f9;
    border-top:solid 1px #e6e6e6
}
.l-main-simulation__head {
    grid-area:head;
    background:#f9f9f9
}
.l-main-simulation__head>:last-child {
    border-bottom:solid 1px #e6e6e6
}
.l-main-simulation__visual {
    grid-area:visual;
    aspect-ratio:390/276;
    background:#e6e6e6
}
.l-main-simulation__visualOperation {
    display:none
}
.l-main-simulation__visualArea {
    width:100%;
    height:100%
}
.l-main-simulation__visualArea>canvas {
    width:100%;
    height:100%;
    -o-object-fit:contain;
    object-fit:contain
}
.l-main-simulation__body {
    grid-area:body;
    margin-bottom:-1px
}
.l-main-simulation__control {
    grid-area:control;
    background:#efefef
}
@media screen and (min-width: 768px),print {
    .l-main-simulation {
        grid-template-areas:"nav head visual" "nav body visual" "nav body control" "nav foot control";
        grid-template-rows:auto 1fr auto auto;
        grid-template-columns:max(146px,10.15%) 32.91fr 56.94fr;
        min-width:1360px;
        height:100vh
    }
    .l-main-simulation__nav {
        height:100vh;
        overflow-y:auto;
        border-right:solid 1px #e6e6e6;
        scrollbar-width:none;
        -ms-overflow-style:none;
        -webkit-overflow-scrolling:touch
    }
    .l-main-simulation__nav::-webkit-scrollbar {
        display:none
    }
    .l-main-simulation__nav:after {
        position:sticky;
        display:block;
        content:"";
        bottom:0;
        left:0;
        z-index:1;
        width:100%;
        height:200px;
        pointer-events:none;
        background:linear-gradient(180deg,#fff0,#fff)
    }
    .l-main-simulation__visual {
        position:relative;
        aspect-ratio:auto;
        border-left:solid 1px #e6e6e6
    }
    .l-main-simulation__visualOperation {
        position:absolute;
        top:12px;
        right:10px;
        z-index:1;
        display:flex;
        gap:10px
    }
    .l-main-simulation__body {
        overflow-y:auto;
        scrollbar-width:none;
        -ms-overflow-style:none;
        -webkit-overflow-scrolling:touch
    }
    .l-main-simulation__body::-webkit-scrollbar {
        display:none
    }
    .l-main-simulation__control {
        background:#f9f9f9;
        border-left:solid 1px #e6e6e6
    }
}
.c-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:color .3s,background .3s
}
.c-btn.-outline {
    color:#000;
    background:#fff;
    box-shadow:inset 0 0 0 1px #000
}
.c-btn.-outline:focus-visible {
    background:#cacaca
}
@media (any-hover: hover) {
    .c-btn.-outline:hover {
        background:#cacaca
    }
}
.c-btn.-lightgray {
    color:#000;
    background:#e6e6e6
}
.c-btn.-darkgray {
    color:#fff;
    background:#00000085
}
.c-btn.-cad {
    padding:6px;
    color:#000;
    background:#f5f5f5;
    box-shadow:inset 0 0 0 1px #000
}
.c-btn.is-selected {
    color:#000;
    background:#f9f9f9;
    box-shadow:inset 0 0 0 2px currentcolor
}
.c-btn.is-disabled {
    color:#000;
    pointer-events:none;
    background:#efefef;
    opacity:.4
}
.c-btn.-vertical {
    flex-direction:column
}
.c-btn:has(.c-btn__txt).-size-xs {
    padding:2px 8px 3px;
    font-size:1.2rem;
    line-height:1.3
}
.c-btn:has(.c-btn__txt).-size-xs:has(.c-btn__beforeIcon,.c-btn__afterIcon) {
    -moz-column-gap:4px;
    column-gap:4px;
    padding:6px 8px
}
.c-btn:has(.c-btn__txt).-size-xs:has(.c-btn__beforeIcon).-vertical {
    padding-bottom:3px
}
.c-btn:has(.c-btn__txt).-size-xs:has(.c-btn__afterIcon).-vertical {
    padding-top:3px
}
.c-btn:has(.c-btn__txt).-size-xs .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-xs .c-btn__afterIcon {
    font-size:1.6rem
}
.c-btn:has(.c-btn__txt).-size-xs.-darkgray {
    padding:2px 8px
}
.c-btn:has(.c-btn__txt).-size-xs.-darkgray .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-xs.-darkgray .c-btn__afterIcon {
    font-size:2rem
}
.c-btn:has(.c-btn__txt).-size-sm {
    padding:6px 8px;
    font-size:1.4rem;
    line-height:1.3
}
.c-btn:has(.c-btn__txt).-size-sm:has(.c-btn__beforeIcon,.c-btn__afterIcon) {
    -moz-column-gap:4px;
    column-gap:4px;
    padding:10px 8px
}
.c-btn:has(.c-btn__txt).-size-sm:has(.c-btn__beforeIcon).-vertical {
    padding-bottom:6px
}
.c-btn:has(.c-btn__txt).-size-sm:has(.c-btn__afterIcon).-vertical {
    padding-top:6px
}
.c-btn:has(.c-btn__txt).-size-sm .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-sm .c-btn__afterIcon {
    font-size:1.8rem
}
.c-btn:has(.c-btn__txt).-size-md {
    padding:16px 12px;
    font-size:1.4rem;
    font-weight:700;
    line-height:1.3
}
.c-btn:has(.c-btn__txt).-size-md:has(.c-btn__beforeIcon,.c-btn__afterIcon) {
    gap:3px 8px;
    padding:20px 12px
}
.c-btn:has(.c-btn__txt).-size-md:has(.c-btn__beforeIcon).-vertical {
    padding-bottom:17px
}
.c-btn:has(.c-btn__txt).-size-md:has(.c-btn__afterIcon).-vertical {
    padding-top:17px
}
.c-btn:has(.c-btn__txt).-size-md .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-md .c-btn__afterIcon {
    font-size:2rem
}
.c-btn:has(.c-btn__txt).-size-lg {
    padding:6px 16px;
    font-size:1.4rem;
    line-height:1.3
}
.c-btn:has(.c-btn__txt).-size-lg:has(.c-btn__beforeIcon,.c-btn__afterIcon) {
    gap:3px 4px;
    padding:10px 16px
}
.c-btn:has(.c-btn__txt).-size-lg:has(.c-btn__beforeIcon).-vertical {
    padding-bottom:7px
}
.c-btn:has(.c-btn__txt).-size-lg:has(.c-btn__afterIcon).-vertical {
    padding-top:7px
}
.c-btn:has(.c-btn__txt).-size-lg .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-lg .c-btn__afterIcon {
    font-size:2.4rem
}
.c-btn:has(.c-btn__txt).-size-xl {
    padding:16px 12px;
    font-size:1.6rem;
    font-weight:700;
    line-height:1.7
}
.c-btn:has(.c-btn__txt).-size-xl:has(.c-btn__beforeIcon,.c-btn__afterIcon) {
    gap:3px 8px;
    padding:22px 12px
}
.c-btn:has(.c-btn__txt).-size-xl:has(.c-btn__beforeIcon).-vertical {
    padding-bottom:19px
}
.c-btn:has(.c-btn__txt).-size-xl:has(.c-btn__afterIcon).-vertical {
    padding-top:19px
}
.c-btn:has(.c-btn__txt).-size-xl .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-xl .c-btn__afterIcon {
    font-size:2.4rem
}
.c-btn[aria-label]:not(:has(.c-btn__txt)) {
    touch-action:manipulation
}
.c-btn[aria-label]:not(:has(.c-btn__txt)).-size-xs {
    font-size:1.2rem
}
.c-btn[aria-label]:not(:has(.c-btn__txt)).-size-xs:not(.-none) {
    padding:6px 8px
}
.c-btn[aria-label]:not(:has(.c-btn__txt)).-size-sm {
    font-size:1.4rem
}
.c-btn[aria-label]:not(:has(.c-btn__txt)).-size-sm:not(.-none) {
    padding:6px 8px
}
.c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md {
    font-size:1.8rem
}
.c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md:not(.-none) {
    padding:6px
}
.c-btn[aria-label]:not(:has(.c-btn__txt)).-size-lg {
    font-size:2rem
}
.c-btn[aria-label]:not(:has(.c-btn__txt)).-size-lg:not(.-none) {
    padding:6px 8px
}
.c-btn[aria-label]:not(:has(.c-btn__txt)).-size-xl {
    font-size:2.4rem
}
.c-btn[aria-label]:not(:has(.c-btn__txt)).-size-xl:not(.-none) {
    padding:6px 8px
}
@media screen and (min-width: 768px),print {
    .c-btn.-pc-horizontal {
        flex-direction:row
    }
    .c-btn.-pc-vertical {
        flex-direction:column
    }
    .c-btn:has(.c-btn__txt).-size-xs:has(.c-btn__beforeIcon).-pc-horizontal {
        padding-bottom:6px
    }
    .c-btn:has(.c-btn__txt).-size-xs:has(.c-btn__afterIcon).-pc-horizontal {
        padding-top:6px
    }
    .c-btn:has(.c-btn__txt).-size-sm:has(.c-btn__beforeIcon).-pc-horizontal {
        padding-bottom:10px
    }
    .c-btn:has(.c-btn__txt).-size-sm:has(.c-btn__afterIcon).-pc-horizontal {
        padding-top:10px
    }
    .c-btn:has(.c-btn__txt).-size-md:has(.c-btn__beforeIcon).-pc-horizontal {
        padding-bottom:20px
    }
    .c-btn:has(.c-btn__txt).-size-md:has(.c-btn__afterIcon).-pc-horizontal {
        padding-top:20px
    }
    .c-btn:has(.c-btn__txt).-size-lg:has(.c-btn__beforeIcon).-pc-horizontal {
        padding-bottom:10px
    }
    .c-btn:has(.c-btn__txt).-size-lg:has(.c-btn__afterIcon).-pc-horizontal {
        padding-top:10px
    }
    .c-btn:has(.c-btn__txt).-size-xl:has(.c-btn__beforeIcon).-pc-horizontal {
        padding-bottom:22px
    }
    .c-btn:has(.c-btn__txt).-size-xl:has(.c-btn__afterIcon).-pc-horizontal {
        padding-top:22px
    }
    .c-btn:has(.c-btn__txt).-size-md-xs {
        padding:2px 8px 3px;
        font-size:1.2rem;
        line-height:1.3
    }
    .c-btn:has(.c-btn__txt).-size-md-xs:has(.c-btn__beforeIcon,.c-btn__afterIcon) {
        -moz-column-gap:4px;
        column-gap:4px;
        padding:6px 8px
    }
    .c-btn:has(.c-btn__txt).-size-md-xs:has(.c-btn__beforeIcon).-vertical {
        padding-bottom:3px
    }
    .c-btn:has(.c-btn__txt).-size-md-xs:has(.c-btn__beforeIcon).-pc-horizontal {
        padding-bottom:6px
    }
    .c-btn:has(.c-btn__txt).-size-md-xs:has(.c-btn__afterIcon).-vertical {
        padding-top:3px
    }
    .c-btn:has(.c-btn__txt).-size-md-xs:has(.c-btn__afterIcon).-pc-horizontal {
        padding-top:6px
    }
    .c-btn:has(.c-btn__txt).-size-md-xs .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-md-xs .c-btn__afterIcon {
        font-size:1.6rem
    }
    .c-btn:has(.c-btn__txt).-size-md-xs.-darkgray {
        padding:2px 8px
    }
    .c-btn:has(.c-btn__txt).-size-md-xs.-darkgray .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-md-xs.-darkgray .c-btn__afterIcon {
        font-size:2rem
    }
    .c-btn:has(.c-btn__txt).-size-md-sm {
        padding:6px 8px;
        font-size:1.4rem;
        line-height:1.3
    }
    .c-btn:has(.c-btn__txt).-size-md-sm:has(.c-btn__beforeIcon,.c-btn__afterIcon) {
        -moz-column-gap:4px;
        column-gap:4px;
        padding:10px 8px
    }
    .c-btn:has(.c-btn__txt).-size-md-sm:has(.c-btn__beforeIcon).-vertical {
        padding-bottom:6px
    }
    .c-btn:has(.c-btn__txt).-size-md-sm:has(.c-btn__beforeIcon).-pc-horizontal {
        padding-bottom:10px
    }
    .c-btn:has(.c-btn__txt).-size-md-sm:has(.c-btn__afterIcon).-vertical {
        padding-top:6px
    }
    .c-btn:has(.c-btn__txt).-size-md-sm:has(.c-btn__afterIcon).-pc-horizontal {
        padding-top:10px
    }
    .c-btn:has(.c-btn__txt).-size-md-sm .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-md-sm .c-btn__afterIcon {
        font-size:1.8rem
    }
    .c-btn:has(.c-btn__txt).-size-md-md {
        padding:16px 12px;
        font-size:1.4rem;
        font-weight:700;
        line-height:1.3
    }
    .c-btn:has(.c-btn__txt).-size-md-md:has(.c-btn__beforeIcon,.c-btn__afterIcon) {
        gap:3px 8px;
        padding:20px 12px
    }
    .c-btn:has(.c-btn__txt).-size-md-md:has(.c-btn__beforeIcon).-vertical {
        padding-bottom:17px
    }
    .c-btn:has(.c-btn__txt).-size-md-md:has(.c-btn__beforeIcon).-pc-horizontal {
        padding-bottom:20px
    }
    .c-btn:has(.c-btn__txt).-size-md-md:has(.c-btn__afterIcon).-vertical {
        padding-top:17px
    }
    .c-btn:has(.c-btn__txt).-size-md-md:has(.c-btn__afterIcon).-pc-horizontal {
        padding-top:20px
    }
    .c-btn:has(.c-btn__txt).-size-md-md .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-md-md .c-btn__afterIcon {
        font-size:2rem
    }
    .c-btn:has(.c-btn__txt).-size-md-lg {
        padding:6px 16px;
        font-size:1.4rem;
        line-height:1.3
    }
    .c-btn:has(.c-btn__txt).-size-md-lg:has(.c-btn__beforeIcon,.c-btn__afterIcon) {
        gap:3px 4px;
        padding:10px 16px
    }
    .c-btn:has(.c-btn__txt).-size-md-lg:has(.c-btn__beforeIcon).-vertical {
        padding-bottom:7px
    }
    .c-btn:has(.c-btn__txt).-size-md-lg:has(.c-btn__beforeIcon).-pc-horizontal {
        padding-bottom:10px
    }
    .c-btn:has(.c-btn__txt).-size-md-lg:has(.c-btn__afterIcon).-vertical {
        padding-top:7px
    }
    .c-btn:has(.c-btn__txt).-size-md-lg:has(.c-btn__afterIcon).-pc-horizontal {
        padding-top:10px
    }
    .c-btn:has(.c-btn__txt).-size-md-lg .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-md-lg .c-btn__afterIcon {
        font-size:2.4rem
    }
    .c-btn:has(.c-btn__txt).-size-md-xl {
        padding:16px 12px;
        font-size:1.6rem;
        font-weight:700;
        line-height:1.7
    }
    .c-btn:has(.c-btn__txt).-size-md-xl:has(.c-btn__beforeIcon,.c-btn__afterIcon) {
        gap:3px 8px;
        padding:22px 12px
    }
    .c-btn:has(.c-btn__txt).-size-md-xl:has(.c-btn__beforeIcon).-vertical {
        padding-bottom:19px
    }
    .c-btn:has(.c-btn__txt).-size-md-xl:has(.c-btn__beforeIcon).-pc-horizontal {
        padding-bottom:22px
    }
    .c-btn:has(.c-btn__txt).-size-md-xl:has(.c-btn__afterIcon).-vertical {
        padding-top:19px
    }
    .c-btn:has(.c-btn__txt).-size-md-xl:has(.c-btn__afterIcon).-pc-horizontal {
        padding-top:22px
    }
    .c-btn:has(.c-btn__txt).-size-md-xl .c-btn__beforeIcon,.c-btn:has(.c-btn__txt).-size-md-xl .c-btn__afterIcon {
        font-size:2.4rem
    }
    .c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md-xs {
        font-size:1.2rem
    }
    .c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md-xs:not(.-none) {
        padding:6px 8px
    }
    .c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md-sm {
        font-size:1.4rem
    }
    .c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md-sm:not(.-none) {
        padding:6px 8px
    }
    .c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md-md {
        font-size:1.8rem
    }
    .c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md-md:not(.-none) {
        padding:6px
    }
    .c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md-lg {
        font-size:2rem
    }
    .c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md-lg:not(.-none) {
        padding:6px 8px
    }
    .c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md-xl {
        font-size:2.4rem
    }
    .c-btn[aria-label]:not(:has(.c-btn__txt)).-size-md-xl:not(.-none) {
        padding:6px 8px
    }
}
.c-btn-keepPers {
    position:relative;
    display:inline-flex
}
.c-btn-keepPers:before {
    position:absolute;
    display:block;
    content:"";
    top:0;
    left:0;
    z-index:1;
    width:100%;
    height:100%;
    pointer-events:none;
    background:transparent;
    border:solid 1px #000
}
.c-btn-keepPers:not(.is-saved) .c-btn-keepPers__remove {
    display:none
}
.c-btn-keepPers__save {
    display:flex;
    flex-direction:column;
    align-items:center;
    width:100%;
    padding:11px 4px;
    background:#fff;
    transition:background .3s
}
.c-btn-keepPers__save:focus-visible {
    background:#0000001a
}
@media (any-hover: hover) {
    .c-btn-keepPers__save:hover {
        background:#0000001a
    }
}
.c-btn-keepPers__type {
    position:absolute;
    top:4px;
    left:4px;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:center;
    width:18px;
    aspect-ratio:1/1;
    padding:0 0 .125em;
    font-size:1.2rem;
    font-weight:700;
    line-height:1;
    color:#fff;
    background:#000;
    border-radius:100%
}
.c-btn-keepPers__icon [data-icon] {
    font-size:3.8rem
}
.c-btn-keepPers__label {
    display:flex;
    gap:4px;
    align-items:center
}
.c-btn-keepPers__label [data-icon] {
    font-size:1.8rem
}
.c-btn-keepPers__txt {
    font-size:1.4rem;
    line-height:1.3
}
.c-btn-keepPers__img {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    -o-object-fit:cover;
    object-fit:cover
}
.c-btn-keepPers__remove {
    position:absolute;
    top:4px;
    right:4px;
    display:flex;
    clip-path:circle(50% at 50% 50%)
}
@media screen and (min-width: 768px),print {
    .c-btn-keepPers__save {
        padding:4px 4px 5px
    }
    .c-btn-keepPers__icon [data-icon] {
        font-size:3.3rem
    }
    .c-btn-keepPers__label [data-icon] {
        font-size:1.6rem
    }
    .c-btn-keepPers__txt {
        font-size:1.2rem
    }
    .c-btn-keepPers__remove [data-icon] {
        font-size:1.8rem
    }
}
.c-form-label {
    display:inline-block;
    width:-moz-fit-content;
    width:fit-content;
    font-size:1.2rem;
    font-weight:400;
    line-height:1.2
}
.c-form-label>b {
    font-weight:inherit
}
.p-form-control.-presenBoard .c-form-label {
    font-weight:700
}
.c-form-label.-size-xs {
    font-size:1.1rem;
    color:#23181580
}
.c-form-label.-size-sm {
    font-size:1.2rem
}
.c-form-label.-size-md {
    font-size:1.4rem
}
@media screen and (min-width: 768px),print {
    .c-form-label.-size-xs {
        font-size:1.2rem
    }
    .c-form-label.-size-sm {
        font-size:1.4rem
    }
}
.c-form-alertMessage {
    padding:6px 8px;
    margin:0 0 12px;
    font-size:1.2rem;
    line-height:1.4;
    background:#d729280f
}
.c-form-errorMessage {
    margin:6px 0 0;
    font-size:1.3rem;
    line-height:1.4;
    color:#da1c5c;
    letter-spacing:.05em
}
.c-form-noteMessage {
    margin:2px 0 0;
    font-size:1.2rem;
    line-height:1.4
}
.c-form-radio {
    position:relative;
    display:block;
    max-width:-moz-max-content;
    max-width:max-content;
    cursor:pointer
}
.c-form-radio:has(:focus-visible) .c-form-radio__label {
    outline:auto
}
.c-form-radio:has(:checked) .c-form-radio__label:after {
    opacity:1
}
.c-form-radio__input {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    overflow:hidden;
    white-space:nowrap;
    border:0;
    clip:rect(0 0 0 0);
    clip-path:inset(50%)
}
.c-form-radio__label {
    position:relative;
    display:inline-block;
    padding:0 0 0 18px;
    font-size:1.2rem;
    line-height:1.4
}
.c-form-radio__label:before,.c-form-radio__label:after {
    position:absolute;
    display:block;
    content:"";
    top:.2em;
    left:0;
    aspect-ratio:1/1;
    border-radius:100%
}
.c-form-radio__label:before {
    width:12px;
    background:#fff;
    border:solid 1px #d1d1d1
}
.c-form-radio__label:after {
    width:6px;
    margin:3px;
    background:#0c0c0c;
    opacity:0
}
@media screen and (min-width: 768px),print {
    .c-form-radio__label {
        padding-left:24px;
        font-size:1.4rem
    }
    .c-form-radio__label:before,.c-form-radio__label:after {
        top:.15em
    }
    .c-form-radio__label:before {
        width:16px
    }
    .c-form-radio__label:after {
        width:8px;
        margin:4px
    }
}
.c-form-radioBtn {
    position:relative;
    display:block;
    cursor:pointer
}
.c-form-radioBtn:has(:focus-visible) .c-form-radioBtn__btn {
    outline:auto
}
.c-form-radioBtn:has(:checked) .c-form-radioBtn__btn {
    background:#f9f9f9;
    box-shadow:inset 0 0 0 2px currentcolor
}
.c-form-radioBtn__input {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    overflow:hidden;
    white-space:nowrap;
    border:0;
    clip:rect(0 0 0 0);
    clip-path:inset(50%)
}
.c-form-radioBtn__btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:100%;
    min-height:44px;
    padding:6px 8px;
    font-size:1.4rem;
    line-height:1.3;
    color:#000;
    background:#fff;
    box-shadow:inset 0 0 0 1px #000;
    transition:background .3s
}
.c-form-radioBtn__btn:has(.c-form-radioBtn__icon) {
    -moz-column-gap:4px;
    column-gap:4px;
    padding:10px 8px
}
.c-form-radioBtn__icon {
    font-size:2.4rem
}
.c-form-radioImg {
    position:relative;
    display:block;
    cursor:pointer
}
.c-form-radioImg:has(:focus-visible) .c-form-radioImg__btn {
    outline:auto
}
.c-form-radioImg:has(:checked) .c-form-radioImg__btn {
    background:#f9f9f9;
    box-shadow:inset 0 0 0 2px currentcolor
}
.c-form-radioImg__input {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    overflow:hidden;
    white-space:nowrap;
    border:0;
    clip:rect(0 0 0 0);
    clip-path:inset(50%)
}
.c-form-radioImg__btn {
    display:flex;
    flex-direction:column;
    gap:2px 0;
    align-items:center;
    width:100%;
    padding:20px 12px 12px;
    font-size:1.4rem;
    font-weight:700;
    line-height:1.7;
    color:#000;
    text-align:center;
    background:#fff;
    box-shadow:inset 0 0 0 1px #000;
    transition:background .3s
}
.c-form-checkbox {
    position:relative;
    display:block;
    max-width:-moz-max-content;
    max-width:max-content;
    cursor:pointer
}
.c-form-checkbox:has(:focus-visible) .c-form-checkbox__label {
    outline:auto
}
.c-form-checkbox:has(:checked) .c-form-checkbox__label:after {
    opacity:1
}
.c-form-checkbox__input {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    overflow:hidden;
    white-space:nowrap;
    border:0;
    clip:rect(0 0 0 0);
    clip-path:inset(50%)
}
.c-form-checkbox__label {
    position:relative;
    display:block;
    padding:0;
    line-height:1.4
}
.c-form-checkbox__label:before,.c-form-checkbox__label:after {
    position:absolute;
    display:block;
    content:"";
    top:0;
    left:0;
    aspect-ratio:1/1
}
.c-form-checkbox__label:before {
    background:#fff;
    border:solid 1px #d1d1d1;
    border-radius:2px
}
.c-form-checkbox__label:after {
    background:#0c0c0c;
    opacity:0
}
.c-form-checkbox.-size-sm .c-form-checkbox__label {
    padding-left:18px;
    font-size:1.2rem
}
.c-form-checkbox.-size-sm .c-form-checkbox__label:before,.c-form-checkbox.-size-sm .c-form-checkbox__label:after {
    top:.17em;
    width:12px
}
.c-form-checkbox.-size-sm .c-form-checkbox__label:after {
    clip-path:path("M5.0427 6.78329L3.1281 4.88773L2 6L5.0427 9L10 4.10444L8.87984 3L5.0427 6.78329Z")
}
.c-form-checkbox.-size-md .c-form-checkbox__label {
    padding-left:24px;
    font-size:1.4rem
}
.c-form-checkbox.-size-md .c-form-checkbox__label:before,.c-form-checkbox.-size-md .c-form-checkbox__label:after {
    top:.17em;
    width:16px
}
.c-form-checkbox.-size-md .c-form-checkbox__label:after {
    clip-path:path("M6.72368 9.48872L4.17089 6.96131L2.66675 8.44434L6.72368 12.4443L13.3334 5.91692L11.8399 4.44434L6.72368 9.48872Z")
}
.c-form-switch {
    position:relative;
    display:block;
    max-width:-moz-max-content;
    max-width:max-content;
    cursor:pointer
}
.c-form-switch:has(:focus-visible) .c-form-switch__label {
    outline:auto
}
.c-form-switch:has(:checked) .c-form-switch__label:before {
    background:#000
}
.c-form-switch:has(:checked) .c-form-switch__label:after {
    translate:10px -50%
}
.c-form-switch:has(:checked) .c-form-switch__label--on {
    display:block
}
.c-form-switch:has(:checked) .c-form-switch__label--off {
    display:none
}
.c-form-switch__input {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    overflow:hidden;
    white-space:nowrap;
    border:0;
    clip:rect(0 0 0 0);
    clip-path:inset(50%)
}
.c-form-switch__label {
    position:relative;
    display:block;
    padding:0 0 0 30px;
    font-size:1.2rem;
    line-height:1.25
}
.c-form-switch__label:before,.c-form-switch__label:after {
    position:absolute;
    display:block;
    content:"";
    top:calc(50% + 1px);
    left:0;
    translate:0 -50%
}
.c-form-switch__label:before {
    width:24px;
    height:14px;
    background:#d1d1d1;
    border-radius:100vmax;
    transition:background .3s
}
.c-form-switch__label:after {
    width:8px;
    aspect-ratio:1/1;
    margin:0 3px;
    background:#fff;
    border-radius:100%;
    transition:translate .3s
}
.c-form-switch__label--on {
    display:none
}
.c-form-switch__label--off {
    display:block
}
.c-form-text,.c-form-number {
    display:block;
    width:100%;
    height:34px;
    padding:5px 9px;
    font-size:1.6rem;
    line-height:1.4;
    background:#fff;
    border:solid 1px #d1d1d1;
    border-radius:0
}
.c-form-text[readonly],.c-form-number[readonly] {
    outline:none
}
.c-form-text:disabled,.c-form-number:disabled {
    background:#efefef;
    opacity:.6
}
@media screen and (min-width: 768px),print {
    .c-form-text,.c-form-number {
        padding:5px 11px
    }
}
.c-form-textarea {
    display:block;
    width:100%;
    min-height:78px;
    padding:5px 9px;
    font-size:1.6rem;
    line-height:1.4;
    background:#fff;
    border:solid 1px #d1d1d1
}
.c-form-textarea:disabled {
    background:#efefef;
    opacity:.6
}
@media screen and (min-width: 768px),print {
    .c-form-textarea {
        padding:5px 11px
    }
}
.c-form-select {
    position:relative
}
.c-form-select:has(.c-form-select__select:disabled) {
    opacity:.6
}
.c-form-select:before {
    position:absolute;
    display:block;
    content:"";
    top:50%;
    right:11px;
    width:8px;
    height:4px;
    background:#000;
    clip-path:polygon(0 0,100% 0,50% 100%);
    translate:0 -50%
}
.c-form-select__select {
    display:block;
    width:100%;
    height:30px;
    padding:5px 26px 5px 9px;
    font-size:1.3rem;
    line-height:1.4;
    background:#fff;
    border:solid 1px #d1d1d1
}
.c-form-select__select:disabled {
    background:#efefef
}
@media screen and (min-width: 768px),print {
    .c-form-select.-size-sm .c-form-select__select {
        height:25px;
        padding:3px 26px 3px 7px;
        font-size:1.2rem
    }
    .c-form-select.-size-md .c-form-select__select {
        height:32px;
        padding:5px 26px 5px 11px;
        font-size:1.4rem
    }
}
.c-form-range {
    position:relative;
    z-index:0;
    width:100%
}
.c-form-range__input {
    display:block;
    width:100%;
    height:4px;
    cursor:pointer;
    background:#d1d1d1;
    background:var(--range-inactive-color);
    border-radius:4px
}
.c-form-range__input[tabindex="-1"] {
    pointer-events:none;
    cursor:default
}
.c-form-range__input::-webkit-slider-thumb {
    width:8px;
    height:8px;
    -webkit-appearance:none;
    appearance:none;
    background:#000;
    background:var(--range-active-color);
    border-radius:100%;
    box-shadow:none
}
.c-form-range__input::-moz-range-thumb {
    width:8px;
    height:8px;
    background:#000;
    background:var(--range-active-color);
    border:none;
    border-radius:100%
}
@media screen and (min-width: 768px),print {
    .c-form-range__input {
        height:3px
    }
    .c-form-range__input::-webkit-slider-thumb {
        width:5px;
        height:5px
    }
    .c-form-range__input::-moz-range-thumb {
        width:5px;
        height:5px
    }
}
.c-form-rangeWithStep {
    position:relative;
    z-index:0
}
.c-form-rangeWithStep__input {
    display:block;
    width:100%;
    height:2px;
    cursor:pointer;
    background:#d1d1d1
}
.c-form-rangeWithStep__input[tabindex="-1"] {
    pointer-events:none;
    cursor:default
}
.c-form-rangeWithStep__input::-webkit-slider-thumb {
    width:8px;
    height:8px;
    -webkit-appearance:none;
    appearance:none;
    background:#000;
    border-radius:100%;
    box-shadow:none
}
.c-form-rangeWithStep__input::-moz-range-thumb {
    width:8px;
    height:8px;
    background:#000;
    border:none;
    border-radius:100%
}
.c-form-rangeWithStep__step {
    position:absolute;
    top:-3px;
    left:0;
    z-index:-1;
    display:flex;
    justify-content:space-between;
    width:100%
}
.c-form-rangeWithStep__step>* {
    display:block;
    width:8px;
    height:8px;
    background:#d1d1d1;
    border-radius:100%
}
@media screen and (min-width: 768px),print {
    .c-form-rangeWithStep__input {
        height:1px
    }
    .c-form-rangeWithStep__input::-webkit-slider-thumb {
        width:5px;
        height:5px
    }
    .c-form-rangeWithStep__input::-moz-range-thumb {
        width:5px;
        height:5px
    }
    .c-form-rangeWithStep__step {
        top:-2px
    }
    .c-form-rangeWithStep__step>* {
        width:5px;
        height:5px
    }
}
.c-form-fileUpload {
    position:relative;
    display:block;
    max-width:-moz-max-content;
    max-width:max-content;
    cursor:pointer
}
.c-form-fileUpload__input {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    overflow:hidden;
    white-space:nowrap;
    border:0;
    clip:rect(0 0 0 0);
    clip-path:inset(50%)
}
.c-form-fileUpload__btn {
    display:flex;
    align-items:center;
    justify-content:center;
    height:100%;
    color:#000;
    background:#fff;
    box-shadow:inset 0 0 0 1px #000;
    transition:color .3s,background .3s
}
.c-form-fileUpload__btn:focus-visible {
    background:#cacaca
}
@media (any-hover: hover) {
    .c-form-fileUpload__btn:hover {
        background:#cacaca
    }
}
.c-form-fileUpload.-size-xs .c-form-fileUpload__btn {
    padding:2px 8px 3px;
    font-size:1.2rem;
    line-height:1.3
}
.c-form-fileUpload.-size-sm .c-form-fileUpload__btn {
    padding:6px 8px;
    font-size:1.4rem;
    line-height:1.3
}
@media screen and (max-width: 767.98px) {
    .c-icon.-cad-01 {
        width:18px
    }
}
[data-icon] {
    display:block
}
[data-icon=arrowRight-02] {
    color:#000
}
.c-list-productLabel {
    display:flex;
    flex-direction:column;
    gap:2px 0;
    align-items:stretch;
    font-size:1rem;
    font-weight:500;
    line-height:1.2;
    color:#fff;
    text-align:center
}
.c-list-productLabel__item {
    background:#0009
}
@media screen and (min-width: 768px),print {
    .c-list-productLabel.-size-md {
        align-items:flex-start;
        text-align:left;
        letter-spacing:.05em
    }
    .c-list-productLabel.-size-md .c-list-productLabel__item {
        padding:1px 4px
    }
}
.c-list-productInfo__item {
    padding:8px 0 6px
}
.c-list-productInfo__item+.c-list-productInfo__item {
    border-top:dashed 1px #e6e6e6
}
.c-list-productInfo__item:first-child {
    padding-top:0
}
.c-list-productInfo__title {
    font-size:1.1rem;
    font-weight:400;
    line-height:1;
    color:#23181580
}
.c-list-productInfo__title>b {
    font-weight:inherit
}
.c-list-productInfo__txt {
    display:flex;
    flex-wrap:wrap;
    gap:0 8px;
    align-items:center;
    font-size:1.2rem;
    line-height:1.4
}
@media screen and (min-width: 768px),print {
    .c-list-productInfo.-size-md .c-list-productInfo__item {
        padding-top:10px
    }
    .c-list-productInfo.-size-md .c-list-productInfo__title {
        margin-bottom:4px;
        font-size:1.2rem
    }
    .c-list-productInfo.-size-md .c-list-productInfo__txt {
        font-size:1.4rem
    }
}
.c-txt {
    font-size:1.4rem
}
@media screen and (min-width: 768px),print {
    .c-txt {
        font-size:1.6rem
    }
}
.c-txt-productNote {
    display:inline-block;
    font-size:1.1rem;
    line-height:1.4;
    color:#d72928
}
.c-txt-productNote.-fill {
    display:block;
    padding:4px 6px;
    background:#d729280f
}
@media screen and (min-width: 768px),print {
    .c-txt-productNote {
        font-size:1.2rem
    }
    .c-txt-productNote.-fill {
        padding:6px 8px
    }
}
.c-hdg-productCategory {
    font-weight:700;
    line-height:1.4
}
.c-hdg-productCategory.-bullet {
    position:relative
}
.c-hdg-productCategory.-bullet:before {
    position:absolute;
    display:block;
    content:"";
    left:0;
    aspect-ratio:1/1;
    margin:0 6px 0 0;
    background:currentcolor;
    border-radius:100%
}
.c-hdg-productCategory.-bullet.-yellow:before {
    background:#fcc932
}
.c-hdg-productCategory.-bullet.-green:before {
    background:#30955d
}
.c-hdg-productCategory.-bullet.-red:before {
    background:#d72928
}
.c-hdg-productCategory.-bullet.-purple:before {
    background:#7b468e
}
.c-hdg-productCategory.-bullet.-blue:before {
    background:#3f69fc
}
.c-hdg-productCategory.-bullet.-gray:before {
    background:#807878
}
.c-hdg-productCategory.-size-xs {
    font-size:1.2rem
}
.c-hdg-productCategory.-size-xs.-bullet {
    padding-left:12px
}
.c-hdg-productCategory.-size-xs.-bullet:before {
    top:.4em;
    width:6px
}
.c-hdg-productCategory.-size-sm {
    font-size:1.4rem
}
.c-hdg-productCategory.-size-sm.-bullet {
    padding-left:14px
}
.c-hdg-productCategory.-size-sm.-bullet:before {
    top:.45em;
    width:8px
}
.c-hdg-productCategory.-size-md {
    font-size:1.6rem
}
.c-hdg-productCategory.-size-md.-bullet {
    padding-left:14px
}
.c-hdg-productCategory.-size-md.-bullet:before {
    top:.5em;
    width:8px
}
@media screen and (min-width: 768px),print {
    .c-hdg-productCategory.-size-md-xs {
        font-size:1.2rem
    }
    .c-hdg-productCategory.-size-md-xs.-bullet:before {
        top:.4em;
        width:6px
    }
    .c-hdg-productCategory.-size-md-sm {
        font-size:1.4rem
    }
    .c-hdg-productCategory.-size-md-sm.-bullet:before {
        top:.45em;
        width:8px
    }
    .c-hdg-productCategory.-size-md-md {
        font-size:1.6rem
    }
    .c-hdg-productCategory.-size-md-md.-bullet:before {
        top:.5em;
        width:8px
    }
}
.c-hdg-visuallyHidden {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    overflow:hidden;
    white-space:nowrap;
    border:0;
    clip:rect(0 0 0 0);
    clip-path:inset(50%)
}
.c-hdg-withLine {
    display:flex;
    gap:0 10px;
    align-items:center
}
.c-hdg-withLine:after {
    position:relative;
    display:inline-block;
    content:"";
    flex-grow:1;
    height:1px;
    background:#d1d1d1
}
.c-hdg-withLine__txt {
    flex-shrink:1;
    font-size:2rem;
    font-weight:700;
    line-height:1.05
}
.c-hdg-withLine__tag {
    display:inline-block;
    flex-shrink:1;
    padding:2px 12px;
    font-size:1.2rem;
    font-weight:400;
    line-height:1.4;
    background:#efefef;
    border-radius:100vmax
}
@media screen and (min-width: 768px),print {
    .c-hdg-withLine__txt {
        font-size:2.2rem;
        line-height:1.18
    }
    .c-hdg-withLine__tag {
        padding:3px 12px;
        font-size:1.4rem
    }
}
.c-hdg-modal {
    margin:0 0 12px;
    font-size:1.6rem;
    font-weight:700;
    line-height:1.4;
    text-align:center
}
.p-accordion-productSearch:not(.is-open) [data-icon=minus-01] {
    display:none
}
.p-accordion-productSearch.is-open [data-icon=plus-01] {
    display:none
}
.p-accordion-productSearch__head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:12px 16px
}
.p-accordion-productSearch__title {
    font-size:1.2rem;
    font-weight:700;
    line-height:1.4
}
.p-accordion-productSearch__icon {
    font-size:1.6rem
}
.p-accordion-productSearch__bodyInner {
    padding:0 16px 12px
}
@media screen and (min-width: 768px),print {
    .p-accordion-productSearch {
        background:#fff
    }
    .p-accordion-productSearch__head {
        padding:15px 16px
    }
    .p-accordion-productSearch__title {
        font-size:1.4rem
    }
    .p-accordion-productSearch__icon {
        font-size:2rem
    }
    .p-accordion-productSearch__bodyInner {
        padding-bottom:15px
    }
}
.p-card-small {
    position:relative;
    padding:10px 10px 1px
}
.p-card-small[tabindex="0"] {
    cursor:pointer
}
.p-card-small.is-selected {
    box-shadow:inset 0 0 0 3px #d1d1d1
}
.p-card-small:not(.is-selected) .p-card-small__check {
    display:none
}
.p-card-small__img {
    position:relative;
    max-width:70px
}
.p-card-small__img img {
    width:100%;
    height:100%;
    aspect-ratio:1/1;
    -o-object-fit:cover;
    object-fit:cover
}
.p-card-small__label {
    position:absolute;
    top:0;
    left:0;
    width:100%
}
.p-card-small__main {
    margin:6px 0 0
}
.p-card-small__main>* {
    margin-top:10px
}
.p-card-small__main>*:first-child {
    margin-top:0
}
.p-card-small__check {
    position:absolute;
    top:8px;
    right:8px;
    z-index:1;
    font-size:2rem
}
@media screen and (min-width: 768px),print {
    .p-card-small {
        padding:16px 16px 5px
    }
    .p-card-small.is-selected {
        box-shadow:inset 0 0 0 4px #d1d1d1
    }
    .p-card-small__img {
        max-width:100px
    }
    .p-card-small__label {
        padding-top:4px
    }
    .p-card-small__main {
        margin-top:5px
    }
}
.p-card-medium {
    position:relative;
    display:flex;
    flex-direction:column;
    padding:10px 10px 6px;
    text-align:left
}
.p-card-medium[tabindex="0"] {
    cursor:pointer
}
.p-card-medium.is-selected {
    box-shadow:inset 0 0 0 3px #d1d1d1
}
.p-card-medium:not(.is-selected) .p-card-medium__check {
    display:none
}
.p-card-medium__img {
    margin:0 0 10px
}
.p-card-medium__img img {
    width:100%;
    height:100%;
    aspect-ratio:172/107;
    -o-object-fit:cover;
    object-fit:cover
}
.p-card-medium__title {
    font-size:1.2rem;
    font-weight:700;
    line-height:1.4
}
.p-card-medium__title+.p-card-medium__txt {
    margin-top:4px
}
.p-card-medium__txt {
    font-size:1rem;
    line-height:1.4
}
.p-card-medium__check {
    position:absolute;
    top:8px;
    right:8px;
    z-index:1;
    font-size:2rem
}
@media screen and (min-width: 768px),print {
    .p-card-medium {
        padding:16px 16px 12px
    }
    .p-card-medium.is-selected {
        box-shadow:inset 0 0 0 4px #d1d1d1
    }
    .p-card-medium__img {
        margin-bottom:12px
    }
    .p-card-medium__title {
        font-size:1.4rem
    }
    .p-card-medium__title+.p-card-medium__txt {
        margin-top:6px
    }
    .p-card-medium__txt {
        font-size:1.4rem
    }
}
.p-card-large {
    position:relative;
    padding:10px 10px 7px
}
.p-card-large.-horizontal {
    display:grid;
    grid-template-areas:"side head" "side main";
    grid-template-rows:auto 1fr;
    grid-template-columns:70px 1fr;
    grid-gap:8px 12px;
    gap:8px 12px
}
.p-card-large.-vertical .p-card-large__main {
    margin-top:16px
}
.p-card-large[tabindex="0"] {
    cursor:pointer
}
.p-card-large.is-selected {
    box-shadow:inset 0 0 0 3px #d1d1d1
}
.p-card-large:not(.is-selected) .p-card-large__check {
    display:none
}
.p-card-large.is-selected .p-card-large__check  {
    display: block !important;
}
.p-card-large__head {
    grid-area:head
}
.p-card-large__img {
    position:relative;
    max-width:70px
}
.p-card-large__img img {
    width:100%;
    height:100%;
    aspect-ratio:1/1;
    -o-object-fit:cover;
    object-fit:cover
}
.p-card-large__label {
    position:absolute;
    top:0;
    left:0;
    width:100%
}
.p-card-large__btn {
    display:flex;
    flex-direction:column;
    gap:6px 0;
    margin:10px 0 3px
}
.p-card-large__side {
    grid-area:side
}
.p-card-large__main {
    grid-area:main
}
.p-card-large__main>* {
    margin-top:10px
}
.p-card-large__main>*:first-child {
    margin-top:0
}
.p-card-large__check {
    position:absolute;
    top:8px;
    right:8px;
    z-index:1;
    font-size:2rem
}
@media screen and (min-width: 768px),print {
    .p-card-large {
        padding:16px 16px 6px
    }
    .p-card-large.-horizontal {
        grid-template-columns:100px 1fr;
        gap:10px 16px
    }
    .p-card-large.-vertical .p-card-large__main {
        margin-top:20px
    }
    .p-card-large.is-selected {
        box-shadow:inset 0 0 0 4px #d1d1d1
    }
    .p-card-large__img {
        max-width:100px
    }
    .p-card-large__label {
        padding-top:4px
    }
    .p-card-large__btn {
        margin-bottom:10px
    }
}
.p-card-switch {
    display:grid;
    grid-template-areas:"switch" "img" "head" "main" "check";
    grid-template-rows:repeat(4,auto) 1fr;
    grid-template-columns:1fr;
    padding:8px 10px;
    background:#fff
}
.p-card-switch__head {
    grid-area:head;
    margin:8px 0 0
}
.p-card-switch__switch {
    grid-area:switch
}
.p-card-switch__img {
    position:relative;
    grid-area:img;
    max-width:70px;
    margin:10px 0 0
}
.p-card-switch__img img {
    width:100%;
    height:100%;
    aspect-ratio:1/1;
    -o-object-fit:cover;
    object-fit:cover
}
.p-card-switch__label {
    position:absolute;
    top:0;
    left:0;
    width:100%
}
.p-card-switch__main {
    grid-area:main;
    margin:10px 0 0
}
.p-card-switch__check {
    grid-area:check;
    padding:8px 0 0;
    border-top:solid 1px #e6e6e6
}
@media screen and (min-width: 768px),print {
    .p-card-switch__img {
        margin-top:14px
    }
}
.p-card-addImage {
    display:flex;
    flex-direction:column;
    padding:10px;
    background:#fff
}
.p-card-addImage__img img {
    width:100%;
    height:100%;
    aspect-ratio:142/70;
    -o-object-fit:contain;
    object-fit:contain;
    -o-object-position:left center;
    object-position:left center
}
.p-card-addImage__title {
    flex-grow:1;
    margin:8px 0 0;
    font-size:1.2rem;
    font-weight:700;
    line-height:1.4
}
.p-card-addImage__btn {
    padding:8px 0 0;
    margin:9px 0 0;
    border-top:solid 1px #e6e6e6
}
.p-card-addImage__btn .c-btn {
    width:100%
}
@media screen and (min-width: 768px),print {
    .p-card-addImage img {
        aspect-ratio:112/70
    }
}
.p-card-savedPlan {
    position:relative;
    background:#f9f9f9
}
.p-card-savedPlan:has(.is-current) {
    background:#e6e6e6
}
.p-card-savedPlan:has(.is-current) .c-btn {
    background:#fff
}
.p-card-savedPlan__body {
    padding:12px 8px
}
.p-card-savedPlan__img {
    display:block;
    aspect-ratio:100/71;
    margin:0 0 8px;
    background:#fff
}
.p-card-savedPlan__img img {
    width:100%;
    height:100%;
    -o-object-fit:contain;
    object-fit:contain
}
.p-card-savedPlan__label {
    display:flex;
    align-items:center;
    min-height:30px;
    padding:0 37px 0 0;
    font-size:1.2rem;
    font-weight:700;
    line-height:1.4;
    text-align:left
}
.p-card-savedPlan__delete {
    position:absolute;
    top:0;
    right:8px;
    display:flex;
    align-items:center;
    height:100%;
    padding:calc(71% + 8px) 0 12px;
    pointer-events:none
}
.p-card-savedPlan__delete .c-btn {
    pointer-events:auto
}
@media screen and (min-width: 768px),print {
    .p-card-savedPlan__body {
        padding:24px
    }
    .p-card-savedPlan__img {
        margin-bottom:12px
    }
    .p-card-savedPlan__label {
        font-size:1.4rem
    }
    .p-card-savedPlan__delete {
        right:24px;
        padding:71% 0 24px
    }
}
.p-card-savedOriginal {
    width:162px;
    padding:11px;
    background:#fff;
    border:solid 1px #d1d1d1
}
.p-card-savedOriginal__img {
    margin:0 0 12px
}
.p-card-savedOriginal__img img {
    width:100%;
    height:100%;
    aspect-ratio:306/217.5;
    -o-object-fit:contain;
    object-fit:contain
}
.p-card-savedOriginal__label {
    font-size:1.2rem;
    font-weight:700;
    line-height:1.4
}
.p-card-savedOriginal__btn {
    margin:6px 0 0
}
.p-card-savedOriginal__btn .c-btn {
    width:100%
}
@media screen and (min-width: 768px),print {
    .p-card-savedOriginal {
        width:354px;
        padding:23px
    }
    .p-card-savedOriginal__img {
        margin-bottom:18px
    }
    .p-card-savedOriginal__label {
        font-size:1.4rem
    }
    .p-card-savedOriginal__btn {
        margin-top:12px
    }
}
.p-card-savedPattern {
    display:flex;
    flex-direction:column;
    padding:12px;
    background:#fff
}
.p-card-savedPattern__img {
    position:relative;
    margin:0 0 12px
}
.p-card-savedPattern__img img {
    width:100%;
    height:100%;
    aspect-ratio:306/217.5;
    -o-object-fit:contain;
    object-fit:contain
}
.p-card-savedPattern__zoom {
    position:absolute;
    top:0;
    right:0
}
.p-card-savedPattern__zoom .c-btn {
    padding:3px;
    font-size:2.4rem;
    background:#efefef;
    border:solid 1px #000;
    border-radius:100%
}
.p-card-savedPattern__body {
    display:flex;
    flex-grow:1;
    flex-direction:column;
    margin:0 0 16px
}
.p-card-savedPattern__label {
    font-size:1.4rem;
    font-weight:700;
    line-height:1.4
}
.p-card-savedPattern__date {
    margin:0 0 12px;
    font-size:1.2rem;
    line-height:1.7;
    color:#787878
}
.p-card-savedPattern__icon {
    display:flex;
    gap:0 10px;
    margin:auto 0 0
}
.p-card-savedPattern__icon>* {
    flex:1
}
.p-card-savedPattern__btn {
    display:flex;
    flex-direction:column;
    gap:10px 16px;
    margin:auto 0 0
}
.p-card-savedPattern__btn>* {
    flex:1
}
@media screen and (min-width: 768px),print {
    .p-card-savedPattern {
        padding:24px
    }
    .p-card-savedPattern__img {
        margin-bottom:18px
    }
    .p-card-savedPattern__body {
        display:grid;
        flex-grow:0;
        grid-template-areas:"label icon" "date icon";
        grid-template-rows:auto 1fr;
        grid-template-columns:1fr auto;
        grid-gap:0 10px;
        gap:0 10px;
        margin-bottom:10px
    }
    .p-card-savedPattern__label {
        grid-area:label
    }
    .p-card-savedPattern__date {
        grid-area:date;
        margin-bottom:0;
        font-size:1.4rem
    }
    .p-card-savedPattern__icon {
        grid-area:icon;
        align-self:center;
        margin-top:0
    }
    .p-card-savedPattern__btn {
        flex-direction:row
    }
}
.p-form-radioGroup {
    display:flex;
    flex-wrap:wrap;
    gap:8px 16px
}
.p-form-radioBtnGroup {
    display:flex;
    flex-wrap:wrap;
    gap:8px 12px
}
@media screen and (max-width: 767.98px) {
    .p-form-radioBtnGroup__item {
        flex:1
    }
}
@media screen and (min-width: 768px),print {
    .p-form-radioBtnGroup__item {
        width:calc((100% - 24px) / 3)
    }
}
.p-form-radioImgGroup {
    display:flex;
    flex-wrap:wrap;
    gap:16px;
    justify-content:center
}
.p-form-radioImgGroup__item {
    width:calc((100% - 16px)/2);
    max-width:236px
}
@media screen and (min-width: 768px),print {
    .p-form-radioImgGroup {
        -moz-column-gap:24px;
        column-gap:24px
    }
    .p-form-radioImgGroup__item {
        width:calc((100% - 48px) / 3)
    }
}
.p-form-layoutGroup.-entryWithBtn {
    display:grid;
    grid-template-columns:1fr auto;
    grid-gap:8px;
    gap:8px
}
.p-form-layoutGroup.-addImage {
    display:grid;
    grid-template-rows:auto 1fr;
    grid-template-columns:1fr auto;
    grid-gap:10px 8px;
    gap:10px 8px
}
.p-form-layoutGroup.-addImage>*:nth-child(3) {
    grid-area:2/1/3/3
}
@container presenboard-settings-main (min-width: 600px) {
    .p-form-layoutGroup.-addImage {
        display:flex;
        gap:0 8px
    }
    .p-form-layoutGroup.-addImage>*:nth-child(1) {
        flex-grow:1
    }
    .p-form-layoutGroup.-addImage>*:nth-child(3) {
        width:130px;
        margin-left:16px
    }
    .p-form-layoutGroup.-addImage .c-btn {
        padding:2px 8px 3px;
        font-size:1.2rem;
        line-height:1.3
    }
}
.p-form-control.-border-top {
    border-top:solid 1px #e6e6e6
}
.p-form-control.-productSearch {
    display:grid;
    grid-gap:6px 10px;
    gap:6px 10px
}
.p-form-control.-productSearch.-border-top {
    padding-top:10px
}
.p-form-control.-presenBoard {
    display:flex;
    flex-direction:column;
    gap:9px 0
}
.p-form-control.-presenBoard.-border-top {
    padding-top:22px
}
.p-form-control.-login {
    max-width:400px;
    margin-left:auto;
    margin-right:auto
}
.p-form-control.-login .c-form-label {
    font-weight:700
}
@media screen and (min-width: 768px),print {
    .p-form-control.-productSearch {
        grid-template-columns:72px 1fr;
        align-items:center
    }
    .p-form-control.-productSearch.-border-top {
        padding-top:14px
    }
    .p-form-control.-presenBoard>:only-child.c-form-checkbox {
        padding:5px 0
    }
}
.p-layout-simulationNav__btn {
    display:flex;
    align-items:center;
    line-height:1.4;
    text-align:left;
    background:#fff
}
.p-layout-simulationNav__btn.-recommend {
    font-weight:700;
    color:#fff;
    background:#787878
}
.p-layout-simulationNav__btn.is-active {
    font-weight:700
}
@media screen and (max-width: 767.98px) {
    .p-layout-simulationNav__list {
        display:flex;
        overflow-x:auto;
        border:solid 1px #e6e6e6;
        border-right:none;
        border-left:none;
        scrollbar-width:none;
        -ms-overflow-style:none;
        -webkit-overflow-scrolling:touch
    }
    .p-layout-simulationNav__list::-webkit-scrollbar {
        display:none
    }
    .p-layout-simulationNav__item {
        flex-shrink:0;
        border-right:solid 1px #e6e6e6
    }
    .p-layout-simulationNav__btn {
        min-height:47px;
        padding:0 12px;
        font-size:1.2rem
    }
    .p-layout-simulationNav__content {
        display:none!important
    }
}
@media screen and (min-width: 768px),print {
    .p-layout-simulationNav__item {
        border-bottom:solid 1px #e6e6e6
    }
    .p-layout-simulationNav__item:has(.-recommend) {
        border-bottom-color:#000
    }
    .p-layout-simulationNav__item:has(.-recommend) .p-layout-simulationNavChild {
        border-top-color:#fff
    }
    .p-layout-simulationNav__btn {
        width:100%;
        min-height:49px;
        padding:15px 16px;
        font-size:1.4rem
    }
    .p-layout-simulationNav__content {
        display:none;
        overflow:hidden
    }
}
@media screen and (max-width: 767.98px) {
    .p-layout-simulationNavChildWrap {
        display:none;
        padding:12px 16px 11px;
        overflow-x:auto;
        background:#f9f9f9;
        border-bottom:solid 1px #e6e6e6;
        scrollbar-width:none;
        -ms-overflow-style:none;
        -webkit-overflow-scrolling:touch
    }
    .p-layout-simulationNavChildWrap::-webkit-scrollbar {
        display:none
    }
    .p-layout-simulationNavChildWrap:has(.is-active) {
        display:block
    }
    .p-layout-simulationNavChildWrap__item:not(.is-active) {
        display:none
    }
}
@media screen and (min-width: 768px),print {
    .p-layout-simulationNavChildWrap {
        display:none
    }
}
.p-layout-simulationNavChild__btn {
    display:flex;
    align-items:center;
    line-height:1.4;
    text-align:left
}
.p-layout-simulationNavChild__btn.-yellow:before {
    background:#fcc932
}
.p-layout-simulationNavChild__btn.-green:before {
    background:#30955d
}
.p-layout-simulationNavChild__btn.-red:before {
    background:#d72928
}
.p-layout-simulationNavChild__btn.-purple:before {
    background:#7b468e
}
.p-layout-simulationNavChild__btn.-blue:before {
    background:#3f69fc
}
.p-layout-simulationNavChild__btn.-gray:before {
    background:#807878
}
@media screen and (max-width: 767.98px) {
    .p-layout-simulationNavChild {
        display:flex;
        gap:0 12px
    }
    .p-layout-simulationNavChild__item {
        flex-shrink:0
    }
    .p-layout-simulationNavChild__item:last-child {
        position:relative
    }
    .p-layout-simulationNavChild__item:last-child:after {
        position:absolute;
        display:block;
        content:"";
        top:0;
        left:100%;
        width:16px;
        height:1px;
        background:transparent
    }
    .p-layout-simulationNavChild__btn {
        min-height:29px;
        padding:5px 13px;
        font-size:1.2rem;
        font-weight:700;
        background:#e6e6e6;
        border:solid 1px transparent;
        border-radius:100vmax
    }
    .p-layout-simulationNavChild__btn.is-current {
        background-color:#fff;
        border-color:#000
    }
    .p-layout-simulationNavChild__btn.-yellow:before,.p-layout-simulationNavChild__btn.-green:before,.p-layout-simulationNavChild__btn.-red:before,.p-layout-simulationNavChild__btn.-purple:before,.p-layout-simulationNavChild__btn.-blue:before,.p-layout-simulationNavChild__btn.-gray:before {
        position:relative;
        display:inline-block;
        content:"";
        width:6px;
        aspect-ratio:1/1;
        margin-right:6px;
        border-radius:100%
    }
}
@media screen and (min-width: 768px),print {
    .p-layout-simulationNavChild {
        border-top:solid 1px #e6e6e6
    }
    .p-layout-simulationNavChild__btn {
        width:100%;
        min-height:34px;
        padding:7px 16px;
        font-size:1.4rem;
        background:#fff
    }
    .p-layout-simulationNavChild__btn:before {
        position:relative;
        display:inline-block;
        content:"";
        flex-shrink:0;
        width:8px;
        aspect-ratio:1/1;
        margin-right:6px;
        background:currentcolor;
        border-radius:100%
    }
    .p-layout-simulationNavChild__btn.is-current {
        background:#f9f9f9
    }
}
.p-layout-simulationFoot {
    display:grid;
    grid-gap:0 10px;
    gap:0 10px;
    align-items:end;
    padding:10px 16px
}
.p-layout-simulationFoot__back {
    grid-area:back;
    white-space:nowrap
}
.p-layout-simulationFoot__otherBack {
    display:flex;
    grid-area:otherBack;
    gap:10px
}
.p-layout-simulationFoot__operation {
    display:flex;
    grid-area:operation;
    gap:10px;
    justify-self:end
}
.p-layout-simulationFoot__operation .c-btn {
    height:auto!important
}
.p-layout-simulationFoot:not(:has(.p-layout-simulationFoot__otherBack)) {
    grid-template-areas:"back operation";
    grid-template-rows:auto;
    grid-template-columns:1fr auto;
    align-items:stretch
}
.p-layout-simulationFoot:has(.p-layout-simulationFoot__otherBack) {
    grid-template-areas:"back otherBack" "operation operation";
    grid-template-rows:auto 1fr;
    grid-template-columns:1fr auto
}
.p-layout-simulationFoot:has(.p-layout-simulationFoot__otherBack) .p-layout-simulationFoot__operation {
    margin-top:10px
}
.p-layout-simulationFoot .c-btn {
    height:100%
}
@media screen and (min-width: 768px),print {
    .p-layout-simulationFoot__operation {
        display:none
    }
}
.p-layout-simulationHead__display {
    display:flex;
    justify-content:flex-end;
    padding:10px 16px
}
*+.p-layout-simulationHead__search {
    border-top:solid 1px #e6e6e6
}
@media screen and (min-width: 768px),print {
    .p-layout-simulationControl {
        min-height:136px
    }
}
.p-layout-btnGroup.-controlHead {
    display:flex;
    gap:8px;
    max-width:-moz-fit-content;
    max-width:fit-content
}
.p-layout-btnGroup.-angleWrap {
    display:flex;
    flex-direction:column;
    gap:12px 20px
}
.p-layout-btnGroup.-angleWrap .p-layout-btnGroup__item {
    display:flex;
    gap:16px
}
.p-layout-btnGroup.-angleWrap .p-layout-btnGroup__item>* {
    flex:1
}
@media screen and (min-width: 768px),print {
    .p-layout-btnGroup.-angleWrap {
        flex-direction:row
    }
    .p-layout-btnGroup.-angleWrap .p-layout-btnGroup__item {
        gap:10px
    }
    .p-layout-btnGroup.-angleWrap .p-layout-btnGroup__item>* {
        flex:initial
    }
}
.p-layout-btnGroup.-keepPers {
    display:flex;
    flex-wrap:wrap;
    gap:16px
}
.p-layout-btnGroup.-keepPers>* {
    width:min((100% - 32px) / 3,108px)
}
@media screen and (min-width: 768px),print {
    .p-layout-btnGroup.-keepPers {
        gap:4px 12px
    }
    .p-layout-btnGroup.-keepPers>* {
        width:78px
    }
}
.p-layout-btnGroup.-timezone {
    display:flex;
    flex-wrap:wrap;
    gap:12px 16px
}
.p-layout-btnGroup.-timezone>* {
    width:min((100% - 32px) / 3,108px)
}
@media screen and (min-width: 768px),print {
    .p-layout-btnGroup.-timezone {
        gap:4px 12px
    }
    .p-layout-btnGroup.-timezone>* {
        width:78px
    }
}
.p-layout-btnGroup.-photoComposite {
    display:flex;
    flex-wrap:wrap;
    gap:12px 16px
}
.p-layout-btnGroup.-photoComposite>* {
    width:min((100% - 32px) / 3,108px)
}
@media screen and (min-width: 768px),print {
    .p-layout-btnGroup.-photoComposite {
        gap:4px 12px
    }
    .p-layout-btnGroup.-photoComposite>* {
        width:108px
    }
}
.p-layout-btnGroup.-download {
    display:flex;
    flex-wrap:wrap;
    gap:12px 16px
}
.p-layout-btnGroup.-download>* {
    width:calc((100% - 16px)/2)
}
@media screen and (min-width: 768px),print {
    .p-layout-btnGroup.-download {
        gap:4px 12px
    }
    .p-layout-btnGroup.-download>* {
        width:auto
    }
}
.p-layout-btnGroup.-presenBoardSettingsOrder {
    display:flex;
    gap:8px
}
.p-layout-btnGroup.-presenboardEditFont {
    display:flex;
    gap:0 12px;
    min-height:44px
}
.p-layout-btnGroup.-presenboardEditFont>* {
    flex:1
}
.p-layout-btnGroup.-presenboardEditFoot {
    display:flex;
    flex-wrap:wrap;
    gap:24px 16px
}
.p-layout-btnGroup.-presenboardEditFoot>* {
    width:100%
}
.p-layout-btnGroup.-presenboardEditFoot .p-layout-btnGroup__item {
    display:flex;
    gap:0 16px
}
.p-layout-btnGroup.-presenboardEditFoot .p-layout-btnGroup__item>* {
    flex:1
}
@media screen and (min-width: 768px),print {
    .p-layout-btnGroup.-presenboardEditFoot {
        flex-wrap:nowrap;
        -moz-column-gap:4.7%;
        column-gap:4.7%;
        justify-content:center
    }
    .p-layout-btnGroup.-presenboardEditFoot>* {
        width:auto
    }
    .p-layout-btnGroup.-presenboardEditFoot>*.c-btn {
        flex-shrink:0;
        width:230px
    }
    .p-layout-btnGroup.-presenboardEditFoot .p-layout-btnGroup__item {
        -moz-column-gap:24px;
        column-gap:24px;
        width:100%;
        max-width:804px
    }
    .p-layout-btnGroup.-presenboardEditFoot .p-layout-btnGroup__item:has(>:only-child) {
        max-width:390px
    }
}
.p-layout-btnGroup.-presenboardPerspectiveSettings {
    display:flex;
    flex-direction:column-reverse;
    gap:24px;
    max-width:714px;
    margin:0 auto
}
@media screen and (min-width: 768px),print {
    .p-layout-btnGroup.-presenboardPerspectiveSettings {
        flex-direction:row
    }
    .p-layout-btnGroup.-presenboardPerspectiveSettings>* {
        flex:1
    }
}
.p-layout-btnGroup.-modal {
    display:flex;
    flex-direction:column;
    gap:12px;
    max-width:400px;
    margin:0 auto
}
.p-layout-btnGroup.-modal.-border-top {
    padding-top:24px;
    border-top:solid 1px #e6e6e6
}
.p-layout-btnGroup.-modal .-modalCancel {
    align-self:center
}
.p-layout-angleControlPanel {
    display:flex;
    flex-direction:column;
    gap:24px 32px
}
@media screen and (min-width: 768px),print {
    .p-layout-angleControlPanel {
        flex-direction:row;
        align-items:flex-start
    }
}
.p-layout-angleControl__item {
    display:flex;
    gap:0 38px;
    align-items:center
}
.p-layout-angleControl__item+.p-layout-angleControl__item {
    margin-top:16px
}
.p-layout-angleControl__title {
    flex-shrink:0;
    font-size:1.4rem;
    font-weight:700;
    line-height:1.4
}
.p-layout-angleControl__body {
    display:flex;
    flex-grow:1;
    gap:16px;
    align-items:center
}
.p-layout-angleControl .c-form-select {
    width:100%;
    max-width:150px;
    margin-right:22px
}
.p-layout-angleControl .c-form-rangeWithStep {
    width:100%;
    max-width:172px
}
@media screen and (max-width: 767.98px) {
    .p-layout-angleControl .c-btn [data-icon] {
        font-size:3rem;
        stroke-width:.7
    }
}
@media screen and (min-width: 768px),print {
    .p-layout-angleControl__item {
        -moz-column-gap:16px;
        column-gap:16px
    }
    .p-layout-angleControl__item+.p-layout-angleControl__item {
        margin-top:9px
    }
    .p-layout-angleControl__body {
        gap:8px
    }
    .p-layout-angleControl .c-form-select {
        max-width:73px;
        margin-right:8px
    }
    .p-layout-angleControl .c-form-rangeWithStep {
        max-width:81px
    }
}
.p-layout-photoCompositePanel {
    display:flex;
    flex-direction:column;
    gap:24px 32px
}
@media screen and (min-width: 768px),print {
    .p-layout-photoCompositePanel {
        flex-direction:row;
        align-items:flex-start
    }
    .p-layout-photoCompositePanel .p-layout-photoCompositeControl {
        flex-shrink:0
    }
}
.p-layout-photoCompositeControl__item {
    display:flex;
    gap:0 32px;
    align-items:center
}
.p-layout-photoCompositeControl__item+.p-layout-photoCompositeControl__item {
    margin-top:16px
}
.p-layout-photoCompositeControl__title {
    flex-shrink:0;
    font-size:1.4rem;
    font-weight:700;
    line-height:1.4
}
.p-layout-photoCompositeControl__body {
    display:flex;
    flex-grow:1;
    gap:16px;
    align-items:center
}
.p-layout-photoCompositeControl .c-form-range {
    max-width:242px
}
.p-layout-photoCompositeControl .c-btn {
    width:min((100% - 16px) / 2,113px)
}
@media screen and (min-width: 768px),print {
    .p-layout-photoCompositeControl__item {
        -moz-column-gap:16px;
        column-gap:16px
    }
    .p-layout-photoCompositeControl__item+.p-layout-photoCompositeControl__item {
        margin-top:9px
    }
    .p-layout-photoCompositeControl__body {
        gap:10px
    }
    .p-layout-photoCompositeControl .c-form-range {
        width:81px
    }
    .p-layout-photoCompositeControl .c-btn {
        width:auto
    }
}
.p-layout-card {
    display:grid
}
.p-layout-card>*.p-card-medium {
    border-bottom:solid 1px #e6e6e6
}
.p-layout-card>*.p-card-small:after,.p-layout-card>*.p-card-large:after {
    position:absolute;
    display:block;
    content:"";
    bottom:-1px;
    left:50%;
    z-index:-1;
    width:calc(100% - 20px);
    height:1px;
    background:#e6e6e6;
    translate:-50% 0
}
.p-layout-card>*:before {
    position:absolute;
    display:block;
    content:"";
    top:0;
    right:-1px;
    width:1px;
    height:calc(100% + 1px);
    background:#e6e6e6
}
.p-layout-card.-col-2 {
    grid-template-columns:repeat(2,1fr)
}
.p-layout-card.-col-2>*:nth-child(2n):before {
    display:none
}
.p-layout-card.-col-3 {
    grid-template-columns:repeat(3,1fr)
}
.p-layout-card.-col-3>*:nth-child(3n):before {
    display:none
}
@media screen and (min-width: 768px),print {
    .p-layout-card.-col-md-1 {
        grid-template-columns:1fr
    }
    .p-layout-card.-col-md-1>*:before {
        display:none
    }
}
.p-layout-switchCard {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(162px,1fr));
    border-left:solid 1px #e6e6e6
}
.p-layout-switchCard>* {
    position:relative;
    border-top:solid 1px #e6e6e6;
    border-right:solid 1px #e6e6e6
}
.p-layout-switchCard>*:before {
    position:absolute;
    display:block;
    content:"";
    bottom:-1px;
    left:-1px;
    width:calc(100% + 2px);
    height:1px;
    background:#e6e6e6
}
@media screen and (min-width: 768px),print {
    .p-layout-switchCard {
        grid-template-columns:repeat(auto-fill,minmax(132px,1fr))
    }
}
.p-layout-addImageCard {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(162px,1fr));
    border-left:solid 1px #e6e6e6
}
.p-layout-addImageCard>* {
    position:relative;
    border-top:solid 1px #e6e6e6;
    border-right:solid 1px #e6e6e6
}
.p-layout-addImageCard>*:before {
    position:absolute;
    display:block;
    content:"";
    bottom:-1px;
    left:-1px;
    width:calc(100% + 2px);
    height:1px;
    background:#e6e6e6
}
@media screen and (min-width: 768px),print {
    .p-layout-addImageCard {
        grid-template-columns:repeat(auto-fill,minmax(132px,1fr))
    }
}
.p-layout-presenBoardSettings {
    display:grid;
    grid-template-areas:"main" "sub" "foot";
    grid-template-rows:repeat(2,auto) 1fr;
    grid-gap:30px;
    gap:30px
}
.p-layout-presenBoardSettings__main {
    grid-area:main;
    padding:24px 16px;
    container:presenboard-settings-main/inline-size;
    background:#f9f9f9
}
.p-layout-presenBoardSettings__sub {
    grid-area:sub;
    padding:24px 16px;
    background:#f9f9f9
}
.p-layout-presenBoardSettings__foot {
    grid-area:foot;
    text-align:center
}
.p-layout-presenBoardSettings__foot .c-btn {
    min-width:min(390px,100%)
}
@media screen and (min-width: 768px),print {
    .p-layout-presenBoardSettings {
        grid-template-areas:"main sub" "foot foot";
        grid-template-rows:auto 1fr;
        grid-template-columns:1fr 46.54%;
        gap:40px 16px
    }
    .p-layout-presenBoardSettings__main {
        padding:24px
    }
    .p-layout-presenBoardSettings__sub {
        align-self:start;
        padding:24px
    }
}
.p-layout-presenBoardEdit {
    display:grid;
    grid-template-areas:"main" "foot";
    grid-template-rows:auto 1fr;
    grid-gap:30px;
    gap:30px;
    align-items:start
}
.p-layout-presenBoardEdit:has(.p-layout-presenBoardEdit__sub) {
    grid-template-areas:"main" "sub" "foot";
    grid-template-rows:repeat(2,auto) 1fr
}
.p-layout-presenBoardEdit__main {
    grid-area:main;
    width:100%;
    background:#f9f9f9
}
.p-layout-presenBoardEdit__visual {
    margin:0 auto;
    border:solid 1px #d1d1d1
}
.p-layout-presenBoardEdit__sub {
    grid-area:sub;
    padding:24px 16px;
    background:#f9f9f9
}
.p-layout-presenBoardEdit__sub .c-btn,.p-layout-presenBoardEdit__sub .c-form-fileUpload {
    width:100%;
    max-width:none
}
.p-layout-presenBoardEdit__foot {
    grid-area:foot;
    text-align:center
}
@media screen and (min-width: 768px),print {
    .p-layout-presenBoardEdit {
        gap:40px 16px
    }
    .p-layout-presenBoardEdit:has(.p-layout-presenBoardEdit__sub) {
        grid-template-areas:"main sub" "foot foot";
        grid-template-rows:auto 1fr;
        grid-template-columns:1fr minmax(270px,25.44%)
    }
    .p-layout-presenBoardEdit__main {
        max-width:998px;
        margin:0 auto
    }
    .p-layout-presenBoardEdit__visual.-vertical {
        max-width:600px
    }
    .p-layout-presenBoardEdit__sub {
        align-self:start;
        padding:24px
    }
}
.p-layout-presenBoardSettingsOrder {
    padding:10px 0 0
}
.p-layout-presenBoardSettingsOrder__item {
    display:flex;
    gap:0 24px;
    align-items:center
}
.p-layout-presenBoardSettingsOrder__item+.p-layout-presenBoardSettingsOrder__item {
    padding-top:16px;
    margin-top:16px;
    border-top:dashed 1px #e6e6e6
}
.p-layout-savedDataList {
    position:relative;
    display:flex;
    margin:0 0 -30px
}
.p-layout-savedDataList__open {
    position:absolute;
    top:0;
    right:0;
    z-index:1;
    display:flex;
    background:#e6e6e6;
    transition:visibility .3s
}
.p-layout-savedDataList__open .c-btn {
    padding:8px;
    font-size:2.6rem;
    border:solid 1px #d1d1d1
}
.p-layout-savedDataList__nav {
    background:#f9f9f9
}
.p-layout-savedDataList__navInner {
    scrollbar-width:none;
    -ms-overflow-style:none;
    -webkit-overflow-scrolling:touch;
    height:100dvh;
    overflow-y:auto
}
.p-layout-savedDataList__navInner::-webkit-scrollbar {
    display:none
}
.p-layout-savedDataList__close {
    display:flex;
    background:#e6e6e6
}
.p-layout-savedDataList__close .c-btn {
    justify-content:flex-start;
    width:100%;
    padding:8px;
    font-size:2.6rem
}
.p-layout-savedDataList__main {
    flex-grow:1;
    min-height:100dvh
}
.p-layout-savedDataList__panel {
    height:100%;
    padding:12px 16px;
    background:#e6e6e6
}
.p-layout-savedDataList__panel>*:not(:first-child) {
    margin-top:16px
}
@media screen and (max-width: 767.98px) {
    .p-layout-savedDataList {
        margin-right:-16px;
        margin-left:-16px;
        overflow:hidden
    }
    .p-layout-savedDataList__nav {
        position:absolute;
        top:0;
        right:0;
        z-index:2;
        width:117px;
        border-top:solid 1px #d1d1d1;
        border-left:solid 1px #d1d1d1;
        transition:translate .3s,visibility .3s
    }
    .p-layout-savedDataList__navInner {
        overscroll-behavior-y:contain
    }
    .p-layout-savedDataList.is-fixed .p-layout-savedDataList__open,.p-layout-savedDataList.is-fixed .p-layout-savedDataList__nav {
        position:fixed;
        top:0
    }
    .p-layout-savedDataList.is-open .p-layout-savedDataList__open {
        visibility:hidden
    }
    .p-layout-savedDataList:not(.is-open) .p-layout-savedDataList__nav {
        visibility:hidden;
        translate:100%
    }
}
@media screen and (min-width: 768px),print {
    .p-layout-savedDataList {
        margin-bottom:-40px
    }
    .p-layout-savedDataList__open {
        display:none
    }
    .p-layout-savedDataList__nav {
        flex-shrink:0;
        width:248px
    }
    .p-layout-savedDataList__navInner {
        position:sticky;
        top:0
    }
    .p-layout-savedDataList__close {
        display:none
    }
    .p-layout-savedDataList__panel {
        padding:24px
    }
    .p-layout-savedDataList__panel>*:not(:first-child) {
        margin-top:32px
    }
}
.p-layout-savedPlanCard>*:not(:first-child) {
    border-top:solid 1px #e6e6e6
}
.p-layout-savedPatternCard {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(178px,1fr));
    grid-gap:1px;
    gap:1px
}
@media screen and (min-width: 768px),print {
    .p-layout-savedPatternCard {
        grid-template-columns:repeat(auto-fill,minmax(300px,1fr))
    }
}
.p-layout-presenboardPerspectiveSettings__visual {
    max-width:716px;
    aspect-ratio:358/254;
    margin:0 auto;
    background:#e6e6e6;
    border:1px solid #d0d0d0
}
.p-layout-presenboardPerspectiveSettings__visualArea {
    width:100%;
    height:100%
}
.p-layout-presenboardPerspectiveSettings__visualArea>canvas {
    width:100%;
    height:100%;
    -o-object-fit:contain;
    object-fit:contain
}
.p-layout-presenboardPerspectiveSettings__control {
    padding:10px 16px 16px;
    margin:0 -16px;
    background:#efefef
}
.p-layout-presenboardPerspectiveSettings__foot {
    padding:24px 0
}
@media screen and (min-width: 768px),print {
    .p-layout-presenboardPerspectiveSettings__control {
        width:100vw;
        padding:5px 40px 12px;
        margin:0 calc(50% - 50vw)
    }
    .p-layout-presenboardPerspectiveSettings__foot {
        padding:16px 0
    }
}
.p-layout-perspectiveControl {
    display:flex;
    flex-direction:column
}
.p-layout-perspectiveControl__item+.p-layout-perspectiveControl__item {
    padding-top:8px;
    margin-top:16px;
    border-top:solid 1px #d1d1d1
}
.p-layout-perspectiveControl__title {
    margin:0 0 8px;
    font-size:1.4rem;
    font-weight:700;
    line-height:1.7;
    text-align:center
}
.p-layout-perspectiveControl__body {
    max-width:358px;
    margin:0 auto
}
@media screen and (min-width: 768px),print {
    .p-layout-perspectiveControl {
        flex-direction:row;
        gap:0 80px;
        justify-content:center
    }
    .p-layout-perspectiveControl__item {
        display:flex;
        flex-direction:column;
        padding-right:30px;
        padding-left:30px
    }
    .p-layout-perspectiveControl__item+.p-layout-perspectiveControl__item {
        position:relative;
        padding-top:0;
        margin-top:0;
        border-top:none
    }
    .p-layout-perspectiveControl__item+.p-layout-perspectiveControl__item:before {
        position:absolute;
        display:block;
        content:"";
        bottom:0;
        left:-40px;
        width:1px;
        height:calc(100% - 7px);
        background:#d1d1d1
    }
    .p-layout-perspectiveControl__title {
        margin-bottom:4px
    }
    .p-layout-perspectiveControl__body {
        display:flex;
        flex-grow:1;
        flex-direction:column;
        justify-content:center
    }
}
.p-modal__overlay {
    position:fixed;
    inset:0;
    z-index:200;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px 16px;
    background:#3a3a3ab3
}
.p-modal__window {
    position:relative;
    display:flex;
    flex-direction:column;
    width:100%;
    max-width:840px;
    max-height:100%;
    overflow-y:auto;
    background:#fff;
    border-radius:10px;
    box-shadow:0 0 10px #00000024
}
.p-modal__body {
    padding:18px 16px 24px;
    font-size:1.4rem;
    line-height:1.6
}
@media screen and (min-width: 768px),print {
    .p-modal__body {
        padding:24px 24px 32px;
        font-size:1.6rem
    }
}
.p-tab-control__head {
    position:relative;
    display:flex;
    flex-direction:column;
    padding:16px 16px 0
}
.p-tab-control__head:before {
    position:absolute;
    display:block;
    content:"";
    bottom:0;
    left:0;
    width:100%;
    height:1px;
    background:#d1d1d1
}
.p-tab-control__list {
    display:flex;
    gap:0 20px;
    padding:0 16px;
    margin:10px -16px 0;
    overflow-x:auto;
    scrollbar-width:none;
    -ms-overflow-style:none;
    -webkit-overflow-scrolling:touch
}
.p-tab-control__list::-webkit-scrollbar {
    display:none
}
.p-tab-control__hook {
    position:relative;
    display:block;
    flex-shrink:0;
    padding:0 0 9px;
    font-size:1.4rem;
    line-height:1.7;
    letter-spacing:.05em;
    transition:font-weight .3s
}
.p-tab-control__hook:before {
    position:absolute;
    display:block;
    content:"";
    bottom:0;
    left:0;
    width:100%;
    height:2px;
    background:#000;
    opacity:0;
    transition:opacity .3s
}
.p-tab-control__hook.is-current {
    font-weight:700
}
.p-tab-control__hook.is-current:before {
    opacity:1
}
.p-tab-control__panel {
    padding:16px 16px 24px
}
@media screen and (min-width: 768px),print {
    .p-tab-control__head {
        flex-direction:row-reverse;
        align-items:flex-start;
        justify-content:space-between;
        padding:15px 24px 0
    }
    .p-tab-control__list {
        margin-top:0
    }
    .p-tab-control__panel {
        padding:12px 24px 16px
    }
}
.js-accordion__content {
    display:none;
    overflow:hidden
}
.js-modal {
    display:none
}
.js-modal.is-open {
    display:block
}
.js-modal .p-modal__overlay,.js-modal .p-modal__window {
    will-change:transform
}
.js-modal[aria-hidden=false] .p-modal__overlay {
    animation:modal-fadein .3s
}
.js-modal[aria-hidden=true] .p-modal__overlay {
    animation:modal-fadeout .3s
}
@media screen and (max-width: 767.98px) {
    .js-spSticky__nav,.js-spSticky__foot,.js-spSticky__visual {
        position:sticky;
        z-index:100
    }
    .js-spSticky__foot {
        top:0
    }
}
.u-display-inline {
    display:inline
}
.u-display-inlineBlock {
    display:inline-block
}
.u-display-block {
    display:block
}
.u-align-left {
    text-align:left
}
.u-align-center {
    text-align:center
}
.u-align-right {
    text-align:right
}
.u-mt-0 {
    margin-top:0!important
}
.u-mt-2 {
    margin-top:2px!important
}
.u-mt-4 {
    margin-top:4px!important
}
.u-mt-6 {
    margin-top:6px!important
}
.u-mt-8 {
    margin-top:8px!important
}
.u-mt-10 {
    margin-top:10px!important
}
.u-mt-12 {
    margin-top:12px!important
}
.u-mt-14 {
    margin-top:14px!important
}
.u-mt-16 {
    margin-top:16px!important
}
.u-mt-18 {
    margin-top:18px!important
}
.u-mt-20 {
    margin-top:20px!important
}
.u-mt-22 {
    margin-top:22px!important
}
.u-mt-24 {
    margin-top:24px!important
}
.u-mt-26 {
    margin-top:26px!important
}
.u-mt-28 {
    margin-top:28px!important
}
.u-mt-30 {
    margin-top:30px!important
}
.u-mt-32 {
    margin-top:32px!important
}
.u-mt-34 {
    margin-top:34px!important
}
.u-mt-36 {
    margin-top:36px!important
}
.u-mt-38 {
    margin-top:38px!important
}
.u-mt-40 {
    margin-top:40px!important
}
.u-mt-42 {
    margin-top:42px!important
}
.u-mt-44 {
    margin-top:44px!important
}
.u-mt-46 {
    margin-top:46px!important
}
.u-mt-48 {
    margin-top:48px!important
}
.u-mt-50 {
    margin-top:50px!important
}
.u-mt-52 {
    margin-top:52px!important
}
.u-mt-54 {
    margin-top:54px!important
}
.u-mt-56 {
    margin-top:56px!important
}
.u-mt-58 {
    margin-top:58px!important
}
.u-mt-60 {
    margin-top:60px!important
}
.u-mt-62 {
    margin-top:62px!important
}
.u-mt-64 {
    margin-top:64px!important
}
.u-mt-66 {
    margin-top:66px!important
}
.u-mt-68 {
    margin-top:68px!important
}
.u-mt-70 {
    margin-top:70px!important
}
.u-mt-72 {
    margin-top:72px!important
}
.u-mt-74 {
    margin-top:74px!important
}
.u-mt-76 {
    margin-top:76px!important
}
.u-mt-78 {
    margin-top:78px!important
}
.u-mt-80 {
    margin-top:80px!important
}
.u-mt-82 {
    margin-top:82px!important
}
.u-mt-84 {
    margin-top:84px!important
}
.u-mt-86 {
    margin-top:86px!important
}
.u-mt-88 {
    margin-top:88px!important
}
.u-mt-90 {
    margin-top:90px!important
}
.u-mt-92 {
    margin-top:92px!important
}
.u-mt-94 {
    margin-top:94px!important
}
.u-mt-96 {
    margin-top:96px!important
}
.u-mt-98 {
    margin-top:98px!important
}
.u-mt-100 {
    margin-top:100px!important
}
@media screen and (min-width: 768px),print {
    .u-mt-md-0 {
        margin-top:0!important
    }
    .u-mt-md-2 {
        margin-top:2px!important
    }
    .u-mt-md-4 {
        margin-top:4px!important
    }
    .u-mt-md-6 {
        margin-top:6px!important
    }
    .u-mt-md-8 {
        margin-top:8px!important
    }
    .u-mt-md-10 {
        margin-top:10px!important
    }
    .u-mt-md-12 {
        margin-top:12px!important
    }
    .u-mt-md-14 {
        margin-top:14px!important
    }
    .u-mt-md-16 {
        margin-top:16px!important
    }
    .u-mt-md-18 {
        margin-top:18px!important
    }
    .u-mt-md-20 {
        margin-top:20px!important
    }
    .u-mt-md-22 {
        margin-top:22px!important
    }
    .u-mt-md-24 {
        margin-top:24px!important
    }
    .u-mt-md-26 {
        margin-top:26px!important
    }
    .u-mt-md-28 {
        margin-top:28px!important
    }
    .u-mt-md-30 {
        margin-top:30px!important
    }
    .u-mt-md-32 {
        margin-top:32px!important
    }
    .u-mt-md-34 {
        margin-top:34px!important
    }
    .u-mt-md-36 {
        margin-top:36px!important
    }
    .u-mt-md-38 {
        margin-top:38px!important
    }
    .u-mt-md-40 {
        margin-top:40px!important
    }
    .u-mt-md-42 {
        margin-top:42px!important
    }
    .u-mt-md-44 {
        margin-top:44px!important
    }
    .u-mt-md-46 {
        margin-top:46px!important
    }
    .u-mt-md-48 {
        margin-top:48px!important
    }
    .u-mt-md-50 {
        margin-top:50px!important
    }
    .u-mt-md-52 {
        margin-top:52px!important
    }
    .u-mt-md-54 {
        margin-top:54px!important
    }
    .u-mt-md-56 {
        margin-top:56px!important
    }
    .u-mt-md-58 {
        margin-top:58px!important
    }
    .u-mt-md-60 {
        margin-top:60px!important
    }
    .u-mt-md-62 {
        margin-top:62px!important
    }
    .u-mt-md-64 {
        margin-top:64px!important
    }
    .u-mt-md-66 {
        margin-top:66px!important
    }
    .u-mt-md-68 {
        margin-top:68px!important
    }
    .u-mt-md-70 {
        margin-top:70px!important
    }
    .u-mt-md-72 {
        margin-top:72px!important
    }
    .u-mt-md-74 {
        margin-top:74px!important
    }
    .u-mt-md-76 {
        margin-top:76px!important
    }
    .u-mt-md-78 {
        margin-top:78px!important
    }
    .u-mt-md-80 {
        margin-top:80px!important
    }
    .u-mt-md-82 {
        margin-top:82px!important
    }
    .u-mt-md-84 {
        margin-top:84px!important
    }
    .u-mt-md-86 {
        margin-top:86px!important
    }
    .u-mt-md-88 {
        margin-top:88px!important
    }
    .u-mt-md-90 {
        margin-top:90px!important
    }
    .u-mt-md-92 {
        margin-top:92px!important
    }
    .u-mt-md-94 {
        margin-top:94px!important
    }
    .u-mt-md-96 {
        margin-top:96px!important
    }
    .u-mt-md-98 {
        margin-top:98px!important
    }
    .u-mt-md-100 {
        margin-top:100px!important
    }
}
.u-mb-0 {
    margin-bottom:0!important
}
.u-mb-2 {
    margin-bottom:2px!important
}
.u-mb-4 {
    margin-bottom:4px!important
}
.u-mb-6 {
    margin-bottom:6px!important
}
.u-mb-8 {
    margin-bottom:8px!important
}
.u-mb-10 {
    margin-bottom:10px!important
}
.u-mb-12 {
    margin-bottom:12px!important
}
.u-mb-14 {
    margin-bottom:14px!important
}
.u-mb-16 {
    margin-bottom:16px!important
}
.u-mb-18 {
    margin-bottom:18px!important
}
.u-mb-20 {
    margin-bottom:20px!important
}
.u-mb-22 {
    margin-bottom:22px!important
}
.u-mb-24 {
    margin-bottom:24px!important
}
.u-mb-26 {
    margin-bottom:26px!important
}
.u-mb-28 {
    margin-bottom:28px!important
}
.u-mb-30 {
    margin-bottom:30px!important
}
.u-mb-32 {
    margin-bottom:32px!important
}
.u-mb-34 {
    margin-bottom:34px!important
}
.u-mb-36 {
    margin-bottom:36px!important
}
.u-mb-38 {
    margin-bottom:38px!important
}
.u-mb-40 {
    margin-bottom:40px!important
}
.u-mb-42 {
    margin-bottom:42px!important
}
.u-mb-44 {
    margin-bottom:44px!important
}
.u-mb-46 {
    margin-bottom:46px!important
}
.u-mb-48 {
    margin-bottom:48px!important
}
.u-mb-50 {
    margin-bottom:50px!important
}
.u-mb-52 {
    margin-bottom:52px!important
}
.u-mb-54 {
    margin-bottom:54px!important
}
.u-mb-56 {
    margin-bottom:56px!important
}
.u-mb-58 {
    margin-bottom:58px!important
}
.u-mb-60 {
    margin-bottom:60px!important
}
.u-mb-62 {
    margin-bottom:62px!important
}
.u-mb-64 {
    margin-bottom:64px!important
}
.u-mb-66 {
    margin-bottom:66px!important
}
.u-mb-68 {
    margin-bottom:68px!important
}
.u-mb-70 {
    margin-bottom:70px!important
}
.u-mb-72 {
    margin-bottom:72px!important
}
.u-mb-74 {
    margin-bottom:74px!important
}
.u-mb-76 {
    margin-bottom:76px!important
}
.u-mb-78 {
    margin-bottom:78px!important
}
.u-mb-80 {
    margin-bottom:80px!important
}
.u-mb-82 {
    margin-bottom:82px!important
}
.u-mb-84 {
    margin-bottom:84px!important
}
.u-mb-86 {
    margin-bottom:86px!important
}
.u-mb-88 {
    margin-bottom:88px!important
}
.u-mb-90 {
    margin-bottom:90px!important
}
.u-mb-92 {
    margin-bottom:92px!important
}
.u-mb-94 {
    margin-bottom:94px!important
}
.u-mb-96 {
    margin-bottom:96px!important
}
.u-mb-98 {
    margin-bottom:98px!important
}
.u-mb-100 {
    margin-bottom:100px!important
}
@media screen and (min-width: 768px),print {
    .u-mb-md-0 {
        margin-bottom:0!important
    }
    .u-mb-md-2 {
        margin-bottom:2px!important
    }
    .u-mb-md-4 {
        margin-bottom:4px!important
    }
    .u-mb-md-6 {
        margin-bottom:6px!important
    }
    .u-mb-md-8 {
        margin-bottom:8px!important
    }
    .u-mb-md-10 {
        margin-bottom:10px!important
    }
    .u-mb-md-12 {
        margin-bottom:12px!important
    }
    .u-mb-md-14 {
        margin-bottom:14px!important
    }
    .u-mb-md-16 {
        margin-bottom:16px!important
    }
    .u-mb-md-18 {
        margin-bottom:18px!important
    }
    .u-mb-md-20 {
        margin-bottom:20px!important
    }
    .u-mb-md-22 {
        margin-bottom:22px!important
    }
    .u-mb-md-24 {
        margin-bottom:24px!important
    }
    .u-mb-md-26 {
        margin-bottom:26px!important
    }
    .u-mb-md-28 {
        margin-bottom:28px!important
    }
    .u-mb-md-30 {
        margin-bottom:30px!important
    }
    .u-mb-md-32 {
        margin-bottom:32px!important
    }
    .u-mb-md-34 {
        margin-bottom:34px!important
    }
    .u-mb-md-36 {
        margin-bottom:36px!important
    }
    .u-mb-md-38 {
        margin-bottom:38px!important
    }
    .u-mb-md-40 {
        margin-bottom:40px!important
    }
    .u-mb-md-42 {
        margin-bottom:42px!important
    }
    .u-mb-md-44 {
        margin-bottom:44px!important
    }
    .u-mb-md-46 {
        margin-bottom:46px!important
    }
    .u-mb-md-48 {
        margin-bottom:48px!important
    }
    .u-mb-md-50 {
        margin-bottom:50px!important
    }
    .u-mb-md-52 {
        margin-bottom:52px!important
    }
    .u-mb-md-54 {
        margin-bottom:54px!important
    }
    .u-mb-md-56 {
        margin-bottom:56px!important
    }
    .u-mb-md-58 {
        margin-bottom:58px!important
    }
    .u-mb-md-60 {
        margin-bottom:60px!important
    }
    .u-mb-md-62 {
        margin-bottom:62px!important
    }
    .u-mb-md-64 {
        margin-bottom:64px!important
    }
    .u-mb-md-66 {
        margin-bottom:66px!important
    }
    .u-mb-md-68 {
        margin-bottom:68px!important
    }
    .u-mb-md-70 {
        margin-bottom:70px!important
    }
    .u-mb-md-72 {
        margin-bottom:72px!important
    }
    .u-mb-md-74 {
        margin-bottom:74px!important
    }
    .u-mb-md-76 {
        margin-bottom:76px!important
    }
    .u-mb-md-78 {
        margin-bottom:78px!important
    }
    .u-mb-md-80 {
        margin-bottom:80px!important
    }
    .u-mb-md-82 {
        margin-bottom:82px!important
    }
    .u-mb-md-84 {
        margin-bottom:84px!important
    }
    .u-mb-md-86 {
        margin-bottom:86px!important
    }
    .u-mb-md-88 {
        margin-bottom:88px!important
    }
    .u-mb-md-90 {
        margin-bottom:90px!important
    }
    .u-mb-md-92 {
        margin-bottom:92px!important
    }
    .u-mb-md-94 {
        margin-bottom:94px!important
    }
    .u-mb-md-96 {
        margin-bottom:96px!important
    }
    .u-mb-md-98 {
        margin-bottom:98px!important
    }
    .u-mb-md-100 {
        margin-bottom:100px!important
    }
}

/*追加 y.tanaka*/
.invisible {
    visibility: hidden !important;
}
.presen_base_img_area {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100%;
}
.presen_base_img_area img {
    position: absolute;
}
.d-none {
    display: none !important;
}
.d-none_extra { /*強制非表示*/
    display: none !important;
}
.p-card-addImage__img {
    margin-top: 6px;
}

.btn_presen_edit_text:disabled
{
    filter: brightness(0.8);
    cursor: not-allowed;
}
.btn_presen_edit:disabled
{
    filter: brightness(0.8);
    cursor: not-allowed;
}

/* 追加 古川 */
.p-layout-simulationNavChild__btn.-yane1:before {
    background:#FF7600
}
.p-layout-simulationNavChild__btn.-yane2:before {
    background:#1728AF
}
.p-layout-simulationNavChild__btn.-yane3 :before {
    background:#FF7600
}
.p-layout-simulationNavChild__btn.-yane4:before {
    background:#0E6875
}
.p-layout-simulationNavChild__btn.-yane5:before {
    background:#58B103
}
.p-layout-simulationNavChild__btn.-wall1:before {
    background:#FFC925
}
.p-layout-simulationNavChild__btn.-wall2:before {
    background:#1F9557
}
.p-layout-simulationNavChild__btn.-wall3:before {
    background:#D90100
}
.p-layout-simulationNavChild__btn.-wall4:before {
    background:#762D99
}
.p-layout-simulationNavChild__btn.-wall5:before {
    background:#245BFF
}
.c-hdg-productCategory.-bullet.-yane1:before {
    background:#FF7600
}
.c-hdg-productCategory.-bullet.-yane2:before {
    background:#1728AF
}
.c-hdg-productCategory.-bullet.-yane3:before {
    background:#FF7600
}
.c-hdg-productCategory.-bullet.-yane4:before {
    background:#0E6875
}
.c-hdg-productCategory.-bullet.-yane5:before {
    background:#58B103
}
.c-hdg-productCategory.-bullet.-wall1:before {
    background:#FFC925
}
.c-hdg-productCategory.-bullet.-wall2:before {
    background:#1F9557
}
.c-hdg-productCategory.-bullet.-wall3:before {
    background:#D90100
}
.c-hdg-productCategory.-bullet.-wall4:before {
    background:#762D99
}
.c-hdg-productCategory.-bullet.-wall5:before {
    background:#245BFF
}
@media screen and (max-width: 767.98px) {
    .p-layout-simulationNavChild__btn.-yane1:before,.p-layout-simulationNavChild__btn.-yane2:before,.p-layout-simulationNavChild__btn.-yane3:before,.p-layout-simulationNavChild__btn.-yane4:before,.p-layout-simulationNavChild__btn.-yane5:before,.p-layout-simulationNavChild__btn.-wall1:before,.p-layout-simulationNavChild__btn.-wall2:before,.p-layout-simulationNavChild__btn.-wall3:before,.p-layout-simulationNavChild__btn.-wall4:before,.p-layout-simulationNavChild__btn.-wall5:before {
        position:relative;
        display:inline-block;
        content:"";
        width:6px;
        aspect-ratio:1/1;
        margin-right:6px;
        border-radius:100%
    }
}
#application-canvas  {
    display: block;
    width: 100%;
    height: calc(100vh - 120px);
    /* 全画面の高さ確保 */
    background: #111;
    /* 見やすい背景 */
}
.p-card-large__check svg  {
    stroke: #000000 !important;
    fill: none !important;
}
.c-icon  {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.c-icon.-circle  {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #fff;
    /* ← 白丸になる */
    border: 1px solid #ccc;
}
.c-icon.-circle svg  {
    width: 14px;
    height: 14px;
    stroke: #000;
    /* ← 黒いチェック */
    fill: none;
}
/*反転フラグ*/
.door-color-img-hanten {
    transform: scale(-1, 1);
    -o-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    -moz-transform: scale(-1, 1);
    -webkit-transform: scale(-1, 1);
}

.door-img-thum {
    -o-object-fit: contain !important;
    object-fit: contain !important;
}

.no_border-top {
    border-top: none !important;
}

.buzai_img {
    cursor: pointer;
}

.wgl_none_louver {
    display: none !important;
}
.c_panel_door_maker_none {
    display: none !important;
}

.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    width: 100%;
    padding-right: var(--bs-gutter-x, .75rem);
    padding-left: var(--bs-gutter-x, .75rem);
    margin-right: auto;
    margin-left: auto
}

/*****************************************
/* 拡大表示用 */
#modal-zoom .p-modal__window{
    width: 100vw;
    height: 100vh;
    max-width: none;
    max-height: none;
    margin: 0;
}
#modal-zoom .p-modal__body{
    width: 100%;
    height: 100%;
    margin: 0;
    position: relative;
    display: flex;
    flex-direction: column;
}
#zoom-canvas-mount{
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
#modal-zoom .p-layout-btnGroup{
    position: absolute;
    top: 16px;
    right: 16px;
    margin: 0;
}
.width-unset
{
    width: unset !important;
}

/* カラーが一致しないのを解消 */
.l-main-simulation__visual {
    background:#f9f9f9;
}