@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1:wght@700;900&family=Noto+Sans+JP:wght@400;700;900&display=swap');
:root{
  --bg-page:#FFF9F1; --bg-soft:#F6F6F6; --pink:#ee86a7; --pink-strong:#e6005c;
  --pink-grad-1:#EE86A7; --pink-grad-2:#EEA986; --brown:#7F4F21; --text:#333;
  --shadow-soft:0 0 15px rgba(0,0,0,.12); --shadow-card:0 8px 10px rgba(0,0,0,.08);
  --radius-lg:20px; --radius-pill:999px; --max-page:1080px; --max-content:1063px; --max-card:960px;
}
html{ scroll-behavior:smooth; }
*{ box-sizing:border-box; }
table th,table td{ vertical-align:middle; }
html,body{
  font-family:"Noto Sans JP","游ゴシック体",YuGothic,"游ゴシック","Yu Gothic",sans-serif;
  line-height:1.8; font-size:16px; color:var(--text);
}
body{ background:var(--bg-page); padding:0; position:relative; background-size:100% auto; }
main{ overflow-x:hidden; }
img{ max-width:100%; height:auto; }
a:link,a:visited{ color:#001DFF; text-decoration:underline; }
a:hover{ text-decoration:none; }
.pc{ display:inline-block; }
.sp{ display:none; }
.forPC{ display:none; }
.forMb{ display:inherit; }
.small{ font-size:.9em; }
.jqMain{ max-width:var(--max-page); margin-inline:auto; }
footer{
  padding:24px; text-align:center; background:#E60012; color:#fff; font-size:14px;
}
footer span{ color:#fff; }
footer a,footer a:link,footer a:visited{
  color:#fff; text-decoration:none; margin:0 .6em; white-space:nowrap;
}
#return{
  position:fixed; right:32px; bottom:32px; width:60px; height:60px; border-radius:50%;
  padding:1rem; background:#f8f8f8; z-index:50; box-shadow:0 4px 12px rgba(0,0,0,.12);
}
#return img{ vertical-align:baseline; }
@media screen and (min-width:1024px){
  .forPC{ display:inherit; } .forMb{ display:none; }
}
@media screen and (max-width:1023px){
  .pc{ display:none; } .sp{ display:block; }
}
@media screen and (max-width:767px){
  html,body{ font-size:15px; }
}
@media screen and (max-width:480px){
  #return{
    width:40px; height:40px; border-radius:50%; padding:.3rem; text-align:center; right:14px; bottom:14px;
  }
  #return img{ width:20px; }
  footer{ padding:16px 56px 16px 16px; text-align:left; }
}

