@charset "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Kosugi');

/*! minireset.css v0.0.3 | MIT License | github.com/jgthms/minireset.css */
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}
ul { list-style: none; }

button,
input,
select,
textarea { margin: 0; }

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

img,
embed,
iframe,
object,
audio,
video {
  height: auto;
  max-width: 100%;
}
iframe { border: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
  text-align: left;
}

/********************************************
  以下、LP用CSS
 */

/* preload */
body::after {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  z-index: -1;
  content: url(../../../images/lp/04/main_feature/mf_trouble01.png) url(../../../images/lp/04/main_feature/mf_trouble02.png) url(../../../images/lp/04/main_feature/mf_trouble03.png) url(../../../images/lp/04/main_feature/mf_trouble04.png) url(../../../images/lp/04/main_feature/main_feature_copy.png) url(../../../images/lp/04/main_feature/main_feature_copy_text.png) url(../../../images/lp/04/main_feature/main_feature_wd_mouth.png) url(../../../images/lp/04/main_feature/main_feature_btn.png);
}

/* ベースの設定 */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  min-width: 320px;
  font-size: 10px;
  line-height: 1.5;
  overflow-x: hidden;
}

body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #4d4d4d;
  font-size: 20px;
  line-height: 1.5;

  /*  word-break: break-all;
  word-wrap: break-word; */
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

article {
  overflow: hidden;
}

img {
  display: block;
  vertical-align: top;
  font-size: 10px;
}

span {
  display: inline-block;
}

.footer-recruit {
  padding: 0 !important;
}

.footer-recruit a {
  display: block;
  background: #f3f7ff;
  color: #333;
  font-size: 14px;
  padding: 10px;
  text-align: center;
}

/* form */
input,
textarea {
  font-size: 16px;
  padding: 3px;
}

pre {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
}

/* アンカー */
a,
a:visited {
  color: blue;
  text-decoration: none;
}

a:hover,
a:active {
  text-decoration: underline;
}

/* 丸ゴシック */
.marugoshic {
  font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif;
}

/* 明朝体 */
.mincho {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Garamond, "Times New Roman", serif;
}

/* テキスト位置 */
.tac { text-align: center; }
.tar { text-align: right; }
.tal { text-align: left; }

/* フォントスタイル */
.fwb { font-weight: bold; }

/* 文字色 */
.fcr,
.red { color: red; }

/* イメージ表示位置 */
.img-pos-r {
  margin-left: auto;
  margin-right: 0;
}

.img-pos-c {
  margin-left: auto;
  margin-right: auto;
}

.img-pos-l {
  margin-left: 0;
  margin-right: auto;
}

/* 備考 */
.note,
.note_asterisk,
.note_komemark {
  position: relative;
  margin: 0 0 0 1em;
}

.note::before,
.note_asterisk::before,
.note_komemark::before {
  position: absolute;
  top: 0;
}

.note::before {
  content: '・';
  left: -1.25em;
}

.note_asterisk::before {
  content: '＊';
  left: -1em;
}

.note_komemark::before {
  content: '※';
  left: -1em;
}

/* 句読点関係 */
.left_parenthesis {
  margin-left: -0.55em;
}

.right_parenthesis {
  margin-right: -0.55em;
}

.jp_comma,
.jp_period {
  margin-right: -0.66em;
}

.jp_middle_point {
  margin: 0 -0.35em;
}

/* 文字色 */
.fcr {
  color: #e83825;
}

/***************************
  列表示用
 */

/*  フロート */
.flt_box { zoom: 1; }

.flt_box::after,
.fltBox::before {
  content: '';
  display: table;
}
.flt_box::after { clear: both; }

/* flex */
.flex_box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.item_ctr {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.item_mdl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

/* 改行用 */
.tb_show,
.sp_show {
  display: none;
}

/********************************************
  共通
 */
.page_frame {
  overflow: hidden;
  position: relative;
  display: block;
  width: 100%;
  max-width: 1200px;
  margin: auto;
  -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.2), 0 0 5px 3px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.2), 0 0 5px 3px rgba(0, 0, 0, 0.1);
}

/* ページ基礎 */
.contents_bloc,
.header_contents_bloc {
  max-width: 990px;
  padding: 0 15px;
  margin: 0 auto;
}

.con_bloc_w1100 {
  max-width: 1100px;
}

/* マンガ */
.manga_bloc {
  position: relative;
  z-index: 2;
  max-width: 990px;
  margin: 4em auto 0.5em;
  padding: 0 15px;
}

.manga_bloc p {
  padding: 0.5em 0;
}

.manga_bloc img {
  margin: auto;
}

/* マンガSP用 */

/* .manga_box_sp p {
  padding: 1.15vw 0;
}
.manga_box_sp img {
  margin: auto;
  border: .5vw solid #2A0A12;
}
 */

.aniSlideBlocFrame_odd,
.aniSlideBlocPanel_odd,
.aniSlideBlocFrame_even,
.aniSlideBlocPanel_even,
.aniSlideBlocFrame,
.aniSlideBlocPanel {
  width: 100%;
}

/*******************************************   */

/********************************************

/ ********************************************/

/********************************************
  ヘッダー
 */
header {
  position: relative;
  z-index: 200;
  width: 100%;
}

/* #exから始まるヘッダーのスタイルは、exciteお悩み相談室（https://counselor.excite.co.jp/）からコピー */
#exHeader {
  width: 100%;
  height: 35px;
  background: #fff;
  border-bottom: solid 1px #dededa;
  overflow: hidden;
  font-size: 12px;
}

#exHeaderInner {
  width: 1000px;
  margin: 0 auto;
  position: relative;
}

#exSiteID {
  position: absolute;
  top: 0;
  left: 10px;
  width: 100%;
}

#exLogo {
  float: left;
}

#exLogo li {
  display: inline;
}

#exDescription {
  line-height: 2.8;
  margin-left: 10px;
}

/*******************************************   */

/********************************************
  ヘッダー共通
 */
.header_bloc {
  position: relative;
  z-index: 3;
  margin: 0.2em 0 0;
  font-size: 40px;
}

.header_inner {
  position: relative;
  min-height: 5em;
  margin: 0 auto;
  padding: 0 2.7em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.header_inner::before,
.header_inner::after {
  position: absolute;
  content: '';
  width: 1.88em;
  height: 5em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.header_inner::before {
  left: 0;
  background: url(../../../images/lp/04/common/common_header_ornament_left.png) no-repeat center center / 100% auto;
}

.header_inner::after {
  right: 0;
  background: url(../../../images/lp/04/common/common_header_ornament_right.png) no-repeat center center / 100% auto;
}

.header_inner > h2 {
  width: 100%;
}

#exHeader .headerIcon a:nth-of-type(1) {
  height: 39px !important;
}

/*******************************************   */

/********************************************
  相談ボタン
 */
.contact_bloc {
  position: relative;
  width: 74.2%;
  padding: 3.1em 0 3em 2.76em;
  margin: 0.18em 0 0 6.8%;
  font-size: 40px;
}

/* ボタン */
.contact_btn_bloc {
  position: relative;
  width: 100%;
}

.contact_btn_inner {
  overflow: hidden;
  display: block;
  width: 100%;
}

/* イラスト */
.contact_illust_bloc {
  position: absolute;
  z-index: 2;
  width: 27.8%;
  height: 100%;
  left: -40px;
  top: 0;
}

.contact_illust {
  position: absolute;
  width: 100%;
  height: 100%;
  right: 0;
  bottom: 0;
  background: url('../../../images/lp/04/contact/contact_illust.png') no-repeat 0 0 / 100% auto;
}

/*******************************************   */

/********************************************
  メインフィーチャー
 */
.main_feature_bloc {
  overflow: hidden;
}

.mf_con_bloc {
  position: relative;
}

.mf_con_bloc::before {
  position: absolute;
  content: '';
  z-index: -1;
  width: 122%;
  height: 100%;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url('../../../images/lp/04/main_feature/main_feature_bgi.png') no-repeat center top / 100% auto;
}

/* _:-ms-input-placeholder, :root .mf_con_bloc::before {
  background-size: 83% 59.4%;
} */

.main_feature_copy_bloc {
  min-height: 678.396px;
  position: relative;
  width: 62.4%;
  margin: 0 0 0 3.4%;
  padding: 7.2% 0 6.6%;
}

/* メイン悩み */
.mf_trouble_list {
  width: 94%;
  margin: 0 0 0 4.6%;
}

.mf_trouble_each_bloc {
  width: 22.4%;
}

.mf_tb_con01,
.mf_tb_con02,
.mf_tb_con03,
.mf_tb_con04 {
  border-radius: 16% / 50%;
  background-color: #fff;
  -webkit-box-shadow: 4px 4px 7px rgba(0, 0, 0, 0.2);
  box-shadow: 4px 4px 7px rgba(0, 0, 0, 0.2);
}

.mf_tb_con01 {
  padding: 7% 24.64%;
}

.mf_tb_con02 {
  padding: 7% 15.9%;
}

.mf_tb_con03 {
  padding: 7% 13.9%;
}

.mf_tb_con04 {
  padding: 7% 14.7%;
}

/* キャッチコピー */
.mf_copy_bloc {
  position: relative;
  z-index: 3;
  width: 72.3%;
  margin: 3.8% 0 0 15.6%;
}

.mf_copy_inner {
  width: 94.5%;
  margin: 7% 0 0 2.8%;
}

/* ボタン */
.mf_btn_bloc {
  position: relative;
  width: 90.1%;
  margin: 10.8% 0 0 6.6%;
}

.mf_btn_inner {
  display: block;
}

/* くちこみ */
.mf_reviews_bloc {
  position: absolute;
  z-index: 2;
  top: -38%;
  left: -6.8%;
  width: 23.8%;
}

.mf_reviews_inner {
  min-height: 128.438px;
  padding: 21.4% 4% 11.4% 2%;
  background: -webkit-linear-gradient(105deg, rgb(246, 125, 122) 0%, rgb(255, 168, 168) 100%);
  background: -o-linear-gradient(105deg, rgb(246, 125, 122) 0%, rgb(255, 168, 168) 100%);
  background: linear-gradient(-15deg, rgb(246, 125, 122) 0%, rgb(255, 168, 168) 100%);
  border-radius: 50%;
  -webkit-box-shadow: 4px 4px 7px rgba(0, 0, 0, 0.2);
  box-shadow: 4px 4px 7px rgba(0, 0, 0, 0.2);
}

/* イラスト */
.mf_illust_bloc {
  position: absolute;
  z-index: 2;
  width: 33%;
  height: 0;
  padding-top: 74%;
  right: 1.5%;
  top: 0%;
}

.mf_illust {
  position: absolute;
  width: 100%;
  height: 100%;
  right: 0;
  top: 2.5%;
  background: url('../../../images/lp/04/common/common_illust.png') no-repeat right top / 100% auto;
}

/*******************************************   */

/********************************************
  お悩み
 */
.trouble_bloc {
  position: relative;
  margin: 3.06em 0 0;
  font-size: 40px;
}

.trouble_bloc::before {
  position: absolute;
  content: '';
  z-index: -1;
  width: 125%;
  height: 240%;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url(../../../images/lp/04/trouble/trouble_bgi.png) no-repeat center bottom / 100% auto;
}

/* ヘッダー */
.trouble_header_inner {
  position: relative;
  width: 74.8%;
  padding: 0 3.19em;
  margin: auto;
}

/* 悩み一覧 */
.trouble_inner {
  overflow: hidden;
  position: relative;
  padding: 0.8em 0 15.8em;
}

.trouble_01 {
  width: 33.6%;
  margin: 0 0 0 21.8%;
}

.trouble_02 {
  position: absolute;
  width: 40.7%;
  top: 11%;
  right: 6.84%;
}

.trouble_03 {
  position: absolute;
  width: 36.2%;
  top: 21%;
  left: 3.4%;
}

.trouble_04 {
  position: absolute;
  width: 36.7%;
  top: 30.7%;
  right: -1.2%;
}

.trouble_05 {
  position: absolute;
  width: 38.8%;
  top: 42.8%;
  left: -0.5%;
}

.trouble_06 {
  position: absolute;
  z-index: 3;
  width: 36.6%;
  top: 55.6%;
  right: 1.6%;
}

.trouble_07 {
  position: absolute;
  z-index: 3;
  width: 26.8%;
  top: 66%;
  left: 7.2%;
}

/* イラスト */
.trouble_illust_bloc {
  position: absolute;
  width: 40.8%;
  height: 0;
  padding-top: 63%;
  bottom: 0;
  left: 29.8%;
}

.trouble_illust {
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  background: url(../../../images/lp/04/trouble/trouble_illust.png) no-repeat center bottom / 100% auto;
}

/*******************************************   */

/********************************************
  サポート
 */
.support_bloc {
  position: relative;
  padding: 0 0 3.74em;
  margin: 3.06em 0 0;
  font-size: 40px;
}

.support_bloc::before {
  position: absolute;
  content: '';
  z-index: -1;
  width: 125%;
  height: 240%;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url(../../../images/lp/04/support/support_bgi.png) no-repeat center bottom / 100% auto;
}

/* ヘッダー */
.support_header_bloc {
  width: 76.6%;
  margin: auto;
}

/* サポート一覧 */
.support_list {
  width: 98%;
  margin: 1.47em 0 0 1.5%;
}

.support_each_bloc {
  width: 30%;
}

/* サポート１ */
.support_01_cap {
  width: 62%;
  margin: 0.2em auto 0 15.8%;
}

.support_01_txt {
  width: 73.8%;
  margin: 1em auto 0 10.4%;
}

/* サポート２ */
.support_02_cap {
  width: 42%;
  margin: 0.2em auto 0;
}

.support_02_txt {
  width: 90%;
  margin: 1em auto 0 8%;
}

/* サポート３ */
.support_03_cap {
  width: 71.2%;
  margin: 0.2em auto 0 13%;
}

.support_03_txt {
  width: 100%;
  margin: 1em auto 0 -1.5%;
}

/*******************************************   */

/********************************************
  お客様の声
 */
.users_vc_bloc {
  position: relative;
  padding: 0.5em 0 2.38em;
  margin: 3.06em 0 0;
  font-size: 40px;
}

.users_vc_bloc::before {
  position: absolute;
  content: '';
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #a9dc73;
}

/* ヘッダー */
.users_vc_header_inner {
  width: 61.8%;
  padding: 0 2.12em;
  margin: auto;
}

/* 声の一覧 */
.users_vc_list {
  margin: 2em 0 0;
}

.users_vc_each_bloc {
  width: 100%;
}

.users_vc_each_bloc:not(:first-of-type) {
  margin: 1.48em 0 0;
}

.uvc_photo_odd,
.uvc_photo_even {
  width: 20%;
  width: 190px;
}

.uvc_content_odd,
.uvc_content_even {
  width: 80%;
  width: calc(100% - 190px);
}

.uvc_photo_even {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
}

.uvc_content_even {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
}

/* 吹き出し */
.uvc_baloon_bloc_odd {
  position: relative;
  margin: 0 0 0 0.3em;
  padding: 1.3em 0.82em 0.8em 1.84em;
}

.uvc_baloon_bloc_odd::before {
  position: absolute;
  content: '';
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-style: solid;
  border-width: 1.2em;
  -webkit-border-image: url(../../../images/lp/04/users_voice/users_voice_baloon_bgi_left.png) 100 round;
  -o-border-image: url(../../../images/lp/04/users_voice/users_voice_baloon_bgi_left.png) 100 round;
  border-image: url(../../../images/lp/04/users_voice/users_voice_baloon_bgi_left.png) 100 fill round;
}

.uvc_baloon_bloc_even {
  position: relative;
  margin: 0 0.3em 0 0;
  padding: 1.3em 1.84em 0.8em 0.82em;
}

.uvc_baloon_bloc_even::before {
  position: absolute;
  content: '';
  z-index: -1;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border-style: solid;
  border-width: 1.2em;
  -webkit-border-image: url(../../../images/lp/04/users_voice/users_voice_baloon_bgi_right.png) 100 round;
  -o-border-image: url(../../../images/lp/04/users_voice/users_voice_baloon_bgi_right.png) 100 round;
  border-image: url(../../../images/lp/04/users_voice/users_voice_baloon_bgi_right.png) 100 fill round;
}

/*******************************************   */

/********************************************
  最後のフィーチャー
 */
.ff_con_bloc {
  position: relative;
}

.ff_con_bloc::before {
  position: absolute;
  content: '';
  z-index: -1;
  width: 122%;
  height: 100%;
  bottom: -2em;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background: url('../../../images/lp/04/final_feature/final_feature_bgi.png') no-repeat center bottom / 100% auto;
}

.final_feature_bloc {
  overflow: hidden;
  position: relative;
  margin: 0 0 2em;
}

.final_feature_copy_bloc {
  position: relative;
  width: 65.4%;
  margin: 0 0 0 3.2%;
  padding: 9% 0 0;
}

/* キャッチコピー */
.ff_copy_bloc {
  position: relative;
  z-index: 3;
  width: 99%;
  margin: 3.8% 0 0 0;
}

.ff_copy_inner {
  width: 94.5%;
  margin: 7% 0 0 2.8%;
}

/* ポイント */
.ff_point_bloc {
  width: 95.4%;
  padding: 3.8% 7.4% 3.2%;
  margin: 5.8% 0 0 1%;
  background-color: #fff;
  border-radius: 12px;
}

.ff_point_list > li:not(:first-of-type) {
  margin: 4.5% 0 0;
}

.ff_point_01 {
  padding: 0 16.2% 0 0;
}

.ff_point_02 {
  padding: 0 0.7% 0 0;
}

.ff_point_03 {
  padding: 0 5% 0 0;
}

.ff_msg_bloc {
  width: 59.6%;
  margin: 7.2% 0 0 1.6%;
}

/* ボタン */
.ff_btn_bloc {
  position: relative;
  width: 95.6%;
  margin: 5.8% 0 0 1.1%;
}

.ff_btn_inner {
  display: block;
}

/* イラスト */
.ff_illust_bloc {
  position: absolute;
  z-index: 2;
  width: 33.9%;
  height: 0;
  padding-top: 84%;
  right: -0.1%;
  bottom: 0;
}

.ff_illust {
  position: absolute;
  width: 100%;
  height: 100%;
  right: 0;
  bottom: -5%;
  background: url('../../../images/lp/04/common/common_illust.png') no-repeat right bottom / 100% auto;
}

/*******************************************   */
