@charset "UTF-8";

.ancCont {
  margin-top: -75px;
  padding-top: 105px;
}
.ancCont02 {
  margin-top: -75px;
  /* padding-top: 75px; */
}

.link {
  color: #005a96;
  display: inline-block;
}
.link:not(.external) {
  padding-left: 10px;
  background: url(../images/common/ARROW_04.png) 0 6px no-repeat;
}
.link.external {
  padding-right: 20px;
  background: url(../images/common/facilities/ICON_link.png) 100% 50% no-repeat;
}
.caution {
  color: #bf0000;
}
.text-link {
  color: #005a96;
}

/* .section2 */

.section2 .wrap {
  max-width: 900px;
  padding-bottom: 110px;
}
.section2 .wrap2 {
  max-width: 900px;
  padding: 110px 0 90px;
}
.section2 .reserve_wrap {
  padding: 35px 0 10px;
}
.section2-ttl {
  font-size: 22px;
  font-weight: 500;
  line-height: 1.5;
  padding-bottom: 15px;
  border-bottom: #000 solid 2px;
  margin-bottom: 45px;
  letter-spacing: 1px;
}
.section2-ttl-mgB30 {
  font-size: 22px;
  font-weight: 500;
  line-height: 1.5;
  padding-bottom: 15px;
  border-bottom: #000 solid 2px;
  margin-bottom: 30px;
  letter-spacing: 1px;
}
.section2-ttl-mgB15 {
  padding-bottom: 8px;
  margin-bottom: 15px;
}


/* .section3 */

.section3 {
  margin-top: 0px;
}
.section3:nth-of-type(n+2) {
  padding-top: 20px;
}
.section3-ttl {
  font-size: 20px;
  font-weight: 500;
  line-height: 22px;
}
.section3-ttl-mg20 {
  font-size: 20px;
  font-weight: 500;
  line-height: 22px;
  margin-bottom: 20px;
}
.section3-ttl-mg28 {
  font-size: 20px;
  font-weight: 500;
  line-height: 22px;
  margin-bottom: 28px;
}
.section3-ttl-mg24 {
  font-size: 20px;
  font-weight: 500;
  line-height: 22px;
  margin-bottom: 24px;
}

/* .others-nav */
.others-nav {
  background: url(../images/common/BG_pagenav.png) repeat-y left top;
  background-size: 100% auto;
  padding: 40px 0;
}
.others-nav ul {
  margin: 0 auto;
  text-align: center;
}
.others-nav ul li {
  display: inline-block;
  vertical-align: top;
}
.others-nav ul li a {
  display: block;
  padding: 0 25px 22px;
  background: url(../images/charge/ARROW_01.png) no-repeat center bottom;
}

/* .ul */

.ul {
  margin: 10px 0 25px;
}
.ul:last-child {
  margin-bottom: 0;
}
.ul > li {
  margin-bottom: 14px;
  font-size: 15px;
  line-height: 1.5;
  padding-left: 15px;
  position: relative;
  padding-bottom: 10px;
}
.ul > li:before {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.ul.dot > li:before {
  content: '・';
  font-weight: bold;
}
.ul.dia > li:before {
  content: '◆';
}
.ul.circle > li:before {
  content: '●';
}
.ul.whitecircle > li:before {
  content: '〇';
}
.ul .ul {
  margin-bottom: 0;
}

/* .ol */

.ol {
  margin-bottom: 20px;
  counter-reset: my-counter;
}
.ol > li {
  font-size: 15px;
  line-height: 30px;
  padding-left: 24px;
  position: relative;
}
.ol > li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #003851;
  color: #fff;
  display: block;
  position: absolute;
  left: 0;
  top: 5px;
  width: 20px;
  line-height: 20px;
  border-radius: 50%;
  text-align: center;
}

/* .attention-box */

.attention-box {
  padding: 25px;
  border: #bcbcbc dashed 1px;
  margin-top: 40px;
}
.attention-box_mgB20 {
  padding: 25px;
  border: #bcbcbc dashed 1px;
  margin-top: 30px;
  margin-bottom: 20px;
}
.attention-box li {
  color: #5e5e5e;
  font-size: 14px;
  padding-left: 18px;
  position: relative;
  line-height: 1.5;
  margin-bottom: 10px;
}
.attention-box li:last-child {
  margin-bottom: 0;
}
.attention-box li:before {
  content: '※';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}

/* .table */

.table {
  width: 100%;
}
.table th,
.table td {
  text-align: center;
  vertical-align: middle;
  border: #fff solid 2px;
  font-size: 15px;
  line-height: 16px;
  padding: 18px 0;
}
.table th {
  background-color: #dce9ec;
  font-weight: 500;
}
.table th.th01 {
  width: 210px;
}
.table th.th02 {
  width: 392px;
}
.table th.th03 {
  width: 492px;
}
.table th.th04 {
  width: 710px;
}
.table th.th05 {
  width: 176px;
}
.table .f15 th {
  font-size: 15px;
}
.table .f13 th {
  font-size: 13px;
}
.table td {
  background-color: #f2f8fc;
}
.table td.td01 {
  width: 887px;
  padding-left: 24px;
  box-sizing: border-box;
  text-align: left;
}

/* .faq-list */

.faq-list {
  padding: 110px 0 70px;
}
.faq-list-mg90 {
  padding: 110px 0 90px;
}
.faq-list > li {
  padding: 27px 0;
  border-bottom: solid 1px #e1e1e1;
}
.faq-list > li:first-child {
  border-top: solid 1px #e1e1e1;
}
.faq-list > li .fl-text {
  position: relative;
  padding-left: 50px;
}
.faq-list > li .fl-text.q {
  font-size: 20px;
  font-weight: 500;
  line-height: 22px;
}
.faq-list > li .fl-text.a {
  margin-top: 20px;
  font-size: 15px;
  line-height: 27px;
}
.faq-list > li .fl-text:before {
  position: absolute;
  left: 0;
  font-family: 'Lato', sans-serif;
  font-size: 26px;
}
.faq-list > li .fl-text.q:before {
  content: 'Q';
}
.faq-list > li .fl-text.a:before {
  content: 'A';
}

/* .sitemap-list */

.sitemap-list {
  overflow: hidden;
  font-size: 15px;
  line-height: 27px;
}
.sitemap-list ul {
  float: left;
  width: 50%;
}

/* .form-list */

.form-list {
  overflow: hidden;
  font-size: 15px;
  line-height: 16.8px;
}
.form-list dt {
  clear: left;
  width: 240px;
}
.form-list dt .required {
  color: #bf0000;
}
.form-list dd {
  overflow: hidden;
}

/* .form-check */

.form-check li {
  display: inline-block;
}

/* .input-text */

.input-text {
  box-sizing: border-box;
  width: 100%;
  padding: 9px;
  border: solid 1px #bbb;
  font-size: 15px;
  line-height: 30px;
}
.input-text::placeholder {
  font-size: 14px;
}

/* 追記 ご予約方法 */

.online {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding-top: 25px;
  padding-bottom: 25px;
}

.online-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #003851;
  color: #fff;
  font-weight: 500;
  font-size: 20px;
  width: 340px;
  height: 54px;
  box-sizing: border-box;
}

.online-btn:hover {
  opacity: 0.8;
}

.online-btn.-white {
  background-color: #fff;
  color: #003851;
  font-weight: 500;
  border: 2px solid #003851;
  font-size: 18px;
  /* margin: 0 auto; */
}

.online-btn.-old {
  background-color: #2f6178;;
}

.online-item {
  width: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.online-item:nth-of-type(2) {
  border-left: 1px dotted #003851;
}

.online-heading {
  font-size: 18px;
  font-weight: 500;
  color: #bf0000;
  padding-bottom: 10px;
}
.online-heading>span {
  font-size: 22px;
}

.online-text {
  margin-top: 20px;
}

.online-text.-size-m {
  font-size: 17px;
}

.online-list {
  margin-bottom: 0;
}

.online-list li {
  padding-bottom: 0;
  margin-bottom: 5px;
}

.ul.circle > .online-list-small::before {
  content: none;
}
.ul.circle > .online-list-small {
  font-size: 13px;
}

.online-entry {
  margin-bottom: 10px;
  width: 100%;
}

.online-entry > .online-list {
  margin-top: 20px;
  margin-bottom: 10px;
  padding-right: 40px;
}

.reserve-tel>.big {
  font-size: 22px;
}

@media screen and (max-width: 767px) {
  .ancCont {
    margin-top: -66px;
    padding-top: 96px;
  }
  .ancCont02 {
    margin-top: -66px;
    padding-top: 66px;
  }

  .online {
    flex-direction: column;
    gap: 20px;
  }

  .online-item {
    width: 100%;
    border-top: 1px dotted #003851;
    padding-top: 15px;
  }

  .online-item:nth-of-type(2) {
    border-left: none;
    border-bottom: 1px dotted #003851;
    padding-bottom: 20px;
  }

  .online-btn,
  .online-btn.-white {
    width: 100%;
  }

  .online-heading {
    font-size: 14px;
  }
  .online-heading>span {
    font-size: 18px;
  }

  .online-text.-size-m {
    font-size: 15px;
  }

  .ul.circle > .online-list-small {
    font-size: 11px;
  }

  .online-entry > .online-list {
    padding-right: 0;
  }
}

.section2 div.link-vacancy {
  margin: 25px 0;
}
.link-vacancy span {
  margin-left: -3em;
}
.section2 div.link-vacancy a {
  background: url(../images/common/facilities/BG_btn.jpg) repeat-y left top;
  background-size: 100% auto;
}
.section2 .link-vacancy a {
  display: block;
  /* width: 290px; */
  width: 300px;
  text-align: center;
  font-size: 15px;
  line-height: 54px;
  color: #fff;
  position: relative;
}
.section2 div.link-vacancy a:after {
  content: '';
  display: block;
  width: 34px;
  height: 13px;
  position: absolute;
  right: 22px;
  top: 50%;
  margin-top: -6px;
  background: url(../images/common/facilities/ARROW_01.png) no-repeat center;
}
.section2 div.link-vacancy a.charge {
  background-image: -webkit-linear-gradient(
    left,
    rgba(223, 109, 32, 1) 0%,
    rgba(234, 167, 0, 1) 100%
  );
  background-image: linear-gradient(
    to right,
    rgba(223, 109, 32, 1) 0%,
    rgba(234, 167, 0, 1) 100%
  );
}
.section2 div.link-vacancy a.charge.-reserve {
  background: #003851;
  width: 340px;
}
@media screen and (max-width: 767px) {
  .section2 div.link-vacancy a.charge.-reserve {
    width: 100%;
  }
}

.link-vacancy-wrap {
  display: flex;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .link-vacancy-wrap {
    display: block;
  }
}

.section2 .attention li {
  font-size: 14px;
  padding-left: 18px;
  line-height: 22px;
  position: relative;
}
.section2 .attention li:before {
  content: '※';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.section2 .attention02 li {
  font-size: 15px;
  padding-left: 16px;
  line-height: 1.5;
  position: relative;
}
.section3 .attention li {
  font-size: 14px;
  padding-left: 18px;
  line-height: 22px;
  position: relative;
}
.section3 .attention li:before {
  content: '※';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.section3 .attention02 li {
  font-size: 15px;
  padding-left: 16px;
  line-height: 1.5;
  position: relative;
}
@media screen and (max-width: 767px) {
  .section2 .attention02 li {
    font-size: 13px;
  }
  .section3 .attention li {
    font-size: 13px;
  }
}
.section2 .attention02 li:before {
  content: '※';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  color: #bf0000;
}
.section2 .attention a {
  color: #0071bc;
  text-decoration: underline;
  padding-left: 15px;
}
.section2 .attention a:hover {
  opacity: 0.8;
}
/* 。/ここまで追記 ご予約方法 */

/* ========== ▽ 追加 ▽ ========== */

/*  Module Style
-------------------------*/

/* visialbe */
.u-hidden-sp {
  display: block!important;
}
.u-hidden-pc {
  display: none!important;
}
@media screen and (max-width: 767px) {
  .u-hidden-pc {
    display: block!important;
  }
  .u-hidden-sp {
    display: none!important;
  }
}

/* Text */
p {
  font-size: 15px;
  line-height: 1.8;
}
.txt-line {
  text-decoration: underline;
}
.lato {
  font-family: 'Lato', sans-serif;
}

/* Margin */
.mt0 {
  margin-top: 0px !important;
}
.mt5 {
  margin-top: 5px !important;
}
.mt10 {
  margin-top: 10px !important;
}
.mt15 {
  margin-top: 15px !important;
}
.mt20 {
  margin-top: 20px !important;
}
.mt25 {
  margin-top: 25px !important;
}
.mt30 {
  margin-top: 30px !important;
}

.mb0 {
  margin-bottom: 0px !important;
}
.mb5 {
  margin-bottom: 5px !important;
}
.mb10 {
  margin-bottom: 10px !important;
}
.mb15 {
  margin-bottom: 15px !important;
}
.mb20 {
  margin-bottom: 20px !important;
}
.mb25 {
  margin-bottom: 25px !important;
}
.mb30 {
  margin-bottom: 30px !important;
}

/* Table */
.table thead tr th {
  width: 338px;
}
.table thead tr th:first-of-type {
  width: 220px;
}

@media screen and (max-width: 767px) {
  /* Text */
  p {
    font-size: 13px;
    line-height: 1.6;
  }

  .ul > li {
    font-size: 13px;
  }

  /* Table */
  .table thead tr th {
    width: 28%;
  }
  .table thead tr th:first-of-type {
    width: 36%;
  }
  .table th,
  .table td {
    padding: 10px 4px;
    font-size: 12px;
  }

  /* attention-box */
  .attention-box {
    padding: 15px;
    margin-top: 20px;
  }

  /* Anc */
  .others-nav ul li a {
    padding: 0 5px 17px;
    font-size: 12px;
  }
}

/*  FAQ Style
-------------------------*/
.faqCont .infoArea_colTop_txt {
  font-weight: 500;
  font-size: 16px;
}
.faqCont .infoArea_colTop_tel {
  font-size: 14px;
  margin-top: 14px;
}
.faqCont .infoArea_colTop_tel > span {
  font-size: 26px;
}
.faqCont .infoArea_colBtm {
  margin-top: 43px;
}
.faqCont .infoArea_colBtm_heading {
  font-size: 20px;
  font-weight: 500;
}
.faqCont .infoArea_colBtm_txt {
  font-size: 15px;
  margin-top: 17px;
}
.faqCont .infoArea_colBtm_link {
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .faqCont .infoArea {
    margin-top: -44px;
  }
  .faqCont .infoArea_colTop_txt {
    font-size: 14px;
  }
  .faqCont .infoArea_colTop_tel {
    margin-top: 10px;
  }
  .faqCont .infoArea_colTop_tel > span {
    font-size: 20px;
  }
  .faqCont .infoArea_colBtm {
    margin-top: 20px;
  }
  .faqCont .infoArea_colBtm_txt {
    font-size: 13px;
    margin-top: 11px;
  }
}

/*  Reserve Style
-------------------------*/
.reserveCont #other {
  padding-top: 35px;
}
.reserveCont .irr {
  padding-top: 30px;
}
@media screen and (max-width: 767px) {
  .reserveCont .section2#other {
    margin-top: -63px;
  }
  .reserveCont .section3.ancCont {
    margin-top: 0;
  }
}

/*  Inquiry Style
-------------------------*/
.inquiryCont input[type='radio'] {
  margin: 0;
}
.inquiryCont textarea {
  height: 200px;
  margin-top: 14px;
}
button[type='submit'] {
  margin-top: 26px;
}
.inquiryCont .form-check li {
  vertical-align: middle;
}
.inquiryCont .form-check li:not(:first-of-type) {
  margin-left: 20px;
}
.inquiryCont .form-list {
  margin-top: 15px;
}
.inquiryCont .form-list dl {
  display: table;
  width: 100%;
  padding: 10px 0;
}
.inquiryCont .form-list dl > * {
  display: table-cell;
  vertical-align: middle;
}
.inquiryCont .form-list dl.radioCol {
  margin-top: 7px;
}
.inquiryCont .heading {
  margin-top: 25px;
}

@media screen and (max-width: 767px) {
  .inquiryCont textarea {
    height: 160px;
    margin-top: -2px;
  }
  .form-list {
    font-size: 14px;
    margin-top: 24px;
  }
  .form-list dt {
    padding: 0 0 9px;
  }
  .form-list dt:not(:first-of-type) {
    margin-top: 18px;
  }
  .form-list dd {
    /*padding-top: 5px;*/
  }
  .inquiryCont .form-check li:not(:first-of-type) {
    margin: 10px 0 0 0;
  }
  .section3.last .input-text {
    margin-top: 20px;
  }
  button[type='submit'] {
    margin-bottom: 41px;
  }
  .inquiryCont .form-list dl {
    display: inherit;
    padding: 8px 0;
  }
  .inquiryCont .form-list dl > * {
    display: inherit;
  }
  .inquiryCont .heading {
    margin-top: 15px;
    margin-bottom: 11px;
  }
  .inquiryCont .form-list {
    margin-top: 10px;
  }
}

/*  Terms Style
-------------------------*/
.termsCont .ttl01 {
  margin-top: 90px;
  margin-bottom: 80px;
}
.termsCont .section2-desc {
  text-align: center;
}
.section2-rule-list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 50px;
  margin-top: 70px;
}
.section2-rule-list__item {
  width: calc((100% - 100px) / 3);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.section2-rule-list__icon {
  width: 120px;
}
.section2-rule-list__heading {
  font-size: 18px;
  font-weight: 500;
  margin-top: 10px;
  margin-bottom: 10px;
}
.section2-rule-list__text {
  font-size: 14px;
}
#pet .section3:nth-of-type(n+2) {
  padding-top: 40px;
}

@media screen and (max-width: 767px) {
  .termsCont .ttl01 {
    margin-top: 35px;
    margin-bottom: 40px;
  }
  .termsCont .sec:first-of-type .wrap {
    padding-bottom: 0;
    margin-bottom: 37px;
  }
  .termsCont .sec:nth-of-type(n + 2) .wrap .section2-ttl {
    font-size: 20px;
    padding-bottom: 6px;
    margin-bottom: 21px;
  }
  .section3-ttl-mg20-sp {
    margin-bottom: 14px;
  }
  .section2-desc {
    text-align: left;
  }
  .section2-rule-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 20px;
    margin-top: 30px;
  }
  .section2-rule-list__item {
    width: calc((100% - 20px) / 2);
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .section2-rule-list__icon {
    width: 80px;
  }
  .section2-rule-list__heading {
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    margin-top: 10px;
    margin-bottom: 10px;
  }
  .section2-rule-list__text {
    font-size: 13px;
  }
  #pet .section3:nth-of-type(n+2) {
    padding-top: 30px;
  }
}

/*  Sitemap Style
-------------------------*/
.sitemapCont .section2:first-of-type {
  margin-top: 102px;
}
.sitemapCont .section2 .wrap {
  padding-bottom: 80px;
}
.sitemapCont .sitemap-list {
  line-height: 1.5;
}
.sitemapCont .sitemap-list li {
  margin: 10px 0;
}
.sitemapCont .sitemap-list li.ico_pdf a::after {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  vertical-align: -1px;
  margin-left: 1px;
  background: url(../images/common/ICON_pdf.png) no-repeat right center;
}
.sitemapCont .sitemap-list li .link {
  background: url(../images/common/ARROW_04.png) 0 7px no-repeat;
}
.sitemapCont .section2-ttl {
  margin-bottom: 15px;
  padding-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .sitemapCont .section2:first-of-type {
    margin-top: 48px;
  }
  .sitemapCont .section2 .wrap {
    padding-bottom: 35px;
  }
  .sitemapCont .sitemap-list li .link {
    background-position: 0 6px;
  }
  .sitemapCont .section2-ttl {
    font-size: 20px;
    padding-bottom: 7px;
  }
}

@media screen and (max-width: 767px) {
  .section2 .wrap {
    padding: 0 15px 55px;
  }
  .section2 .reserve_wrap {
    padding: 0 15px 15px;
  }

  /* mv */

  .mv-under {
    height: 191px;
  }
  .mv-under .page-ttl {
    padding-top: 100px;
  }
  .others-nav {
    background: url(../images/common/BG_pagenav.png) repeat-y left top;
    background-size: 100% auto;
    padding: 0;
  }
  .others-nav ul {
    margin: 0 auto;
    text-align: center;
    font-size: 0;
    display: flex;
    justify-content: center;
  }
  .others-nav ul li {
    display: inline-block;
    vertical-align: top;
    width: 33.333%;
    font-size: 14px;
    padding: 10px 0;
    border-left: 1px dashed #d7d7d7;
    box-sizing: border-box;
  }
  .others-nav ul li:first-child {
    border-left: none;
  }
  /* .others-nav ul li:nth-child(n+3) {border-top: 1px dashed #d7d7d7;}
.others-nav ul li:nth-child(even) {border-right: none} */
  /* .faq-list */

  .faq-list {
    padding-top: 55px;
  }
  .faq-list > li {
    padding: 17px 0;
  }
  .faq-list > li .fl-text {
    padding-left: 30px;
  }
  .faq-list > li .fl-text.q {
    font-size: 13px;
  }
  .faq-list > li .fl-text.a {
    margin-top: 5px;
    font-size: 13px;
    line-height: 22px;
  }
  .faq-list > li .fl-text:before {
    font-size: 20px;
  }

  /* .sitemap-list */

  .sitemap-list {
    font-size: 13px;
    line-height: 22px;
  }
  .sitemap-list ul {
    width: 100%;
  }

  /* .form-list */

  .form-list dt {
    float: none;
    clear: none;
    width: auto;
  }

  /* .form-check */

  .form-check li {
    display: block;
  }

  /* .input-text */

  .input-text {
    padding: 10px;
    font-size: 13px;
    line-height: 22px;
  }
  .section2-ttl-mgB30 {
    font-size: 20px;
    line-height: 1.5;
    padding-bottom: 6px;
    border-bottom: #000 solid 2px;
    margin-bottom: 21px;
    letter-spacing: 1px;
    margin-top: 40px;
  }

  /* p*/
  p.mg {
    margin: 30px 0 20px 0;
  }
}

/*  Inquiry お問合せ
-------------------------*/
/* ========== ▽ 追加 ▽ ========== */

.form-check label {
  margin-left: 24px;
}
.form-check .first label {
  margin-left: 0;
}
span.wpcf7-list-item {
  margin: 0;
}
.wp_btn01 {
  margin-top: 26px;
}
.wp_btn01 span {
  box-sizing: border-box;
  display: block;
  margin: 0 auto;
  width: 380px;
  padding: 2px;
  background: url(images/common/BG_btn_01.jpg) repeat-y left top;
  background: -webkit-gradient(
    linear,
    left center,
    right center,
    from(#0e508d),
    to(#2c7061)
  );
  background: -moz-linear-gradient(left, #0e508d, #2c7061);
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr='#FF0e508d', endColorstr='#FF2c7061');
}
.wp_btn01 input {
  display: block;
  width: 100%;
  font-size: 15px;
  line-height: 60px;
  text-align: center;
  color: #0d3c55;
  box-sizing: border-box;
  background: url(/images/common/ARROW_01.png) no-repeat 318px center #fff;
  border: none;
}
.wp_btn01 span :hover {
  cursor: pointer;
  opacity: 0.7;
}
.wp_btn01 input[type='submit']:hover {
  opacity: 1;
}
.wp_btn01 .wpcf7-spinner {
  display: none;
}
.wpcf7 .wpcf7-not-valid {
  background: #ffb6c1;
}
.wpcf7 span.wpcf7-not-valid-tip {
  font-size: 80%;
}
span.wpcf7-not-valid-tip {
  color: #bf0000;
  font-size: 1em;
  font-weight: normal;
  display: block;
}
.wpcf7 .wpcf7-response-output {
  padding: 8px 35px 8px 14px;
  margin-bottom: 20px;
}
.wpcf7 .wpcf7-validation-errors {
  color: #bf0000;
  background-color: #f2dede;
  border: 1px solid #eed3d7;
}
.wpcf7 .wpcf7-mail-sent-ok {
  color: #3a87ad;
  background-color: #d9edf7;
  border: 1px solid #bce8f1;
}
.screen-reader-response {
  display: none;
}
.ajax-loader {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .form-check {
    margin-top: 0;
  }
  .form-check label {
    margin-left: 0;
  }
  .form-check .first label {
    margin-left: 0;
  }
  span.wpcf7-list-item {
    display: block;
    margin: 0;
    padding: 0 0 9px;
  }
  .wp_btn01 {
    margin-bottom: 41px;
  }
  .wp_btn01 span {
    width: 100%;
    padding: 0;
    border-left: #0e508d solid 2px;
    border-right: #2c7061 solid 2px;
    box-sizing: border-box;
    position: relative;
    background: none;
  }
  .wp_btn01 input {
    font-size: 14px;
    line-height: 55px;
    background: url(/images/common/sp/ARROW_01.png) no-repeat transparent;
    background-size: 38px auto;
    background-position: right 15px center;
  }
  .wp_btn01 span:before,
  .wp_btn01 span:after {
    content: '';
    display: block;
    width: 100%;
    height: 2px;
    position: absolute;
    left: 0;
    background: -webkit-gradient(
      linear,
      left center,
      right center,
      from(#0e508d),
      to(#2c7061)
    );
    background: -moz-linear-gradient(left, #0e508d, #2c7061);
    filter: progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr='#FF0e508d', endColorstr='#FF2c7061');
  }
  .wp_btn01 span:before {
    top: 0;
  }
  .wp_btn01 span:after {
    bottom: 0;
  }
}
