@charset "utf-8";
/* ==========================================================================
   base
========================================================================== */
#introduction{
  padding-bottom:50px;
}
#introduction .header-visual{
  width:100%;
  text-align: center;
}
#introduction .col2{
  flex-direction: row-reverse;
  max-width: 1140px;
  margin: 92px auto 31px;
  padding: 0px 20px 0px 40px;
}
#introduction .col2 .item-img{
  width:400px;
}
#introduction .col2 .item-txt{
  color:#f00;
  width:calc(100% - 400px);
  padding-left:17px;
}
#introduction .col2 .item-txt .copy{
  font-size: 33px;
  font-weight: 700;
  margin: 25px 0 35px;
}
#introduction .col2 .item-txt .copy-desc{
  font-size:18px;
  margin-bottom:36px;
}
#introduction .col2 .item-txt .copy-desc:last-child{
  margin-bottom:0px;
}
@media screen and (max-width: 700px) {
  #introduction{
    padding: 10px 0px 20px;
  }
  #introduction .col2{
    flex-direction: column;
    margin:0 auto;
    padding: 0px 20px;
  }
  #introduction .col2 .item{
    width:100%;
  }
  #introduction .col2 .item-txt{
    padding-left:0px;
  }
  #introduction .col2 .item-txt .copy {
    font-size: 26px;
    margin: 17px 0 17px;
  }
  #introduction .col2 .item-txt .copy-desc {
    font-size: 14px;
    margin-bottom: 32px;
    line-height: 1.9;
  }
  #introduction .col2 .item-img{
    margin-top:22px;
    text-align: center;
  }
  #introduction .col2 .item-img img{
    width:70%;
  }
}


#contents{
  border-top:solid #f00 5px;
  border-bottom:solid #f00 5px;
  background-color: #f4f4f4;
  text-align: center;
  padding:120px 20px 126px;
  background: url(/pulsation/img/common/bg_town.png) repeat-y top center;
  background-color: #f4f4f4;
}
#contents .ttl-lv1{
  font-size:57px;
  font-weight: 100;
  margin-bottom:70px;
}
#contents .ttl-lv1::after {
  content: "";
  width: 80px;
  height: 5px;
  display: block;
  background-color: #000;
  margin: 10px auto;
}
#contents .content-list{
  margin: 30px auto;
  background-color: #fff;
  border-radius: 5px;
  max-width: 1280px;
  padding: 0px 50px;
}
#contents .content-list .item .link{
  display: block;
  padding: 90px 0px;
  text-decoration: none;
  color:#000;
  border-bottom:solid #f00 2px;
}
#contents .content-list .item:last-child .link{
  border-bottom:none;
}

#contents .content-list .item .link .col2{
  flex-direction: row-reverse;
}
#contents .content-list .item .link .col2 .item-img{
  width: 304px;
  padding-top: 64px;
}
#contents .content-list .item .link .col2 .item-txt{
  width:calc(100% - 324px);
  text-align: left;
}
#contents .content-list .item .link .col2 .item-txt .ttl-lv2{
  color:#f00;
  font-size:20px;
  margin-bottom:40px;
  text-indent: -4.5em;
  padding-left: 4.5em;
  line-height: 1.2;
}
#contents .content-list .item .link .col2 .item-txt .ttl-lv2 .vol-nu{
}
#contents .content-list .item .link .col2 .item-txt .ttl-lv2 .name-jp{
  font-size: 27px;
  padding: 0px 24px;
}
#contents .content-list .item .link .col2 .item-txt .desc{
  font-size: 18px;
  line-height: 1.65;
  margin-bottom: 32px;
}
#contents .content-list .item .link .col2 .item-txt .more-link{
  color: #f00;
  text-align: right;
  padding-right: 71px;
  background: url(/pulsation/img/common/arw_right_red.png) no-repeat right 30px top 10px;
  background-size: 36px 6px;
  font-size: 17px;
}
@media screen and (max-width: 1600px) {
  #contents{
    background-size: 150%;
  }
}
@media screen and (max-width: 920px) {
  #contents .content-list .item .link .col2 .item-txt .ttl-lv2{
    text-align: center;
    text-indent:0px;
    padding-left:0px;
  }
  #contents .content-list .item .link .col2 .item-txt .ttl-lv2 br{
    display: none;
  }
  #contents .content-list .item .link .col2 .item-txt .ttl-lv2 .name-jp{
    display: block;
  }
}
@media screen and (max-width: 700px) {
  #contents{
    padding:20px 20px 49px;
    border-bottom: solid #f00 1px;
    background-size: cover;
  }
  #contents .ttl-lv1{
    font-size:29px;
    margin-bottom:42px;
  }
  #contents .ttl-lv1::after {
    width: 40px;
    height: 4px;
    margin: 6px auto;
  }
  #contents .content-list{
    padding:0px;
  }
  #contents .content-list .item .link{
    padding:12px 20px 40px;
    border-bottom:0px;
  }
  #contents .content-list .item .link::after{
    display: block;
    content:'';
    border-bottom: solid #f00 2px;
    width:100%;
    max-width: 320px;
    margin: 46px auto -10px;
  }
  #contents .content-list .item:last-child .link::after{
    display: none;
  }
  #contents .content-list .item .link .col2{
    flex-direction: column;
  }
  #contents .content-list .item .link .col2 .item{
    width:100%;
  }
  #contents .content-list .item .link .col2 .item-txt .ttl-lv2{
    text-align: center;
    margin-bottom:16px;
  }
  #contents .content-list .item .link .col2 .item-txt .ttl-lv2 .name-jp {
    font-size: 24px;
    padding: 4px 24px 0px;
  }
  #contents .content-list .item .link .col2 .item-txt .ttl-lv2 .name-en {
    font-size: 16px;
    margin-top: 1px;
    display: block;
  }
  #contents .content-list .item .link .col2 .item-txt .desc {
    font-size: 15px;
    line-height: 1.75;
    margin-bottom: 0px;
  }
  #contents .content-list .item .link .col2 .item-txt .more-link {
    padding-right: 46px;
    background: url(/pulsation/img/common/arw_right_red.png) no-repeat right 0px top 10px;
    background-size: 36px 6px;
    font-size:16px;
  }
  #contents .content-list .item .link .col2 .item-img{
    margin-top:60px;
    padding-top:0px;
    text-align: center;
  }
}
@media screen and (max-width: 500px) {
  .vol-nu{
    font-size:20px;
  }
  #contents .content-list .item .link .col2 .item-txt .ttl-lv2 br.under500{
    display: inline;
  }
}
