@charset "UTF-8";
/*

TOP

*/
/* FV
----------------------------- */
.mv {
  width: 100%;
  margin: 0 auto;
  background: url(img/mv_img3.jpg) top center no-repeat;
  background-size: cover;
  position: relative;
  padding: 12rem 0 6rem;
}
.mv_inner_wrapper {
  position: relative;
  z-index: 1;
}
.mv .mv_inner {
  max-width: 1000px;
    width: 610px;
    margin: 0px auto;
    padding: 3rem 6.5rem 3rem;
    background: #ffffffd4;
    border-radius: 5px;
    position: relative;
}
.mv .mv_inner::after {
  background: url(img/mv_pattern.png) repeat;
  background-size: 6px 6px;
  border-radius: 165px;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: -10px;
  left: 0;
  z-index: -1;
}
.mv .mv_inner .mv_title {
  margin: 0 0 1rem 0;
  font-size: 3.0rem;
  padding: 0 1rem 1rem;
  line-height: 1.5;
  color: #df4e0e;
  border-bottom: 1px dashed #989898;
  font-family: "HG明朝E", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.mv .mv_inner p.mv_text {
  color: #555;
  line-height: 1.6;
  padding: 0 1rem;
  font-size: 1.6rem;
  font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
}
.mv .mv_inner p + p {
  margin-top: 1rem;
}
.mv_catch {
  font-size: 3rem;
  font-family: "HG明朝E", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  line-height: 1.3;
  margin-bottom: 2rem;
  color: #ff6868;
  padding: 0 1rem 1.5rem;
  border-bottom: 1px dashed #989898;
}
.mv_txt {
  font-size: 1.6rem;
  font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
  color: #555;
  margin-bottom: 1.5rem;
  padding: 0 1rem;
}

/* compare-table-frame
----------------------------- */
.compare-table-group {
  margin: 2rem 0 3rem;
  padding: 3rem;
  background: #fff;
  position: relative;
}
.contents_top .compare-table-group .catch-copy {
  color: #333;
  font-size: 2.4rem;
  text-align: center;
  margin: 0 0 2.5rem;
  padding: 0 0 1rem;
  background: none;
  border-bottom: 3px dashed #ffc393;
}
.contents_top .title-viral-area .catch-copy {
  margin: 0 0 1.5rem;
  padding: 1rem 0;
  font-size: 1.8rem;
  border-bottom: 2px dashed #ffc393;
  color: #ff4c23;
  font-family: "HG明朝E", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  width: 100%;
  text-align: left;
}
.compare-table-frame .compare-table-group .image-text-area .catch-copy  {
  text-align: left;
  padding-left: .5rem;
}
.compare-table-frame .compare-table-group .image-text__text.text-static .catch-copy  {
  text-align: center;
}
.compare-table-group .catch02 {
  padding: 1.5rem 0;
  text-align: center;
  border-top: 2px solid #16b7bf;
  border-bottom: 2px solid #16b7bf;
  font-size: 2.5rem;
  line-height: 1.2;
  color: #16b7bf;
  margin: 2rem 0 3rem;
}
.compare-table-group .paragraph-frame p {
  color: #333;
}
.compare-table-group .image-text__image.image-left img,
.compare-table-group .image-text__image.image-right img,
.compare-table-group .image-center img {
  border: none;
}
.compare-table-group .image-text__image.image-left,
.compare-table-group .image-text__image.image-right {
  width: 100%;
  max-width: 290px;
}

/*/////img/////*/
.top-image-text-box {
  margin: 30px 0;
}
.top-image-text-box .catch-copy {
  color: #333;
  font-size: 1.8rem;
  background: none;
  line-height: 1.4;
  margin: 0 0 2rem;
  padding: 0 0 1rem;
  font-weight: bold;
  border-bottom: 1px dashed #0e7b52;
}

/*/////title-text-area /////*/
.compare-table-frame .title-text-area{
  background: #fff;
  padding: 2rem;
  margin: 3rem auto;
}
.compare-table-frame .title-text-area .top-title h2,
.compare-table-frame .title-text-area .top-title h3,
.compare-table-frame .title-text-area .top-title h4,
.compare-table-frame .title-text-area .top-title h5{
  margin-top:0;
}
.compare-table-group h2 {
  width: 100%;
  line-height: 140%;
  text-align: center;
  position: relative;
  color: #333;
  background: #ffc393;
  border: 2px dashed #fff;
  box-shadow: 0px 0px 0px 5px #ffc393;
  border-radius: 5px;
  font-size: 2.8rem;
  margin: 0 5px;
  padding: 2rem;
}
.compare-table-group h3 {
  background: #f5f3ef;
  font-size: 2.6rem;
  line-height: 140%;
  margin: 0 auto 3rem;
  padding: 20px 20px 20px 35px;
  position: relative;
}
.compare-table-group h4 {
  margin: 0 auto 3rem;
  padding: 0px 10px 10px 10px;
  font-size: 2.4rem;
  line-height: 140%;
  position: relative;
}
.compare-table-group h5 {
  margin: 0 auto 3rem;
  padding: 0 10px 10px 10px;
  font-size: 2.2rem;
  line-height: 140%;
  position: relative;
  border-bottom: 2px dotted #98ba6d;
}

/*/////image-text-area /////*/
.compare-table-frame .compare-table-group .image-text-area {
  background: #fff;
  padding: 2rem;
}

.compare-table-frame .compare-table-group .image-text-area .table-layout table tr td {
  vertical-align: middle;
}

/*/////title-table-area  /////*/
.compare-table-frame .compare-table-group .title-table-area {
  margin: 3rem auto;
  background: #fff;
  padding: 0.5rem 2rem;
}
.compare-table-frame .compare-table-group .title-table-area h2 {
  width: 100%;
  line-height: 140%;
  text-align: center;
  position: relative;
  color: #333;
  background: #ffc393;
  border: 2px dashed #fff;
  box-shadow: 0px 0px 0px 5px #ffc393;
  border-radius: 5px;
  font-size: 2.8rem;
  margin: 1rem 5px 2rem;
  padding: 2rem;
  width: calc(100% - 10px);
}
.compare-table-frame .compare-table-group .title-table-area .title-div {
  margin: 0 auto 10px;
  padding: 5px 10px;
  font-size: 1.8rem;
  line-height: 140%;
  color: #583626;
  border-bottom: 2px solid #a49389;
}

.compare-table-frame .compare-table-group .title-table-area .title-div a {
  background: url(img/textlink_arrow.png) no-repeat right center;
  background-size: 20px auto;
  color: #583626;
  display: block;
  padding: 0 30px 0 0;
  text-decoration: none;
}
.compare-table-frame .compare-table-group .title-table-area .title-div a:hover {
  opacity: .6;
}
/* 比較表内の見出しの上のmarginとpaddingを削除 */
.compare-table-frame .underlayer-title h2,
.compare-table-frame .underlayer-title h3,
.compare-table-frame .underlayer-title h4,
.compare-table-frame .underlayer-title h5,
.compare-table-frame .underlayer-title .box-head {
  margin-top: 0;
}

.compare-table-frame .compare-table-group .title-table-area .table-layout table {}
.compare-table-frame .compare-table-group .title-table-area .table-layout table tr td:nth-child(1) {}
.compare-table-frame .compare-table-group .title-table-area .table-layout table tr td {
  vertical-align: middle;
}


/*/////title-list-area /////*/
.compare-table-frame .compare-table-group .title-list-area {
  background: #fff;
  padding: 2rem;
}
.underlayer-title h2,
.compare-table-frame .compare-table-group .title-list-area h2 {
  width: 100%;
  line-height: 140%;
  text-align: center;
  position: relative;
  color: #333;
  background: #ffc393;
  border: 2px dashed #fff;
  box-shadow: 0px 0px 0px 5px #ffc393;
  border-radius: 5px;
  font-size: 2.8rem;
  margin: 0 5px 2rem;
  padding: 2rem;
  width: calc(100% - 10px);
}
.underlayer-title h3,
.compare-table-frame .compare-table-group .title-list-area h3 {
  font-size: 2.6rem;
  line-height: 140%;
  margin: 15px auto;
  padding: 2rem;
  border: 2px solid #f2b5a1;
  position: relative;
  background: #fff url(img/h2_parts.png) left -1px top no-repeat;
  background-size: 41px 41px;
}
.compare-table-frame .compare-table-group .title-list-area h4 {
  margin: 30px 0 20px;
  padding: 0px 10px 10px 10px;
  font-size: 2.4rem;
  line-height: 140%;
  position: relative;
  background: url(img/h3_parts.png) bottom repeat-x;
}
.compare-table-frame .compare-table-group .title-list-area h5 {
  margin: 30px auto 20px;
  padding: 0 10px 10px 10px;
  font-size: 2rem;
  line-height: 140%;
  position: relative;
  border-bottom: 1px solid #ff4c23;
}
.contents-left .compare-table-list,
.contents-right .compare-table-list {
  margin: 2rem auto;
}
.compare-table-list li,
.contents-left .compare-table-list li,
.contents-right .compare-table-list li {
  color: #46ab78;
  background: #f3ffed url(img/li.png) no-repeat left 3rem top 2.1rem;
  border-radius: 5px;
  margin: 0 0 2rem;
  padding: 2rem 3rem 2rem 6rem;
  line-height: 1.6;
  font-size: 1.8rem;
  font-family: "HG明朝E", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.compare-table-list li:last-child{
  margin:0;
}
.compare-table-list li a {
  color: #46ab78;
}
.compare-table-list li p {
  color: #333;
  margin: 0 0 1.5rem -3rem;
}
.compare-table-list li p:first-of-type {
  margin-top: 1.5rem;
}

/*----------------------------------------------------
    SP_css
----------------------------------------------------*/
@media screen and (max-width: 480px) {
  /* FV
  ----------------------------- */
  .mv {
    background: url(img/mv_img.png) center center no-repeat;
    background-size: cover;
    padding: 1.5rem 1.5rem;
    width: 100%;
    background-size: cover;
    padding: 1.5rem 1.5rem;
    width: 100%;
  }
  .mv .mv_inner {
    max-width: 100%;
    width: 100%;
    padding: 1.3rem 1.5rem;
    border-radius: 5px;
  }
  .mv .mv_inner::after {
    border-radius: 60px;
    bottom: -7px;
  }
  .mv .mv_inner .mv_title {
	font-size: 2.5rem;
    line-height: 1.3;
    text-align: justify;
    padding: 0 .5rem .5rem;
    margin-bottom: .5rem;
  }
  .mv .mv_inner p.mv_text {
    text-align: justify;
    font-size: 1.7rem;
    line-height: 1.5;
    padding: 0 .5rem;
  }
  .mv_catch {
    font-size: 2.2rem;
    padding: 0 1.5rem;
    text-align: center;
    margin: 0 0 1.5rem;
    border: none;
  }
  .mv_txt {
    padding: 0;
    background-size: 2.5rem 2.5rem;
    line-height: 1.5;
  }

  /* compare-table-frame
----------------------------- */
  .compare-table-group {
    padding: 2rem 1.5rem 2rem;
  }
  .compare-table-group h2 {
    margin: 2rem auto 3rem;
    padding: 2rem 1.5rem 1.5rem;
    font-size: 2.2rem;
    border-radius: 0;
    text-align: left;
  }
  .compare-table-frame .compare-table-group .title-table-area h2::before,
  .compare-table-group h2::before,
  .underlayer-title h2::before,
  .compare-table-frame .compare-table-group .title-list-area h2::before {
    width: 100px;
    height: 25px;
    background-size: contain;
    left: calc((100% - 100px)/2);
    top: -13px;
  }
  .compare-table-group h3 {
    font-size: 2.0rem;
    margin: 1rem 0 2rem;
    padding: 1rem 1.5rem 1rem 3rem;
  }
  .compare-table-group h3::before {
    height: calc(100% - 2rem);
  }
  .compare-table-group h4,
  .compare-table-group h5 {
    margin: .5rem 0 2rem;
    padding: 0 1rem .5rem;
    font-size: 1.8rem;
  }
  .contents_top .compare-table-group .catch-copy {
    font-size: 1.6rem;
    margin: 1rem 0 1.5rem;
    padding: 0 0 1.2rem;
    line-height: 1.4;
  }

  /*/////image-text-area /////*/
  .compare-table-frame .compare-table-group .image-text-area {
    padding: 5%;
  }

  /*/////title-text-area /////*/
  .compare-table-frame .title-text-area{
    padding: 0;
    margin-bottom: 5rem;
  }

  /*/////title-table-area  /////*/
  .compare-table-frame .compare-table-group .title-table-area {
    padding: 0;
    margin-bottom: 5rem;
  }
  .compare-table-frame .compare-table-group .title-table-area h2,
  .compare-table-frame .compare-table-group .title-table-area h3,
  .compare-table-frame .compare-table-group .title-table-area h4,
  .compare-table-frame .compare-table-group .title-table-area h5 {
    width: 100%;
    margin: 4rem 0 3rem 0;
  }
  .compare-table-frame .compare-table-group .title-table-area h2 {
    margin: 0 auto;
    padding: 1rem 1.5rem;
    font-size: 2.4rem;
    width: calc(100% - 10px);
  }
  .compare-table-frame .compare-table-group .title-table-area h3 {
    font-size: 2.2rem;
    margin: 0 auto;
    padding: 1rem 1.5rem 1rem 3rem;
  }
  .compare-table-frame .compare-table-group .title-table-area h3::before {
    height: calc(100% - 20px);
  }
  .compare-table-frame .compare-table-group .title-table-area h4 {
    margin: 0 0 2rem;
    padding: 3%;
    font-size: 2rem;
  }
  .compare-table-frame .compare-table-group .title-table-area h5 {
    margin: 0 auto 2rem;
    font-size: 1.8rem;
  }
  .compare-table-frame .compare-table-group .title-table-area .title-div {
    font-size: 1.6rem;
  }

  /*/////title-list-area /////*/
  .compare-table-frame .compare-table-group .title-list-area {
    background: #fff;
    padding: 0;
    margin-bottom: 5rem;
  }
  .compare-table-frame .compare-table-group .title-list-area h2,
  .compare-table-frame .compare-table-group .title-list-area h3,
  .compare-table-frame .compare-table-group .title-list-area h4,
  .compare-table-frame .compare-table-group .title-list-area h5 {
    width: 100%;
    margin: 4rem 0 3rem 0;
  }
  .compare-table-frame .compare-table-group .title-list-area h2 {
    padding: 1rem 1.5rem;
    font-size: 2.4rem;
    margin: 0 auto 2rem;
  }
  .compare-table-frame .compare-table-group .title-list-area h3 {
    font-size: 2.0rem;
    margin: 0 auto 2rem;
    padding: 1rem 1.5rem 1rem 3rem;
  }
  .compare-table-frame .compare-table-group .title-list-area h3::before {
    height: calc(100% - 20px);
    left: 1rem;
  }
  .compare-table-frame .compare-table-group .title-list-area h4 {
    margin: 0 auto 2rem;
    padding: 3%;
    font-size: 1.8rem;
  }
  .compare-table-frame .compare-table-group .title-list-area h4::after {
    content: "";
    bottom: 0;
    width: 100%;
    height: 5px;
    display: block;
    position: absolute;
    left: 0;
    background-size: auto auto;
    background-color: rgba(255, 194, 15, 1);
    background-image: repeating-linear-gradient(135deg, transparent, transparent 2px, rgba(255, 255, 255, 1) 2px, rgba(255, 255, 255, 1) 7px);
  }
  .compare-table-frame .compare-table-group .title-list-area h5 {
    margin: 0 auto 2rem;
    padding: 3% 3% 3% 8%;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .compare-table-list li,
  .contents-left .compare-table-list li,
  .contents-right .compare-table-list li {
    padding: 1rem 2rem 1rem 4rem;
    background-position: left 1.5rem top 1rem;
    font-size: 1.6rem;
  }
  .compare-table-list li {
    padding: 1.5rem 1.5rem 1.5rem 3.5rem;
    line-height: 1.6;
    font-size: 1.7rem;
    background-position: left 1.5rem top 2rem;
  }
  .compare-table-list li p {
    color: #333;
    margin: 1rem 0 2rem -2rem;
  }
  .compare-table-list li p:first-of-type {
    margin-top: 1rem;
  }

  /* etc  */
  .top-image-text-box .catch-copy {
    font-size: 1.5rem;
    margin: 1.5rem 0 1rem;
    padding: 0 0 .5rem;
  }
}