@charset "utf-8";
/* CSS Document */


/* 削除 */
.pageHed .lg_sony > ul,
.pageHed .gNav,
.recommendScene,
.official_sns,
.following,
.recommendScene .security,
.nuroLogo,
#teltelentryCorner,
#official_sns {
  display: none;
}

/* クッキーポリシーのみ */
.footer__main__lnk li:not(.cookiepolicy) {
  display: none;
}

/* ガタつき＆フォント */
body {
  padding-top: 0 !important;
  overflow-x: hidden;
  font-family: ryo-gothic-plusn, sans-serif;
  font-weight: 500;
  letter-spacing: 0.3vw
}


/* フローティングバナー */

.telephone {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index:9999;
  background: #fff;
  padding: 3vw;
  box-shadow: 1vw 0 2vw #ccc;
}

.telephone a {
  background: #000;
  color: #fff;
  display: inline-block;
  width: 46vw;
  font-size: 4.5vw;
  font-weight: 700;
  text-align: center;
  padding: 5vw 0;
  border-radius: 12vw;
  letter-spacing: 0.3vw;
}

.telephone a:nth-of-type(1) {
  background: linear-gradient(90deg, rgb(240 43 73) 0%, rgb(240 43 73) 28%, rgb(255 129 107) 100%);
  box-shadow: 0 0.8vw 0 0 #781625;
}


.telephone a:nth-of-type(2) {
  background: linear-gradient(90deg, rgb(52 197 36) 0%, rgb(52 197 36) 28%, rgb(96 235 128) 100%);
  box-shadow: 0 0.8vw 0 0 #74a373;
}


/* -----------------------------
  キャンペーン用
----------------------------- */

/* kv部分 */

.summer_cpn {
  background-size: auto auto;
    background: rgb(202 217 250);
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 1px, rgba(245, 245, 245, 1) 3px, rgba(245, 245, 245, 1) 3px);
}

.summer_cpn .wrapper {
  padding: 6vw 0 6vw
}

.summer_cpn figure {
  text-align: center;
}

.summer_cpn figure img {
  width: 58vw;
}

.summer_cpn .txt {
  text-align: center;
  font-size: 3.6vw;
  font-weight: 700;
  line-height: 6vw;
}

.summer_cpn .txt span {
  font-weight: 700;
  color: #f64f57;
}

.summer_cpn .txt span b {
  font-family: century-gothic, Century Gothic, sans-serif;
  font-size: 6vw;
  letter-spacing: 0.2vw;
}


/* LP途中 */

.summer_cpn.cpn {
  margin: 0 0 10vw;
}

.summer_cpn.cpn .wrapper:nth-of-type(2) {
  padding: 6vw 0;
  border-top: solid 1px #b5cae7;
}

.summer_cpn .top {
  font-size: 4.2vw;
  padding: 0 8vw;
  margin: 0 0 3vw;
}

.summer_cpn .top span {
  font-size: 3.6vw;
  font-weight: 500;
  margin: 0 0 0 0.8vw;
}

.summer_cpn .top img {
  width: 34vw;
  vertical-align: -0.7vw;
  margin: 0 1.4vw 0 0;
}

.summer_cpn .btm {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 5vw;
}

.summer_cpn .btm .shoki {
  font-size: 3vw;
  font-weight: 500;
  text-align: center;
  line-height: 4vw;
  text-decoration: underline;
  text-decoration-thickness: 0.5em;
  text-decoration-color: #fcf29a;
  text-underline-offset: -0.2em;
  text-decoration-skip-ink: none;
  margin: 0 2vw 0 0;
}

.summer_cpn .btm .shoki span {
  font-weight: 700;
  font-size: 3.4vw
}

.summer_cpn .btm .month {
  font-size: 4.8vw;
  font-weight: 500;
}

.summer_cpn .btm .month span {
  font-family: century-gothic, sans-serif;
  font-weight: 700;
  font-size: 8vw;
  vertical-align: -0.5vw;
  margin: 0 0.5vw;
  letter-spacing: 0.1vw
}

.summer_cpn a {
  background: linear-gradient(90deg, rgb(240 43 73) 15%, rgb(255 129 107) 100%);
  color: #fff;
  width: 75vw;
  margin: 0 auto;
  text-align: center;
  font-size: 4.4vw;
  font-weight: 700;
  letter-spacing: 0.5vw;
  padding: 3.6vw 0 4.2vw;
  border-radius: 100vw;
  position: relative;
}

.ctbtn a:after {
  content: "";
  width: 4.4vw;
  height: 3vw;
  background: url("/assets/img/common/arr_hoso.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 6vw;
  transform: translateY(-50%);
}



/* ===========================================================
　CTボタン
=========================================================== */

.ctbtn a {
  background: rgb(247,122,91);
  background: linear-gradient(90deg, rgb(240 43 73) 0%, rgb(240 43 73) 28%, rgb(255 129 107) 100%);
  color: #fff;
  width: 80vw;
  margin: 8vw auto;
  text-align: center;
  font-size: 4.8vw;
  font-weight: 700;
  letter-spacing: 0.5vw;
  padding: 4vw;
  border-radius: 100vw;
  position: relative;
  box-shadow: 0 1.2vw 0 0 #9c4e4e;
}

.ctbtn a:after {
  content: "";
  width: 4.2vw;
  height: 2.7vw;
  background: url("/assets/img/common/arr_hoso.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 6vw;
  transform: translateY(-50%);
}

/* ===========================================================
　KV
=========================================================== */

article > h1 {
  position: relative;
}

article > h1 .ctbtn a {
  position: absolute;
  bottom: 34vw;
  left: 50%;
  transform: translateX(-50%);
  padding: 2.8vw 0;
  font-size: 4.2vw;
}


/* ===========================================================
　anxiety
=========================================================== */

#anxiety {
  padding: 12vw 0 20vw;
}

#anxiety .baloon {
  background: #f7b634;
  width: 70vw;
  margin: 0 auto;
  color: #fff;
  text-align: center;
  font-size: 5vw;
  font-weight: 700;
  letter-spacing: 0.5vw;
  padding: 4vw 0;
  border-radius: 100vw;
  position: relative;
}

#anxiety .baloon:after {
  content: "";
  position: absolute;
  top: 52%;
  left: 48%;
  transform: translateX(-50%) rotate(-37deg);
  border: solid 4vw transparent;
  border-bottom: solid 4vw #f7b634;
}

#anxiety h2 {
  font-size: 7.5vw;
  text-align: center;
  padding: 6vw 0 8vw;
  line-height: 9.4vw;
  letter-spacing: 0.5vw;
  text-decoration: underline; /* 下線 */
  text-decoration-thickness: 0.3em; /* 線の太さ */
  text-decoration-color: #fcf0ac;/* 線の色 */
  text-underline-offset: -0.2em; /* 線の位置。テキストに重なるようにやや上部にする */
  text-decoration-skip-ink: none; /* 下線と文字列が重なる部分でも下線が省略されない（線が途切れない） */
}


/* -----------------------------
  夫婦
----------------------------- */

/* 最初 */

#anxiety .list:nth-of-type(1):before {
  background: url("/lp/child_care/img/what_01.png") no-repeat;
  background-size: contain;
  left: -10vw;
}

#anxiety .list:nth-of-type(1) li {
  margin: 0 0 4vw auto;
}

#anxiety .list:nth-of-type(1) li:before {
  left: -2.5vw;
  border: solid 1px transparent;
  border-left: solid 1px #e9e9e9;
  border-top: solid 1px #e9e9e9;
}

#anxiety .but {
  font-size: 6vw;
  font-weight: 700;
  text-align: center;
  display: block;
  margin: 1vw 0 5vw
}

/* 2番目 */

#anxiety .list {
  position: relative;
  overflow: hidden;
}

#anxiety .list:before {
  content: "";
  background: url("/lp/child_care/img/what_02.png") no-repeat;
  background-size: contain;
  width: 43vw;
  height: 43vw;
  position: absolute;
  top: 46%;
  right: -10vw;
  transform: translateY(-50%);
}


#anxiety .list li {
  background: #f4f4f4;
  border: solid 1px #e9e9e9;
  width: 61vw;
  padding: 3vw 0;
  font-size: 3.6vw;
  line-height: 4.6vw;
  margin: 0 0 4vw;
  position: relative;
  z-index: 0;
  text-align: center;
}

#anxiety .list li span {
  font-size: 3.8vw;
  font-weight: 700;
}

#anxiety .list li:before {
  content: "";
  width: 4.5vw;
  height: 4.5vw;
  background: #f4f4f4;
  position: absolute;
  top: 50%;
  right: -2.5vw;
  transform: translateY(-50%) rotate(-45deg) skew(20deg, 20deg);
  border-right: solid 1px #e9e9e9;
  border-bottom: solid 1px #e9e9e9;
  z-index: -1;
}


/* ===========================================================
　solution
=========================================================== */

#solution {
  background: #fcf7eb;

}

#solution .baloon {
  background: #f7b634;
  width: 80vw;
  margin: 0 auto;
  color: #fff;
  text-align: center;
  font-size: 5vw;
  font-weight: 700;
  letter-spacing: 0.5vw;
  padding: 4vw 0;
  border-radius: 100vw;
  position: relative;
  line-height: 6vw;
  position: relative;
  top: -10vw;
}

#solution .baloon:after {
  content: "";
  position: absolute;
  top: 70%;
  left: 48%;
  transform: translateX(-50%) rotate(-37deg);
  border: solid 4vw transparent;
  border-bottom: solid 4vw #f7b634;
}

#solution h2 span {
  font-size: 6.8vw;
  display: block;
  margin: 0 0 2vw
}

#solution h2 span b {
  text-decoration: underline; /* 下線 */
  text-decoration-thickness: 0.3em; /* 線の太さ */
  text-decoration-color: #fcf0ac;/* 線の色 */
  text-underline-offset: -0.2em; /* 線の位置。テキストに重なるようにやや上部にする */
  text-decoration-skip-ink: none; /* 下線と文字列が重なる部分でも下線が省略されない（線が途切れない） */
}

#solution h2 {
  font-size: 7.5vw;
  text-align: center;
  margin: -3vw 0 10vw;
  line-height: 9.4vw;
  letter-spacing: 0.5vw;
}

/* -----------------------------
 機器
----------------------------- */

#solution .wrapper {
  background: #fff;
  width: 87vw;
  margin: 0 auto;
  padding: 8vw;
  border-radius: 4vw;
  box-shadow: 0 0 3vw 0 #dbdbdb;
  position: relative;
  top: -14vw
}

#solution .wrapper .lead {
  font-size: 4.5vw;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.5vw;
}

#solution .wrapper figure {
  width: 60vw;
  margin: 5vw auto 3vw;
}

#solution .wrapper .price {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
}

#solution .wrapper .price .lft {
  font-size: 5vw;
  font-weight: 700;
  margin: 0 4vw 0 0
}

#solution .wrapper .price .lft span {
  font-family: century-gothic, Century Gothic, sans-serif;
  font-size: 10vw;
  margin: 0 0.4vw;
  position: relative;
  top: 0.6vw;
}

#solution .wrapper .price .rgt {
  font-size: 4vw;
  font-weight: 700;
  text-align: center;
  line-height: 4.4vw;
}

#solution .wrapper .price .rgt span {
  font-family: century-gothic, Century Gothic, sans-serif;
  font-size: 5.2vw;
  letter-spacing: -0.1vw;
  margin: 0 0.4vw
}

#solution .wrapper .price .btm {
  font-size: 2.7vw;
  text-align: left;
  width: 100%;
  margin: 3vw 0 0;
  color: #5b5b5b;
}


/* ===========================================================
　point
=========================================================== */

#point {
  margin: 14vw 0 0;
}

#point ul li {
  width: 85vw;
  margin: 0 auto 8vw;
  background: #fcf7eb;
  border-radius: 4vw;
  padding: 10vw 0;
}

#point ul li:last-of-type {
  margin: 0 auto;
}

#point ul li > span {
  width: 23vw;
  margin: 0 auto 4vw;
  display: block;
}

#point ul li .lead {
  font-size: 4.8vw;
  text-align: center;
  font-weight: 700;
  color: #f77a5b;
  letter-spacing: 0.2vw
}

#point ul li figure {
  margin: 6vw 0;
  text-align: center;
}

#point ul li figure img[src$=".png"] {
  width: auto;
  height: 60vw;
  position: relative;
  left: 5vw
}

#point ul li figure img[src$=".jpg"] {
  width: 70vw;
}

#point ul li .txt {
  font-size: 3.4vw;
  padding: 0 8vw;
  line-height: 5.5vw
}

#point ul li .txt a {
  text-decoration: underline;
  color: #1a81d0;
}

#point ul li .txt .ct {
  font-size: 3.2vw;
  font-weight: 400;
  line-height: 0;
}


/* ===========================================================
　oneday
=========================================================== */

#oneday {
  background: #fcf1eb;
  position: relative;
  z-index: 0;
  margin: 35vw 0 0;
}

#oneday:before {
  content: "";
  background: url("/lp/child_care/img/nami_sp.png") no-repeat;
  background-size: contain;
  width: 100vw;
  height: 32vw;
  position: absolute;
  bottom: 96.5%;
  z-index: -1;
}

#oneday h2 {
  margin: 0 10vw 10vw;
  font-size: 5.5vw;
  line-height: 8vw;
}



/* -----------------------------
 時間
----------------------------- */

#oneday ul li {
  position: relative;
  margin: 0 0 4vw
}

#oneday ul li:last-of-type {
  margin: 0;
}

#oneday ul li span {
  position: absolute;
  top: 0;
  left: 26vw;
  font-family: century-gothic, Century Gothic, sans-serif;
  font-size: 5vw;
  font-weight: 700;
  color: #f77a5b;
}

#oneday ul li span:before {
  content: "";
  width: 23vw;
  height: 2px;
  background: #f77a5b;
  position: absolute;
  left: -130%;
  top: 50%;
  transform: translateY(-50%);
}

#oneday ul li figure {
  width: 76vw;
  margin: 0 auto;
}

#oneday ul li .txt {
  background: #fff;
  width: 88vw;
  margin: 0 auto;
  border-radius: 4vw;
  padding: 6vw;
  position: relative;
  top: -10vw;
  font-size: 3.4vw;
  line-height: 6vw;
}



/* ===========================================================
 flow
=========================================================== */


#flow {
  padding: 14vw 0;
  margin: 0;
  background: #f4f4f4;
  border-top: solid 1px #ddd;
  border-bottom: solid 1px #ddd;
}

#flow h2 {
  text-decoration: none;
  font-size: 6vw;
  letter-spacing: 0.5vw;
  margin: 0 0 8vw;
  text-align: center;
}

#flow h2 span {
  font-family: century-gothic, Century Gothic, sans-serif;
  font-size: 10vw;
  font-weight: 500;
  margin: 0 0.2vw 0 0.2vw;
}

#flow ul {
  width: 80vw;
  margin: 0 auto 4vw;
  position: relative;
}

#flow ul:after {
  content: "";
  width: 1px;
  height: 100%;
  background: #ababab;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 9;
}

#flow ul li {
  background: #fff;
  border: solid 1px #ababab;
  margin: 0 0 6vw;
  padding: 6vw;
  position: relative;
  z-index: 999;
  border-radius: 2vw;
}

#flow ul li .wrapper {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  position: relative;
}


#flow ul li .number {
  font-size: 7vw;
  font-family: Century Gothic, Arial;
  font-weight: 700;
  margin: 0 3vw 0 0;
  color: #f7a745;
}

#flow ul li .lead {
  font-size: 4vw;
  line-height: 5vw;
  margin: 0 0 0 5vw;
}

#flow ul li img {
  width: auto;
  height: 8vw;
  display: block;
}

#flow .caution {
  font-size: 3.2vw;
  line-height: 4vw;
  padding: 0 0 0 5vw;
  position: relative;
  width: 88vw;
  margin: 0 auto;
}


/* ===========================================================
 set
=========================================================== */

#set {
  position: relative;
  z-index: 0;
  padding: 16vw 0 2vw;
}


#set h2 {
  margin: 0 auto 6vw;
  padding: 0 0 8vw;
  font-size: 7.2vw;
  text-align: center;
  border-bottom: solid 1px #3e3a39;
  width: 77vw;
}

#set h2 span {
  display: block;
  margin: 3vw 0 0;
  font-size: 6.5vw
}


/* -----------------------------
 価格
----------------------------- */

#set {
  overflow: hidden;
}

#set .price {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  margin: 0 0 8vw;
}

#set .price .lft {
  font-size: 6.2vw;
  font-weight: 700;
  color: #f2a84e;
  margin: 0 3vw 0 0
}

#set .price .lft span {
  font-size: 11vw;
  font-family: Century Gothic, Arial;
  margin: 0 0.5vw;
}

#set .price .rgt {
  font-size: 4vw;
  font-weight: 700;
  text-align: center;
  line-height: 5.5vw
}

#set .price .rgt span {
  font-size: 5.5vw;
  font-family: Century Gothic, Arial;
  letter-spacing: 0vw;
  margin: 0 0.5vw
}

#set .modal_open {
  background: #8f8f8f;
  width: 75vw;
  margin: 0 auto 10vw;
  border-radius: 20vw;
  padding: 3vw 0;
  text-align: center;
  color: #fff;
  font-size: 4.4vw;
  position: relative;
}

#set .modal_open:after {
  content: "";
  background: url("/assets/img/common/ico_modal_white.svg") no-repeat;
  position: absolute;
  top: 50%;
  right: 4vw;
  transform: translateY(-50%);
  width: 7vw;
  height: 8vw;
}

#set .image {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  position: relative;
  left: 2vw;
  margin: 0 0 8vw;
}

#set .image figure {
  margin: 0 3vw;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  justify-content: flex-end;
}

#set .image figure img {
  width: 31vw;
}

#set .image figure figcaption {
  font-size: 3.2vw;
  text-align: center;
  margin: 6vw 0 0;
}



/* ===========================================================
 entry（別ページ）
=========================================================== */

#entry {
  background: #fcf1eb;
  padding: 26vw 0 4vw;
  margin: 10vw 0 0;
  z-index: 0;
}

#entry:after {
  content: "";
  border: solid 50vw transparent;
  border-top: solid 12vw #fff;
  position: absolute;
  top: 0;
  z-index: -1;
}

#entry h2 {
  margin: 0 auto 12vw;
  padding: 0 0 8vw;
  font-size: 7.2vw;
  text-align: center;
  border-bottom: solid 1px #3e3a39;
  width: 77vw;
}

#entry h2 span {
  display: block;
  margin: 3vw 0 0;
  font-size: 6.5vw
}

#entry .option > .ttl {
  font-size: 5vw;
  text-align: center;
  color: #f77a5b;
  margin: 0 0 2vw;
}

#entry .option > .lead {
  text-align: center;
  font-weight: 400;
  margin: 0 0 8vw
}


/* -----------------------------
 オプション選択
----------------------------- */

#entry .option .wrapper {
  background: #fff;
  width: 80vw;
  margin: 0 auto 8vw;
  padding: 10vw;
  border-radius: 4vw;
}

#entry .option .wrapper label {
  display: block;
}

#entry .option .wrapper label .lb_ttl {
  position: relative;
  font-size: 4.6vw;
  font-weight: 700;
  padding: 0 0 0 10vw;
  margin: 0 0 5vw;
  white-space: nowrap;
}

#entry .option .wrapper label .txt {
  font-size: 3.6vw;
  line-height: 5vw;
  margin: 0 0 6vw;
  padding: 0 0 6vw;
  border-bottom: solid 1px #ccc;
}

#entry .option .wrapper label .caution .lead {
  font-size: 3vw;
  font-weight: 400;
  text-align: left;
  line-height: 4.3vw;
}


#entry .option .wrapper .ttl {
  font-size: 5vw;
  font-weight: 700;
  color: #f2a84e;
  text-align: center;
  margin: 0 0 4vw;
  white-space: nowrap
}

#entry .option .wrapper .ttl span {
  font-size: 3.6vw;
  color: #3e3a39;
  margin: 0 1vw 0 0
}



/* Qrio
------------------------*/

label[for="qrio"] .inner {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 6vw;
}

label[for="qrio"] .inner figure {
  width: 24vw;
  margin: 0 6vw 0 0
}

label[for="qrio"] .inner .price {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  justify-content: center;
}

label[for="qrio"] .inner .price span {
  display: block;
  text-align: center;
}

label[for="qrio"] .inner .price span:nth-of-type(1) {
  font-size: 5vw;
  font-weight: 700;
  color: #f2a84e;
  margin: 0 0 2vw
}

label[for="qrio"] .inner .price span:nth-of-type(2) {
  font-size: 3.4vw;
  font-weight: 700;
  line-height: 4vw
}

label[for="qrio"] .caution .btm {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 2vw 0 0;
}


label[for="qrio"] .caution .btm img {
  width: 28vw;
  margin: 0 4vw 0 0;
}

label[for="qrio"] .caution .btm a {
  font-size: 2.7vw;
  color: #1a81d0;
  text-decoration: underline;
  line-height: 4vw;
}


/* 初期
------------------------*/
label[for="agency"] .caution a {
  font-size: 3.2vw;
  color: #1a81d0;
  text-decoration: underline;
  line-height: 4vw;
  text-align: right;
  margin: 4vw 0 0;
}

/* 解サポ
------------------------*/

label[for="support"] .txt {
  text-align: center;
  border-bottom: none !important;
  margin: 0 !important;
  padding: 0 !important;
}



/* チェック制御
------------------------*/

/* デフォルト */
#entry .option .wrapper label .lb_ttl:before {
    content: "";
    width: 7vw;
    height: 7vw;
    background: #d6d6d6;
    border-radius: 3px;
    transition: all .2s ease;
    margin: 0 3vw 0 0;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

/* チェック */

#entry .option .wrapper input[type="checkbox"] {
  display: none;
}

#entry .option .wrapper input[type="checkbox"]:checked + label .lb_ttl:before {
    background: #f56739;
    transition: all .2s ease;
}

#entry .option .wrapper input[type="checkbox"]:checked + label .lb_ttl:after {
    content: "";
    width: 1.3vw;
    height: 3vw;
    border-bottom: solid 1vw #fff;
    border-right: solid 1vw #fff;
    position: absolute;
    top:  40%;
    left: 2.4vw;
    transform: translateY(-50%) rotate(45deg);
    z-index: 99;
}




/* ===========================================================
 entryForm（別ページ）
=========================================================== */

.entryForm {
	background: #fcf1eb;
	padding: 0 8vw 8vw;
	text-align: center;
	color: #3e3a39
}


/* --------------------------------------
 規約
-------------------------------------- */

.entryForm .explan_pdf ul {
  background: #fcf1eb;
  padding: 2vw 4vw;
  margin: 0 auto 6vw;
}
  
.entryForm .explan_pdf ul li {
  font-size: 2.7vw;
  margin: 0;
  color: #3e3a39;
  font-weight: 400;
  text-align: left;
}


/* --------------------------------------
 同意・申込
-------------------------------------- */


.entryForm .apply button {
  background: rgb(247,122,91);
  background: linear-gradient(90deg, rgb(240 43 73) 0%, rgb(240 43 73) 28%, rgb(255 129 107) 100%) !important;
  color: #fff;
  margin: 8vw auto;
  text-align: center;
  font-size: 4.8vw;
  font-weight: 700;
  letter-spacing: 0.5vw;
  padding: 4vw;
  border-radius: 100vw;
  position: relative;
  box-shadow: 0 1.2vw 0 0 #9f5353;
  border: none;
}

.entryForm .apply button:after {
  content: "";
  width: 4.2vw;
  height: 2.7vw;
  background: url("/assets/img/common/arr_hoso.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 4.5vw;
  transform: translateY(-50%);
}


/* ===========================================================
 商品紹介ページはこちら
=========================================================== */

.back {
  background: #505050;
  width: 65vw;
  margin: 0 auto;
  padding: 3vw 0;
  text-align: center;
  color: #fff;
  font-size: 3.6vw;
  position: relative;
  border-radius: 0.8vw;
  display: block !important;
  text-decoration: none !important;
}

.back:before {
  content: "";
  width: 4vw;
  height: 2vw;
  background: url(/assets/img/common/arr_hoso.svg) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 4vw;
  transform: translateY(-50%) rotate(180deg);
}



/* ===========================================================
 telentry(電話)
=========================================================== */

.telentry {
  padding: 20vw 6vw 12vw;
  background: #f4f4f4;
  position: relative;
}

.telentry h2 {
  margin: 0 0 8vw;
  text-align: center;
  font-size: 6vw;
}


.telentry .entarea {
  background: #fff;
  margin: 0 auto 10vw;
  border-radius: 2vw;
  box-shadow: 0 3px 8px -2px #999;
  position: relative;
  padding: 10vw 4vw;
  text-align: center;
}


.telentry .entarea .manomaent {
  background: #f4f4f4;
  border: solid 1px #e9e9e9;
  padding: 2vw 5vw 1.5vw;
  text-align: center;
  font-size: 3.2vw;
  font-weight: 700;
  display: inline-block;
  margin: 0 0 3vw
}

.telentry .entarea .manomatel a {
  font-size: 7.4vw;
  font-weight: 700;
  font-family: "Arial", sans-serif;
  color: #0c0c0c;
  margin: 0 auto 2vw;
  display: inline-block !important;
}

.telentry .entarea .manomatel a:before {
 content: "";
 background:url("/assets/img/common/ico_tel.svg") no-repeat;
 background-size: contain;
 width: 5.5vw;
 height: 5.5vw;
 display: inline-block;
 margin: 0 1vw 0 0;
}

.telentry .entarea .manomatel p {
  font-size: 3.4vw;
  font-weight: 700;
  line-height: 5vw;
  margin: 0 0 3vw;
  position: relative;
  letter-spacing: 0;
}

.telentry .entarea .manomatel p:before {
  content: "※";
}

.telentry .entarea .manomatel ul li {
  font-size: 3vw;
  letter-spacing: 0px;
  color: #585858;
  margin: 0 0 2vw;
}


.telentry .contact a {
  background: rgb(52 197 36);
  background: linear-gradient(90deg, rgb(52 197 36)  0%, rgb(52 197 36)  28%, rgb(96 235 128) 100%);
  color: #fff;
  width: 76vw;
  margin: 6vw auto 8vw;
  text-align: center;
  font-size: 4.3vw;
  font-weight: 700;
  letter-spacing: 0.3vw;
  padding: 4vw;
  border-radius: 100vw;
  position: relative;
  box-shadow: 0 1.2vw 0 0 #3b8738;
}

.telentry .contact a:after {
  content: "";
  width: 4.2vw;
  height: 2.7vw;
  background: url("/assets/img/common/arr_hoso.svg") no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 5vw;
  transform: translateY(-50%);
}

.telentry .contact .txt {
  font-size: 3.4vw;
  text-align: center;
  letter-spacing: 0;
  line-height: 5vw;
}



/* ===========================================================
 qa
=========================================================== */

#qa {
  margin: 15vw 0 0;
}

#qa h2 {
  font-size: 7vw;
  font-weight: 700;
  text-align: center;
  margin: 0 0 15vw;
  text-decoration: none;
}

#qa ul li {
  border-top: dotted 1px #ccc;
  font-size: 4vw;
}

#qa ul li:last-of-type {
  border-bottom: dotted 1px #ccc;
}

#qa ul li input {
  display: none;
}

#qa ul li .acd-label {
  font-weight: 700;
  display: block;
  position: relative;
  line-height: 5.5vw;
  padding: 6vw 15vw;
}

#qa ul li .acd-label:after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 5.5vw;
  transform: translateY(-50%);
  font-size: 4.5vw;
}

#qa ul li input:checked + .acd-label:after {
  content: "－";
  right: 5vw;
  top: 52%;
}


#qa ul li .acd-label:before {
  content: "";
  background: url("/lp/trial_remoteconnect/img/ico-q.svg") no-repeat;
  background-size: contain;
  width: 7vw;
  height: 7vw;
  position: absolute;
  top: 50%;
  left: 4vw;
  transform: translateY(-50%);
}

#qa ul li .acd-content {
  font-size: 3.6vw;
  line-height: 5.4vw;
  position: relative;
  padding: 0 15vw;
  margin: 0 0 6vw;
  display: none;
}

#qa ul li .acd-content a {
  display: inline;
  color: #618fda;
  text-decoration: underline;
}

#qa ul li .acd-content a:hover {
  text-decoration: none;
}

#qa ul li .acd-content:before {
  content: "";
  background: url("/lp/trial_remoteconnect/img/ico-a.svg") no-repeat;
  background-size: contain;
  width: 7vw;
  height: 7vw;
  position: absolute;
  top: 0;
  left: 4vw;
}



/* ===========================================================
 modal
=========================================================== */


.modal_wrapper_in {
  padding: 12vw 4vw;
  margin: 1vh auto;
}


/* -----------------------------
 料金表モーダル
----------------------------- */

#insede .campaign_table {
    width: 100%;
    border-top: solid 1px #cacaca;
    border-left: solid 1px #cacaca;
    margin: 0 0 8vw;
    overflow: hidden;
}

#insede .campaign_table th {
    background: #f0f7ff;
    text-align: center;
    padding: 3vw 1vw;
    border-right: solid 1px #cacaca;
    border-bottom: solid 1px #cacaca;
    font-size: 2.7vw;
    line-height: 3.6vw;
    vertical-align: middle;
}

#insede .campaign_table td:nth-of-type(1) {
    font-size: 2.7vw;
  text-align: left;
}

#insede .campaign_table tr:nth-of-type(2) td:nth-of-type(1) p {
  font-size: 3.2vw;
  font-weight: 700;
  margin: 2vw 0 4vw;
  line-height: 4.8vw;
}

#insede .campaign_table tr:nth-of-type(2) td:nth-of-type(1) ul li {
  display: flex;
  align-items: center;
  margin: 0 0 3vw
}

#insede .campaign_table tr:nth-of-type(2) td:nth-of-type(1) ul li span {
  margin: 0 0 0 auto;
}

#insede .campaign_table tr:nth-of-type(2) td:nth-of-type(1) ul li figure {
  width: 10vw;
  text-align: center;
}

#insede .campaign_table tr:nth-of-type(2) td:nth-of-type(1) ul li figure img {
  height: 6vw;
}


#insede .campaign_table td {
    border-right: solid 1px #cacaca;
    border-bottom: solid 1px #cacaca;
    text-align: center;
    padding: 3vw 1vw;
    font-size: 2.7vw;
    vertical-align: middle;
    line-height: 3.4vw;
}

#insede .campaign_table .txt span {
  display: block;
  margin: 2vw 0 0;
}

#insede .campaign_table td .tax {
  display: block;
  white-space: nowrap;
}

#insede .campaign_table img {
  width: auto;
  height: 6vw;
  display: inline-block;
  vertical-align: middle;
  margin: 0 3vw 0 0;
}


#insede .caution {
  margin: 0 0 8vw;
}

#insede .caution li {
  font-size: 2.7vw;
  margin: 0 0 5vw;
  line-height: 4vw;
}


#insede .insede_fee {
  margin: 0 0 6vw;
}

#insede .insede_fee .subttl {
  font-size: 4.5vw;
  font-weight: 700;
  margin: 0 0 3vw;
  padding: 0 0 0 1vw;
}

#insede .insede_fee table {
  width: 100%;
  border-bottom: solid 1px #ccc;
  border-right: solid 1px #ccc;
  margin: 3vw 0 3vw;
}

#insede .insede_fee table th,
#insede .insede_fee table td {

  border-top: solid 1px #ccc;
  border-left: solid 1px #ccc;
  padding: 3vw;
  font-size: 3vw;
  letter-spacing: 0;
  vertical-align: middle;
  line-height: 4vw;
}

#insede .insede_fee table td span {
  font-size: 2.7vw;
  display: block;
}

#insede .insede_fee table td:last-of-type {
  white-space: nowrap;
  text-align: center;
}

#insede .insede_fee table th {
  background: #e4e4e4;
}



/* -----------------------------
 電話モーダル
----------------------------- */

#telMo {
  background: #fff;
  margin: 0 4vw;
  padding: 0;
}

#telMo .telentry {
  background: #fff;
  position: static;
  padding: 5vw 0 0;
}

#telMo .telentry .entarea {
  margin: 0 0 10vw;
}



/* -----------------------------
 対応サムターン
----------------------------- */

#sumturn {
  padding: 15vw 6vw;
}

#sumturn .area {
  margin: 0 0 8vw;
}

#sumturn .area > .ttl {
  font-size: 5vw;
  border-left: solid 2vw #333;
  padding: 0 0 0 4vw;
  margin: 0 0 4vw;
  font-weight: 700;
}

#sumturn .area > .lead {
  font-size: 4vw;
  margin: 0 0 6vw;
}

#sumturn .area .others {
  margin: 0 0 30vw;
}

#sumturn .area .others ul li {
  margin: 0 0 10vw;
  border: solid 1px #555;
}

#sumturn .area .others ul li .ttl {
  background: #555;
  text-align: center;
  color: #fff;
  padding: 4vw 0;
  font-size: 4.2vw;
  line-height: 6vw;
}

#sumturn .area .others ul li figure {
  text-align: center;
}

#sumturn .area .others ul li figure img {
  width: 60vw;
}

#sumturn .area .others ul li .lead {
  font-size: 4vw;
  text-align: center;
  margin: 0 0 10vw;
  padding: 0 6vw;
  color: #0064a0;
}

#sumturn .area .seihin .th {
  display: none;
}

#sumturn .area .seihin .product li {
  border-top: solid 1px #ccc;
  padding: 10vw 0;
}

#sumturn .area .seihin .product li .kataban {
  font-size: 5vw;
  text-align: center;
}

#sumturn .area .seihin .product li figure {
  width: 40vw;
  margin: 5vw auto 0;
}


#sumturn .area .seihin .product .torituke {
  margin: 10vw 0 5vw;
}

#sumturn .area .seihin .product .torituke span {
  background: #27b0d7;
  width: 10vw;
  height: 10vw;
  display: block;
  border-radius: 10vw;
  position: relative;
  margin: 0 auto;
}



#sumturn .area .seihin .product .torituke span:after {
  content: "";
  width: 3vw;
  height: 5vw;
  border-top: solid 4px #fff;
  border-left: solid 4px #fff;
  position: absolute;
  top: 45%;
  left: 52%;
  transform: translate(-50%,-50%) rotate(-135deg);
}

#sumturn .area .seihin .product .torituke span.batu {
  background: transparent;
  width: 8vw;
  height: 8vw;
  display: block;
  position: relative;
}

#sumturn .area .seihin .product .torituke span.batu:after {
  content: "";
  width: 100%;
  height: 2vw;
  background: #c52222;
  border: none;
}

#sumturn .area .seihin .product .torituke span.batu:before {
  content: "";
  width: 100%;
  height: 2vw;
  background: #c52222;
  position: absolute;
  top: 45%;
  left: 52%;
  transform: translate(-50%,-50%) rotate(135deg);
}


#sumturn .area .seihin .product .caution {
  font-size: 3.2vw;
  text-align: center;
}

#sumturn .sarani {
  margin: 4vw 0 0;;
  width: 100%;
  background: #555;
  color: #fff;
  text-align: center;
  font-size: 4vw;
  padding: 4vw 0;
  font-weight: 700;
  text-decoration: none;
}


#sumturn .sarani:after {
  content: "";
  width: 2vw;
  height: 2vw;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  display: inline-block;
  transform: rotate(45deg);
  margin: 0 0 0 6vw;
}


/* -----------------------------
 初期設定代行
----------------------------- */

#musyou .ttl {
  font-size: 5vw;
  text-align: center;
  font-weight: 700;
}

#musyou .area .lead {
  font-size: 4.6vw;
  line-height: 6vw;
  padding: 0 0 0 4vw;
  border-left: solid 6px #3e3a39;
  margin: 12vw 0 8vw;
}

#musyou .area .txt {
  font-size: 3.2vw;
  line-height: 4.4vw;
  margin: 0 0 8vw
}

#musyou .area .txt a {
  text-decoration: underline;
  color: #1a81d0;
  word-break: break-all;
}

#musyou .area .cau li {
  font-size: 2.7vw;
  line-height: 3.6vw;
  margin: 0 0 2vw;
  position: relative;
  padding: 0 0 0 3.5vw;
}

#musyou .area .cau li:before {
  content: "※";
  position: absolute;
  left: 0;
}

#musyou .area .cau li a {
  color: #1a81d0;
  text-decoration: underline;
  display: inline
}



/* ご利用の流れ */

#musyou .area .flow {
  position: relative;
  counter-reset: number 0;
}

#musyou .area .flow:before {
  content: "";
  width: 1px;
  height: 100%;
  background: #3e3a39;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index:-1;
}

#musyou .area .flow li {
  border: solid 2px #4f556e;
  padding: 4vw;
  font-size: 3.4vw;
  line-height: 4.4vw;
  background: #fff;
  z-index: 0;
  text-align: center;
  margin: 0 0 4vw;
  position: relative;
}


#musyou .area .flow li:after {
  content: counter(number);
  counter-increment: number 1;
  font-family: century-gothic, Century Gothic, sans-serif;
  position: absolute;
  top: 0;
  left: 0;
  font-weight: 700;
  font-size: 3.6vw;
  position: absolute;
  width: 6vw;
  height: 6vw;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #4f556e;
  color: #fff;
}


#musyou .area .flow li span {
  font-size: 2.7vw;
  line-height: 3.2vw;
  display: block;
  margin: 2vw 0 0;
}

/* サポート内容 */

#musyou .area .detail {
  margin: 0 0 0.8vw;
}

#musyou .area .detail li {
  padding: 4vw 4vw 4vw 12vw;
  font-size: 3.2vw;
  margin: 0 0 4vw;
  line-height: 4.2vw;
  position: relative;
  background: #d4d4d4;
}

#musyou .area .detail li span {
  font-size: 4vw;
  font-weight: 700;
  display: block;
  margin: 0 0 1vw
}


#musyou .area .detail li .number {
  position: absolute;
  top: 50%;
  left: 4vw;
  transform: translateY(-50%);
  font-size: 7vw;
  font-family: century-gothic, Century Gothic, sans-serif;
  font-weight: 700;
  color: #fff;
}



/* 当日必要なもの */

#musyou .area .today {
  margin: 0 0 4vw;
}

#musyou .area .today li {
  display: flex;
  align-items: center;
  margin: 0 0 4vw;

  padding: 0 0 4vw;
  border-bottom: solid 1px #ccc;
}

#musyou .area .today li figure {
  margin: 0 3vw 0 0;
}

#musyou .area .today li figure img {
  width: auto;
  height: 8vw;
}

#musyou .area .today li .rgt {
  font-size: 2.7vw;
  line-height: 3.2vw;
}

#musyou .area .today li .rgt span {
  display: block;
  font-size: 3.6vw;
  font-weight: 700;
  margin: 0 0 2vw;
}


#musyou .area table tbody {
  border-top: solid 1px #ccc;
  border-left: solid 1px #ccc;
  display: block;
  margin: 4vw 0 0;
}

#musyou .area table th,
#musyou .area table td {
  font-size: 2.7vw;
  border-right: solid 1px #ccc;
  border-bottom: solid 1px #ccc;
  padding: 2vw;
  text-align: center;
  vertical-align: middle;
  line-height: 3.2vw;
}

#musyou .area table td img {
  width: auto;
  height: 7vw;
  display: block;
  margin: 0 auto 2vw
}

/* 訪問サポートまでに必要な作業 */

#musyou .area .list .sub {
  font-size: 3.6vw;
  margin: 0 0 4vw;
  display: inline-block;
  padding: 0 0 2vw;
  border-bottom: solid 1px #3e3a39;
  line-height: 5.2vw
}


#musyou .area .list ul {
  margin: 0 0 8vw;
}

#musyou .area .list:nth-of-type(1) ul {
  counter-reset: number 0;
}

#musyou .area .list:nth-of-type(2) ul {
  counter-reset: number 3;
}

#musyou .area .list ul li {
  font-size: 3.2vw;
  margin: 0 0 4vw;
  line-height: 4.6vw;
  position: relative;
  padding: 0 0 0 7vw
}

#musyou .area .list ul li span {
  font-weight: 700;
  display: block;
  margin: 0 0 1vw
}

#musyou .area .list ul li a {
  text-decoration: underline;
  color: #1a81d0;
  word-break: break-all;
}


#musyou .area .list ul li:before {
  content: counter(number);
  counter-increment: number 1;
  background: #4f556e;
  color: #fff;
  font-family: century-gothic, Century Gothic, sans-serif;
  font-weight: 700;
  font-size: 3.4vw;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4vw;
  display: flex;
  align-items: center;
  justify-content: center;
}



