@charset "utf-8";
html.notScroll {overflow-y: hidden;}
body.notScroll {overflow-y: hidden;}
#confirmationOfConsent.overlay {
 width: 100%;
 min-height: 100vh;
 background: rgb(0,0,0);
 background: rgba(0,0,0,.8);
 display: none;
 position: fixed;
 left: 0;
 top: 0;
 z-index: 9999;
 flex-flow: column;
}
#confirmationOfConsent.keep-closed {
 display: flex;
}
.overlay .block {
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 gap: 1ch;
 flex: 1;
}
.content {
 max-width: 480px;
 margin: 0 1rem;
 padding: 1.5rem;
 background: #fff;
 border-radius: 10px;
 box-shadow: 1px 1px 10px #ddd;
}
.flex-container {
 /*display: flex;
 gap: 1rem;*/
 /* addition */
 margin-bottom: 2rem;
}
.flex-item {
 padding: .5rem;
 border: 1px solid #aaa;
 border-radius: 3px;
 transition: all ease .3s;
 flex: 1;
 /* addition */
 display: block;
 margin-bottom: 1rem;
}
.flex-item:hover {
 background: #efefef;
}
a.flex-item:link {
 text-decoration: none;
}
.content p {
 line-height: 1.6;
 letter-spacing: 1px;
}
.des {
 margin-bottom: .5rem;
 text-align: left;
}
.des.last {
 margin-bottom: 1rem;
}
.ask-agree {
 margin-bottom: 1rem;
 color: #f00;
 text-align: center;
}
.colf00 {
 color: #f00;
}
.e-copy {
 margin-top: 1rem;
 padding: 0;
 text-align: center;
}
.title {
 margin-bottom: .5rem;
 display: block;
}
a.title:link {
 text-decoration: none;
 outline: none;
}
.innerBox {
 line-height: 0;
 height: 0;
 overflow: hidden;
 opacity: 0;
 transition-duration: 0.4s;
}
.innerBox.is-open {
 margin-bottom: 1rem;
 height: auto;
 line-height: 1.2;
 opacity: 1;
}
.content .innerBox p {
 font-size: 95%;
 text-align: left;
 line-height: 1.4;
}
span.header {
 margin-bottom: .5rem;
 display: block;
}
.square {
 text-decoration: red underline;
 text-underline-offset: 2px;
}
#nonJavascript.overlay {
 width: 100%;
 min-height: 100vh;
 background: rgb(0,0,0);
 background: rgba(0,0,0,.8);
 display: flex;
 position: fixed;
 left: 0;
 top: 0;
 z-index: 9999;
 flex-flow: column;
}
#nonJavascript .innerBlock {
 max-width: 520px;
 padding: 1rem;
 text-align: left;
}
#nonJavascript p {
 margin-bottom: 1rem;
 color: #fff;
 line-height: 1.6;
 letter-spacing: 1px;
}
.fw-bold {
 font-weight: bold;
}
@media screen and (min-width: 380px) {
 .content {
  margin: 0 auto;
  padding: 2rem;
 }
 #nonJavascript .innerBlock {
  margin: 0 auto;
 }
}