@charset "UTF-8";
/*------- mixin -------*/
/*------- color -------*/
/*------- base -------*/
@font-face {
  font-family: 'Avenir Roman';
  src: url("font/AvenirRoman.woff") format("woff"), url("font/AvenirRoman.otf") format("opentype");
  font-weight: 500;
  font-style: normal;
}
.under.csv #mainvisual,
.under.csv #mainvisual .container h2,
.under.csv .topic-path,
.under.csv .main, .under.csv h2, .under.csv h3, .under.csv h4, .under.csv h5, .under.csv h6 {
  font-family: 'Avenir Roman', 'Helvetica Neue', 'Helvetica', 'Noto Sans JP', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', 'Arial', 'Verdana', 'sans-serif';
  margin-bottom: 0;
  font-weight: 500;
}
.under.csv h3, .under.csv h4, .under.csv h5, .under.csv h6 {
  padding: 0;
  border: none;
}
.under.csv h3::after, .under.csv h4::after, .under.csv h5::after, .under.csv h6::after {
  content: none;
}
@media all and (max-width: 768px) {
  .under.csv .container {
    padding: 0 8%;
  }
}
.under.csv .main * {
  box-sizing: border-box;
}
.under.csv .main address, .under.csv .main blockquote, .under.csv .main button, .under.csv .main dd, .under.csv .main dt, .under.csv .main h1, .under.csv .main h2, .under.csv .main h3, .under.csv .main h4, .under.csv .main h5, .under.csv .main h6, .under.csv .main input, .under.csv .main li, .under.csv .main p, .under.csv .main pre, .under.csv .main select, .under.csv .main td, .under.csv .main textarea, .under.csv .main th {
  font-size: 160%;
}
.under.csv .main a {
  text-decoration: none;
}
.under.csv .main p {
  color: rgba(112, 112, 112, 0.6);
  margin: 0;
}
.under.csv .main .center {
  text-align: center;
}
.under.csv .main b {
  font-weight: 500;
}

/**
 * 201121 あんしん半額プラン
 */
.csv .topic-path {
  margin-bottom: 0;
}
.csv #mv {
  background: #a69487 url("../images/csv/mv.jpg") no-repeat center center/cover;
  padding: 108px 0 171px;
  position: relative;
}
.csv #mv .container {
  position: relative;
  z-index: 2;
}
@media all and (max-width: 768px) {
  .csv #mv {
    background-image: url("../images/csv/mv_sp.jpg");
    background-color: #c0b1a6;
    padding: 233px 0 26px;
  }
}
.csv #mv h3 {
  font-size: 36px;
  color: #fff;
  text-shadow: 0 3px 6px rgba(0, 0, 0, 0.12);
  font-feature-settings: "palt";
  line-height: 1.5;
  letter-spacing: .06em;
}
@media all and (max-width: 768px) {
  .csv #mv h3 {
    font-size: 24px;
  }
}
.csv #mv h3 small {
  font-size: .5em;
  display: block;
  margin-bottom: 12px;
  letter-spacing: .05em;
}
@media all and (max-width: 768px) {
  .csv #mv h3 small {
    font-size: .6em;
    margin-bottom: 7px;
    letter-spacing: .05em;
  }
}
.csv #mv::before {
  content: "";
  width: 32%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  background: linear-gradient(to right, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0));
  z-index: 1;
}
.csv #our_csv .about_csv {
  padding: 42px 0 120px;
  position: relative;
  z-index: 2;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv {
    padding: 248px 0 90px;
  }
}
.csv #our_csv .about_csv::before {
  content: "";
  width: 207px;
  height: 207px;
  position: absolute;
  top: -62px;
  right: calc(50% + 380px);
  background: url("../images/csv/our_csv_img01.png") no-repeat center center/contain;
  z-index: -1;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv::before {
    width: 121px;
    height: 121px;
    top: -17px;
    right: calc(50% + 85px);
  }
}
.csv #our_csv .about_csv::after {
  content: "";
  width: 415px;
  height: 415px;
  position: absolute;
  top: -91px;
  left: calc(50% + 399px);
  background: url("../images/csv/our_csv_img02.png") no-repeat center center/contain;
  z-index: -1;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv::after {
    width: 243px;
    height: 243px;
    top: -24px;
    left: calc(50% + 0px);
  }
}
.csv #our_csv .about_csv .modal_btn {
  background-color: #fff;
  color: #6FC4DB;
  font-size: 18px;
  width: 100%;
  max-width: 568px;
  display: block;
  margin: 0 auto;
  text-align: center;
  line-height: 70px;
  border: 1px solid #6FC4DB;
  border-radius: 35px;
  letter-spacing: .05em;
  position: relative;
  transition: all .3s;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .modal_btn {
    line-height: 62px;
  }
}
.csv #our_csv .about_csv .modal_btn::before, .csv #our_csv .about_csv .modal_btn::after {
  content: "";
  width: 24px;
  height: 2px;
  border-radius: 1px;
  background-color: #6FC4DB;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 36px;
  margin: auto 0;
  transition: all .3s;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .modal_btn::before, .csv #our_csv .about_csv .modal_btn::after {
    right: 41px;
  }
}
.csv #our_csv .about_csv .modal_btn::after {
  transform: rotate(90deg);
}
.csv #our_csv .about_csv .modal_btn:hover {
  background-color: #6FC4DB;
  color: #fff;
}
.csv #our_csv .about_csv .modal_btn:hover::before, .csv #our_csv .about_csv .modal_btn:hover::after {
  background-color: #fff;
}
.csv #our_csv .about_csv .modal_btn + p {
  text-align: center;
  font-size: 14px;
  color: #6FC4DB;
  letter-spacing: .07em;
  margin-top: 4px;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .modal_btn + p {
    letter-spacing: .06em;
    margin-top: 6px;
  }
}
.csv #our_csv .about_csv h4 {
  font-size: 32px;
  color: #707070;
  margin-top: 63px;
  text-align: center;
  letter-spacing: .07em;
  line-height: 1.45;
  margin-bottom: 49px;
  position: relative;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv h4 {
    font-size: 28px;
    margin-top: 41px;
    letter-spacing: .04em;
    line-height: 1.5;
    margin-bottom: 39px;
  }
}
.csv #our_csv .about_csv h4 .en {
  display: block;
  font-size: 14px;
  color: #6FC4DB;
  margin-top: 17px;
  letter-spacing: .07em;
}
.csv #our_csv .about_csv h4 i {
  position: absolute;
  bottom: -32px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #6FC4DB;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv h4 i {
    bottom: -18px;
  }
}
.csv #our_csv .about_csv h4 i::before, .csv #our_csv .about_csv h4 i::after {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  position: absolute;
  top: 0;
}
.csv #our_csv .about_csv h4 i::before {
  left: -12px;
  background-color: #FA7D92;
}
.csv #our_csv .about_csv h4 i::after {
  right: -12px;
  background-color: #9EE0B5;
}
.csv #our_csv .about_csv h4 + p {
  letter-spacing: .04em;
  line-height: 2.15;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv h4 + p {
    line-height: 1.95;
  }
}
.csv #our_csv .about_csv .anc {
  margin-top: 59px;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: space-between;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .anc {
    margin-top: 16px;
    flex-direction: column;
  }
}
.csv #our_csv .about_csv .anc .anc_item {
  width: 320px;
  display: block;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .anc .anc_item {
    width: 100%;
  }
}
@media not all and (max-width: 768px) {
  .csv #our_csv .about_csv .anc .anc_item .img {
    position: relative;
  }
}
.csv #our_csv .about_csv .anc .anc_item .img::after {
  content: "";
  width: 98%;
  height: 98%;
  border-radius: 50%;
  position: absolute;
  top: -1px;
  left: 21px;
  border-style: solid;
  border-width: 2px;
  opacity: 0;
  transition: all .3s;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .anc .anc_item .img::after {
    content: none;
  }
}
.csv #our_csv .about_csv .anc .anc_item .img img {
  display: block;
  width: 100%;
  height: auto;
}
.csv #our_csv .about_csv .anc .anc_item .btn {
  margin-top: 18px;
  font-size: 18px;
  text-align: center;
  color: #fff;
  border-radius: 36px;
  padding: 13px 0 15px;
  letter-spacing: .07em;
  transition: all .3s;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .anc .anc_item .btn {
    margin-top: -10px;
    position: relative;
  }
}
.csv #our_csv .about_csv .anc .anc_item .btn span {
  display: block;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.8);
  margin-top: 3px;
}
.csv #our_csv .about_csv .anc .anc_item .btn span::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-style: solid;
  border-color: #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) translate(-1px, -2px);
  margin-left: 6px;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .anc .anc_item:nth-child(n+2) {
    margin-top: 40px;
  }
}
.csv #our_csv .about_csv .anc .anc_item:nth-child(1) .img::after {
  border-color: #FA7D92;
}
.csv #our_csv .about_csv .anc .anc_item:nth-child(1) .btn {
  background-color: #FA7D92;
}
.csv #our_csv .about_csv .anc .anc_item:nth-child(2) .img::after {
  border-color: #6FC4DB;
}
.csv #our_csv .about_csv .anc .anc_item:nth-child(2) .btn {
  background-color: #6FC4DB;
}
.csv #our_csv .about_csv .anc .anc_item:nth-child(3) .img::after {
  border-color: #9EE0B5;
}
.csv #our_csv .about_csv .anc .anc_item:nth-child(3) .btn {
  background-color: #9EE0B5;
}
@media not all and (max-width: 768px) {
  .csv #our_csv .about_csv .anc .anc_item:hover .img::after {
    opacity: 1;
  }
  .csv #our_csv .about_csv .anc .anc_item:hover .btn {
    opacity: .7;
  }
}
.csv #our_csv .about_csv .actions {
  margin-top: 83px;
  position: relative;
  background-color: rgba(244, 244, 244, 0.5);
  padding: 52px 40px;
  border-radius: 8px;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .actions {
    margin-top: 68px;
    padding: 65px 30px 40px;
  }
}
.csv #our_csv .about_csv .actions dt {
  font-size: 20px;
  letter-spacing: .07em;
  color: #6FC4DB;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  transform: translateY(-50%);
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .actions dt {
    letter-spacing: .09em;
    line-height: 1.5;
    transform: translateY(-16px);
  }
}
.csv #our_csv .about_csv .actions dd {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .actions dd {
    flex-direction: column;
  }
}
.csv #our_csv .about_csv .actions dd p {
  font-size: 15px;
  letter-spacing: .08em;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .actions dd p {
    line-height: 1.6;
  }
}
.csv #our_csv .about_csv .actions dd a {
  width: 240px;
  margin-left: 15px;
  border: 1px solid #6FC4DB;
  color: #6FC4DB;
  font-size: 14px;
  letter-spacing: .07em;
  flex-shrink: 0;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: space-between;
  align-items: center;
  line-height: 54px;
  border-radius: 27px;
  padding: 0 34px 0 31px;
  transition: all .3s;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .actions dd a {
    width: 100%;
    margin-left: 0;
    margin-top: 19px;
    display: block;
    text-align: center;
    position: relative;
  }
}
.csv #our_csv .about_csv .actions dd a::after {
  content: "";
  width: 8px;
  height: 8px;
  border-style: solid;
  border-color: #6FC4DB;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) translate(-4px, -2px);
  transition: all .3s;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv .actions dd a::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 26px;
    margin: auto 0;
  }
}
@media not all and (max-width: 768px) {
  .csv #our_csv .about_csv .actions dd a:hover {
    color: #fff;
    background-color: #6FC4DB;
  }
  .csv #our_csv .about_csv .actions dd a:hover::after {
    border-color: #fff;
  }
}
.csv #our_csv .about_csv > i {
  display: block;
  position: absolute;
  border-radius: 50%;
  z-index: -1;
  opacity: 0;
  transition: all .5s;
}
.csv #our_csv .about_csv > i::before, .csv #our_csv .about_csv > i::after {
  content: "";
  border-radius: 50%;
  position: absolute;
  opacity: 0;
  transition: all .5s;
}
.csv #our_csv .about_csv > i::after {
  width: 33px;
  height: 33px;
  background-color: rgba(158, 224, 181, 0.08);
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv > i::after {
    width: 23px;
    height: 23px;
  }
}
.csv #our_csv .about_csv > i:nth-of-type(1) {
  width: 269px;
  height: 269px;
  background-color: rgba(111, 196, 219, 0.08);
  top: 181px;
  right: calc(50% + 350px);
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv > i:nth-of-type(1) {
    width: 186px;
    height: 186px;
    top: 114px;
    right: calc(50% + 5px);
  }
}
.csv #our_csv .about_csv > i:nth-of-type(1)::before {
  bottom: -75px;
  right: -53px;
  transition-delay: .6s;
  width: 80px;
  height: 80px;
  background-color: rgba(250, 125, 146, 0.08);
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv > i:nth-of-type(1)::before {
    width: 55px;
    height: 55px;
    bottom: -114px;
    right: -148px;
  }
}
.csv #our_csv .about_csv > i:nth-of-type(1)::after {
  bottom: 20px;
  right: -89px;
  transition-delay: .4s;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv > i:nth-of-type(1)::after {
    bottom: -48px;
    right: -173px;
  }
}
.csv #our_csv .about_csv > i:nth-of-type(2) {
  top: 345px;
  left: calc(50% + 358px);
  transition-delay: 1s;
  width: 80px;
  height: 80px;
  background-color: rgba(250, 125, 146, 0.08);
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv > i:nth-of-type(2) {
    width: 55px;
    height: 55px;
    top: 512px;
    left: calc(50% - 17px);
  }
}
.csv #our_csv .about_csv > i:nth-of-type(2)::before {
  width: 269px;
  height: 269px;
  background-color: rgba(111, 196, 219, 0.08);
  top: 75px;
  left: 53px;
  transition-delay: 1.6s;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv > i:nth-of-type(2)::before {
    width: 186px;
    height: 186px;
    top: auto;
    bottom: -114px;
    left: -148px;
  }
}
.csv #our_csv .about_csv > i:nth-of-type(2)::after {
  top: 96px;
  left: -36px;
  transition-delay: 1.4s;
}
@media all and (max-width: 768px) {
  .csv #our_csv .about_csv > i:nth-of-type(2)::after {
    top: auto;
    bottom: -48px;
    left: -173px;
  }
}
.csv #our_csv .about_csv.ons i {
  opacity: 1;
}
.csv #our_csv .about_csv.ons i::before, .csv #our_csv .about_csv.ons i::after {
  opacity: 1;
}
.csv #our_csv article .kv {
  position: relative;
  margin-bottom: 67px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .kv {
    margin-bottom: 61px;
  }
}
.csv #our_csv article .kv img {
  display: block;
  width: 100%;
  height: auto;
}
.csv #our_csv article .kv::before {
  content: "";
  position: absolute;
  top: 20px;
  width: calc(50% + 540px);
  height: 100%;
  z-index: -1;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .kv::before {
    width: 92%;
  }
}
.csv #our_csv article .kv .moving_letter {
  font-size: 158px;
  font-weight: bold;
  letter-spacing: .07em;
  position: absolute;
  top: calc(100% + 86px);
  z-index: -1;
  left: 100%;
  transform: translateX(0%);
  white-space: nowrap;
  animation: moving_left 30s linear 0s infinite normal;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .kv .moving_letter {
    font-size: 44px;
    top: calc(100% + 175px);
  }
}
.csv #our_csv article h4 {
  font-size: 28px;
  text-align: center;
  line-height: 1.8;
  letter-spacing: 0.12em;
  margin-bottom: 80px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article h4 {
    font-size: 22px;
    line-height: 1.7;
    letter-spacing: 0.14em;
    margin-bottom: 101px;
  }
}
.csv #our_csv article h4 i {
  position: absolute;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}
@media all and (max-width: 768px) {
  .csv #our_csv article h4 i {
    bottom: -33px;
  }
}
.csv #our_csv article h4 i::before, .csv #our_csv article h4 i::after {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  position: absolute;
  top: 0;
}
.csv #our_csv article h4 i::before {
  left: -12px;
}
.csv #our_csv article h4 i::after {
  right: -12px;
}
.csv #our_csv article .actions {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: space-between;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .actions {
    flex-direction: column;
  }
}
.csv #our_csv article .actions .action {
  width: 520px;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: column;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .actions .action {
    width: 100%;
  }
}
.csv #our_csv article .actions .action img {
  display: block;
  width: 100%;
  height: auto;
  flex-shrink: 0;
}
.csv #our_csv article .actions .action h5 {
  color: #707070;
  text-align: center;
  font-size: 20px;
  margin-top: 17px;
  letter-spacing: .08em;
  flex-shrink: 0;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .actions .action h5 {
    text-align: left;
    margin-top: 15px;
    letter-spacing: .085em;
    line-height: 1.65;
  }
}
.csv #our_csv article .actions .action h5 + p {
  margin-top: 10px;
  letter-spacing: .04em;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .actions .action h5 + p {
    margin-top: 6px;
    line-height: 1.7;
  }
}
.csv #our_csv article .actions .action .info {
  border-radius: 10px;
  margin-top: 24px;
  padding: 21px 40px 28px;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto auto;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .actions .action .info {
    margin-top: 12px;
    padding: 27px 0 28px;
  }
}
.csv #our_csv article .actions .action .info .ttl {
  font-size: 18px;
  letter-spacing: .08em;
  text-align: center;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .actions .action .info .ttl {
    line-height: 1.65;
  }
}
.csv #our_csv article .actions .action .info .number {
  font-size: 18px;
  margin-top: 25px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .actions .action .info .number {
    margin-top: 14px;
  }
}
.csv #our_csv article .actions .action .info .number b {
  font-size: 68px;
  line-height: 1;
  margin-right: 8px;
  margin-left: 10px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .actions .action .info .number b {
    margin-left: 27px;
  }
}
.csv #our_csv article .actions .action .info .number small {
  display: block;
  font-size: 12px;
  line-height: 1.9;
  letter-spacing: .09em;
  text-align: center;
}
.csv #our_csv article .actions .action .info a {
  font-size: 16px;
  color: #707070;
  text-decoration: underline;
  margin-top: 21px;
  letter-spacing: .07em;
}
@media all and (max-width: 768px) {
  .csv #our_csv article .actions .action .info a {
    margin-top: 15px;
  }
}
@media not all and (max-width: 768px) {
  .csv #our_csv article .actions .action .info a:hover {
    text-decoration: none;
  }
}
@media all and (max-width: 768px) {
  .csv #our_csv article .actions .action + .action {
    margin-top: 58px;
  }
}
.csv #our_csv article#for_health {
  padding-bottom: 114px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health {
    padding-bottom: 83px;
  }
}
.csv #our_csv article#for_health .kv::before {
  border-radius: 0 0 0 10px;
  right: 0;
  background-color: #FA7D92;
}
.csv #our_csv article#for_health .kv .moving_letter {
  color: rgba(250, 125, 146, 0.06);
}
.csv #our_csv article#for_health h4 {
  color: #FA7D92;
}
.csv #our_csv article#for_health h4 i {
  background-color: #FA7D92;
}
.csv #our_csv article#for_health h4 i::before, .csv #our_csv article#for_health h4 i::after {
  background-color: #FA7D92;
}
.csv #our_csv article#for_health .actions .action .info {
  background-color: rgba(250, 125, 146, 0.05);
}
.csv #our_csv article#for_health .actions .action .info .ttl, .csv #our_csv article#for_health .actions .action .info .number b {
  color: #FA7D92;
}
.csv #our_csv article#for_health .actions .action .info .pack {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-top: 12px;
  padding-bottom: 23px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .actions .action .info .pack {
    flex-wrap: wrap;
    width: 204px;
    margin-top: 23px;
    padding-bottom: 0;
  }
}
.csv #our_csv article#for_health .actions .action .info .pack li {
  width: 80px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .actions .action .info .pack li {
    margin-bottom: 59px;
  }
}
.csv #our_csv article#for_health .actions .action .info .pack li figure {
  display: block;
  width: 100%;
  position: relative;
  margin: 0;
}
.csv #our_csv article#for_health .actions .action .info .pack li figure img {
  display: block;
  width: 100%;
  height: auto;
}
.csv #our_csv article#for_health .actions .action .info .pack li figure figcaption {
  position: absolute;
  font-size: 12px;
  letter-spacing: .08em;
  color: rgba(112, 112, 112, 0.6);
  left: 50%;
  top: calc(100% + 2px);
  transform: translateX(-50%);
  white-space: nowrap;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .actions .action .info .pack li figure figcaption {
    top: calc(100% + 9px);
  }
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .actions .action .info .pack + a {
    margin-top: 4px;
  }
}
.csv #our_csv article#for_health .actions .action:nth-child(1) .info {
  background-image: url("../images/csv/for_health_action01_info_bg.svg");
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .actions .action:nth-child(1) .info {
    background-image: url("../images/csv/for_health_action01_info_bg_sp.svg");
  }
}
.csv #our_csv article#for_health .actions .action:nth-child(2) .info {
  background-image: url("../images/csv/for_health_action02_info_bg.svg");
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .actions .action:nth-child(2) .info {
    background-image: url("../images/csv/for_health_action02_info_bg_sp.svg");
    background-position: left 10px bottom 89px;
  }
}
.csv #our_csv article#for_health .free_vaccination {
  margin-top: 56px;
}
.csv #our_csv article#for_health .free_vaccination h5 {
  font-size: 20px;
  color: #FA7D92;
  text-align: center;
  letter-spacing: .08em;
}
.csv #our_csv article#for_health .free_vaccination .inner {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: space-between;
  margin-top: 32px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .free_vaccination .inner {
    flex-direction: column;
    margin-top: 24px;
  }
}
.csv #our_csv article#for_health .free_vaccination .inner .img {
  width: calc(50% - 40px);
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .free_vaccination .inner .img {
    width: 100%;
  }
}
.csv #our_csv article#for_health .free_vaccination .inner .img img {
  display: block;
  width: 100%;
  height: auto;
}
.csv #our_csv article#for_health .free_vaccination .inner .txt {
  width: 50%;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .free_vaccination .inner .txt {
    width: 100%;
    margin-top: 13px;
  }
}
.csv #our_csv article#for_health .free_vaccination .inner .txt p {
  letter-spacing: .04em;
  line-height: 1.85;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .free_vaccination .inner .txt p {
    line-height: 1.7;
  }
}
.csv #our_csv article#for_health .free_vaccination .inner .txt p:nth-child(n+2) {
  margin-top: 39px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .free_vaccination .inner .txt p:nth-child(n+2) {
    margin-top: 7px;
  }
}
.csv #our_csv article#for_health .free_vaccination .info {
  background-color: rgba(250, 125, 146, 0.05);
  border-radius: 10px;
  margin: 24px auto 0;
  padding: 21px 40px 28px;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  background-repeat: no-repeat;
  background-position: left 15px bottom 28px;
  background-size: auto auto;
  background-image: url("../images/csv/for_health_free_vaccination_info_bg.svg");
  width: 520px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .free_vaccination .info {
    width: 100%;
    margin-top: 12px;
    padding: 27px 0 28px;
  }
}
.csv #our_csv article#for_health .free_vaccination .info .ttl {
  font-size: 18px;
  letter-spacing: .08em;
  text-align: center;
  color: #FA7D92;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .free_vaccination .info .ttl {
    line-height: 1.65;
  }
}
.csv #our_csv article#for_health .free_vaccination .info .number {
  font-size: 18px;
  margin-top: 25px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .free_vaccination .info .number {
    margin-top: 14px;
  }
}
.csv #our_csv article#for_health .free_vaccination .info .number b {
  font-size: 68px;
  line-height: 1;
  margin-right: 8px;
  margin-left: 10px;
  color: #FA7D92;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_health .free_vaccination .info .number b {
    margin-left: 27px;
  }
}
.csv #our_csv article#for_health .free_vaccination .info .number small {
  display: block;
  font-size: 12px;
  line-height: 1.9;
  letter-spacing: .09em;
  text-align: center;
}
.csv #our_csv article#environment {
  padding-bottom: 116px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#environment {
    padding-bottom: 82px;
  }
}
.csv #our_csv article#environment .kv::before {
  border-radius: 0 0 10px 0;
  left: 0;
  background-color: #6FC4DB;
}
.csv #our_csv article#environment .kv .moving_letter {
  color: rgba(111, 196, 219, 0.11);
  animation-delay: 4s;
}
.csv #our_csv article#environment h4 {
  color: #6FC4DB;
}
.csv #our_csv article#environment h4 i {
  background-color: #6FC4DB;
}
.csv #our_csv article#environment h4 i::before, .csv #our_csv article#environment h4 i::after {
  background-color: #6FC4DB;
}
.csv #our_csv article#for_happiness {
  padding-bottom: 120px;
}
@media all and (max-width: 768px) {
  .csv #our_csv article#for_happiness {
    padding-bottom: 91px;
  }
}
.csv #our_csv article#for_happiness .kv::before {
  border-radius: 0 0 0 10px;
  right: 0;
  background-color: #9EE0B5;
}
.csv #our_csv article#for_happiness .kv .moving_letter {
  color: rgba(226, 244, 232, 0.4);
  animation-delay: 8s;
}
.csv #our_csv article#for_happiness h4 {
  color: #9EE0B5;
}
.csv #our_csv article#for_happiness h4 i {
  background-color: #9EE0B5;
}
.csv #our_csv article#for_happiness h4 i::before, .csv #our_csv article#for_happiness h4 i::after {
  background-color: #9EE0B5;
}
.csv #our_csv article#for_happiness .actions .action .info {
  background-color: rgba(116, 180, 139, 0.05);
  background-position: left 15px bottom 28px;
}
.csv #our_csv article#for_happiness .actions .action .info .ttl, .csv #our_csv article#for_happiness .actions .action .info .number b {
  color: #9EE0B5;
}
.csv #our_csv article#for_happiness .actions .action .info .number {
  margin-top: 21px;
}
.csv #our_csv article#for_happiness .actions .action .info .number b {
  font-size: 60px;
  margin-left: -5px;
  letter-spacing: -.03em;
}
.csv #our_csv article#for_happiness .actions .action:nth-child(1) .info {
  background-image: url("../images/csv/for_happiness_action01_info_bg.svg");
}
.csv #our_csv article#for_happiness .actions .action:nth-child(2) .info {
  background-image: url("../images/csv/for_happiness_action02_info_bg.svg");
}
.csv #our_sdgs .we_agree {
  background: #715b43 url("../images/csv/we_agree_bg.jpg") no-repeat center center/cover;
  padding: 52px 0 66px;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .we_agree {
    background-image: url("../images/csv/we_agree_bg_sp.jpg");
    background-color: #684c34;
    padding: 81px 0 90px;
  }
}
.csv #our_sdgs .we_agree h4 {
  font-size: 28px;
  text-align: center;
  color: #fff;
  line-height: 1.7;
  letter-spacing: .08em;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .we_agree h4 {
    line-height: 1.65;
    letter-spacing: .085em;
  }
}
.csv #our_sdgs .we_agree .sdgs_img {
  width: 100%;
  max-width: 550px;
  margin: 41px auto 0;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .we_agree .sdgs_img {
    margin-top: 37px;
  }
}
.csv #our_sdgs .we_agree .sdgs_img img {
  display: block;
  width: 100%;
  height: auto;
}
.csv #our_sdgs .we_agree a {
  display: block;
  color: #fff;
  width: 100%;
  max-width: 568px;
  font-size: 18px;
  letter-spacing: .04em;
  text-align: center;
  border: 1px solid #fff;
  border-radius: 36px;
  padding: 12px 0 16px;
  margin: 47px auto 0;
  position: relative;
  transition: all .3s;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .we_agree a {
    margin-top: 49px;
    line-height: 34px;
    border-radius: 32px;
    padding: 16px 0 12px;
  }
}
.csv #our_sdgs .we_agree a small {
  font-size: 14px;
  letter-spacing: 0.085em;
  line-height: 1.25;
}
.csv #our_sdgs .we_agree a::before, .csv #our_sdgs .we_agree a::after {
  content: "";
  width: 24px;
  height: 2px;
  border-radius: 1px;
  background-color: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 34px;
  margin: auto 0;
  transition: all .3s;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .we_agree a::before, .csv #our_sdgs .we_agree a::after {
    right: 22px;
  }
}
.csv #our_sdgs .we_agree a::after {
  transform: rotate(90deg);
}
@media not all and (max-width: 768px) {
  .csv #our_sdgs .we_agree a:hover {
    background-color: #fff;
    color: #707070;
  }
  .csv #our_sdgs .we_agree a:hover::before, .csv #our_sdgs .we_agree a:hover::after {
    background-color: #707070;
  }
}
.csv #our_sdgs .ahead2030 {
  background-color: #eee;
  padding: 47px 0 120px;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 {
    padding: 37px 0 59px;
  }
}
.csv #our_sdgs .ahead2030 h4 {
  font-size: 28px;
  line-height: 1.75;
  letter-spacing: .08em;
  text-align: center;
  color: #707070;
  margin-bottom: 43px;
  position: relative;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 h4 {
    font-size: 26px;
    line-height: 1.55;
    letter-spacing: .01em;
    margin-bottom: 54px;
  }
}
.csv #our_sdgs .ahead2030 h4 i {
  position: absolute;
  bottom: -22px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #6FC4DB;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 h4 i {
    bottom: -30px;
  }
}
.csv #our_sdgs .ahead2030 h4 i::before, .csv #our_sdgs .ahead2030 h4 i::after {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  position: absolute;
  top: 0;
}
.csv #our_sdgs .ahead2030 h4 i::before {
  left: -12px;
  background-color: #FA7D92;
}
.csv #our_sdgs .ahead2030 h4 i::after {
  right: -12px;
  background-color: #9EE0B5;
}
.csv #our_sdgs .ahead2030 h4 + p {
  line-height: 2.15;
  letter-spacing: .05em;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 h4 + p {
    line-height: 1.74;
    letter-spacing: .045em;
    text-align: left;
  }
}
.csv #our_sdgs .ahead2030 ul {
  margin-top: 77px;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 ul {
    margin-top: 52px;
  }
}
.csv #our_sdgs .ahead2030 ul li {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.csv #our_sdgs .ahead2030 ul li:nth-child(n+2) {
  margin-top: 54px;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 ul li:nth-child(n+2) {
    margin-top: 52px;
  }
}
.csv #our_sdgs .ahead2030 ul li .img {
  width: 520px;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 ul li .img {
    width: 100%;
    margin-top: 29px;
  }
}
.csv #our_sdgs .ahead2030 ul li .img img {
  display: block;
  width: 100%;
  height: auto;
}
.csv #our_sdgs .ahead2030 ul li .txt {
  width: 520px;
}
.csv #our_sdgs .ahead2030 ul li .txt h5 {
  font-size: 20px;
  letter-spacing: .08em;
  line-height: 1.45;
  color: #272986;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  align-items: center;
}
.csv #our_sdgs .ahead2030 ul li .txt h5 i {
  width: 56px;
  flex-shrink: 0;
  margin-right: 19px;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 ul li .txt h5 i {
    margin-right: 14px;
  }
}
.csv #our_sdgs .ahead2030 ul li .txt h5 i img {
  display: block;
  width: 100%;
  height: auto;
}
.csv #our_sdgs .ahead2030 ul li .txt dl {
  margin-top: 22px;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 ul li .txt dl {
    margin-top: 26px;
  }
}
.csv #our_sdgs .ahead2030 ul li .txt dl dt {
  color: #707070;
  font-size: 16px;
  letter-spacing: .04em;
}
.csv #our_sdgs .ahead2030 ul li .txt dl dd {
  color: rgba(112, 112, 112, 0.6);
  font-size: 16px;
  line-height: 1.85;
  letter-spacing: .042em;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 ul li .txt dl dd {
    line-height: 1.7;
    margin-top: 9px;
  }
}
.csv #our_sdgs .ahead2030 ul li .txt dl dd .collection_envelope {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin-top: 10px;
}
.csv #our_sdgs .ahead2030 ul li .txt dl dd .collection_envelope img {
  width: 120px;
  height: auto;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 ul li .txt dl dd .collection_envelope img {
    width: 100px;
  }
}
.csv #our_sdgs .ahead2030 ul li .txt dl dd .collection_envelope img + img {
  margin-left: 30px;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 ul li .txt dl dd .collection_envelope img + img {
    margin-left: 20px;
  }
}
.csv #our_sdgs .ahead2030 ul li .txt dl dd + dt {
  margin-top: 16px;
}
@media all and (max-width: 768px) {
  .csv #our_sdgs .ahead2030 ul li .txt dl dd + dt {
    margin-top: 18px;
  }
}
.csv #our_sdgs .ahead2030 ul li:nth-child(2) h5 {
  letter-spacing: 0;
}
.csv #our_sdgs .ahead2030 ul li:nth-child(3) h5 {
  letter-spacing: .02em;
}
.csv #bnr {
  padding: 120px 0;
}
@media all and (max-width: 768px) {
  .csv #bnr {
    padding: 68px 0 36px;
  }
}
.csv #bnr a {
  display: block;
  width: 100%;
  max-width: 690px;
  margin: 0 auto;
}
.csv #bnr a img {
  display: block;
  width: 100%;
  height: auto;
}

body {
  width: 100%;
}

.modal_box {
  border: 1px solid #707070;
  background-color: #fff;
  padding: 21px 37px 28px;
  border-radius: 10px;
  width: 84%;
  max-width: 568px;
  position: fixed;
  top: 50%;
  left: 0;
  right: 0;
  margin: 0 auto;
  transform: translateY(-50%);
  display: none;
  z-index: 999;
  box-sizing: border-box;
}
@media all and (max-width: 768px) {
  .modal_box {
    padding: 20px 4%;
  }
}
.modal_box p {
  margin: 0;
  color: #707070;
  text-align: center;
  letter-spacing: .04em;
}
.modal_box .q {
  font-size: 18px;
}
@media all and (max-width: 768px) {
  .modal_box .q {
    font-size: 14px;
  }
}
.modal_box .a {
  font-size: 24px;
  margin-top: 5px;
}
@media all and (max-width: 768px) {
  .modal_box .a {
    font-size: 16px;
    margin-top: 2px;
  }
}
.modal_box .pawprint {
  width: 25px;
  height: auto;
  display: block;
  margin: 3px auto 10px;
}
@media all and (max-width: 768px) {
  .modal_box .pawprint {
    margin: 5px auto 7px;
  }
}
.modal_box .detail ul {
  counter-reset: item 0;
}
.modal_box .detail ul li {
  color: rgba(112, 112, 112, 0.6);
  font-size: 14px;
  letter-spacing: .07em;
  padding-left: 33px;
  position: relative;
}
@media all and (max-width: 768px) {
  .modal_box .detail ul li {
    font-size: 13px;
    line-height: 1.7;
    padding-left: 25px;
  }
}
.modal_box .detail ul li::before {
  counter-increment: item 1;
  content: counter(item);
  color: #707070;
  font-size: 18px;
  position: absolute;
  left: 0;
  top: 0;
}
@media all and (max-width: 768px) {
  .modal_box .detail ul li::before {
    font-size: 16px;
  }
}
.modal_box .detail ul li:nth-child(n+2) {
  margin-top: 14px;
}
@media all and (max-width: 768px) {
  .modal_box .detail ul li:nth-child(n+2) {
    margin-top: 10px;
  }
}
.modal_box .modal_close {
  position: absolute;
  top: 25px;
  right: 40px;
  appearance: none;
  width: 24px;
  height: 24px;
  border: none;
  background: none;
  cursor: pointer;
  outline: none;
}
@media all and (max-width: 768px) {
  .modal_box .modal_close {
    top: 15px;
    right: 20px;
  }
}
.modal_box .modal_close::before, .modal_box .modal_close::after {
  content: "";
  width: 24px;
  height: 2px;
  border-radius: 1px;
  background-color: #707070;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.modal_box .modal_close::before {
  transform: rotate(-45deg);
}
.modal_box .modal_close::after {
  transform: rotate(45deg);
}
.modal_box.scrollable {
  transform: translateY(0);
  overflow: auto;
}
.modal_box.blue {
  border-color: #6FC4DB;
}
.modal_box.blue .q, .modal_box.blue .a, .modal_box.blue .detail ul li::before {
  color: #6FC4DB;
}
.modal_box.blue .modal_close::before, .modal_box.blue .modal_close::after {
  background-color: #6FC4DB;
}

.modal_bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 998;
  background-color: rgba(0, 0, 0, 0.2);
  cursor: pointer;
  display: none;
}

@keyframes moving_left {
  0% {
    left: 100%;
    transform: translateX(0%);
  }
  100% {
    left: 0%;
    transform: translateX(-100%);
  }
}

/*# sourceMappingURL=csv.css.map */
