.price {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.price img {
    width: 100%;
    height: auto;
}


.attention {
    border: 1px solid #666;
    padding: 15px;
    margin: 0 0 20px 0;

}

.attention dt {
    font-weight: 700;
    padding: 5px 0 0 0;
}

.attention dd {
    border-bottom: 1px dotted #666;
    padding: 0 0 5px 0;
}

.attention dd:last-child {
    border-bottom: none;
}
.price-head{
  padding: 1rem 0;
}
.price-box{
  margin-bottom: 2rem;

}
.price h2 {
    padding: 0 0 10px 0;
    border-bottom: 1px solid #666;
    margin: 0 0 15px 0;
    text-align: center;
}

.price h3 {
    margin: 10px 0 7px;
    font-size: 20px;
}

p.course {
    line-height: 1.6;
}
.price-head{
  text-align: center;
}

.price-detail {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    font-size: 16px;
    padding: 1rem 0;
}

.price-detail dt{
    width: 75%;
    border-bottom: 1px solid #666;
    padding: 1rem 0;
}

.price-detail dd{
    width: 25%;
    text-align: right;
    border-bottom: 1px solid #666;
    padding: 0.55rem 0 1rem;
    font-size:1.2rem;
}

dd.none {
    width: 100%;
    color: #666;
    text-align: left;
    border-top: none;
    font-size: 14px;
    padding: 0 0 4px 0;
}
.detail-dd{
  color: #999;
  text-align: left;
  border-top: none;
  font-size: 14px;
  width:100%;

}
.credit .image{
    margin: 15px 0;
}

.headsup {
    margin: 40px 0;
}


@media screen and (min-width: 640px) {

.attention {
    font-size: 15px;
    margin: 40px 0;
}

.price h2 {
    margin: 40px 0 15px 0;
}

.price-detail {
    margin: 15px 0 60px 0;
    font-size: 1.1rem;
    width: 70%;
    max-width: 800px;
    margin: 0 auto;
}
.price-detail dd{
  font-size:1.4rem;
  padding: 0.5rem 0 1rem;
}
.credit div{
  padding: 1rem 0 2rem;
  text-align: center;
}
.headsup div{
  text-align: center;
  padding: 1rem 0 2rem;
}
}
