@charset "utf-8";
/* CSS Document */

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
	-webkit-text-size-adjust: 100%;
}
body::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100vh;
    background-image: url(images/bg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

hr {border: #D0D0D0 1px dotted; width: 100%; margin: 25px 0;}
/*------------------------------------*/

body {
	font-family:"ヒラギノ角ゴ Pro W0", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:1.3rem !important;
	color:#333333 !important;
	line-height:170%;
}

.container{
    max-width:900px !important;
}

.formbox{
  max-width:600px !important;
  margin:0 auto;
}

a:hover {
	opacity:0.7;
}

.big-f{
  font-size:29px;
}

.big-f2{
  font-size:35px;
}

.container{
  padding-right:5px !important;
  padding-left:5px !important;
}


.hidden_PC { display:block;}
.hidden_SP { display:none;}

.br-sp { display:block; }
.br-pc { display:none; }

.wrap {
	overflow: hidden;
}

header {
	width:100%;
	height: auto;
	text-align:center;
}
.catchArea{
padding:0 0 30px 160px;

}
header .toptxt{
font-size:1.2em;
text-align: center;
color: #555454;
font-weight: bold;
padding: 2% 0 0 30px;
}

.headtop{
  background-color:#000000;
  padding:15px 0;
  font-family: serif;
  font-weight:bold;
  color:#e6b422;
  font-size:35px;
  text-align:center;
  margin-bottom:20px;
}

.serif{
  font-family:serif;
}

.btnbg{
background: rgb(165,149,115);
background: linear-gradient(360deg, rgba(165,149,115,1) 0%, rgba(207,194,162,1) 100%);
color:#221715 !important;
font-family: serif;
border:0px !important;
}

.fluffy {
  animation: fluffy1 3s ease infinite;
}

@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}

.blink{
    animation:blink 2s ease-in-out infinite alternate;
}

@keyframes fluffy1 {
  0% { transform:translateY(0) }
  5% { transform:translateY(0) }
  10% { transform:translateY(0) }
  20% { transform:translateY(-15px) }
  25% { transform:translateY(0) }
  30% { transform:translateY(-15px) }
  50% { transform:translateY(0) }
  100% { transform:translateY(0) }
}

.catchtxtS{
font-size:1.2em;
text-align: center;
color: #ffffff;
}

.catchtxtM{
font-size:1.3em;
text-align: center;
color: #ffffff;
font-weight: bold;
line-height: 140%;
}

.catchtxtL{
font-size:3.0em;
text-align: center;
color: #ffffff;
font-weight: bold;
line-height: 140%;
}

header img {

	text-align:center;
}

.header_under {
	width:100%;
	text-align:center;
	background: #ffffff;
	padding: 25px 0;
}

.header_under img {
	width:100%;
}

.contents {
	width:100%;
	margin:0 auto;
}

.whitebg{
  background-color:#FFFFFF;
}

.blackbg{
  background-color:#151412;
}

.goldbg{
  background-image:url(images/gold-bg.jpg);
  background-attachment: cover;
  background-repeat: repeat;
  background-size:100%;
}

.glaybg{
  background-color:#F0F3F5;
}

.under{
  text-decoration: underline;
}

.white{
  color:#FFFFFF;
}

.gold{
  color:#685E2C
}

.blink {
  -webkit-animation: blink 1s ease infinite;
  animation: blink 1s ease infinite;
}
@-webkit-keyframes blink {
  0% {opacity: 0;}
  100% {opacity: 1;}
}
@keyframes blink {
  0% {opacity: 0;}
  100% {opacity: 1;}
}

#subBox {
  position: relative;
  background-image:url(images/subbg.jpg); 
  padding: 20px 0;
}

#subBox:after {
  content: '';
  display: block;
  position: absolute;
  box-sizing: border-box;
  bottom: -50px; /*マイナスボーダー幅の2倍*/
  left: 50%; /*ボーダー幅の2倍*/
  width: 50px; /*ボーダー幅の2倍*/
  height: 50px; /*ボーダー幅の2倍*/
  margin-left: -25px; /*マイナスボーダー幅*/
  border: #FFFFFF 25px solid; 
  border-top: transparent 25px solid; 
  background: #000000;
  z-index: 99;
}



#subBox_G {
  position: relative;
  background-image:url(images/subbg.jpg); 
  padding: 20px 0;
}

#subBox_G:after {
  content: '';
  display: block;
  position: absolute;
  box-sizing: border-box;
  bottom: -50px; /*マイナスボーダー幅の2倍*/
  left: 50%; /*ボーダー幅の2倍*/
  width: 50px; /*ボーダー幅の2倍*/
  height: 50px; /*ボーダー幅の2倍*/
  margin-left: -25px; /*マイナスボーダー幅*/
  border: #f2f2f2 25px solid; 
  border-top: transparent 25px solid; 
  background: #000000;
  z-index: 99;
}

#profBox {
  position: relative;
  background-image:url(images/profbg.jpg); 
  padding: 10% 5%;
  background-size:100%;
  margin-bottom: -40px;
    /* 画像を常に天地左右の中央に配置 */
  background-position: center center;
  /* 画像をタイル状に繰り返し表示しない */
  background-repeat: no-repeat;
  /* コンテンツの高さが画像の高さより大きい時、動かないように固定 */
  background-attachment: fixed;
  /* 表示するコンテナの大きさに基づいて、背景画像を調整 */
  background-size: cover;
   
}

.bg-grey{
  background:#E8EAED;
}


#contentsBox_W {
	position: relative;
	background: #ffffff;
	padding: 50px 0;
}

#contentsBox_W:after {
	content: '';
	display: block;
	position: absolute;
	box-sizing: border-box;
	bottom: -50px; /*マイナスボーダー幅の2倍*/
	left: 50%; /*ボーダー幅の2倍*/
	width: 50px; /*ボーダー幅の2倍*/
	height: 50px; /*ボーダー幅の2倍*/
	margin-left: -25px; /*マイナスボーダー幅*/
	border: #f2f2f2 25px solid; 
	border-top: transparent 25px solid; 
	background: #ffffff;
	z-index: 99;
}

#contentsBox_G {
	position: relative;
	background: #f2f2f2;
	margin: 0px auto 0;
	padding: 50px 0;
}

#contentsBox_G:after {
	content: '';
	display: block;
	position: absolute;
	box-sizing: border-box;
	bottom: -50px; /*マイナスボーダー幅の2倍*/
	left: 50%; /*ボーダー幅の2倍*/
	width: 50px; /*ボーダー幅の2倍*/
	height: 50px; /*ボーダー幅の2倍*/
	margin-left: -25px; /*マイナスボーダー幅*/
	border: #ffffff 25px solid; 
	border-top: transparent 25px solid; 
	background: #f2f2f2;
	z-index: 98;
}

#contentsBox_G02 {
	position: relative;
	background: #f2f2f2;
	margin: 0px auto 0;
	padding: 50px 0;
}

#contentsBox_W02 {
	position: relative;
	background: #ffffff;
	padding: 30px 0;
}


#contentsBox_db {
  background: rgb(2,0,36);
  background: linear-gradient(90deg, rgba(2,0,36,1) 0%, rgba(37,33,81,1) 35%, rgba(47,42,98,1) 100%);;
	position: relative;
	padding: 50px 0;
	color: #ffffff;
}

.center{text-align: center;}
.txt_right{text-align: right;}

.massage {
	width:700px;
	margin:20px auto
}

.massage_img {
	text-align:center;
	margin:0px auto
}

.massage_ttl {
	width:1000px;
	margin:0px auto;
}

#contents_b {
	width:80%;
	margin:0 auto;
}


ul {
  padding: 0em 1em 0em 2em;
  position: relative;
}

ul li {
  line-height: 0.5em;
  list-style-type: none!important;
  font-weight:bold;
  color:#261f17;
}

ul li:before {
  
  font-family: "Font Awesome 5 Free";
  content: "\f138";/*アイコンの種類*/
  position: absolute;
  left : 0.7em;/*左端からのアイコンまでの距離*/
  color: #261f17;/*アイコン色*/

}


.whitebox{
  background-color: #FFFFFF;
  width:90%;
  padding:15px;
  margin:30px auto;
}

.glaybox{
  background-color: #f2f2f2;
  width:90%;
  padding:15px;
  margin:30px auto;
}

.pcimage{
  width:950px;
  margin:0 auto;
}

table {
  width: 70%;
  font-size: .92em;
  border: 1px solid #efefef;
  margin: 10px auto;
  border-collapse: collapse;
  border-spacing: 0;
  font-weight:bold;
}

tbody {
  display: table-row-group;
  vertical-align: middle;
  border-color: inherit;
  text-align:center;
}

tr {
  border-bottom: 1px solid #efefef;
}

th {
  background-color: #eee;
  background-color: rgba(0,0,0,0.1);
  border: 1px solid #cfcfcf;
  padding: .8em;
  text-align: center;
}

td, th {
  line-height: 1.8;
  display: table-cell;
  vertical-align: inherit;
}

td {
  padding: .8em;
  border: 1px solid #cfcfcf;
  background: #fff;
}

dt {
  font-weight: bold;
  margin-bottom: 2%;
}

dd {
  margin-left: 0;
  font-size: .95em;
  margin-bottom: 4%;
  line-height: 1.8;
}

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

thead {
  display: table-header-group;
  vertical-align: middle;
  border-color: inherit;
  text-align:center;
  background-color:#000000 !important;
  color:#FFFFFF;
}

.bbg{
  background-color:#555555 !important;
  color:#FFFFFF !important;
}


.head_test {
    margin:  20px 0;                 /* デフォルトCSS打ち消し */
    font-size:  24px;           /* 文字サイズ指定 */
    position:  relative;        /* 位置調整 */
    font-weight:  normal;       /* 文字の太さ調整 */
    display:  inline-block;     /* インラインブロックにする */
    padding-top: 40px;          /* 余白指定 */
    padding-left: 40px;         /* 余白指定 */
    padding-bottom: 20px;       /* 余白指定 */
    font-weight:bold;
    z-index: 0;
    text-align: left;
}
p {
    margin:  0;                 /* デフォルトCSS打ち消し */
    line-height: 2;             /* 行間調整 */
}
.head_test:before {
    content:  '';               /* 空白の要素を作る */
    background-color: #ffeaac;  /* 背景色指定 */
    display:  block;            /* ブロック要素にする */
    position:  absolute;        /* 位置調整 */
    left:  0;                   /* 位置調整 */
    height: 90px;               /* 高さ指定 */
    width: 90px;                /* 幅指定 */
    border-radius:  50%;        /* 丸くする */
    top: 0;                     /* 位置調整 */
    z-index:  -1;               /* 重なり調整 */
}

dl{
  margin:30px 0;
}

dt{
  font-size:24px;
  font-weight:bold;
}

dd{
  margin-left:30px;
}

textarea,
input[type="number"],
input[type="text"] {
    width: 90%;
    padding: 10px 15px;
    font-size: 14px;
    font-size: 1.4rem;
    border: 1px solid #ccc;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
    display:block;
    margin:0 auto;
}

textarea {
    height: 70px; /* お好みの高さに */
}

/* フォーカス時の色変更 */

textarea:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="text"]:focus {
    border: 2px solid #333;
}

.animationBtn {
/*アニメーション*/
animation: animScale 3s infinite ease-out;
transform-origin: 50% 50%;
animation-play-state:running;
margin:0 auto;
display:block;

}
@keyframes animScale {
0% { transform: scale(0.8, 0.8); }
5% { transform: scale(1.2, 1.2); }
10% { transform: scale(1, 1); }
15% { transform: scale(1.1, 1.1); }
20% { transform: scale(1, 1); }
100% { transform: scale(1, 1); }
}



.red{
  color:#CF0004;
  font-weight:bold;
}

.red2{
  color:#ff1493;
  font-weight:bold;
 
}

.bold{
  font-weight:bold;
}

.blue{
  color:#0000ff;
  font-weight:bold;
}

.yellow{
  color:#ffd200;
  font-weight:bold;
}

.under{
text-decoration:underline;
}



.cdt{
  margin:0px auto 20px auto;
  display:block;
  font-size:22px;
  text-align:center;
  font-weight:bold;
  color:#CF0004;  
}

#contentsBox_city {
  background-attachment:fixed;
  width:100%;
  height:100%;
  background-image:url(images/city.jpg); 
  padding: 5% 2%;
  color: #ffffff;
}

ol.miss {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0;
  margin: 0 0 25px 0;
}
ol.miss li {
  position: relative;
  padding: 0.5em;
  line-height: 1.5em;
  background: #f1f8ff;
  border-left : solid 35px #5c9ee7;
  margin-bottom: 5px;
}

ol.miss li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: -35px;
  width: 35px;
  height: 1em;
  line-height: 1;
  text-align: center;
}

ol.light {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding: 0.3em 0.8em;
  border: solid 2px #00428e;
  width: 70%;
  margin: 15px auto;
}
ol.light li {
  border-bottom: dashed 1px #00428e;
  position: relative;
  padding: 0.5em 0.5em 0.5em 30px;
  line-height: 1.5em;
  margin-bottom: 0  !important;
  float: none;
}
ol.light li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  background: #00428e;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
ol.light li:last-of-type {
  border-bottom: none; /*最後のliの線だけ消す*/
}


ol.base{
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding: 0.3em 0.8em;
  border: solid 2px #d60077;
  width: 70%;
  margin: 15px auto;
  counter-reset: item 9;
}
ol.base li {
  border-bottom: dashed 1px #d60077;
  position: relative;
  padding: 0.5em 0.5em 0.5em 30px;
  line-height: 1.5em;
  margin-bottom: 0  !important;
  float: none;
}
ol.base li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  background: #d60077;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
   content: counter(item) " ";
    counter-increment: item;
}
ol.base li:last-of-type {
  border-bottom: none; /*最後のliの線だけ消す*/
}

ol.vip{
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding: 0.3em 0.8em;
  border: solid 2px #c6003a;
  width: 70%;
  margin: 15px auto;
  counter-reset: item 13;
}
ol.vip li {
  border-bottom: dashed 1px #c6003a;
  position: relative;
  padding: 0.5em 0.5em 0.5em 30px;
  line-height: 1.5em;
  margin-bottom: 0  !important;
  float: none;
}
ol.vip li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  background: #c6003a;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
   content: counter(item) " ";
    counter-increment: item;
}
ol.vip li:last-of-type {
  border-bottom: none; /*最後のliの線だけ消す*/
}


.box_reason {
padding: 0.5em 1em;
    margin: 2em auto 1em;
    font-weight: bold;
    color: #6091d3;/*文字色*/
    background: #FFF;
    border: solid 3px #6091d3;/*線*/
    border-radius: 10px;/*角の丸み*/
	text-align: center;
	width: 80%;
}
.box_reason p {
    margin: 0; 
    padding: 0;
}

/*--------------youtube--------------------*/
.responsive_video { 
    position: relative; 
    padding-bottom: 56.25%; 
}
.responsive_video video, 
.responsive_video iframe, 
.responsive_video object, 
.responsive_video embed { 
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
}

/*--------------ボタン--------------------*/

.btn-square {
  display: inline-block;
  padding: 0.7em 1em 1em;
  text-decoration: none;
  background: #e00404;/*ボタン色*/
  color: #FFF;
  font-size: 2.0em;
  font-weight: bold;
  border-bottom: solid 7px #b80505;
  border-radius: 3px;
  width: 60%;
  height: 64px;
  text-align: center;
  margin: 20px auto;
  line-height: 1.1em;
}
.btn-square:active {
  /*ボタンを押したとき*/
  -webkit-transform: translateY(4px);
  transform: translateY(4px);/*下に動く*/
  border-bottom: none;/*線を消す*/
}

.btnVIP {
background: #e60044;
border-bottom: solid 7px #c2023a;
}

.btnBASIC {
background: #e4007f;
border-bottom: solid 7px #b70367;
}

.btnLIGHT {
background: #237abb;
border-bottom: solid 7px #024f88;
}

.balloon2 {
  position: relative;
  display: inline-block;
  margin: 1.5em -10px 0 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #d1023f;
  font-size: 1.2em;
  background: #fcff16;
  border: solid 1px #555;
  box-sizing: border-box;
  font-weight: bold;
}

.balloon2:before {
  content: "";
  position: absolute;
  bottom: -24px;
  left: 50%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-top: 12px solid #fcff16;
  z-index: 2;
}

.balloon2:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 50%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-top: 14px solid #555;
  z-index: 1;
}

.balloon2 p {
  margin: 0;
  padding: 0;
}
/*--------------course--------------------*/

#sec_course {width:100%;
	margin:0 auto;
}
#sec_course .inner {
    margin: auto;
    padding: 0 25px;
    width: 1000px;
}

#sec_course .sec-course{
	padding: 15px 0 25px;
}
#sec_course .course-hline{
	margin-bottom: 20px;
}
#sec_course .course-list{
	margin-bottom: 10px;
}
#sec_course .course-list li{
	background-color: #fff;
	margin-bottom: 50px;
	position: relative;
	z-index: 0;
	list-style: none;
}
#sec_course .course-list li .course-tit{
	-webkit-transform: translateY(-20px);
	-ms-transform: translateY(-20px);
	transform: translateY(-20px);
	text-align: center;
	list-style: none;
}
#sec_course .course-wrap{
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: flex-end;
	align-items: flex-end;
	padding: 0 40px;
	margin: -105px 0 13px;
	position: relative;
}
#sec_course .course-wrap.just-center{
	-webkit-align-items: center;
	align-items: center;
}
#sec_course .course-service{padding-top: 0px; width: 70%; margin: 0 auto;}
#sec_course .course-list li .course-cir{
	margin-left: auto;
	list-style: none;
	margin: -50px 0 0 10px;
}
#sec_course .course-list li .course-txt{
	margin-top: 25px;
	font-size: 110%;
	list-style: none;
	padding: 0 25px;
}
#sec_course .course-note{
	font-size: 144.444%;
	margin: 20px 0 80px;
	text-align: center;
	text-indent: -20px;
	padding-left: 20px;
}
#sec_course .course-note:before{
	content: "※";
}

#sec_course .courseend{
	text-align: center;
	top: 100px;
	left: 20%;
	position: absolute;
	z-index: 1;
}

#sec_course dl{
width: 95%;
margin: 0 atuo;
clear: both;
}

#sec_course dt{
width: 40%;
display: inline-block;
float: left;
}

#sec_course dt img{
width: 100%;
display: inline-block;
float: left;
}

#sec_course dd{
width: 56%;
display: inline-block;
padding-left: 3%;
float: left;
}

/*--------------table--------------------*/

.table_outer{
width: 950px;
margin: 20px auto 50px;
}

.table_con {
    text-align: left;
    white-space: nowrap;
    position: relative;
	vertical-align: middle;
	padding: 10px;
	}
	
.table_no-check {
    text-align: center;
    white-space: nowrap;
    position: relative;
	vertical-align: middle;
	padding: 10px;
	}
	
.raw_kisu {
    background: #fff;
}

.raw_gusu {
    background: #f2f2f2;
}

.table_light {
    color: #657777;
	vertical-align: middle;
	padding: 0px;
	text-align: center;
}

.table_basic {
    color: #ff56a2;
	vertical-align: middle;
	padding: 0 7px;
	text-align: center;
}

.table_vip {
    color: #c30000;
	vertical-align: middle;
	padding: 0 7px;
	text-align: center;
}


/*--------------lecturer-------------------*/

#lecturer {
	width:760px;
	margin:0px auto 0;
	padding:20px;
	overflow:hidden;
}


#lecturer .left {
	float:left;
	display:inline-block;
	width:38%;
	margin-right:15px;
}

#lecturer .right {
	float:left;
	display:inline-block;
	width:57%;
	margin-top:10px;
}

#lecturer p{
	font-size:0.9em;
	padding:30px;
	clear:both;
	width:80%;
	margin:0 auto;
}


/*--------------company-------------------*/

.company {
    max-width: 800px;
    margin: 10px auto;
}

.company dl {
    float: left;
    width: 48%;
	padding: 1%;
	font-size: 0.8em;
	line-height: 120%;
}

.company dt {
    float: left;
    width: 5em;
}

.company dd {
    padding-left: 6em;
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
    border-bottom: 1px solid #ccc;
	
}

/*--------------tokusho-------------------*/

#tokusho {
	width:700px;
	margin:50px auto;

}

#tokusho table {
	width:100%;
}

#tokusho table th {
	width:30%;
	padding:20px;
	text-align:center;
	background:#ECE3F3;
	border-bottom:#B5B5B5 1px dotted;
}

#tokusho table td {
	border-bottom:#B5B5B5 1px dotted;
	padding:20px 50px;
}

/*--------------footer--------------------*/

footer {
	width:100%;
	background:#222222;
	color:#ffffff;
	padding:20px 0;
	text-align:center;
}

footer p {
	font-size:0.7em;
	
}

footer span {
	font-size:0.7em;

}

footer a {
	color:#ffffff;

}

/*--------------hタグ関連--------------------*/

h1 {
    position: relative;
    width: 950px;
    text-align: center;
    margin: 0 auto;
    font-size: 2.6em;
    font-weight: 900;
    padding: 15px 0 30px;
    line-height: 110%;
}


h2 {
  position: relative;
  text-align: center;
  margin:50px auto;
  font-size: 2.6em;
  font-weight: 900;
  line-height: 110%;
}

h2:after {
  position: absolute;
  content: " ";
  display: block;
  bottom: -3px;
  width: 20%;
}



h3 {
  position: relative;
  line-height: 1.4;
  font-size:1.6em;
  width:100%;
  padding:0.25em 0em;
  margin:30px auto;
  display: inline-block;
  top:0;
  text-align:center;
  border-bottom:#C8C8C8 1px dotted;

}

h3.list {
  position: relative;
  line-height: 1.2;
  font-size:1.6em;
  padding:0.25em 0em 0.5em;
  display: inline-block;
  top:0;
  border-bottom:#C8C8C8 1px dotted;
  margin:20px auto 15px;
}



h4.light {
  position: relative;
  padding: 0.5em;
  border-bottom: #00428e 5px solid;
  background:#00428e;
  color:#fff;
  text-align:center;
  font-size:1.2em;
  font-weight:normal;
  line-height:1.2em;
  width:96%;
}

h4.light:after {
position: absolute;
content: '';
top: 100%;
left: 45%;
border: 12px solid transparent;
border-top: 20px solid #00428e;
width: 0;
height: 0;
}

h4.basic {
  position: relative;
  padding: 0.5em;
  border-bottom: #d60077 5px solid;
  background:#d60077;
  color:#fff;
  text-align:center;
  font-size:1.2em;
  font-weight:normal;
  line-height:1.2em;
  width:96%;
  font-weight:bold;
}

h4.basic:after {
position: absolute;
content: '';
top: 100%;
left: 45%;
border: 12px solid transparent;
border-top: 20px solid #d60077;
width: 0;
height: 0;
}

h4.vip {
  position: relative;
  padding: 0.5em;
  border-bottom: #c6003a 5px solid;
  background:#c6003a;
  color:#fff;
  text-align:center;
  font-size:1.2em;
  font-weight:normal;
  line-height:1.2em;
  width:96%;
}

h4.vip:after {
position: absolute;
content: '';
top: 100%;
left: 45%;
border: 12px solid transparent;
border-top: 20px solid #c6003a;
width: 0;
height: 0;
}

h5{
position: relative;
font-size:1.2em;
padding: 0.5em;
background: #c50008;
color: white;
margin:70px auto;
}

h5::before {
position: absolute;
content: '';
top: 100%;
left: 0;
margin-top:1px;
border: none;
border-bottom: solid 15px transparent;
border-right: solid 20px #c50008;
}

h6 {
  position: relative;
  text-align:center;
  line-height: 1.4;
  font-size:1.0em;
  width:30%;
  margin: 0 auto 25px;
  padding:0.25em 1em;
}

h6:before, h6:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
h6:before {
  border-left: solid 1px black;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}
h6:after {
  content: '';
  border-top: solid 1px black;
  border-right: solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}


/*--------------margin padding font--------------------*/
.mt20 { margin-top:20px; }
.mt30 { margin-top:30px; }
.mt50 { margin-top:50px; }
.mt70 { margin-top:70px; }
.mt100 { margin-top:100px; }
.mb20 { margin-bottom:20px; }
.mb30 { margin-bottom:30px; }
.mb50 { margin-bottom:50px; }
.mb70 { margin-bottom:70px; }
.mb100 { margin-bottom:100px; }

.pb30 { padding-bottom:30px; }
.pb50 { padding-bottom:50px; }

.minus_mt50 { margin-top: -50px; }
.fontxs { font-size:0.7em;}
.fonts { font-size:0.8em;}
.fontN_underline { background: #f4ff42; font-weight: bold;}
.fontM { font-size:1.3em;}
.fontM_bold { font-size:1.0em; font-weight:bold; }
.fontL { font-size:1.5em; line-height: 180%;}
.fontxL { font-size:1.7em;}
.fontxxL { font-size:1.9em;}
.fontxxL_u { font-size:1.6em; border-bottom:#FFD600 5px solid; line-height:170%;}

.center { text-align:center;}

.purple_udl{border-bottom:#8f82bc 1px solid; margin:30px 0 }
.font_red { color:#CF0003; font-size:1.2em; font-weight:bold;}
.font_red_un { color:#CF0003; font-size:1.5em; font-weight:bold; border-bottom: #F8FF00 7px solid; margin-bottom: 7px;}
.red { color:#CF0003; font-weight:bold;}

.maru {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  margin-right: 10px;
  flex-flow: column; 
  vertical-align: middle;
}

/* 円の大きさ */
.size_normal{
  width: 70px;
  height: 70px;
}

.size_list{
  width: 50px;
  height: 50px;
}
/* 文字の大きさ */
.letter3 {
  font-size: 0.7em;
  font-weight: bold;
  line-height: 1.0em;
}
/* 円と文字の色 */
.black {
  color:#f80000;
  border: 3px solid #f80000;
}

.gray {
 color:#ffffff;
  background:#646464;
}

.light_b {
  color:#ffffff;
  background: #00428e;
}

.basic_p {
  color:#ffffff;
  background: #d60077;
}

.vip_r {
  color:#ffffff;
  background: #c6003a;
}

.balloon1 {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 14px 15px;
  min-width: 120px;
  max-width: 100%;
  color: #fff;
  font-size: 1.2em;
  background: #c6003a;
  border-radius: 15px;
  font-weight: bold;
}

.balloon1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 70%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #c6003a;
}

.balloon1 p {
  margin: 0;
  padding: 0;
}

.notice_box {font-size:0.8em; 
line-height: 140%; 
padding: 10px 10px; 
background:#686868; 
color:#ffffff;
width: 700px;
margin: 15px auto 0;
}


/*--------------mobile------------
//////////////////////////////////-------*/

@media screen and (max-width:768px) { 
	

table {
  width:100%;
}

.pcimage{
  width:90%;
  margin:0 auto;
}


h1 {
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-size: 1.4em;
  font-weight: 900;
  padding: px 0 10px;
  line-height: 110%;
}

h1 img{
  width: 100%;
}


h2 {
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-size: 1.4em;
  font-weight: 900;
  padding: 15px 0 10px;
  line-height: 110%;
}

h2:after {
  position: absolute;
  content: " ";
  display: block;
  bottom: -3px;
  width: 20%;
}

h2 img{
  width: 100%;
}

h4.basic {
  position: relative;
  padding: 0.5em;
  border-bottom: #d60077 5px solid;
  background:#d60077;
  color:#fff;
  text-align:center;
  font-size:0.8em;
  font-weight:normal;
  line-height:1.2em;
  width:96%;
  font-weight:bold;
}

.container{
  font-size:16px;
}

#sec_course .inner {
    margin: auto;
    padding: 0 25px;
	width: 100%;
}

.headtop{
  background-color:#000000;
  padding:10px 0;
  color:;
  font-size:15px !important;
}

.hidden_PC { display:none;}
.hidden_SP { display:block;}

.big-f{
  font-size:22px;
}

.big-f2{
  font-size:22px;
}

.marker{
  background-color:#eee8aa;
}

header {
	width:100%;
	background: url("../images/main_bg_01_sp.png") no-repeat;
	background-size: 100%;
	text-align:center;
	height: auto;
}	

.catchArea{
padding:0 0 20px 0px;

}
header .toptxt{
font-size:0.9em;
line-height: 1.2em;
text-align: center;
color: #555454;
font-weight: bold;
padding: 2%;
}

.catchtxtS{
font-size:1.2em;
text-align: center;
color: #ffffff;
}

.catchtxtM{
font-size:1.1em;
text-align: center;
color: #ffffff;
font-weight: bold;
line-height: 140%;
padding: 0 5%;
}

.catchtxtL{
font-size:1.8em;
text-align: center;
color: #ffffff;
font-weight: bold;
line-height: 140%;
text-shadow: 2px 2px 0 #022b5e,
               -1px 1px 0 #022b5e,
               1px -1px 0 #022b5e,
               -1px -1px 0 #022b5e;
}



.header_under {
	width:100%;
	text-align:center;
	background: #ffffff;
	padding: 15px 0%;
}

.header_under img {
	width:100%;
}


hr {border: #D0D0D0 1px dotted; width: 96%;}
.contents {
	width:100%;
	margin:0 auto;
}

.contents img {
	width:100%;
	margin:0 auto;
} 

#contentsBox_W {
	position: relative;
	background: #ffffff;
	padding: 10% 5%;
}

#contentsBox_W:after {
	content: '';
	display: block;
	position: absolute;
	box-sizing: border-box;
	bottom: -50px; /*マイナスボーダー幅の2倍*/
	left: 50%; /*ボーダー幅の2倍*/
	width: 50px; /*ボーダー幅の2倍*/
	height: 50px; /*ボーダー幅の2倍*/
	margin-left: -25px; /*マイナスボーダー幅*/
	border: #f2f2f2 25px solid; 
	border-top: transparent 25px solid; 
	background: #ffffff;
	z-index: 99;
}

#contentsBox_G {
	position: relative;
	background: #f2f2f2;
	margin: 0px auto 0;
	padding: 10% 5%;
}

#contentsBox_G:after {
	content: '';
	display: block;
	position: absolute;
	box-sizing: border-box;
	bottom: -50px; /*マイナスボーダー幅の2倍*/
	left: 50%; /*ボーダー幅の2倍*/
	width: 50px; /*ボーダー幅の2倍*/
	height: 50px; /*ボーダー幅の2倍*/
	margin-left: -25px; /*マイナスボーダー幅*/
	border: #ffffff 25px solid; 
	border-top: transparent 25px solid; 
	background: #f2f2f2;
	z-index: 98;
}

#contentsBox_G02 {
	position: relative;
	background: #f2f2f2;
	margin: 0px auto 0;
  padding: 10% 5%;

}

#contentsBox_W02 {
	position: relative;
	background: #ffffff;
	padding: 10% 5%;
}

#contentsBox_db {
	position: relative;
  background: linear-gradient(90deg, rgba(2,0,36,1) 0%, rgba(37,33,81,1) 35%, rgba(47,42,98,1) 100%);;
	padding: 5% 2%;
	color: #ffffff;
}

#contentsBox_city {
  background-attachment:fixed;
  width:100%;
  height:100%;
  background-image:url(images/city.jpg); 
  padding: 5% 2%;
  color: #ffffff;
}

.massage {
	width:95%;
	margin:5% auto;
}

.massage_img {
	text-align:center;
	margin:10px auto
}

.massage_ttl {
	width:100%;
	margin:0px auto;
}

#contents_b {
	width:94%;
	margin:0 auto;
}

.container{
    overflow: hidden;
    width:100%;
}

.box_reason {
padding: 0.5em 1em;
    margin: 2em auto;
    font-weight: bold;
    color: #6091d3;/*文字色*/
    background: #FFF;
    border: solid 3px #6091d3;/*線*/
    border-radius: 10px;/*角の丸み*/
	text-align: center;
	width: 80%;
	clear: both;
}
.box_reason p {
    margin: 0; 
    padding: 0;
}

/*--------------youtube--------------------*/
.youtube_area{width: 100%;
margin: 20px auto;}

/*--------------ボタン--------------------*/

.btn-square {
  display: inline-block;
  padding: 0.5em 1.2em 1.2em;
  text-decoration: none;
  background: #668ad8;/*ボタン色*/
  color: #FFF;
  border-bottom: solid 4px #627295;
  border-radius: 3px;
  width: 80%;
  font-size: 1.4em;
}
.btn-square:active {
  /*ボタンを押したとき*/
  -webkit-transform: translateY(4px);
  transform: translateY(4px);/*下に動く*/
  border-bottom: none;/*線を消す*/
}

.btnVIP {
background: #e60044;
border-bottom: solid 7px #c2023a;
}

.btnBASIC {
background: #e4007f;
border-bottom: solid 7px #b70367;
}

.btnLIGHT {
background: #237abb;
border-bottom: solid 7px #024f88;
}
/*--------------massage--------------------*/

#massge {
	width:100%;
}

#massge p {
	width:96%;
	margin:0 auto;
}


/*--------------h_contents--------------------*/

#h_contents {
	width:100%;
	margin:70px auto;
}

#h_contents p {
	width:90%;
	margin:0 auto;
	text-align:left;
}

/*--------------course--------------------*/

#sec_course {width:100%;
	margin:0 auto;
}

#sec_course img {width:100%;
	margin:0 auto;
}

#sec_course .inner {
    margin: auto;
    padding: 0 2px;
    width: 100%;
}

#sec_course .sec-course{
	padding: 2% 0 2%;
}
#sec_course .course-hline{
	margin-bottom: 30px;
}
#sec_course .course-list{
	margin: 20px auto;
	padding: 0 0px;
}
#sec_course .course-list li{
	background-color: #fff;
	margin-bottom: 10px;
	padding: 0 0px 0px;
	position: relative;
	z-index: 0;
	list-style: none;
}
#sec_course .course-list li .course-tit{
	-webkit-transform: translateY(-20px);
	-ms-transform: translateY(-20px);
	transform: translateY(-20px);
	text-align: center;
	list-style: none;
}
#sec_course .course-wrap{
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: flex-end;
	align-items: flex-end;
	padding: 0 40px;
	margin: -105px 0 13px;
	position: relative;
}
#sec_course .course-wrap.just-center{
	-webkit-align-items: center;
	align-items: center;
	padding: 0;
}
#sec_course .course-service{padding-top: 20px; width: 100%;}
#sec_course .course-list li .course-cir{
	margin-left: auto;
	list-style: none;
	margin: 30px 0 0 10px;
}
#sec_course .course-list li .course-txt{
	margin-top: 5px;
	font-size: 100%;
	list-style: none;
	padding: 0 0px;
}
#sec_course .course-note{
	font-size: 144.444%;
	margin: 20px 0 80px;
	text-align: center;
	text-indent: -20px;
	padding-left: 20px;
}
#sec_course .course-note:before{
	content: "※";
}

#sec_course .courseend{
	text-align: center;
	top: 100px;
	left: 20%;
	position: absolute;
	z-index: 1;
}


ol.light {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding: 0.3em 0.8em;
  border: solid 2px #00428e;
  width: 90%;
  margin: 15px auto;
}
ol.light li {
  border-bottom: dashed 1px #00428e;
  position: relative;
  padding: 0.5em 0.5em 0.5em 30px !important;
  line-height: 1.3em;
  margin-bottom: 0  !important;
  float: none;
  font-size: 0.9em;
とある 
}
ol.light li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  background: #00428e;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
ol.light li:last-of-type {
  border-bottom: none; /*最後のliの線だけ消す*/
}


ol.base{
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding: 0.3em 0.8em;
  border: solid 2px #d60077;
  width: 90%;
  margin: 15px auto;
  counter-reset: item 10;
}
ol.base li {
  border-bottom: dashed 1px #d60077;
  position: relative;
  padding: 0.5em 0.5em 0.5em 30px !important;
  line-height: 1.3em;
  margin-bottom: 0  !important;
  float: none;
  font-size: 0.9em;
}
ol.base li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  background: #d60077;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
   content: counter(item) " ";
    counter-increment: item;
}
ol.base li:last-of-type {
  border-bottom: none; /*最後のliの線だけ消す*/
}

ol.vip{
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding: 0.3em 0.8em;
  border: solid 2px #c6003a;
  width: 90%;
  margin: 15px auto;
  counter-reset: item 14;
}
ol.vip li {
  border-bottom: dashed 1px #c6003a;
  position: relative;
  padding: 0.5em 0.5em 0.5em 30px !important;
  line-height: 1.3em;
  margin-bottom: 0  !important;
  float: none;
  font-size: 0.9em;
}
ol.vip li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  background: #c6003a;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
   content: counter(item) " ";
    counter-increment: item;
}
ol.vip li:last-of-type {
  border-bottom: none; /*最後のliの線だけ消す*/
}

#sec_course dl{
width: 95%;
margin: 0 atuo;
clear: both;
}

#sec_course dt{
width: 40%;
display: block;
float: none;
margin: 0 auto;
}

#sec_course dt img{
width: 100%;
display: inline-block;
padding-bottom: 2%;
}

#sec_course dd{
width: 96%;
display: inline-block;
padding-left: 3%;
float: none;
}


/*--------------table--------------------*/

.table_outer{
width: 100%;
margin: 20px auto;
}

.table_con {
    text-align: left;
    white-space: nowrap;
    position: relative;
	vertical-align: middle;
	padding: 10px 5px;
	line-height: 1.1em;
	}
	
.raw_kisu {
    background: #fff;
}

.raw_gusu {
    background: #f2f2f2;
}

.table_light {
    color: #657777;
	vertical-align: middle;
	padding: 0 7px;
	text-align: center;
}

.table_basic {
    color: #ff56a2;
	vertical-align: middle;
	padding: 0 7px;
	text-align: center;
	line-height: 1.1em;
}

.table_vip {
    color: #c30000;
	vertical-align: middle;
	padding: 0 10px;
	text-align: center;
	line-height: 1.1em;
}


/*--------------lecturer-------------------*/

#lecturer {
	width:100%;
	margin:40px auto 0;
	padding:0px;
	overflow:hidden;
}


#lecturer .left {
	float:none;
	display:block;
	width:50%;
	margin:15px auto;
	text-align:center;
}

#lecturer .right {
	float:none;
	display:block;
	width:90%;
	margin:15px auto ;
}

#lecturer p{
	font-size:0.9em;
	padding:30px;
	clear:both;
	width:80%;
	margin:0 auto;
}

/*--------------company--------------------*/
.company {
    max-width: 100%;
    margin: 10px auto;
	}
	
.l--clearfix {padding: 0 10%;}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.company dl {
    float: left;
    width: 100%;
	padding: 1%;
	font-size: 0.8em;
	line-height: 120%;
}

.company dt {
    float: left;
    width: 5em;
}

.company dd {
    padding:0 1em 0 6em;
    margin-bottom: 0.5em;
    padding-bottom: 0.5em;
    border-bottom: 1px solid #ccc;
	
}
/*--------------footer--------------------*/

footer {
	width:100%;
	background:#222222;
	color:#ffffff;
	padding:20px 0;
	text-align:center;
}

footer p {
	font-size:0.7em;
	
}

footer span {
	font-size:0.7em;

}

footer a {
	color:#ffffff;

}

/*--------------hタグ関連--------------------*/


h1 {
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-size: 1.4em;
  font-weight: 900;
  padding: 15px 0 10px;
  line-height: 110%;
}




h2 {
  position: relative;
  width: 100%;
  text-align: center;
  margin: 30px auto;
  font-size: 1.2em;
  font-weight: 900;
  line-height: 110%;
}

h2:after {
  position: absolute;
  content: " ";
  display: block;
  bottom: -3px;
  width: 20%;
}

h3 {
	display:block;
  margin:30px auto;
	text-align:center;
	margin:10px auto;
	font-size: 1.2em;
	line-height: 40%;
}

h3.list {
  position: relative;
  line-height: 1.2;
  font-size:1.2em;
  padding:0.25em 0em 0.5em;
  display: inline-block;
  top:0;
  border-bottom:#C8C8C8 1px dotted;
  margin:20px auto 15px;
}


h5{
position: relative;
font-size:1.0em;
padding: 0.5em;
color: white;
margin:30px 0;
}

h5::before {
position: absolute;
content: '';
top: 100%;
left: 0;
margin-top:1px;
border: none;
border-bottom: solid 15px transparent;
border-right: solid 20px #c50008;
}






/*--------------margin padding font--------------------*/

.mt50 { margin-top:10px; }
.mt70 { margin-top:70px; }
.mt100 { margin-top:100px; }
.minus_mt50 { margin-top: -30px; }

.fontxs { font-size:0.7em;}
.fonts { font-size:0.6em;}
.fontN_underline { background: #f4ff42; font-weight: bold;}
.fontM { font-size:1.1em;}
.fontM_bold { font-size:1.0em; font-weight:bold; }
.fontL { font-size:1.1em;}
.fontxL { font-size:1.3em;}
.fontxxL { font-size:1.8em;}
.fontxxL_u { font-size:1.2em; border-bottom:#FFD600 5px solid;}


.center { text-align:center;}

.br-sp { display:none; }
.br-pc { display:block; }

.maru {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  margin-right: 10px;
  flex-flow: column; 
  vertical-align: middle;
}

/* 円の大きさ */
.size_normal{
  width: 40px;
  height: 40px;
}

.size_list{
  width: 40px;
  height: 40px;
}
/* 文字の大きさ */
.letter3 {
  font-size: 0.7em;
  font-weight: bold;
  line-height: 1.0em;
}
/* 円と文字の色 */
.black {
  color:#f80000;
  border: 3px solid #f80000;
}

.gray {
 color:#ffffff;
  background:#646464;
}

.light_b {
  color:#ffffff;
  background: #00428e;
}

.basic_p {
  color:#ffffff;
  background: #d60077;
}

.vip_r {
  color:#ffffff;
  background: #c6003a;
}
.balloon1 {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 14px 15px;
  color: #fff;
  font-size: 1.0em;
  background: #c6003a;
  border-radius: 15px;
  font-weight: bold;
}

.balloon1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 70%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #c6003a;
}

.balloon1 p {
  margin: 0;
  padding: 0;
}

.notice_box {font-size:0.8em; 
line-height: 140%; 
padding: 10px 10px; 
background:#686868; 
color:#ffffff;
width: 94%;
margin: 10px auto 0;
}
}