@charset "UTF-8";/* CSS Document *//**** common_sp.css*/@media only print, only screen and (min-width: 18.75em){	.tab,.pc,.pc_tab{	display:none;}.sp{	display:block;}.hover:hover{	opacity:1;	filter:alpha(opacity=100);}.hyphen{  position: relative;  top: -0.5vw;}a{  color: #fff;  transition-duration: 0.5s;}.btn{  padding: 10px 20px 11px;  color: #000;  background: #fff;  border: 1px solid #fff;  font-size: 12px;  display: inline-block;  border-radius: 50px;}#txt a.btn{  margin-top: -40px;  text-decoration: none;}/**** layout*/body,#wrapper{  opacity: 0;  transition-duration: 0.8;}body.active{  opacity: 1;  transition-duration: 0.8;}#loader{  width: 100%;  height: 100%;}#loaderLogo{  width: 66.6vw;  position: absolute;  top: 50%;  left: 50%;  padding-bottom: 40px;  opacity: 0;  visibility:hidden;  transform: translate3d(-50%, -50%, 0);  transition: all 800ms cubic-bezier(0.23, 1, 0.32, 1);}#loaderLogo.active{  opacity: 1;  visibility: visible;  transform: translate3d(-50%, -50%, 0);  transition: all 800ms cubic-bezier(0.23, 1, 0.32, 1);}/* header */#header{  width: 100%;  position: fixed;  top: 0;  transform: translate3d(0, -48px, 0);  transition: all 800ms cubic-bezier(0.23, 1, 0.32, 1);  z-index: 3333;}#header.active{  transform: translate3d(0, 0, 0);  transition: all 1200ms cubic-bezier(0.230, 1.000, 0.320, 1.000);}#logo{  width: 231px;  margin: 10px 10px 20px;}#btnLanguage{  position: absolute;  top: 12px;  right: 36px;  font-size: 14px;  z-index: 2222;  opacity: 0;  visibility: hidden;  transition-duration: 0.5s;  color: #fff;  padding-right: 10px;}#btnLanguage::after{  content: '';  width: 0.6px;  height: 12px;  background: #fff;  position: absolute;  top: 1px;  right: 0;}#btnLanguage a{  color: #555;}#btnLanguage.active{  opacity: 1;  visibility: visible;  transition-duration: 0.5s;}#btnLanguage li{  display: none;}#btnLanguage li:not(.active){  display: block;}#btnLanguage li:first-child::after{  content: none;}#btnLanguage li:last-child::after{  display: none;}#btnLanguage li.active a{  color: #555;}body.introActive.introLeft #logo{  top: 50%;  left: var(--introLogoLeft, 10px);  transform: translate(0, -50%);}body.introActive.introToHeader #logo{  top: var(--introLogoTop, 12px);  left: var(--introLogoLeft, 10px);  transform: translate(0, 0);}#btnIg a{  width: 13px;  position: absolute;  top: 0;  right: 0;  padding: 12px;  display: block;}/* main */#main{  padding-bottom: 100vh;}#mainVisual{  width: 100%;  height: 100%;}#mainVisualImg{  width: calc(100% - 20px);  height: auto;  position: fixed;  top: auto;  left: 50%;  transform: translate(-50%, -50%) scale(0.8);  will-change: transform, opacity;  backface-visibility: hidden;}#mainVisualImg img{  width: 100%;  height: auto;  object-fit: cover;}.txtWrap{  margin-bottom: 60px;}#txt{  padding: 0 10px;  width: calc(100% - 20px);  position: relative;  z-index: 1111;}#txt.active{  margin-top: -60px;  transition-duration: 0.5s;}#txt h2{  margin-bottom: 10px;  font-size: 14px;  letter-spacing: -0.015em;}#txt h3{  margin-bottom: 40px;  font-size: 13px;  line-height: 1.75;}#txt .txtWrap:first-child h3{  margin-bottom: 25px;}#txt h3 .en{  font-size: 13px;  line-height: 1.75;}#txt h4.line{  margin-bottom: 40px;  width: 14px;  height: 1px;  background: #000;}#txt ol{  list-style-type: decimal;  list-style-position: inside;}#txt a{  text-decoration: underline;}#worksTtl{  margin-bottom: 5px;}#worksImg{  margin-top: 10px;}#copyright{  padding: 0 10px 15px;  font-size: 10px;}.bioList dt{  width: 80px;  float: left;}.bioList dd{  width: calc(100% - 80px);  float: left;}#ttlWorks{  width: 320px;  margin: 0 0 15px -5px;}#txt #artist h3{  padding-bottom: 50px;}#ttlMm{  width: 230px;  position: absolute;  bottom: 0;  right: 0;}#txt #about h3{  margin-bottom: 20px;}}