@charset "UTF-8";
body {
  background-image: url(../images/body-bg.webp);
  background-size: cover;
  background-attachment: fixed;
  background-position: bottom;
  font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
  color: #333;
}
@media screen and (min-width: 750px) {
  .body-inner {
    max-width: 750px;
    box-shadow: 0 1px 20px rgb(0 0 0 / 30%);
    background: #fff;
    margin-left: auto;
    margin-right: auto;
  }
}
img {
  width: 100%;
  margin-top: -1px; /*--隙間調整--*/
}


/*ctaエリアの設定（背景画像）*/
/* ============================================ */


/* 光るボタン */
/* ============================================ */

@keyframes shiny {
    0% {
        transform: scale(0) rotate(25deg);
        opacity: 0;
    }

    50% {
        transform: scale(1) rotate(25deg);
        opacity: 1;
    }

    100% {
        transform: scale(50) rotate(25deg);
        opacity: 0;
    }
}

.shiny-btn {
    position: relative;
    display: block;
    width: 100%;
    line-height: 40px;
    text-align: center;
    text-decoration: none;
    color: #ffffff;
    overflow: hidden;
}

.shiny-btn::after {
    content: '';
    position: absolute;
    top: -100px;
    left: -100px;
    width: 50px;
    height: 50px;
    background-image: linear-gradient(100deg,  rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 100%, rgba(255, 255, 255, 0) 0%);
    
    /* アニメーション */
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

/* 光るボタンここまで */
/* ============================================ */

/* メインコンテンツ記述 */
/* ============================================ */


.button_box_1, .button_box_3{
	position: relative;
}

.offer_button_1 {
    position: absolute;
    width: 85%;
    top: 27%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.offer_button_tel{
    position: absolute;
    width: 85%;
	top:72%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}


.offer_button_1 a:hover{
	opacity: .7;
	transition: .3s;
}




/*ctaエリアの設定（背景画像）ここまで*/
/* ============================================ */


/* 背景色設定 テキスト＆画像のコンテンツ設定 */
/* ============================================ */

.reason_bg {
  background-color: #dfe4ea;
  padding-bottom: 50px;
}

.service_bg {
    background-color: #e5f3fb;
    padding: 30px 0 50px;
}

.service_bg li {
    text-indent: -1em;
    padding-left: 1em;
	margin-bottom: 5px;
}

.posi_jirei_bg {
  background-color: #d7f0fe;
  padding: 10px 0 50px;
}

.white_bg {
  background-color: #FFF;
  padding: 10px 0 50px;
}

.message_bg {
  background-color: #f9f9f9;
  padding-bottom: 50px;
}

.jirei_bg{
	background-color:#eaf7fc;
	padding-bottom: 50px;
}



.border_bg {
	width: 88%;
    margin: auto;
	background-size: auto auto;
	background-color: rgba(69, 172, 229, 1);
	background-image: repeating-linear-gradient(140deg, transparent, transparent 7px, rgba(83, 180, 234, 0.68) 7px, rgba(83, 180, 234, 0.68) 9px );
	border-radius: 50px 0 50px 0;
	padding: 70px 0 80px;
	position: relative;
}

.yajirushi{
	position: absolute;
	top: -44px; /* 一番上に配置 */
    left: 50%; /* 水平方向の中央に配置 */
    transform: translateX(-50%); /* 中央揃えに調整 */
}

.offer{
	position: relative;
}

.picture{
    position: absolute;
    top: -68px;
    left: 50%;
    transform: translateX(-50%);
    width: 96%;
}

.inner_img{
	margin-bottom:15px;
}

.border_txt {
    width: 88%;
    margin: auto;
    color: #FFF;
    font-size: 28px;
    line-height: 1.5;
}


.border_bg h4{
    text-align: center;
    font-size: 32px;
    color: #FFF;
    line-height: 1.5;
	margin-bottom: 40px;
}

.border_bg strong{
	font-size: 38px;
}


.check{
	background-color: #FFF;
	background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px));
    background-size: 16px 16px;
    background-repeat: repeat;
    background-position: center center;
	width: 90%;
    margin: auto;
    border: 3px solid #5d6271;
}

.msg_box{
    background-color: #FFF;
    background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px));
    background-size: 16px 16px;
    background-repeat: repeat;
    background-position: center center;
    width: 90%;
    margin: auto;
    border: 3px solid #c188c1;
    padding: 30px;
}


.yellow_box{
	background-color: #fffae8;
	width: 90%;
    margin: auto;
    border: 3px solid #45ace5;
}

.point_yellow{
	background-color: #fffad7;
    width: 88%;
    margin: 0 auto 30px;
    padding: 35px 50px;
    border-radius: 50px 0 50px 0;
    position: relative;
}

.point_yellow h3{
	color: #FFF;
	font-size: 40px;
	margin-bottom: 10px;
	line-height: 1.6;
}

.point_yellow p{
	font-size: 27px;
    line-height: 1.4;
}

.point_yellow strong{
	background-color: #ec585b;
	padding: 5px;
}

.point_img_1{
	position: absolute;
	right: -5px;
	top: 15px;
}

.point_img_2{
	position: absolute;
	right: 0px;
	bottom: 0px;
}

.point_img_3{
	position: absolute;
	right: -10px;
	bottom: 0px;
}

.point_img_4{
    position: absolute;
    right: -20px;
    top: 5px;
}

.point_img_5{
	position: absolute;
	right: 30px;
	bottom: 0px;
}


.element.style {
    padding: 0 40px;
    text-align: right;
}

.notes {
	text-align: left;
    color: #515151;
    font-size: 18px;
    line-height: 1.5;
    padding: 20px 0;
}


.seika{
	background-color: #e0f3ff;
	padding:30px 0;
	padding: 10px 0 30px;
}

.seika_box, .seika_box_2 {
	width: 90%;
    margin: 0 auto 50px;
	background-color: #fffae8;
	border-radius: 50px 0 50px 0;
}


.seika_box_2 {
	border-radius: 0 50px   0;
}


.float_h3_box{
    margin-top: -50px;
    margin-bottom: 20px;
}

.seika_box h3, .seika_box_2 h3 {
    color: #FFF;
    line-height: 1.6;
}

.msg_box h3{
	color: #FFF;
    line-height: 1.6;
	margin-bottom: 10px;
}

.msg_box strong{
	background-color: #c188c1;
}

.jirei_r strong{
	color: #ec585b;
	background: -webkit-linear-gradient(transparent 70%, #fff7aa 70%);
	background: -o-linear-gradient(transparent 70%, #fff7aa 70%);
	background: linear-gradient(transparent 70%, #fff7aa 70%);
}

.seika h3 small{
	font-size: 30%;
    font-weight: lighter;
}

.seika p small{
	font-size: 60%;
    font-weight: normal;
}


.seika_box strong, .seika_box_2 strong, .msg_box strong{
	font-size: 47px;
}

.seika_h3_fst strong{
	background: rgb(84,173,222);
background: -webkit-linear-gradient(320deg, rgba(84,173,222,1) 72%, rgba(183,228,247,1) 100%);
background: -o-linear-gradient(320deg, rgba(84,173,222,1) 72%, rgba(183,228,247,1) 100%);
background: linear-gradient(50deg, rgba(84,173,222,1) 72%, rgba(183,228,247,1) 100%);
}

.msg_h3_fst strong{
	background: rgb(193,136,193);
	background: -webkit-linear-gradient(320deg, rgba(193,136,193,1) 72%, rgba(238,190,238,1) 100%);
	background: -o-linear-gradient(320deg, rgba(193,136,193,1) 72%, rgba(238,190,238,1) 100%);
	background: linear-gradient(50deg, rgba(193,136,193,1) 72%, rgba(238,190,238,1) 100%);
}


.voice{
	background-color: #f0f5f6;
	padding-bottom: 50px;
}

.voice_box{
    background-color: #FFF;
    width: 90%;
    margin: 0 auto 40px;
    font-size: 30px;
    line-height: 1.6;
    padding: 40px;
    clip-path: polygon(
    64px 0px,
    100% 0px, 
    100% calc(100% - 64px), 
    calc(100% - 64px) 100%,
    0px 100%, 
    0px 64px
  );
}

.voice_img{
	margin-bottom: 50px;
}

.red_txt{
	color: #ec585b;
	font-weight: 500;
}

.blue_txt{
	color: #54adde;
	font-weight: 500;
}

.pink_txt{
	color: #df7595;
	font-weight: 500;
}

.bgreen_txt{
	color: #2e9694;
	font-weight: 500;
}

.rblue_txt{
	color: #4082c4;
	font-weight: 500;
}

.purple_txt{
	color: #ba78ba;
	font-weight: 500;
}

.flow_bg{
	background-color: #4d99d4;
	padding: 30px 0 50px;
}


.flow_box {
    width: 90%;
    margin: 0 auto 20px;
    font-size: 30px;
    display: flex;
    background-color: #FFF;
    border-radius: 25px;
    padding: 50px 30px;
    align-items: center;
	letter-spacing: 1px;
}

.flow_box h3{
	font-size: 36px;
	margin-bottom: 10px;
	color: #4d99d4;
	font-weight: 500;
}

.flow_l {
    width: 22%;
    padding-right: 40px;
}

.flow_r {
    width: 78%;
	line-height: 1.4;
}

.sankaku{
	width: 48px;
	margin: 0 auto 20px;
}

.jirei_box {
    width: 90%;
    margin: 0 auto 20px;
    font-size: 30px;
    display: flex;
    letter-spacing: 1px;
    align-items: stretch;
}

.jirei_l {
    width: 10%;
    background-color: #ec585b;
    text-align: center;
    padding: 20px 0;
    border-radius: 10px 0 0 10px;
    display: flex; /* フレックスボックスを適用 */
    flex-direction: column; /* 縦方向に揃える */
    justify-content: center; /* 縦方向の中央揃え */
    align-items: center; /* 横方向の中央揃え */
}

.jirei_l p{
	line-height: 0;	
}

.jirei_l img{
	width: 19px
}

.jirei_r {
    width: 95%;
    line-height: 1.4;
    background-color: #FFF;
    display: flex;
    align-items: center;
    text-align: left;
    border-radius: 0 10px 10px 0;
    padding: 30px;
    letter-spacing: 2px;
}


.service-table {
    display: grid;
    grid-template-columns: 20% 80%;
    width: 90%;
    gap: 0;
    margin: auto;
	font-size: 30px;
}

.service-cell {
  padding: 8px 12px;
  text-align: left;
  border: 1px solid #ddd;
}

.service-heading {
  background-color: #54adde;
  color: #fff;
  writing-mode: vertical-rl;
  display: flex; /* flexboxを使って */
  justify-content: center; /* 横方向に中央揃え */
  align-items: center; /* 縦方向に中央揃え */
  text-align: center;
  padding: 30px 0;
}

.service-content {
  background-color: #fff;
  color: #333;
  padding: 30px;
}

.service-table .service-heading:first-child {
  border-top-left-radius: 50px;
}


.p_txt{
	font-size: 30px;
	line-height: 1.6;
	padding: 30px;
}

.m_txt{
	font-size: 30px;
	line-height: 1.6;
}




.h3_center, .h4_center{
	color: #FFF;
    text-align: center;
    font-size: 45px;
    font-weight: bold;
    line-height: 1.5;
}

strong {
	color: #FFF;
    background-color: #45ace5;
    padding: 3px;
    font-weight: 500;
}

.yellow {
    color: #fff18b;
}


.h3_center strong,  .h4_center strong{
	font-weight: bold;
}

.btn_3{
	width: 85%;
	margin: auto;
}


/*背景色設定 テキスト＆画像のコンテンツ設定）ここまで*/
/* ============================================ */

.flow_wrap{
    width: 90%;
    margin: 50px auto 50px;
    padding: 50px 30px;
    border: #FFF 3px solid;
	color: #FFF;
	font-size: 30px;
	line-height: 1.6;
}


.attention{
    width: 85%;
	color: #FFF;
	margin: 0 auto 60px;
}

.attention h3{
	border-left: 10px solid #720705;
    padding-left: 15px;
    border-bottom: 1px solid #FFF;
    padding: 10px 0 15px 20px;
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 30px;
}

.attention p{
	font-size: 30px;
	color: #FFF;
	line-height: 1.6;
}


.txt_link a:link{
	color:#e5c3c3 !important;
	text-decoration: underline;
	text-underline-offset: 7px;
}


/* コンテンツの横幅 */
/* ============================================ */
.contents-inner {
  width: 100%;
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
}
/* コンテンツの横幅 ここまで */
/* ============================================ */


/*フッターまでスクロールしたら消す*/
.is-hidden {
  visibility: hidden;
  opacity: 0;
}

.page-top {	
  position: fixed;
  bottom: 0;
  width: 750px;
  left: calc(50% - 750px/2);
  right: 20px;
  transition: 0.5s;
  z-index: 10;
}

.page-top_link {
  position: relative;
  display: block;
  border-radius: 10px;
}



/* QA */
/* ============================================ */

.qa_midashi{
	display: flex;
	align-items: center;
	color: #FFF;
	padding: 20px;
	margin-right: 30px;
	font-size: 28px;
	font-weight: 500;
	line-height: 1.5;
}

.qa_midashi span{
	width: 45px;
	margin-right: 10px;
	flex-shrink: 0;
}

.faq_flex{
	display: flex;
}

.faq_flex p:first-child{
	margin-right: 10px;
}

.faq__toggle-contents {
  padding: 0 20px;
}
.faq__toggle-title {
	position: relative;
    cursor: pointer;
    padding: 5px 0 10px;
    background-color: #b64e3b;
}

.faq__toggle-btn {
  position: absolute;
  top: 52%;
  right: 2%;
  transform: translateY(-50%);
  display: block;
  width: 24px;
  height: 24px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  border-radius: 50%;
}
.faq__toggle-btn:before,
.faq__toggle-btn:after {
  display: block;
  content: "";
  background-color: #FFF;
  position: absolute;
  width: 10px;
  height: 2px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.faq__toggle-btn:before {
  width: 2px;
  height: 10px;
}
.faq__toggle-title.selected .faq__toggle-btn:before {
  content: normal;
}
.faq__toggle-contents dd {
  display: none;
  font-size: 28px;
  padding: 10px;
  line-height: 1.8;
  margin-bottom: 20px;
  color: #333;
  background-color: #FFF;
  border-radius: 0 0 10px 10px;
}

  .faq {
	  padding-bottom: 50px;
  }
  .faq__toggle-contents {
		width: 95%;
		margin: 0 auto 20px;
	}
  .faq__toggle-btn:before {
    height: 15px;
  }
  .faq__toggle-btn:after {
    width: 15px;
  }
  .faq__toggle-contents dd {
	padding: 20px;
  }

.a_txt{
	width: 45px;
}

/* QA ここまで */
/* ============================================ */
.tab-links {
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
}

.tablink {
  color: #fff;
  padding: 20px 30px;
  margin: 0 10px;
  border: none;
  border-radius: 5px;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-size: 30px;
  transition: background-color 0.3s ease, color 0.3s ease;
  margin-bottom: 20px;
}

.tablink:hover {
  background-color: #0056b3; /* ホバー時の背景色 */
  color: #e0e0e0; /* ホバー時のテキスト色 */
}

.tablink.active {
  background-color: #003d7a; /* アクティブなタブの背景色 */
  color: #fff; /* アクティブなタブのテキスト色 */
}

/* 各タブのリンクの背景色 */
.tablink[href="#h3_1"] {
  background-color: #720705; /* 公演一覧1の赤色 */
}

.tablink[href="#h3_2"] {
  background-color: #27685a; /* 公演一覧2の緑色 */
}

.tablink[href="#h3_3"] {
  background-color: #283168; /* 公演一覧3の青色 */
}


.price_table {
  color: #FFF;
  font-size: 25px;
  width: 90%;
  margin: 0 auto 20px;
  overflow-x: auto;
}

table {
  border-spacing: 0;
  border-collapse: collapse; /* 行間の罫線を正しく表示 */
  width: 1100px;
}

table th, table td {
  border-top: 1px solid #300a07;
  border-left: 1px solid #300a07;
  border-right: 1px solid #300a07; /* 罫線を全体に追加 */
}

table th:first-child, table td:first-child {
  width: 350px;
}

/* 「人数」列の幅を広げる */
table th:nth-child(3), table td:nth-child(3) {
  width: 120px; /* お好みで幅を調整 */
}

table th {
	  padding: 15px 10px;
  background: #720705;
  color: #FFFFFF;
}

.t_center {
  text-align: center;
  padding: 20px 0;
}

table tr:nth-child(even) th {
  background: #7d1912;
}

table td {
  padding: 10px 10px;
  background: #FCFCFC;
  color: #300a07; /* ここで文字色を罫線の色と同じに設定 */
}

table tr:nth-child(even) td {
  background: #EEEEEE;
}

table th:last-child, table td:last-child {
  border-right: 1px solid #300a07;
}

table tr:last-child th, table tr:last-child td {
  border-bottom: 1px solid #300a07;
}

table tr:first-child :first-child {
  border-top-left-radius: 5px;
}

table tr:first-child :last-child {
  border-top-right-radius: 5px;
}

table tr:last-child :first-child {
  border-bottom-left-radius: 5px;
}

table tr:last-child :last-child {
  border-bottom-right-radius: 5px;
}

table tr:not(:first-child) th, table tr:not(:first-child) td {
  border-top: none; /* 行の上に罫線を表示しない */
}

/* 行の間に横線を追加する */
table tr {
  border-bottom: 1px solid #300a07; /* 行の下に横線を追加 */
}

table tr:first-child {
  border-top: none; /* 最初の行の上には横線を表示しない */
}

/* 「人数」列のテキストを左右中央に配置 */
table td:nth-child(3), table th:nth-child(3) {
  text-align: center; /* テキストを左右中央に配置 */
}

/* 一番上の行のテキストを中央揃えにして、余白を調整 */
table thead th {
  text-align: center; /* テキストを中央揃え */
  padding: 10px 0; /* 上下の余白を調整 */
}

/* テキストを上下中央に配置 */
th, td {
  padding: 0 10px; /* 左右の余白を調整 */
  vertical-align: middle; /* テキストを上下中央に配置 */
}

#price_table_2 table th, #price_table_2 table td {
  border-top: 1px solid #1a453c; /* 緑系の罫線色 */
  border-left: 1px solid #1a453c;
  border-right: 1px solid #1a453c;
}

#price_table_2 table th {
  padding: 15px 10px;
  background: #27685a; /* 緑系の背景色 */
  color: #FFFFFF;
}

#price_table_2 table tr:nth-child(even) th {
  background: #1f7d68; /* 緑系の背景色 */
}

#price_table_2 table td {
  padding: 10px 10px;
  color: #300a07; /* 緑系の文字色 */
}

#price_table_3 table th, #price_table_3 table td {
  border-top: 1px solid #191f42; /* 青系の罫線色 */
  border-left: 1px solid #191f42;
  border-right: 1px solid #191f42;
}

#price_table_3 table th {
  padding: 15px 10px;
  background: #283168; /* 青系の背景色 */
  color: #FFFFFF;
}

#price_table_3 table tr:nth-child(even) th {
  background: #474f7d; /* 青系の背景色 */
}

#price_table_3 table td {
  padding: 10px 10px;
  color: #300a07; /* 青系の文字色 */
}

.small_r {
  text-align: right;
  color: #FFF;
  width: 95%;
  font-size: 25px;
  margin-bottom: 50px;
}

/* リンクのスタイル */
.link-title a {
  color: #fff; /* リンクの文字色 */
  text-decoration: none; /* アンダーラインを削除 */
  position: relative; /* 疑似要素の位置調整 */
  padding-right: 30px; /* 右側に余白を追加して矢印がかぶらないように */
}

/* リンクのホバー時のスタイル */
.link-title a:hover {
  color: #e0e0e0; /* ホバー時の文字色 */
}

/* 疑似要素で右向き三角を追加 */
.link-title a::after {
  content: ''; /* 空のコンテンツを指定 */
  position: absolute; /* 絶対位置で配置 */
  right: 0; /* 右に配置 */
  top: 50%; /* 垂直中央揃え */
  transform: translateY(-50%); /* 垂直中央揃え */
  width: 0; /* 幅を0に */
  height: 0; /* 高さを0に */
  border-top: 7px solid transparent; /* 上に透明なボーダー */
  border-bottom: 7px solid transparent; /* 下に透明なボーダー */
  border-left: 10px solid #fff; /* 左に白い矢印のボーダー */
}

.link_title {
  position: relative;
  display: inline-block;
  padding-right: 20px; /* 三角のスペース */
  text-decoration: none; /* アンダーラインを消す */
}

.link_title::after {
  content: '▶'; /* 三角アイコンの内容 */
  position: absolute;
  right: 0; /* 右側に配置 */
  top: 50%;
  transform: translateY(-50%); /* 垂直中央揃え */
  color: #333; /* 三角アイコンの色 */
  font-size: 1em; /* アイコンのサイズ調整 */
  /* ここでアイコンのフォントサイズや色を調整できます */
}

/* テーブルのリンクのスタイル */
.price_table a.link_title {
  color: #FFF; /* リンクの色 */
  font-weight: bold; /* リンクの文字を太く */
  text-decoration: none; /* アンダーラインを消す */
}

/* テーブルのリンクのホバー時のスタイル */
.price_table a.link_title:hover {
}


.movie{
	text-align: center;
}


/* video */
/* ============================================ */
.video {
  position: relative;
}
.video__item img {
  width: 86%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
/* video ここまで */
/* ============================================ */

/* CTAボタン */
/* ============================================ */

/* CTAボタン ここまで */
/* ============================================ */

/* footer */
/* ============================================ */
footer {
  display: block;
  padding-top: 10px;
  border-top: 3px solid #ddd;
  background: #fff;
}
ul {
  list-style: none;
}
.footer_nav {
  text-align: center;
  padding: 10px 0;
}
.footer_nav li {
  display: inline-block;
  margin: 0 5px 0 0;
  border-right: #000 solid thin;
  font-size: 13px;
}
.footer_nav li:nth-child(2) {
  border-right: none;
}
.footer_nav li a {
  text-decoration: none;
  padding: 0 10px 0 0;
  color: #000;
}
.footer_nav li:last-child {
  border: none;
}
footer .copyright {
  text-align: center;
  padding: 10px 0;
  font-size: 12px;
  padding-bottom: 10px;
  opacity: 50%;
}
/* footer ここまで */
/* ============================================ */

/* 750px以下ここから */
/* ============================================ */

@media screen and (max-width: 750px) {
	
.sp_none{
	display: none;
}
	
.p_txt{
    font-size: 4vw;
	padding: 5% 5%;
	margin: 10px auto 10px;
}
	
.flow_wrap{
	font-size: 5vw;
	padding: 5% 5%;
	margin: 30px auto 30px;
}
	
.cta_txt {
    font-size: 5vw;
}
	
.cta_btn {
    margin-bottom: 20px;
}	
	
iframe{
	width: 90%;
}

.h3_center, .h4_center {
    font-size: 7vw;
    line-height: 1.3;
}

.sankaku {
    width: 45px;
    margin: 0 auto 2vw;
}	
	
.tablink {
    padding: 3% 5%;
    margin: 0 5px 20px;
    font-size: 5vw;
}	
	
.price_table {
    font-size: 3vw;
}
	
table {
    width: 880px;
}
	
table th:first-child, table td:first-child {
    width: 180px;
}
	
	
.image-container img {
    width: 180px;
}
	
	
.attention {
    width: 90%;
    margin: 0 auto 40px;
}	
	
.attention h3 {
    border-left: 5px solid #720705;
    padding-left: 10px;
    padding: 5px 0 10px 15px;
    font-size: 5vw;
	margin-bottom: 20px;
}
	
.attention p {
    font-size: 5vw;
}
	
.small_r {
    font-size: 4vw;
}
	
	
.qa_midashi {
    padding: 4vw;
    margin-right: 2vw;
    font-size: 4vw;
}
	
.faq__toggle-contents dd {
    margin-bottom: 2vw;
}

.faq__toggle-contents dd {
    font-size: 4vw;
    padding: 10px 5px;
}	
	
.faq {
    padding-bottom: 5vw;
	background-color: #FFF;
}
	
.cta {
    padding: 2vw 0;
}
	
.jirei_box, .border_txt, .voice_box, .flow_box, .m_txt, .point_yellow p  {
    font-size: 4vw;
}
	
	.faq__toggle-contents dd {
		font-size: 4vw;
		padding: 2vw 4vw;
	}
	
.picture {
    top: -12vw;
}
	
.point_yellow {
    padding: 6vw;
	margin-bottom: 4vw;
	}	
	
.point_yellow h3 {
    margin-bottom: 2vw;
}

.point_yellow strong {
    padding: 1vw;
}	
	
.message_bg {
    padding-bottom: 8vw;
}
	
.msg_box h3 {
    margin-bottom: 2vw;
}

.jirei_r {
    padding: 4vw;	
}	
	
.qa_midashi span {
    width: 7vw;
	}
	
.a_txt {
    width: 7vw;
}
	
.page-top {
    position: fixed;
    bottom: 0;
    width: 100%;
    left: 0;
    transition: 0.5s;
    z-index: 10;
}	
	
.jirei_l img {
    width: 3vw;
}
	
.jirei_l {
    width: 9vw;
}
	
.border_bg h4 {
    font-size: 5vw;
	margin-bottom: 6vw;
	}
	
.flow_box h3 {
    font-size: 5vw;
    margin-bottom: 5px;
}	
	
.border_bg strong {
    font-size: 6vw;
    background-color: transparent;
}

.border_bg {
	padding: 11vw 0 15vw;
}	
	
.seika_box, .seika_box_2 {
    margin: 0 auto 6vw;
}
	
.seika{
	padding-bottom: 3vw;
}
	
.float_h3_box {
    margin-top: -10vw;
    margin-bottom: 4vw;
}
	
.yajirushi img{
	width: 7px;
}
	
.yajirushi {
    top: -28px;
}
	
.seika_box strong, .seika_box_2 strong, .msg_box strong {
    font-size: 6.5vw;
}
	
.notes {
    font-size: 3vw;
	padding: 2vw;
}
	
.voice_img {
    margin-bottom: 4vw;
}
	
.voice_box {
		clip-path: polygon(32px 0px, 100% 0px, 100% calc(100% - 32px), calc(100% - 32px) 100%, 0px 100%, 0px 32px);
        margin: 0 auto 5vw;
        padding: 6vw;
}
	
.flow_bg {
    padding: 3vw 0 7vw;
}	
	
.voice {
    padding-bottom: 5vw;
}

.posi_jirei_bg {
    padding: 10px 0 8vw;
}	
	
.flow_l {
    padding-right: 3vw;
}	

.flow_box {
    padding: 5vw;
    margin: 0 auto 2vw;
}
	
.service-table {
    font-size: 4vw;
}

.service-content {
    padding: 4vw;
}	
	
.service-table {
    grid-template-columns: 18% 82%;
}

.service_bg {
    padding: 4vw 0 8vw;
}	
	
.faq__toggle-contents{
	padding: 0;
}
	
.faq__toggle-contents {
    padding: 1.5vw;
    margin-bottom: 1vw;
}
	
.faq__toggle-btn {
    width: 10px;
    height: 10px;
}
	
.msg_box {
    padding: 6vw 5vw;
}
	
.footer_nav li {
    font-size: 3vw;
}
	
footer .copyright {
    font-size: 2.5vw;
}
	

.point_yellow h3 {
    font-size: 5.5vw;
}
	
.point_img_1{
    width: 26vw;
    right: -3vw;
    top: 2vw;
}	

.point_img_2{
	width: 34vw;
}

.point_img_3 {
    width: 21vw;
}
	
.point_img_4{
    width: 30vw;
}
	
.point_img_5{
    width: 19vw;
    right: -1vw;
}
	
.white_bg {
    padding: 2vw 0 10vw;
}
	
.reason_bg {
    padding-bottom: 8vw;
}
	
.jirei_bg{
	padding-bottom: 5vw;
}
	
}

@media screen and (max-width: 500px) {
	
	
.price_table {
    font-size: 4vw;
}
	
iframe {
	height: 330px;
}

.red_bg {
	padding-bottom: 20px;
}	
	
strong {
    text-underline-offset: 6px;
	text-decoration-thickness: 1px;
}
	
.jirei_l {
	width: 11vw;
}
	
 .flow_box h3 {
	font-size: 4.5vw;
}
	
.sankaku {
	width: 30px;
	line-height: 0;
}
	

}