@charset "UTF-8";
/*
	# =================================================================
	# Global selectors html, グローバルセレクタの定義
	# =================================================================
*/
* {
  margin: 0;
  padding: 0;
  outline: none; }

/**
 * 1. すべてのブラウザで、スクロールバーのオーバーレイを無し。
 * 2. iOS 8+
 */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%; }

*,
::before,
::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

/**
 * 1. 「::before」と「::after」に、「text-decoration」と「vertical-align」を継承。
 */
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit; }

/*
 * 1. すべての要素に、「background-repeat: no-repeat;」を指定。
 * 2. すべての要素に、「padding」と「margin」をリセット。
 */
* {
  background-repeat: no-repeat;
  /* 1 */
  padding: 0;
  /* 2 */
  margin: 0;
  outline: none;
  list-style: none; }

/* # =================================================================
	 # General elements 一般的な要素の定義
	 # ================================================================= */
/**
 * iOS 4-7に、正しいdisplayを設定。
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/** 
 * 1. EdgeとIEに、「overflow: visible;」を定義。
 */
hr {
  overflow: visible;
  /* 1 */ }

/**

 * IE8/9に、displayプロパティを定義。
 * IE10/11とFirefoxのdetail要素とsummary要素に、displayプロパティを定義。
 * IE11のmain要素に、displayプロパティを定義。
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block; }

/**

 * 1. small要素に、フォントサイズ「80%」を定義。
 */
small {
  font-size: 80%;
  /* 1 */ }

/**
 * 1. IEに、displayプロパティを定義。
 */
[hidden],
template {
  display: none;
  /* 1 */ }

/**
 * 1. すべてのブラウザに、点線を定義。
 * 2. Firefox40+に、テキストの装飾を削除。
 */
abbr[title] {
  border-bottom: 1px dotted;
  /* 1 */
  text-decoration: none;
  /* 2 */ }

/**
 * 1. IE10に、アクティブリンクのグレーの背景を削除。
 * 2. iOS8+とSafari8+に、リンクの下線のギャップを削除。
 */
a {
  background-color: transparent;
  /* 1 */
  text-decoration: none;
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * 1. Remove the outline when hovering in all browsers
 
 * 1. すべてのブラウザに、ホバー時のアウトラインを削除。
 */
a:active,
a:hover {
  outline-width: 0;
  /* 1 */ }

/**
 * 1. コード要素に、フォントファミリーを指定。
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */ }

/**
 * 1. Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+
 
 * 1. Edge12+, Safari6.2+, Chrome18+に、「bold」を適用。
 */
b,
strong {
  font-weight: bolder;
  /* 1 */ }

/**
 * 1. Address styling not present in Safari and Chrome
 
 * 1. SafariとChromeに、定義。
 */
dfn {
  font-style: italic;
  /* 1 */ }

/**
 * Address styling not present in IE 8/9
 
 * 1. IE8/9に、定義。
 */
mark {
  background-color: #ff0;
  color: #000; }

/**
 * https://gist.github.com/unruthless/413930
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* 
# =================================================================
# Forms フォーム要素の定義
# =================================================================
*/
input {
  border-radius: 0; }

/**
 * 1. Firefox 36+
 */
[type="number"] {
  width: auto;
  /* 1 */ }

/**
 * 1. Safari 8+
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */ }

/**
 * 1. Safari 8
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
  /* 1 */ }

/**
 * 1. Internet Explorer 11+
 * 2. textarea要素に、垂直方向のリサイズを指定。
 */
textarea {
  overflow: auto;
  /* 1 */
  resize: vertical;
  /* 2 */ }

/**
 * 1. フォーム要素に、フォントの継承を指定。
 */
button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* 1 */ }

/**

 * 1. 前の指定により、フォントのウェイトを再定義。
 */
optgroup {
  font-weight: bold;
  /* 1 */ }

/**
 * 1. IE8/9/10/11に、overflow時にhiddenを設定。
 */
button {
  overflow: visible;
  /* 1 */ }

/**
 * Firefox4+に、内側のpaddingとborderを削除。
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: 0;
  padding: 0; }

/**

 * 1. フォーカス時のスタイルを定義。
 */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText; }

/**
 * 1. Android4に、ネイティブのaudio要素とvideo要素のコントロールのバグを防ぐ。
 * 2. iOSに、クリッカブルなbutton要素のtypeのスタイルを修正。
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * 1. Firefox 40+, Internet Explorer 11-
 */
button,
select {
  text-transform: none;
  /* 1 */ }

/**
 * すべてのブラウザにおいて、デフォルトのボタンのスタイルを削除。
 */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit; }

/**
 * 標準的なinput要素のスタイルを選択。
 * 1. Firefox 36+
 * 2. Chrome 41+
 */
select {
  -moz-appearance: none;
  /* 1*/
  -webkit-appearance: none;
  /* 2 */ }

/**
 * 1. Internet Explorer 11+
 */
select::-ms-expand {
  display: none;
  /* 1 */ }

/**
 * 1. Internet Explorer 11+
 */
select::-ms-value {
  color: currentColor;
  /* 1 */ }

/**
 * 1. IE 8/9/10/11に、カラーの継承を定義。
 * 2. IEに、fieldset要素からカラーを継承するように定義。
 * 3. EdgeとIEに、テキストのラッピングを修正。
 * 4. EdgeとIEに、テキストのラッピングを修正。
 * 5. EdgeとIEに、テキストのラッピングを修正。
 */
legend {
  border: 0;
  /* 1*/
  color: inherit;
  /* 2 */
  display: table;
  /* 3 */
  max-width: 100%;
  /* 4 */
  white-space: normal;
  /* 5 */ }

/**
 * 1. iOSとSafariに、クリッカブルなtypeのスタイルを修正。
 * 2. ChromeとSafariに、フォントプロパティの継承を変更。
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/**
 * Chrome, Edge, Safariに、テキストのスタイルを修正。
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54; }

/**
 * 1. ChromeとSafariに、アピアランスを修正。
 * 2. Safariに、アウトラインを修正。
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/* # =================================================================
	 # Specify media element style メディア要素の定義
	 # ================================================================= */
/**
 * 1. IE8/9/10に、a要素の中にある時にボーダーを削除。
 */
img {
  border-style: none;
  /* 1 */
  max-width: 100%;
  height: auto; }

/**
 * 1. Chrome, Firefox, Operaに、正しいvertical-alignを与える。
 */
progress {
  vertical-align: baseline; }

/**
 * 1. Internet Explorer 11-
 */
svg:not(:root) {
  overflow: hidden;
  /* 1 */ }

/**
 * 1. Internet Explorer 11+, Windows Phone 8.1+
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */ }

ul li {
  list-style: none; }

/* # =================================================================
# Acessibility アクセシビリティ用の定義
# ================================================================= */
/**
 * コンテンツを隠す時は、スクリーンリーダーからでなく、スクリーンから。
 */

/**
 * アップデート中の要素のプログレスのカーソルを指定。
 */
/* */
[aria-busy="true"] {
  cursor: progress; }

/**
 * トリガー要素のポインターのカーソルを指定。
 */
[aria-controls] {
  cursor: pointer; }

/**
 * 使用不可、編集不可の要素のスタイルが無いカーソルを指定。
 */
[aria-disabled] {
  cursor: default; }

::-moz-selection {
  background-color: #DDDDDD;
  /* 1 */
  text-shadow: none; }

::selection {
  background-color: #DDDDDD;
  /* 1 */
  text-shadow: none; }

.disnon {
  display: none; }

.is_pc {
  display: block !important; }

.is_sp {
  display: none !important; }

.obj_img, .is_ratio img, body.coaching #about .media_field .image_wrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: 'object-fit: cover;'; }
  .obj_img._contain, .is_ratio img._contain, body.coaching #about .media_field .image_wrap img._contain {
    -o-object-fit: contain;
       object-fit: contain;
    font-family: 'object-fit: contain;'; }

.obj_center {
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.obj_top, .btn_wrap .obj_icon span:before, #main_visual .main_viual_wrap .catch_copy_wrap, #about .media_field .article_wrap, #faq .faq_list li .item span:before {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }

.obj_side, .bg_image_wrap .sec_inner {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%); }

.is_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .is_flex._wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .is_flex._nowwrap {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap; }
  .is_flex._start {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .is_flex._middle {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .is_flex._end {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .is_flex._center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .is_flex._right {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .is_flex._between {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .is_flex._reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .is_flex._colmn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .is_flex._clReverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; }
  .is_flex._around {
    -ms-flex-pack: distribute;
        justify-content: space-around; }

.is_auto, #contact .sec_inner {
  margin-left: auto;
  margin-right: auto; }

.is_auto_right {
  margin-right: auto; }

.is_auto_left, #main_visual .main_viual_wrap {
  margin-left: auto; }

.text_center {
  text-align: center; }

.sec_space {
  margin-top: 5rem;
  margin-bottom: 5rem; }

.sec_space_small {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem; }

.sec_space_large {
  margin-top: 10rem;
  margin-bottom: 10rem; }

.sec_space_btm {
  margin-bottom: 5rem; }

.sec_space_btm_small {
  margin-bottom: 2.5rem; }

.sec_space_btm_large {
  margin-bottom: 10rem; }

.sec_space_top {
  margin-top: 5rem; }

.sec_space_top_small {
  margin-top: 2.5rem; }

.sec_space_top_large {
  margin-top: 10rem; }

.inner_space {
  padding-top: 5rem;
  padding-bottom: 5rem; }

.inner_space_small {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem; }

.inner_space_large {
  padding-top: 5rem;
  padding-bottom: 5rem; }

.inner_space_btm {
  padding-bottom: 2.5rem; }

.inner_space_btm_small {
  padding-bottom: 1.5rem; }

.inner_space_btm_large {
  padding-bottom: 5rem; }

.inner_space_top {
  padding-top: 2.5rem; }

.inner_space_top_small {
  padding-top: 1.5rem; }

.inner_space_top_large {
  padding-top: 5rem; }

.is_ratio {
  display: block;
  position: relative;
  width: 100%;
  overflow: hidden; }
  .is_ratio._ratio20 {
    padding: 20%; }
  .is_ratio._ratio30 {
    padding: 30%; }
  .is_ratio._ratio40 {
    padding: 40%; }
  .is_ratio._ratio50 {
    position: relative;
    padding: 50%; }
  .is_ratio._ratio16_9 {
    padding-top: 56.25%; }
  .is_ratio._ratio_top {
    padding-top: 30%; }
  .is_ratio._ratio_top35 {
    padding: 35%; }
  .is_ratio img {
    position: absolute;
    top: 0;
    left: 0; }

.is_radius._top-left {
  border-radius: 10px 0 0 0; }
  .is_radius._top-left._bdnon {
    border-left: none !important;
    border-top: none !important; }

.is_radius._top-right {
  border-radius: 0 10px 0 0; }
  .is_radius._top-right._bdnon {
    border-right: none !important;
    border-top: none !important; }

.is_radius._bottom-right {
  border-radius: 0 0 10px 0; }
  .is_radius._bottom-right._bdnon {
    border-right: none !important;
    border-top: none !important; }

.is_radius._bottom-left {
  border-radius: 0 0 0 10px; }
  .is_radius._bottom-left._bdnon {
    border-left: none !important;
    border-top: none !important; }

.box_shadow, body.coaching #flow .flow_list_field li {
  -webkit-box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 0px 15px 5px rgba(0, 0, 0, 0.1); }

.marker {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(0%, #335a6b));
  background: linear-gradient(transparent 75%, #335a6b 0%); }

.text-shadow, body.coaching #main_visual .main_viual_wrap .catch_copy_wrap .catch_copy span {
  text-shadow: 0px 0px 17px rgba(0, 0, 0, 0.5); }

.gradient, .badge, body.coaching #selection .selection_list li .number, body.coaching #flow .flow_list_field li .flow_title .obj_center span {
  background-image: linear-gradient(-45deg, #b2a614 0% 50%, #c2b528 50% 100%); }

.badge, body.coaching #selection .selection_list li .number, body.coaching #flow .flow_list_field li .flow_title .obj_center span {
  border-radius: 50%;
  width: 90px;
  height: 90px;
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #FFF; }

.radius, body.coaching header, body.coaching #about .media_field .image_wrap, body.coaching #selection .selection_list li, body.coaching #recommended .field .check_list li, body.coaching #business_skill .card_list_field li {
  border-radius: 10px;
  overflow: hidden; }

.radius2, body.coaching .btn_wrap {
  border-radius: 45px;
  overflow: hidden; }

.line_hover, header .navi_wrap .global_navi li a {
  position: relative;
  -webkit-transition: .5s;
  transition: .5s; }
  .line_hover::before, header .navi_wrap .global_navi li a::before {
    content: "";
    position: absolute;
    width: 0;
    height: 1px;
    background: #335a6b;
    left: 0;
    bottom: -5px;
    -webkit-transition: .5s;
    transition: .5s; }
  .line_hover:hover, header .navi_wrap .global_navi li a:hover {
    color: #335a6b; }
    .line_hover:hover:before, header .navi_wrap .global_navi li a:hover:before {
      width: 100%; }

.zoom_hover, .overlay_hover:hover .zoom_hover_target {
  position: relative;
  overflow: hidden;
  display: block; }
  .zoom_hover img, .overlay_hover:hover .zoom_hover_target img {
    -webkit-transition: .5s;
    transition: .5s; }
  .zoom_hover.zoom_up:hover img, .overlay_hover:hover .zoom_up.zoom_hover_target:hover img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
  .zoom_hover.zoom_down, .overlay_hover:hover .zoom_down.zoom_hover_target {
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }
    .zoom_hover.zoom_down:hover img, .overlay_hover:hover .zoom_down.zoom_hover_target:hover img {
      -webkit-transform: scale(1);
              transform: scale(1); }

.overlay_hover {
  display: block; }
  .overlay_hover .zoom_hover_target {
    overflow: hidden;
    position: relative; }
    .overlay_hover .zoom_hover_target img {
      -webkit-transition: .5s;
      transition: .5s;
      display: block; }
    .overlay_hover .zoom_hover_target:before {
      content: "";
      width: 125%;
      height: 100%;
      opacity: .5;
      position: absolute;
      left: -175%;
      top: 0;
      -webkit-transform: skew(-10deg) scale(1.5);
              transform: skew(-10deg) scale(1.5);
      -webkit-transition: .5s;
      transition: .5s;
      z-index: 10; }
  .overlay_hover:hover .zoom_hover_target:before {
    left: 0; }
  .overlay_hover:hover .zoom_hover_target img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1); }

@font-face {
  font-family: "源ノ明朝";
  src: url("../font/SourceHanSerifJP-Regular.woff") format("woff"), url("../font/SourceHanSerifJP-Regular.otf") format("opentype"); }

.f_gengo, body.coaching {
  font-family: "source-han-sans-japanese", sans-serif;
  font-weight: 400;
  font-style: normal; }

.f_genmin, body.business {
  font-family: "源ノ明朝", "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-style: normal;
  font-weight: 300; }

.f_kakugo {
  font-family: "ヒラギノ角ゴ Pro W7", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: 400; }

.f_yumin {
  font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-weight: 400; }

.f_yugo {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: 500; }

.f_crimson, .title_wrap .en_title, #about .media_field .article_wrap .text_wrap .number {
  font-family: 'Crimson Text', serif;
  font-style: normal;
  font-weight: 300; }

.f_century, .badge, body.coaching #selection .selection_list li .number, body.coaching #flow .flow_list_field li .flow_title .obj_center span, body.coaching .title_wrap .en_title, body.coaching #about .media_field .article_wrap .text_wrap .number {
  font-family: "century-gothic", sans-serif;
  font-weight: 400;
  font-style: normal; }

.w100 {
  font-weight: 100; }

.w200 {
  font-weight: 200; }

.w300 {
  font-weight: 300; }

.w400 {
  font-weight: 400; }

.w500 {
  font-weight: 500; }

.w700 {
  font-weight: 700; }

.w900 {
  font-weight: 900; }

/* common style /////////////////////////////////////////////////////////////////////////////////*/
html {
  font-size: 62.5%; }

body {
  font-size: 1.6em;
  min-width: 100%;
  overflow-x: hidden;
  font-family: "源ノ明朝", "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; }
  body.business .base_color, body.business .title_wrap .en_title, .title_wrap body.business .en_title, body.business #about .media_field .article_wrap .text_wrap .field_title, #about .media_field .article_wrap .text_wrap body.business .field_title, body.business #business_skill .card_list_field li .text_wrap .sub_title, #business_skill .card_list_field li .text_wrap body.business .sub_title, body.business #flow .flow_list_field li .text_wrap .title, #flow .flow_list_field li .text_wrap body.business .title, body.business #contact .sec_inner .info_wrap .box_wrap .info .number, #contact .sec_inner .info_wrap .box_wrap .info body.business .number, body.business body.coaching header .navi_wrap .global_navi li a:hover, body.coaching header .navi_wrap .global_navi li body.business a:hover {
    color: #335a6b; }
  body.business .base_bgcolor, body.business .overlay_hover .zoom_hover_target:before, .overlay_hover body.business .zoom_hover_target:before, body.business .btn_wrap, body.business .title_wrap .title:after, .title_wrap body.business .title:after, body.business .title_wrap.bg_color_title, body.business #flow .flow_list_field li .flow_title, #flow .flow_list_field li body.business .flow_title, body.business #faq .faq_list li .item.answer, #faq .faq_list li body.business .item.answer, body.business body.coaching header .navi_wrap .global_navi li a:before, body.coaching header .navi_wrap .global_navi li body.business a:before {
    background-color: #335a6b; }
  body.business .base_bdcolor, body.business #recommended .field .check_list li, #recommended .field .check_list body.business li, body.business #flow .flow_list_field li, #flow .flow_list_field body.business li, body.business #tuition .tuition_table, #tuition body.business .tuition_table, body.business #tuition .tuition_table th, #tuition .tuition_table body.business th, body.business #tuition .tuition_table td, #tuition .tuition_table body.business td, body.business #tuition .tuition_table .bdleft, #tuition .tuition_table body.business .bdleft {
    border-color: #335a6b; }
  body.business .sub_color, body.business .title_wrap.bg_image_title .en_title, .title_wrap.bg_image_title body.business .en_title, body.business .title_wrap.bg_color_title .en_title, .title_wrap.bg_color_title body.business .en_title {
    color: #8fa3ab; }

.over_site_width, #main_visual .main_viual_wrap, #about .media_field {
  width: 94.53125%; }

.outer_site_width {
  width: 81.25%;
  margin-left: auto;
  margin-right: auto; }

.inner_site_width {
  width: 73.4375%;
  margin-left: auto;
  margin-right: auto; }

section.section {
  margin-bottom: 5vw;
  position: relative; }

.btn_wrap {
  width: 385px;
  -webkit-transition: .5s;
  transition: .5s; }
  .btn_wrap .btn {
    font-size: 2rem;
    display: block;
    color: #FFF;
    text-align: center;
    padding: 2rem 0; }
  .btn_wrap._yellow {
    background: #fac73c !important; }
    .btn_wrap._yellow .btn {
      color: #335a6b; }
  .btn_wrap .obj_icon span {
    position: relative;
    display: inline-block; }
    .btn_wrap .obj_icon span:before {
      content: "";
      position: absolute;
      right: 0;
      width: 25px;
      height: 25px;
      right: calc(-25px - 10px);
      -webkit-transform: translateY(-35%);
              transform: translateY(-35%); }
  .btn_wrap .obj_icon._download span:before {
    background: url(../../assets/img/common/icon/icon-download_blue.png) no-repeat 0 0/contain; }
  .btn_wrap .obj_icon._contact span:before {
    background: url(../../assets/img/common/icon/icon-mouse_white.png) no-repeat 0 0/contain; }
  .btn_wrap .obj_icon._allow span:before {
    width: 20px;
    height: 20px;
    right: calc(-35px - 10px);
    background: url(../../assets/img/common/icon/icon-allow_white.png) no-repeat 0 0/contain; }
  .btn_wrap:hover {
    opacity: .8; }

.title_wrap {
  text-align: center;
  margin-bottom: 5vw; }
  .title_wrap .title {
    font-size: 2.4vw;
    font-weight: normal;
    position: relative;
    margin: 1.5rem 0 3rem 0; }
    .title_wrap .title:after {
      content: "";
      position: absolute;
      width: 75px;
      height: 1px;
      bottom: -1.5rem;
      left: calc(50% - 75px/2); }
  .title_wrap.bg_image_title .title {
    color: #FFF; }
    .title_wrap.bg_image_title .title:after {
      background: #8fa3ab; }
  .title_wrap.bg_color_title {
    padding: 2% 0; }
    .title_wrap.bg_color_title .title {
      color: #FFF;
      margin: 0; }
      .title_wrap.bg_color_title .title:after {
        display: none; }

.bg_color {
  padding: 5vw 0; }
  .bg_color._gray {
    background: #f9f9f9; }
  .bg_color._black {
    background: #565656; }

.bg_image_wrap .bg_image img {
  display: block;
  z-index: -1; }

.bg_image_wrap .sec_inner {
  position: absolute;
  top: 5vw; }
  .bg_image_wrap .sec_inner .field {
    width: 50%;
    margin: auto;
    font-size: 1.3vw;
    color: #FFF;
    letter-spacing: 5.5px;
    font-weight: 100; }
    .bg_image_wrap .sec_inner .field ul li {
      margin-bottom: 2.5rem;
      white-space: nowrap; }

p.text {
  font-size: 1.6rem;
  line-height: 2;
  color: #000; }
  p.text._wh {
    color: #FFF; }

/* common style /////////////////////////////////////////////////////////////////////////////////*/
/* header style /////////////////////////////////////////////////////////////////////////////////*/
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background: #FFF;
  padding-left: 2.5%; }
  header .logo_wrap {
    width: 16.35417%; }
    header .logo_wrap a {
      display: block; }
  header .navi_wrap {
    width: 74.21875%; }
    header .navi_wrap .global_navi {
      width: 85%;
      padding-right: 5%; }
      header .navi_wrap .global_navi li {
        text-align: center; }
        header .navi_wrap .global_navi li a {
          display: block;
          color: #000;
          white-space: nowrap; }
    header .navi_wrap .btn_wrap {
      width: 300px; }
      header .navi_wrap .btn_wrap .btn {
        padding: 10% 0; }

/* footer style /////////////////////////////////////////////////////////////////////////////////*/
#footer {
  padding: 4rem 0;
  color: #FFF; }
  #footer .copy {
    font-size: 1.2rem; }

/* main visual style /////////////////////////////////////////////////////////////////////////////////*/
#main_visual {
  max-height: 100vh;
  overflow: hidden; }
  #main_visual .main_viual_wrap {
    position: relative; }
    #main_visual .main_viual_wrap .main_viual_inner {
      width: 87%;
      margin-left: auto;
      position: relative; }
      #main_visual .main_viual_wrap .main_viual_inner img {
        display: block; }
    #main_visual .main_viual_wrap .catch_copy_wrap {
      position: absolute; }
      #main_visual .main_viual_wrap .catch_copy_wrap .catch_copy {
        margin-bottom: 5rem; }
        #main_visual .main_viual_wrap .catch_copy_wrap .catch_copy span {
          display: inline-block;
          display: inline-block;
          font-size: 4vw;
          font-weight: normal;
          background: #FFF;
          letter-spacing: 2.5px;
          padding: 0 1%;
          white-space: nowrap; }
          #main_visual .main_viual_wrap .catch_copy_wrap .catch_copy span:not(:last-child) {
            margin-bottom: 1rem; }
        #main_visual .main_viual_wrap .catch_copy_wrap .catch_copy span.mini {
          font-size: 2vw; }

/* #about style ( main content ) /////////////////////////////////////////////////////////////////////////////////*/
#about .media_field {
  position: relative;
  margin-bottom: 8rem;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }
  #about .media_field .article_wrap {
    width: 48%;
    position: absolute;
    left: 0;
    background: #F5F5F5;
    padding: 3%; }
    #about .media_field .article_wrap .text_wrap {
      position: relative; }
      #about .media_field .article_wrap .text_wrap .number {
        position: absolute;
        color: rgba(201, 201, 201, 0.15);
        top: -12rem;
        font-size: 26rem;
        line-height: 1;
        font-weight: 400; }
      #about .media_field .article_wrap .text_wrap .field_title {
        font-size: 2vw;
        margin-bottom: 2.5rem; }
      #about .media_field .article_wrap .text_wrap .text {
        font-size: 1.8rem; }
  #about .media_field .image_wrap {
    width: 58%; }
  #about .media_field.field_1 {
    margin-bottom: 13rem; }
    #about .media_field.field_1 .article_wrap {
      width: 65%;
      top: inherit;
      -webkit-transform: inherit;
              transform: inherit;
      bottom: -5rem; }
      #about .media_field.field_1 .article_wrap .text_wrap {
        width: 60%; }
      #about .media_field.field_1 .article_wrap .article_image_wrap {
        width: 35%; }
    #about .media_field.field_1 .image_wrap {
      width: 56%; }
  #about .media_field.field_2 .article_wrap {
    left: inherit;
    right: 0;
    padding-bottom: 10rem; }
    #about .media_field.field_2 .article_wrap .text_wrap .number {
      right: 0; }
  #about .media_field.field_3 {
    margin-bottom: 13rem; }
    #about .media_field.field_3 .article_wrap {
      bottom: 0;
      top: inherit;
      -webkit-transform: inherit;
              transform: inherit;
      padding-bottom: 10rem;
      bottom: -5rem; }
      #about .media_field.field_3 .article_wrap .text_wrap {
        width: 88%; }
    #about .media_field.field_3 .image_wrap {
      position: relative;
      z-index: 10; }

/* #selection style ( main content ) /////////////////////////////////////////////////////////////////////////////////*/
#selection {
  margin-bottom: 0;
  position: relative; }
  #selection .field {
    position: relative;
    left: 15%;
    -webkit-transform: translateX(-15%);
            transform: translateX(-15%); }

/* #recommended style ( main content ) /////////////////////////////////////////////////////////////////////////////////*/
#recommended .field .check_list li {
  width: calc(99% / 2);
  border: 1px solid;
  padding: 2% 5%;
  margin-bottom: 1.5rem;
  font-size: 1vw; }
  #recommended .field .check_list li span {
    position: relative; }
    #recommended .field .check_list li span:before {
      content: "";
      width: 30px;
      height: 30px;
      background: url(../../assets/img/common/icon/icon-check_blue.png) no-repeat left center/contain;
      position: absolute;
      left: calc(-30px - 5px);
      top: 0;
      z-index: 10; }

/* #business_skill style ( main content ) /////////////////////////////////////////////////////////////////////////////////*/
#business_skill {
  margin-bottom: 0; }
  #business_skill .card_list_field li {
    width: calc(90% / 4);
    background: #FFF;
    margin-bottom: 2.5rem; }
    #business_skill .card_list_field li .is_ratio {
      padding: 23%; }
    #business_skill .card_list_field li .text_wrap {
      padding: 5% 7%; }
      #business_skill .card_list_field li .text_wrap .sub_title {
        text-align: center;
        font-size: 1.2vw;
        margin-bottom: 1.5rem; }
      #business_skill .card_list_field li .text_wrap .text {
        font-size: 1.4rem; }

/* .request style ( main content ) //////////////////////////////////////////////////////////////////////////////////////////*/
.request .bg_image {
  height: 58vh;
  background: url(../../assets/img/business/image11.jpg) no-repeat center/cover;
  background-attachment: fixed; }

.request .sec_inner {
  width: 100%; }
  .request .sec_inner .info_wrap .text {
    font-size: 2rem;
    margin-bottom: 2.5rem; }

/* #flow style ( main content ) END///////////////////////////////////////////////////////////////////////////////////////*/
#flow .flow_list_field li {
  width: calc(90% / 2);
  border: 4px solid;
  margin-bottom: 5rem; }
  #flow .flow_list_field li:last-child {
    margin-bottom: 0rem; }
  #flow .flow_list_field li .flow_title {
    text-align: center;
    color: #FFF;
    width: 20%;
    position: relative;
    font-size: 1.2vw;
    padding: 0 5%; }
    #flow .flow_list_field li .flow_title .obj_center {
      position: absolute; }
      #flow .flow_list_field li .flow_title .obj_center span {
        display: block;
        font-size: 1.2vw; }
  #flow .flow_list_field li .text_wrap {
    padding: 3%;
    width: 100%; }
    #flow .flow_list_field li .text_wrap .title {
      text-align: center;
      font-size: 1vw;
      margin-bottom: 1.5rem; }
    #flow .flow_list_field li .text_wrap .text {
      font-size: 1.4rem; }
  #flow .flow_list_field li:nth-child(odd) {
    position: relative; }
    #flow .flow_list_field li:nth-child(odd):after {
      content: "";
      position: absolute;
      right: -12%;
      top: calc(50% - 30px/2);
      width: 30px;
      height: 30px;
      border: 5px solid;
      border-color: #335a6b #335a6b transparent transparent;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
  #flow .flow_list_field li:last-child:after {
    display: none; }

/* #TUITION FEE style ( main content ) END///////////////////////////////////////////////////////////////////////////////////////*/
#tuition {
  margin-bottom: 0; }
  #tuition .tuition_table {
    width: 100%;
    border-bottom: 1px solid; }
    #tuition .tuition_table th, #tuition .tuition_table td {
      padding: 2% 0;
      text-align: center;
      font-size: 1vw;
      border-top: solid 1px;
      border-right: 1px solid; }
    #tuition .tuition_table thead th {
      font-size: 1.2vw;
      color: #FFF; }
      #tuition .tuition_table thead th:nth-child(1) {
        width: 25%; }
      #tuition .tuition_table thead th:nth-child(2) {
        width: 25%;
        background: #335a6b; }
      #tuition .tuition_table thead th:nth-child(3) {
        width: 25%;
        background: #4d6f7d; }
      #tuition .tuition_table thead th:nth-child(4) {
        width: 25%;
        background: #61818e; }
    #tuition .tuition_table tbody td {
      background: #FFF; }
    #tuition .tuition_table tbody .title td {
      background: #f7f7f7; }
    #tuition .tuition_table tbody .ajust_pd {
      padding: 2% 1%; }
    #tuition .tuition_table .bdnon {
      border: none !important;
      background: none !important; }
    #tuition .tuition_table .bdleft {
      border-left: 1px solid; }

/*#faq style ( main content )///////////////////////////////////////////////////////////////////////////////////////*/
#faq .faq_list {
  padding: 0 2%; }
  #faq .faq_list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    #faq .faq_list li .item {
      width: calc(98% / 2);
      margin-bottom: 5rem;
      background: #EEE;
      border-radius: 10px;
      padding: 1% 2%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      position: relative; }
      #faq .faq_list li .item span {
        display: inline-block;
        position: relative;
        padding-left: 5%; }
        #faq .faq_list li .item span:before {
          position: absolute;
          left: 0;
          font-size: 1.4vw;
          line-height: 1; }
      #faq .faq_list li .item.question {
        background: #ededed; }
        #faq .faq_list li .item.question span:before {
          content: "Q"; }
        #faq .faq_list li .item.question:after {
          content: "";
          position: absolute;
          bottom: -35px;
          left: 15px;
          width: 70px;
          height: 50px;
          background: url(../../assets/img/common/icon/fukidashi_gray.png) no-repeat 0 0/contain;
          z-index: -1; }
      #faq .faq_list li .item.answer {
        position: relative;
        top: 5rem; }
        #faq .faq_list li .item.answer span {
          color: #FFF; }
          #faq .faq_list li .item.answer span:before {
            content: "A";
            color: #FFF; }
        #faq .faq_list li .item.answer:after {
          content: "";
          position: absolute;
          bottom: -35px;
          right: 15px;
          width: 70px;
          height: 50px;
          background: url(../../assets/img/common/icon/fukidashi_blue.png) no-repeat 0 0/contain; }

/* #contact style ( main content ) END///////////////////////////////////////////////////////////////////////////////////////*/
#contact {
  padding: 1rem 0 0;
  margin-bottom: 0; }
  #contact .sec_inner {
    width: 57%;
    position: relative; }
    #contact .sec_inner .image_wrap img {
      display: block; }
    #contact .sec_inner .info_wrap {
      position: absolute;
      top: 8rem;
      left: 25%; }
      #contact .sec_inner .info_wrap .caption {
        font-size: 1.4vw;
        margin-bottom: 1.5rem; }
      #contact .sec_inner .info_wrap .box_wrap .info {
        display: block;
        margin-right: 1.5rem; }
        #contact .sec_inner .info_wrap .box_wrap .info img {
          vertical-align: top; }
        #contact .sec_inner .info_wrap .box_wrap .info .number {
          font-size: 2.4vw;
          font-weight: bold;
          line-height: 1; }
        #contact .sec_inner .info_wrap .box_wrap .info .time {
          color: #000;
          margin-left: 80px; }
      #contact .sec_inner .info_wrap .box_wrap .btn_wrap {
        width: 350px; }

/* コーチング CSS  */
body.coaching .marker {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(75%, transparent), color-stop(0%, #fff97a));
  background: linear-gradient(transparent 75%, #fff97a 0%); }

body.coaching .sp_box_shadow {
  -webkit-box-shadow: 0px 0px 15px 5px rgba(142, 144, 0, 0.4);
          box-shadow: 0px 0px 15px 5px rgba(142, 144, 0, 0.4); }

body.coaching .base_color, body.coaching .title_wrap .en_title, .title_wrap body.coaching .en_title, body.coaching #about .media_field .article_wrap .text_wrap .field_title, #about .media_field .article_wrap .text_wrap body.coaching .field_title, body.coaching #business_skill .card_list_field li .text_wrap .sub_title, #business_skill .card_list_field li .text_wrap body.coaching .sub_title, #flow .flow_list_field li .text_wrap body.coaching .title, body.coaching #contact .sec_inner .info_wrap .box_wrap .info .number, #contact .sec_inner .info_wrap .box_wrap .info body.coaching .number, body.coaching header .navi_wrap .global_navi li a:hover, body.coaching #flow .flow_list_field li .text_wrap .title {
  color: #b2a614; }

body.coaching .base_bgcolor, body.coaching .overlay_hover .zoom_hover_target:before, .overlay_hover body.coaching .zoom_hover_target:before, body.coaching .btn_wrap, body.coaching .title_wrap .title:after, .title_wrap body.coaching .title:after, body.coaching .title_wrap.bg_color_title, body.coaching #flow .flow_list_field li .flow_title, #flow .flow_list_field li body.coaching .flow_title, body.coaching #faq .faq_list li .item.answer, #faq .faq_list li body.coaching .item.answer, body.coaching header .navi_wrap .global_navi li a:before {
  background-color: #b2a614; }

body.coaching .base_bdcolor, body.coaching #recommended .field .check_list li, #recommended .field .check_list body.coaching li, body.coaching #flow .flow_list_field li, #flow .flow_list_field body.coaching li, body.coaching #tuition .tuition_table, #tuition body.coaching .tuition_table, body.coaching #tuition .tuition_table th, #tuition .tuition_table body.coaching th, body.coaching #tuition .tuition_table td, #tuition .tuition_table body.coaching td, body.coaching #tuition .tuition_table .bdleft, #tuition .tuition_table body.coaching .bdleft {
  border-color: #b2a614; }

body.coaching .sub_color, body.coaching .title_wrap.bg_image_title .en_title, .title_wrap.bg_image_title body.coaching .en_title, body.coaching .title_wrap.bg_color_title .en_title, .title_wrap.bg_color_title body.coaching .en_title {
  color: #d7d194; }

body.coaching .title_wrap .en_title {
  font-weight: bold; }

body.coaching .title_wrap .title {
  font-weight: bold; }

body.coaching .title_wrap .caption {
  font-weight: bold; }

body.coaching header {
  width: 97%;
  left: 1.5%;
  top: 2%; }
  body.coaching header .btn_wrap {
    border-radius: 0px; }

body.coaching #main_visual .main_viual_wrap {
  width: 100%; }
  body.coaching #main_visual .main_viual_wrap .main_viual_inner {
    width: 100%; }
  body.coaching #main_visual .main_viual_wrap .catch_copy_wrap {
    left: 7%; }
    body.coaching #main_visual .main_viual_wrap .catch_copy_wrap .catch_copy span {
      font-weight: bold;
      color: #FFF;
      background: none; }

body.coaching #about .media_field .article_wrap {
  background: none;
  position: inherit;
  top: inherit;
  -webkit-transform: inherit;
          transform: inherit; }
  body.coaching #about .media_field .article_wrap .text_wrap {
    position: relative;
    width: 85%;
    margin-left: auto; }
    body.coaching #about .media_field .article_wrap .text_wrap .number {
      font-weight: bold;
      z-index: -1;
      left: -15%; }
    body.coaching #about .media_field .article_wrap .text_wrap .field_title {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      body.coaching #about .media_field .article_wrap .text_wrap .field_title img {
        width: 18%;
        position: relative; }
      body.coaching #about .media_field .article_wrap .text_wrap .field_title span {
        font-weight: bold;
        color: #000;
        margin-left: 1.5rem; }

body.coaching #about .media_field.field_2 .article_wrap .text_wrap {
  margin-left: 0;
  margin-right: auto; }
  body.coaching #about .media_field.field_2 .article_wrap .text_wrap .number {
    left: inherit;
    right: 0; }

body.coaching #about .media_field .image_wrap {
  height: 60vh; }
  body.coaching #about .media_field .image_wrap img {
    display: block; }

body.coaching #selection .selection_list li {
  width: calc(90% / 5);
  text-align: center;
  padding: 3% 3% 1% 3%;
  position: relative;
  overflow: inherit; }
  body.coaching #selection .selection_list li .number {
    font-size: 2vw;
    font-weight: bold;
    position: absolute;
    left: -10%;
    top: -10%; }
  body.coaching #selection .selection_list li .image_wrap {
    width: 65%;
    margin: auto;
    margin-bottom: 1.5rem; }
  body.coaching #selection .selection_list li .text {
    font-size: 1.8rem;
    font-weight: bold; }
  body.coaching #selection .selection_list li .caption {
    font-size: 1.0rem; }

body.coaching #recommended .field .check_list li span:before {
  background: url(../../assets/img/common/icon/icon-check_yellow.png) no-repeat left center/contain; }

body.coaching #business_skill .card_list_field li {
  width: calc(90% / 4); }

body.coaching .request .bg_image {
  background: url(../../assets/img/coaching/image11.webp) no-repeat center/175% 100%;
  background-attachment: fixed; }

body.coaching #flow .flow_list_field li {
  width: calc(90% / 4);
  border-width: 3px;
  border-radius: 10px;
  position: relative; }
  body.coaching #flow .flow_list_field li:nth-child(5), body.coaching #flow .flow_list_field li:nth-child(6), body.coaching #flow .flow_list_field li:nth-child(7) {
    margin-bottom: 0rem; }
  body.coaching #flow .flow_list_field li .flow_title .obj_center {
    left: 0;
    top: 0; }
    body.coaching #flow .flow_list_field li .flow_title .obj_center span {
      font-weight: bold;
      font-size: 1vw;
      width: 80px;
      height: 80px; }
  body.coaching #flow .flow_list_field li .text_wrap {
    padding: 5%; }
    body.coaching #flow .flow_list_field li .text_wrap .title {
      text-align: center;
      color: #000;
      font-weight: bold;
      line-height: 2.5;
      font-size: 1.2vw;
      margin-bottom: 0; }
      body.coaching #flow .flow_list_field li .text_wrap .title img {
        display: block;
        margin: auto; }
    body.coaching #flow .flow_list_field li .text_wrap p.text {
      font-size: 1.2rem; }
  body.coaching #flow .flow_list_field li:after {
    content: "";
    display: block;
    position: absolute;
    right: -8.5%;
    top: calc(50% - 30px/2);
    width: 30px;
    height: 30px;
    border: 5px solid;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    border-color: #b2a614 #b2a614 transparent transparent; }
  body.coaching #flow .flow_list_field li:nth-of-type(4):after, body.coaching #flow .flow_list_field li:nth-of-type(7):after {
    display: none; }
  body.coaching #flow .flow_list_field li:nth-of-type(5):after, body.coaching #flow .flow_list_field li:nth-of-type(6):after {
    right: -24.5%; }

body.coaching #tuition .tuition_table thead th:nth-child(2) {
  background: #b2a614; }

body.coaching #tuition .tuition_table thead th:nth-child(3) {
  background: #c2b528; }

body.coaching #tuition .tuition_table thead th:nth-child(4) {
  background: #ccc146; }

body.coaching #faq .faq_list li .item.answer:after {
  background: url(../../assets/img/common/icon/fukidashi_yellow.png) no-repeat 0 0/contain; }

body.coaching #contact .sec_inner {
  width: auto;
  position: absolute; }
  body.coaching #contact .sec_inner .field {
    width: auto;
    font-size: inherit; }
  body.coaching #contact .sec_inner .info_wrap {
    position: inherit; }
    body.coaching #contact .sec_inner .info_wrap .caption {
      font-weight: bold;
      border-bottom: solid 1px #FFF;
      padding-bottom: 1.5rem; }
    body.coaching #contact .sec_inner .info_wrap .box_wrap .info .number {
      color: #FFF;
      font-size: 2.6vw; }
    body.coaching #contact .sec_inner .info_wrap .box_wrap .info .time {
      color: #fff;
      margin-left: 100px; }
    body.coaching #contact .sec_inner .info_wrap .box_wrap .btn_wrap {
      width: 420px; }
      body.coaching #contact .sec_inner .info_wrap .box_wrap .btn_wrap .btn {
        padding: 2.5rem 0 2rem 0; }
      @media screen {
  [hidden~="screen"] {
    display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important; } }


/*# sourceMappingURL=style.school_pc.css.map*/