html { scroll-behavior: smooth }

header,footer { display: none }
@media (min-width: 960px) {
 .column { display: grid; grid-template-columns: 1fr minmax(650px,55vw) 1fr }
}
aside { height: 100vh; padding: 1rem; box-sizing: border-box; position: sticky; top: 0; overflow: hidden; display: flex; align-items: center; justify-content: center }
aside.pcLeft > a.draLogo { display: block; width: min(10vw,150px); position: absolute; top: 1rem; left: 1rem }
aside.pcLeft > a.cLogo { display: block; width:min(100%,280px) }
aside.pcLeft > a.cLogo > img { width: 100% }
main { box-sizing: border-box }

h2,h3,h4 {
  margin: 0;
	padding: 0;
  border: none;
  min-height: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  background-color: transparent;
}
a[name] { margin-top: 0; padding-top: 0 }

/*==================================================
余白
==================================================*/
.mg1e   { margin:        min(4vw,1em)!important }
.mgT05e { margin-top:    min(3.5vw,0.5em)!important }
.mgT1e  { margin-top:    min(4vw,1em)!important }
.mgT15e { margin-top:    min(5vw,1.5em)!important }
.mgT2e  { margin-top:    min(5.5vw,2em)!important }
.mgT25e { margin-top:    min(4.5vw,2.5em)!important }
.mgT3e  { margin-top:    min(6vw,3em)!important }
.mgB05e { margin-bottom: min(3.5vw,0.5em)!important }
.mgB1e  { margin-bottom: min(4vw,1em)!important }
.mgB15e { margin-bottom: min(5vw,1.5em)!important }
.mgB2e  { margin-bottom: min(5.5vw,2em)!important }
.mgB25e { margin-bottom: min(4.5vw,2.5em)!important }
.mgB3e  { margin-bottom: min(6vw,3em)!important }
.pd1e   { padding:       min(4vw,1em)!important }
.pdT05e { padding-top:    min(3.5vw,0.5em)!important }
.pdT1e  { padding-top:    min(4vw,1em)!important }
.pdT15e { padding-top:    min(5vw,1.5em)!important }
.pdT2e  { padding-top:    min(5.5vw,2em)!important }
.pdT25e { padding-top:    min(4.5vw,2.5em)!important }
.pdT3e  { padding-top:    min(6vw,3em)!important }
.pdB05e { padding-bottom: min(3.5vw,0.5em)!important }
.pdB1e  { padding-bottom: min(4vw,1em)!important }
.pdB15e { padding-bottom: min(5vw,1.5em)!important }
.pdB2e  { padding-bottom: min(5.5vw,2em)!important }
.pdB25e { padding-bottom: min(4.5vw,2.5em)!important }
.pdB3e  { padding-bottom: min(6vw,3em)!important }


/*
==================================================
～960
==================================================
*/
@media screen and ( max-width:960px) {
	header { display: flex }
  footer { display: block }
	aside { display: none }
	a[name] { display: block; margin-top:min(-12.5vw,-100px); padding-top:min(12.5vw,100px) }
}
/*
==================================================
～670
==================================================
*/
@media screen and ( max-width:670px ){}