/* -----------------------------------------------
 * アクサ・住友生命タイアップページ
 * タイアップページ専用CSS
 * .lpAsunoegaoUnit
----------------------------------------------- */



/* -----------------------------------------------

* 全体共通

----------------------------------------------- */

/* ベースレイアウトなど
----------------------------------------------- */
*,
*:before,
*:after {
  box-sizing: border-box;
}
#lpAsunoegao {
  font-family: "Montserrat", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
  font-weight: 500;
}
.mainContents {
  width: 100%;
  min-width: 1280px;
  padding: 0;
}
.lpAsunoegaoUnit .contentUnit {
  text-align: center;

}
.lpAsunoegaoUnit .contentUnit .inner {
  width: 940px;
  padding: 80px 0;
  margin: 0 auto;
}
.lpAsunoegaoUnit .contentUnit .telInner {
  width: 940px;
  margin: 0 auto;
}
.lpAsunoegaoUnit a:hover {
  opacity: .7;
}

/* ベーステキスト
----------------------------------------------- */
.lpAsunoegaoUnit {
  font-size: 17px;
  line-height: 1.7;
  letter-spacing: .05em;
}
.lpAsunoegaoUnit .heading {
  font-weight: bold;
}
.lpAsunoegaoUnit .emphasis {
  font-weight: bold;
}
.lpAsunoegaoUnit .subTxt,
.lpAsunoegaoUnit .noteTxt {
  display: block;
  margin-top: 5px;
  font-size: 15px;
}
.lpAsunoegaoUnit .subTxt {
  color: #666;
}
.lpAsunoegaoUnit .noteTxt {
  color: #7c919b;
}
.lpAsunoegaoUnit .subTxt-qol {
  color: #ed6103;
}

/* 共通パーツ
----------------------------------------------- */

/* 吹き出しパーツ */
.lpAsunoegaoUnit .balloon {
  position: relative;
  display: inline-block;
  padding: .35em 1em;
  border-radius: 100px;
  background-color: #ed6103;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
}
.lpAsunoegaoUnit .balloon:before {
  position: absolute;
  content: "";
  top: 97%;
  left: 50%;
  margin-left: -8px;
}
/* 吹き出し IE対策用ハック （游ゴシックによる上下ずれ）*/
_:-ms-input-placeholder, :root .lpAsunoegaoUnit .balloon {
  padding: .7em 1em .35em;
}
.lpAsunoegaoUnit .balloonBasic:before {
  border: 8px solid transparent;
  border-top: 8px solid #ed6103;
}
.lpAsunoegaoUnit .balloonWhite {
  background-color: #fff;
  border: 1px solid #ed6103;
  color: #ed6103;
}
.lpAsunoegaoUnit .balloonWhite:before {
  border: 8px solid transparent;
  border-top: 8px solid #fff;
  z-index: 2;
}
.lpAsunoegaoUnit .balloonWhite:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -8px;
  border: 8px solid transparent;
  border-top: 8px solid #ed6103;
  z-index: 1;
}

/* 電話パーツ */
.lpAsunoegaoUnit .telField {
  margin-top: 60px;
  background: #fff;
  border: 1px solid #ed6103;
  border-radius: 5px;
}
.lpAsunoegaoUnit .telField .telCatch {
  padding: 5px 0;
  background: #ed6103;
  border-radius: 4px 4px 0 0;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
/* コールセンター見出し IE対策用ハック （游ゴシックによる上下ずれ） */
_:-ms-input-placeholder, :root .lpAsunoegaoUnit .telField .telCatch {
  padding-top: .6em;
  margin-top: -.05em;
}
.lpAsunoegaoUnit .callCenter {
  margin: 40px auto;
  text-align: center;
}
.lpAsunoegaoUnit .callCenter .iconFree {
  position: relative;
  display: inline-block;
  width: 94px;
  height: 94px;
  margin-right: 25px;
  background: #d9f0e2;
  border-radius: 5px;
}
.lpAsunoegaoUnit .callCenter .iconFree .iconTxt {
  position: absolute;
  top: 5px;
  right: 10px;
  color: #0a8b3b;
  font-size: 20px;
  font-weight: bold;
}
.lpAsunoegaoUnit .callCenter .iconFree .iconPhone {
  position: absolute;
  bottom: 10px;
  left: 10px;
  width: 54px;
  height: 54px;
}
.lpAsunoegaoUnit .callCenter .telTxt {
  display: inline-block;
  text-align: left;
}
.lpAsunoegaoUnit .callCenter .telTxt span {
  display: block;
  line-height: 1;
}
.lpAsunoegaoUnit .callCenter .emphasis,
.lpAsunoegaoUnit .callCenter .telNumber {
  letter-spacing: .1em;
}
.lpAsunoegaoUnit .callCenter .emphasis {
  font-size: 20px;
  color: #ed6103;
}
.lpAsunoegaoUnit .callCenter .telNumber {
  color: #526066;
  font-size: 60px;
  font-weight: bold;
}
/*ヘッダー固定電話番号*/
.lpAsunoegaoUnit.topFix {
  position: fixed;
  top : 0;
  right: 0;
  z-index: 100;
  background: #fff;
  padding: 0;
}
.lpAsunoegaoUnit.topFix .callCenter .emphasis {
  font-size: 14px;
}
.lpAsunoegaoUnit.topFix .callCenter .telNumber {
  font-size: 30px;
}
.lpAsunoegaoUnit.topFix .noteTxt {
  font-size: 12px;
}
.lpAsunoegaoUnit.topFix .callCenter {
  margin: 10px auto;
}
.lpAsunoegaoUnit.topFix .callCenter .iconFree {
  width: 60px;
  height: 60px;
  margin-right: 10px;
}
.lpAsunoegaoUnit.topFix .callCenter .iconFree .iconPhone {
  width: 30px;
  height: 30px;
}
.lpAsunoegaoUnit.topFix .callCenter .iconFree .iconTxt {
  font-size: 12px;
  right: 10px;
}

.lpAsunoegaoUnit .callCenter .telTxt span {
    display: block;
    line-height: 1;
}
.lpAsunoegaoUnit .noteTxt {
    color: #7c919b;
}
.topFixTitle {
  background: #ed6103;
  color: #fff;
  padding: 5px 0;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  padding: 0 2rem;
}

/* emphasis 内のul */
.emphasis_ul_inline{
  margin-top: 0 !important;
  margin-bottom: 0.8rem !important;
}

.emphasis_ul_inline li::marker {
  content: '・ ';
  font-size: 1.2em;
}

/*優待アイコン*/
.lpAsunoegaoUnit .serviceCat .present {
  position: relative;
  padding-left: 1.6em;
  color: #ed6103;
  font-weight: bold;
  letter-spacing: 0;
}
.lpAsunoegaoUnit .serviceCat .present:before {
  position: absolute;
  content: "";
  width: 20px;
  height: 25px;
  left: 0;
  background: url(../../svg/iconPresent.svg) 0 0 no-repeat;
  background-size: 20px;
}


/* -----------------------------------------------

* コンテンツ

----------------------------------------------- */

/* KV
----------------------------------------------- */
.lpAsunoegaoUnit .secKv {
  background: #fff;
  background: linear-gradient(to right, #fcfdff 0%, #fcfdff 50%, #ecf4f6 51%, #ecf4f6 100%);
  border-top: 8px solid #ed6103;
}
.lpAsunoegaoUnit .secKv .inner {
  position: relative;
  width: 1280px;
  margin: 0 auto;
  padding: 0 170px;
  background: url(../pc/images/kvBack.jpg) left 0 no-repeat;
  background-size: 1390px;
}
.lpAsunoegaoUnit .secKv .logo {
  margin-top: 16px;
}
.lpAsunoegaoUnit.sumitomolife .secKv .logo {
  position: absolute;
  top: 0;
  left: 150px;
  margin-top: 0;
}
.lpAsunoegaoUnit .secKv .kv {
  float: right;
  margin: 108px 20px 31px 0;
  text-align: center;
}
.lpAsunoegaoUnit .secKv .kvCatch {
  margin-top: 30px;
}
.lpAsunoegaoUnit .secKv .serviceLink {
  display: flex;
  justify-content: space-between;
  margin-top: 15px;
}
.lpAsunoegaoUnit .secKv .serviceLink img {
  width: 101px;
  height: auto;
}

/* 導入
----------------------------------------------- */
.lpAsunoegaoUnit .secAbout {
  color: #526066;
}
.lpAsunoegaoUnit .aboutService {
  margin-top: 25px;
  background: url(../../svg/aboutService.svg) right 0 no-repeat;
  text-align: left;
}
.lpAsunoegaoUnit .aboutService .heading {
  color: #ed6103;
  font-size: 25px;
  line-height: 1.4;
  letter-spacing: .11em;
}
.lpAsunoegaoUnit .aboutService .heading .infirm {
  display: block;
  margin-top: .5rem;
  font-size: 20px;
}
.lpAsunoegaoUnit .aboutService .text {
  margin-top: 20px;
  width: 607px;
}
.lpAsunoegaoUnit .aboutMeritUnit {
  margin-top: 60px;
}
.lpAsunoegaoUnit .aboutMerit .merit {
  display: flex;
  justify-content: space-between;
}
.lpAsunoegaoUnit .aboutMerit li {
  width: 455px;
  margin-top: 40px;
  padding: 30px 20px;
  background: #f5f8fa;
  border-radius: 5px;
  font-weight: bold;
}
.lp .lpAsunoegaoUnit .aboutMerit li {
  margin-left: auto;
  margin-right: auto;
}
.lpAsunoegaoUnit .aboutMerit li .tag {
  position: relative;
  padding: .35em 1em;
  background: #7c919b;
  border-radius: 100px;
  color: #fff;
}
.lpAsunoegaoUnit .aboutMerit li .tag:after {
  position: absolute;
  content: "";
  display: block;
  top: 65px;
  left: 50%;
}
.lpAsunoegaoUnit .aboutMerit li.family .tag:after {
  width: 272px;
  height: 60px;
  margin-left: -136px;
  background: url(../../svg/merit01.svg) 0 0 no-repeat;
}
.lpAsunoegaoUnit .aboutMerit li.present .tag:after {
  width: 180px;
  height: 77px;
  margin-left: -90px;
  background: url(../../svg/merit02.svg) 0 0 no-repeat;
}
.lpAsunoegaoUnit .aboutMerit li .text {
  margin-top: 130px;
  font-size: 20px;
  text-align: left;
}
.lpAsunoegaoUnit .aboutMerit li .emphasis {
  color: #ed6103;
}
.lpAsunoegaoUnit .telField .callNotes {
  margin: 0 20px 30px;
  border-top: 4px solid #f7f7f7;
  color: #333;
  font-size: 15px;
  line-height: 1.8;
  text-align: left;
}
.lpAsunoegaoUnit .telField .callNotes dt {
  margin-top: 20px;
  color: #ed6103;
  font-weight: bold;
}

/* サービス紹介リンク
----------------------------------------------- */
.lpAsunoegaoUnit .secServiceNav {
  background: #f5f8fa;
  color: #526066;
}
.lpAsunoegaoUnit .secServiceNav .inner {
  padding: 100px 0 40px;
}
.lpAsunoegaoUnit .secServiceNav .heading {
  font-size: 30px;
  letter-spacing: .08em;
}
.lpAsunoegaoUnit .secServiceNav .serviceLink {
  display: flex;
  justify-content: space-between;
  margin-top: 45px;
}
.lpAsunoegaoUnit .secServiceNav .serviceLink li {
  position: relative;
  width: 225px;
  background: #fff;
  border-top: 6px solid #ed6103;
  border-radius: 5px;
  box-shadow: 0 1px 2px 0 #bbb;
}
.lpAsunoegaoUnit .secServiceNav .serviceLink li:after {
  position: absolute;
  content: "";
  left: 50%;
  bottom: 1rem;
  width: .7rem;
  height: .7rem;
  margin-left: -.35rem;
  border-left: 3px solid #ed6103;
  border-bottom: 3px solid #ed6103;
  transform: rotate(-45deg);
}
.lpAsunoegaoUnit .secServiceNav .serviceLink a {
  display: block;
  padding: 15px 0 28px;
  color: #526066;
  text-decoration: none;
}
.lpAsunoegaoUnit .secServiceNav .serviceLink .trouble {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
}
.lpAsunoegaoUnit .secServiceNav .serviceLink .answer {
  margin-top: 5px;
  color: #ed6103;
  letter-spacing: 0;
}
.lpAsunoegaoUnit .secServiceNav .serviceLink .icon {
  margin-top: 8px;
}

/* サービス紹介_共通
----------------------------------------------- */

/* 見出し */
.lpAsunoegaoUnit .serviceCat .heading {
  color: #ed6103;
  line-height: 1.4;
}
.lpAsunoegaoUnit .serviceCat .heading .icon {
  display: inline-block;
  width: 60px;
  height: 60px;
  margin-right: 15px;
  vertical-align: top;
}
.lpAsunoegaoUnit .serviceCat .heading .categoryTtl {
  display: inline-block;
  text-align: left;
}
.lpAsunoegaoUnit .serviceCat .heading .categoryTtl.categoryTtlContact {
  position: relative;
  top : 10px;
}
_:-ms-input-placeholder, :root .lpAsunoegaoUnit .serviceCat .heading .categoryTtl.categoryTtlContact {
  top : 15px;
}
.lpAsunoegaoUnit .serviceCat .heading .emphasis {
  font-size: 30px;
  display: block;
}
.lpAsunoegaoUnit .serviceCat .text {
  width: 645px;
  margin: 30px auto 0;
}
.lpAsunoegaoUnit .serviceCat .newLine {
  display: block;
}

/* ベースレイアウト */
.lpAsunoegaoUnit .serviceCat {
  color: #333;
  scroll-margin-top: 80px;
}
.lpAsunoegaoUnit .serviceCat .serviceListWrap {
  margin-top: 45px;
  text-align: center;
}
.lpAsunoegaoUnit .serviceCat .serviceListWrap + .serviceListWrap {
  margin-top: 80px;
}
.lpAsunoegaoUnit .serviceCat .serviceBox {
  margin-top: 30px;
  background: #fff;
  border-radius: 5px;
  text-align: left;
  padding-bottom: 20px;
}
.lpAsunoegaoUnit .serviceCat .serviceDetail .serviceName {
  font-size: 22px;
  font-weight: bold;
}
.lpAsunoegaoUnit .serviceCat .serviceDetail .notationKana {
  font-size: 17px;
  font-weight: 500;
}
.lpAsunoegaoUnit .serviceCat .serviceDetail dd {
  margin-top: 8px;
}
/* 1ブロックの時 */
.lpAsunoegaoUnit .serviceCat .singleBox {
  display: flex;
  align-items: flex-start;
  padding: 30px;
}
.lpAsunoegaoUnit .serviceCat .singleBox .serviceDetail {
  display: inline-block;
}
.lpAsunoegaoUnit .singleBox .imgBox {
  margin-right: 22px;
}
/* 複数ブロックの時 */
.lpAsunoegaoUnit .serviceList {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: left;
}
.lpAsunoegaoUnit .serviceList .serviceBox {
  width: 450px;
}

.lpAsunoegaoUnit .serviceList img {
  width: 100%;
  height: auto;
  border-radius: 4px 4px 0 0;
  vertical-align: bottom;
}
.lpAsunoegaoUnit .serviceList .serviceBox.widthLong img {
  width: 20%;
  margin: 0 auto;
  display: block;
  margin-top: 2rem;
}
.lpAsunoegaoUnit .serviceList .serviceDetail {
  margin: 16px 20px 30px;
}
.lpAsunoegaoUnit .axaSupport {
  display: flex;
  justify-content: space-between;
  width: 80%;
  margin: 2rem auto 0;
}
.lpAsunoegaoUnit .axaSupportItem {
  background: #f4f4f4;
  width: 48%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1rem 0;
  font-weight: bold;
}
.lpAsunoegaoUnit .axaSupportItemLine {
  display: flex;
  justify-content: center;
}
.lpAsunoegaoUnit .axaSupportItemLine img {
  width: 100px;
  height: auto;
  margin-left: 1rem;
}
.lpAsunoegaoUnit .axaSupportItem.axaSupportItemImage {
  display: flex;
  justify-content: space-between;
  padding: 1rem 2rem;
  box-sizing: border-box;
}
.lpAsunoegaoUnit .axaSupportItem.axaSupportItemImage img {
  width: 30%;
  height: auto;
}

/* 背景色_白（奇数） */
.lpAsunoegaoUnit .serviceCat:nth-child(even) .serviceList li,
.lpAsunoegaoUnit .serviceCat:nth-child(even) .serviceBox {
  border: 1px solid #e6e6e6;
}
.lpAsunoegaoUnit .serviceCat:nth-child(even) .serviceList li {
  width: 452px;
}
/* 背景色_ブルーグレー（偶数） */
.lpAsunoegaoUnit .serviceCat:nth-child(odd) {
  background: #f5f8fa;
}

.lpAsunoegaoUnit .serviceCat.serviceContact {
  background: #fff;
}

.lpAsunoegaoUnit .serviceList .serviceBox.widthLong {
  width: 100% !important;
}

/* サービス紹介_ユニーク
----------------------------------------------- */

/* 笑美面 */
.lpAsunoegaoUnit .emimen .imgBox {
  width: 300px;
  border-radius: 5px;
}
/* 笑美面_優待施設 */
.lpAsunoegaoUnit .specialFacility {
  text-align: center;
}
.lpAsunoegaoUnit .specialFacility .text {
  margin-top: 10px;
  color: #526066;
}
.lpAsunoegaoUnit .specialFacility .facilityList {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 30px 30px 0;
}
.lpAsunoegaoUnit .specialFacility .facilityList li {
  width: 430px;
  margin-top: 15px;
  padding: 20px 15px;
  background: #f5f8fa;
  border-radius: 5px;
  text-align: left;
}
.lpAsunoegaoUnit .specialFacility .facilityList .logoBox {
  display: flex;
  justify-content: center;
  align-items: center;
  float: right;
  width: 150px;
  height: 75px;
  margin: 0 0 5px 5px;
  background: #fff;
}
.lpAsunoegaoUnit .specialFacility .facilityList .brandTxt,
.lpAsunoegaoUnit .specialFacility .facilityList .present {
  margin-top: 10px;
  font-size: 88%; /*15px*/
  letter-spacing: 0;
}
.lpAsunoegaoUnit .specialFacility .facilityList .emphasis {
  color: #526066;
  letter-spacing: 0;
}
.lpAsunoegaoUnit .specialFacility .facilityList .area {
  display: inline-block;
  vertical-align: top;
}
.lpAsunoegaoUnit .serviceCat .specialFacility .present:before {
  top: -2px;
}

/* LIFULL介護 */
.lpAsunoegaoUnit .lifullKaigo .imgBox {
  margin-right: 45px;
  width: 415px;
}
/* LIFULL介護_ボタン */
.lpAsunoegaoUnit .serviceCat .lifullKaigo .button {
  display: inline-block;
  margin-top: 30px;
  padding: .8em .5em .8em 2.5em;
  background: #65c78b;
  background: linear-gradient(to bottom, #e3faec 0%, #65c78b 100%);
  border: 1px solid #68bd88;
  border-radius: 100px;
  color: #055926;
  font-size: 20px;
  font-weight: bold;
  text-shadow: 1px 1px 1px #fff;
  text-decoration: none;
  line-height: 1;
  position: relative;
  line-height: 1.3;
  text-indent: .5rem;
  text-align: center;
}
.lpAsunoegaoUnit .serviceCat .lifullKaigo .button .btnTxsmall {
  font-size: 16px;
  text-align: center;
}
.lpAsunoegaoUnit .serviceCat .lifullKaigo .button:hover {
  background: #65c78b;
  opacity: 1;
}
/* LIFULL介護_ボタン IE対策用ハック （游ゴシックによる上下ずれ） */
_:-ms-input-placeholder, :root .lpAsunoegaoUnit .serviceCat .lifullKaigo .button {
  padding: 1em .5em .8em 2.5rem;
}
.lpAsunoegaoUnit .serviceCat .lifullKaigo .button .iconNextArrow {
  position: absolute;
  left: 1rem;
  top: 55%;
  transform: translateY(-55%);
  display: inline-block;
  margin: -5px 10px 0 0;
  width: 23px;
  height: 23px;
  background-color: #098b3b;
  border-radius: 12px;
  vertical-align: middle;
  text-align: center;
  text-indent: 0;
}
.lpAsunoegaoUnit .serviceCat .lifullKaigo .iconNextArrow img {
  vertical-align: middle;
  position: relative;
  top : -3px;
  left: 1px;
}

/* シニア総合サポートセンター */
.lpAsunoegaoUnit .seniorSsc .imgBox {
  width: 420px;
  margin: -10px 0 -10px -10px;
}

/* 注意事項
----------------------------------------------- */
.lpAsunoegaoUnit .noticeBox {
  background: #f5f8fa;
  color: #526066;
  text-align: left;
}
.lpAsunoegaoUnit .noticeBox .heading {
  font-size: 20px;
}
.lpAsunoegaoUnit .noticeTxt {
  margin-top: 45px;
}
.lpAsunoegaoUnit .noticeTxt dt {
  margin-top: 30px;
  font-weight: bold;
}
.lpAsunoegaoUnit .noticeTxt dd {
  margin-left: 25px;
}
.lpAsunoegaoUnit .noticeTxt .emphasis {
  margin-top: 20px;
}
.lpAsunoegaoUnit .noticeTxt ul {
  margin: 10px 0 0 20px;
  font-size: 15px;
  list-style: disc;
  line-height: 1.8;
}
.lpAsunoegaoUnit .noticeTxt .noticeTelTxt {
  margin: 10px 0;
}

.contactTable {
  width: 79%;
  margin: 2rem 0;
}

.contactTable th {
  font-weight: bold;
  padding: 1rem 0;
  width: 30%;
  color: #526066;
}

.contactTable th.vt {
  vertical-align: top;
}

.contactTable td {
  padding: 1rem 2rem;
  box-sizing: border-box;
  text-align: left;
}

.contactTable td input {
  width: 100%;
  padding: .5rem 1rem;
  box-sizing: border-box;
  border-radius: 4px;
  border: none;
  background: #f4f4f4;
  border: 2px solid #eee;
}

.contactTable td textarea {
  width: 100%;
  height: 300px;
  padding: .5rem 1rem;
  box-sizing: border-box;
  border-radius: 4px;
  border: none;
  background: #f4f4f4;
  border: 2px solid #eee;
  resize: none;
}

.contactText {
  text-align: right;
  margin: 2rem 0 0;
}

.contactMust {
  color: #d63014;
}

.contactError {
  color: #be0d0d;
  font-size: .9rem;
  display: none;
}

.contactTextThanks {
  margin: 2rem 0;
}

.contactSubmit input {
  background: #ed6103;
  padding: 1rem 0;
  width: 49%;
  color: #fff;
  display: block;
  color: #fff;
  border: none;
  font-size: 1.1rem;
  font-weight: bold;
  border-radius: 6px;
  border-bottom: 4px solid #c14e00; 
  position: relative;
  left: 255px;
}

.contactSubmit input:hover {
  opacity: .7;
  cursor: pointer;
}

.contactNav a {
  display: block;
  background: #ed6103;
  width: 70%;
  margin: 2rem auto 0;
  color: #fff;
  text-decoration: none;
  padding: 1rem 0;
  border-radius: 6px;
  font-weight: bold;
  border-bottom: 4px solid #c14e00;
  position: relative;
}

.contactNav a:after {
  content: "▼";
  color: #fff;
  font-size: .7rem;
  position: absolute;
  right: 2rem;
  top : 50%;
  transform: translateY(-50%);
}

.contactNav a:hover {
  opacity: .7;
}

/* フッター
----------------------------------------------- */
#lpAsunoegao .footer {
  padding: 12px 0;
  background: #ed6103;
  font-size: 10px;
  color: #ffd9bf;
  text-align: center;
}

/*clearfix*/
.lpAsunoegaoUnit .secKv .inner:after {
  content: "";
  display: block;
  clear: both;
}

.bottomNum {
  text-align: right;
  color: #777;
  font-size: .8rem;
  padding: 2rem 0 0;
}

/* 追加パーツ
----------------------------------------------- */

.c-buttonLong {
  display: block;
  margin: -2rem auto 3rem;
  padding: .8em .5em .8em 2.5em;
  background: #65c78b;
  background: linear-gradient(to bottom, #e3faec 0%, #65c78b 100%);
  border: 1px solid #68bd88;
  border-radius: 100px;
  color: #055926;
  font-size: 20px;
  font-weight: bold;
  text-shadow: 1px 1px 1px #fff;
  text-decoration: none;
  line-height: 1;
  position: relative;
  line-height: 1.3;
  text-indent: .5rem;
  text-align: center;
  width: 70%;
}

.c-buttonLong .iconNextArrow {
  position: absolute;
  left: 1rem;
  top: 55%;
  transform: translateY(-55%);
  display: inline-block;
  margin: -5px 10px 0 0;
  width: 23px;
  height: 23px;
  background-color: #098b3b;
  border-radius: 12px;
  vertical-align: middle;
  text-align: center;
  text-indent: 0;
}

.c-buttonLong .iconNextArrow img {
    vertical-align: middle;
    position: relative;
    top: -3px;
    left: 1px;
}

.c-buttonLong:hover {
  background: #65c78b;
  opacity: 1;
}


/* 211109 追加
----------------------------------------------- */

.fix_bottom {
  position: fixed;
  bottom: -30rem;
  left: 2rem;
  width: 300px;
  border: 2px solid #0b119d;
  border-radius: 4px;
  background: #fff;
  transition: all 3s 0s ease-in-out;
}

.fix_bottom.is-active {
  bottom: -4px;
}

.fix_bottom_title {
  font-size: 1rem;
  color: #fff;
  background: #0b119d;
  padding: 1rem;
  box-sizing: border-box;
  position: relative;
  cursor: pointer;
}

.fix_bottom_title::before {
  position: absolute;
  right: 15px;
  top : 18px;
  content: "▼";
  font-size: .7rem;
}

.fix_bottom_title.is-active::before {
  content: "▲";
}

.fix_bottom_inner {
  padding: .5rem 1rem;
  box-sizing: border-box;
}


.fix_bottom_item {
  color: #383838;
  padding: .5rem 0;
  box-sizing: border-box;
  line-height: 1.4;
  display: flex;
  justify-content: flex-start;
  font-size: .9rem;
}

.fix_bottom_item::before {
  content: "Q";
  color: #fff;
  background: #0b119d;
  padding: 1rem;
  box-sizing: border-box;
  display: inline-block;
  margin: 0 .5rem 0 0;
  height: 30px;
  border-radius: 4px;
  width: 30px;
  font-size: 1.3rem;
  text-align: center;
  line-height: 0;
  justify-content: center;
  display: flex;
  align-items: center;
}

.fix_bottom_nav {
  margin: 1rem 0;
}

.fix_bottom_nav a {
  background: #ed6103;
  display: block;
  width: 90%;
  margin: 0 0 0 auto;
  color: #fff;
  padding: .57rem 1rem;
  box-sizing: border-box;
  text-decoration: none;
  font-size: .9rem;
  border-bottom: 3px solid #c14e00;
  border-right: 3px solid #c14e00;
  border-radius: 4px;
}

.fix_bottom_nav a::after {
  content: "▼";
  font-size: .6rem;
  padding: 0 0 0 1rem;
  position: relative;
  box-sizing: border-box;
  top : -.1rem;
}

#pagetop {
  position: fixed;
  bottom: 3rem;
  right: 3rem;
  z-index: 100;
  display: none;
}

#pagetop a {
  display: block;
  width: 40px;
  height: 40px;
  position: relative;
  background: #e8bda0;
  padding: 1rem;
  border-radius: 10rem;
}

#pagetop a::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 7px 10px 7px;
  border-color: transparent transparent #fff transparent;
  position: absolute;
  top : 14px;
  left: 13px;
}


/* 未移植 */

.mv__slider_wrap {
  width: 900px;
  margin: 3rem auto 1rem;
}

.mv__slider {
  
  text-align: center;
}

.mv__slider div img {
  width: 100%;
  height: auto;
}

.mv__slider .slick-slide {
  -webkit-filter: opacity(40%);
  -moz-filter: opacity(40%);
  -o-filter: opacity(40%);
  -ms-filter: opacity(40%);
  filter: opacity(40%);
  transition: 0.2s linear;
}

.mv__slider .slick-slide.slick-center {
  -webkit-filter: opacity(100%);
  -moz-filter: opacity(100%);
  -o-filter: opacity(100%);
  -ms-filter: opacity(100%);
  filter: opacity(100%);
  transition: 0.2s linear;
}

.mv__slider div button {
  background: none;
  border: none;
  outline: none;
  display: none;
}

.mv__slider .slide-dots {
  margin: 0;
  padding: 0;
  text-align: center;
}

.mv__slider .slide-dots li {
  display: inline-block;
  margin: 0 10px;
}

.mv__slider .slide-dots li button {
  position: relative;
  text-indent: -9999px;
  background: none;
  height: 0;
  border: none;
  margin: 0 .3rem;
}

.mv__slider .slide-dots li button::before {
  background: #fff;
  border: 1px solid #ed6103;
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 10px;
  cursor: pointer;
  height: 13.5px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 24px;
  width: 13.5px;
}

.mv__slider .slide-dots li.slick-active button::before {
  background: #ed6103;
}

.mv__slider .slide-arrow {

  bottom: 0;
  height: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 0;
  cursor: pointer;
}
.mv__slider .prev-arrow {
  left: 165px;
  background: #ffffffaa;
  z-index: 100;
  padding: 1rem;
  box-sizing: border-box;
  border-radius: 10rem;
}
.mv__slider .prev-arrow::before {
  content: "";
  width: 14px;
  height: 14px;
  border-top: 3px solid #ed6103;
  border-right: 3px solid #ed6103;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
  display: block;
  line-height: 0;
  position: absolute;
  top : 9px;
  left: 11px;
}

.mv__slider .next-arrow {
  
  right: 165px;
  background: #ffffffaa;
  z-index: 100;
  padding: 1rem;
  box-sizing: border-box;
  border-radius: 10rem;
}
.mv__slider .next-arrow:before {
  content: "";
  width: 14px;
  height: 14px;
  border-top: 3px solid #ed6103;
  border-right: 3px solid #ed6103;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top : 9px;
  left: 7px;
  display: block;
  line-height: 0;
}

.mv__slider button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
}

/* モーダルここから */
.button_swim{
    display: inline-block;
    margin-top: 30px;
    padding: .8em .5em .8em 1rem;
    background: #65c78b;
    background: linear-gradient(to bottom, #e3faec 0%, #65c78b 100%);
    border: 1px solid #68bd88;
    border-radius: 100px;
    color: #055926;
    font-size: 20px;
    font-weight: bold;
    text-shadow: 1px 1px 1px #fff;
    text-decoration: none;
    line-height: 1;
    position: relative;
    line-height: 1.3;
    text-indent: .5rem;
    text-align: center;
    width: 100%;
    
}
.button_swim:hover {
    background: #65c78b;
    opacity: 1;
}
.button_swim a{
    color:#098b3b;
    text-decoration: none;
}
.button_swim span.small{
  font-size: 16px;
}
.button_swim .iconNextArrow {
    position: absolute;
    left: 1rem;
    top: 55%;
    transform: translateY(-55%);
    display: inline-block;
    margin: -5px 10px 0 0;
    width: 23px;
    height: 23px;
    background-color: #098b3b;
    border-radius: 12px;
    vertical-align: middle;
    text-align: center;
    text-indent: 0;
}
.button_swim .iconNextArrow img {
    vertical-align: middle;
    position: relative;
    top: -3px;
    left: 1px;
    width: 12px;
    height: 12px;
}
.modal_attention {
  border: 1px solid #333;
  padding: 10px;
  box-sizing: border-box;
  margin-top: 10px;
  font-size: 16px;
}
.modal_attention--title {
  text-align: center;
}
.modal_attention--text {
  padding-left: 18px;
  text-indent: -18px;
}
.modal {
  position: fixed;
  top : 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  background: #fff;
  border: 2px solid #333;
  width: 95%;
  max-width: 400px;
  padding: 20px 0;
  text-align: center;
  z-index: 9999;
  display: none;
}
.modal.is-active {
  display: block;
}
.modal_title {
  margin-bottom: 20px;
}
.modal_btn {
  display: flex;
  justify-content: center;
}
.modal_btn_close {
  background: #ed6103;
  border-radius: 4px;
  color: #fff;
  padding: 4px;
  display: inline-block;
  margin: 0 20px;
  padding: 5px 30px;
  position: relative;
  cursor: pointer;
}
.modal_btn_close::after{
    position: absolute;
    right: 10px;
    top : 50%;
    transform: translateY(-50%) ;
    content: "×";
    font-size: 30px;
}
.modal_btn_close:hover {
  opacity: .7;
}
.modal_btn_link {
  background: #ed6103;
  border-radius: 4px;
  color: #fff;
  padding: 4px;
  display: inline-block;
  margin: 0 20px;
  padding: 5px 40px;
  text-decoration: none;
  position: relative;
}
.modal_btn_link::after{
  position: absolute;
  right: 10px;
  top : 50%;
  transform: translateY(-50%) ;
  content: "→";
  font-size: 20px;
  font-weight: bold;
}
.modal_close {
  position: absolute;
  top : 20px;
  right: 10px;
}
.modal_close a {
  text-decoration: none;
  font-size: 30px;
  position: relative;
  display: block;
  width: 20px;
  height: 20px;
}
.modal_close a::before, .modal_close a::after {
  content: "";
  position: absolute;
  width: 2px;
  height: 20px;
  background: #333;
}
.modal_close a::before {
  transform: translate(-50%,-50%) rotate(45deg);
}
.modal_close a::after {
  transform: translate(-50%,-50%) rotate(-45deg);
}
.btn_modal {
  font-weight: bold;
}
.link_button .iconNextArrow img {
  width: 8px;
}
.lpAsunoegaoUnit .link_button .button {
  display: inline-block;
  margin-top: 10px;
  margin-bottom: 10px;
  padding: .8em .5em .8em 2.5em;
  background: #65c78b;
  background: linear-gradient(to bottom, #e3faec 0%, #65c78b 100%);
  border: 1px solid #68bd88;
  border-radius: 100px;
  color: #055926;
  font-size: 20px;
  font-weight: bold;
  text-shadow: 1px 1px 1px #fff;
  text-decoration: none;
  line-height: 1;
  position: relative;
  line-height: 1.3;
  text-indent: .5rem;
  text-align: center;
  width: 100%;
}
.lpAsunoegaoUnit .link_button .button .btnTxsmall {
  font-size: 16px;
  text-align: center;
}
.lpAsunoegaoUnit .link_button .button:hover {
  background: #65c78b;
  opacity: 1;
}
/* ボタン IE対策用ハック （游ゴシックによる上下ずれ） */
_:-ms-input-placeholder, :root .lpAsunoegaoUnit .link_button .button {
  padding: 1em .5em .8em 2.5rem;
}
.lpAsunoegaoUnit .link_button .button .iconNextArrow {
  position: absolute;
  left: 1rem;
  top: 55%;
  transform: translateY(-55%);
  display: inline-block;
  margin: -5px 10px 0 0;
  width: 23px;
  height: 23px;
  background-color: #098b3b;
  border-radius: 12px;
  vertical-align: middle;
  text-align: center;
  text-indent: 0;
}
.lpAsunoegaoUnit .link_button .iconNextArrow img {
  vertical-align: middle;
  position: relative;
  top : -3px;
  left: 1px;
}
/* モーダルここまで */

/* 202403 */
.noticeService{
    margin: 12px 0 0;
    font-size: 88%;
    color: #777777;
    line-height: 1.35;
}

/* 20240517 */
.serviceListArrow {
  position: relative;
  top : -20px;
  margin-bottom: -40px;
}
.serviceListInner {
  padding: 30px;
}
.serviceDetail {
  margin-bottom: 40px;
}
.serviceDetailSet {
   background: #f5f8fa;
   padding: 20px;
   box-sizing: border-box;
   margin-bottom: 90px;
}
.serviceDetailSetLast {
  margin-bottom: 0;
}
.serviceDetailSetWhite {
  background: #fff;
  margin-bottom: 50px;
}
.serviceDetailSetTitle {
    color: #ed6103;
    font-weight: bold;
    margin-bottom: 20px;
}
.serviceDetailSetTitle span {
  font-size: 21px;
}
.serviceDetailSetWrap {
  display: flex;
  gap : 50px;
}
.serviceDetailSetImage {
  max-width: 270px;
}
.serviceDetailSetImage2 {
  max-width: 480px;
  margin: 0;
  padding: 0;
  width: 100% !important;
  display: block;
}
.serviceDetailSetImage2 figure {
  margin: 0;
}
.serviceDetailSetImage img,
.serviceDetailSetImage2 img {
  width: 100% !important;
}
.serviceDetailSetBody a {
  margin: 0 auto;
}
.serviceDetailSetBtn {
  text-align: center;
}
.serviceDetailDate {
  font-family: 'メイリオ', 'Meiryo' ;
  font-style: italic;
  color: #ff0000;
  font-size: 15px;
  font-weight: bold;
  border-bottom: 3px solid #ff0000;
  display: inline-block;
  position: relative;
  top : -20px;
  left : -50px;
  padding: 0 0 0 30px;
}
.serviceDetailSetText span {
  color: #ed6103;
}
.serviceDetailCall {
  background: #fff;
  max-width: 650px;
  margin: 0 auto;
  padding: 10px 0;
  border: 1px solid #f0f0f0;
}
.serviceDetailBottom {
  background: #fff1d6;
  padding: 30px;
}
.serviceDetailBottom figure {
  margin: 0;
  padding: 0;
  max-width: 260px;
}
.serviceDetailBottom figure img {
  width: 100% !important;
}
.serviceDetailBottomWrap {
  gap : 40px;
  display: flex;
}
.serviceDetailBottomDetail {
  flex : 1;
}
.serviceDetailBottomTitle {
  position: relative;
    padding-left: 1.6em;
    color: #ed6103;
    font-weight: bold;
    letter-spacing: 0;
    margin-bottom: 5px;
    font-size: 20px;
    font-weight: bold;
}
.serviceDetailBottomTitle::before{
    position: absolute;
    content: "";
    width: 20px;
    height: 25px;
    left: 0;
    background: url(../../images/iconPresent2.png) 0 0 no-repeat;
    background-size: 20px;
}
.serviceDetailBottomText {
  margin-bottom: 5px;
  
}
.serviceDetailBottomText.bold {
  font-weight: bold;
}
.serviceDetailBottomText.noteTxt {
  text-indent: -14px;
  padding-left: 14px;
}
.serviceDetailSetBody {
  flex : 1;
}
.serviceBanner {
  background: #fff1d6;
  width:  460px;
  padding: 10px 20px 0;
}
.serviceBannerHead {
  max-width: 440px;
  position: relative;
  top : -20px;
  margin: 0 5px -10px;
}
.serviceBannerHead img {
  width: 100%;
}
.serviceBannerLink {
  max-width: 400px;
  height: 78px;
  display: block;
  margin: 0 10px 10px;
}
.serviceBannerLink:hover {
  content: url('../../images/img_banner_button_o.png');
}
.serviceBannerLink img {
  width: 100%;
}
.serviceBannerLink:hover {
  opacity: 1 !important;
}
.serviceBannerLink:hover img {
  display: none;
}

/*ガイドブック－リンク*/

.serviceBanner_book_p {
  width: 400px;
  text-align: center;
  background: #fff1d6;
}
.serviceBanner_book_p {
  max-width: 400px;
  height: 80px;
  display: block;
  margin: 1rem 10px 10px;
  margin-left: 30px;
}

.guidebook_link{
  color: #ed6103;
}
.serviceBanner_book_Link:hover {
  content: url('../../images/guidebook_orange_btn_hv_03.png');
  max-width: 400px;
}
.serviceBanner_book_Link img {
  width: 100%;
}
.serviceBanner_book_Link:hover {
  opacity: 1 !important;
}
.serviceBanner_book_Link:hover img {
  display: none;
}

/*ガイドブック下の文字リンク*/
.guidebook_mail_text_link {
  text-align: right;
  margin: 1rem 11.7rem 0 0;
}
.guidebook_mail_text_link a {
  color: #2789FF !important;
  text-decoration: none;
}
.guidebook_mail_text_link span{
  padding: 0 0.2rem;
  font-size: 88% !important;
}

/* フォーム プルダウン  */
select.form_pulldown {
  appearance: none;
}
.form_pulldown{
  width: 100%;
  font-size: 100%;
  padding: 1rem;
  box-sizing: border-box;
  border-radius: 4px;
  border: none;
  background: #f4f4f4;
  border: 2px solid #eee;
  }
