* {
	margin:0;
	padding:0;
}
body {
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3 ProN W4', 'Meiryo','MS PGothic', arial, helvetica, sans-serif;
}

*:focus {
  outline: none !important;
}

*:focus {
  box-shadow:none !important;
}

/* LINK */
a {
  color:rgb(87,93,112);
  text-decoration: none;
}

a:hover {
  color:rgb(87,93,112);
  text-decoration: none;
}

a.pink_link {
  color: rgb(255,136,179);
  text-decoration: none;
}

a.pink_link:hover {
  color: rgb(255,136,179);
  text-decoration: none;
}

a.help {
  text-decoration: none;
  color: rgb(87,93,112);
}

a.info {
  text-decoration: none;
  color: rgb(87,93,112);
}

li {
  list-style-type: none;
  padding: 3px;
}

img {
  height:auto;
  max-width: 100%;
}

p {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

button:focus {
	outline:0;
}

input:focus {
	outline:0;
}

/* 枠関連 */
.wrapper {
  min-height: 100vh;
  position: relative;
}

.info-wrapper {
  padding-top: 1rem;
  border-bottom: 1px solid #dcdcdc;
  min-height: 80px;
}

.help-wrapper {
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #dcdcdc;
}

.help-content {
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #dcdcdc;
}

/* 背景関連 */
.bg-gray {
  background-color: rgb(240,242,248);
}


/* 色 */
.color-state-gray {
  color: rgb(87,93,112);
}

.color-state-black {
  color: rgb(39,41,51);
}

.text-card-gray {
  color: rgb(87,93,112);
}

.text-warm-gray_important {
  color: rgb(152,152,152) !important;
}

/* 文字サイズ */
.ts-10 {
 font-size: 10px !important;
}
.ts-11 {
  font-size: 11px !important;
}
.ts-12 {
  font-size: 12px !important;
}
.ts-13 {
  font-size: 13px !important;
}
.ts-14 {
  font-size: 14px !important;
}
.ts-15 {
  font-size: 15px !important;
}
.ts-16 {
  font-size: 16px !important;
}
.ts-17 {
  font-size: 17px !important;
}
.ts-18 {
  font-size: 18px !important;
}
.ts-19 {
  font-size: 19px !important;
}
.ts-20 {
  font-size: 20px !important;
}

.ts-b {
  font-weight: bold;
}

.ht-15{
  font-size: 15px !important;
  font-weight: bold;
}

.ht-18{
  font-size: 18px !important;
  font-weight: bold;
}

.ht-20{
  font-size: 20px !important;
  font-weight: bold;
}

.bold {
  font-weight: bold;
}

.line-h-20 {
  line-height: 20px;
}

.line-h-21 {
  line-height: 21px;
}

.line-h-22 {
  line-height: 22px;
}

.line-h-23 {
  line-height: 23px;
}

.line-h-24 {
  line-height: 24px;
}

.line-h-25 {
  line-height: 25px;
}

.line-h-26 {
  line-height: 26px;
}

.line-h-27 {
  line-height: 27px;
}

.line-h-28 {
  line-height: 28px;
}

.line-h-29 {
  line-height: 29px;
}

.line-h-30 {
  line-height: 30px;
}

.text-bold {
  font-weight: bold;
}

/* 配置 */
.one-line-frame {
  display: flex;
  justify-content: space-between;
}

/* ボタン */
.btn_pinky {
  background-color: rgb(255,136,179);
}

.btn_red {
  background-color: rgb(255, 158, 158);
  color: #ffffff;
  border: none;
}

.btn_orange {
  background-color: rgb(255, 206, 158);
  color: #ffffff;
  border: none;
}

.btn_green {
  background-color: rgb(0, 189, 112);
  color: #ffffff;
  border: none;
}

.btn_yellow {
  background-color: rgba(205, 215, 34);
  color: #ffffff;
  border: none;
}

.btn_blue {
  background-color: rgb(28, 28, 96);
  color: #ffffff;
  border: none;
}

.btn_pink {
  background-color: rgb(255, 158, 255);
  color: #ffffff;
  border: none;
}

.btn_dark {
  background-color: rgb(54,54,54);
  color: #ffffff;
  border: none;
}

.btn_pale_gray {
  background-color: rgb(129, 145, 165);
  height: 61px;
}

.pale_gray {
  color: rgb(129, 145, 165);
}
.deep_blue {
  color: rgb(28, 28, 96);
}
.btn_deep_blue {
  background-color: rgb(28, 28, 96);
  color: #ffffff;
  border: none;
}
.btn_m {
    width: 240px;
    height: 38px;
}

.btn_contact_submit:disabled {
  background-color: rgb(54,54,54);
  color: #ffffff;
  height: 61px;
}

.btn_contact_submit {
  background-color: rgb(255,136,179);
  color: #ffffff;
  height: 61px;
}

.close_btn {
  z-index: 10000;
  position: absolute;
  top: 5px;
  right: 0;
  width: 40px;
  padding: 0 5px 10px 15px;
  cursor: pointer;
  -webkit-animation: animScale 2s ease 0s 1 normal;
  animation: animScale 2s ease 0s 1 normal;
}

.close_pink_btn {
  z-index: 10000;
  background-color: rgb(255,136,179);
  color: #ffffff !important;
  width : 100%;
}

.reset_btn, .scroll_top_btn {
  background-color: rgb(255,136,179);
  color: #ffffff !important;
  height: 55px;
  border: none;
}
.reset_btn, .scroll_top_btn :hover {
  background-color: rgb(255,136,179);
  color: #ffffff !important;
  height: 55px;
  border: none;
}

.over_line {
  border-top: 1px solid rgb(208,208,208);
}

.under_line {
  border-bottom: 1px solid rgb(208,208,208);
}

.under_line_middle {
  margin-left: 15px;
  margin-right: 15px;
  border-bottom: 1px solid rgb(208,208,208);
}

/* 見出し */
h1.title_h1 {
  font-family: 'Hiragino Mincho ProN','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W6','ヒラギノ角ゴシック','Hiragino Sans';
  font-size: 25px;
  padding-top: 0.5rem;
}

h1.top_h1 {
  font-family: 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W6','ヒラギノ角ゴシック','Hiragino Sans';
  font-size: 25px;
  padding-top: 0.5rem;
}

h2.top_h2 {
  font-family: 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W6','ヒラギノ角ゴシック','Hiragino Sans';
  font-size: 20px;
  padding-top: 0.5rem;
  font-weight: bold;
  padding-bottom: 10px;
  width: 100%;
  line-height: inherit;
}

h3.top_h3 {
  font-family: 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W6','ヒラギノ角ゴシック','Hiragino Sans';
  font-size: 20px;
  padding-top: 0.5rem;
}

/* 会社概要 */
h2.company {
  height: 17px;
  font-size: 17px;
  line-height: 18px;
  margin-left: 10px;
}

h3.company {
  font-family: 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W6','ヒラギノ角ゴシック','Hiragino Sans';
  height: 40px;
  padding: 0.5em;
  color: rgb(112 112 112);
  background: #ffffff;
  font-size: 12px;
  border-bottom: 1px solid rgb(208,208,208);
}

/* お知らせ */
.info_box {
  position: absolute;
  top: 5px;
  margin-bottom: 5px;
}
.info_day {
  font-size: 10px;
  margin-right: 10px;
  color:rgb(152,152,152);
}

.info_status {
  font-size: 8px;
}

.info_status_btn {
  font-size: 10px;
  max-height: 20px;
  min-width: 64px;
  max-width: 250px;
  line-height: 10px;
  padding-top: 5px;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 5px;
}

.info_message {
  margin-top: 20px;
  margin-bottom: 0px;
}

#info_img_header_top {
  max-height: 120px;
}

h2.info_top {
  font-size: 18px;
  line-height: 31px;
  color: rgb(87,93,112);
  font-weight: bold;
}

h3.info {
  font-size: 14px;
  height: 32px;
  padding: 0.5em;/*文字周りの余白*/
  color: #494949;/*文字色*/
  background: rgb(248,249,253);
  border-left: solid 5px rgb(87,93,112);
}


.card_buy_box {
  border: solid 1px #ccc;
  height: 100px;
  border-radius: 10px;
}

.card_buy_left_box {
  width: 30%;
  background:red;
  height:100px;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  padding: 10px;
}

.card_buy_right_box {
  width: 70%;
  margin-left: 30%;
  height:100px;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  padding: 10px;
  background-color: #ffffff;
}

.card_count {
  display: inline-block;
  position: absolute;
  right: 30px;
}

/* 入力 */
input.contact_mail {
  width: 100%;
  padding-bottom: 10px;
  font-size: 15px;
  height: 30px;
  line-height: 26px;
  border: none;
  border-bottom: 1px solid rgb(0,0,0);
  padding-top: 10px;
}

/* クリアボタン[×] */
.batsu {
  display: block;
  width: 14px;
  height: 14px;
  position: relative;
  cursor: pointer;
}

.batsu::before, .batsu::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background: rgb(152 152 152);
  transform: rotate(45deg);
  transform-origin:0% 50%;
  position: absolute;
  top: calc(14% - 5px);
  left: 14%;
}

.batsu::after {
  transform: rotate(-45deg);
  transform-origin:100% 50%;
  left: auto;
  right: 14%;
}

.position_right_20 {
  position: absolute;
  right: 20px;
}

.position_top_10 {
  position: absolute;
  top: 10px;
}

/* 矢印 */
.down_arrow {
  position: absolute;
  right: 0px;
  margin-right: 20px;
  margin-top: 10px;
}

/* 装飾関連 */
a.bold {
  font-weight: bold;
}

span.pink {
  color: rgb(239,43,118);
}
span.red {
  color: rgb(255,0,0);
}
span.required_mark {
  color: rgb(239,43,118);
  font-size: 11px;
  margin: 10px;
}

#page_back {
  margin-right: 10px;
  line-height: 3rem;
}

/*　縦棒　*/
.vertical_bar {
width: 5px;
height: 17px;
border-radius: 2.5px;
background: #575D70;
display: block;
line-height: 29px;
}

/* 画像ファイル */
input[type="file"] {
  display: none;
}

button.file {
  background-color: rgb(255,136,179);
  padding: 15px 80px;
  border-radius: 20px;
  display: inline-block;
  position: relative;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  cursor: pointer;
}
button.file:hover {
  background-color: rgb(255,136,179);
  padding: 15px 80px;
  border-radius: 20px;
  display: inline-block;
  position: relative;
  color: #ffffff;
  font-size: 14px;
  font-weight: bold;
  cursor: pointer;
}

.filename {
  font-size: 12px;
}



/* テキストエリア */
textarea.contact {
  height: 150px;
}

#str_count_box {
  display:inline-block;
  position: absolute;
  right: 15px;
}

/* プラン */
h2.plan {
  font-size: 14px;
  line-height: 31px;
  color :rgb(255,201,175);
  margin-top: 61px;
  text-align: center;
  font-weight: bold;
}

h3.plan {
  font-size: 22px;
  line-height: 44px;
  color :rgb(255,136,179);
  margin-top: 10px;
  margin-left: 24px;
  font-family: SeuratProN-B;
}

h4.plan {
  font-size: 15px;
  line-height: 26px;
}

.plan_text {
  font-size: 12px;
  line-height: 20px;
  color:rgb(152,152,152);
}

.plan_link_list {
  margin-left: 24px;
  font-size: 15px;
  line-height: 26px;
}

#plan_header {
  width: 100%;
}

.plan_tab {
  margin-top: 22px;
  width: 50%;
  font-size: 15px;
  line-height: 26px;
  text-align: center;
}

.free_plan_text {
  font-size: 10px;
  line-height: 17px;
  text-align: right;
  margin-right: 24px;
  margin-top:-10px;
}

.plan_by_btn {
  font-size: 17px;
  height : 50px;
  line-height : 55px;
  border-radius : 20px 20px 0px 0px;
  width: 230px;
  color: rgb(87,93,112);
  background-color: rgb(240,242,248);
  font-weight: bold;
}

.plan_by_btn :hover {
  font-size: 17px;
  height : 50px;
  line-height : 55px;
  border-radius : 20px 20px 0px 0px;
  width: 230px;
  background-color: rgb(240,242,248);
  font-weight: bold;
}

.plan_box {
  background-color: rgb(240,242,248);
  margin: 0 9px;
  border-radius: 20px;
  padding: 14px 7px;
  position: relative;
}

.plan_box .plan_pickup {
  position: absolute;
  top: -15%;
  left: 0;
  right: 0;
  margin: auto;
}

#plan_description {
  line-height: 17px;
  font-size: 10px;
  color:rgb(152,152,152);
  margin: 0 auto;
  margin-bottom: 15px;
  padding-left: 24px;
  padding-right: 24px;
}

#plan_expiration_text {
  line-height: 17px;
  font-size: 10px;
  color:rgb(152,152,152);
  margin-right: 5px;
}

#plan_expiration_date {
  font-size: 15px;
  line-height: 26px;
  color:rgb(239,43,118);
}

#plan_auto_text {
  color: rgb(39,41,51);
  line-height: 26px;
  font-size: 15px;
  font-weight: bold;
}

#plan_auto_pickup {
  color:rgb(239,43,118);
  line-height: 26px;
  font-size: 15px;
  font-weight: bold;
}

.plan_caution {
  font-size: 10px;
  color: rgb(112,112,112);
  line-height: 17px;
}

.plan_bg {
  background-color: rgb(88 167 255);
  border-bottom:  rgb(88 167 255);
  margin-top: -1px;
  max-width: 1125px;
 }

.bx-wrapper .bx-pager.bx-default-pager a {
  background:#C1C1C1 !important;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
  background:#FF88B3 !important;
}

#premium_button {
  width: auto;
  margin-top: 20px;
  margin-bottom: 129px;
}

#premium_tab{
  width: 100%;
  text-align: center;
}

#woman_tab {
  width: 100%;
  text-align: center;
}

li.active.plan_tab {
  border-bottom: inset rgb(255,136,179);
  font-weight: bold;
}

.head-wrapper {
  padding-left: 0;
  padding-right: 0;
  padding-top: 1rem;
  padding-bottom: 0;
}

.footer-wrapper {
  padding-left: 0;
  padding-right: 0;
  padding-top: 2rem;
  padding-bottom: 2rem;
  position: relative;
  bottom: 0;
}


@media screen and (min-width: 680px){
  .pc { display:block; }
  .sp { display:none; }
}
@media screen and (max-width: 680px){
  .pc { display:none; }
  .sp { display:block; }
}

/* モーダル */
.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
}
.modal_bg {
  background: rgba(0,0,0,0.8);
  height: 100vh;
  position: absolute;
  width: 100%;
}
.modal_content {
  border-radius: 15px;
  background: #fff;
  left: 50%;
  padding: 40px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  min-width: 333px;
  max-width: 500px;
  width: 80%;
  height: 300px;
  min-height: 300px;
  max-height: 400px;
}
.modal_title {
  font-size: 18px;
  color: rgb(255,136,179);
  line-height: 31px;
  font-weight: bold;
  margin:0 auto;
  margin-bottom:10px;
  text-align: center;
}

.modal_msg {
  font-size: 14px;
  color: rgb(152,152,152);
  line-height: 20px;
  margin:0 auto;
  margin-bottom:10px;
  text-align: center;
}
.modal_msg_pink {
  font-size: 12px;
  color: rgb(255,136,179);
  line-height: 20px;
  margin:0 auto;
  margin-top:10px;
  margin-bottom:10px;
  text-align: center;
}

.modal_btn {
  font-size: 14px;
  background-color: rgb(255,136,179);
  color: #ffffff;
  line-height: 24px;
  margin:0 auto;
  margin-top:30px;
  margin-bottom:10px;
  text-align: center;
  min-width: 250px;
  width: 80%;
  height: 45px;
  border-radius: 25px;
  border: none;
}

.pointer{
  cursor: pointer;
}

.modal_content_mini {
  background: #fff;
  left: 50%;
  padding: 40px;
  position: absolute;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 80%;
  min-height: 100px;
  max-height: 200px;
}

.full_height {
  height: 100vh;
}


.field-icon {
  color: #555;
  float: right;
  margin-right: 15px;
  margin-top: -30px;
  position: relative;
  z-index: 2;
}

/* 入力 */
input.password_check {
  width: 100%;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  font-size: 15px;
  height: 26px;
  line-height: 26px;
  border: none;
  border-bottom: 2px solid rgb(0,0,0);
}

#password_change_btn {
  height: 60px;
  line-height: 44px;
}

#logo {
  width: 90px;
  height: 77.8px;
  margin-top: 60px;
  margin-bottom: 40px;
}

#logo_maintenance {
  width: 165px;
  height: 187px;
  margin-top: 50px;
  margin-bottom: 61px;
}

#maintenance_top_message {
  font-family:  "ヒラギノ角ゴ ProN W3", HiraKakuProN-W3, 游ゴシック, "Yu Gothic", メイリオ, Meiryo, Verdana, Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: bold;
}

#maintenance_bottom {
  display: block;
  height: 100px;
  width: 100%;
  position: fixed;
  bottom: 50px;
}

.sub-title {
    font-weight: bold;
    font-size: 1.2rem;
    color: rgba(28,28,96,1);
    margin: 10px auto;
    text-align: center;
}