@charset "utf-8";
html {
  scroll-behavior: smooth;
}
#introduction p {
  font-size: 18px;
}
#contentsarea h2 {
  margin: 100px 0 20px !important;
  padding: 35px 35px 30px !important;
  font-size: x-large !important;
  background: linear-gradient(to right, #fff 15%, rgba(160,160,165,0.25));
}
#contents_01 h3,
#contents_02 h3 {
  margin-bottom: 20px;
  padding: 15px 15px 10px 15px !important;
  font-size: 20px !important;
  font-weight: bold;
  color: #ffffff;
  line-height: 24px;
}
#contents_01 h3 {
  background-color: rgba(100,175,225,0.85);
}
#contents_02 h3 {
  background-color: rgba(175,140,200,0.85);
}
#contents_02 h3 small {
  color: #fff;
}
#contents b {
  font-weight: normal !important;
  color: #000 !important;
}
#contents_01 b {
  background: linear-gradient(transparent 60%, rgba(100,175,225,0.55) 100%);
}
#contents_02 b {
  background: linear-gradient(transparent 60%, rgba(175,140,200,0.55) 100%);
}
#contents_01 .fa-circle {
  color: #64AFE1;
}
#contents_02 .fa-square-o,
#contents_02 .fa-circle {
  color: #AF8CC8;
}
#contents_02 .fa-ul {
  margin-left: 24px;
}
#contents_02 dt {
  margin-bottom: 6px;
  border-bottom: solid 1px #AF8CC8;
  font-weight: normal;
}
#contents_01 aside {
  margin-top: 20px;
  font-size: 14px;
}
.secureprotection,
.ainote {
  font-style: oblique;
}
.note {
  margin: 3px auto 0;
  font-size: 14px;
  text-align: center;
}
.img-frame {
  cursor: pointer;
  border: 3px solid rgba(160,160,165,0.25);
  transition: all 0.7s ease 0s;
}
#contents_01 .img-frame:hover {
  border: 3px solid #009FE8;
}
#contents_02 .img-frame:hover {
  border: 3px solid #AF8CC8;
}
.modal-header {
  background-color: #505054;
  color: #ffffff;
}
.close {
  color: #ffffff;
}
.modal-body {
  background-color: #505054;    
}
/*
.modal-dialog-fluid {
  max-width: inherit;
  width: 98%;
  margin-left: 15px;
}
.modal-full {
  max-width: inherit;
  width: 98%;
  margin-left: 15px;
}
*/
#scene .scene-img {
  display: flex;
}
.mt30 {
  margin-top: 30px;
}
.mt50 {
  margin-top: 50px;
}
.mb30 {
  margin-bottom: 30px;
}
.mb50 {
  margin-bottom: 50px;
}
.mb99 {
  margin-bottom: 100px;
}
.pd05 {
  padding: 5px;
}

@media (min-width: 601px) {
  .under-600px {
    display: none;
  }
}
@media (max-width: 600px) {
  .over-601px {
    display: none;
  }
}
@media (max-width: 470px) {
  #contents_01 h3,
  #contents_02 h3 {
    font-size: 18px !important;
    line-height: 22px;
  }
  #contents_02 dd {
    margin-left: -24px;
  }
  #scene .scene-img {
    display: block;
  }
}
