@charset "UTF-8";
/* =========================================================
@mixin
=========================================================*/
/* =========================================================
共通
=========================================================*/
.p-section {
  margin-bottom: 50px;
}

.p-section h3 {
  font-size: 1.4rem;
  font-weight: 600;
  padding-top: 20px;
  margin-bottom: 30px;
  border-top: 3px solid #333;
}

.p-section h4 {
  font-size: 1.1rem;
  font-weight: 600;
  margin-bottom: 20px;
  padding-top: 20px;
  color: #00A758;
}

.p-section dl {
  margin-bottom: 30px;
}

.p-section ol li {
  padding-left: 20px;
  position: relative;
}

.p-section ol li:before {
  content: "・";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}

.p-section .p-top-section__pct {
  text-align: center;
  margin-bottom: 50px;
}

.p-section .p-top-section__pct h3 {
  font-size: 1.4rem;
  font-weight: 600;
  padding: 10px;
  display: block;
  background: #F7F7F7;
  border: none;
}

.single h2 {
  margin-bottom: 50px;
}

@media only screen and (max-width: 959px) {
  .single h2 {
    text-align: center;
    margin-bottom: 30px;
  }
}

.single h2 span {
  color: #F15D56;
}

.single_cont {
  display: flex;
  justify-content: space-between;
}

@media only screen and (max-width: 959px) {
  .single_cont {
    display: block;
  }
}

.single_cont-image {
  width: 400px;
  margin-right: 40px;
  position: relative;
}

.single_cont-image img {
  width: 100%;
}

@media only screen and (max-width: 959px) {
  .single_cont-image {
    width: 100%;
    margin-right: 0;
    margin-bottom: 40px;
  }
}

.single_cont-image dd {
  position: absolute;
  background: #fff;
  padding: 7px 15px;
  top: 470px;
  left: -20px;
  box-shadow: 1px 2px 6px 1px rgba(0, 0, 0, 0.3);
}

@media only screen and (max-width: 959px) {
  .single_cont-image dd {
    top: auto;
    bottom: -20px;
    left: 20px;
  }
}

.single_cont-image dd strong {
  font-size: 1.5rem;
  font-weight: 600;
  margin-left: 10px;
  display: inline-block;
}

.single_cont-text {
  flex: 1;
}

.single_lead {
  font-weight: 600;
  font-size: 1.1rem;
  margin-bottom: 20px;
}

.single_caption {
  font-size: 0.8rem;
  line-height: 1.6;
}

.news.article .news_item {
  opacity: 1;
}

.entry form {
  text-align: center;
}

.entry h2 {
  margin-bottom: 50px;
}

@media only screen and (max-width: 959px) {
  .entry h2 {
    text-align: center;
    margin-bottom: 30px;
  }
}

.entry h2 span {
  color: #F15D56;
}

.entry h3 {
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 20px;
  display: none;
}

.entry h4 {
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 20px;
  color: #00A758;
}

.entry .entry-detail_table {
  text-align: left;
  border: 1px solid #ccc;
  padding: 10px;
  background: #fff;
  margin-bottom: 40px;
  border-radius: 5px;
}

.entry .entry-detail_table th, .entry .entry-detail_table td {
  padding: 10px;
}

.entry .u-spbr {
  display: none;
}

@media only screen and (max-width: 959px) {
  .entry .u-spbr {
    display: block;
  }
}

.entry .entry_formTable {
  text-align: left;
  width: 100%;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  margin-bottom: 30px;
}

.entry .entry_formTable p {
  margin-bottom: 0;
}

.entry .entry_formTable th, .entry .entry_formTable td {
  padding: 15px;
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.entry .entry_formTable th {
  background: #F7F7F7;
  text-align: center;
  width: 300px;
}

.entry .entry_formTable td {
  background: #fff;
}

.entry .entry_formTable input, .entry .entry_formTable select, .entry .entry_formTable option, .entry .entry_formTable textarea {
  border: 1px solid #ccc;
  border-radius: 5px;
}

.entry .entry_policy {
  text-align: left;
}

@media only screen and (max-width: 959px) {
  .entry .entry_formTable{
    border-top: none;
    border-right: none;
  }
  .entry .entry_formTable th {
    width: 100%;
  }
}

.privacy_list{
  text-align: center;
}

.privacy_list a{
  background: url(../img/icon_blank.png) no-repeat left top;
  background-size: 28px;
  padding-left: 31px;
  line-height: 2;
  display: inline-block;
  text-decoration: underline;
}