@charset "UTF-8";
html{
  height: 100%;
  scroll-behavior: smooth;
}

.biz-udpgothic-regular {
  font-family: "BIZ UDPGothic", sans-serif;
  font-weight: 400;
  font-style: normal;
}

:root{
  --black:#1c1c1c;
  --white:#ffffff;
  scroll-padding: 100px;
	scroll-behavior: smooth;
}

body{
  margin: 0 auto;
  max-width: 100%;
  /* width: 425px; */
  height: auto;
  font-family: "Noto Sans JP","游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  overflow-wrap: anywhere; /* 収まらない場合に折り返す */
  word-break: normal; /* 単語の分割はデフォルトに依存 */
  line-break: strict; /* 禁則処理を厳格に適用 */
  position: relative;
}

body footer {
  position: sticky;
  top: 100vh;
}

section{
  margin: 0 auto 3rem auto;
  width: 100%;
}

p{
  margin: 0;
}

a,
a:link,
a:visited{
  color: #e40060;
}

a:link{
  text-decoration: unset;
}

a:focus {
  outline: none;
}

img{
  width: 100%;
  height: auto;
  object-fit: contain;
}

ul{
  margin: unset;
  padding-left: unset;
  list-style: none;
}

h1{
	font-size: 2.25em;
}

h2{
  margin-top: unset;
}

h3{
  margin: unset;
  font-weight: 500;
}

time{
  font-weight: 500;
}

.wrapper{
  margin: 0 auto;
  max-width: 425px;
  width: 100%;
  min-height: 100vh;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: flex-start;
  position: relative;
}

.inner{
  margin: 0 1.25rem 3rem 1.25rem;
  padding: 1rem;
  width: auto;
  border-radius: 2px;
  background-color: var(--white);
  box-shadow: 0px 0px 15px 0px rgb(205 0 128 / 10%);
}

.back{
  content: '';
  margin: 0 auto;
  width: 425px;
  height: 100dvh;
  background-image: url(../img/back.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: fixed;
  top: 0;
  left: auto;
  right: auto;
  bottom: auto;
  z-index: -1;
}

.back_filter{
  width: 100%;
  height: 100%;
  background-color: rgb(255 255 255 / 40%); 
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

/* ////////////PCのみ表示//////////// */
@media (min-width:1024px) {
  .pc_content__left,
  .pc_content__right{
    content: '';
    width: calc((100vw - 425px)/2);
    height: 100dvh;
    background-repeat: no-repeat;
    background-position: center;
    position: fixed;
    top: 0;
  }

  .pc_content__left{
    background-image: url(../img/logo.svg);
    background-size: 260px;
    left: 0;
  }

  .pc_content__right{
    background-image: url(../img/instaqr.png);
    background-size: 200px;
    right: 0;
  }
}

@media (min-width:1440px) {
  .pc_content__left{
    background-size: 300px;
  }
}

/* //////////// アイコン表示 //////////// */
a[target="_blank"]:after {
	content: '';
  margin-left: 0.25rem;
  width: 18px;
  height: 18px;
  mask-image: url(../img/icon/blank.svg);
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  display: inline-block;
	position: relative;
	background-color: #888;
}

/* //////////// ファイルサイズ //////////// */
.fileInfo {
	color: #888;
}