:root{--bg-color: #f4f7f6;--primary-color: #2c3e50;--accent-color: #c5a028;--text-main: #333333}body{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;display:-webkit-box;display:-ms-flexbox;display:flex;flex-direction:column;min-height:100vh;margin:0;overflow-x:hidden;background-color:var(--bg-color);color:var(--text-main);font-family:Zen Kaku Gothic New,sans-serif}.site-title{-webkit-box-shadow:0 2px 10px rgba(0,0,0,.05);-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;-webkit-box-align:baseline;-ms-flex-align:baseline;display:-webkit-box;display:-ms-flexbox;display:flex;flex-direction:row;align-items:baseline;margin:0;padding:1.5rem 2rem;gap:1rem;background:#fff;box-shadow:0 2px 10px #0000000d}.site-title__main{color:#c5a028;font-weight:400;font-size:clamp(1.5rem,3vw,2rem);font-family:UnifrakturMaguntia,cursive;letter-spacing:.05em}.site-title__sub{color:#666;font-weight:500;font-size:clamp(.75rem,2vw,1rem);font-family:Zen Kaku Gothic New,sans-serif;letter-spacing:.1em}.site-title__links{-webkit-box-align:baseline;-ms-flex-align:baseline;display:-webkit-box;display:-ms-flexbox;display:flex;align-items:baseline;margin-left:auto;gap:1rem}.site-title__link{-webkit-transition:all .3s ease;padding:.4rem 1.2rem;border:1px solid #c5a028;border-radius:20px;background:#c5a0280d;color:#9b7e1f;font-weight:600;font-size:.9rem;text-decoration:none;transition:all .3s ease}.site-title__link:hover{-webkit-transform:translateY(-2px);-ms-transform:translateY(-2px);-webkit-box-shadow:0 4px 8px rgba(197,160,40,.2);transform:translateY(-2px);border-color:#b08f24;background:#c5a02826;box-shadow:0 4px 8px #c5a02833}@-webkit-keyframes titleGlow{0%,to{text-shadow:0 0 10px rgba(197,160,40,.5),0 2px 4px rgba(0,0,0,.3)}50%{text-shadow:0 0 20px rgba(197,160,40,.8),0 0 30px rgba(197,160,40,.4),0 2px 4px rgba(0,0,0,.3)}}@keyframes titleGlow{0%,to{text-shadow:0 0 10px rgba(197,160,40,.5),0 2px 4px rgba(0,0,0,.3)}50%{text-shadow:0 0 20px rgba(197,160,40,.8),0 0 30px rgba(197,160,40,.4),0 2px 4px rgba(0,0,0,.3)}}.main{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-box-shadow:0 0 20px rgba(0,0,0,.05);display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;flex-direction:column;width:100%;max-width:100vw;min-height:100vh;margin:0 auto;overflow-x:hidden;background:#fff;box-shadow:0 0 20px #0000000d}.animation-area{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-box-align:center;-ms-flex-align:center;display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;align-items:center;justify-content:center;width:100%;height:60vh;min-height:600px;background:radial-gradient(circle at center,#fff,#f0f2f5)}.result-area{z-index:10;position:relative;width:100%;padding-bottom:2rem;border-top:1px solid rgba(197,160,40,.2);background:#fff}.bg-effect{-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);z-index:0;position:absolute;top:50%;left:50%;width:100vw;height:100vh;transform:translate(-50%,-50%);pointer-events:none}.bg-effect__circle{-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid rgba(197,160,40,.1);border-radius:50%}.bg-effect__circle--1{width:400px;height:400px}.bg-effect__circle--2{width:600px;height:600px}.bg-effect__circle--3{width:800px;height:800px}.tarotStage{-webkit-perspective:1000px;-webkit-box-shadow:0 10px 40px rgba(0,0,0,.3),inset 0 0 60px rgba(197,160,40,.1);z-index:1;position:relative;width:100%;height:100%;border:3px solid #3a2f1f;background:linear-gradient(135deg,#1a1a2e,#0f0f1e);box-shadow:0 10px 40px #0000004d,inset 0 0 60px #c5a0281a;perspective:1000px}.tarotStage:before{position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(197,160,40,.2);border-radius:15px;content:"";pointer-events:none}.card-slots{-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);display:-webkit-box;display:-ms-flexbox;display:flex;z-index:2;position:absolute;top:50%;left:50%;gap:40px;transform:translate(-50%,-50%)}.card-slot{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;display:-webkit-box;display:-ms-flexbox;display:flex;flex-direction:column;align-items:center;gap:12px}.card-slot__frame{-webkit-box-shadow:inset 0 0 20px rgba(197,160,40,.1),0 4px 15px rgba(0,0,0,.2);position:relative;aspect-ratio:897/1371;width:207px;border:2px dashed rgba(197,160,40,.4);border-radius:8px;background:#c5a0280d;box-shadow:inset 0 0 20px #c5a0281a,0 4px 15px #0003}.card-slot__frame:before{-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);position:absolute;top:50%;left:50%;width:60%;height:80%;transform:translate(-50%,-50%);border:1px solid rgba(197,160,40,.2);border-radius:4px;content:""}.card-slot__label{color:#c5a028;font-weight:600;font-size:14px;font-family:Times New Roman,serif;letter-spacing:2px;text-shadow:0 2px 4px rgba(0,0,0,.5);text-transform:uppercase}.anim-card{-webkit-transform-style:preserve-3d;position:absolute;top:0;left:0;aspect-ratio:897/1371;width:180px;transform-style:preserve-3d;opacity:0}.tarotCard{-webkit-transform-style:preserve-3d;-webkit-box-shadow:0 0 10px rgba(0,0,0,.5);position:relative;width:100%;height:100%;transform-style:preserve-3d;border-radius:6px;box-shadow:0 0 10px #00000080}.tarotCard__face{-webkit-backface-visibility:hidden;position:absolute;width:100%;height:100%;overflow:hidden;border:1px solid #c5a028;border-radius:6px;backface-visibility:hidden;background:#000}.tarotCard__face--front{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;display:-webkit-box;display:-ms-flexbox;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2a1a4a,#000)}.tarotCard__face--front img{-o-object-fit:cover;width:100%;height:100%;object-fit:cover;border-radius:6px}.tarotCard__face--front{background-image:url(../images/card_back_new.png);background-position:center;background-size:cover}.tarotCard__face--back{-webkit-transform:rotateY(180deg);transform:rotateY(180deg)}.tarotCard__face--back img{-o-object-fit:cover;-o-object-position:center;display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:6px}.actionArea{-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-webkit-transition:opacity .5s;z-index:50;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition:opacity .5s}.actionArea--hidden{opacity:0;pointer-events:none}.actionArea__drawButton{-webkit-transition:all .3s ease;-webkit-backdrop-filter:blur(5px);padding:1rem 3rem;border:2px solid #c5a028;border-radius:50px;backdrop-filter:blur(5px);background:#0009;color:#c5a028;font-size:1.2rem;font-family:Times New Roman,serif;letter-spacing:.2em;cursor:pointer;transition:all .3s ease}.actionArea__drawButton:hover{-webkit-box-shadow:0 0 30px rgba(197,160,40,.6);background:#c5a028;box-shadow:0 0 30px #c5a02899;color:#000}.resultBoard{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;padding:1rem 2rem;color:#333}.resultBoard__title{margin-bottom:2rem;padding-bottom:.5rem;border-bottom:2px solid #c5a028;color:#2c3e50;font-weight:700;font-size:1.5rem;font-family:Zen Kaku Gothic New,sans-serif;letter-spacing:.1em;text-align:center}.resultBoard__story{-webkit-box-pack:center;-ms-flex-pack:center;display:grid;grid-template-columns:repeat(2,1fr);justify-content:center;gap:2rem}.resultBoard__story>div:nth-child(1){grid-column:span 2}.resultBoard__chapter{-webkit-box-flex:1;-ms-flex:1 1 300px;-webkit-box-shadow:0 4px 12px rgba(0,0,0,.05);flex:1 1 300px;padding:1.5rem;border:1px solid rgba(0,0,0,.05);border-radius:8px;background:#fff;box-shadow:0 4px 12px #0000000d}.resultBoard__chapter{-webkit-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px);opacity:0}.resultBoard__chapter.is-visible{-webkit-animation:fadeIn .8s ease forwards;animation:fadeIn .8s ease forwards}.resultBoard__chapterTitle{margin-bottom:.8rem;padding-bottom:.4rem;border-bottom:1px solid rgba(0,0,0,.05);color:#c5a028;font-weight:700;font-size:.9rem;letter-spacing:.05em;text-transform:uppercase}.resultBoard__cardName{margin-bottom:1rem;color:#2c3e50;font-weight:700;font-size:1.2rem}.resultBoard__keywordText{color:#333;font-size:.95rem;line-height:1.8}.resultBoard__jobSuggestion{margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(0,0,0,.05)}.resultBoard__suggestionLabel{margin-bottom:.8rem;font-weight:700}.resultBoard__suggestionLabel strong{font-size:1.2rem}.resultBoard__tagList{-ms-flex-wrap:wrap;display:-webkit-box;display:-ms-flexbox;display:flex;flex-wrap:wrap;margin-top:.8rem;padding:0;gap:.8rem;list-style:none}.resultBoard__tagItem{-webkit-transition:all .3s ease;-webkit-box-shadow:0 4px 12px rgba(197,160,40,.3);padding:.75rem 2rem;border:none;border-radius:30px;background:#c5a028;box-shadow:0 4px 12px #c5a0284d;color:#fff;font-weight:600;font-size:.85rem;font-family:Zen Kaku Gothic New,sans-serif;cursor:pointer;transition:all .3s ease}.resultBoard__tagItem:hover{-webkit-box-shadow:0 6px 16px rgba(197,160,40,.4);-webkit-transform:translateY(-2px);-ms-transform:translateY(-2px);transform:translateY(-2px);background:#9b7e1f;box-shadow:0 6px 16px #c5a02866}.resultBoard__tagItem:active{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.resultBoard__retryButton{-webkit-transition:all .3s ease;width:100%;max-width:400px;margin-top:1.5rem;padding:.4rem 1rem;border:1px solid #c5a028;border-radius:20px;background:#c5a0280d;color:#9b7e1f;font-weight:700;font-size:1rem;font-family:Zen Kaku Gothic New,sans-serif;cursor:pointer;transition:all .3s ease}.resultBoard__retryButton:hover{-webkit-transform:translateY(-2px);-ms-transform:translateY(-2px);-webkit-box-shadow:0 4px 8px rgba(197,160,40,.2);transform:translateY(-2px);border-color:#b08f24;background:#c5a02826;box-shadow:0 4px 8px #c5a02833}.resultBoard__retryButton:active{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}@-webkit-keyframes fadeIn{to{-webkit-transform:translateY(0);transform:translateY(0);opacity:1}}@keyframes fadeIn{to{-webkit-transform:translateY(0);transform:translateY(0);opacity:1}}.about-page{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;padding:3rem 2rem}.about-page__container{max-width:900px;margin:0 auto}.about-section{margin-bottom:4rem}.about-section__title{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:3px solid #c5a028;color:#c5a028;font-weight:700;font-size:2rem;letter-spacing:.1em;text-align:center}.about-section__text{margin-bottom:1.5rem;color:#333;font-size:1.1rem;line-height:2}.about-section__text--highlight{margin-top:2rem;padding:1.5rem;border-left:4px solid #c5a028;border-radius:4px;background:#c5a02814;color:#2c3e50;font-weight:600;font-size:1.15rem}.about-section__text--emphasis{margin-top:2rem;margin-bottom:2rem;color:#c5a028;font-weight:700;font-size:1.3rem;line-height:2.2;text-align:center}.about-section__text--closing{margin-top:2rem;margin-bottom:3rem;color:#c5a028;font-weight:600;font-size:1.2rem;text-align:center}.about-cta{margin-top:3rem;text-align:center}.about-cta__button{-webkit-box-shadow:0 6px 20px rgba(197,160,40,.3);-webkit-transition:all .3s ease;display:inline-block;padding:1rem 3rem;border-radius:30px;background:#c5a028;box-shadow:0 6px 20px #c5a0284d;color:#fff;font-weight:600;font-size:1.2rem;text-decoration:none;transition:all .3s ease}.about-cta__button:hover{-webkit-box-shadow:0 8px 24px rgba(197,160,40,.4);-webkit-transform:translateY(-3px);-ms-transform:translateY(-3px);transform:translateY(-3px);background:#9b7e1f;box-shadow:0 8px 24px #c5a02866}.company-page{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;padding:3rem 2rem}.company-page__container{max-width:900px;margin:0 auto}.company-section{margin-bottom:4rem}.company-section__title{margin-bottom:2rem;padding-bottom:1rem;border-bottom:3px solid #c5a028;color:#c5a028;font-weight:700;font-size:2rem;letter-spacing:.1em;text-align:center}.company-section__text{margin-bottom:1rem;color:#333;font-size:1rem;line-height:1.9}.company-info{overflow:hidden;border:1px solid rgba(0,0,0,.1);border-radius:8px;background:#fff}.company-info__row{display:grid;grid-template-columns:200px 1fr;border-bottom:1px solid rgba(0,0,0,.05)}.company-info__row:last-child{border-bottom:none}.company-info__label{padding:1.5rem;border-right:1px solid rgba(0,0,0,.05);background:#c5a0280d;color:#2c3e50;font-weight:700}.company-info__value{margin:0;padding:1.5rem;color:#333;line-height:1.8}.company-info__link{-webkit-transition:all .3s ease;color:#c5a028;text-decoration:none;transition:all .3s ease}.company-info__link:hover{color:#9b7e1f;text-decoration:underline}.company-cta{margin-top:3rem;text-align:center}.company-cta__button{-webkit-box-shadow:0 6px 20px rgba(197,160,40,.3);-webkit-transition:all .3s ease;display:inline-block;padding:1rem 3rem;border-radius:30px;background:#c5a028;box-shadow:0 6px 20px #c5a0284d;color:#fff;font-weight:600;font-size:1.2rem;text-decoration:none;transition:all .3s ease}.company-cta__button:hover{-webkit-box-shadow:0 8px 24px rgba(197,160,40,.4);-webkit-transform:translateY(-3px);-ms-transform:translateY(-3px);transform:translateY(-3px);background:#9b7e1f;box-shadow:0 8px 24px #c5a02866}@media(max-width:768px){.site-title__links{gap:.5rem}.site-title{-ms-flex-wrap:wrap;flex-wrap:wrap;padding:1rem;gap:.75rem}.site-title__link{padding:.3rem 1rem;font-size:.8rem}.animation-area{height:50vh;min-height:300px}.card-slots{gap:20px}.card-slot__frame{width:92px;max-width:35vw}.card-slot__label{font-size:10px;letter-spacing:1px}.anim-card{aspect-ratio:897/1371;width:80px;max-width:30%}.actionArea__drawButton{padding:.75rem 1rem;border-radius:20px;font-size:1rem}.resultBoard{padding:1rem}.resultBoard__story{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;display:-webkit-box;display:-ms-flexbox;display:flex;flex-direction:column}.resultBoard__story>div:nth-child(1){grid-column:span 1}.resultBoard__chapter{-webkit-box-flex:1;-ms-flex:1 1 100%;flex:1 1 100%}.about-page{padding:2rem 1rem}.about-section__title{font-size:1.5rem}.about-section__text{font-size:1rem;line-height:1.8}.about-section__text--highlight{padding:1rem;font-size:1.05rem}.about-section__text--emphasis{font-size:1.15rem}.about-section__text--closing{font-size:1.1rem}.about-cta__button{padding:.8rem 2rem;font-size:1rem}.company-page{padding:2rem 1rem}.company-section__title{font-size:1.5rem}.company-section__text{font-size:.95rem}.company-info__row{grid-template-columns:1fr}.company-info__label{padding:1rem;border-right:none;border-bottom:1px solid rgba(0,0,0,.05)}.company-info__value{padding:1rem}.company-cta__button{padding:.8rem 2rem;font-size:1rem}}
