@charset "UTF-8";@media screen and (max-width:767px){header{position:fixed;top:0;left:0;width:100%;height:60px;display:flex;justify-content:space-between;align-items:center;padding:0 16px;z-index:1000}header a img{display:none}.hamburger{display:flex;flex-direction:column;justify-content:space-between;width:30px;height:22px;position:fixed;top:20px;right:20px;z-index:1100;cursor:pointer;background:0 0;border:none;padding:0}.hamburger span{display:block;width:100%;height:3px;background-color:#c0dfff;transition:transform .3s ease,opacity .3s ease}.hamburger.active span:first-child{transform:translateY(9px) rotate(45deg)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.nav_menu{display:flex;flex-direction:column;align-items:center;justify-content:center;position:fixed;top:-100vh;left:0;width:100%;height:100vh;background-color:#fff;z-index:1000;transition:top .4s ease;padding-top:80px}.nav_menu.active{top:0}.nav_menu ul{display:flex;flex-direction:column;align-items:center;gap:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.nav_menu li{margin-left:0}.nav_menu a{position:relative;display:block;padding:20px 0;font-size:24px;color:#aed9ff;text-decoration:none;background:0 0}.nav_menu a::after{content:"";position:absolute;left:50%;bottom:10px;width:0;height:1px;background:#84563c;transform:translateX(-50%);transition:width .3s ease}.nav_menu a:active::after,.nav_menu a:hover::after{width:100%}.nav_menu a:active{color:#84563c}.scroll{display:none}.vertical_text{display:none}section{margin-inline:6%;max-width:100%;margin-top:70px}.section_heading{display:flex;align-items:center;margin-bottom:32px}.about_title{font-size:32px;margin:0 30px 0 0;line-height:1.2}.section_heading .subtitle{font-size:14px;line-height:1.4;top:0;margin:0}.about_title span,.subtitle span{display:inline-block;transform:translateY(100%);opacity:0}.bounce{animation:bounce .65s cubic-bezier(.33,0,.3,1.2) forwards}.profile_name{display:flex;align-items:center;font-size:18px;margin:0 20px 0 30px;line-height:1.3}.profile_subtitle{font-size:12px;line-height:1.4;margin:0;top:0;margin-left:12px}.profile_name span,.profile_subtitle span{display:inline-block;opacity:0;transform:translateY(20px)}.profile_message{max-width:90%;font-size:16px;line-height:1.9;margin:24px 0 12px 30px;letter-spacing:.03em}.profile_target{max-width:90%;font-size:14px;line-height:1.7;margin:0 0 50px 30px;color:#777;letter-spacing:.03em}.sp_only{display:inline}.timeline{position:relative;margin:10px auto 60px;padding:0 20px;max-width:100%;overflow:visible}.timeline::before{content:"";position:absolute;top:0;left:45px;width:4px;height:0;z-index:0;background:linear-gradient(to bottom,rgba(208,252,237,.6),rgba(208,252,237,.75),#d0fced);transition:height 4.2s ease-in-out}.timeline.line-active::before{height:100%}.timeline li{position:relative;display:flex;flex-direction:column;align-items:flex-start;margin-bottom:28px;opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.timeline li.show{opacity:1;transform:translateY(0)}.timeline_date{width:auto;margin:0 0 8px 40px;padding-top:5px;text-align:left;font-size:13px;color:#888;letter-spacing:.03em;opacity:0;transform:translateY(10px);transition:opacity .6s ease .1s,transform .6s ease .1s}.timeline li.show .timeline_date{opacity:1;transform:translateX(0)}.timeline_content{position:relative;width:100%;max-width:100%;margin-left:40px;padding:16px 18px;background:#fff;border-radius:10px;box-shadow:0 4px 12px rgba(0,0,0,.06);word-break:keep-all;overflow-wrap:break-word;white-space:normal;z-index:1;opacity:0;transform:translateY(20px);transition:opacity .8s ease .2s,transform .8s ease .2s}.timeline li.show .timeline_content{opacity:1;transform:translateY(0)}.timeline_content::before{content:'';position:absolute;top:30px;left:-20px;width:10px;height:10px;background:#84563c;border-radius:50%;z-index:2;transform:scale(0);transition:transform .4s ease .4s}.timeline li.show .timeline_content::before{transform:scale(1)}.timeline li.current .timeline_content::before{background:coral;top:30px;left:-22px}.timeline_content ul{margin-top:10px;padding-left:18px}.timeline_content ul li{position:relative;margin-bottom:6px;padding-left:0;font-size:13px;line-height:1.6;width:100%;display:block;box-sizing:border-box;word-break:normal;overflow-wrap:break-word;white-space:normal;line-break:strict;text-indent:0;hyphens:manual}.timeline_content ul li::before{content:'・';position:absolute;top:-4px;left:-23px;font-size:20px;color:#333}.timeline_content ul li,.timeline_text{word-break:keep-all;overflow-wrap:break-word;white-space:normal;line-break:strict;hyphens:none}.timeline_text strong{display:block;margin-bottom:4px;font-size:14px}.skill{padding:0 24px 60px}.skill_title{font-size:32px;margin-bottom:32px}.skillBox{display:flex;flex-wrap:wrap;gap:40px;justify-content:center;align-items:stretch}.skillCard{flex:1 1 280px;max-width:340px;height:auto;margin:0;padding:30px 22px;border-radius:12px;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.08);box-sizing:border-box}.skill_heading{font-size:18px;font-weight:600;margin-bottom:14px;text-align:center;letter-spacing:.05em}.skill_text{margin-bottom:18px;padding-left:8px;font-size:13px;color:#555;line-height:1.7}.skill_text li:first-child{font-weight:500;color:#333}.icons{display:grid;gap:20px 28px;justify-items:center;box-sizing:border-box;width:100%;margin-top:18px;opacity:.9}.icons img{width:56px;height:auto}#design .icons{grid-template-columns:repeat(3,1fr)}#coding .icons{grid-template-columns:repeat(2,1fr)}.contact_note{margin-top:30px;text-align:center;font-size:13px;line-height:1.8}.contact_note a{color:#84563c;font-weight:500;text-decoration:underline;padding:5px}.contact_note a:active{opacity:.6}.sp_only{display:inline}#copyRight{margin-top:40px;font-size:14px;padding-bottom:30px;text-align:center}}