@charset "UTF-8";
/* 学習塾hope CSS */
body {
  color: #333333;
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: normal;
  background: #fff;
  font-size: 14px;
  letter-spacing: 0.1em;
  overflow: hidden;
}
a {
  color: #444444;
  font-weight: bold;
  transition: all 300ms 0s ease !important;
}
a:hover {
  text-decoration: none;
  color: #38afd3;
}
strong, b {
  font-weight: 800;
}
.rich_font {
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
#global_menu > ul > li > a {
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
.pc #header {
  background-color: #fff;
  height: 80px;
}
.pc #header_inner {
  height: 80px;
}
.pc #header.type2 {
  background-color: #fff;
}
.pc .home #header {
  background-color: #fff;
}
.pc .header_fix #header {
  box-shadow: none;
}
.pc #header_logo .logo {
  line-height: 80px;
}
.pc #header_logo {
  height: 80px;
  line-height: 80px;
}
.pc #header_logo #logo_image {
  height: 80px;
  line-height: 80px;
}
.pc #header_logo #logo_image img {
  margin: 21px 0 auto 0;
  width: 260px;
}
.pc #global_menu {
  box-shadow: none !important;
  border-bottom: 1px solid #ececec;
  height: 80px;
}
.pc #global_menu > ul {
  text-align: right;
  height: 80px;
}
.pc #global_menu > ul > li {
  height: 80px;
}
.pc #global_menu ul ul a {
  font-size: 12px;
  background-color: #ffffff;
  color: #333333;
  font-weight: normal;
}
.pc #global_menu > ul > li > a {
  color: #333333;
  font-weight: bold;
  height: 80px;
  line-height: 80px;
  padding: 0 20px;
}
.pc #global_menu li.current-menu-item > a {
  color: #333333;
  background: #ffffff;
}
.pc #global_menu > ul > li > a:hover {
  color: #38afd3;
  background-color: #f6f6f6;
}
.pc #global_menu ul ul {
  left: -120px;
  bottom: 80px !important;
  top: 80px;
}
.pc .home #header.type2 #global_menu ul ul {
  top: 80px;
}
.pc #global_menu ul ul a:hover {
  color: #ffffff;
  background-color: #38afd3;
}
#footer_wrapper {
  background: #ffffff;
}
#footer_top {
  background: #ffffff;
}
#footer_top_inner {
  padding: 80px 0 0px;
}
#footer_logo {
  margin: 0;
}
#footer_social_link li:before {
  color: #38afd3;
}
#footer_social_link li:before:hover {
  color: #fff2cd;
}
#footer_logo img {
  width: 160px;
}
#footer_logo .logo {
  margin: 0;
}
.footer_menu li:first-child {
  margin: 0 0 10px 0;
}
.footer_menu li:first-child a, .footer_menu li:only-child a {
  font-size: 12px;
  color: #9c9c9c;
  font-weight: normal;
}
.footer_menu a {
  font-size: 12px;
  color: #9c9c9c;
  font-weight: normal;
}
#footer_menu_bottom li a {
  border-right: 1px solid #38afd3;
  color: #38afd3;
  font-weight: 300;
  font-size: 10px;
}
#footer_menu_bottom li a:hover {
  text-decoration: none;
  color: #76daf9;
}
#footer_bottom {
  width: 100%;
  padding: 20px 0 0px;
  background-color: #ffffff;
}
#copyright {
  background: #ffffff;
  color: #38afd3;
}
#copyright a {
  color: #38afd3;
  font-weight: 300;
}
#return_top a {
  background: #38afd3;
  box-sizing: border-box;
  margin: 0 20px 20px;
  box-shadow: 6px 8px 3px rgba(0, 0, 0, 0.14);
}
#return_top a:hover {
  background-color: #ffffff;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.06);
}
#return_top a:before {
  color: #ffffff;
  top: 21px;
  left: 21px;
}
#return_top a:hover:before {
  color: #38afd3;
}
/* フロントページ用の記述 */
#header_logo_index .link {
  background: rgba(255, 255, 255, 0);
  border: 5px solid #fff;
  box-shadow: none;
  margin-left: 240px;
}
#header_logo_index .link:hover {
  background-color: #ffffff;
  border-color: #ffffff;
}
#header_logo_index .link:before {
  color: #ffffff;
}
#header_logo_index .link:hover:before {
  color: #38afd3;
}
#header_logo_index .logo img {
  width: 900px;
}
#header_logo_index {
  width: 80%;
  top: calc(45% - 20px);
  text-align: left;
}
#index_content1 {
  background-color: #ffffff;
}
#index_content1 .index_content1 {
  padding: 50px 0;
}
#index_content1 .index_content_header .headline, #index_dis .index_content_header3 .headline {
  margin-bottom: 30px;
  padding-bottom: 20px;
  color: #333333;
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: normal;
}
#index_content1 .index_content_header .desc {
  text-align: center;
  color: #444444;
  font-size: 16px !important;
}
#index_content1 .index_content_header .desc p {
  margin-bottom: 30px;
}
.pc #index_content2 .index_content_header .headline {
  font-size: 24px;
  font-weight: 700;
  line-height: 36px;
  color: #ffffff;
}
.pc #index_content2 .index_content_header .desc {
  font-size: 14px;
  color: #ffffff;
}
#index_dis .index_content_header3 .headline {
  font-size: 45px !important;
  color: #444444 !important;
  font-weight: 700;
}
#index_dis_list li {
  width: 100%;
  height: auto;
  padding: 140px 0;
  background: #278fae;
}
.index_content_header {
  margin: 50px 0;
}
#index_dis_list li .desc p {
  text-align: center;
  color: #ffffff;
  font-weight: 100;
  margin-top: 20px;
}
.index_box_list .box {
  padding: 0 0 65px 0;
  box-shadow: 0px 15px 50px -21px rgba(0, 0, 0, 0.55);
  transition: all 300ms 0s ease;
}
.index_box_list .box:hover {
  box-shadow: 0px 25px 60px -11px rgba(0, 0, 0, 0.25);
}
.box.box1.clearfix, .box.box2.clearfix, .box.box3.clearfix {
  background-color: #ffffff;
}
.index_box_list .headline {
  font-size: 20px;
  color: #38afd3;
  background-repeat: no-repeat;
  text-align: center;
  font-weight: bold;
  margin: 0 0 20px;
}
.box .info .desc p {
  padding: 0px 30px 0px;
  margin-bottom: 30px;
  color: #444444;
  font-size: 14px;
  line-height: 1.8em;
  text-align: left;
  font-weight: 700;
}
.index_box_list .image img, #index_blog_list li .image img, #news_list_archive .image img {
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.index_box_list .link {
  background: #38afd3;
  color: #ffffff;
  box-sizing: border-box;
  margin-bottom: 30px;
  font-size: 10px;
  height: 40px;
  line-height: 38px;
}
.index_box_list .link:hover {
  background: #e6e6e6;
  border-color: #ffffff;
  color: #38afd3;
}
.index_box_list .link:after {
  color: #ffffff;
  font-size: 12px;
}
.index_box_list .link:hover:after {
  color: #38afd3;
}
#index_news {
  background-color: #ffffff;
}
#index_news_list li {
  border: 1px solid #38afd3;
  background-color: #ffffff;
}
#index_news_list li .date {
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
#index_news_list li .title:hover {
  color: #e85f5f;
}
#index_news_list li .title {
  color: #38afd3;
}
#index_content2 .index_content1 .index_content_header {
  margin-top: 0px;
  text-align: left;
}
.index_content_header2 .link a {
  color: #333333;
  font-weight: normal;
  background-color: #fff;
  box-sizing: border-box;
  line-height: 45px;
}
.index_content_header2 .link a:hover {
  background-color: #38afd3;
  color: #ffffff;
}
.index_content_header2 .link a:after {
  color: #333333;
}
.index_content_header2 .link a:hover:after {
  color: #ffffff;
}
#previous_next_page a {
  color: #ffffff;
  font-weight: 700;
  background: #f29440;
  box-sizing: border-box;
}
#previous_next_page a:hover {
  background-color: #ffffff;
  color: #f29645;
  border: #f29645 1px solid;
}
#previous_next_page a:after {
  color: #fff;
}
#previous_next_page a:hover:after {
  color: #f29645;
}
.index_content_header2 .headline {
  font-size: 24px !important;
  letter-spacing: 0.1em;
  border-bottom: 2px solid #333333;
  padding-bottom: 20px;
  font-weight: 700 !important;
}
ol#index_blog_list {
  letter-spacing: 0;
}
#index_blog_list li .category a {
  background-color: #38afd3;
  color: #ffffff;
  box-sizing: border-box;
  line-height: 30px;
  font-weight: normal;
}
#index_blog_list li .category a:hover {
  background-color: #ffffff;
  color: #38afd3;
}
#index_blog_list li .date {
  font-weight: normal;
}
.index_box_list {
  padding: 0px 0 65px 0;
}
#index_dis .index_content1 {
  padding: 80px 0 30px;
}
#index_dis .index_content_header .headline {
  font-size: 2em !important;
  color: #000;
  font-weight: bold;
}
#index_dis .desc p {
  margin-bottom: 55px;
  line-height: 30px;
  color: #38afd3;
  font-size: 16px;
  text-align: left;
  font-weight: 700;
}
.index_content_header3 {
  margin-bottom: 0px;
}
#index_dis .index_content_header3 .desc, #index_content2 .desc {
  color: #333333;
  font-size: 14px !important;
}
#index_dis .index_content_header3 .desc {
  font-size: 14px;
  color: #fff !important;
}
#index_dis_list li .title {
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 2px;
  text-align: center;
  width: 90%;
  margin: 0 auto;
  border-bottom: 1px solid;
  padding: 20px;
  box-sizing: border-box;
}
#index_dis_list li .image {
  background: #2b90af;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  opacity: 0;
  z-index: 1;
}
#index_dis_list li .image img {
  opacity: 0;
}
#index_dis_list li:hover .image img {
  opacity: 0;
}
.info {
  text-align: center;
}
#index_blog {
  background-color: #e7f6fb;
}
#index_blog h3.headline.rich_font, #index_news h3.headline.rich_font {
  color: #333333;
  font-weight: normal;
}
#index_blog_list li .title {
  font-weight: 700;
  color: #38afd3;
}
#index_dis_slider .image {
  background-color: #000;
}
#index_dis_slider .image img {
  opacity: 0.6;
}
#index_dis_slider .title {
  color: #ffffff;
  font-weight: normal;
  font-size: 2em !important;
  margin-bottom: 9px;
}
#index_dis_slider .link {
  background: none;
  line-height: 46px;
  color: #ffffff;
  border: 2px solid;
}
#index_dis_slider .link:hover {
  background-color: rgba(0, 0, 0, 0.32);
  color: #ffffff;
}
#index_dis_slider .link:after {
  color: #ffffff;
}
#index_dis_slider .link:hover:after {
  color: #ffffff;
}
#index_dis_slider .desc p {
  line-height: 250%;
  color: #fff;
}
p.title.rich_font {
  letter-spacing: 0.2em;
  font-weight: bold;
  font-size: 34px !important;
}
.slick-arrow:hover {
  background-color: #437bb8;
}
/* 特別ページ用の記述 */
#dis_single_title {
  margin: 0 0 70px;
  letter-spacing: 0.5em;
}
#dis_single_title .title {
  font-size: 50px;
  float: none;
  text-align: center;
  margin-top: 70px;
  color: #ff632a;
  margin-bottom: 20px;
  font-weight: bold;
}
#dis_single_title .desc {
  font-size: 16px;
  line-height: 180%;
  margin: 0;
  letter-spacing: 0em;
  border-bottom: none;
  float: none;
  text-align: center;
}
/* お知らせ一覧 */
#news_list_archive li {
  background: #ffffff;
  border: none;
  border-bottom: 1px solid #ddd;
}
#news_list_archive .title a:hover {
  color: #38afd3;
}
/* お知らせ詳細 */
#post_title {
  font-size: 30px;
  font-weight: 800;
}
.widget_archive, .widget_categories, .tcdw_archive_list_widget {
  background: none;
}
#related_post .headline span, #previous_next_post .label, .side_headline span {
  background-color: #38afd3;
  color: #ffffff;
  border-top: #38afd3 1px solid;
  border-right: #38afd3 1px solid;
  border-left: #38afd3 1px solid;
  box-sizing: border-box;
}
#related_post .headline {
  border-bottom: 1px solid #f8f7f4;
}
.side_headline {
  text-align: right;
  border-bottom: 1px solid #f8f7f4;
}
#previous_next_post a {
  background: #38afd3;
  border: none;
  color: #ffffff;
}
#previous_next_post a:hover {
  background-color: #248aa9;
  border: none;
}
/* ブログ一覧 */
p.no_post {
  margin-bottom: 100px;
}
#archive_headline {
  font-size: 40px;
  color: #444444;
  letter-spacing: 2px;
  font-weight: 800;
}
.page_navi p.back a {
  color: #ffffff;
  font-weight: normal;
  background: #38afd3;
  border-radius: 30px;
  box-sizing: border-box;
  font-size: 12px;
}
.page_navi p.back a:hover {
  background-color: #2189a9;
  color: #ffffff;
}
.page_navi p.back a:before {
  color: #ffffff;
}
.page_navi p.back a:hover:before {
  color: #ffffff;
}
/* ブログ詳細 */
#related_post li {
  margin: 0 28px 30px 0;
}
#post_meta_top .category a {
  background: #cccccc;
}
#post_meta_top .category a:hover {
  background: #333333;
}
/* 固定ページ用の記述 */
#main_contents {
  background-color: #ffffff;
}
.post_content .center_img {
  margin: 30px auto 40px !important;
  display: block;
}
.post_content a {
  color: #e45568;
  font-weight: bold;
}
.post_content a:hover {
  color: #c53f51;
}
.contents {
  margin-top: -100px;
  margin-bottom: 100px;
}
#main_col {
  margin: 60px auto 100px;
}
p.main_text {
  text-align: center;
}
h2.first_title, h3.first_title, h4.first_title {
  margin-top: 0px !important;
}
.cont_box {
  display: inline-block;
  width: 50%;
  box-sizing: border-box;
  margin-bottom: 30px;
  vertical-align: top;
}
#header_image.no_image {
  background-image: url(https://gjhope.com/wp/wp-content/uploads/2018/09/main_concept.jpg);
  background-color: #38afd3;
  background-size: cover;
}
#header_image .title {
  line-height: 1em;
  padding: 30px;
  color: #ffffff;
  text-align: center;
  font-size: 36px !important;
  letter-spacing: 0.2em;
}
#header_image .caption {
  color: #fff;
  text-align: center;
}
.caption {
  text-shadow: 0px 0px 0px #333333 !important;
}
#bread_crumb {
  background: none;
}
#bread_crumb li {
  color: #444444;
}
#bread_crumb li a {
  color: #444444;
}
#bread_crumb li.home a:before {
  color: #444444;
}
#bread_crumb li:after {
  color: #444444;
}
.post_content p {
  margin: 0 0 20px 0;
  line-height: 2em;
  font-size: 14px;
}
.post_content h2 {
  margin-top: 100px;
  margin-bottom: 40px;
  padding: 0;
  font-size: 30px;
  font-weight: 700;
  text-align: center;
  color: #38afd3;
  background-image: url(https://gjhope.com/wp/wp-content/uploads/2018/09/h2.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 50px;
  padding-bottom: 40px;
}
.post_content h3 {
  text-align: center;
  color: #333333;
  margin-bottom: 15px;
  line-height: 1.5em;
  font-size: 24px;
  font-weight: 700;
  margin-top: 100px;
  padding: 0;
}
.post_content h4 {
  font-size: 16px;
  margin: 20px 0 10px 0;
  font-weight: 700;
}
.post_content h5 {
  padding: 0 0 10px;
  border-bottom: 1px solid;
}
.post_content table {
  margin: 0 auto 30px;
  width: 70%;
}
.post_content td, .post_content th {
  padding: 15px 25px 15px;
  line-height: 1.6em;
  text-align: left;
  vertical-align: middle;
  font-size: 14px;
  border: 1px dashed #38afd3;
  border-right: none;
  border-left: none;
}
.post_content th {
  width: 25%;
  text-align: center;
  font-weight: 700;
}
.post_content dt {
  color: #b3b3b3;
}
.post_content dl {
  margin-bottom: 0px;
}
.post_content td dl {
  margin-bottom: 0px !important;
}
.post_content td dd {
  margin-bottom: 0px !important;
}
.post_content ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.post_content li, .post_content dt, .post_content dd {
  line-height: 1.8;
  margin-bottom: 6px;
  position: relative;
}
.post_content li:last-of-type {
  margin-bottom: 0;
}
.post_content ol li {
  padding-left: 0px;
  list-style: decimal outside none;
  background-image: none;
  line-height: 1.8em;
  margin: 0 0 20px;
  font-size: 14px;
}
.post_content blockquote {
  border: none;
  box-shadow: none;
  background-color: #f6f7ee;
  padding: 30px 30px 5px;
}
/* --- お問い合わせフォーム --- */
/* デザインカスタマイズ */
.wpcf7 {
  background: #fff;
  box-sizing: border-box;
  margin: 20px auto 0 !important;
  font-size: 14px;
  width: 80%;
  border: none;
}
.wpcf7 form {
  margin: 0;
  padding: 40px 40px 10px;
}
div.wpcf7 input.wpcf7-submit {
  color: #ffffff;
  font-weight: bold;
  font-size: 17px;
  width: 300px;
  height: 55px;
  margin: 0 auto;
  display: block;
  -moz-border-radius: 5px;
  -khtml-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  background: #ffa245;
  line-height: 16px;
}
.wpcf7-form {
  padding: 50px 30px 0;
}
.wpcf7 p {
  font-weight: 700;
  font-size: 1em;
}
.wpcf7 .required {
  background-color: #c82c2c;
  margin-left: 10px;
  padding: 2px 4px;
  border-radius: 4px;
  color: #fff;
  font-weight: 100;
  font-size: 0.8em;
}
.wpcf7 .any {
  background-color: #d3d6d5;
  margin-left: 10px;
  padding: 2px 3px;
  color: #fff;
  font-weight: 100;
  font-size: 0.8em;
}
span.wpcf7-list-item-label {
  font-weight: 100;
}
.wpcf7 input, .wpcf7 textarea {
  width: 100%;
  padding: 15px 20px;
  margin-top: 10px;
  margin-bottom: 20px;
  color: #000;
  border: none;
  background-color: #eeeeee;
  border-radius: 4px;
}
.wpcf7 input:focus, .wpcf7 textarea:focus {
  outline: none;
  border: none;
  background-color: #fafafa;
  box-shadow: none;
}
.wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input[type=radio] {
  width: auto;
  max-width: 100%;
  border: 1px solid #ccc;
  margin: 20px 0 0 30px;
  border-radius: 0px;
}
span.wpcf7-list-item {
  display: block;
}
.wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input[type=radio] {
  margin: 15px 0 5px;
}
span.wpcf7-list-item {
  margin: 0px 0 0 5px;
}
/* エラー個所をわかりやすく表示 */
.wpcf7 .wpcf7-not-valid {
  background: #ffdce2;
  margin-bottom: 0px;
}
.wpcf7 span.wpcf7-not-valid-tip {
  font-size: 80%;
  color: #c30e26;
  letter-spacing: 0;
}
.wpcf7 .wpcf7-response-output {
  margin: 10px 0 0;
  padding: 8px 35px 8px 14px;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.wpcf7 .wpcf7-validation-errors {
  color: #fff;
  text-shadow: none;
  background-color: #e06767;
  border: none;
  padding: 20px;
  border-radius: 0;
  text-align: center;
  margin: 20px 0px 30px;
}
.wpcf7 .wpcf7-mail-sent-ok {
  color: #ffffff;
  font-weight: bold;
  text-shadow: none;
  margin-bottom: 40px;
  border: none;
  padding: 20px;
  text-align: center;
  background-color: #0368b6;
}
/* サイド用 */
.side_widget a {
  font-weight: normal;
  font-size: 14px;
  margin-right: 10px;
}
.sideLink a {
  margin-bottom: 15px;
  margin-right: 0px;
  display: block;
}
.sideLink a:hover img {
  opacity: 0.5;
}
#post_meta_top .date {
  font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
/* 固定ページのための記述 */
.col-xs-120, .col-md-120, .col-md-60, .col-md-40, .col-md-30, .col-md-20 {
  position: relative;
  min-height: 1px;
}
.col-xs-120 {
  float: left;
}
.col-xs-120 {
  width: 100%;
}
.margin-100 {
  margin-bottom: 100px !important;
}
.margin-90 {
  margin-bottom: 90px !important;
}
.margin-80 {
  margin-bottom: 80px !important;
}
.margin-70 {
  margin-bottom: 70px !important;
}
.margin-60 {
  margin-bottom: 60px !important;
}
.margin-50 {
  margin-bottom: 50px !important;
}
.margin-40 {
  margin-bottom: 40px !important;
}
.margin-30 {
  margin-bottom: 30px !important;
}
.margin-20 {
  margin-bottom: 20px !important;
}
.margin-10 {
  margin-bottom: 10px !important;
}
.margin-0 {
  margin-bottom: 0px !important;
}
@media (max-width: 1400px) {
  .pc #global_menu > ul {
    text-align: right;
  }
}
@media screen and (max-device-width: 1000px) {
  #logo_image {
    width: 200px;
    height: auto;
  }
  #logo_image h1.logo {
    background: url(https://gjhope.com/wp/wp-content/uploads/2018/09/logo_h.png) no-repeat 0 50%;
    background-size: 90%;
  }
  #logo_image h1.logo a {
    display: none;
  }
  .pc #header_logo #logo_image img {
    margin: 20px 0 auto 0;
    width: 200px;
  }
}
@media (min-width: 992px) {
  /* フロントページのための記述 */
  /* 固定ページのための記述 */
  .col-xs-120 {
    padding: 0 15px;
  }
  .col-md-120, .col-md-80, .col-md-60, .col-md-40, .col-md-30, .col-md-20 {
    float: left;
  }
  .col-md-120 {
    width: 1170px;
  }
  .col-md-80 {
    width: 770px;
  }
  .top-col-md-60 {
    width: 520px;
  }
  .col-md-60 {
    width: 570px;
  }
  .col-md-40 {
    width: 370px;
  }
  .col-md-30 {
    width: 270px;
  }
  .col-md-20 {
    width: 210px;
  }
}
/* PC時は改行なし */
@media (max-width: 770px) {
  br.spnone {
    display: none;
  }
  #header {
    background: #ff6666;
  }
  #header_image {
    height: auto;
  }
  #header_image.no_image {
    background-color: #f2f2f2;
    height: 70px;
  }
  #header_logo_index {
    width: 90%;
    margin-top: 20%;
  }
  #footer_menu {
    display: none;
  }
  #footer_logo .logo {
    margin: 0 0 10px;
  }
  a.menu_button:hover, a.menu_button.active {
    background: #38afd3;
  }
  #global_menu a {
    color: #ffffff;
    background: #38afd3;
  }
  #global_menu ul ul a {
    padding-left: 28px;
    background: #34a3c4;
    color: #ffffff;
  }
  #global_menu .child_menu_button .icon:before {
    color: #ffffff;
    border: 1px solid #ffffff;
  }
  .index_content1 {
    padding: 50px 0 10px;
  }
  #index_content1 .index_content_header .headline {
    font-size: 2em !important;
  }
  #index_content1 .index_content_header .desc {
    text-align: left;
  }
  #index_dis_slider .title {
    font-size: 2em !important;
    margin-bottom: 10px;
  }
  #index_dis_list li .caption {
    background: none;
  }
  #index_dis_list li .title {
    border: none;
    margin: 0 auto;
    padding: 0;
    font-size: 30px;
  }
  .top-special {
    font-size: 1.3em;
  }
  a.menu_button:before {
    color: #333333;
  }
  a.menu_button {
    border-left: 1px solid #ffffff;
  }
  #header_inner {
    background-color: #fff;
  }
  p.logo img {
    width: 90%;
  }
  .index_box_list .link {
    line-height: 37px;
    margin-bottom: 50px;
    margin: 0 auto;
  }
  h3.headline.rich_font {
    font-size: 1.8em;
    margin-bottom: 20px;
  }
  #index_blog_list li {
    margin: 0 20px 60px 0;
  }
  #index_news_list li {
    width: 100%;
    margin-bottom: 20px;
  }
  #index_dis_list {
    margin: 0;
  }
  .index_box_list .box {
    width: 96%;
    padding: 0px;
    margin: 10px auto !important;
  }
  #index_dis .index_content_header3 .desc {
    text-align: left;
  }
  .index_box_list .info {
    padding: 30px 0 15px;
  }
  .box .info .desc p {
    margin-bottom: 10px;
  }
  #index_content2 h3.headline.rich_font {
    text-align: center;
    font-size: 1.6em !important;
    color: #ffffff;
    font-weight: 700;
  }
  #index_content2 .desc {
    color: #ffffff;
  }
  .index_content_header2 .link a {
    margin-top: 30px;
    line-height: 40px;
    font-size: 12px;
  }
  #index_dis_slider .link {
    line-height: 38px;
  }
  #index_dis_list li {}
  #index_dis_slider .desc p {
    line-height: 1.6em;
  }
  #index_news {
    padding-bottom: 100px;
  }
  .index_content_header2 .link {
    bottom: 100px;
  }
  #index_blog {
    padding-bottom: 90px;
  }
  #footer_logo img {
    padding-bottom: 20px;
  }
  #footer_bottom {
    padding: 20px 0 0;
  }
  ul#footer_social_link {
    margin-bottom: 0px;
  }
  #footer_menu_bottom {
    text-align: left;
    margin: 0px 0 0;
  }
  .footer_menu:nth-of-type(even) {
    margin-left: 0px;
  }
  #copyright {
    text-align: left;
    padding-left: 15px;
    font-size: 10px !important;
  }
  #header_image .image img {
    height: auto;
    width: 100%;
  }
  #footer_top_inner {
    padding: 35px 0 0;
  }
  #footer_logo {
    margin: 0;
    padding-bottom: 0px;
  }
  .footer_menu li:first-child a {
    background: #f8f2f2;
  }
  #footer_social_link li a {
    margin-bottom: 30px;
  }
  .footer_menu {
    margin: 0 0 30px;
    background-color: #fffcfc;
  }
  #footer_menu_bottom li a {
    border: none;
  }
  #footer_menu_bottom li a, #footer_menu_bottom li:last-child a {
    border-top: 1px dotted #6e6e6e;
  }
  #main_col {
    margin: 30px 0;
  }
  #dis_single_title .title {
    font-size: 3em;
    text-align: center;
    margin: 0 0 10px;
  }
  .post_content h1 {
    font-size: 2.3em;
    line-height: 1.5em;
    padding-bottom: 30px;
  }
  .post_content h2 {
    margin-bottom: 30px;
    font-size: 24px;
    padding-bottom: 30px;
  }
  .post_content h3 {
    font-size: 22px;
  }
  .post_content h4 {
    font-size: 1.2em;
  }
  .post_content table {
    width: 80%;
  }
  /* サイト別 */
  #header_logo_index .logo img {
    width: 100%;
  }
  #left_col {
    margin-bottom: 100px;
  }
  li.last_list {
    margin-bottom: 0px !important;
  }
  .wpcf7 {
    width: 90%;
  }
  div.wpcf7 input.wpcf7-submit {
    width: 100%;
  }
}
/* iPhoneヨコ */
@media screen and (max-width: 700px) {
  #header_logo_index {
    margin-top: 10%;
  }
  #logo_image_mobile img {
    width: 200px;
    margin: 13px 0 auto;
  }
  #index_content2 h3.headline.rich_font {
    font-size: 1.5em !important;
  }
  #index_content1 .index_content_header .headline {
    font-size: 1.8em !important;
  }
  #index_dis .index_content_header3 .headline {
    font-size: 25px !important;
    padding: 0;
  }
  #header_image .caption {
    top: 73%;
  }
  #index_content2 .desc {
    margin-bottom: 20px;
    line-height: 2em;
  }
  .index_content_header2 .headline {
    font-size: 30px !important;
  }
  .index_content1 {
    padding: 50px 0;
  }
  #header_image .title {
    font-size: 22px !important;
  }
  .post_content h2 {
    font-size: 22px;
  }
  .post_content h3 {
    font-size: 20px;
  }
  .post_content table {
    width: 100%;
  }
  .wpcf7 form {
    padding: 20px 20px 0;
  }
  .dp-footer-bar a {
    color: #38afd3 !important;
  }
  .dp-footer-bar {
    background: #ffffff !important;
  }
}
@media screen and (min-width: 486px) {
  br.pcnone {
    display: none;
  }
}
/* スマホ時は改行なし */
@media screen and (max-width: 485px) {
  body {
    font-size: 12px;
  }
  #index_content1 .index_content_header .desc, #index_content2 .desc, #index_dis .index_content_header3 .desc, .greeting_content p {
    font-size: 14px !important;
  }
  #index_content2 h3.headline.rich_font {
    text-align: center;
    font-size: 20px !important;
  }
  #index_dis .index_content1 {
    padding: 30px 0 0;
  }
  h3.headline.rich_font {
    text-align: center;
    font-size: 20px !important;
  }
  #main_col {
    padding-top: 0px;
  }
  .post_content h4 {
    font-size: 14px;
  }
  .post_content p {
    font-size: 12px;
  }
  #index_dis_list li .title {
    font-size: 26px;
    width: 100%;
    box-sizing: border-box;
  }
  #index_dis_list li .desc p {
    font-size: 10px;
  }
  #index_dis_list li {
    width: auto;
    padding: 70px 0;
  }
  #header_logo_index .link {
    margin: 0 auto;
    border: 1px solid #ffffff;
  }
  .index_wide_image .image img {
    height: 100%;
    width: 100%;
  }
  .index_box_list .info {
    padding: 0 0 40px;
  }
  .index_box_list .box {
    width: 94%;
    margin: 0 auto 10px !important;
  }
  .box .info .desc p {
    margin-bottom: 20px;
  }
  #index_dis .index_content_header3 .desc {
    text-align: left;
  }
  #index_dis_list li .caption {
    background: none;
  }
  .index_wide_image {
    height: auto;
  }
  a.telText {
    width: 100%;
    padding: 20px 0;
    font-size: 1.3em;
  }
  #footer_logo img {
    width: 70%;
    margin-bottom: 20px;
  }
  .footer_menu {
    width: 100%;
    margin: 0 0 10px;
  }
  #header_image .title {
    font-size: 20px !important;
  }
  p.main_text {
    text-align: left;
  }
  .post_content h1 {
    font-size: 1.2em;
    margin-bottom: 10px;
  }
  .post_content h2 {
    font-size: 20px;
    letter-spacing: 0em;
    margin-top: 100px;
    line-height: 27px;
    padding-bottom: 25px;
    margin-bottom: 25px;
  }
  .post_content h3 {
    font-size: 18px;
  }
  .post_content table {
    width: 100%;
  }
  .post_content td, .post_content th {
    font-size: 10px;
    padding: 10px;
  }
  .post_content ol li {
    margin: 0 0 10px;
    font-size: 12px;
  }
  .wpcf7 {
    background: none;
    width: 100%;
    border: none;
  }
  .wpcf7 form {
    padding: 0;
  }
}
/* サイト別の記述 */
#dis_list_archive .active .caption {
  text-align: left;
}
#single_share_bottom {
  margin-top: 40px;
}
#dis_header_archive .headline {
  font-size: 2em;
}
#dis_list_archive .image img {
  opacity: 0.7;
}
/* フロントページオリジナルの記述 */
#header_youtube .overlay {
  background-image: url(https://gjhope.com/wp/wp-content/uploads/2018/09/main_bg.png);
  background-size: 3px;
}
#index_dis {
  background-image: url(https://gjhope.com/wp/wp-content/uploads/2018/09/bg_index_dis.png);
  background-size: 24px;
  padding: 20px 0 0;
}
#index_content2 {
  background-image: url(https://gjhope.com/wp/wp-content/uploads/2018/09/ng_index_content2.jpg);
  background-position: center top;
  background-size: cover;
}
a.footer_contact .index_content1 {
  padding: 0;
  color: #ffffff;
}
#footer_original {
  overflow: hidden;
  background: #38afd3;
}
a.footer_contact {
  display: block;
  padding: 100px 0;
  background-image: url(https://gjhope.com/wp/wp-content/uploads/2018/09/bg_footer_original.jpg);
  background-size: cover;
  background-position: center top;
}
a.footer_contact .index_content1 h2 {
  font-size: 32px;
  margin-bottom: 20px;
}
a.footer_contact .index_content1 p {
  font-size: 16px;
  line-height: 2em;
}
p.taiken_but {
  box-sizing: border-box;
  padding: 30px 0;
  border: 1px solid;
  border-left: none;
  border-right: none;
  font-size: 22px !important;
  margin: 40px 0 0;
  width: 500px;
}
a:hover.footer_contact {
  opacity: 0.7;
}
/* concept */
.single #main_contents, .page #main_contents, .blog #main_contents, .archive #main_contents {
  background-image: url(https://gjhope.com/wp/wp-content/uploads/2018/09/bg_cont.png);
  background-size: 20px;
}
#concept_sec {
  position: relative;
  background-color: #daf0f7;
  box-sizing: border-box;
  padding: 80px 80px 60px;
}
.concept_img {
  position: absolute;
  top: 0;
  left: -200px;
  z-index: 0;
  width: 50%;
}
.concept_text {
  position: relative;
  z-index: 1;
  padding-left: 45%;
}
.concept_text h2 {
  text-align: left;
  font-size: 26px;
  line-height: 36px;
  color: #38afd3;
  background: none;
  padding: 0;
  margin-bottom: 20px;
}
.concept_text h3 {
  text-align: left;
  font-size: 20px;
  font-weight: 700;
}
.bonus_sec {
  background-image: url(https://gjhope.com/wp/wp-content/uploads/2018/09/concept02.jpg);
  background-size: 50% auto;
  background-repeat: no-repeat;
  background-position: right center;
  padding: 80px 450px 80px 50px;
  background-color: #fff9ed;
  margin: 0 0 100px;
}
.bonus_sec h3 {
  margin-top: 0;
  text-align: left;
  font-weight: 700;
}
.bonus_sec p {
  margin-bottom: 0;
}
.concept_text02 {
  display: inline-block;
  width: 50%;
  box-sizing: border-box;
  margin-bottom: 230px;
  vertical-align: middle;
}
#concept_sec02 h2 {
  padding-bottom: 20px;
  text-align: left;
  background-position: left bottom;
  color: #444444;
  margin-bottom: 20px;
}
#concept_sec02 h3 {
  text-align: left;
  font-size: 20px;
  font-weight: 700;
  color: #38afd3;
}
.concept_img02 {
  display: inline-block;
  width: 50%;
  box-sizing: border-box;
  vertical-align: middle;
  padding-left: 35px;
  padding-top: 50px;
  border-top: 1px solid #38afd3;
}
.greeting_sec {
  width: 800px;
  margin: 0 auto;
}
.greeting.left {
  display: inline-block;
  width: 60%;
  box-sizing: border-box;
  padding-right: 40px;
  vertical-align: middle;
}
.greeting.left h2 {
  text-align: left;
  background: none;
  padding: 0;
  margin-bottom: 20px;
}
.greeting.right {
  display: inline-block;
  width: 40%;
  box-sizing: border-box;
  vertical-align: top;
}
p.name_text {
  text-align: right;
}
span.name {
  font-size: 20px;
  margin-left: 10px;
}
.greeting_sec p {
  font-size: 12px;
}
/* about */
.about_box {
  display: inline-block;
  height: 450px;
  width: 50%;
  vertical-align: top;
}
#map_box {
  height: 450px;
}
#rainbow_course {
  background-image: url(https://gjhope.com/wp/wp-content/uploads/2018/09/rainbow01.jpg);
  background-size: 600px;
  background-repeat: no-repeat;
  background-position: right top;
  padding-right: 470px;
  padding-top: 50px;
}
.rainbow_course_text h2, .rainbow_course_text h3 {
  text-align: left;
  background-position: left bottom;
}
.rainbow_course_text h3 {
  font-weight: 700;
}
.rainbow_course_price {
  width: 650px;
  box-sizing: border-box;
  background-color: rgb(56, 175, 211);
  text-align: center;
  padding: 50px;
  color: #ffffff;
  margin: 50px 0 0;
  border-radius: 20px;
}
.rainbow_course_price h3 {
  color: #ffffff;
  font-weight: 800;
  margin: 0 0 10px;
  padding: 0;
  letter-spacing: 10px;
}
p.main_text {
  text-align: center;
}
p.main_text.price {
  font-size: 30px;
  line-height: 1;
  font-weight: 700;
  color: #fff998;
}
p.price_caution {
  margin-bottom: 0;
}
p.price_caution strong {
  background: linear-gradient(transparent 50%, #3096b5 0%);
}
/* menu */
.cont_box.left {
  padding-right: 20px;
}
.cont_box.right {
  padding-left: 20px;
}
.price_box {
  text-align: center;
  border: 1px dashed #cecece;
  padding: 30px;
}
.price_box h3 {
  margin: 0 0 10px;
  font-weight: 700;
  color: #e85f5f;
}
p.menu_price {
  margin-bottom: 0;
  font-size: 24px;
}
.rainbow_course_price.menu_box {
  margin: 0 auto 30px;
}
a.rainbow_but {
  margin: 20px auto 0;
  display: block;
  border: 1px solid #fff;
  color: #ffffff;
  box-sizing: border-box;
  padding: 20px;
  border-radius: 40px;
}
a:hover.rainbow_but {
  background-color: #ffffff;
}
.price_sample {
  width: 25%;
  display: inline-block;
  box-sizing: border-box;
  padding: 15px;
  background-color: #ffffff;
}
p.sample_price {
  margin-bottom: 0;
  font-size: 26px;
  text-align: center;
  font-weight: 700;
  color: #d44949;
}
h4.sample_title {
  border-bottom: 1px solid #38afd3;
  padding-bottom: 20px;
  font-size: 16px;
}
/* recruit */
a.entry_but {
  display: block;
  width: 500px;
  margin: 0 auto 30px;
  text-align: center;
  background-color: #e85f5f;
  color: #ffffff;
  border-radius: 100px;
  padding: 20px;
  box-sizing: border-box;
  font-size: 20px;
}
a:hover.entry_but {
  background-color: #38afd3;
  color: #ffffff;
}
/* contact */
.contact_box {
  background-color: #e85f5f;
  text-align: center;
  color: #ffffff;
  width: 600px;
  margin: 0 auto 30px;
  box-sizing: border-box;
  padding: 30px;
  border-radius: 40px;
}
.contact_box h2 {
  background: none;
  color: #ffffff;
  padding: 0;
  margin-bottom: 20px;
  font-size: 20px;
}
p.tel_text {
  font-size: 40px;
  margin-bottom: 10px;
  line-height: 1;
}
p.time_text {
  font-size: 20px;
  margin-bottom: 10px;
}
p.close_text {
  margin-bottom: 0;
  font-size: 16px;
  line-height: 1;
}
/* faq */
.faq {
  width: 50%;
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
}
.faq.left {
  padding-right: 20px;
}
.faq.right {
  padding-left: 20px;
}
.faq h3 {
  background-image: url(https://gjhope.com/wp/wp-content/uploads/2018/09/faq.png);
  background-size: 50px;
  background-repeat: no-repeat;
  text-align: left;
  padding: 7px 0 7px 67px;
}
@media only screen and (max-width: 770px) {
  a.footer_contact .index_content1 {
    padding: 0 20px;
    width: 100%;
    box-sizing: border-box;
  }
  #header_logo_index .link {
    margin-left: auto;
  }
  /* concept */
  .concept_img {
    position: relative;
    left: 0;
    width: 100%;
  }
  .concept_text {
    padding: 0;
  }
  .bonus_sec {
    padding-right: 30%;
  }
  .concept_text02 {
    display: block;
    width: 100%;
    margin-bottom: 40px;
  }
  .concept_img02 {
    width: 100%;
    display: block;
    padding: 0;
    border: none;
    margin-bottom: 100px;
  }
  .greeting_sec {
    width: 100%;
  }
  /* about */
  .about_box {
    width: 100%;
  }
  /* rainbow */
  #rainbow_course {
    background-size: auto 500px;
    background-position: center bottom;
    padding: 0 0 520px;
    margin-bottom: 30px;
  }
  .rainbow_course_price {
    padding: 40px;
    margin: 0 auto;
  }
  /* menu */
  .cont_box.left {
    padding-right: 10px;
  }
  .cont_box.right {
    padding-left: 10px;
  }
  .price_sample {
    width: 50%;
  }
  /* faq */
  .faq {
    width: 100%;
    padding: 0 !important;
  }
  .faq h3 {
    padding: 10px 0 10px 60px;
    margin-top: 40px;
  }
}
@media only screen and (max-width: 700px) {
  p.taiken_but {
    width: 100%;
    font-size: 16px !important;
    padding: 15px 0;
  }
  .greeting.left {
    width: 100%;
    padding: 0;
  }
  .greeting.right {
    width: 100%;
    margin-bottom: 20px;
  }
  p.main_text {
    text-align: left;
  }
  p.tel_text a {
    color: #ffffff;
  }
  .contact_box {
    width: 100%;
  }
}
@media only screen and (max-width: 485px) {
  #concept_sec {
    padding: 20px;
  }
  .concept_text h2 {
    font-size: 22px;
  }
  .bonus_sec {
    background-size: auto 280px;
    padding: 20px 20px 300px;
    background-position: center bottom;
  }
  .bonus_sec h3 {
    font-size: 16px;
  }
  .rainbow_course_price {
    width: 100%;
    padding: 25px;
  }
  .rainbow_course_price p.main_text {
    text-align: center;
  }
  p.price_caution {
    text-align: left;
  }
  .cont_box {
    padding: 0 !important;
    width: 100%;
  }
  .price_sample {
    width: 100%;
    background: none;
    padding: 0;
    margin-bottom: 30px;
  }
  h4.sample_title {
    font-size: 12px;
    text-align: center;
    letter-spacing: 0px;
    padding-bottom: 10px;
    margin-bottom: 10px;
  }
  p.sample_price {
    line-height: 1;
  }
  a.entry_but {
    width: 100%;
  }
  p.tel_text {
    font-size: 30px;
  }
  p.time_text {
    font-size: 14px;
  }
  p.close_text {
    font-size: 12px;
  }
  #archive_headline {
    font-size: 22px;
  }
  .faq h3 {
    background-size: 40px;
    padding: 7px 0 7px 50px;
  }
}
/* フロントページ メリット */
section.individual-sec {
  padding: 70px 0;
  border-bottom: 3px solid #dddddd;
}
.individual-inner {
  line-height: 2;
  width: 86%;
  margin: 0 auto;
  max-width: 1200px;
  counter-reset: number 0;
}
.individual-inner h2 {
  text-align: center;
  line-height: 1;
  font-size: 2.5em;
  margin-bottom: 1em;
}
.individual-inner h2 span {
  font-size: 1.5em;
  color: #38afd3;
  background: linear-gradient(transparent 60%, #efff5e 0%);
}
.flex-inner {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
}
.individual-box {
  width: 30.33333333%;
  box-sizing: border-box;
  margin-right: 4.5%;
  position: relative;
}
.individual-box:last-of-type {
  margin-right: 0px;
}
.individual-box::before {
  counter-increment: number 1;
  content: "MERIT "counter(number) " ";
  position: absolute;
  line-height: 50px;
  width: 100%;
  text-align: center;
  font-size: 5em;
  font-weight: 700;
  top: 1em;
  color: #f5d2d2;
  z-index: -1;
}
.individual-box h3 {
  font-size: 1.4em;
  margin-bottom: 0.5em;
  color: #38afd3;
  line-height: 1.5;
}
@media only screen and (max-width: 970px) {
  .individual-box {
    width: 100%;
    margin-bottom: 3em;
    margin-right: 0;
  }
  .individual-box:last-of-type {
    margin-bottom: 0;
  }
  .individual-box::before {
    position: relative;
    top: 0;
    font-size: 1em;
    line-height: 1;
    color: #fb4d4d;
  }
}
/* menu new */
table.time-table-table {
  border: 1px solid #3aafd3;
  width: 1400px;
}
.post_content table.time-table-table th, .post_content table.time-table-table td {
  border-right: 1px dotted #3aafd3;
  width: 200px;
  text-align: center;
  font-size: 1.1em;
  box-sizing: border-box;
  padding: 1em;
  background: #ffffff !important;
}
.post_content table.time-table-table td.empty-tb {
  background: #efefef !important;
}
.post_content table.time-table-table th.head-course {
  text-align: left;
  position: sticky;
  left: 0;
  background: #5eb6d0 !important;
  color: #ffffff;
  text-align: center;
}
.post_content table.time-table-table th {
  background: #daf5fd !important;
}
.time-table-box {
  overflow: scroll;
}
.post_content table.time-table-table th.head-course span {
  display: block;
  font-size: 0.9em;
}
p.caution-course {
  margin: 0;
  position: relative;
  padding-left: 1.3em;
}
p.caution-course::before {
  position: absolute;
  content: '※';
  color: #ff2a2a;
  left: 0;
}
.time-table-inner h3 {
  text-align: left;
  margin-top: 0;
}
.course-box {
  border: 1px solid #3aafd3;
  box-sizing: border-box;
  padding: 2em 2.5em;
  position: relative;
  max-width: 800px;
  margin: 5em auto;
}
.course-box h3 {
  margin-top: 0;
  font-size: 2em;
  color: #3aafd3;
}
p.course-text {
  text-align: center;
}
.post_content table.course-table {
  width: auto;
  margin-bottom: 1em;
}
.post_content table.course-table th, .post_content table.course-table td {
  width: 150px;
  text-align: center;
  border: 1px solid #3aafd3;
  font-size: 1.2em;
}
.post_content table.course-table th {
  border-bottom: 1px dotted #3aafd3;
  background: #e7f9ff;
  color: #3aafd3;
}
.post_content table.course-table td {
  border-top: none;
}
.course-price-box h4 {
  text-align: center;
  padding: 0;
  font-size: 1.5em;
}
.course-price-box p {
  text-align: center;
  font-size: 2em;
  font-weight: 700;
  color: #ff3e3e;
}
.course-box p.caution-course {
  text-align: center;
  padding: 0;
}
.course-box p.caution-course::before {
  position: relative;
}
.course-box h3 {
  font-size: 40px;
  line-height: 1;
  top: -20px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  background: #fff;
  padding: 0 20px;
}
.course-box:last-of-type {
  margin-bottom: 0;
}
.course-detail-box h4 {
  color: #e85f5f;
  font-size: 1.5em;
}
ul.course-detail-text {
  font-size: 1.2em;
  font-weight: 700;
}
ul.course-detail-text li {
  padding-left: 1.5em;
}
ul.course-detail-text li::before {
  font-family: "Font Awesome 5 Free";
  content: "\f058";
  position: absolute;
  top: 0;
  left: 0;
  color: #39b0d3;
}
table.course-detail-table {
  width: 100%;
  margin: 20px auto 0;
}
table.course-detail-table th {
  text-align: left;
  padding-left: 0;
  width: 70%;
  color: #39b0d3;
}
table.course-detail-table td {
  text-align: right;
  padding-right: 0;
  font-weight: 700;
}
span.course-detail-merit {
  color: #e85f5f;
  background: linear-gradient(transparent 60%, #efff5e 0%);
}
ul.course-caution li {
  padding-left: 1em;
}
ul.course-caution li::before {
  content: '※';
  position: absolute;
  top: 0;
  left: 0;
  color: #e85f5f;
}
ul.course-caution {
  margin-top: 20px;
}
@media only screen and (max-width: 485px) {
  .post_content table.time-table-table th {
    width: 200px;
  }
  table.time-table-table {
    width: 900px;
  }
  .post_content table.time-table-table th.head-course {
    width: 15%;
  }
  .post_content table.course-table th, .post_content table.course-table td {
    font-size: 1em;
  }
  .course-box {
    border-right: none;
    border-left: none;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  .course-price-box h4 {
    font-size: 1.2em;
  }
  .course-box h3 {
    font-size: 30px;
    top: -15px;
  }
  ul.course-detail-text {
    font-size: 1em;
  }
}
/* menu new END */
/* home new */
#index_dis_list li::after {
  width: 100%;
  height: 100%;
  position: absolute;
  content: '';
  background: url(https://gjhope.com/wp/wp-content/uploads/2018/09/top_special02.jpg);
  top: 0;
  left: 0;
  z-index: 2;
  background-size: cover;
  visibility: unset;
  opacity: 0.3;
  transition: 0.5s;
}
#index_dis_list li:hover::after {
  opacity: 0.7;
}
ol#index_dis_list {
  display: block;
  width: 86%;
  max-width: 1200px;
  margin: 0 auto;
  padding-bottom: 120px;
}
@media only screen and (max-width: 485px) {
  ol#index_dis_list {
    padding-bottom: 60px;
  }
}
/* home new END */

p.main_text.mail__caution {
    font-weight: bold;
    font-size: 1.2em;
    color: #e85f5f;
}