@charset "UTF-8";
/* layout
----------------------------- */
.co_container_box_inner {
  width: 965px;
  margin: 0 auto;
}
.contents_right {
  width: 770px;
  margin: 0 auto;
  padding-bottom: 35px;
  float: right;
  background: #fff6b8;
  line-height: 1.5;
  text-align: left;
}
.contents_right * {
  box-sizing: border-box;
}
/* common
----------------------------- */
.imgBlock {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
.imgBlock a {
  display: block;
}
.imgBlock a img:hover {
  opacity: 1;
}
.underline {
  text-decoration: underline;
  text-underline-position: under;
  text-decoration-line: underline;
  text-decoration-skip-ink: none;
}
.indent_1em {
  padding-left: 1em;
  text-indent: -1em;
}
.contents_right .ttl {
  text-align: center;
}
.contents_right .sub_ttl {
  margin: 16px auto 24px;
  padding: 8px 0;
  border-radius: 24px;
  background: #2347cb;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: .05em;
  text-align: center;
}
.section_area {
  width: 635px;
  margin: 40px auto 0;
}
/* loginArea
----------------------------- */
.contents_right .loginArea {
  margin: 30px auto 40px;
  padding: 30px;
  border-radius: 8px;
  background: #fff;
  text-align: center;
}
.contents_right .loginArea .message {
  margin-bottom: 10px;
  font-size: 16px;
}
.width350 {
  display: none;
}
.contents_right .loginArea a {
  display: inline-block;
  width: 240px;
  height: 46px;
  margin: 0 10px;
  border-radius: 6px;
  background: #ea5505;
  color: #fff;
  font-size: 24px;
  line-height: 48px;
  text-decoration: none;
}
.contents_right .loginArea a:hover {
  opacity: 0.8;
}
/* headArea
----------------------------- */
.headArea img {
  width: 100%;
  max-width: 770px;
  height: auto;
}
/* termArea
----------------------------- */
.termArea {
  margin: 0 auto 40px;
  padding: 12px;
  background: #2347cb;
  line-height: 1.5;
}
.termArea .term_text {
  width: 19em;
  margin: 0 auto;
  font-size: 18px;
}
.termArea p {
  color: #fff;
  font-size: 16px;
  text-align: center;
}
.termArea .date_text {
  display: flex;
  justify-content: flex-start;
  font-size: 18px;
  font-weight: bold;
}
.termArea .date_text .time {
  width: 5em;
  font-size: 18px;
}
.termArea .date_text .date {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
/* エントリーテキスト
----------------------------- */
.entry_txt {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.reload_area {
  margin-top: 8px;
  padding: 12px;
  border: 1px solid #ea5505;
  border-radius: 8px;
  text-align: center;
}
.reload_area .entry {
  font-size: 16px;
}
.reload_area  .note {
  margin-top: 4px;
  font-size: 13px;
}
.reload_area a {
  display: inline-block;
  margin-top: 8px;
  padding: 4px 16px;
  border-radius: 24px;
  background: #ea5505;
  color: #fff;
  font-size: 16px;
}
/* titleArea
----------------------------- */
.titleArea {
  margin-top: 24px;
}
.titleArea .note {
  margin: 8px auto 40px;
  text-align: center;
}
.titleArea .note p {
  margin-bottom: 4px;
  font-size: 20px;
}
.titleArea .imgBlock {
  margin: 12px auto;
}
.titleArea .contents_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 500px;
  margin: 12px auto 40px;
  text-align: center;
}
.titleArea .container {
  width: 48%;
}
.titleArea .thum_box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 180px;
  height: 46vw;
  max-height: 240px;
  margin: auto;
}
.titleArea .thum_box a {
  display: flex;
  align-items: center;
  height: 100%;
}
.titleArea .thum_box img {
  max-width: 100%;
  max-height: 100%;
}
.titleArea .title_name,
.titleArea .author_name {
  display: block;
  height: 14px;
  margin-top: 4px;
  overflow: hidden;
  font-size: 12px;
  line-height: 14px;
  text-align: center;
  word-break: break-all;
}
.titleArea .title_name a {
  margin-top: 8px;
  color: #626d77;
}
.titleArea .author_name,
.titleArea .author_name a {
  color: #9f9f9f;
}
/* howtoArea
----------------------------- */
.howtoArea .imgBlock {
  margin: 14px auto;
}
.howtoArea .note {
  margin: 8px auto 24px;
  text-align: center;
}
.howtoArea .note p {
  margin-bottom: 4px;
  font-size: 20px;
}
/* statusArea
----------------------------- */
.statusArea .status_block {
  position: relative;
  width: 635px;
  margin: 0 auto;
}
.statusArea .status_block.mask::after {
  content: "";
  position: absolute;
  z-index: 9;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  opacity: 0.5;
  background: #999;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.statusArea .contents_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto 40px;
  text-align: center;
}
.statusArea .two_cells {
  display: flex;
  flex-direction: column;
  width: 49%;
}
.statusArea .contents_inner .title_name {
  margin-top: 4px;
  color: #333;
  font-size: 14px;
  word-break: break-all;
}
.statusArea .contents_inner .coming_soon {
  margin: auto;
}
/* appealBannerArea
----------------------------- */
.appealBannerArea {
  margin-top: 60px;
}
.appealBannerArea img {
  width: 100%;
  max-width: 770px;
  height: auto;
}
/* detailArea
----------------------------- */
.detailArea {
  margin: 60px 24px 16px;
  background: #fff;
  line-height: 1.4;
}
.detailArea .detailTitle {
  padding: 8px;
  background: #2347cb;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}
.detailArea .detail_box {
  padding: 16px;
  text-align: left;
}
.detailArea .detail_box p {
  color: #333;
  font-size: 16px;
}
.detailArea .detail_box a {
  color: #06f;
  font-size: 16px;
  text-decoration: underline;
}
.detailArea dl {
  text-align: left;
}
.detailArea dt {
  color: #333;
  font-size: 16px;
  font-weight: bold;
}
.detailArea dd + dt {
  margin: 10px 0 0;
}
.detailArea dt:before {
  content: "■";
  display: inline;
}
.detailArea dd {
  color: #333;
  font-size: 16px;
}
.detailArea .detail_scroll {
  height: 120px;
  margin: 0 16px;
  padding: 0 10px;
  overflow: scroll;
  overflow-x: hidden;
  border: 1px solid #333;
}
.detailArea .detail_scroll dt {
  margin: 8px 0 0;
  font-size: 13px;
  font-weight: bold;
}
.detailArea .detail_scroll dt:before {
  content: none;
}
.detailArea .detail_scroll dd {
  font-size: 13px;
}
.detailArea .color_rd {
  color: #f00;
}
/* btn_areas(sns)
----------------------------- */
.btn_areas {
  margin: 12px 24px 0;
}
.btn_areas img:hover {
  opacity: 0.7;
}
/* endArea
----------------------------- */
.endArea {
  margin: 40px auto;
  text-align: center;
}
.endArea p {
  color: #333;
  font-size: 30px;
}
