@charset "UTF-8";
/* CSS Document */
/*-------------------------------------------------------------------------------------
PC用レイアウト（768px以上スクリーン）
----------------------------------------------------------------------------------------*/
/*--------------------------------------------------
共通設定(PC)
-----------------------------------------------------*/
/*body全体の初期スタイル調整*/
body {
  font-size: 62.5%; /*emの計算をしやすくするための定番設定*/
  font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
  font-weight: normal;
  color: #000;
}
/*リンク文字の設定*/
a {
  text-decoration: underline;
}
a:link, a:visited {
  color: #39f;
}
a:hover, a:active {
  color: #D10003;
}
/*ブラウザのCSSをリセット*/
p {
  margin: 0 !important;
  padding: 0 !important;
}
/*セクションエリアの共通設定*/
section {
  clear: both;
  overflow: auto;
}
/*--------------------------------------------------
見出しタグ設定（PC）
-----------------------------------------------------*/
h2{
  margin: 1em 0em;
  font-size: 3em;
  font-weight: bold;
  text-align: center;
  text-decoration: underline #f1c411 8px;
  text-underline-offset: 0.2em;
}
.under-red{
  text-decoration: underline #D10003 8px;
}

.under-white{
  text-decoration: underline #fff 8px;
}
h3{
  margin: 1em 0em;
  padding: 0.3em 0.6em;
  font-size: 1.6em;
  font-weight: bold;
  text-align: center;
}
.bg-yellow{
  background-color: #f1c411;
}
.left{
  padding-left: 0;
  text-align: left;

}
/*--------------------------------------------------
全体レイアウト／背景設定（PC）
-----------------------------------------------------*/
/*全体エリア（全体背景を設定するにはここ）*/
.main {
  background-color: #fff;
}
/*記事(ボディ)エリア*/
.article {
  background-color: #fff;
  font-size: 1.6em; /*=16px*/
}
/*記事(ボディ)エリアの行間*/
.article p {
  line-height: 1.6;
}
/*記事内の赤字、太字*/
.bold-red {
  font-weight: bold;
  color: #D10003; /* ここで好きな色を指定 */
}
/*カラムの幅*/
.article{
	width: 100%;
}

/*カラム全体の幅を変更する*/
.top_image_in,.section_inr {
  width: 950px;
}
.section_inr {
  margin: 4em auto; /*真ん中に要素を置きたいときに使う*/
}
/*--------------------------------------------------
上部固定ヘッダー設定
-----------------------------------------------------*/
/*上部固定ヘッダー全体*/
.header {
  position: sticky;
  position: -webkit-sticky;
  top: 0;
  z-index: 5000;
  background-color: #f1c411;
  border-bottom: 1px solid #ccc;
  overflow: auto;
}
/*ヘッダー内部をカラム幅にする*/
.header_inr {
  max-width: 950px;
  margin: 0 auto;
  overflow: hidden;
}
/*ヘッダーのロゴ*/
.header_logo {
  width: 30%;
  float: left;
  margin: 2em 1em 1em;

}
/*ヘッダーの問い合わせボタン*/
.header_mail {
  width: 30%;
  float: right;
  margin: 1em 0em 1em;
}
/*ヘッダー内の画像が常に幅100%になるように*/
.header_logo img, .header_mail img, .header_tel img {
  width: 100%;
}
/*--------------------------------------------------
ファーストビュー設定
-----------------------------------------------------*/
.top_image_in{
  margin: 0 auto;
}
.top_image_in img {
  width: 100%;
}
/*--------------------------------------------------
sectionの設定
-----------------------------------------------------*/
.seciton_01 {
  background-image: url(../images/bg_fuan.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 4em;
}
.section_02 {
  margin: 4em 3em 6em;
}
.section_03{
  background-color: #f1c411;
  padding: 1.5em 3em;
}
.jisseki{
  padding: 1.5em 3em 5em;
  background:#fff;
}
.container{
  display: flex;
  padding: 1em;
  margin: 2em auto 3em;
  background-color: #f1c4114d;
}
.box{
  flex: 1;
 margin: 1em 0.5em;
  padding: 0.5em 2em;
  text-align: left;
  background-color: #fff;
}
.section_point{
  padding: 4em 3em 5em;
}
.point{
  padding: 0.5em 10em;
  margin: 1em;
  border: #f1c411 solid 0.1em;
}
.point_flex{
  display: flex;
  align-items: center;
  margin: 1em auto;
  background-color: #fff;
}
.point_flex-item{
  margin: 1em;
}

.section_voice {
  background-image: url(../images/bg_voice.png);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 1.5em 3em 5em;
}
.voice{
  background-image: url(../images/bg-houganshi.png);
  margin: 2em 6em;
}
.voice-box{
  display: flex;
  align-items: center;
  margin: 1em 5em;
  padding-bottom: 1em;
}
.voice_flex-item{
  margin: 1em;
}
.round-img{
  border-radius: 50%;
  width: 150px;
  height: auto;
  margin: 0 3em;
}
.seciton_06 {
  padding: 1.5em 3em;
}
.section_faq{
  padding: 1.5em 3em 5em;
}
.section_profile{
  padding: 1.5em 3em 5em;
}
.profile-box{
  display: flex;
  align-items: flex-start;

}
.profile-photo{
  margin: 5em;
}
.seciton_ending-bg {
  background-image: url(../images/bg-building.jpg);
  background-position: center;
  background-size: cover;
  padding: 10em;
}

.right{
  text-align: right;
}
/* ------------------------------
   スライダー
------------------------------ */
.slide-container {
  width: 100%;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.slide-wrapper {
display: flex;
animation: slide-flow 20s infinite linear 1s both;
}
.slide{
width: 300px;
object-fit:cover;
border: 1px solid #ddd;
}
@keyframes slide-flow {
   0% {transform: translateX(0);}
100% {transform: translateX(-100%);}
}
/*--------------------------------------------------
チェックリスト設定
-----------------------------------------------------*/
ul.checklist {
  background-color: rgba(255, 255, 255, 0.9);
  border: 1px solid #ccc;
  list-style: none;
  padding: 2em;
  margin: 5em auto 2em;
}
ul.checklist li {
  background-image: url("../images/checkbox-img.png");
  background-repeat: no-repeat;
  background-size: 3.5%;
  padding-left: 3em;
  margin-bottom: 0.8em;
}
ul.checklist li:last-child {
  margin-bottom: 0em;
}
/*--------------------------------------------------
テーブル設定
-----------------------------------------------------*/
table {
  width: 100%;
  border-top: 1px solid #f1c411;
  border-left: 1px solid #f1c411;
  margin: 1em 0em 5em;
}
th, td {
  padding: 0.5em;
  border-right: 1px solid #f1c411;
  border-bottom: 1px solid #f1c411;
}
th {
  background-color: #f1c4114d;
  font-weight: bold;
  text-align: center;
}
td {
  background-color: #fff;
  text-align: left;
}
table ul {
  list-style-type: none; /* リストの装飾（点や番号）をなくす */
}
.table-title{
  font-weight: bold;
  color: #fff;
  text-align: center;
  background-color: #f1c411;
}

table .popular{
  width: 180px;
}

table th.popular{
  position: relative;
}

table th.popular span.no1{
  position: absolute;
  top: -10px;
  left:calc(50% - 30px);
  background: #D10003;
  width: 60px;
  font-size: 10px;
  border-radius: 15px;
  line-height: 1;
  padding: 5px;
  color: #fff;
}


/*スマホでは行が列になるテーブルタグ*/
.table_style_01 {
  text-align: left;
  vertical-align: middle;
}
/*--------------------------------------------------
フォーム設定
-----------------------------------------------------*/
.mailform {
  background-color: #fff;
  margin-bottom: 1em;
  padding: 1em 0em 1.5em;
  box-shadow: 0px 0px 1px #000;
}
.input {
  padding: 0 2em;
}
.input_style {
  background-color: #FFFBF0;
  width: 100%;
  height: 60px;
  margin-bottom: 0.5em;
  text-align: center;
  font-size: 1.4em;
}
input[type="image"] {
  width: 100%;
}
.caution {
  text-align: center;
  font-size: 0.8em;
  color: #F00;
}
/*--------------------------------------------------
よくある質問
-----------------------------------------------------*/
.box_qa {
  background-color: #f1c4114d;
  padding: 1em;
}
.box_qa_q {
  background-color: #fff;
  padding: 1em 2em 1em 3em;
  border-bottom: 1px solid #ccc;
  font-size: 1.2em;
  font-weight: bold;
  color: #D10003;
}
.box_qa_a {
  background-color: #fff;
  padding: 1em 2em 1em 3em;
}
.box_qa_q p, .box_qa_a p {
  text-indent: -2em;
}
/*--------------------------------------------------
CTAエリア
-----------------------------------------------------*/
.area_cta {
  background-color: #f1c411;
}
.area_cta_inr {
  background-color: #fff;
  box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .3);
  padding: 2em 4em;
  width: 950px;
  margin: 4em auto; /*真ん中に要素を置きたいときに使う*/
}


/*--------------------------------------------------
フッター部分
-----------------------------------------------------*/
.footer {
  background-color: #000000;
  padding: 2em 0em;
  text-align: center;
  font-size: 1.4em;
  color: #fff;
}
.footer a {
  color: #fff;
}
/*--------------------------------------------------
価格表部分
-----------------------------------------------------*/

.plans {
  display: flex;
}

.plan {
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, .3);
  width: 50%;
  margin: 2em 0.5em;
  padding: 2em auto;
  text-align: center;
  border: 2px solid #f1c411;
  border-radius: 10px;
  position: relative;
  z-index: 1; /* 大きなdivを小さなdivの下に配置 */
}

.plan-title {
  margin-bottom: 8px;
  font-size: 24px;
}

.plan-price {
  margin-bottom: 16px;
  line-height: 1;
  font-size: 32px;
  font-weight: bold;
  color: #D10003;
}

.plan-unit {
  display: block;
  margin-top: 5px;
  font-size: 13px;
  font-weight: normal;
  color: #aaa;
}

.plan-features {
  padding: 15px 0px;
  list-style: none;
}

.plan-recommended {
  width: 80%;
  padding: 10px;
  font-weight: bold;
  color: white;
  background: #D10003;
  border-radius: 4px;
  position: absolute;
  top: -10px; /* 適切な位置に配置 */
  left: 10%; /* 適切な位置に配置 */
  z-index: 2; /* 小さなdivを大きなdivの上に配置 */
}