@charset "UTF-8";:root{--color-brand-brown:#84563c;--color-blue-light:#C0DFFF;--color-blue-accent:#AED9FF;--color-white:#fff;--color-black:#000;--color-text-warmblown:#5A4B3A;--color-text-strong:#333;--font-libertine:'Linux Libertine',serif;--font-NotoSans:"Noto Sans JP",serif;}.loading_screen{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#f7f3eb;z-index:9999;display:flex;justify-content:center;align-items:center;transition:opacity 1.8s ease,background-color 1.8s ease;}.loading_screen.fade_out{background-color:#fffaf5;opacity:0;}.loading_screen.hide{display:none;}body.loaded{background-color:#fffaf5;transition:background-color 1.8s ease .3s;}.loading_text,.loading_cursor{font-family:var(--font-libertine);font-weight:normal;font-style:normal;color:var(--color-text-warmblown);}.loading_cursor{display:inline-block;animation:blink .6s step-end infinite;}header{top:0;left:0;width:100%;z-index:1000;display:flex;justify-content:space-between;align-items:center;}.nav_menu li,.main_text,.vertical_text{font-family:var(--font-libertine);font-style:normal;font-weight:normal;}.container{display:flex;width:100%;margin:0;padding:0;box-sizing:border-box;overflow:hidden;}.split_left,.split_right{opacity:0;transform:translateY(20px);transition:opacity 1s ease,transform 1s ease;;}.split_left.start,.split_right.start{opacity:1;transform:translateY(0);}.main_text01,.main_text02,.main_text03,.main_text04{opacity:0;transform:translateY(30px);font-family:var(--font-libertine);}.section_heading{display:flex;align-items:baseline;}.about_title,.works_title,.contact_title,.works_subtitle{font-family:var(--font-libertine);font-weight:bold;font-style:normal;}.section_heading .subtitle{font-family:var(--font-NotoSans);position:relative;margin:0;}.about_title span,.works_title span,.contact_title span,.section_heading p.subtitle span{display:inline-block;transform:translateY(100%);opacity:0;}.about_title,.works_title,.contact_title,.section_heading p.subtitle{display:inline-block;}.bounce span{animation:bounce .9s cubic-bezier(.33,0,.3,1.3) forwards;opacity:0;}.typing_block{font-family:var(--font-NotoSans);font-weight:bold;}.typing_char{display:inline-block;opacity:0;animation:typingFade .5s forwards;}.slidein_block{opacity:1;}.slidein_line{display:block;margin-bottom:12px;letter-spacing:.03em;opacity:0;transform:translateX(-30px);}.slidein_line.inview{opacity:1;transform:translateX(0);animation:slideinOneLine .6s ease forwards;}.slidein_line:last-child{margin-bottom:0;}.fadeup_block{width:100%;text-align:center;transform:translateY(30px);transition:all .6s ease;visibility:hidden;}.fadeup_block.inview{opacity:1;transform:translateY(0);visibility:visible;}.fadeup_line,.fadeup_target{opacity:0;transform:translateY(30px);transition:all .6s ease;visibility:visible;}.fadeup_line.inview,.fadeup_target.inview{opacity:1;transform:translateY(0);visibility:visible;}.fadeup_target{display:inline-block;font-family:var(--font-NotoSans);font-weight:bold;letter-spacing:.05em;overflow:visible;}.fadeup_target span{display:inline-block;opacity:0;transform:translateY(20px);}.fadeup_target.inview span{opacity:1;animation:bounceSoft .8s ease-out forwards;}.fadeup_block.align_right{width:fit-content;margin-left:auto;padding-bottom:10px;text-align:left;}.view_profile{width:fit-content;opacity:0;transform:translate(20px);transition:all .6s ease;}.view_profile.inview{opacity:1;transform:translateY(0);}.view_profile a{font-family:var(--font-libertine);font-weight:400;font-style:italic;color:var(--color-text-strong);letter-spacing:.1em;display:block;position:relative;max-width:140px;transform:skewX(-6deg) rotate(-6deg);box-sizing:border-box;transition:all .3s;}.view_profile a::after{content:"";display:block;position:absolute;width:100%;height:1px;border-bottom:solid 1px var(--color-text-strong);bottom:0;}.web_contents.hide{opacity:0;pointer-events:none;transform:translateY(10px);}.fade_show{animation:fadeInSmooth .6s ease forwards;}.works_link{display:block;text-decoration:none;color:inherit;}.works_item{background-color:var(--color-white);box-shadow:none;border-radius:10px;transition:transform .4s ease,box-shadow .4s ease;}.works_item::before{background:radial-gradient(ellipse at center,rgba(0,0,0,.16) 0%,rgba(0,0,0,0) 70%);transform:translateX(-50%) scale(1);transition:transform .4s ease,opacity .4s ease;}.worksphoto{width:100%;height:auto;margin-top:10px;border-radius:10px;}.website{color:#a9a9a9;text-align:center;}.detail_list dt{font-weight:bold;color:#222;}.detail_list dd{word-break:normal;white-space:normal;line-break:auto;hyphens:none;word-spacing:normal;color:#444;letter-spacing:.02em;line-height:1.9;}.point_list{margin:0;padding:0;}.detail_list dd .point_list li{position:relative;margin-left:0;margin-bottom:.35em;padding-left:1.2em;}.detail_list dd .point_list li::before{content:"▪️";position:absolute;left:0;top:.15em;font-size:.85em;color:#444;}.box{border-top:2px solid #d1fce0;border-bottom:2px solid #9cf6c7;background-color:var(--color-white);color:var(--color-black);}.box_inner dl,.box_inner dt,.box_inner dd{color:var(--color-black);line-height:1.5;}.box_title{font-family:var(--font-libertine);font-weight:bold;font-style:normal;color:var(--color-brand-brown);background:linear-gradient(90deg,rgba(209,252,240,1),rgba(156,246,199,1));border-radius:30px;border:none;white-space:nowrap;box-shadow:inset 0 1px 2px rgba(255,255,255,.6),0 3px 6px rgba(0,0,0,.1);}.box_title span.works_complete{color:#a67c52;font-style:italic;background:rgba(255,255,255,.2);padding:2px 6px;border-radius:12px;}.banner_item img{transition:transform .2s ease;}.banner_item img:hover{transform:scale(1.015);}.banner_title{text-align:center;font-weight:500;color:#444;}.contact_inner p{font-family:var(--font-NotoSans);line-height:1.7;}.contact_mail{display:flex;justify-content:center;}.btn_text{color:var(--color-brand-brown);font-family:var(--font-NotoSans);font-weight:bold;text-align:center;background-image:linear-gradient(90deg,rgba(156,246,199,1),rgba(209,252,240,1));text-decoration:none;cursor:pointer;}.circle_text{position:absolute;top:0;left:0;width:100%;height:100%;transform-origin:50% 50%;animation:rotatelt 60s linear infinite}.circle_text text{fill:var(--color-text-strong);font-family:"Helvetica Neue",Arial,sans-serif;}#copyRight{font-family:var(--font-NotoSans);text-align:center;}