*,*::before,*::after{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none;padding:0;margin:0;}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul[role='list'],ol[role='list']{list-style:none}body{min-height:100vh;line-height:1.5}h1,h2,h3,h4,button,input,label{line-height:1.1}h1,h2,h3,h4{text-wrap:balance}a:not([class]){text-decoration-skip-ink:auto;color:currentColor}img,picture{max-width:100%;display:block}input,button,textarea,select{font:inherit}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}

html { overflow:hidden; height: 100%; }
body { background:#000; }
img { max-width:auto; height:auto; }

#loading { position:absolute; background:url(img/bg.png) repeat; background-size:14vw; background-position:0 0; z-index:100; top:0; right:0; left:0; bottom:0; height:100lvh; }
#loading div { position:absolute; }
#loading .ahg { top:50%; left:50%; transform: translate(-50%, -50%); margin-top:-10vw; }
#loading .ahg img { width:59vw; }
#loading .kira { top:50%; left:50%; transform: translate(-50%, -50%); margin-top:-25vw; margin-left:30vw; }
#loading .kira img { width:21vw; }
#loading .click { top:50%; left:50%; transform: translate(-50%, -50%); cursor:pointer; margin-top:15vw; }
#loading .click img { width:66vw; }

#wrap { overflow:hidden; position:fixed; top:0; left:0; right:0; bottom:0; display:none; }

#contents { position:relative; padding-top:132vw; background:url(img/bg.png) repeat; background-size:14vw; background-position:0 0; z-index:-1; }
#contents div { position:absolute; }
#contents .ahg { top:8vw; left:24vw; }
#contents .ahg img { width:59vw; }
#contents .kira { top:44vw; right:4vw; }
#contents .kira img { width:21vw; }
#contents .greeting { top:8vw; left:8vw; }
.greeting img { width:10vw; }
#contents .ark { left:14vw; bottom:0; transform: rotate(-5deg); }
#contents .ark img { width:108vw; max-width:108vw; }
#contents .ark div { background:#000; width:140vw; height:50vw; left:-34vw; bottom:-30vw; z-index:-1; }

#footer { padding:10vw 0; }
#footer ul { margin:0 auto; display:flex; justify-content: center; margin:0 5vw; padding:0; }
#footer ul li {}
#footer li.x { margin-right:5vw;}
#footer li.x img {}
#footer li.yt {}
#footer li.yt img {}
#footer p { display:block; padding-top:10vw; }
#footer p img { margin:auto; width:80vw; }
