/*!
Theme Name: makanai
Text Domain: makanai
*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

/* reset css */
*, *::before, *::after {
  box-sizing: border-box;
}

body, h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd, ul, ol {
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: auto;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
}

img, picture {
  max-width: 100%;
  display: block;
  height: auto;
}

input, button, textarea, select {
  font: inherit;
}

/* Common Styles
--------------------------------------------- */
html {
  overflow-y: scroll;
}

body {
  margin: 0;
  padding: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  line-height: 1.5;
  color: #333;
  font-size: 16px;
}

@media screen and (min-width:768px) {
  .sp_only {
    display: none !important;
  }
}

@media (max-width:768px) {
  .pc_only {
    display: none !important;
  }
}

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}

/* 課題部分
--------------------------------------------- */

.kadai {
  max-width: 620px;
}

/* ページトップ
--------------------------------------------- */

.pagetop_ico {
  display: block !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.4s ease, visibility 0.4s ease !important;
}

.pagetop_ico.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
}

.lead_01 span {
  font-size: 50px;
}

.lead_02 span {
  font-size: 40px;
}

.lead_03 span {
  color: #F05758;
}

.lead_04 span {
  font-size: 70px;
}

.lead_05 span {
  font-size: 70px;
}

.lead_06 span {
  font-size: 40px;
}

.cta_price span {
  font-size: 90px;
}

.fast_price span {
  font-size: 48px;
}


@media (max-width:767px) {
  .lead_01 span {
    font-size: 26px !important;
  }

  .lead_02 span {
    font-size: 26px !important;
  }

  .lead_03 span {
    color: #F05758;
  }

  .lead_04 span {
    font-size: 30px;
  }

  .lead_05 span {
    font-size: 40px;
  }

  .lead_06 span {
    font-size: 40px;
  }

  .cta_price span {
    font-size: 36px;
  }

  .fast_price span {
    font-size: 32px;
  }
}

/* プライステーブル
--------------------------------------------- */

.price_table {
  width: 100%;
  border-top: 1px solid #FFFFFF;
  border-left: 1px solid #FFFFFF;
}

.price_table th {
  padding: 24px 0;
}

.price_table th.service_ttl {
  border-bottom: 1px solid #DADADA;
  font-weight: 400;
}

.price_table tbody tr th {
  width: 25%;
  border-bottom: 1px solid #FFFFFF;
  border-right: 1px solid #FFFFFF;
  text-align: center
}

.price_table th.plan_light {
  background-color: #86ADC7;
  color: #FFFFFF;
}

.price_table th.plan_standard {
  background-color: #FF9000;
  color: #FFFFFF;
}

.price_table th.plan_full {
  background-color: #F05758;
  color: #FFFFFF;
}

.price_table th .price {
  font-weight: 400;
}

.price_table tbody tr td {
  text-align: center;
  border-bottom: 1px solid #FFFFFF;
  border-right: 1px solid #FFFFFF;
}

.price_table tbody tr td .hosoku {
  color: #514F4E;
  font-size: 0.9em;
}

.price_table td.plan_light {
  background-color: #F0F5F8;
  color: #6495C0;
}

.price_table td.plan_standard {
  background-color: #FFF1E0;
  color: #FF9000;
}

.price_table td.plan_full {
  background-color: #FDEAEB;
  color: #F05758;
}

@media (min-width:768px) {
  .plan_spttl {
    display: none;
  }
}

@media (max-width:767px) {
  .service_ttl {
    display: none;
  }

  .price_table tbody tr td {
    padding: 6px 0;
  }

  .price_table tbody tr td .hosoku {
    font-size: 12px;
  }

  .plan_spttl td {
    text-align: left !important;
    font-weight: 700;
    padding-top: 6px;
  }
}


/* オプションテーブル
--------------------------------------------- */

.option_table {
  border-top: 1px solid #A19F9B;
  border-left: 1px solid #A19F9B;
}

.option_table th {
  width: 40%;
  background-color: #F8F7F5;
}

.option_table th .hosoku {
  font-weight: 400;
}

.option_table td {
  border-right: 1px solid #A19F9B;
}

.option_table th, .option_table td {
  border-bottom: 1px solid #A19F9B;
  text-align: left;
  padding: 24px;
}


@media (max-width:767px) {
  .option_table th, .option_table td {
    display: block;
    width: 100%;
    border-right: 1px solid #A19F9B;
  }
}