@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600;700&display=swap";
:root{--color-primary:#006fe4;--color-primary-dark:#0056cc;--color-accent:#ff6b00;--color-accent-dark:#e55a00;--color-text-primary:#1a1a1a;--color-text-secondary:#333;--color-text-tertiary:#666;--color-background:#fafafa;--color-background-white:#fff;--color-border:#e5e5e5}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-background);color:var(--color-text-secondary);font-family:Noto Sans JP,sans-serif;line-height:1.6}.container-custom{max-width:1200px;margin:0 auto;padding:0 1rem}@media (min-width:768px){.container-custom{padding:0 1.5rem}}.section-spacing{padding:3rem 0}@media (min-width:768px){.section-spacing{padding:4rem 0}}@media (min-width:1024px){.section-spacing{padding:6rem 0}}.manga-section-spacing{padding-top:1.5rem;padding-bottom:0}@media (min-width:768px){.manga-section-spacing{padding-top:2rem;padding-bottom:0}}@media (min-width:1024px){.manga-section-spacing{padding-top:3rem;padding-bottom:0}}.flow-section-spacing{padding-top:1.5rem;padding-bottom:3rem}@media (min-width:768px){.flow-section-spacing{padding-top:2rem;padding-bottom:4rem}}@media (min-width:1024px){.flow-section-spacing{padding-top:3rem;padding-bottom:6rem}}.marker-text{background-image:linear-gradient(#0000 60%,#fdde34 60%);background-position:0 .6em;background-repeat:no-repeat;background-size:100% .8em;font-weight:700}.animate-fade-in{animation:.8s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-12{gap:3rem}.gap-16{gap:4rem}.space-y-1>*+*{margin-top:.25rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}@media (min-width:768px){.space-y-1>*+*,.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*,.space-y-8>*+*{margin-top:2rem}}.relative{position:relative}.absolute{position:absolute}.sticky{position:sticky}.top-0{top:0}.right-0{right:0}.left-0{left:0}.z-10{z-index:10}.z-50{z-index:50}.text-left{text-align:left}.text-center{text-align:center}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-white{color:#fff}.bg-white{background-color:#fff}.shadow-sm{box-shadow:0 1px 2px #0000000d}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.shadow-2xl{box-shadow:0 25px 50px -12px #00000040}.drop-shadow-lg{filter:drop-shadow(0 10px 8px #0000000a)drop-shadow(0 4px 3px #0000001a)}.drop-shadow-2xl{filter:drop-shadow(0 25px 50px #00000040)}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.hover\:scale-105:hover{transform:scale(1.05)}.hover\:scale-110:hover{transform:scale(1.1)}.hover\:shadow-2xl:hover{box-shadow:0 25px 50px -12px #00000040}.hover\:bg-primary-dark:hover{background-color:var(--color-primary-dark)}.hover\:bg-accent-dark:hover{background-color:var(--color-accent-dark)}.hover\:bg-gray-300:hover{background-color:#d1d5db}.overflow-hidden{overflow:hidden}.uppercase{text-transform:uppercase}.tracking-wide{letter-spacing:.025em}.whitespace-nowrap{white-space:nowrap}.p-2{padding:.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.pt-10{padding-top:2rem}.pt-12{padding-top:3rem}.pb-14{padding-bottom:2rem}.pb-16{padding-bottom:4rem}.pb-24{padding-bottom:6rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-20{margin-top:5rem}.w-full{width:100%}.w-36{width:9rem}.w-40{width:10rem}.w-44{width:11rem}.w-96{width:24rem}.h-full{height:100%}.h-36{height:9rem}.h-40{height:10rem}.h-44{height:11rem}.h-96{height:24rem}.aspect-square{aspect-ratio:1}.max-w-lg{max-width:32rem}.mx-auto{margin-left:auto;margin-right:auto}.border{border-width:1px}.border-t{border-top-width:1px}.border-gray-200{border-color:#e5e7eb}.bg-primary{background-color:var(--color-primary)}.bg-accent{background-color:var(--color-accent)}.bg-yellow-200{background-color:#fef08a}.text-text-primary{color:var(--color-text-primary)}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-7xl{font-size:4.5rem;line-height:1}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.opacity-80{opacity:.8}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.blur-3xl{filter:blur(64px)}.blur-xl{filter:blur(24px)}.-translate-y-1\/2{transform:translateY(-50%)}.translate-y-1\/2{transform:translateY(50%)}.translate-x-1\/2{transform:translate(50%)}.-translate-x-1\/2{transform:translate(-50%)}.object-contain{-o-object-fit:contain;object-fit:contain}.grid{display:grid}@media (min-width:768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:px-5{padding-left:1.25rem;padding-right:1.25rem}.md\:px-8{padding-left:2rem;padding-right:2rem}.md\:px-12{padding-left:3rem;padding-right:3rem}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:py-3{padding-top:.75rem;padding-bottom:.75rem}.md\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.md\:pt-20{padding-top:5rem}.md\:pb-24{padding-bottom:6rem}.md\:mt-12{margin-top:3rem}.md\:mt-16{margin-top:4rem}.md\:mt-20{margin-top:5rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:whitespace-nowrap{white-space:nowrap}.md\:gap-16{gap:4rem}.md\:gap-8{gap:2rem}.md\:gap-6{gap:1.5rem}.md\:gap-24{gap:6rem}.md\:gap-32{gap:8rem}}@media (min-width:1024px){.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:gap-32{gap:8rem}}@media (min-width:1280px){.xl\:text-5xl{font-size:3rem;line-height:1}.xl\:text-6xl{font-size:3.75rem;line-height:1}.xl\:text-7xl{font-size:4.5rem;line-height:1}}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--color-primary),var(--color-primary-dark))}.bg-white\/5{background-color:#ffffff0d}.bg-accent\/10{background-color:#ff6b001a}.focus\:outline-none:focus{outline-offset:2px;outline:2px solid #0000}.focus\:ring-2:focus{box-shadow:0 0 0 2px #006fe480}.focus\:ring-offset-2:focus{outline-offset:2px}.focus\:ring-primary:focus{box-shadow:0 0 0 2px var(--color-primary)}.focus\:ring-accent:focus{box-shadow:0 0 0 2px var(--color-accent)}.btn-base{outline-offset:2px;border:none;border-radius:2rem;outline:2px solid #0000;font-weight:600;transition:all .2s}.btn-base:focus{outline:none}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:var(--color-primary-dark);transform:scale(1.05)}.btn-primary:focus{box-shadow:0 0 0 2px var(--color-primary)}.btn-secondary{color:var(--color-text-primary);background-color:#e5e7eb}.btn-secondary:hover{background-color:#d1d5db}.btn-accent{color:#fff;background-color:#ff9d14;border:none;box-shadow:0 2px 4px #0000001a,0 4px 8px #00000014}.btn-accent:hover{background-color:#e58a12;transform:scale(1.05);box-shadow:0 4px 8px #0000001f,0 8px 16px #0000001a}.btn-accent:focus{box-shadow:none;outline:none}.btn-sm{padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem}.btn-md{padding:.75rem 1.5rem;font-size:1rem;line-height:1.5rem}.btn-lg{padding:1rem 2rem;font-size:1.09rem;line-height:1.75rem}.btn-padding-narrow{padding:1rem!important}.hover\:text-primary:hover{color:var(--color-primary)}.bg-gray-200{background-color:#e5e7eb}.text-text-secondary{color:var(--color-text-secondary)}.text-white\/95{color:#fffffff2}.text-white\/70{color:#ffffffb3}.font-medium{font-weight:500}.group:hover .group-hover\:scale-110{transform:scale(1.1)}.flex-wrap{flex-wrap:wrap}.justify-center{justify-content:center}.inset-0{inset:0}.w-7{width:1.75rem}.h-7{height:1.75rem}.w-9{width:2.25rem}.h-9{height:2.25rem}@media (min-width:768px){.md\:w-9{width:2.25rem}.md\:h-9{height:2.25rem}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:block{display:block}}.writing-vertical-rl{writing-mode:vertical-rl;text-orientation:upright}.header-logo{writing-mode:horizontal-tb}@media (min-width:768px){.header-logo{writing-mode:vertical-rl;text-orientation:upright}}.btn-md.writing-vertical-rl{justify-content:center;align-items:center;height:auto;min-height:120px;padding:1.5rem .75rem;display:inline-flex}.underline{text-decoration:underline}.border{border-style:solid;border-width:1px}.border-gray-300{border-color:#d1d5db}.hamburger-menu-button{cursor:pointer;background-color:#fff;border:1px solid #fff;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:32px;height:32px;padding:0;display:flex}.hamburger-line{background-color:var(--color-text-primary);width:18px;height:2px;transition:all .3s}.header-bottom-line{background-color:var(--color-primary);width:100%;height:2px}.contact-form .contact-radio-input{opacity:0;width:0;height:0;position:absolute}.contact-form .contact-radio-label{box-sizing:border-box;cursor:pointer;width:100%;padding:5px 0 5px 30px;display:inline-block;position:relative}.contact-form .contact-radio-label:before{content:"";background:#fff;border:1px solid #ccc;border-radius:3px;width:16px;height:16px;margin-top:-8px;display:block;position:absolute;top:50%;left:5px}.contact-form .contact-radio-label:after{content:"";opacity:0;border-bottom:3px solid #006fe4;border-right:6px solid #006fe4;width:9px;height:20px;margin-top:-16px;transition:transform .2s ease-in-out,opacity .2s ease-in-out;display:block;position:absolute;top:50%;left:7px;transform:rotate(45deg)translateY(2px)scale(.7)}.contact-form .contact-radio-input:checked+.contact-radio-label:before{border-color:#666}.contact-form .contact-radio-input:checked+.contact-radio-label:after{opacity:1;transform:rotate(45deg)scale(1)}.contact-form .contact-checkbox-input{opacity:0;width:0;height:0;position:absolute}.contact-form .contact-checkbox-label{box-sizing:border-box;cursor:pointer;padding:5px 0 5px 30px;display:inline-block;position:relative}.contact-form .contact-checkbox-label:before{content:"";background:#fff;border:1px solid #ccc;border-radius:3px;width:16px;height:16px;margin-top:-8px;display:block;position:absolute;top:50%;left:5px}.contact-form .contact-checkbox-label:after{content:"";opacity:0;border-bottom:3px solid #006fe4;border-right:6px solid #006fe4;width:9px;height:20px;margin-top:-16px;transition:transform .2s ease-in-out,opacity .2s ease-in-out;display:block;position:absolute;top:50%;left:7px;transform:rotate(45deg)translateY(2px)scale(.7)}.contact-form .contact-checkbox-input:checked+.contact-checkbox-label:before{border-color:#666}.contact-form .contact-checkbox-input:checked+.contact-checkbox-label:after{opacity:1;transform:rotate(45deg)scale(1)}
