/* ======================================================================
 setting
====================================================================== */
/* ======================================================================
 p_column_single
====================================================================== */
.p_column_single .l_main_visual {
  background: url("../img/p_column_single/sp/mv.jpg") no-repeat center center;
  -moz-background-size: cover;
  -webkit-background-size: cover;
  background-size: cover;
}
@media screen and (min-width: 769px) {
  .p_column_single .l_main_visual {
    background: url("../img/p_column_single/mv.jpg") no-repeat center 35%;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    background-size: cover;
  }
}
.p_column_single .l_main_visual .inner .ttl {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  background: none;
}
@media screen and (min-width: 769px) {
  .p_column_single .l_main .area_wrap .area_main {
    margin: 0;
    width: 850px;
  }
}
.p_column_single .l_main .area_wrap .area_main .thumb img {
  max-width: 100%;
  height: auto;
}
.p_column_single .l_main .area_wrap .area_main .box {
  display: flex;
  align-items: center;
  margin: 10px 0;
}
.p_column_single .l_main .area_wrap .area_main .box > * {
  margin: 0 10px 0 0;
}
.p_column_single .l_main .area_wrap .area_side {
  padding: 0 0 60px;
}
@media screen and (min-width: 769px) {
  .p_column_single .l_main .area_wrap .area_side {
    padding: 60px 0;
  }
}
.p_column_single .c_detail_1 .top_content .ttl {
  text-align: left;
}
@media screen and (min-width: 769px) {
  .p_column_single .c_detail_1 .top_content .ttl {
    text-align: left;
  }
}
.p_column_single .c_ico_4 {
  text-align: left;
}
.p_column_single .detail h2 {
  position: relative;
  text-align: left;
  font-size: 24px;
  line-height: 1.5;
  letter-spacing: .05em;
  color: #001469;
  position: relative;
  margin: 25px 0 15px;
  padding: 0 0 15px;
}
.p_column_single .detail h2:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100px;
  height: 1px;
  background: #001469;
}
@media screen and (min-width: 769px) {
  .p_column_single .detail h2 {
    margin: 35px 0 30px;
    font-size: 32px;
  }
}
.p_column_single .detail h3 {
  margin: 20px 0 10px;
  font-size: 20px;
  color: #001469;
}
@media screen and (min-width: 769px) {
  .p_column_single .detail h3 {
    margin: 30px 0 10px;
    font-size: 28px;
  }
}
.p_column_single .detail h4 {
  margin: 20px 0 10px;
  font-size: 20px;
  color: #001469;
}
@media screen and (min-width: 769px) {
  .p_column_single .detail h4 {
    margin: 25px 0 10px;
    font-size: 24px;
  }
}
.p_column_single .detail ol {
  margin: 10px 0;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.75;
  list-style-position: inside;
}
@media screen and (min-width: 769px) {
  .p_column_single .detail ol {
    margin: 15px 0;
    font-size: 20px;
  }
}
.p_column_single .detail ol li {
  padding-left: 13px;
  text-indent: -8px;
}
.p_column_single .detail ul {
  margin: 10px 0;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.75;
  list-style-position: inside;
  list-style-type: disc;
}
@media screen and (min-width: 769px) {
  .p_column_single .detail ul {
    margin: 15px 0;
    font-size: 20px;
  }
}
.p_column_single .detail ul li {
  padding-left: 10px;
  text-indent: -7px;
}
.p_column_single .detail .inner a:link {
  text-decoration: underline;
}
.p_column_single .detail .inner a:link:hover {
  text-decoration: none;
}
