@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.3.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
========================================================================== */
@import url("https://fonts.googleapis.com/css?family=Roboto+Condensed:400,700");
@import url("https://fonts.googleapis.com/earlyaccess/notosansjp.css");

/*@font-face {
  font-family: "Noto Serif Japanese";
  font-style: normal;
  font-weight: 400;
  src: url(../../common_btoc/fonts/NotoSerifCJKjp-Regular.otf) format("opentype");
}
@font-face {
  font-family: "Noto Serif Japanese";
  font-style: normal;
  font-weight: 700;
  src: url(../../common_btoc/fonts/NotoSerifCJKjp-Bold.otf) format("opentype");
}*/
html {
  font-family: sans-serif;
  line-height: 1.15;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

/* Sections
========================================================================== */
body {
  margin: 0;
}

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
========================================================================== */
figcaption,
figure {
  display: block;
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

main {
  display: block;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Links
========================================================================== */
a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:active,
a:hover {
  outline-width: 0;
  text-decoration: none !important;
}

/* Text-level semantics
========================================================================== */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

b,
strong {
  font-weight: inherit;
}
b,
strong {
  font-weight: bolder !important;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
========================================================================== */
audio,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

img {
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

/* Forms
========================================================================== */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

input {
  overflow: visible;
}

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  box-sizing: border-box;
  display: table;
  max-width: 100%;
  padding: 0;
  color: inherit;
  white-space: normal;
}

progress {
  display: inline-block;
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

/* Interactive
========================================================================== */
details {
  display: block;
}

summary {
  display: list-item;
}

menu {
  display: block;
}

/* Scripting
========================================================================== */
canvas {
  display: inline-block;
}

template {
  display: none;
}

/* Hidden
========================================================================== */
[hidden] {
  display: none;
}

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em";
}

html {
  box-sizing: border-box;
  font-size: 100%;
}

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

body {
  margin: 0;
  padding: 0;
  background: #fefefe;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
}

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0;
}

select {
  box-sizing: border-box;
  width: 100%;
  border-radius: 0;
}

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important;
}

button {
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
}

[data-whatinput="mouse"] button {
  outline: 0;
}

pre {
  overflow: auto;
}

/* 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;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
nav2,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

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

.ls0 {
  letter-spacing: 0;
}

.mt0 {
  margin-top: 0px !important;
}

.mb0 {
  margin-bottom: 0px !important;
}

.pt0 {
  padding-top: 0px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

.mt5 {
  margin-top: 5px !important;
}

.mb5 {
  margin-bottom: 5px !important;
}

.pt5 {
  padding-top: 5px !important;
}

.pb5 {
  padding-bottom: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.mr0 {
  margin-right: 0 !important;
}

.pr0 {
  padding-right: 0 !important;
}

/* clearfix */
.clear-fix {
  zoom: 1;
}
.clear-fix:before,
.clear-fix:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.clear-fix:after {
  clear: both;
}

.clear {
  clear: both;
}

.ls0 {
  letter-spacing: 0;
}

/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1,
h2,
h3,
h4,
h5,
h6,
input,
button,
textarea,
select,
p,
th,
td,
address,
li,
dt,
dd {
  font-weight: 400;
  font-feature-settings: "palt";
  letter-spacing: 1px;
}

.contents h1,
.contents h2,
.contents h3,
.contents h4,
.contents h5,
.contents h6,
.contents input,
.contents button,
.contents textarea,
.contents select,
.contents p,
.contents th,
.contents td,
.contents address,
.contents li,
.contents dt,
.contents dd {
  line-height: 1.6;
  font-weight: 400;
}
@media all and (min-width: 960px) {
  .contents h1,
  .contents h2,
  .contents h3,
  .contents h4,
  .contents h5,
  .contents h6,
  .contents input,
  .contents button,
  .contents textarea,
  .contents select,
  .contents p,
  .contents address,
  .contents li,
  .contents dt,
  .contents dd {
    font-size: 18px;
  }
  .contents th,
  .contents td,
  .contents address,
  .contents li {
    font-size: 16px;
  }
}
@media screen and (max-width: 959px) {
  .contents h1,
  .contents h2,
  .contents h3,
  .contents h4,
  .contents h5,
  .contents h6,
  .contents input,
  .contents button,
  .contents textarea,
  .contents select,
  .contents p,
  .contents th,
  .contents td,
  .contents address,
  .contents li,
  .contents dt,
  .contents dd {
    font-size: 14px;
  }
}

/* =========================================================
	element style
========================================================= */
html,
body {
  height: 100%;
}

body {
  color: #333333;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic,
    "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo",
    sans-serif;
}

input,
textarea,
button {
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic,
    "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo",
    sans-serif;
  -webkit-appearance: none;
}

a {
  color: #333333;
}

@media screen and (min-width: 1024px) {
  a:hover {
    text-decoration: none;
  }
  .area-link,
  a.hov {
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
  }
  .area-link a.hov {
    transition: none;
    opacity: 1 !important;
  }
  .area-link:hover,
  a.hov:hover {
    opacity: 0.6;
  }
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

@media all and (min-width: 960px) {
  .imgR {
    float: right;
    margin-left: 20px;
  }

  .imgL {
    float: left;
    margin-right: 20px;
  }
}
@media screen and (max-width: 959px) {
  .imgR,
  .imgL {
    max-width: 300px;
  }

  .imgR {
    float: right;
    margin-left: 15px;
  }

  .imgL {
    float: left;
    margin-right: 15px;
  }
}
@media screen and (max-width: 767px) {
  .imgR,
  .imgL {
    float: none;
    max-width: none;
    margin: 0;
    margin-bottom: 1em;
    text-align: center;
  }
}
@media all and (min-width: 960px) {
  .fr {
    float: right;
  }

  .fl {
    float: left;
  }
  .fs20 {
    font-size: 24px !important;
  }
}
.imgC,
.tC {
  text-align: center;
}

.imgC {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.tR {
  text-align: right;
}

/* =========================================================
 icon
========================================================= */
@font-face {
  font-family: "fonts";
  src: url("../fonts/fonts.ttf?ielakg") format("truetype"),
    url("../fonts/fonts.woff?ielakg") format("woff"),
    url("../fonts/fonts.svg?ielakg#fonts") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "def";
  src: url("../fonts/def.ttf?b8fhm8") format("truetype"),
    url("../fonts/def.woff?b8fhm8") format("woff"),
    url("../fonts/def.svg?b8fhm8#def") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"],
[class*=" icon-"],
[class^="ico-"],
[class*=" ico-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[class^="icon-"],
[class*=" icon-"] {
  font-family: "fonts" !important;
}

[class^="ico-"],
[class*=" ico-"] {
  font-family: "def" !important;
}

/* original
--------------------------------------------------------- */
.icon-arrow:before {
  content: "\e900";
}

.icon-check:before {
  content: "\e901";
}

.icon-company:before {
  content: "\e902";
}

.icon-mail:before {
  content: "\e903";
}

.icon-phone:before {
  content: "\e904";
}

.icon-diagnosis:before {
  content: "\e905";
}

/* defalt
--------------------------------------------------------- */
.ico-down:before {
  content: "\e802";
}

.ico-prv:before {
  content: "\e803";
}

.ico-up:before {
  content: "\e805";
}

.ico-comment:before {
  content: "\e806";
}

.ico-download:before {
  content: "\e807";
}

.ico-external:before {
  content: "\e808";
}

.ico-map:before {
  content: "\e80a";
}

.ico-close:before {
  content: "\e80b";
}

.ico-open:before {
  content: "\e80d";
}

.ico-search:before {
  content: "\e80e";
}

.ico-zoom-in:before {
  content: "\e80f";
}

.ico-zoom-out:before {
  content: "\e810";
}

.icon-checkmark:before {
  content: "\ea10";
}

/* =========================================================
	general
========================================================= */
@media all and (min-width: 960px) {
  .cnt-pc {
    display: block;
  }
}
@media screen and (max-width: 959px) {
  .cnt-pc {
    display: none;
  }
}

@media all and (min-width: 960px) {
  .cnt-sp {
    display: none;
  }
}
@media screen and (max-width: 959px) {
  .cnt-sp {
    display: block;
  }
}

.contents h2 {
  position: relative;
  color: #c00;
  font-weight: 400;
  text-align: center;
  line-height: 1.2;
}
.contents h2:before,
.contents h2:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 50%;
  height: 4px;
  margin-top: -2px;
  border-top: 1px solid rgba(204, 0, 0, 0.2);
  background: rgba(204, 0, 0, 0.1);
  z-index: 0;
}
.contents h2:before {
  left: 0;
}
.contents h2:after {
  right: 0;
}
.contents h2 span {
  position: relative;
  display: inline-block;
  padding: 0 20px;
  background: #fff;
  z-index: 1;
}
.contents h2 span + span {
  font-size: 14px;
  color: #000;
  display: block;
}
@media all and (min-width: 960px) {
  .contents h2 {
    margin-bottom: 35px;
    padding: 0 50px;
    font-size: 38px;
  }
  .contents h2 small {
    font-size: 26px;
  }
}
@media screen and (max-width: 959px) {
  .contents h2 {
    margin-bottom: 10px;
    padding: 0 20px;
    font-size: 26px;
  }
}
@media screen and (max-width: 767px) {
  .contents h2 {
    font-size: 18px;
    padding: 0 15px;
  }
  .contents h2 small {
    font-size: 16px;
  }
  .contents h2 span {
    padding: 0 5px;
  }
}
.contents h3 {
  position: relative;
  padding: 15px;
  background: #f8f8f8;
  font-weight: 500;
  line-height: 1.3;
}
.contents h3:before {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
  left: 0;
  bottom: 15px;
  width: 5px;
  background: #c00;
}
@media all and (min-width: 960px) {
  .contents h3 {
    margin-bottom: 20px;
    padding-left: 20px;
    font-size: 24px;
  }
}
@media screen and (max-width: 959px) {
  .contents h3 {
    margin-bottom: 15px;
    padding-left: 15px;
    font-size: 16px;
  }
}
.contents .copy {
  padding: 0;
  border: none;
}

.article,
.section {
  width: 100%;
  zoom: 1;
}
.article:before,
.article:after,
.section:before,
.section:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.article:after,
.section:after {
  clear: both;
}
.article p:last-child,
.article ul:last-child,
.article dl:last-child,
.section p:last-child,
.section ul:last-child,
.section dl:last-child {
  margin-bottom: 0;
}

.article {
  margin: auto;
}
@media all and (min-width: 960px) {
  .article {
    width: 1100px;
    /*padding-bottom: 100px;*/
    padding: 80px 0 60px 0;
  }
}
@media screen and (max-width: 959px) {
  .article {
    width: 90%;
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .article {
    padding-bottom: 40px;
  }
}
.article p,
.article ul,
.article dl {
  margin-bottom: 1em;
  line-height: 1.7;
}

@media all and (min-width: 960px) {
  .section {
    padding-top: 60px;
  }
}
@media screen and (max-width: 959px) {
  .section {
    padding-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  .section {
    padding-top: 20px;
  }
}

h2 + .section {
  padding-top: 0;
}

table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #ccc;
  border-top: none;
  border-left: none;
}
table th,
table td {
  padding: 20px;
  border: none;
  border: 1px solid #ccc;
  border-right: none;
  border-bottom: none;
  /*vertical-align: top;*/
  vertical-align: middle;
  font-weight: 400;
  text-align: left;
}
table th {
  background: #f8f8f8;
}
table td ul:last-child,
table td dl:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  table th,
  table td {
    padding: 10px;
  }
  table:not(.table-wide) th,
  table:not(.table-wide) td {
    display: block;
    padding: 10px;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .table-wrap {
    overflow-x: scroll;
  }
  .table-wrap:before,
  .table-wrap:after {
    display: block;
    font-size: 11px;
    content: "表は横にスクロールできます。";
    padding: 5px 0;
  }
  .table-wrap:-webkit-scrollbar {
    height: 10px;
  }
  .table-wrap:-webkit-scrollbar-track {
    margin: 0 2px;
    background: #ccc;
    border-radius: 5px;
  }
  .table-wrap:-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #666;
  }
  .table-wrap table {
    min-width: 800px;
    max-width: 1000px;
  }
  .table-wrap th,
  .table-wrap td {
    font-size: 13px;
  }
}
.bold {
  font-weight: 700;
}

.emphasis {
  color: #c00;
  font-weight: 700 !important;
}

p.attention,
span.attention {
  display: block;
  margin-left: 1em;
  text-indent: -1em;
  font-size: 13px;
}

ul.attention {
  margin-top: 10px;
}
ul.attention li {
  margin-left: 1em;
  text-indent: -1em;
  font-size: 13px;
}

ul.list li {
  position: relative;
  padding-left: 1em;
}
ul.list li:last-child {
  margin-bottom: 0;
}
ul.list li:before {
  position: absolute;
  display: block;
  content: "";
  top: 9px;
  left: 0;
  width: 6px;
  height: 6px;
  background: #c00;
  -webkit-border-radius: 100%;
  border-radius: 100%;
}
ul.list li ol {
  margin-left: 20px;
}
ol.list02 li,
ul.list li ol li {
  list-style: decimal !important;
  padding-left: 0;
}
ul.list li ol li:before {
  display: none;
}

ol.num {
  padding: 0 25px 0 25px;
  list-style-position: outside;
}
ol.num li {
  list-style-type: decimal;
}
ol.num li:last-child {
  margin-bottom: 0;
}

.btn-link {
  clear: both;
  text-align: center;
}
.btn-link a {
  position: relative;
  margin: 0 auto;
  padding: 0;
  background: #c00;
  color: #fff !important;
  font-weight: 600;
  text-decoration: none;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.btn-link i {
  margin-right: 5px;
}
@media all and (min-width: 960px) {
  .btn-link {
    padding: 50px 0 0;
  }
  .btn-link li {
    display: inline-block;
    margin: 0 15px;
    font-size: 18px;
  }
  .btn-link a {
    display: inline-block;
    min-width: 350px;
    padding: 0 30px;
    line-height: 60px;
    -webkit-border-radius: 30px;
    border-radius: 9999px;
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
  }
  .btn-link a:hover {
    opacity: 0.7;
  }
  .btn-link i {
    font-size: 14px;
  }
  .basicBtn a {
    min-width: 400px;
    line-height: 70px;
    -webkit-border-radius: 35px;
    border-radius: 35px;
    font-size: 110%;
  }
}
@media screen and (max-width: 959px) {
  .btn-link {
    padding: 30px 0 0;
  }
  .btn-link li {
    margin-bottom: 15px;
    font-size: 16px;
  }
  .btn-link li:last-child {
    margin-bottom: 0;
  }
  .btn-link a {
    display: block;
    width: 60%;
    padding: 15px 0;
  }
  .btn-link i {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  .btn-link li {
    font-size: 14px;
  }
  .btn-link a {
    width: 100%;
  }
}

ul.btn-link {
  margin-bottom: 0;
}

.link-txt {
  margin-top: 1em;
}
.link-txt a {
  font-weight: 500;
  text-decoration: none;
  transition: all 0.3s;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
}
.link-txt a:hover {
  color: #c00;
}
.link-txt i {
  margin-right: 3px;
  color: #c00;
  font-size: 14px;
}

.img-btm,
.img-top {
  text-align: center;
}

@media all and (min-width: 960px) {
  .img-top {
    padding-bottom: 30px;
  }
}
@media screen and (max-width: 959px) {
  .img-top {
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  .img-top {
    padding-bottom: 1em;
  }
}

@media all and (min-width: 960px) {
  .img-btm {
    padding-top: 30px;
  }
}
@media screen and (max-width: 959px) {
  .img-btm {
    padding-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .img-btm {
    padding-top: 1em;
  }
}

.map iframe {
  vertical-align: bottom;
  width: 100%;
  height: 400px;
}
@media screen and (max-width: 959px) {
  .map {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 25%;
    overflow: hidden;
  }
  .map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}

/* =========================================================
	#wrapper
========================================================= */
#wrapper {
  width: 100%;
  height: 100%;
  margin: 0 auto;
}
@media all and (min-width: 960px) {
  #wrapper {
    padding-top: 130px;
  }
}
@media screen and (max-width: 959px) {
  #wrapper {
    padding-top: 60px;
  }
}

/* =========================================================
	.contents
========================================================= */
.contents {
  zoom: 1;
}
.contents:before,
.contents:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.contents:after {
  clear: both;
}
@media all and (min-width: 960px) {
  .contents {
    padding-top: 80px;
  }
}
@media screen and (max-width: 959px) {
  .contents {
    padding-top: 60px;
  }
}
@media screen and (max-width: 767px) {
  .contents {
    padding-top: 40px;
  }
}

/* =========================================================
	.pagetitle
========================================================= */
.pagetitle {
  border-bottom: 1px solid #ededed;
  background: url(../images/bg-pagetitle.png) repeat center center;
}
.pagetitle h1 {
  font-weight: 500;
  text-align: center;
  line-height: 1;
}
.pagetitle h1 span {
  display: block;
  margin-top: 10px;
  color: #c00;
}
@media all and (min-width: 960px) {
  .pagetitle {
    background-size: 2000px auto;
    -moz-background-size: 2000px auto;
    -webkit-background-size: 2000px auto;
  }
  .pagetitle h1 {
    padding: 60px 0;
    font-size: 44px;
  }
  .pagetitle h1 span {
    font-size: 16px;
  }
}
@media screen and (max-width: 959px) {
  .pagetitle {
    background-size: 1000px auto;
    -moz-background-size: 1000px auto;
    -webkit-background-size: 1000px auto;
  }
  .pagetitle h1 {
    padding: 40px 0;
    font-size: 30px;
  }
  .pagetitle h1 span {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .pagetitle h1 {
    padding: 30px 0;
    font-size: 22px;
  }
  .pagetitle h1 span {
    font-size: 11px;
  }
}

/* =========================================================
	topic path
========================================================= */
.topic-path {
  background: #f8f8f8;
  text-align-last: auto;
}
.topic-path ol {
  position: relative;
  font-size: 0;
}
.topic-path ol:before {
  display: block;
  content: "";
  position: absolute;
  left: -50%;
  height: 40px;
  width: 50%;
  background: #ededed;
}
.topic-path li {
  position: relative;
  display: inline-block;
  margin-right: 15px;
  padding-right: 15px;
  color: #999;
  font-size: 12px;
  line-height: 40px;
}
.topic-path li:after {
  content: "";
  display: block;
  position: absolute;
  top: 14px;
  right: 0;
  width: 1px;
  height: 12px;
  background: #ccc;
}
.topic-path li:first-child {
  margin-right: 25px;
  padding-left: 15px;
  background: #ededed;
}
.topic-path li:first-child:before {
  position: absolute;
  top: 0;
  right: -10px;
  content: "";
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 10px solid #ededed;
}
.topic-path li:first-child:after {
  display: none;
}
.topic-path li:last-child {
  margin-right: 0;
  padding-right: 0;
  color: #c00;
}
.topic-path li:last-child:after {
  display: none;
}
.topic-path a {
  color: #999;
  text-decoration: none;
  transition: all 0.3s;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
}
.topic-path a:hover {
  color: #666;
}
@media screen and (max-width: 959px) {
  .topic-path {
    display: none;
  }
}

/* =========================================================
	header
========================================================= */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  border-bottom: 1px solid #ededed;
  background: #fff;
  transition: all 0.3s;
  -moz-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  z-index: 100;
}
.header .head-inner {
  position: relative;
}
.header a {
  text-decoration: none;
  display: block;
}
.header .head-logo a {
  display: inline-block;
}
.header .gnav a {
  color: #000;
  line-height: 1;
}
.header .head-info a {
  font-weight: 500;
}
.header .head-info li.mail a,
.header .head-info li.for-com a {
  color: #fff;
}
.header .head-info li.mail {
  background: #c00;
}
.header .head-info li.for-com {
  background: #19375a;
  margin-right: 1px;
}
.header .sp-nav {
  cursor: pointer;
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 15px;
  width: 30px;
  height: 20px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 9999;
  line-height: 1;
}
.header .sp-nav figure {
  position: absolute;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background: #000;
  transition: 0.25s;
  -moz-transition: 0.25s;
  -webkit-transition: 0.25s;
}
.header .sp-nav figure:nth-child(1) {
  top: 0;
}
.header .sp-nav figure:nth-child(2) {
  top: 50%;
}
.header .sp-nav figure:nth-child(3) {
  bottom: 0;
}
.header .sp-nav.on figure:nth-child(1) {
  top: 50%;
  transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.header .sp-nav.on figure:nth-child(2) {
  background: transparent;
}
.header .sp-nav.on figure:nth-child(3) {
  bottom: 50%;
  transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

/*----------------------------------------------------------*/
.header .sp-nav2 {
  cursor: pointer;
  display: none;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 75px;
  /*width: 30px;
  height: 20px;*/
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 9999;
  font-size: 14px;
  line-height: 1;
}
.sp-nav2 i {
  color: #c00;
  font-size: 12px;
  margin-left: 5px;
}

@media all and (min-width: 960px) {
  .header:after {
    display: block;
    position: absolute;
    top: 70px;
    left: 0;
    width: 100%;
    height: 1px;
    background: #ededed;
    content: "";
  }
  .header .head-inner {
    position: relative;
    width: 100%;
    height: 130px;
    margin: auto;
    text-align: left;
    z-index: 10;
  }
  .header .head-logo img {
    width: 140px;
  }
  .header .head-txt {
    position: absolute;
    top: 21px;
    left: 155px;
    font-size: 11px;
    line-height: 1.5;
  }
  .header .gnav {
    position: absolute;
    top: 70px;
    right: 0;
    padding-right: 15px;
  }
  .header .gnav li {
    float: left;
  }
  .header .gnav a {
    padding: 0 15px;
    line-height: 60px;
    font-size: 15px;
    font-weight: 500;
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
  }
  .header .gnav a i.icon-arrow {
    display: none;
  }
  .header .gnav a:hover,
  .header .gnav a.current {
    color: #c00;
  }
  .header .head-info {
    position: absolute;
    top: 0;
    right: 0;
    height: 70px;
  }
  .header .head-info li {
    float: left;
    letter-spacing: 0;
  }
  .header .head-info li a {
    display: table-cell;
    height: 70px;
    vertical-align: middle;
  }
  .header .head-info li.tel {
    padding-right: 20px;
    font-size: 11px;
    text-align: right;
    white-space: nowrap;
  }
  .header .head-info li.tel span {
    display: block;
    font-family: "Roboto Condensed", sans-serif;
    font-size: 28px;
    font-weight: 700;
  }
  .header .head-info li.tel i {
    display: none;
  }
  .header .head-info li.mail,
  .header .head-info li.for-com {
    text-align: center;
  }
  .header .head-info li.mail a,
  .header .head-info li.for-com a {
    width: 150px;
    font-size: 12px;
  }
  .header .head-info li.mail i,
  .header .head-info li.for-com i {
    display: block;
    margin-bottom: 5px;
    font-size: 23px;
  }
  .header .head-info li.mail {
    margin-right: 1px;
  }
  .header .sp-nav {
    display: none;
  }
}
@media screen and (max-width: 959px) {
  body.fixed {
    position: fixed;
    width: 100%;
    height: 100%;
  }

  .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 2000;
  }
  .header .head-inner {
    height: 60px;
    background: rgba(255, 255, 255, 0.9);
  }
  .header .head-logo img {
    height: 60px;
  }
  .header .head-txt {
    position: absolute;
    left: 120px;
    top: 20px;
    font-size: 10px;
    display: none;
  }
  .header .menu {
    display: none;
    position: fixed;
    top: 60px;
    left: 0;
    bottom: 0;
    width: 100%;
    background: #f5f5f5;
    text-align: left;
    z-index: 9999;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .header .menu2 {
    display: none;
    position: fixed;
    top: 60px;
    left: 0;
    bottom: 0;
    width: 100%;
    background: #f5f5f5;
    text-align: left;
    z-index: 10;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .header .gnav {
    padding: 15px;
  }
  .header .gnav li {
    overflow: hidden;
    border-bottom: 1px solid #ededed;
  }
  .header .gnav li:first-child {
    -webkit-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
  }
  .header .gnav li:last-child {
    border: none;
    -webkit-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
  }
  .header .gnav a {
    position: relative;
    display: block;
    padding: 15px;
    background: #fff;
    font-size: 15px;
    font-weight: 500;
  }
  .header .gnav i {
    right: 15px;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #c00;
    font-size: 12px;
  }
  .header .head-info {
    overflow: hidden;
    margin: 0 15px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    background: #fff;
  }
  .header .head-info li {
    text-align: center;
  }
  .header .head-info i {
    font-size: 24px;
    vertical-align: middle;
  }
  .header .head-info .tel {
    padding: 20px;
    font-size: 12px;
  }
  .header .head-info .tel i {
    margin-right: 5px;
  }
  .header .head-info .tel span {
    display: block;
    margin-bottom: 5px;
    font-size: 30px;
    font-family: "Roboto Condensed", sans-serif;
  }
  .header .head-info .mail,
  .header .head-info .for-com {
    float: left;
    width: 50%;
    text-align: center;
    letter-spacing: 0;
  }
  .header .head-info .mail i,
  .header .head-info .for-com i {
    display: block;
    margin-bottom: 5px;
  }
  .header .head-info .mail a,
  .header .head-info .for-com a {
    padding: 20px 0;
    font-size: 11px;
    font-weight: 700;
  }
  .header .sp-nav {
    display: block;
  }
}
/* =========================================================
	foot-contact
========================================================= */
.footer .foot-contact {
  border-top: 1px solid #ededed;
  background: #fff;
  text-align: center;
}
@media all and (min-width: 960px) {
  .footer .foot-contact {
    padding: 40px 0;
    border-bottom: 1px solid #ededed;
  }
}
@media screen and (max-width: 959px) {
  .footer .foot-contact {
    padding: 20px 0;
  }
}
.footer .foot-contact .inner {
  margin: auto;
}
@media all and (min-width: 960px) {
  .footer .foot-contact .inner {
    max-width: 1100px;
  }
}
.footer .foot-contact h2 {
  display: block;
  position: relative;
  border: none;
  background: none;
  color: #c00;
  font-weight: 500;
  text-align: center;
}
.footer .foot-contact h2:before,
.footer .foot-contact h2:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 50%;
  height: 4px;
  margin-top: -2px;
  border-top: 1px solid rgba(204, 0, 0, 0.2);
  background: rgba(204, 0, 0, 0.1);
  z-index: 0;
}
.footer .foot-contact h2:before {
  left: 0;
}
.footer .foot-contact h2:after {
  right: 0;
}
.footer .foot-contact h2 span {
  position: relative;
  display: inline-block;
  padding: 0 20px;
  background: #fff;
  z-index: 1;
}
@media all and (min-width: 960px) {
  .footer .foot-contact h2 {
    padding: 0 50px;
    font-size: 30px;
  }
}
@media screen and (max-width: 959px) {
  .footer .foot-contact h2 {
    padding: 0 20px;
    font-size: 26px;
  }
}
@media screen and (max-width: 767px) {
  .footer .foot-contact h2 {
    font-size: 18px;
  }
  .footer .foot-contact h2 span {
    padding: 0 5px;
  }
}
.footer .foot-contact ul {
  zoom: 1;
  text-align: center;
}
.footer .foot-contact ul:before,
.footer .foot-contact ul:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.footer .foot-contact ul:after {
  clear: both;
}
@media screen and (max-width: 959px) {
  .footer .foot-contact ul {
    max-width: 90%;
    margin: auto;
  }
}
@media all and (min-width: 960px) {
  .footer .foot-contact li {
    display: inline-block;
    margin-top: 30px;
    vertical-align: top;
  }
}
@media screen and (max-width: 959px) {
  .footer .foot-contact li {
    margin-top: 15px;
  }
}
.footer .foot-contact li.mail i,
.footer .foot-contact li.diagnosis i {
  position: relative;
  display: inline-block;
  margin-top: -5px;
  vertical-align: middle;
}
@media all and (min-width: 960px) {
  .footer .foot-contact li.mail,
  .footer .foot-contact li.diagnosis {
    width: 33.333%;
    padding-left: 20px;
  }
  .footer .foot-contact li.mail i,
  .footer .foot-contact li.diagnosis i {
    font-size: 24px;
  }
}
@media screen and (max-width: 959px) {
  .footer .foot-contact li.mail i,
  .footer .foot-contact li.diagnosis i {
    font-size: 20px;
  }
}
.footer .foot-contact li.mail a,
.footer .foot-contact li.diagnosis a {
  color: #fff;
  font-weight: 700;
}
@media all and (min-width: 960px) {
  .footer .foot-contact li.mail a,
  .footer .foot-contact li.diagnosis a {
    line-height: 60px;
  }
}
@media screen and (max-width: 959px) {
  .footer .foot-contact li.mail a,
  .footer .foot-contact li.diagnosis a {
    padding: 15px;
  }
}
.footer .foot-contact li.mail a {
  background: #c00;
}
.footer .foot-contact li.diagnosis a {
  background: #19375a;
}
.footer .foot-contact li.tel {
  line-height: 1;
}
@media all and (min-width: 960px) {
  .footer .foot-contact li.tel {
    text-align: left;
  }
}
@media screen and (max-width: 959px) {
  .footer .foot-contact li.tel a {
    padding: 15px;
    background: #c00;
    color: #fff;
    font-weight: 500;
  }
}
@media all and (min-width: 960px) {
  .footer .foot-contact li.tel i {
    font-size: 36px;
  }
}
@media screen and (max-width: 959px) {
  .footer .foot-contact li.tel i {
    font-size: 20px;
  }
}
.footer .foot-contact li.tel em {
  font-family: "Roboto Condensed", sans-serif;
}
@media all and (min-width: 960px) {
  .footer .foot-contact li.tel em {
    font-size: 38px;
    font-weight: 700;
  }
}
@media screen and (max-width: 959px) {
  .footer .foot-contact li.tel em {
    font-size: 24px;
  }
}
.footer .foot-contact li.tel span {
  display: block;
}
@media all and (min-width: 960px) {
  .footer .foot-contact li.tel span {
    font-size: 14px;
    text-align: right;
  }
}
@media screen and (max-width: 959px) {
  .footer .foot-contact li.tel span {
    font-size: 10px;
  }
}
.footer .foot-contact i {
  margin-right: 5px;
}
.footer .foot-contact a {
  display: block;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  text-decoration: none;
}

/* =========================================================
	foot-action
========================================================= */
.foot-action {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  background: #fff;
  text-align: center;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  z-index: 9999999;
}
@media all and (min-width: 960px) {
  .foot-action {
    padding: 20px 0;
  }
}
.foot-action ul {
  margin: auto;
  text-align: center;
  zoom: 1;
}
.foot-action ul:before,
.foot-action ul:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.foot-action ul:after {
  clear: both;
}
@media all and (min-width: 960px) {
  .foot-action ul {
    max-width: 1100px;
  }
}
@media all and (min-width: 960px) {
  .foot-action li {
    display: inline-block;
    vertical-align: top;
    line-height: 1;
  }
}
@media screen and (max-width: 959px) {
  .foot-action li {
    float: left;
    width: 33.3333%;
    line-height: 1.3;
  }
}
@media all and (min-width: 960px) {
  .foot-action li.mail,
  .foot-action li.diagnosis {
    width: 33.333%;
    padding-left: 20px;
  }
  .foot-action li.mail i,
  .foot-action li.diagnosis i {
    position: relative;
    display: inline-block;
    margin-top: -5px;
    font-size: 24px;
    vertical-align: middle;
  }
}
@media screen and (max-width: 959px) {
  .foot-action li.mail,
  .foot-action li.diagnosis {
    border-left: 1px solid #fff;
    font-size: 10px;
  }
}
.foot-action li.mail a,
.foot-action li.diagnosis a {
  color: #fff;
  font-weight: 700;
}
@media all and (min-width: 960px) {
  .foot-action li.mail a,
  .foot-action li.diagnosis a {
    -webkit-border-radius: 5px;
    border-radius: 5px;
    line-height: 50px;
  }
}
.foot-action li.mail a {
  background: #c00;
}
.foot-action li.diagnosis a {
  background: #19375a;
}
@media all and (min-width: 960px) {
  .foot-action li.tel {
    text-align: left;
  }
}
@media screen and (max-width: 959px) {
  .foot-action li.tel a {
    background: #c00;
    color: #fff;
    font-weight: 700;
  }
}
@media all and (min-width: 960px) {
  .foot-action li.tel i {
    font-size: 30px;
  }
}
.foot-action li.tel em {
  font-family: "Roboto Condensed", sans-serif;
}
@media all and (min-width: 960px) {
  .foot-action li.tel em {
    font-size: 40px;
    font-weight: 700;
  }
}
@media screen and (max-width: 959px) {
  .foot-action li.tel em {
    display: none;
  }
}
.foot-action li.tel span {
  display: block;
}
@media all and (min-width: 960px) {
  .foot-action li.tel span {
    font-size: 12px;
    text-align: right;
  }
}
@media screen and (max-width: 959px) {
  .foot-action li.tel span {
    font-size: 10px;
  }
}
@media all and (min-width: 960px) {
  .foot-action i {
    margin-right: 5px;
  }
}
@media screen and (max-width: 959px) {
  .foot-action i {
    display: block;
    margin-bottom: 3px;
    font-size: 24px;
  }
}
.foot-action a {
  display: block;
  text-decoration: none;
}
@media screen and (max-width: 959px) {
  .foot-action a {
    padding: 10px;
  }
}

/* =========================================================
	フッター
========================================================= */
@media all and (min-width: 960px) {
  .footer {
    background: #f8f8f8;
  }
}
.footer .foot-link a {
  display: block;
  color: #000;
  text-decoration: none;
}
.footer .copyright {
  padding: 10px 0;
  background: #c00;
  color: #fff;
  text-align: center;
  font-weight: 500;
  line-height: 1;
}
@media all and (min-width: 960px) {
  .footer h2 {
    display: none;
  }
  .footer .foot-link {
    max-width: 1100px;
    margin: auto;
    padding: 50px 0;
    zoom: 1;
    overflow: hidden;
  }
  .footer .foot-link:before,
  .footer .foot-link:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden;
  }
  .footer .foot-link:after {
    clear: both;
  }
  .footer .foot-link .box-link {
    float: left;
  }
  .footer .foot-link .box-link li {
    letter-spacing: 0;
  }
  .footer .foot-link .box-link a {
    padding: 7px 0;
    transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
  }
  .footer .foot-link .box-link a:hover {
    color: #c00;
  }
  .footer .foot-link .box-link i {
    margin-right: 2px;
    color: #bfbfbf;
    font-size: 10px;
  }
  .footer .foot-link .box-link i.ico-external {
    margin-left: 3px;
    font-size: 14px;
  }
  .footer .foot-link .base-menu {
    margin-right: 20px;
  }
  .footer .foot-link .base-menu li {
    font-size: 14px;
  }
  .footer .foot-link .course-menu {
    zoom: 1;
  }
  .footer .foot-link .course-menu:before,
  .footer .foot-link .course-menu:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden;
  }
  .footer .foot-link .course-menu:after {
    clear: both;
  }
  .footer .foot-link .course-menu h3 {
    padding-top: 7px;
    font-size: 14px;
  }
  .footer .foot-link .course-menu h3 i {
    display: none;
  }
  .footer .foot-link .course-menu div {
    float: left;
  }
  .footer .foot-link .course-menu div:first-of-type {
    margin-right: 10px;
  }
  .footer .foot-link .course-menu dt {
    margin-top: 15px;
    font-size: 13px;
    font-weight: 500;
  }
  .footer .foot-link .course-menu dt a {
    padding: 0;
  }
  .footer .foot-link .course-menu li {
    font-size: 13px;
  }
  .footer .foot-link .fb {
    float: right;
    width: 32%;
  }
  .footer .copyright {
    font-size: 12px;
    letter-spacing: 1px;
  }
}
@media screen and (max-width: 959px) {
  .footer h2 {
    display: none;
  }
  .footer .foot-link .box-link ul {
    /*margin-right: -1px;*/
    zoom: 1;
  }
  .footer .foot-link .box-link ul:before,
  .footer .foot-link .box-link ul:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden;
  }
  .footer .foot-link .box-link ul:after {
    clear: both;
  }
  .footer .foot-link .box-link li {
    float: left;
    width: 50%;
    border-bottom: 1px solid #ededed;
    border-right: 1px solid #ededed;
    font-size: 14px;
    letter-spacing: 0;
  }
  .footer .foot-link .box-link a {
    padding: 15px;
  }
  .footer .foot-link .box-link i {
    margin-right: 2px;
    color: #bfbfbf;
    font-size: 10px;
  }
  .footer .foot-link .box-link i.ico-external {
    margin-left: 3px;
    font-size: 10px;
  }
  .footer .foot-link .course-menu h3 {
    padding: 15px;
    background: #666;
    color: #fff;
    line-height: 1;
    font-size: 14px;
  }
  .footer .foot-link .course-menu h3 i {
    display: none;
  }
  .footer .foot-link .course-menu dl.link-executive li,
  .footer .foot-link .course-menu dl.link-kids li {
    float: none;
    width: 100%;
  }
  .footer .foot-link .course-menu dt {
    position: relative;
    margin-top: -1px;
    border-top: 1px solid #ededed;
    background: #f8f8f8;
    font-size: 14px;
  }
  .footer .foot-link .course-menu dt a,
  .footer .foot-link .course-menu dt span {
    display: block;
    padding: 15px;
  }
  .footer .foot-link .course-menu dd {
    border-top: 1px solid #ededed;
  }
  .footer .foot-link .fb {
    width: 90%;
    max-width: 500px;
    margin: auto;
    padding: 20px 0;
  }
  .footer .copyright {
    font-size: 10px;
  }
}
@media screen and (max-width: 767px) {
  .footer {
    border-top: none;
  }
  .footer h2 {
    position: relative;
    display: block;
    padding: 15px 15px 17px;
    background: #666;
    color: #fff;
    line-height: 1;
  }
  .footer h2 i {
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -5px;
    font-size: 12px;
    transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
  }
  .footer .foot-link .box-link li {
    font-size: 12px;
  }
  .footer .foot-link .box-link a {
    position: relative;
    padding: 15px 15px 15px 28px;
  }
  .footer .foot-link .box-link i {
    vertical-align: top;
  }
  .footer .foot-link .box-link i.icon-arrow {
    position: absolute;
    top: 17px;
    left: 15px;
    color: #bfbfbf;
    font-size: 10px;
  }
  .footer .foot-link .box-link i.icon-arrow.ico-external {
    margin-left: 3px;
    font-size: 14px;
  }
  .footer .foot-link .course-menu h3 {
    background: #ddd;
    color: #000;
  }
}

/* =========================================================
	pagetop
========================================================= */
.pagetop {
  position: fixed;
  right: 0;
  bottom: 0;
  width: 40px;
  height: 40px;
}
.pagetop a {
  display: table-cell;
  width: 40px;
  height: 40px;
  background: #ccc;
  color: #fff;
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
}

@media screen and (max-width: 959px) {
  .pagetop {
    display: none !important;
  }
}
/* =========================================================
 parts style
========================================================= */
.contents {
  /* shadow box
  --------------------------------------------------------- */
  /* results box
  --------------------------------------------------------- */
  /* faq
  --------------------------------------------------------- */
  /* magazine
  --------------------------------------------------------- */
  /* teacher
  --------------------------------------------------------- */
  /* course
  --------------------------------------------------------- */
}
.contents .box-shadow {
  overflow: hidden;
  background: #fff;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.contents .results-list {
  zoom: 1;
}
.contents .results-list:before,
.contents .results-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.contents .results-list:after {
  clear: both;
}
@media all and (min-width: 960px) {
  .contents .results-list {
    margin: 0 -20px;
  }
}
@media screen and (max-width: 959px) {
  .contents .results-list {
    /*margin: 0 -5px;*/
    margin: 0;
  }
}
.contents .box-results {
  float: left;
}
.contents .box-results dl {
  position: relative;
  padding-top: 100%;
  border: 4px solid #c00;
  background: #fff;
  -webkit-border-radius: 100%;
  border-radius: 100%;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  text-align: center;
}
.contents .box-results dl dt {
  position: absolute;
  background: #c00;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  -webkit-border-radius: 100%;
  border-radius: 100%;
  font-weight: 600;
  line-height: 1;
}
body#home-page .contents .box-results dl dt {
  font-weight: 500;
}
.contents .box-results dl dt span {
  display: block;
  font-size: 10px;
}
.contents .box-results dl dd {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  color: #c00;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: 0;
}
#home-page .contents .box-results dl dd {
  font-weight: 500;
}
.contents .box-results dl dd div {
  width: 100%;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.contents .box-results dl dd em {
  line-height: 1;
}
.contents .box-results:nth-of-type(1) dd em {
  line-height: 1.2;
}
.contents .box-results:nth-of-type(2) dd em {
  font-family: "Roboto Condensed", sans-serif;
}
.contents .box-results:nth-of-type(3) dd em {
  line-height: 1.2;
}
.contents .box-results:nth-of-type(4) dd em {
  font-family: "Roboto Condensed", sans-serif;
  line-height: 0.9;
}
@media all and (min-width: 960px) {
  .contents .box-results {
    width: 25%;
    padding: 0 20px;
  }
  .contents .box-results dl dt {
    top: -4px;
    left: -4px;
    width: 70px;
    height: 70px;
    padding-top: 18px;
    font-size: 30px;
  }
  .contents .box-results:nth-of-type(1) dd {
    font-size: 20px;
  }
  .contents .box-results:nth-of-type(1) dd em {
    font-size: 30px;
  }
  .contents .box-results:nth-of-type(2) dd {
    font-size: 30px;
  }
  .contents .box-results:nth-of-type(2) dd em {
    font-size: 50px;
  }
  .contents .box-results:nth-of-type(3) dd {
    font-size: 20px;
  }
  .contents .box-results:nth-of-type(3) dd em {
    font-size: 36px;
  }
  .contents .box-results:nth-of-type(4) dd {
    font-size: 20px;
  }
  .contents .box-results:nth-of-type(4) dd em {
    font-size: 69px;
  }
  .contents .box-results:nth-of-type(4) dd span {
    font-size: 39px;
  }
}
@media screen and (max-width: 959px) {
  body#home-page .contents .box-results {
    width: 33.33%;
    padding: 0 5px;
    padding-bottom: 10px;
    /*margin-bottom: 10px;
    border-bottom: 1px dotted #CCC;*/
  }
  body#home-page .contents .box-results:last-child {
    display: none;
  }
  .contents .box-results {
    width: 50%;
    padding: 0 5px;
    padding-bottom: 10px;
    /*margin-bottom: 10px;
    border-bottom: 1px dotted #CCC;*/
  }
  body#home-page .contents .box-results dl dt {
    top: -20px;
    left: -10px;
    width: 40px;
    height: 40px;
    padding-top: 10px;
    font-size: 20px;
    letter-spacing: 0;
    /*position: static;
    float: left;
    display: inline-block;
    margin-right: 15px;
    line-height: 1.1;*/
  }
  .contents .box-results dl dt {
    top: -14px;
    left: -14px;
    width: 55px;
    height: 55px;
    padding-top: 14px;
    font-size: 24px;
    letter-spacing: 0;
  }
  /*.contents .box-results dd {
        font-size: 16px !important;
        position: static !important;
        text-align: left;
        display: inline-block;
        float: left;
        width: 76% !important;
        display: table;
    }*/
  body#home-page .contents .box-results dd,
  body#home-page .contents .box-results dd span,
  body#home-page .contents .box-results dd em {
    font-size: 12px !important;
  }
  .contents .box-results:nth-of-type(1) dd {
    font-size: 16px;
  }
  .contents .box-results:nth-of-type(1) dd em {
    font-size: 20px;
  }
  .contents .box-results:nth-of-type(2) dd {
    font-size: 20px;
  }
  .contents .box-results:nth-of-type(2) dd em {
    font-size: 36px;
  }
  .contents .box-results:nth-of-type(3) dd {
    font-size: 16px;
  }
  .contents .box-results:nth-of-type(3) dd em {
    font-size: 26px;
  }
  .contents .box-results:nth-of-type(4) dd {
    font-size: 14px;
  }
  .contents .box-results:nth-of-type(4) dd em {
    font-size: 40px;
  }
  .contents .box-results:nth-of-type(4) dd span {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  /*.contents .box-results {
    width: 100%;
  }*/
  .contents .box-results:nth-of-type(1),
  .contents .box-results:nth-of-type(2) {
    margin-bottom: 15px;
  }
}
.contents .faq {
  position: relative;
  width: 100%;
  border-bottom: 1px dotted #ededed;
}
.contents .faq:last-of-type {
  margin-bottom: 0;
}
.contents .faq .icon-arrow {
  position: absolute;
  right: 0;
  color: #c00;
  transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
}
.contents .faq.on .icon-arrow {
  transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
}
.contents .faq h3,
.contents .faq .answer {
  display: table;
  width: 100%;
}
.contents .faq h3 i,
.contents .faq .answer i {
  display: table-cell;
  font-family: "Roboto Condensed", sans-serif;
  text-align: center;
  vertical-align: top;
  font-weight: 500;
}
.contents .faq h3 i span,
.contents .faq .answer i span {
  display: block;
  padding: 0;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.contents .faq h3 {
  margin-bottom: 0;
  padding: 0;
  background: none;
  font-weight: 500;
}
.contents .faq h3:before {
  background: none;
}
.contents .faq h3 span {
  display: table-cell;
  padding: 0 30px 0 15px;
}
.contents .faq h3 i span {
  background: #c00;
  color: #fff;
}
.contents .faq h3 span {
  vertical-align: middle;
}
.contents .faq .answer {
  display: none;
  margin-top: 20px;
}
.contents .faq .answer i span {
  border: 3px solid #c00;
  background: #fff;
  color: #c00;
}
.contents .faq .answer div {
  display: table-cell;
  padding-left: 15px;
  vertical-align: middle;
  line-height: 1.4;
}
@media all and (min-width: 960px) {
  .contents .faq {
    margin-bottom: 30px;
    padding-bottom: 30px;
  }
  .contents .faq .icon-arrow {
    top: 20px;
    font-size: 20px;
  }
  .contents .faq h3 i,
  .contents .faq .answer i {
    width: 50px;
  }
  .contents .faq h3 i span,
  .contents .faq .answer i span {
    width: 50px;
    font-size: 30px;
    line-height: 50px;
  }
  .contents .faq h3 {
    cursor: pointer;
    font-size: 20px;
  }
  .contents .faq .answer i span {
    line-height: 44px;
  }
}
@media screen and (max-width: 959px) {
  .contents .faq {
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
  .contents .faq .icon-arrow {
    top: 15px;
    font-size: 20px;
  }
  .contents .faq h3 i,
  .contents .faq .answer i {
    width: 40px;
  }
  .contents .faq h3 i span,
  .contents .faq .answer i span {
    width: 40px;
    font-size: 20px;
    line-height: 40px;
  }
  .contents .faq h3 {
    font-size: 18px;
  }
  .contents .faq .answer i span {
    line-height: 34px;
  }
}
@media screen and (max-width: 767px) {
  .contents .faq {
    margin-bottom: 15px;
    padding-bottom: 15px;
  }
  .contents .faq .icon-arrow {
    top: 5px;
    font-size: 16px;
  }
  .contents .faq h3 i,
  .contents .faq .answer i {
    width: 30px;
  }
  .contents .faq h3 i span,
  .contents .faq .answer i span {
    width: 30px;
    font-size: 16px;
    line-height: 30px;
  }
  .contents .faq h3 {
    font-size: 16px;
  }
  .contents .faq .answer i span {
    line-height: 24px;
  }
}
.contents .magazine-list {
  position: relative;
  text-align: center;
  zoom: 1;
}
.contents .magazine-list:before,
.contents .magazine-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.contents .magazine-list:after {
  clear: both;
}
.contents .magazine-list h3 {
  padding: 0;
  background: none;
}
.contents .magazine-list h3:before,
.contents .magazine-list h3:after {
  display: none;
}
.contents .magazine-list .item {
  float: left;
}
.contents .magazine-list .item dt,
.contents .magazine-list .item dd {
  line-height: 1.3;
}
@media all and (min-width: 960px) {
  .contents .magazine-list {
    margin: 0 -18px;
  }
  .contents .magazine-list h3 {
    margin-bottom: 30px;
    font-size: 30px;
  }
  .contents .magazine-list .item {
    width: 16.666%;
    padding: 0 18px;
  }
  .contents .magazine-list .item .img {
    margin-bottom: 10px;
  }
  .contents .magazine-list .item .img img {
    width: 100%;
  }
  .contents .magazine-list .item dt {
    font-size: 14px;
  }
  .contents .magazine-list .item dd {
    margin-top: 5px;
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
  .contents .magazine-list {
    margin: 0 -10px;
  }
  .contents .magazine-list h3 {
    margin-bottom: 20px;
    font-size: 20px;
  }
  .contents .magazine-list .item {
    width: 25%;
    margin-bottom: 20px;
    padding: 0 10px;
  }
  .contents .magazine-list .item .img {
    margin-bottom: 10px;
  }
  .contents .magazine-list .item dt {
    font-size: 14px;
  }
  .contents .magazine-list .item dd {
    margin-top: 5px;
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  .contents .magazine-list {
    /*margin: 0 -5px;*/
    margin: 0;
  }
  .contents .magazine-list h3 {
    margin-bottom: 15px;
    font-size: 16px;
  }
  .contents .magazine-list .item {
    width: 32%;
    margin-bottom: 15px;
    padding: 0 5px;
  }
  .contents .magazine-list .item dt {
    font-size: 12px;
  }
  .contents .magazine-list .item dd {
    font-size: 10px;
  }
}
.contents .teacher-list {
  zoom: 1;
}
.contents .teacher-list:before,
.contents .teacher-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.contents .teacher-list:after {
  clear: both;
}
@media all and (min-width: 960px) {
  .contents .teacher-list {
    margin: 0 -20px;
  }
}
@media screen and (max-width: 959px) {
  .contents .teacher-list {
    margin: 0 -10px;
  }
}
@media screen and (max-width: 767px) {
  .contents .teacher-list {
    margin: 0;
  }
}
.contents .box-teacher {
  float: left;
}
.contents .box-teacher .inner {
  overflow: hidden;
  background: #fff;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.contents .box-teacher h3 {
  margin-bottom: 0;
  padding: 0;
  background: none;
}
.contents .box-teacher h3:before {
  background: none;
}
.contents .box-teacher h3 span {
  font-family: "Roboto Condensed", sans-serif;
}
.contents .box-teacher dt {
  width: 80px;
  margin: 15px 0 5px;
  background: #c00;
  color: #fff;
  text-align: center;
  line-height: 20px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
.contents .box-teacher dd {
  color: #666;
  line-height: 1.3;
}
@media all and (min-width: 960px) {
  .contents .box-teacher {
    width: 25%;
    padding: 0 16px 0 17px;
  }
  .contents .box-teacher .inner {
    padding-bottom: 20px;
  }
  .contents .box-teacher .img {
    margin-bottom: 20px;
    text-align: center;
  }
  .contents .box-teacher .txt {
    padding: 0 20px;
  }
  .contents .box-teacher h3 {
    font-size: 18px;
  }
  .contents .box-teacher h3 span {
    margin-left: 5px;
    font-size: 11px;
  }
  .contents .box-teacher dt {
    font-size: 11px;
  }
  .contents .box-teacher dd {
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
  .contents .box-teacher {
    width: 33.333%;
    padding: 0 10px 0;
  }
  .contents .box-teacher .inner {
    padding-bottom: 15px;
  }
  .contents .box-teacher .img {
    margin-bottom: 15px;
  }
  .contents .box-teacher .txt {
    padding: 0 15px;
  }
  .contents .box-teacher h3 {
    font-size: 18px;
    text-align: center;
  }
  .contents .box-teacher h3 span {
    display: block;
    margin-top: 5px;
    font-size: 11px;
  }
  .contents .box-teacher dt {
    font-size: 11px;
  }
  .contents .box-teacher dd {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  .contents .box-teacher {
    width: 50%;
    padding: 0 5px;
  }
  .contents .box-teacher .txt {
    padding: 0 10px;
  }
  .contents .box-teacher h3 {
    font-size: 16px;
  }
  .contents .box-teacher h3 span {
    font-size: 10px;
  }
  .contents .box-teacher dt {
    width: 65px;
    font-size: 10px;
    letter-spacing: 0;
  }
}
.contents .teacher .slick-list {
  padding: 5px 0 !important;
}
.contents .teacher .slick-dots {
  position: relative;
  height: 8px;
  font-size: 0;
  text-align: center;
  z-index: 2;
}
.contents .teacher .slick-dots li {
  cursor: pointer;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 3px;
  background: #d9d9d9;
  font-size: 0;
  text-indent: -9999px;
  -webkit-border-radius: 100%;
  border-radius: 100%;
}
.contents .teacher .slick-dots li.slick-active {
  background: #c00;
}
@media all and (min-width: 960px) {
  .contents .teacher .slick-dots {
    margin: 30px auto 0;
    width: 20%;
  }
}
@media screen and (max-width: 959px) {
  .contents .teacher .slick-dots {
    margin: 20px auto 0;
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .contents .teacher .slick-dots {
    width: 80%;
  }
}
.contents .teacher .cal-arrows {
  position: relative;
  height: 40px;
  margin: -14px auto 0;
  z-index: 1;
}
.contents .teacher .cal-arrows .slick-arrow {
  top: 10px;
}
.contents .teacher .slick-next,
.contents .teacher .slick-prev,
.contents .teacher .cal-arrows .slick-next,
.contents .teacher .cal-arrows .slick-prev {
  cursor: pointer;
  position: absolute;
  color: #c00;
}
.contents .teacher .slick-next {
  right: -10px;
  bottom: 50%;
  margin-top: -8px;
  z-index: 1000;
}
.contents .teacher .slick-prev {
  left: -10px;
  bottom: 50%;
  margin-top: -8px;
  z-index: 1000;
  transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}
.cal-arrows {
  display: none;
}
.contents .teacher .slick-next:before,
.contents .teacher .slick-prev:before,
.contents .teacher .cal-arrows .slick-next:before,
.contents .teacher .cal-arrows .slick-prev:before {
  content: "";
}
.contents .teacher .cal-arrows i {
  font-size: 20px;
}
.contents .teacher .cal-arrows .slick-next {
  right: 0;
}
.contents .teacher .slick-prev,
.contents .teacher .cal-arrows .slick-prev {
  left: 0;
  transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}
@media all and (min-width: 960px) {
  .contents .teacher .cal-arrows {
    width: 30%;
  }
}
@media screen and (max-width: 959px) {
  .contents .teacher .cal-arrows {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  .contents .teacher .cal-arrows {
    width: 100%;
  }
}
.contents .box-course a {
  display: block;
  padding-bottom: 15px;
  text-decoration: none;
  zoom: 1;
}
.contents .box-course a:before,
.contents .box-course a:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.contents .box-course a:after {
  clear: both;
}
.contents .box-course h3 {
  position: relative;
  margin-bottom: 15px;
  padding: 15px;
  background: #ccc;
  color: #fff;
  font-size: 18px;
}
.contents .box-course h3:before {
  display: none;
}
.contents .box-course h3 span {
  display: table-cell;
  vertical-align: middle;
}
.contents .box-course h3 i {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 15px;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .contents .box-course h3 {
    font-size: 16px;
  }
}
.contents .box-course .img {
  position: relative;
  float: left;
  width: 125px;
  padding-left: 15px;
}
.contents .recommended .img {
  position: relative;
}
.contents .box-course .img i,
.contents .recommended .img i {
  display: block;
  position: absolute;
  left: 15px;
  bottom: 0;
  width: 50px;
  transform: rotate(-15deg);
  -moz-transform: rotate(-15deg);
  -webkit-transform: rotate(-15deg);
}
.contents .recommended .img i {
  width: 80px;
}

@media screen and (max-width: 959px) {
  .contents .box-course .img {
    width: 100px;
  }
  .contents .box-course .img i {
    left: 10px;
    width: 40px;
  }
  .contents .recommended .img i {
    width: 50px;
  }
}
@media screen and (max-width: 767px) {
  .contents .box-course .img {
    padding-left: 10px;
  }
}
.contents .box-course .txt {
  margin-left: 125px;
  padding: 0 15px;
}
@media screen and (max-width: 959px) {
  .contents .typeC .txt,
  .contents .box-course .txt {
    margin-left: 100px;
  }
}
@media screen and (max-width: 767px) {
  .contents .typeC .txt,
  .contents .box-course .txt {
    padding: 0 10px;
  }
  #course-page .contents .typeC .txt dt {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #ededed;
    line-height: 1.3;
  }
}
.contents .box-course .txt h4 {
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: 0.5;
}
.contents .box-course .txt h4 span {
  display: block;
  margin-bottom: 3px;
  font-size: 11px;
  font-weight: 700;
}
.contents .box-course .txt dt,
.contents .box-course .txt dd {
  line-height: 1.3;
  letter-spacing: 0;
}
.contents .box-course .txt dt {
  margin-bottom: 10px;
  font-weight: 900;
}
.contents .box-course .txt dd {
  color: #666;
  font-size: 12px;
}
.contents .box-course .txt .list li {
  padding-left: 10px;
  color: #000;
  font-size: 12px;
  line-height: 1.5;
}
.contents .box-course .txt .list li:before {
  top: 6px;
}
.contents .box-course .summary {
  clear: both;
  padding: 15px 15px 0;
}
.contents .box-course .summary p {
  color: #666;
  font-size: 12px;
  line-height: 1.3;
}
.contents .box-course.orange h3,
.contents .box-course.orange .list li:before {
  background: #eda12f !important;
}
.contents .box-course.orange dt,
.contents .box-course.orange h4 span {
  color: #eda12f;
}
.contents .box-course.pink h3,
.contents .box-course.pink .list li:before {
  background: #da3573 !important;
}
.contents .box-course.pink dt,
.contents .box-course.pink h4 span {
  color: #da3573;
}
.contents .box-course.pur h3,
.contents .box-course.pur .list li:before {
  background: #7b57a1 !important;
}
.contents .box-course.pur dt,
.contents .box-course.pur h4 span {
  color: #7b57a1;
}
.contents .box-course.green h3,
.contents .box-course.green .list li:before {
  background: #19836c !important;
}
.contents .box-course.green dt,
.contents .box-course.green h4 span {
  color: #19836c;
}
.contents .box-course.y-green h3,
.contents .box-course.y-green .list li:before {
  background: #50b420 !important;
}
.contents .box-course.y-green dt,
.contents .box-course.y-green h4 span {
  color: #50b420;
}
.contents .box-course.blue h3,
.contents .box-course.blue .list li:before {
  background: #358cc0 !important;
}
.contents .box-course.blue dt,
.contents .box-course.blue h4 span {
  color: #358cc0;
}

/* index page
========================================================= */
#home-page .mv {
  background: url(../../images/index/main_bg.png) center center/cover;
  height: 481px;
  padding: 57px 0;
  position: relative;
  overflow: hidden;
}
#home-page .mv li {
  float: left;
  margin-right: 30px;
}
#home-page .mv li img,
#home-page .mv li video {
  width: 650px;
  margin: 0 15px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
#home-page .mv li video {
  height: 367px;
}
@media all and (min-width: 960px) {
}
@media screen and (max-width: 959px) {
}
#home-page .contents {
  padding-top: 0;
}
#home-page .contents h2,
#home-page .contents h3 {
  padding: 0;
  border: none;
  background: none;
  line-height: 1;
}
#home-page .contents h2 span,
#home-page .contents h3 span {
  padding: 0;
  background: none;
}
#home-page .contents h2:before,
#home-page .contents h2:after,
#home-page .contents h3:before,
#home-page .contents h3:after {
  display: none;
}
#home-page .contents h2 {
  color: #000;
  font-weight: 500;
  /* font-family: "Roboto Condensed", sans-serif; */
}
#home-page .contents h2 span {
  display: block;
  color: #c00;
  font-weight: 500;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic,
    "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo",
    sans-serif;
}
@media all and (min-width: 960px) {
  #home-page .contents h2 {
    font-size: 14px;
  }
  #home-page .contents h2 span {
    margin-bottom: 10px;
    font-size: 50px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents h2 {
    font-size: 12px;
  }
  #home-page .contents h2 span {
    margin-bottom: 5px;
    font-size: 34px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents h2 {
    font-size: 11px;
  }
  #home-page .contents h2 span {
    font-size: 24px;
  }
  #home-page .contents .philosophy h2 {
    font-size: 24px !important;
  }
}
#home-page .contents .lesson,
#home-page .contents .lead,
#home-page .contents .about,
#home-page .contents .course,
#home-page .contents .results,
#home-page .contents .teacher,
#home-page .contents .info,
#home-page .contents .store .worry,
#home-page .contents .store .faq-section {
  padding: 80px 0;
}
#home-page .contents .lesson .cnt-inner,
#home-page .contents .lead .cnt-inner,
#home-page .contents .about .cnt-inner,
#home-page .contents .course .cnt-inner,
#home-page .contents .results .cnt-inner,
#home-page .contents .teacher .cnt-inner,
#home-page .contents .info .cnt-inner,
#home-page .contents .store .cnt-inner,
#home-page .contents .worry .cnt-inner,
#home-page .contents .faq-section .cnt-inner {
  margin: auto;
  zoom: 1;
}
#home-page .contents .lesson .cnt-inner:before,
#home-page .contents .lesson .cnt-inner:after,
#home-page .contents .lead .cnt-inner:before,
#home-page .contents .lead .cnt-inner:after,
#home-page .contents .about .cnt-inner:before,
#home-page .contents .about .cnt-inner:after,
#home-page .contents .course .cnt-inner:before,
#home-page .contents .course .cnt-inner:after,
#home-page .contents .results .cnt-inner:before,
#home-page .contents .results .cnt-inner:after,
#home-page .contents .teacher .cnt-inner:before,
#home-page .contents .teacher .cnt-inner:after,
#home-page .contents .info .cnt-inner:before,
#home-page .contents .info .cnt-inner:after,
#home-page .contents .store .cnt-inner:before,
#home-page .contents .store .cnt-inner:after,
#home-page .contents .worry .cnt-inner:after,
#home-page .contents .faq-section .cnt-inner:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#home-page .contents .lesson .cnt-inner:after,
#home-page .contents .lead .cnt-inner:after,
#home-page .contents .about .cnt-inner:after,
#home-page .contents .course .cnt-inner:after,
#home-page .contents .results .cnt-inner:after,
#home-page .contents .teacher .cnt-inner:after,
#home-page .contents .info .cnt-inner:after,
#home-page .contents .store .cnt-inner:after,
#home-page .contents .worry .cnt-inner:after,
#home-page .contents .faq-section .cnt-inner:after {
  clear: both;
}
@media all and (min-width: 960px) {
  #home-page .contents .lesson,
  #home-page .contents .lead,
  #home-page .contents .about,
  #home-page .contents .course,
  #home-page .contents .results,
  #home-page .contents .teacher,
  #home-page .contents .info,
  #home-page .contents .store,
  #home-page .contents .worry,
  #home-page .contents .faq-section {
    padding: 80px 0;
  }
  #home-page .contents .lesson .cnt-inner,
  #home-page .contents .lead .cnt-inner,
  #home-page .contents .about .cnt-inner,
  #home-page .contents .course .cnt-inner,
  #home-page .contents .results .cnt-inner,
  #home-page .contents .teacher .cnt-inner,
  #home-page .contents .info .cnt-inner,
  #home-page .contents .store .cnt-inner,
  #home-page .contents .worry .cnt-inner,
  #home-page .contents .faq-section .cnt-inner {
    max-width: 1100px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .lesson,
  #home-page .contents .lead,
  #home-page .contents .about,
  #home-page .contents .course,
  #home-page .contents .results,
  #home-page .contents .teacher,
  #home-page .contents .info,
  #home-page .contents .store,
  #home-page .contents .worry,
  #home-page .contents .faq-section {
    padding: 50px 0;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .lesson, /*#home-page .contents .lead,*/ #home-page .contents .about, #home-page .contents .course, #home-page .contents .results, #home-page .contents .teacher, #home-page .contents .info, #home-page .contents .store, #home-page .contents .worry, #home-page .contents .faq-section {
    padding: 40px 0;
  }
  #home-page .contents .lead {
    padding: 0;
  }
  #home-page .contents .course .popular {
    margin-top: 0 !important;
  }
}
#home-page .contents .philosophy {
  background: #eeeeee;
}
#home-page .contents .philosophy .cnt-inner {
  background: rgba(255, 255, 255, 0.9);
  padding: 65px 60px;
  max-width: 1100px;
  margin: 0 auto;
  -webkit-transform: translateY(-100px);
  -ms-transform: translateY(-100px);
  -o-transform: translateY(-100px);
  transform: translateY(-100px);
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.02);
}
#home-page .contents .philosophy h2 {
  font-family: "Noto Serif JP", "Yu Mincho", "YuMincho", "ＭＳ Ｐ明朝",
    "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  color: #c60000;
  font-size: 36px;
  font-weight: normal;
  letter-spacing: -0.5px;
}
#home-page .contents .philosophy h2 span {
  font-family: "Noto Serif JP", "Yu Mincho", "YuMincho", "ＭＳ Ｐ明朝",
    "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  font-size: 26px;
  font-weight: normal;
  display: inline;
}
#home-page .contents .philosophy p {
  text-align: center;
  line-height: 1.8;
}
#home-page .contents .lesson {
  position: relative;
  border-top: 2px solid #c00;
  background: #f2f2f2;
  text-align: center;
  /*h2 {
  	position: absolute;
  	top: -55px;
  	left: 50%;
  	width: 245px;
  	height: 55px;
  	margin-left: -122px;
  	padding-top: 25px;
  	background: url(../../images/index/lesson-ttl-bg.png) no-repeat top left;
  	@include pre(background-size,100% auto);
  	font-size: 10px;
  	span {
  		margin-bottom: 5px;
  		font-size: 28px;
  	}
  }*/
}
#home-page .contents .lesson dl {
  float: left;
  margin: 0;
}
#home-page .contents .lesson dl a {
  display: block;
  text-decoration: none;
}
#home-page .contents .lesson dl dd {
  margin-top: 10px;
  font-weight: 500;
  letter-spacing: 0;
}
@media all and (min-width: 960px) {
  #home-page .contents .lesson {
    padding: 40px 0 50px;
  }
  #home-page .contents .lesson h2 {
    position: absolute;
    top: -53px;
    left: 50%;
    width: 242px;
    height: 53px;
    margin-left: -121px;
    padding-top: 25px;
    background: url(../../images/index/lesson-ttl-bg.png) no-repeat top left;
    background-size: 100% auto;
    -moz-background-size: 100% auto;
    -webkit-background-size: 100% auto;
    font-size: 10px;
  }
  #home-page .contents .lesson h2 span {
    margin-bottom: 5px;
    font-size: 28px;
    font-weight: 400;
  }
  #home-page .contents .lesson dl {
    width: 16.666%;
  }
  #home-page .contents .lesson dl img {
    width: 110px;
  }
  #home-page .contents .lesson dl dd {
    font-size: 15px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .lesson {
    padding: 30px 0;
  }
  #home-page .contents .lesson .cnt-inner {
    max-width: none;
  }
  #home-page .contents .lesson dl {
    width: 33.333%;
    margin-bottom: 30px;
  }
  #home-page .contents .lesson dl dt,
  #home-page .contents .lesson dl dd {
    margin: auto;
  }
  #home-page .contents .lesson dl dt {
    width: 60%;
    margin-bottom: 10px;
  }
  #home-page .contents .lesson dl dd {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .lesson {
    padding: 20px 0;
  }
  #home-page .contents .lesson .cnt-inner {
    padding: 0 15px;
  }
  #home-page .contents .lesson dl {
    /*width: 50%;*/
    margin-bottom: 20px;
    padding: 0 15px;
  }
  #home-page .contents .lesson dl:nth-last-of-type(2),
  #home-page .contents .lesson dl:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #home-page .contents .lesson dl dt,
  #home-page .contents .lesson dl dd {
    width: auto;
  }
  #home-page .contents .lesson dl dd {
    font-size: 12px;
  }
  #home-page .contents .lesson dl dd br {
    display: none;
  }
}
#home-page .contents .lead {
  text-align: center;
}
#home-page .contents .lead h2 {
  color: #c00;
  line-height: 1.3;
  font-weight: 400;
}
#home-page .contents .lead h2 em {
  font-size: 50px;
  font-weight: 700;
}
@media all and (min-width: 960px) {
  #home-page .contents .lead h2 {
    font-size: 40px;
  }
  #home-page .contents .lead h2 em {
    font-size: 50px;
  }
  #home-page .contents .lead .img-btm img {
    width: 750px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .lead .cnt-inner {
    max-width: 90%;
  }
  #home-page .contents .lead h2 {
    font-size: 20px;
  }
  #home-page .contents .lead h2 em {
    font-size: 30px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .lead h2 {
    font-size: 24px;
    padding-top: 40px;
  }
  #home-page .contents .lead h2 em {
    font-size: 24px;
  }
}
#home-page .contents .lead.img02 {
  background: #f2f2f2;
}
#home-page .contents .lead.img02 img {
  width: auto;
  max-width: 100%;
}
#home-page .contents .lead.img02 h2 {
  font-size: 14px;
  color: #000;
  font-weight: 500;
  line-height: 1;
}
#home-page .contents .about {
  background: #f8f8f8;
}
#home-page .contents .about .about-list {
  zoom: 1;
  position: relative;
}
#home-page .contents .about .about-list:before,
#home-page .contents .about .about-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#home-page .contents .about .about-list:after {
  clear: both;
}
#home-page .contents .about .about-list a {
  text-decoration: none;
}
#home-page .contents .about .about-list .item {
  float: left;
  text-align: center;
}
#home-page .contents .about .about-list .item a {
  display: block;
}
#home-page .contents .about .about-list .item dl {
  position: relative;
}
#home-page .contents .about .about-list .item dt {
  box-align: center;
  width: 50px;
  height: 50px;
  margin: 0 auto 15px;
  background: #c00;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 30px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
}
#home-page .contents .about .about-list .item dt div {
  display: table-cell;
  width: 50px;
  height: 50px;
  vertical-align: middle;
}
#home-page .contents .about .about-list .item dt span {
  display: block;
  font-size: 10px;
}
#home-page .contents .about .about-list .item dd {
  color: #c00;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0;
}
#home-page .contents .about .about-list .item p {
  color: #666;
  font-size: 14px;
  text-align: left;
}
#home-page .contents .about .about-list .item .more {
  display: block;
  border-top: 1px solid #ededed;
  color: #c00;
  font-family: "Roboto Condensed", sans-serif;
  text-align: right;
  line-height: 1;
}
#home-page .contents .about .about-list .item .more i {
  margin-left: 3px;
  font-size: 10px;
}
@media all and (min-width: 960px) {
  #home-page .contents .about .about-list {
    margin: 0 -15px;
  }
  #home-page .contents .about .about-list .item {
    width: 25%;
    padding: 0 15px;
  }
  #home-page .contents .about .about-list .item .txt {
    margin-bottom: 20px;
    padding: 0 20px;
  }
  #home-page .contents .about .about-list .item dl {
    margin: -25px 0 15px;
  }
  #home-page .contents .about .about-list .item dd {
    font-size: 20px;
  }
  #home-page .contents .about .about-list .item p {
    font-size: 14px;
  }
  #home-page .contents .about .about-list .item .more {
    margin: 0 20px;
    padding: 15px 0 20px;
    font-size: 13px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .about .about-list {
    margin: 0 15px;
  }
  #home-page .contents .about .about-list .item {
    width: 50%;
    margin-bottom: 30px;
    padding: 0 15px;
  }
  /*  #home-page .contents .about .about-list .item:nth-last-of-type(2), #home-page .contents .about .about-list .item:nth-last-of-type(1) {
    margin-bottom: 0;
  }*/
  #home-page .contents .about .about-list .item .txt {
    margin-bottom: 15px;
    padding: 0 15px;
  }
  #home-page .contents .about .about-list .item dl {
    margin: -25px 0 15px;
  }
  #home-page .contents .about .about-list .item dd {
    font-size: 16px;
  }
  #home-page .contents .about .about-list .item p {
    font-size: 12px;
  }
  #home-page .contents .about .about-list .item .more {
    margin: 0 15px;
    padding: 15px 0;
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .about .about-list {
    margin: 0 5px;
  }
  #home-page .contents .about .about-list .item {
    width: 50%;
    margin-bottom: 15px;
    padding: 0 5px;
  }
  #home-page .contents .about .about-list .item .txt {
    margin-bottom: 10px;
    padding: 0 10px;
  }
  #home-page .contents .about .about-list .item dl {
    margin: -20px 0 10px;
  }
  #home-page .contents .about .about-list .item dt {
    width: 40px;
    height: 40px;
    margin: 0 auto 10px;
    font-size: 20px;
  }
  #home-page .contents .about .about-list .item dt div {
    width: 40px;
    height: 40px;
  }
  #home-page .contents .about .about-list .item dt span {
    font-size: 10px;
  }
  #home-page .contents .about .about-list .item dd {
    font-size: 15px;
  }
  #home-page .contents .about .about-list .item p {
    font-size: 12px;
  }
  #home-page .contents .about .about-list .item .more {
    margin: 0 10px;
    padding: 10px 0;
    font-size: 11px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .about .btn-link {
    margin: 0 10px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .cnt-inner {
    max-width: 90%;
  }
}
#home-page .contents .course .popular {
  margin-top: 60px;
}
#home-page .contents .course .popular .parts {
  background: #eee;
  position: relative;
  /*z-index: 0;*/
  padding-bottom: 40px;
}
#home-page .contents .course .popular .popular-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  min-width: 1100px;
  background: #e5e5e5;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
#home-page .contents .course .popular .popular-photo {
  width: 48%;
  float: left;
  margin-left: 10%;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transform: translateY(-5%);
  padding-bottom: 3%;
}
#home-page .contents .course .popular .popular-sec {
  width: 40%;
  float: right;
  overflow: hidden;
  transform: translateX(-10%);
  padding: 3%;
  background: rgba(255, 255, 255, 0.7);
  margin-top: 5%;
}
#home-page .contents .course .popular .parts:nth-of-type(even) .popular-photo {
  float: right;
  margin-right: 10%;
  margin-left: 0;
}
#home-page .contents .course .popular .parts:nth-of-type(even) .popular-sec {
  float: left;
  transform: translateX(10%);
}
#home-page .contents .course .popular .popular-sec h3 {
  font-size: 0.875rem;
  line-height: 1.4;
  padding-bottom: 15px;
  border-bottom: 1px dotted #000;
}
#home-page .contents .course .popular .popular-sec h3 span {
  font-size: 24px;
  color: #c60000;
}
#home-page .contents .course .popular .popular-sec .point li {
  margin-bottom: 10px;
}
#home-page .contents .course .popular .popular-sec .point li span {
  width: 24px;
  height: 24px;
  font-size: 16px;
  display: inline-block;
  margin-right: 5px;
  background: #c60000;
  color: #fff;
  font-weight: 500;
  font-family: "Roboto Condensed", sans-serif;
  text-align: center;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
#home-page .contents .course .popular .popular-sec .curriculum {
  position: relative;
  text-align: center;
  margin-top: 20px;
}
#home-page .contents .course .popular .popular-sec .curriculum dt {
  position: relative;
  display: inline-block;
  margin-top: -15px;
  padding: 0 15px;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  background: #c60000;
  line-height: 30px;
  -webkit-border-radius: 15px;
  border-radius: 15px;
  z-index: 2;
}
#home-page .contents .course .popular .popular-sec .curriculum dd {
  position: relative;
  margin-top: -15px;
  padding: 20px 15px 15px;
  border: 2px solid #c60000;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  text-align: left;
  z-index: 1;
}
#home-page .contents .course .popular .popular-sec .curriculum dd li {
  margin-top: 10px;
  letter-spacing: 0;
  padding: 0 10px;
  /*width: 50%;
	float: left;*/
}
#home-page .contents .course .popular .popular-sec .point li i,
#home-page .contents .course .popular .popular-sec .curriculum dd li i {
  position: relative;
  top: 4px;
  margin-right: 5px;
  color: #c60000;
  font-size: 20px;
}
#home-page .contents .course .popular .popular-sec .btn-link {
  text-align: left;
}
#home-page .contents .course .popular .popular-sec .btn-link a {
  font-weight: 400;
  min-width: auto;
  padding: 0 60px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

#home-page .contents .course .popular,
#home-page .contents .course .pickup {
  zoom: 1;
}
#home-page .contents .course .popular:before,
#home-page .contents .course .popular:after,
#home-page .contents .course .pickup:before,
#home-page .contents .course .pickup:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#home-page .contents .course .popular:after,
#home-page .contents .course .pickup:after {
  clear: both;
}
#home-page .contents .course .item {
  position: relative;
}
#home-page .contents .course .item .box-shadow {
  position: relative;
}
#home-page .contents .course .item a {
  display: block;
  zoom: 1;
  text-decoration: none;
}
#home-page .contents .course .item a:before,
#home-page .contents .course .item a:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#home-page .contents .course .item a:after {
  clear: both;
}
#course-page .contents .course-special h3,
#home-page .contents .course .item h3 {
  position: relative;
  width: 100%;
  margin: 0;
  color: #000;
  font-weight: 500;
  line-height: 1.3;
}
#home-page .contents .course .item h3 i {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#course-page .contents .course-special .item .ttl,
#home-page .contents .course .item .ttl {
  font-size: 20px;
  color: #c00;
  line-height: 1.4;
  letter-spacing: -2px;
}
#course-page .contents .course-special i {
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #ccc;
}
#home-page .contents .course .item i {
  position: absolute;
  top: 50%;
  right: 5px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #ccc;
}
#home-page .contents .course .item .icon-rank {
  position: absolute;
  top: -10px;
  z-index: 10;
}
#home-page .contents .course .popular h3 span {
  display: table-cell;
  vertical-align: middle;
}
#home-page .contents .course .popular h3 span .cap {
  display: block;
  height: auto;
  font-weight: 500;
}
@media all and (min-width: 960px) {
  #home-page .contents .course .popular h3 i {
    font-size: 20px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .popular h3 i {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .course .popular .item a {
    padding-bottom: 10px;
  }
  #home-page .contents .course .popular h3 i {
    font-size: 14px;
  }
}
#home-page .contents .course .basic {
  margin-bottom: 30px;
}
#home-page .contents .course .basic h3 {
  background: #358cc0;
}
@media all and (min-width: 960px) {
  #home-page .contents .course .basic h3 {
    padding: 0 40px 0 120px;
    font-size: 30px;
  }
  #home-page .contents .course .basic h3 i {
    right: 15px;
  }
  #home-page .contents .course .basic h3 span {
    height: 80px;
  }
  #home-page .contents .course .basic h3 span .cap {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .basic h3 {
    padding: 0 40px 0 70px;
    font-size: 24px;
  }
  #home-page .contents .course .basic h3 i {
    right: 10px;
  }
  #home-page .contents .course .basic h3 span {
    padding: 10px 0;
  }
  #home-page .contents .course .basic h3 span .cap {
    padding: 0;
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .course .basic h3 {
    padding: 0 20px 0 55px;
    font-size: 18px;
    letter-spacing: 0;
  }
  #home-page .contents .course .basic h3 span .cap {
    font-size: 11px;
  }
}
#home-page .contents .course .basic .point li {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dashed #358cc0;
}
#home-page .contents .course .basic .point li span {
  display: inline-block;
  margin-right: 5px;
  background: #358cc0;
  color: #fff;
  font-weight: 500;
  font-family: "Roboto Condensed", sans-serif;
  text-align: center;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
@media all and (min-width: 960px) {
  #home-page .contents .course .basic .icon-rank {
    left: 15px;
    width: 90px;
  }
  #home-page .contents .course .basic .img {
    float: left;
    width: 340px;
    margin-right: 20px;
  }
  #home-page .contents .course .basic .point {
    float: left;
    width: 430px;
    margin-right: 20px;
    padding-top: 25px;
  }
  #home-page .contents .course .basic .point li {
    font-size: 18px;
    line-height: 30px;
  }
  #home-page .contents .course .basic .point li span {
    width: 30px;
    font-size: 20px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .basic .icon-rank {
    left: -15px;
    width: 70px;
  }
  #home-page .contents .course .basic .img {
    float: left;
    width: 250px;
    margin-right: 15px;
    margin-bottom: 15px;
  }
  #home-page .contents .course .basic .point {
    float: none;
    width: auto;
    margin: 0 0 15px 265px;
    padding-right: 15px;
    padding-top: 15px;
  }
  #home-page .contents .course .basic .point li {
    font-size: 16px;
    line-height: 25px;
  }
  #home-page .contents .course .basic .point li span {
    width: 25px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .course .basic .icon-rank {
    width: 60px;
  }
  #home-page .contents .course .basic .img {
    float: none;
    width: auto;
    margin: 0;
  }
  #home-page .contents .course .basic .point {
    float: none;
    width: auto;
    margin: 10px 10px 20px;
    padding-top: 0;
  }
  #home-page .contents .course .basic .point li {
    position: relative;
    padding-left: 25px;
    font-size: 14px;
    line-height: 20px;
  }
  #home-page .contents .course .basic .point li span {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    margin-right: 0;
    font-size: 14px;
  }
}
#home-page .contents .course .basic .curriculum {
  position: relative;
  text-align: center;
}
#home-page .contents .course .basic .curriculum dt {
  position: relative;
  display: inline-block;
  margin-top: -15px;
  padding: 0 15px;
  color: #fff !important;
  font-size: 14px;
  font-weight: 500;
  background: #358cc0;
  line-height: 30px;
  -webkit-border-radius: 15px;
  border-radius: 15px;
  z-index: 2;
}
#home-page .contents .course .basic .curriculum dd {
  position: relative;
  margin-top: -15px;
  padding: 20px 15px 15px;
  border: 2px solid #358cc0;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  text-align: left;
  z-index: 1;
}
#home-page .contents .course .basic .curriculum dd li {
  margin-top: 5px;
  letter-spacing: 0;
}
#home-page .contents .course .basic .curriculum dd li i {
  position: relative;
  top: 4px;
  margin-right: 5px;
  color: #358cc0;
  font-size: 20px;
}
@media all and (min-width: 960px) {
  #home-page .contents .course .basic .curriculum {
    float: left;
    width: 270px;
    padding-top: 20px;
  }
  #home-page .contents .course .basic .curriculum dd li {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .basic .curriculum {
    clear: both;
    margin: 0 15px;
  }
  #home-page .contents .course .basic .curriculum dd {
    zoom: 1;
  }
  #home-page .contents .course .basic .curriculum dd:before,
  #home-page .contents .course .basic .curriculum dd:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden;
  }
  #home-page .contents .course .basic .curriculum dd:after {
    clear: both;
  }
  #home-page .contents .course .basic .curriculum dd li {
    float: left;
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .course .basic .curriculum {
    margin: 0 10px;
  }
  #home-page .contents .course .basic .curriculum dd li {
    float: none;
    width: 100%;
  }
}
#home-page .contents .course .executive .txt dt,
#home-page .contents .course .customize .txt dt {
  font-weight: 900;
  line-height: 1.3;
}
#home-page .contents .course .executive .txt dt span,
#home-page .contents .course .customize .txt dt span {
  display: block;
  margin-top: 5px;
  color: #000;
  font-weight: 500;
}
#home-page .contents .course .executive .txt ul,
#home-page .contents .course .customize .txt ul {
  letter-spacing: -0.4em;
}
#home-page .contents .course .executive .txt li,
#home-page .contents .course .customize .txt li {
  overflow: hidden;
  font-size: 12px;
  text-align: center;
  line-height: 1.3;
  letter-spacing: 0;
  vertical-align: bottom;
}
#home-page .contents .course .executive .txt li span,
#home-page .contents .course .customize .txt li span {
  background: #f8f8f8;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  vertical-align: middle;
}
@media all and (min-width: 960px) {
  #home-page .contents .course .executive,
  #home-page .contents .course .customize {
    width: 48.5%;
  }
  #home-page .contents .course .executive h3,
  #home-page .contents .course .customize h3 {
    height: 60px;
    padding: 0 35px 0 90px;
    font-size: 20px;
  }
  #home-page .contents .course .executive h3 span,
  #home-page .contents .course .customize h3 span {
    height: 60px;
  }
  #home-page .contents .course .executive h3 span .cap,
  #home-page .contents .course .customize h3 span .cap {
    font-size: 11px;
  }
  #home-page .contents .course .executive h3 i,
  #home-page .contents .course .customize h3 i {
    right: 10px;
  }
  #home-page .contents .course .executive .icon-rank,
  #home-page .contents .course .customize .icon-rank {
    left: 10px;
    width: 70px;
  }
  #home-page .contents .course .executive .img,
  #home-page .contents .course .customize .img {
    float: left;
    width: 160px;
    margin-right: 20px;
  }
  #home-page .contents .course .executive .txt dt,
  #home-page .contents .course .customize .txt dt {
    padding: 10px 0 5px;
  }
  #home-page .contents .course .executive .txt dt span,
  #home-page .contents .course .customize .txt dt span {
    font-size: 14px;
  }
  #home-page .contents .course .executive .txt li,
  #home-page .contents .course .customize .txt li {
    display: inline-block;
    height: 40px;
    margin: 5px 5px 0 0;
  }
  #home-page .contents .course .executive .txt li span,
  #home-page .contents .course .customize .txt li span {
    display: table-cell;
    width: 165px;
    height: 40px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .executive h3,
  #home-page .contents .course .customize h3 {
    padding: 0 40px 0 70px;
    font-size: 24px;
  }
  #home-page .contents .course .executive h3 i,
  #home-page .contents .course .customize h3 i {
    right: 10px;
  }
  #home-page .contents .course .executive h3 span,
  #home-page .contents .course .customize h3 span {
    padding: 10px 0;
  }
  #home-page .contents .course .executive h3 span .cap,
  #home-page .contents .course .customize h3 span .cap {
    padding: 0;
    font-size: 14px;
  }
  #home-page .contents .course .executive .img,
  #home-page .contents .course .customize .img {
    float: left;
    width: 140px;
    margin-right: 15px;
  }
  #home-page .contents .course .executive .icon-rank,
  #home-page .contents .course .customize .icon-rank {
    left: -15px;
    width: 70px;
  }
  #home-page .contents .course .executive .txt,
  #home-page .contents .course .customize .txt {
    margin-left: 155px;
  }
  #home-page .contents .course .executive .txt dt,
  #home-page .contents .course .customize .txt dt {
    padding: 15px 0 5px;
  }
  #home-page .contents .course .executive .txt dt span,
  #home-page .contents .course .customize .txt dt span {
    font-size: 12px;
  }
  #home-page .contents .course .executive .txt ul,
  #home-page .contents .course .customize .txt ul {
    font-size: 0;
  }
  #home-page .contents .course .executive .txt li,
  #home-page .contents .course .customize .txt li {
    display: inline-block;
    width: 50%;
    margin: 5px 0 0 0;
    padding-right: 5px;
  }
  #home-page .contents .course .executive .txt li span,
  #home-page .contents .course .customize .txt li span {
    display: block;
    padding: 5px;
  }
  #home-page .contents .course .executive .txt li br,
  #home-page .contents .course .customize .txt li br {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .course .executive .inner,
  #home-page .contents .course .customize .inner {
    position: relative;
  }
  #home-page .contents .course .executive h3,
  #home-page .contents .course .customize h3 {
    padding: 0 20px 0 55px;
    font-size: 18px;
    letter-spacing: 0;
  }
  #home-page .contents .course .executive h3 span .cap,
  #home-page .contents .course .customize h3 span .cap {
    font-size: 11px;
  }
  #home-page .contents .course .executive .icon-rank,
  #home-page .contents .course .customize .icon-rank {
    width: 60px;
  }
  #home-page .contents .course .executive .img,
  #home-page .contents .course .customize .img {
    position: absolute;
    top: 10px;
    left: 10px;
    width: 100px;
  }
  #home-page .contents .course .executive .txt,
  #home-page .contents .course .customize .txt {
    margin-left: 0;
  }
  #home-page .contents .course .executive .txt dt,
  #home-page .contents .course .customize .txt dt {
    display: table-cell;
    height: 125px;
    padding: 10px 10px 0 120px;
    vertical-align: middle;
  }
  #home-page .contents .course .executive .txt dt span,
  #home-page .contents .course .customize .txt dt span {
    font-size: 12px;
  }
  #home-page .contents .course .executive .txt dd,
  #home-page .contents .course .customize .txt dd {
    padding: 10px 10px 0;
  }
  #home-page .contents .course .executive .txt li,
  #home-page .contents .course .customize .txt li {
    display: block;
    width: auto;
    padding: 0;
    margin: 5px 0 0 0;
  }
  #home-page .contents .course .executive .txt li span,
  #home-page .contents .course .customize .txt li span {
    display: block;
    padding: 5px;
  }
  #home-page .contents .course .executive .txt li br,
  #home-page .contents .course .customize .txt li br {
    display: none;
  }
}
#home-page .contents .course .executive h3 {
  background: #19836c;
}
#home-page .contents .course .executive .txt dt {
  color: #19836c;
}
#home-page .contents .course .executive .txt li span {
  background: #e8f2f0;
}
@media all and (min-width: 960px) {
  #home-page .contents .course .executive {
    float: left;
  }
  #home-page .contents .course .executive .txt dt {
    font-size: 18px;
  }
  #home-page .contents .course .executive .txt dt em {
    font-size: 20px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .executive {
    margin-bottom: 30px;
  }
  #home-page .contents .course .executive .txt dt {
    font-size: 16px;
  }
  #home-page .contents .course .executive .txt dt em {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .course .executive .txt dt {
    font-size: 14px;
  }
  #home-page .contents .course .executive .txt dt em {
    font-size: 16px;
  }
}
#home-page .contents .course .customize h3 {
  background: #50b420;
}
#home-page .contents .course .customize .txt dt {
  color: #50b420;
}
#home-page .contents .course .customize .txt li span {
  background: #edf7e8;
}
@media all and (min-width: 960px) {
  #home-page .contents .course .customize {
    float: right;
  }
  #home-page .contents .course .customize .txt dt {
    font-size: 14px;
  }
  #home-page .contents .course .customize .txt dt em {
    font-size: 20px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .customize .txt dt {
    font-size: 14px;
  }
  #home-page .contents .course .customize .txt dt em {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .course .customize .txt dt {
    font-size: 14px;
  }
  #home-page .contents .course .customize .txt dt em {
    font-size: 16px;
  }
}
#home-page .contents .course .pickup {
  padding-top: 60px;
}
#home-page .contents .course .pickup .course-slide {
  position: relative;
  margin: 0 -15px;
}
#home-page .contents .course .pickup .item {
  float: left;
  width: 33.333%;
  padding: 0 15px;
}
#home-page .contents .course .pickup h3 {
  margin-bottom: 10px;
  margin-top: 20px;
  font-size: 13px;
}
#course-page .contents .course-special h3 {
  margin: 20px 0 10px 0;
  padding: 0;
  font-size: 13px;
}
#home-page .contents .course .slick-list {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  padding: 5px 0 !important;
}
#home-page .contents .course .slick-dots {
  position: relative;
  height: 8px;
  font-size: 0;
  text-align: center;
  z-index: 2;
}
#home-page .contents .course .slick-dots li {
  cursor: pointer;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 3px;
  background: #d9d9d9;
  font-size: 0;
  text-indent: -9999px;
  -webkit-border-radius: 100%;
  border-radius: 100%;
}
#home-page .contents .course .slick-dots li.slick-active {
  background: #c00;
}
@media all and (min-width: 960px) {
  #home-page .contents .course .slick-dots {
    margin: 30px auto 0;
    width: 20%;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .slick-dots {
    margin: 20px auto 0;
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .course .slick-dots {
    width: 80%;
  }
}
#home-page .contents .course .course-arrows {
  position: relative;
  height: 20px;
  margin: -14px auto 0;
  z-index: 1;
}
#home-page .contents .course .course-arrows .slick-next,
#home-page .contents .course .course-arrows .slick-prev {
  cursor: pointer;
  position: absolute;
  color: #c00;
}
#home-page .contents .course .course-arrows .slick-next:before,
#home-page .contents .course .course-arrows .slick-prev:before {
  content: "";
}
#home-page .contents .course .course-arrows i {
  font-size: 20px;
}
#home-page .contents .course .course-arrows .slick-next {
  right: 0;
}
#home-page .contents .course .course-arrows .slick-prev {
  left: 0;
  transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}
@media all and (min-width: 960px) {
  #home-page .contents .course .course-arrows {
    width: 30%;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .course-arrows {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .course .course-arrows {
    width: 100%;
  }
}
#home-page .contents .results {
  background: #f2f2f2;
}
@media all and (min-width: 960px) {
  #home-page .contents .results .magazine-list {
    padding-top: 50px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .results .cnt-inner {
    max-width: 90%;
  }
  #home-page .contents .results .magazine-list {
    padding-top: 40px;
  }
  #home-page .contents .results .magazine-list .item:nth-last-of-type(2),
  #home-page .contents .results .magazine-list .item:nth-last-of-type(1) {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .results .magazine-list {
    padding-top: 30px;
  }
  #home-page .contents .results .magazine-list .item:nth-last-of-type(3),
  #home-page .contents .results .magazine-list .item:nth-last-of-type(2),
  #home-page .contents .results .magazine-list .item:nth-last-of-type(1) {
    margin-bottom: 0;
  }
}
#home-page .contents .teacher {
  background: #f8f8f8;
}
@media screen and (max-width: 959px) {
  #home-page .contents .teacher .cnt-inner {
    max-width: 90%;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .info .cnt-inner {
    max-width: 90%;
  }
}
#home-page .contents .info .voice .scroll,
#home-page .contents .info .news .scroll {
  overflow-y: scroll !important;
  overflow-x: hidden;
}
#home-page .contents .info .voice dl,
#home-page .contents .info .news dl {
  margin-right: 10px;
  padding: 15px 0;
  border-bottom: 1px dotted #ededed;
}
#home-page .contents .info .voice dl:first-of-type,
#home-page .contents .info .news dl:first-of-type {
  border-top: 1px dotted #ededed;
}
@media all and (min-width: 960px) {
  #home-page .contents .info .voice,
  #home-page .contents .info .news {
    width: 47%;
  }
  #home-page .contents .info .voice .scroll,
  #home-page .contents .info .news .scroll {
    max-height: 250px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .info .voice .scroll,
  #home-page .contents .info .news .scroll {
    max-height: 250px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .info .voice .scroll,
  #home-page .contents .info .news .scroll {
    height: 150px;
  }
}
#home-page .contents .info .voice dt {
  font-weight: 500;
}
#home-page .contents .info .voice dd span {
  font-weight: 500;
}
@media all and (min-width: 960px) {
  #home-page .contents .info .voice {
    float: left;
  }
  #home-page .contents .info .voice dd {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .info .voice dd {
    font-size: 12px;
  }
}
@media all and (min-width: 960px) {
  #home-page .contents .info .news {
    float: right;
  }
  #home-page .contents .info .news dt {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .info .news {
    padding-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .info .news {
    padding-top: 30px;
  }
  #home-page .contents .info .news dt {
    font-size: 12px;
  }
}
#home-page .contents .store {
  background: #f8f8f8;
}
#home-page .contents .store a {
  text-decoration: none !important;
}
#home-page .contents .store a:hover {
  text-decoration: none;
  color: #c00;
}

@media screen and (max-width: 959px) {
  #home-page .contents .store .cnt-inner {
    max-width: 90%;
  }
}
@media all and (min-width: 960px) {
  #home-page .contents .store h2 {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .store h2 {
    margin-bottom: 10px;
  }
}
#home-page .contents .store .pickup,
#home-page .contents .store .book {
  zoom: 1;
  margin: 0 -10px;
}
#home-page .contents .store .pickup:before,
#home-page .contents .store .pickup:after,
#home-page .contents .store .book:before,
#home-page .contents .store .book:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#home-page .contents .store .pickup:after,
#home-page .contents .store .book:after {
  clear: both;
}
@media all and (min-width: 960px) {
  #home-page .contents .store .pickup .item,
  #home-page .contents .store .book .item {
    float: left;
    padding: 20px 10px 0;
  }
  #home-page .contents .store .pickup .item .box-shadow,
  #home-page .contents .store .book .item .box-shadow {
    padding: 20px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .store .pickup .item,
  #home-page .contents .store .book .item {
    float: left;
    padding: 20px 10px 0;
  }
  #home-page .contents .store .pickup .item .box-shadow,
  #home-page .contents .store .book .item .box-shadow {
    padding: 15px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .store .pickup .item,
  #home-page .contents .store .book .item {
    padding: 10px 5px 0;
  }
  #home-page .contents .store .pickup .item .box-shadow,
  #home-page .contents .store .book .item .box-shadow {
    padding: 10px;
  }
}
#home-page .contents .store .pickup {
  zoom: 1;
}
#home-page .contents .store .pickup:before,
#home-page .contents .store .pickup:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#home-page .contents .store .pickup:after {
  clear: both;
}
#home-page .contents .store .pickup .item dt,
#home-page .contents .store .pickup .item dd,
#home-page .contents .store .pickup .item p {
  line-height: 1.3;
}
#home-page .contents .store .pickup .item dt,
#home-page .contents .store .pickup .item dd {
  font-weight: 500;
}
#home-page .contents .store .pickup .item dt {
  margin-bottom: 5px;
  color: #c00;
}
#home-page .contents .store .pickup .item dd {
  margin-bottom: 10px;
}
#home-page .contents .store .pickup .item p {
  color: #666;
}
@media all and (min-width: 960px) {
  #home-page .contents .store .pickup .item {
    width: 50%;
  }
  #home-page .contents .store .pickup .item .img {
    float: left;
    width: 200px;
  }
  #home-page .contents .store .pickup .item .txt {
    margin-left: 215px;
  }
  #home-page .contents .store .pickup .item p {
    font-size: 13px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .store .pickup .item {
    width: 50%;
    text-align: center;
  }
  #home-page .contents .store .pickup .item .txt {
    padding-top: 15px;
  }
  #home-page .contents .store .pickup .item dt {
    font-size: 14px;
  }
  #home-page .contents .store .pickup .item dd {
    font-size: 16px;
  }
  #home-page .contents .store .pickup .item p {
    font-size: 13px;
  }
}
@media screen and (max-width: 767px) {
  /*#home-page .contents .store .pickup .item {
    float: none;
    width: 100%;
  }*/
  #home-page .contents .store .pickup .item .txt {
    padding-top: 10px;
  }
  #home-page .contents .store .pickup .item dt {
    font-size: 12px;
  }
  #home-page .contents .store .pickup .item dd {
    font-size: 14px;
  }
  #home-page .contents .store .pickup .item p {
    font-size: 12px;
    display: none;
  }
}
#home-page .contents .store .book .item {
  text-align: center;
}
#home-page .contents .store .book .item .img {
  margin-bottom: 10px;
}
#home-page .contents .store .book .item dt {
  display: table-cell;
  /* width: 100%;*/
  width: 220px;
  margin-bottom: 5px;
  font-weight: 500;
  line-height: 1.3;
  vertical-align: middle;
  font-size: 12px;
}
@media all and (min-width: 960px) {
  #home-page .contents .store .book .item {
    width: 25%;
  }
  #home-page .contents .store .book .item .img img {
    height: 180px;
  }
  #home-page .contents .store .book .item dd {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .store .book .item {
    width: 33.333%;
  }
  #home-page .contents .store .book .item .img img {
    height: 160px;
  }
  #home-page .contents .store .book .item dd {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .store .book .item {
    /*width: 50%;*/
  }
  #home-page .contents .store .book .item .img img {
    height: auto;
    width: 100%;
  }
  #home-page .contents .store .book .item dd {
    font-size: 12px;
  }
}
#home-page .contents .access {
  text-align: center;
}
#home-page .contents .access .btn a {
  display: block;
  background: #c00;
  color: #fff;
  font-weight: 500;
  text-decoration: none;
}
#home-page .contents .access .btn i {
  margin-right: 5px;
}
@media all and (min-width: 960px) {
  #home-page .contents .access {
    padding-top: 80px;
  }
  #home-page .contents .access .btn a {
    font-size: 18px;
    line-height: 70px;
  }
  #home-page .contents .access .btn i {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .access {
    padding-top: 50px;
  }
  #home-page .contents .access .btn a {
    font-size: 18px;
    line-height: 60px;
  }
  #home-page .contents .access .btn i {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .access {
    padding-top: 40px;
  }
  #home-page .contents .access .btn a {
    font-size: 16px;
    line-height: 50px;
  }
  #home-page .contents .access .btn i {
    font-size: 12px;
  }
}

/* グラフコンテンツ
----------------------------------------------------------------------*/
#graph #graph-before {
  float: left;
  width: 35%;
}
#graph #graph-before #doughnut-left,
#graph #graph-before #doughnut-center {
  /*float: left;
	width: 50%;
	margin-top: 8%;*/
}

#graph #graph-after {
  float: right;
  width: 35%;
}
#graph #graph-before .ttl span {
}
#graph #graph-after .ttl span,
#graph #graph-before .ttl span {
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  background: #6a6b6b;
  border-radius: 18px;
  padding: 9px 50px;
  display: inline-block;
  margin-bottom: 20px;
}

#graph #graph-after .ttl span {
  background: #cc0000;
}
#graph #graph-before .ttl-graph,
#graph #graph-after .ttl-graph {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 21px;
  font-weight: bold;
  color: #000;
  text-align: center;
  z-index: -1;
}
#graph #graph-after #doughnut-right,
#graph #graph-before #doughnut-left,
#graph #graph-before #doughnut-center {
  position: relative;
}
#graph #graph-before #doughnut-left .ttl-graph,
#graph #graph-before #doughnut-center .ttl-graph {
  transform: translate(-49%, -50%);
}
#graph #graph-after #doughnut-right .ttl-graph {
  transform: translate(-49%, -43%);
}
#graph #graph-before .ttl-graph span {
  font-size: 22px;
  color: #000;
}
#graph #doughnut-right .ttl-graph span {
  font-size: 76px;
  color: #cc0000;
}
#graph #doughnut-right .ttl-graph span small {
  font-size: 34px;
  color: #cc0000;
}
#graph #doughnut-right:before {
  content: "";
  background: url(../../images/index/arrow.png) no-repeat;
  position: absolute;
  top: 50%;
  left: -50%;
  width: 20%;
  height: 100%;
}
@media all and (min-width: 0px) and (max-width: 768px) {
  #graph #graph-before,
  #graph #graph-after {
    float: none;
    width: 100%;
  }
  #graph #graph-after {
    margin-top: 60px;
  }
  #graph #graph-after #doughnut-right {
    width: 60%;
    margin: 0 auto;
  }
  #graph #graph-before {
    zoom: 1;
  }
  #graph #graph-before:before,
  #graph #graph-before:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden;
  }
  #graph #graph-before:after {
    clear: both;
  }
  #graph + div p {
    display: none;
  }
  #graph #graph-before #doughnut-left,
  #graph #graph-before #doughnut-center {
    margin-top: 0;
  }
  #graph #graph-after #doughnut-right {
    /*width: 50%;*/
  }
  #graph #doughnut-right:before {
    top: -113px;
    left: 50%;
    width: 68px;
    height: 30px;
    margin-left: -34px;
    transform: rotate(90deg);
  }
}

/* method page
========================================================= */
#method-page .contents .lead {
  text-align: center;
}
#method-page .contents .lead dt {
  color: #c00;
  font-weight: 400;
}
#method-page .contents .lead dt em {
  display: inline-block;
  position: relative;
}
#method-page .contents .lead dt em:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  bottom: 10px;
  background: #ff0;
  z-index: -1;
}
@media all and (min-width: 960px) {
  #method-page .contents .lead dt {
    margin-bottom: 20px;
    font-size: 40px;
  }
  #method-page .contents .lead dt em {
    font-size: 50px;
  }
  #method-page .contents .lead dt em:after {
    height: 15px;
  }
  #method-page .contents .lead dd {
    font-size: 24px;
  }
}
@media screen and (max-width: 959px) {
  #method-page .contents .lead dt {
    margin-bottom: 15px;
    font-size: 30px;
  }
  #method-page .contents .lead dt em {
    font-size: 40px;
  }
  #method-page .contents .lead dt em:after {
    height: 15px;
  }
  #method-page .contents .lead dd {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  #method-page .contents .lead dt {
    margin-bottom: 15px;
    font-size: 18px;
  }
  #method-page .contents .lead dt em {
    font-size: 24px;
  }
  #method-page .contents .lead dt em:after {
    bottom: 5px;
    height: 10px;
  }
  #method-page .contents .lead dd {
    font-size: 15px;
  }
}
#method-page .contents .method dl {
  display: table;
  table-layout: fixed;
  width: inherit;
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px dotted #ededed;
}
#method-page .contents .method dl:last-child {
  margin-bottom: 0;
}
#method-page .contents .method dl dt,
#method-page .contents .method dl dd {
  display: table-cell;
  vertical-align: top;
}
#method-page .contents .method dl dt {
  width: 204px;
}
#method-page .contents .method dl dd {
  padding-left: 30px;
}
@media screen and (max-width: 767px) {
  #method-page .contents .method dl {
    display: block;
    width: auto;
    margin-bottom: 15px;
    padding-bottom: 15px;
  }
  #method-page .contents .method dl dt,
  #method-page .contents .method dl dd {
    display: block;
  }
  #method-page .contents .method dl dt {
    width: auto;
    text-align: center;
  }
  #method-page .contents .method dl dd {
    padding-top: 10px;
    padding-left: 0;
  }
}
#method-page .contents .btn-link {
  zoom: 1;
}
#method-page .contents .btn-link:before,
#method-page .contents .btn-link:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#method-page .contents .btn-link:after {
  clear: both;
}
#method-page .contents .btn-link li {
  display: block;
}
#method-page .contents .btn-link a {
  display: block;
  width: auto;
  min-width: 0;
}
@media all and (min-width: 960px) {
  #method-page .contents .btn-link {
    margin: 0 -10px;
    zoom: 1;
  }
  #method-page .contents .btn-link:before,
  #method-page .contents .btn-link:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden;
  }
  #method-page .contents .btn-link:after {
    clear: both;
  }
  #method-page .contents .btn-link li {
    float: left;
    width: 25%;
    margin: 0;
    padding: 0 10px;
  }
}
@media screen and (max-width: 959px) {
  #method-page .contents .btn-link {
    margin: 0 -10px;
  }
  #method-page .contents .btn-link li {
    float: left;
    width: 50%;
    margin: 0 0 20px;
    padding: 0 10px;
  }
  #method-page .contents .btn-link li:nth-last-child(2),
  #method-page .contents .btn-link li:nth-last-child(1) {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  #method-page .contents .btn-link {
    margin: 0;
  }
  #method-page .contents .btn-link li {
    float: none;
    width: 100%;
    margin: 0 0 15px;
    padding: 0;
  }
  #method-page .contents .btn-link li:nth-last-child(2) {
    margin-bottom: 15px;
  }
}

/* teacher page
========================================================= */
#teacher-page .contents .teacher-list,
#enteacher .teacherlist {
  zoom: 1;
}
#teacher-page .contents .teacher-list:before,
#teacher-page .contents .teacher-list:after,
#enteacher .teacherlist:before,
#enteacher .teacherlist:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#teacher-page .contents .teacher-list:after,
#enteacher .teacherlist:after {
  clear: both;
}
#teacher-page .contents .teacher-list .item a,
#enteacher .teacherlist .item a {
  display: block;
  text-decoration: none;
  zoom: 1;
  outline: none;
}

#teacher-page .contents .teacher-list .item a:before,
#teacher-page .contents .teacher-list .item a:after,
#enteacher .teacherlist .item a:before,
#enteacher .teacherlist .item a:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#teacher-page .contents .teacher-list .item a:after,
#enteacher .teacherlist .item a:after {
  clear: both;
}
#teacher-page .contents .teacher-list .item h3,
#enteacher .teacherlist .item h3 {
  margin: 0;
  padding: 0;
  background: none;
  font-weight: 500;
}
#teacher-page .contents .teacher-list .item h3:before,
#enteacher .teacherlist .item h3:before {
  display: none;
}
#teacher-page .contents .teacher-list .item h3 span,
#enteacher .teacherlist .item h3 span {
  color: #c00;
  font-family: "Roboto Condensed", sans-serif;
}
#teacher-page .contents .teacher-list .item p,
#enteacher .teacherlist .item p {
  margin-bottom: 0;
}
#teacher-page .contents .teacher-list .item dl,
#enteacher .teacherlist .item dl {
  margin: 0;
}
#teacher-page .contents .teacher-list .item dl dt,
#enteacher .teacherlist .item dl dt {
  width: 140px;
  margin: 10px 0 5px;
  background: #c00;
  color: #fff;
  font-size: 10px;
  font-weight: 500;
  line-height: 20px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  text-align: center;
}
#teacher-page .contents .teacher-list .item .more,
#enteacher .teacherlist .item .more {
  position: relative;
  display: block;
  margin: 0 -20px;
  padding: 15px 0;
  background: #bbb;
  color: #fff;
  font-weight: 500;
  text-align: center;
  line-height: 1;
}
#teacher-page .contents .teacher-list .item .more i,
#enteacher .teacherlist .item .more i {
  margin-right: 5px;
}
@media all and (min-width: 960px) {
  #teacher-page .contents .teacher-list,
  #enteacher .teacherlist {
    margin: 0 -15px;
  }
  #teacher-page .contents .teacher-list .item,
  #enteacher .teacherlist .item {
    float: left;
    width: 50%;
    padding: 0 15px 30px;
  }
  #teacher-page .contents .teacher-list .item a,
  #enteacher .teacherlist .item a {
    padding: 20px 20px 0;
  }
  #teacher-page .contents .teacher-list .item .img,
  #enteacher .teacherlist .item .img {
    float: left;
    width: 180px;
    margin-bottom: 15px;
  }
  #teacher-page .contents .teacher-list .item .txt,
  #enteacher .teacherlist .item .txt {
    margin-left: 200px;
    margin-bottom: 15px;
  }
  #teacher-page .contents .teacher-list .item h3,
  #enteacher .teacherlist .item h3 {
    font-size: 20px;
  }
  #teacher-page .contents .teacher-list .item h3 span,
  #enteacher .teacherlist .item h3 span {
    margin-left: 5px;
    font-size: 11px;
  }
  #teacher-page .contents .teacher-list .item p,
  #enteacher .teacherlist .item p {
    font-size: 12px;
  }
  #teacher-page .contents .teacher-list .item dl dd,
  #teacher-page .contents .teacher-list .item dl li,
  #enteacher .teacherlist .item dl dd,
  #enteacher .teacherlist .item dl li {
    font-size: 14px;
  }
  #teacher-page .contents .teacher-list .item .more,
  #enteacher .teacherlist .item .more {
    font-size: 14px;
  }
  #teacher-page .contents .teacher-list .item .more i,
  #enteacher .teacherlist .item .more i {
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
  #teacher-page .contents .teacher-list,
  #enteacher .teacherlist {
    margin: 0 -10px;
  }
  #teacher-page .contents .teacher-list .item,
  #enteacher .teacherlist .item {
    float: left;
    width: 33.333%;
    padding: 0 10px 20px;
  }
  #teacher-page .contents .teacher-list .item a,
  #enteacher .teacherlist .item a {
    padding: 0;
  }
  #teacher-page .contents .teacher-list .item .img,
  #enteacher .teacherlist .item .img {
    margin-bottom: 15px;
    text-align: center;
  }
  #teacher-page .contents .teacher-list .item .txt,
  #enteacher .teacherlist .item .txt {
    margin: 0 15px 15px;
  }
  #teacher-page .contents .teacher-list .item h3,
  #enteacher .teacherlist .item h3 {
    font-size: 20px;
    text-align: center;
  }
  #teacher-page .contents .teacher-list .item h3 span,
  #enteacher .teacherlist .item h3 span {
    display: block;
    margin-top: 5px;
    font-size: 11px;
  }
  #teacher-page .contents .teacher-list .item p,
  #enteacher .teacherlist .item p {
    font-size: 12px;
    text-align: center;
  }
  #teacher-page .contents .teacher-list .item dl dd,
  #teacher-page .contents .teacher-list .item dl li,
  #enteacher .teacherlist .item dl dd,
  #enteacher .teacherlist .item dl li {
    font-size: 14px;
  }
  #teacher-page .contents .teacher-list .item .more,
  #enteacher .teacherlist .item .more {
    font-size: 14px;
  }
  #teacher-page .contents .teacher-list .item .more i,
  #enteacher .teacherlist .item .more i {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  #teacher-page .contents .teacher-list,
  #enteacher .teacherlist {
    margin: 0 -5px;
  }
  #teacher-page .contents .teacher-list .item,
  #enteacher .teacherlist .item {
    float: left;
    width: 50%;
    padding: 0 5px 10px;
  }
  #teacher-page .contents .teacher-list .item .img,
  #enteacher .teacherlist .item .img {
    margin-bottom: 10px;
  }
  #teacher-page .contents .teacher-list .item .txt,
  #enteacher .teacherlist .item .txt {
    margin: 0 10px 10px;
  }
  #teacher-page .contents .teacher-list .item h3,
  #enteacher .teacherlist .item h3 {
    font-size: 16px;
  }
  #teacher-page .contents .teacher-list .item h3 span,
  #enteacher .teacherlist .item h3 span {
    font-size: 10px;
  }
  #teacher-page .contents .teacher-list .item p,
  #enteacher .teacherlist .item p {
    font-size: 11px;
  }
  #teacher-page .contents .teacher-list .item dl dd,
  #teacher-page .contents .teacher-list .item dl li,
  #enteacher .teacherlist .item dl dd,
  #enteacher .teacherlist .item dl li {
    font-size: 12px;
  }
  #teacher-page .contents .teacher-list .item .more,
  #enteacher .teacherlist .item .more {
    font-size: 11px;
    letter-spacing: 0;
  }
  #teacher-page .contents .teacher-list .item .more i,
  #enteacher .teacherlist .item .more i {
    margin-right: 2px;
    font-size: 10px;
  }
}
#teacher-page .contents .special-list {
  zoom: 1;
}
#teacher-page .contents .special-list:before,
#teacher-page .contents .special-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#teacher-page .contents .special-list:after {
  clear: both;
}
#teacher-page .contents .special-list .item {
  float: left;
  text-align: center;
}
#teacher-page .contents .special-list .item h3 {
  margin: 0 0 10px;
  padding: 0;
  background: none;
  font-weight: 500;
}
#teacher-page .contents .special-list .item h3:before {
  display: none;
}
#teacher-page .contents .special-list .item h3 span {
  display: block;
  margin-top: 5px;
  color: #c00;
  font-family: "Roboto Condensed", sans-serif;
}
#teacher-page .contents .special-list .item p {
  margin: 0;
  line-height: 1.4;
}
@media all and (min-width: 960px) {
  #teacher-page .contents .special-list {
    margin: 0 -15px;
  }
  #teacher-page .contents .special-list .item {
    width: 25%;
    padding: 0 15px 30px;
  }
  #teacher-page .contents .special-list .item .box-shadow {
    padding-bottom: 20px;
  }
  #teacher-page .contents .special-list .item .img {
    margin-bottom: 15px;
  }
  #teacher-page .contents .special-list .item .txt {
    padding: 0 15px;
  }
  #teacher-page .contents .special-list .item h3 {
    font-size: 20px;
  }
  #teacher-page .contents .special-list .item h3 span {
    font-size: 11px;
  }
  #teacher-page .contents .special-list .item p {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  #teacher-page .contents .special-list {
    margin: 0 -10px;
  }
  #teacher-page .contents .special-list .item {
    width: 33.333%;
    padding: 0 10px 20px;
  }
  #teacher-page .contents .special-list .item .box-shadow {
    padding-bottom: 20px;
  }
  #teacher-page .contents .special-list .item .img {
    margin-bottom: 15px;
  }
  #teacher-page .contents .special-list .item .txt {
    padding: 0 15px;
  }
  #teacher-page .contents .special-list .item h3 {
    font-size: 20px;
  }
  #teacher-page .contents .special-list .item h3 span {
    font-size: 11px;
  }
  #teacher-page .contents .special-list .item p {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  #teacher-page .contents .special-list {
    margin: 0 -5px;
  }
  #teacher-page .contents .special-list .item {
    width: 50%;
    padding: 0 5px 10px;
  }
  #teacher-page .contents .special-list .item .box-shadow {
    padding-bottom: 10px;
  }
  #teacher-page .contents .special-list .item .img {
    margin-bottom: 10px;
  }
  #teacher-page .contents .special-list .item .txt {
    padding: 0 10px;
  }
  #teacher-page .contents .special-list .item h3 {
    font-size: 16px;
  }
  #teacher-page .contents .special-list .item h3 span {
    font-size: 10px;
  }
  #teacher-page .contents .special-list .item p {
    font-size: 12px;
  }
}

/* access page
========================================================= */
@media all and (min-width: 960px) {
  #access-page .contents .imgL {
    width: 690px;
  }
  #access-page .contents .txt {
    margin-left: 720px;
  }
  #access-page .contents .txt dl {
    margin-top: 30px;
  }
  #access-page .contents .txt dl dt {
    margin-bottom: 10px;
    font-weight: 500;
    font-size: 20px;
  }
}
@media screen and (max-width: 959px) {
  #access-page .contents .imgL {
    float: none;
    max-width: none;
    margin: 0 0 15px;
  }
  #access-page .contents .txt dl {
    margin-top: 20px;
  }
  #access-page .contents .txt dl dt {
    margin-bottom: 10px;
    font-weight: 500;
    font-size: 18px;
  }
}

/* results page
========================================================= */
#results-page .contents .anchor {
  padding-top: 0;
  padding-bottom: 50px;
  zoom: 1;
}
#results-page .contents .anchor:before,
#results-page .contents .anchor:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#results-page .contents .anchor:after {
  clear: both;
}
#results-page .contents .anchor a {
  position: relative;
}
#results-page .contents .anchor i {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  margin: -5px 0 0;
}
@media screen and (max-width: 959px) {
  #results-page .contents .anchor {
    margin: 0 -10px;
  }
  #results-page .contents .anchor li {
    float: left;
    width: 50%;
    margin-bottom: 0;
    padding: 0 10px;
  }
  #results-page .contents .anchor a {
    width: 100%;
  }
  #results-page .contents .anchor i {
    right: 15px;
  }
}
@media screen and (max-width: 767px) {
  #results-page .contents .anchor {
    margin: 0 -5px;
    padding-bottom: 30px;
  }
  #results-page .contents .anchor li {
    padding: 0 5px;
  }
  #results-page .contents .anchor i {
    right: 10px;
  }
}
@media all and (min-width: 960px) {
  #results-page .contents .results-list {
    padding-top: 50px;
  }
}
@media screen and (max-width: 959px) {
  #results-page .contents .results-list {
    padding-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  #results-page .contents .results-list {
    padding-top: 20px;
  }
}
#results-page .contents .magazine-list.book .item img {
  width: auto;
}
#results-page .contents .magazine-list.book .item p {
  line-height: 1.3;
}
@media all and (min-width: 960px) {
  #results-page .contents .magazine-list .item {
    padding-bottom: 35px;
  }
  #results-page .contents .magazine-list.book .item img {
    height: 180px;
  }
  #results-page .contents .magazine-list.book .item p {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  #results-page .contents .magazine-list .item {
    padding-bottom: 20px;
  }
  #results-page .contents .magazine-list.book .item img {
    height: 160px;
  }
  #results-page .contents .magazine-list.book .item p {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  #results-page .contents .magazine-list .item {
    padding-bottom: 15px;
  }
  #results-page .contents .magazine-list.book .item img {
    height: 140px;
  }
  #results-page .contents .magazine-list.book .item p {
    font-size: 12px;
  }
}
#results-page .contents #results dl {
  margin-bottom: 30px;
}
#results-page .contents #results dl:last-child {
  margin-bottom: 0;
}
#results-page .contents #results dt {
  font-weight: 500;
}
#results-page .contents #results .list {
  zoom: 1;
}
#results-page .contents #results .list:before,
#results-page .contents #results .list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#results-page .contents #results .list:after {
  clear: both;
}
#results-page .contents #results .list li {
  margin-top: 5px;
}
@media all and (min-width: 960px) {
  #results-page .contents #results dt {
    font-size: 18px;
  }
  #results-page .contents #results .list li {
    float: left;
    display: inline-block;
    width: 33.3333%;
    padding-right: 15px;
  }
}
@media screen and (max-width: 959px) {
  #results-page .contents #results dt {
    font-size: 16px;
  }
  #results-page .contents #results .list li {
    float: left;
    display: inline-block;
    width: 50%;
    padding-right: 15px;
  }
}
@media screen and (max-width: 767px) {
  #results-page .contents #results dt {
    font-size: 16px;
  }
  #results-page .contents #results .list li {
    float: none;
    display: block;
    width: 100%;
    padding-right: 0;
    font-size: 12px;
  }
  #results-page .contents #results .list li:before {
    top: 7px;
  }
}

/* column page
========================================================= */
#column-page .contents .column-list {
  position: relative;
  zoom: 1;
}
#column-page .contents .column-list:before,
#column-page .contents .column-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#column-page .contents .column-list:after {
  clear: both;
}
#column-page .contents .column-list .item {
  float: left;
}
#column-page .contents .column-list .item a {
  display: block;
  text-decoration: none;
}
#column-page .contents .column-list .item dd {
  font-weight: 500;
  color: #c00;
}
#column-page .contents .column-list .item dd + dd {
  font-weight: normal;
  font-size: 14px;
  color: #000;
}
#column-page .contents .column-list .box-shadow {
  padding: 20px;
}
@media all and (min-width: 960px) {
  #column-page .contents .column-list {
    margin: 0 -20px;
  }
  #column-page .contents .column-list .item {
    width: 50%;
    padding: 20px 10px 0;
  }
  #column-page .contents .column-list .item .img {
    margin-bottom: 15px;
  }
  #column-page .contents .column-list .item dt {
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
  #column-page .contents .column-list {
    margin: 0 -10px;
  }
  #column-page .contents .column-list .item {
    width: 50%;
    padding: 20px 10px 0;
  }
  #column-page .contents .column-list .item .img {
    margin-bottom: 15px;
  }
  #column-page .contents .column-list .item dt {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  #column-page .contents .column-list {
    margin: 0 -5px;
  }
  #column-page .contents .column-list .item {
    width: 50%;
    padding: 15px 5px 0;
  }
  #column-page .contents .column-list .item .img {
    margin-bottom: 10px;
  }
  #column-page .contents .column-list .item dt {
    font-size: 10px;
  }
  /*#column-page .contents .column-list .item dd {
    font-size: 12px;
  }*/
}

#column-page .contents .column-other-list {
  position: relative;
  zoom: 1;
}
#column-page .contents .column-other-list:before,
#column-page .contents .column-other-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#column-page .contents .column-other-list:after {
  clear: both;
}
#column-page .contents .column-other-list .item {
  float: left;
}
#column-page .contents .column-other-list .item a {
  display: block;
  text-decoration: none;
}
#column-page .contents .column-other-list .item dd {
  font-weight: 500;
}
@media all and (min-width: 960px) {
  #column-page .contents .column-other-list {
    margin: 0 -20px;
  }
  #column-page .contents .column-other-list .item {
    width: 33.333%;
    padding: 40px 20px 0;
  }
  #column-page .contents .column-other-list .item .img {
    margin-bottom: 15px;
  }
  #column-page .contents .column-other-list .item dt {
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
  #column-page .contents .column-other-list {
    margin: 0 -10px;
  }
  #column-page .contents .column-other-list .item {
    width: 33.333%;
    padding: 30px 10px 0;
  }
  #column-page .contents .column-other-list .item .img {
    margin-bottom: 15px;
  }
  #column-page .contents .column-other-list .item dt {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  #column-page .contents .column-other-list {
    margin: 0 -5px;
  }
  #column-page .contents .column-other-list .item {
    width: 50%;
    padding: 15px 5px 0;
  }
  #column-page .contents .column-other-list .item .img {
    margin-bottom: 10px;
  }
  #column-page .contents .column-other-list .item dt {
    font-size: 10px;
  }
  #column-page .contents .column-other-list .item dd {
    font-size: 12px;
  }
}

/* voice page
========================================================= */
#voice-page .contents .voice-list .item {
  float: left;
}
#voice-page .contents .voice-list .box-shadow {
  background: #fffef8;
}
#voice-page .contents .voice-list dl {
  margin: 0;
}
#voice-page .contents .voice-list dt {
  border-bottom: 1px dotted #ededed;
  zoom: 1;
  font-size: 18px;
  font-weight: 500;
}
#voice-page .contents .voice-list dt:before,
#voice-page .contents .voice-list dt:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#voice-page .contents .voice-list dt:after {
  clear: both;
}
#voice-page .contents .voice-list dt span {
  float: right;
  color: #666;
}
#voice-page .contents .voice-list dd em {
  font-weight: 500;
}
@media all and (min-width: 960px) {
  #voice-page .contents .voice-list {
    margin: 0 -15px;
  }
  #voice-page .contents .voice-list .item {
    width: 33.333%;
    padding: 30px 10px 0;
  }
  #voice-page .contents .voice-list .box-shadow {
    padding: 20px;
  }
  #voice-page .contents .voice-list dt {
    margin-bottom: 15px;
    padding-bottom: 10px;
    font-size: 18px;
  }
  #voice-page .contents .voice-list dt span {
    font-size: 12px;
  }
  #voice-page .contents .voice-list dd {
    line-height: 1.8;
  }
}
@media screen and (max-width: 959px) {
  #voice-page .contents .voice-list {
    margin: 0 -10px;
  }
  #voice-page .contents .voice-list .item {
    width: 50%;
    padding: 20px 10px 0;
  }
  #voice-page .contents .voice-list .box-shadow {
    padding: 15px;
  }
  #voice-page .contents .voice-list dt {
    margin-bottom: 15px;
    padding-bottom: 10px;
    font-size: 18px;
  }
  #voice-page .contents .voice-list dt span {
    font-size: 11px;
  }
}
@media screen and (max-width: 767px) {
  #voice-page .contents .voice-list {
    margin: 0;
  }
  #voice-page .contents .voice-list .item {
    float: none;
    width: 100%;
    padding: 15px 0 0;
  }
  #voice-page .contents .voice-list .box-shadow {
    padding: 15px;
  }
  #voice-page .contents .voice-list dt {
    margin-bottom: 15px;
    padding-bottom: 10px;
    font-size: 16px;
  }
  #voice-page .contents .voice-list dt span {
    font-size: 10px;
  }
}

/* course page
========================================================= */
#course-page .contents .course-intro {
  text-align: center;
}
#course-page .contents .tab-wrap {
  margin: auto;
}
#course-page .contents .tab-wrap .tab {
  zoom: 1;
}
#course-page .contents .tab-wrap .tab:before,
#course-page .contents .tab-wrap .tab:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#course-page .contents .tab-wrap .tab:after {
  clear: both;
}
#course-page .contents .tab-wrap li {
  text-align: center;
}
#course-page .contents .tab-wrap a {
  border: 1px solid #dfdfdf;
  background: #dfdfdf;
  color: #b2b2b2;
  font-weight: 500;
  text-decoration: none;
}
#course-page .contents .tab-wrap a.current {
  border-color: #c00;
  background: #c00;
  color: #fff;
}
#course-page .tab-body {
  width: 100%;
  border-bottom: 5px solid #c00;
}

@media all and (min-width: 960px) {
  #course-page .contents .tab-wrap {
    max-width: 1100px;
  }
  #course-page .contents .tab-wrap .tab {
    margin: 0 -5px;
  }
  #course-page .contents .tab-wrap li {
    float: left;
    width: 16.666%;
    padding: 0 5px;
  }
  #course-page .contents .tab-wrap a {
    display: table;
    width: 100%;
    height: 80px;
    border-bottom: none;
    -webkit-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
  }
  #course-page .contents .tab-wrap a:hover {
    border-color: #c00;
    background: #c00;
    color: #fff;
  }
  #course-page .contents .tab-wrap span {
    display: table-cell;
    vertical-align: middle;
  }
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-wrap .tab {
    margin: 0 5px;
  }
  #course-page .contents .tab-wrap li {
    float: left;
    width: 16.666%;
    padding: 0 5px;
  }
  #course-page .contents .tab-wrap a {
    display: table;
    width: 100%;
    height: 60px;
    border-bottom: none;
    font-size: 13px;
    letter-spacing: 0;
    -webkit-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
  }
  #course-page .contents .tab-wrap span {
    display: table-cell;
    vertical-align: middle;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-wrap .tab {
    width: 90%;
    margin: 0 auto 30px;
  }
  #course-page .contents .tab-wrap li {
    float: left;
    width: 50%;
    margin: 0;
    padding: 0;
    text-align: center;
    position: relative;
  }
  /*#course-page .contents .tab-wrap li:first-child a {
    -webkit-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
  }*/
  #course-page .contents .tab-wrap li:last-child {
    margin-bottom: 0;
  }
  /*#course-page .contents .tab-wrap li:last-child a {
    -webkit-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
  }*/
  /*#course-page .contents .tab-wrap li br {
    display: none;
  }*/
  #course-page .contents .tab-wrap a {
    display: block;
    height: auto;
    padding: 15px;
    border: 1px solid #ededed;
    font-size: 14px;
    letter-spacing: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    text-align: left;
  }
  #course-page .contents .tab-wrap span {
    display: table-cell;
    vertical-align: middle;
  }
}
#course-page .contents .tab-cnt {
  background: #f8f8f8;
}
#course-page .contents .tab-cnt .cnt-inner {
  margin: auto;
}
#course-page .contents .tab-cnt h2,
#course-page .contents .tab-cnt h3 {
  border: none;
  background: none;
}
#course-page .contents .tab-cnt h2:before,
#course-page .contents .tab-cnt h2:after,
#course-page .contents .tab-cnt h3:before,
#course-page .contents .tab-cnt h3:after {
  display: none;
  top: auto;
  width: auto;
  height: auto;
  background: none;
}
#course-page .contents .tab-cnt h2 {
  color: #000;
}
@media all and (min-width: 960px) {
  #course-page .contents .tab-cnt {
    margin-bottom: 80px;
    padding: 60px 0;
    /*border-top: 5px solid #c00;*/
  }
  #course-page .contents .tab-cnt .cnt-inner {
    max-width: 1100px;
  }
  #course-page .contents .tab-cnt h2 {
    margin-bottom: 30px;
    font-size: 28px;
  }
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-cnt {
    margin-bottom: 50px;
    padding: 40px 0;
    /*border-top: 3px solid #c00;*/
  }
  #course-page .contents .tab-cnt .cnt-inner {
    max-width: 90%;
  }
  #course-page .contents .tab-cnt h2 {
    margin-bottom: 20px;
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt {
    margin-bottom: 50px;
    padding: 40px 0;
    /*border-top: 3px solid #c00;*/
  }
  #course-page .contents .tab-cnt .cnt-inner {
    max-width: 90%;
  }
  #course-page .contents .tab-cnt h2 {
    margin-bottom: 20px;
    font-size: 18px;
  }
}
#course-page .contents .tab-cnt .course-basic {
  position: relative;
}
#course-page .contents .tab-cnt .course-basic + .course-basic {
  margin-top: 30px;
}
#course-page .contents .tab-cnt .course-basic a {
  display: block;
  zoom: 1;
  text-decoration: none;
}
#course-page .contents .tab-cnt .course-basic a:before,
#course-page .contents .tab-cnt .course-basic a:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#course-page .contents .tab-cnt .course-basic a:after {
  clear: both;
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-cnt .course-basic a {
    padding-bottom: 15px;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt .course-basic a {
    padding-bottom: 10px;
  }
}
#course-page .contents .tab-cnt .course-basic h3 {
  position: relative;
  width: 100%;
  margin: 0;
  background: #c00;
  color: #fff;
  font-weight: 700;
  line-height: 1.3;
}
#course-page .contents .tab-cnt .course-basic h3 span {
  display: table-cell;
  vertical-align: middle;
}
#course-page .contents .tab-cnt .course-basic h3 span .cap {
  display: block;
  height: auto;
  font-weight: 500;
}
#course-page .contents .tab-cnt .course-basic h3 i {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media all and (min-width: 960px) {
  #course-page .contents .tab-cnt .course-basic h3 {
    padding: 0 40px 0 20px;
    font-size: 30px;
  }
  #course-page .contents .tab-cnt .course-basic h3 i {
    right: 15px;
    font-size: 20px;
  }
  #course-page .contents .tab-cnt .course-basic h3 span {
    height: 80px;
  }
  #course-page .contents .tab-cnt .course-basic h3 span .cap {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-cnt .course-basic h3 {
    padding: 0 40px 0 15px;
    font-size: 24px;
  }
  #course-page .contents .tab-cnt .course-basic h3 i {
    right: 10px;
    font-size: 16px;
  }
  #course-page .contents .tab-cnt .course-basic h3 span {
    padding: 10px 0;
  }
  #course-page .contents .tab-cnt .course-basic h3 span .cap {
    padding: 0;
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt .course-basic h3 {
    padding: 0 20px 0 10px;
    font-size: 18px;
    letter-spacing: 0;
  }
  #course-page .contents .tab-cnt .course-basic h3 i {
    font-size: 14px;
  }
  #course-page .contents .tab-cnt .course-basic h3 span .cap {
    font-size: 11px;
  }
}
#course-page .contents .tab-cnt .course-basic .point li {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dashed #358cc0;
}
#course-page .contents .tab-cnt .course-basic .point li span {
  display: inline-block;
  margin-right: 5px;
  background: #358cc0;
  color: #fff;
  font-weight: 500;
  font-family: "Roboto Condensed", sans-serif;
  text-align: center;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
#course-page .contents .tab-cnt .course-basic.c_com .point li span {
  background: #008080 !important;
}
@media all and (min-width: 960px) {
  #course-page .contents .tab-cnt .course-basic .img {
    float: left;
    width: 340px;
    margin-right: 20px;
  }
  #course-page .contents .tab-cnt .course-basic .point {
    float: left;
    width: 430px;
    margin-right: 20px;
    padding-top: 25px;
  }
  #course-page .contents .tab-cnt .course-basic .point li {
    font-size: 18px;
    line-height: 30px;
  }
  #course-page .contents .tab-cnt .course-basic .point li span {
    width: 30px;
    font-size: 20px;
    background: #c00 !important;
  }
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-cnt .course-basic .img {
    float: left;
    width: 250px;
    margin-right: 15px;
    margin-bottom: 15px;
  }
  #course-page .contents .tab-cnt .course-basic .point {
    float: none;
    width: auto;
    margin: 0 0 15px 265px;
    padding-right: 15px;
    padding-top: 15px;
  }
  #course-page .contents .tab-cnt .course-basic .point li {
    font-size: 16px;
    line-height: 25px;
  }
  #course-page .contents .tab-cnt .course-basic .point li span {
    width: 25px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt .course-basic .img {
    float: none;
    width: auto;
    margin: 0;
  }
  #course-page .contents .tab-cnt .course-basic .point {
    float: none;
    width: auto;
    margin: 10px 10px 20px;
    padding-top: 0;
    display: none;
  }
  #course-page .contents .tab-cnt .course-basic .point li {
    position: relative;
    padding-left: 25px;
    font-size: 14px;
    line-height: 20px;
  }
  #course-page .contents .tab-cnt .course-basic .point li span {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    margin-right: 0;
    font-size: 14px;
  }
}
#course-page .contents .tab-cnt .course-basic .curriculum {
  position: relative;
  text-align: center;
}
#course-page .contents .tab-cnt .course-basic .curriculum dt {
  position: relative;
  display: inline-block;
  margin-top: -15px;
  padding: 0 15px;
  color: #fff !important;
  font-size: 14px;
  font-weight: 500;
  background: #c00;
  line-height: 30px;
  -webkit-border-radius: 15px;
  border-radius: 15px;
  z-index: 2;
}
#course-page .contents .tab-cnt .course-basic.c_com .curriculum dt {
  background: #008080 !important;
}
#course-page .contents .tab-cnt .course-basic .curriculum dd {
  position: relative;
  margin-top: -15px;
  padding: 20px 15px 15px;
  border: 2px solid #c00;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  text-align: left;
  z-index: 1;
}
#course-page .contents .tab-cnt .course-basic.c_com .curriculum dd {
  border: 2px solid #008080 !important;
}
#course-page .contents .tab-cnt .course-basic .curriculum dd li {
  margin-top: 5px;
  letter-spacing: 0;
}
#course-page .contents .tab-cnt .course-basic .curriculum dd li i {
  position: relative;
  top: 4px;
  margin-right: 5px;
  color: #c00;
  font-size: 20px;
}
#course-page .contents .tab-cnt .course-basic.c_com .curriculum dd li i {
  color: #008080 !important;
}
@media all and (min-width: 960px) {
  #course-page .contents .tab-cnt .course-basic .curriculum {
    float: left;
    width: 270px;
    padding-top: 20px;
  }
  #course-page .contents .tab-cnt .course-basic .curriculum dd li {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-cnt .course-basic .curriculum {
    clear: both;
    margin: 0 15px;
  }
  #course-page .contents .tab-cnt .course-basic .curriculum dd {
    zoom: 1;
  }
  #course-page .contents .tab-cnt .course-basic .curriculum dd:before,
  #course-page .contents .tab-cnt .course-basic .curriculum dd:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden;
  }
  #course-page .contents .tab-cnt .course-basic .curriculum dd:after {
    clear: both;
  }
  #course-page .contents .tab-cnt .course-basic .curriculum dd li {
    float: left;
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt .course-basic .curriculum {
    margin: 15px 10px 0 10px;
  }
  #course-page .contents .tab-cnt .course-basic .curriculum dd li {
    float: none;
    width: 100%;
  }
}
#course-page .contents .tab-cnt .course-action {
  padding-top: 20px;
  text-align: center;
}
#course-page .contents .tab-cnt .course-action .next {
  display: block;
  position: relative;
  margin-bottom: 15px;
  color: #c00;
  font-size: 52px;
  transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
}
#course-page .contents .tab-cnt .box-course .txt dt {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ededed;
  line-height: 1.3;
}
#course-page .contents .tab-cnt .course-type {
  zoom: 1;
}
#course-page .contents .tab-cnt .course-type:before,
#course-page .contents .tab-cnt .course-type:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#course-page .contents .tab-cnt .course-type:after {
  clear: both;
}
@media all and (min-width: 960px) {
  #course-page .contents .tab-cnt .course-type {
    padding-top: 80px;
  }
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-cnt .course-type {
    padding-top: 50px;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt .course-type {
    padding-top: 40px;
  }
}
#course-page .contents .tab-cnt .course-type .clm .box-course:last-child {
  margin-bottom: 0;
}
@media all and (min-width: 960px) {
  #course-page .contents .tab-cnt .course-type .clm {
    width: calc(50% - 15px);
  }
  #course-page .contents .tab-cnt .course-type .clm .box-course {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-cnt .course-type .clm {
    width: calc(50% - 10px);
  }
  #course-page .contents .tab-cnt .course-type .clm .box-course {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt .course-type .clm {
    width: 100%;
  }
  #course-page .contents .tab-cnt .course-type .clm .box-course {
    margin-bottom: 20px;
  }
}
#course-page .contents .tab-cnt .course-type h2 {
  position: relative;
  padding: 20px;
  background: #fff;
}
#course-page .contents .tab-cnt .course-type h2:before,
#course-page .contents .tab-cnt .course-type h2:after {
  display: inline-block;
  position: absolute;
  content: "";
  width: 30px;
  height: 15px;
  margin-left: -15px;
}
#course-page .contents .tab-cnt .course-type h2:before {
  left: 50%;
  bottom: -15px;
  border-top: 15px solid #000;
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
  z-index: 10;
}
#course-page .contents .tab-cnt .course-type h2:after {
  left: 50%;
  bottom: -11px;
  border-top: 15px solid #fff;
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
  z-index: 20;
}
@media all and (min-width: 960px) {
  #course-page .contents .tab-cnt .course-type h2 {
    font-size: 24px;
  }
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-cnt .course-type h2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt .course-type h2 {
    font-size: 18px;
  }
}
@media screen and (min-width: 768px) {
  #course-page .contents .tab-cnt .course-type .speech {
    float: right;
  }
}
#course-page .contents .tab-cnt .course-type .speech h2 {
  color: #19836c;
  border: 3px solid #19836c;
}
#course-page .contents .tab-cnt .course-type .speech h2:before {
  border-top-color: #19836c;
}
@media screen and (min-width: 768px) {
  #course-page .contents .tab-cnt .course-type .talk {
    float: left;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt .course-type .talk {
    padding-top: 30px;
  }
}
#course-page .contents .tab-cnt .course-type .talk h2 {
  color: #50b420;
  border: 3px solid #50b420;
}
#course-page .contents .tab-cnt .course-type .talk h2:before {
  border-top-color: #50b420;
}
#course-page .contents .tab-cnt .course-select {
  position: relative;
  zoom: 1;
}
#course-page .contents .tab-cnt .course-select:before,
#course-page .contents .tab-cnt .course-select:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#course-page .contents .tab-cnt .course-select:after {
  clear: both;
}
@media all and (min-width: 960px) {
  #course-page .contents .tab-cnt .course-select {
    padding-top: 80px;
    margin: 0 -15px -30px;
  }
  #course-page .contents .tab-cnt .course-select.studentBox {
    padding-top: 0;
    padding-bottom: 80px;
    margin: 0 -15px -30px;
  }
  /*#course-page .contents .tab-cnt .course-select.studentBox + #courseBox .course-basic {
      float: left;
      width: 50%;
      padding: 0 15px 30px;
  }*/
  #course-page .contents .tab-cnt .course-select .box-course {
    float: left;
    width: 50%;
    padding: 0 15px 30px;
  }
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-cnt .course-select {
    padding-top: 50px;
    margin: 0 -10px -20px;
  }
  #course-page .contents .tab-cnt .course-select.studentBox {
    padding-top: 0;
    padding-bottom: 50px;
    margin: 0 -10px -20px;
  }
  #course-page .contents .tab-cnt .course-select .box-course {
    float: left;
    width: 50%;
    padding: 0 10px 20px;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt .course-select.studentBox {
    padding-top: 0;
    padding-bottom: 40px;
    margin: 0 0 -20px;
  }
  #course-page .contents .tab-cnt .course-select {
    padding-top: 40px;
    margin: 0 0 -20px;
  }
  #course-page .contents .tab-cnt .course-select .box-course {
    float: none;
    width: 100%;
    padding: 0 10px 15px;
  }
}
#course-page .contents .tab-cnt .course-special {
  position: relative;
  zoom: 1;
}
#course-page .contents .tab-cnt .course-special:before,
#course-page .contents .tab-cnt .course-special:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#course-page .contents .tab-cnt .course-special:after {
  clear: both;
}
@media all and (min-width: 960px) {
  #course-page .contents .tab-cnt .course-special {
    padding-top: 60px;
    margin: 0 -15px;
    position: relative;
  }
  #course-page .contents .tab-cnt .course-special .box-course {
    float: left;
    width: 33.333%;
    padding: 0 15px 30px;
    position: relative;
  }
}
@media screen and (max-width: 959px) {
  #course-page .contents .tab-cnt .course-special {
    padding-top: 40px;
    margin: 0 -10px;
  }
  #course-page .contents .tab-cnt .course-special .box-course {
    float: left;
    width: 50%;
    margin-bottom: 20px;
    padding: 0 10px;
  }
  #course-page .contents .tab-cnt .course-special .box-course:last-child {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  #course-page .contents .tab-cnt .course-special {
    padding-top: 30px;
    margin: 0;
  }
  #course-page .contents .tab-cnt .course-special .box-course {
    float: none;
    width: 100%;
    padding: 0;
  }
}
#course-page .contents .course-price th,
#course-page .contents .course-price td {
  padding: 10px;
  font-size: 14px;
  letter-spacing: 0;
  line-height: 1.3;
}

/* basic
--------------------------------------------------------- */
@media all and (min-width: 960px) {
  .cnt-basic .pagetitle {
    height: 380px;
    padding-top: 50px;
    background: url(../../images/course/basic/course-basic-bg_190404.png)
      no-repeat center center;
  }
  .cnt-basic .pagetitle .txt {
    max-width: 1100px;
    margin: auto;
    text-align: left;
  }
  .cnt-basic .pagetitle .txt h1 {
    position: relative;
    width: 50%;
    margin-bottom: 30px;
    padding: 20px 0;
    background: #c00;
    color: #fff;
    text-align: left;
    font-size: 34px;
  }
  .cnt-basic .pagetitle .txt h1:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -50%;
    width: 50%;
    background: #c00;
  }
  .cnt-basic .pagetitle .txt h1 span {
    margin: 0 0 10px;
    color: #fff;
    font-size: 12px;
    font-family: "Roboto Condensed", sans-serif;
  }
  .cnt-basic .pagetitle .txt h1 i {
    display: block;
    position: absolute;
    top: -35px;
    right: -120px;
  }
  .cnt-basic .pagetitle .txt p {
    font-size: 18px;
    font-weight: 700;
  }
  .cnt-basic .pagetitle .txt p.lead-copy {
    margin-bottom: 10px;
    font-size: 40px;
    line-height: 1;
  }
  .cnt-basic .pagetitle .txt p.lead-copy em {
    color: #c00;
    font-size: 60px;
    line-height: 1.3;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .pagetitle .txt {
    margin: auto;
    padding: 30px 0;
  }
  .cnt-basic .pagetitle .txt h1 {
    position: relative;
    margin-bottom: 20px;
    padding: 15px 0;
    background: #c00;
    color: #fff;
    font-size: 24px;
  }
  .cnt-basic .pagetitle .txt h1 span {
    margin: 0 0 5px;
    color: #fff;
    font-size: 12px;
    font-family: "Roboto Condensed", sans-serif;
  }
  .cnt-basic .pagetitle .txt h1 i {
    display: block;
    position: absolute;
    top: 10px;
    right: 30px;
  }
  .cnt-basic .pagetitle .txt p {
    padding-left: 30px;
    font-size: 18px;
    font-weight: 700;
  }
  .cnt-basic .pagetitle .txt p.lead-copy {
    margin-bottom: 10px;
    font-size: 30px;
    line-height: 1;
  }
  .cnt-basic .pagetitle .txt p.lead-copy br {
    display: none;
  }
  .cnt-basic .pagetitle .txt p.lead-copy em {
    color: #c00;
    font-size: 50px;
    line-height: 1.3;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .pagetitle .txt {
    padding: 20px 0;
  }
  .cnt-basic .pagetitle .txt h1 {
    margin-bottom: 15px;
    font-size: 20px;
  }
  .cnt-basic .pagetitle .txt h1 span {
    font-size: 11px;
  }
  .cnt-basic .pagetitle .txt h1 i {
    width: 80px;
    top: 80px;
    right: 10px;
  }
  .cnt-basic .pagetitle .txt p {
    padding: 0 120px 0 20px;
    font-size: 12px;
    line-height: 1.3;
  }
  .cnt-basic .pagetitle .txt p.lead-copy {
    margin-bottom: 5px;
    font-size: 20px;
  }
  .cnt-basic .pagetitle .txt p.lead-copy br {
    display: block;
  }
  .cnt-basic .pagetitle .txt p.lead-copy em {
    font-size: 30px;
  }
}
.cnt-basic .contents .video {
  position: relative;
  margin: auto;
}
.cnt-basic .contents .video .inner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.cnt-basic .contents .video .inner iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.cnt-basic .contents .video i {
  display: block;
  position: absolute;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .video {
    max-width: 750px;
  }
  .cnt-basic .contents .video i {
    top: -20px;
    right: -110px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .video i {
    top: -20px;
    right: -20px;
    width: 120px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .video i {
    top: -20px;
    right: -15px;
    width: 80px;
  }
}
.cnt-basic .contents .reason .reason-list {
  position: relative;
  zoom: 1;
}
.cnt-basic .contents .reason .reason-list:before,
.cnt-basic .contents .reason .reason-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-basic .contents .reason .reason-list:after {
  clear: both;
}
.cnt-basic .contents .reason .reason-list .box-shadow {
  position: relative;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .reason .reason-list {
    margin: 0 -15px;
  }
  .cnt-basic .contents .reason .reason-list .item {
    float: left;
    width: 33.333%;
    padding: 0 15px;
  }
  .cnt-basic .contents .reason .reason-list .box-shadow {
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .reason .reason-list {
    margin: 0 -10px;
  }
  .cnt-basic .contents .reason .reason-list .item {
    float: left;
    width: 33.333%;
    padding: 0 10px;
  }
  .cnt-basic .contents .reason .reason-list .box-shadow {
    padding-bottom: 15px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .reason .reason-list {
    margin: 0;
  }
  .cnt-basic .contents .reason .reason-list .item {
    float: none;
    width: 100%;
    margin-bottom: 20px;
    padding: 0;
  }
  .cnt-basic .contents .reason .reason-list .item:last-child {
    margin-bottom: 0;
  }
}
.cnt-basic .contents .reason .reason-list .point {
  display: block;
  position: absolute;
  top: 0;
  padding: 10px 0 15px;
  background: #c00;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 700;
  text-align: center;
  line-height: 1;
}
.cnt-basic .contents .reason .reason-list .point:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent transparent #fff transparent;
}
.cnt-basic .contents .reason .reason-list .point span {
  display: block;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .reason .reason-list .point {
    left: 20px;
    width: 50px;
    font-size: 30px;
  }
  .cnt-basic .contents .reason .reason-list .point:after {
    border-width: 0 25px 10px 25px;
  }
  .cnt-basic .contents .reason .reason-list .point span {
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .reason .reason-list .point {
    left: 15px;
    width: 40px;
    font-size: 26px;
  }
  .cnt-basic .contents .reason .reason-list .point:after {
    border-width: 0 20px 10px 20px;
  }
  .cnt-basic .contents .reason .reason-list .point span {
    font-size: 10px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .reason .reason-list .point {
    left: 20px;
  }
}
.cnt-basic .contents .reason .reason-list h3 {
  background: none;
  color: #c00;
}
.cnt-basic .contents .reason .reason-list h3:before {
  display: none;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .reason .reason-list h3 {
    margin: 0 20px 30px;
    padding: 20px 0 0 60px;
    font-size: 23px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .reason .reason-list h3 {
    margin: 0 15px 15px;
    padding: 15px 0 0 50px;
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .reason .reason-list h3 {
    margin: 0 20px 25px;
    padding: 20px 0 0 50px;
    font-size: 20px;
  }
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .reason .reason-list .img {
    margin: 0 20px 15px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .reason .reason-list .img {
    margin: 0 15px 15px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .reason .reason-list .img {
    margin: 0 20px 15px;
  }
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .reason .reason-list dl {
    margin: 0 20px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .reason .reason-list dl {
    margin: 0 15px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .reason .reason-list dl {
    margin: 0 20px;
  }
}
.cnt-basic .contents .reason .reason-list dt {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ededed;
  color: #c00;
  font-weight: 700;
  line-height: 1.3;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .reason .reason-list dt {
    font-size: 19px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .reason .reason-list dt {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .reason .reason-list dt {
    font-size: 16px;
  }
}
.cnt-basic .contents .reason .reason-list .link-txt {
  display: block;
  margin-top: 15px;
  font-size: 13px;
  text-align: right;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .reason .reason-list .link-txt {
    font-size: 13px;
  }
  .cnt-basic .contents .reason .reason-list .link-txt i {
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .reason .reason-list .link-txt {
    font-size: 12px;
  }
  .cnt-basic .contents .reason .reason-list .link-txt i {
    font-size: 10px;
  }
}
.cnt-basic .contents .flow .flow-list {
  zoom: 1;
}
.cnt-basic .contents .flow .flow-list:before,
.cnt-basic .contents .flow .flow-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-basic .contents .flow .flow-list:after {
  clear: both;
}
.cnt-basic .contents .flow .item {
  float: left;
  position: relative;
}
.cnt-basic .contents .flow .item .icon-arrow {
  display: block;
  position: absolute;
  top: 50%;
  color: #c00;
  font-size: 30px;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .flow .item {
    width: 33.333%;
    margin-bottom: 40px;
    padding-right: 45px;
  }
  .cnt-basic .contents .flow .item:first-of-type + .item,
  .cnt-basic .contents .flow .item:first-of-type {
    width: 50%;
  }
  .cnt-basic .contents .flow .item:nth-child(5) {
    margin-bottom: 0;
  }
  .cnt-basic .contents .flow .item .icon-arrow {
    right: 8px;
    margin-top: -15px;
    font-size: 30px;
  }
  /*.cnt-basic .contents .flow .item:first-of-type .icon-arrow {
    bottom: -34px;
	left: 50%;
	top: auto;
	right: auto;
    margin-left: -15px;
    font-size: 30px;
	transform: rotate(90deg);
  }*/
  .cnt-basic .contents .flow .box-shadow {
    padding: 20px 0;
  }
  .cnt-basic .contents .flow .img {
    margin: 0 20px;
  }
  /*.cnt-basic .contents .flow .item:first-of-type .img {
    float: left;
  }*/
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .flow .item {
    width: 50%;
    margin-bottom: 20px;
    padding-right: 30px;
  }
  .cnt-basic .contents .flow .item:nth-child(6) {
    margin-bottom: 0;
  }
  .cnt-basic .contents .flow .item .icon-arrow {
    right: 4px;
    margin-top: -12px;
    font-size: 24px;
  }
  .cnt-basic .contents .flow .box-shadow {
    padding: 15px 0;
  }
  .cnt-basic .contents .flow .img {
    margin: 0 15px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .flow .item {
    margin-bottom: 15px;
    padding-right: 15px;
  }
  .cnt-basic .contents .flow .item:nth-child(6) {
    margin-bottom: 0;
  }
  .cnt-basic .contents .flow .item .icon-arrow {
    right: 0;
    margin-top: -10px;
    font-size: 20px;
  }
  .cnt-basic .contents .flow .box-shadow {
    padding: 10px 0;
  }
  .cnt-basic .contents .flow .img {
    margin: 0 10px;
  }
}
.cnt-basic .contents .flow .txt {
  position: relative;
  text-align: center;
}
.cnt-basic .contents .flow .txt i {
  position: relative;
  display: block;
  background: #c00;
  color: #fff;
  font-weight: 700;
  font-family: "Roboto Condensed", sans-serif;
  line-height: 1;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.cnt-basic .contents .flow .txt i span {
  display: block;
  font-size: 10px;
}
.cnt-basic .contents .flow .txt dl {
  width: 100%;
}
.cnt-basic .contents .flow .txt dt {
  display: table;
  width: 100%;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ededed;
  color: #c00;
  font-weight: 500;
  line-height: 1.3;
}
.cnt-basic .contents .flow .txt dt span {
  display: table-cell;
  vertical-align: middle;
}
.cnt-basic .contents .flow .txt dd {
  text-align: left;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .flow .txt {
    padding: 0 20px 0;
  }
  /*.cnt-basic .contents .flow .item:first-of-type .txt {
    overflow: hidden;
	position: relative;
  }*/
  .cnt-basic .contents .flow .txt i {
    width: 50px;
    height: 50px;
    margin: -25px auto 10px;
    padding-top: 6px;
    font-size: 30px;
  }
  /*.cnt-basic .contents .flow .item:first-of-type .txt i {
  	position: absolute;
	margin: 0 auto 10px;
  }*/
  .cnt-basic .contents .flow .txt dl {
    width: 100%;
  }
  /*.cnt-basic .contents .flow .item:first-of-type .txt dl {
    float: left;
  }*/
  .cnt-basic .contents .flow .txt dt {
    font-size: 24px;
  }
  /*.cnt-basic .contents .flow .item:first-of-type .txt dt {
    font-size: 34px;
	text-align: left;
	padding-left: 70px;
  }*/
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .flow .txt {
    padding: 0 15px 0;
  }
  .cnt-basic .contents .flow .txt i {
    width: 40px;
    height: 40px;
    margin: -20px auto 10px;
    padding-top: 5px;
    font-size: 22px;
  }
  .cnt-basic .contents .flow .txt dl {
    width: 100%;
  }
  .cnt-basic .contents .flow .txt dt {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .flow .txt {
    padding: 0 10px 0;
  }
  .cnt-basic .contents .flow .txt dt {
    font-size: 16px;
    letter-spacing: 0;
  }
}
.cnt-basic .contents .flow .box-summary {
  overflow: hidden;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.cnt-basic .contents .flow .box-summary h3 {
  margin: 0;
  background: #c00;
  color: #fff;
  text-align: center;
  line-height: 1;
}
.cnt-basic .contents .flow .box-summary h3:before {
  display: none;
}
.cnt-basic .contents .flow .box-summary h4 {
  color: #c00;
  font-weight: 500;
}
.cnt-basic .contents .flow .box-summary .inner {
  zoom: 1;
}
.cnt-basic .contents .flow .box-summary .inner:before,
.cnt-basic .contents .flow .box-summary .inner:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-basic .contents .flow .box-summary .inner:after {
  clear: both;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .flow .box-summary {
    margin-top: 50px;
  }
  .cnt-basic .contents .flow .box-summary h3 {
    padding: 20px;
    font-size: 30px;
  }
  .cnt-basic .contents .flow .box-summary h4 {
    margin-bottom: 15px;
    font-size: 24px;
  }
  .cnt-basic .contents .flow .box-summary .inner {
    border: 10px solid rgba(204, 0, 0, 0.1);
    padding: 20px;
  }
  .cnt-basic .contents .flow .box-summary .imgL {
    width: 220px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .flow .box-summary {
    margin-top: 30px;
  }
  .cnt-basic .contents .flow .box-summary h3 {
    padding: 15px;
    font-size: 24px;
  }
  .cnt-basic .contents .flow .box-summary h4 {
    margin-bottom: 15px;
    font-size: 20px;
  }
  .cnt-basic .contents .flow .box-summary .inner {
    border: 5px solid rgba(204, 0, 0, 0.1);
    padding: 15px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .flow .box-summary h3 {
    padding: 15px;
    font-size: 20px;
  }
  .cnt-basic .contents .flow .box-summary h4 {
    margin-bottom: 10px;
    font-size: 18px;
  }
  .cnt-basic .contents .flow .box-summary .inner {
    padding: 10px;
  }
}
.cnt-basic .contents .voice .box-voice {
  overflow: visible;
  position: relative;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .voice .box-voice {
    margin-top: 50px;
  }
  .cnt-basic .contents .voice .box-voice:first-of-type {
    margin-top: 30px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .voice .box-voice {
    margin-top: 40px;
  }
  .cnt-basic .contents .voice .box-voice:first-of-type {
    margin-top: 20px;
  }
}
.cnt-basic .contents .voice .box-voice .hgroup {
  overflow: hidden;
  width: 100%;
  -webkit-border-radius: 5px 5px 0 0;
  border-radius: 5px 5px 0 0;
}
.cnt-basic .contents .voice .box-voice .hgroup .txt h3 {
  padding: 0;
  background: none;
  color: #c00;
  line-height: 1.5;
}
.cnt-basic .contents .voice .box-voice .hgroup .txt h3:before {
  display: none;
}
.cnt-basic .contents .voice .box-voice .hgroup .txt h3 span {
  display: block;
  margin-bottom: 10px;
  background: #c00;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  text-align: center;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.cnt-basic .contents .voice .box-voice .hgroup .txt dt {
  border-bottom: 1px dashed #c00;
  font-weight: 700;
}
.cnt-basic .contents .voice .box-voice .hgroup .txt dt em {
  margin-right: 5px;
}
.cnt-basic .contents .voice .box-voice .hgroup .txt dt span {
  margin-left: 5px;
  color: #999;
  font-family: "Roboto Condensed", sans-serif;
}
.cnt-basic .contents .voice .box-voice .hgroup .txt dd {
  color: #999;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .voice .box-voice .hgroup {
    display: table;
    table-layout: fixed;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt,
  .cnt-basic .contents .voice .box-voice .hgroup .img {
    display: table-cell;
    vertical-align: middle;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt {
    padding: 0 40px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt h3 {
    margin-bottom: 15px;
    font-size: 24px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt h3 span {
    width: 130px;
    font-size: 14px;
    line-height: 30px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt dt {
    margin-bottom: 15px;
    padding-bottom: 15px;
    font-size: 14px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt dt em {
    font-size: 18px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt dd {
    font-size: 14px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .img {
    width: 550px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .voice .box-voice .hgroup {
    display: table;
    table-layout: fixed;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt,
  .cnt-basic .contents .voice .box-voice .hgroup .img {
    display: table-cell;
    vertical-align: middle;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt {
    padding: 0 15px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt h3 {
    margin-bottom: 5px;
    font-size: 18px;
    line-height: 1.2;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt h3 span {
    width: 100px;
    margin-bottom: 5px;
    font-size: 11px;
    line-height: 20px;
    letter-spacing: 0;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt dt {
    margin-bottom: 10px;
    padding-bottom: 10px;
    font-size: 12px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt dt em {
    font-size: 16px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt dd {
    font-size: 11px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .img {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .voice .box-voice .hgroup {
    display: block;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt,
  .cnt-basic .contents .voice .box-voice .hgroup .img {
    display: block;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt {
    padding: 20px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt h3 {
    margin-bottom: 10px;
    text-align: center;
    line-height: 1.3;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt h3 span {
    margin: 0 auto 5px;
    font-size: 10px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt dl {
    text-align: center;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt dt {
    margin-bottom: 10px;
    padding-bottom: 10px;
    font-size: 12px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt dt em {
    font-size: 16px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .txt dd {
    font-size: 11px;
  }
  .cnt-basic .contents .voice .box-voice .hgroup .img {
    width: 100%;
  }
}
.cnt-basic .contents .voice .box-voice .interview {
  display: none;
}
.cnt-basic .contents .voice .box-voice .interview .inner {
  background: #f8f8f8;
}
.cnt-basic .contents .voice .box-voice .interview p {
  margin-bottom: 0;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .voice .box-voice .interview {
    padding: 40px;
  }
  .cnt-basic .contents .voice .box-voice .interview .inner {
    padding: 30px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .voice .box-voice .interview {
    padding: 15px;
  }
  .cnt-basic .contents .voice .box-voice .interview .inner {
    padding: 20px;
  }
}
.cnt-basic .contents .voice .box-voice .btn {
  cursor: pointer;
  position: absolute;
  left: 50%;
  bottom: -20px;
  width: 220px;
  margin-left: -110px;
  background: #c00;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  line-height: 40px;
  -webkit-border-radius: 20px;
  border-radius: 20px;
}
.cnt-basic .contents .voice .box-voice .btn i {
  display: inline-block;
  margin-right: 5px;
  font-size: 12px;
  transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
}
.cnt-basic .contents .voice .box-voice.on .btn i {
  transform: rotate(-90deg);
  -moz-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
}
.cnt-basic .contents .results,
.cnt-skype .contents .results {
  background: #f2f2f2;
}
.cnt-basic .contents .results h2 span,
.cnt-skype .contents .results h2 span {
  background: #f2f2f2;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .results {
    padding-top: 80px;
  }
  .cnt-skype .contents .results {
    padding-top: 0;
  }
  .cnt-basic .contents .results .results-list,
  .cnt-skype .contents .results .results-list {
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .results,
  .cnt-skype .contents .results {
    padding-top: 60px;
  }
  .cnt-basic .contents .results .results-list,
  .cnt-skype .contents .results .results-list {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .results,
  .cnt-skype .contents .results {
    padding-top: 40px;
  }
  .cnt-basic .contents .results .results-list,
  .cnt-skype .contents .results .results-list {
    margin-bottom: 30px;
  }
}
.cnt-basic .contents .teacher {
  background: #f8f8f8;
}
.cnt-basic .contents .teacher h2 span {
  background: #f8f8f8;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .teacher {
    margin-bottom: 80px;
    padding-top: 80px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .teacher {
    margin-bottom: 60px;
    padding-top: 60px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .teacher {
    margin-bottom: 40px;
    padding-top: 40px;
  }
}
.cnt-basic .contents .course .course-basic {
  background: url(../../images/course/basic/bg-pagetitle_190404.png) no-repeat
    center center;
}
.cnt-basic .contents .course .course-basic .inner {
  border-left: 5px solid #c00;
  background: #fff;
}
.cnt-basic .contents .course .course-basic h3 {
  margin: 0;
  padding: 0;
  background: none;
  color: #c00;
}
.cnt-basic .contents .course .course-basic h3:before {
  display: none;
}
.cnt-basic .contents .course .course-basic h3 span {
  display: block;
  color: #000;
}
.cnt-basic .contents .course .course-basic .btn-link {
  padding-top: 20px;
  text-align: left;
}
.cnt-basic .contents .course .course-basic .btn-link a {
  min-width: 0;
  width: auto;
  font-size: 14px;
  text-align: center;
  line-height: 40px;
  -webkit-border-radius: 20px;
  border-radius: 20px;
}
.cnt-basic .contents .course .course-basic .btn-link i {
  font-size: 12px;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .course .course-basic {
    padding: 40px 0 40px 40px;
    background: url(../../images/course/basic/course-basic-bg_.png) no-repeat
      center center;
  }
  .cnt-basic .contents .course .course-basic .inner {
    width: 550px;
    padding: 30px;
  }
  .cnt-basic .contents .course .course-basic h3 {
    font-size: 36px;
  }
  .cnt-basic .contents .course .course-basic h3 span {
    font-size: 16px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .course .course-basic {
    padding: 20px 0 20px 20px;
    background: url(../../images/course/basic/course-basic-bg.png) no-repeat
      center bottom;
    background-size: auto 120%;
    -moz-background-size: auto 120%;
    -webkit-background-size: auto 120%;
  }
  .cnt-basic .contents .course .course-basic .inner {
    width: 50%;
    padding: 20px;
  }
  .cnt-basic .contents .course .course-basic h3 {
    font-size: 20px;
  }
  .cnt-basic .contents .course .course-basic h3 span {
    font-size: 14px;
  }
  .cnt-basic .contents .course .course-basic .btn-link a {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .course .course-basic {
    padding: 15px;
    background: url(../../images/course/basic/course-basic-bg.png) no-repeat
      center bottom;
    background-size: cover;
    -moz-background-size: cover;
    -webkit-background-size: cover;
  }
  .cnt-basic .contents .course .course-basic .inner {
    width: 100%;
    padding: 15px;
    background: rgba(255, 255, 255, 0.9);
  }
  .cnt-basic .contents .course .course-basic h3 {
    font-size: 18px;
  }
  .cnt-basic .contents .course .course-basic h3 span {
    font-size: 12px;
  }
  .cnt-basic .contents .course .course-basic .btn-link a {
    padding: 0;
  }
}
.cnt-basic .contents .course .course-high,
.cnt-basic .contents .course .course-exective {
  position: relative;
  text-align: center;
}
.cnt-basic .contents .course .course-high h3,
.cnt-basic .contents .course .course-exective h3 {
  margin: 0;
  background: none;
}
.cnt-basic .contents .course .course-high h3:before,
.cnt-basic .contents .course .course-exective h3:before {
  display: none;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .course .course-high,
  .cnt-basic .contents .course .course-exective {
    width: calc(50% - 20px);
    margin-top: 70px;
    padding: 0 20px 20px;
  }
  .cnt-basic .contents .course .course-high:before,
  .cnt-basic .contents .course .course-exective:before {
    content: "";
    position: absolute;
    top: -55px;
    left: 50%;
    margin-left: -50px;
    border-top: 30px solid #c00;
    border-right: 50px solid transparent;
    border-left: 50px solid transparent;
  }
  .cnt-basic .contents .course .course-high h3,
  .cnt-basic .contents .course .course-exective h3 {
    padding: 30px 20px;
    font-size: 30px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .course .course-high,
  .cnt-basic .contents .course .course-exective {
    width: calc(50% - 10px);
    margin-top: 50px;
    padding: 0 15px 15px;
  }
  .cnt-basic .contents .course .course-high:before,
  .cnt-basic .contents .course .course-exective:before {
    content: "";
    position: absolute;
    top: -40px;
    left: 50%;
    margin-left: -30px;
    border-top: 20px solid #c00;
    border-right: 30px solid transparent;
    border-left: 30px solid transparent;
  }
  .cnt-basic .contents .course .course-high h3,
  .cnt-basic .contents .course .course-exective h3 {
    padding: 15px 15px;
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .course .course-high,
  .cnt-basic .contents .course .course-exective {
    width: 100%;
    margin-top: 30px;
    padding: 0 15px 15px;
  }
  .cnt-basic .contents .course .course-high:before,
  .cnt-basic .contents .course .course-exective:before {
    display: none;
  }
  .cnt-basic .contents .course .course-high h3,
  .cnt-basic .contents .course .course-exective h3 {
    padding: 15px 15px;
    font-size: 18px;
  }
}
.cnt-basic .contents .course .course-high {
  float: left;
  border-top: 5px solid #19375a;
  background: #f3f5f7;
}
.cnt-basic .contents .course .course-high h3 {
  color: #50b420;
  line-height: 1;
}
.cnt-basic .contents .course .course-high .inner {
  background: #fff;
}
.cnt-basic .contents .course .course-high .item {
  text-align: left;
  border-bottom: 1px dotted #ededed;
}
.cnt-basic .contents .course .course-high .item:last-child {
  border-bottom: none;
}
.cnt-basic .contents .course .course-high .item a {
  position: relative;
  display: block;
  padding: 20px 5px 20px 0;
  zoom: 1;
  text-decoration: none;
}
.cnt-basic .contents .course .course-high .item a:before,
.cnt-basic .contents .course .course-high .item a:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-basic .contents .course .course-high .item a:after {
  clear: both;
}
.cnt-basic .contents .course .course-high .item .icon-arrow {
  right: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #19375a;
}
.cnt-basic .contents .course .course-high .item .img {
  float: left;
}
.cnt-basic .contents .course .course-high .item dt {
  color: #50b420;
  font-weight: 700;
  line-height: 1;
}
.cnt-basic .contents .course .course-high .item .list {
  margin: 0;
  line-height: 1;
}
.cnt-basic .contents .course .course-high .item li {
  display: inline-block;
  margin: 5px 15px 0 0;
  padding-left: 10px;
  color: #666;
  line-height: 1.3;
  letter-spacing: 0;
}
.cnt-basic .contents .course .course-high .item li:before {
  background: #50b420;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .course .course-high .inner {
    padding: 0 20px;
  }
  .cnt-basic .contents .course .course-high .item a {
    padding: 20px 5px 20px 0;
  }
  .cnt-basic .contents .course .course-high .item .icon-arrow {
    font-size: 14px;
  }
  .cnt-basic .contents .course .course-high .item .img {
    width: 70px;
  }
  .cnt-basic .contents .course .course-high .item dl {
    margin: 0 0 0 85px;
  }
  .cnt-basic .contents .course .course-high .item dt {
    font-size: 20px;
  }
  .cnt-basic .contents .course .course-high .item li {
    font-size: 13px;
  }
  .cnt-basic .contents .course .course-high .item li:before {
    top: 6px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .course .course-high .inner {
    padding: 0 15px;
  }
  .cnt-basic .contents .course .course-high .item a {
    padding: 15px 5px 15px 0;
  }
  .cnt-basic .contents .course .course-high .item .icon-arrow {
    font-size: 14px;
  }
  .cnt-basic .contents .course .course-high .item .img {
    width: 70px;
  }
  .cnt-basic .contents .course .course-high .item dl {
    margin: 0 0 0 85px;
  }
  .cnt-basic .contents .course .course-high .item dt {
    font-size: 17px;
    line-height: 1.3;
  }
  .cnt-basic .contents .course .course-high .item li {
    font-size: 13px;
  }
  .cnt-basic .contents .course .course-high .item li:before {
    top: 6px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .course .course-high .inner {
    padding: 0 20px;
  }
  .cnt-basic .contents .course .course-high .item a {
    padding: 20px 5px 20px 0;
  }
  .cnt-basic .contents .course .course-high .item .icon-arrow {
    font-size: 12px;
  }
  .cnt-basic .contents .course .course-high .item .img {
    width: 70px;
  }
  .cnt-basic .contents .course .course-high .item dl {
    margin: 0 0 0 85px;
  }
  .cnt-basic .contents .course .course-high .item dt {
    margin-bottom: 5px;
    font-size: 15px;
  }
  .cnt-basic .contents .course .course-high .item li {
    font-size: 12px;
  }
  .cnt-basic .contents .course .course-high .item li:before {
    top: 5px;
  }
}
.cnt-basic .contents .course .course-exective {
  float: right;
  border-top: 5px solid #c69a00;
  background: rgba(0, 0, 0, 0.85) !important;
}
.cnt-basic .contents .course .course-exective p {
  color: #c69a00;
}
.cnt-basic .contents .course .course-exective h3 {
  color: #c69a00;
}
.cnt-basic .contents .course .course-exective .inner {
  padding: 0 20px 20px;
  /*background: #fff;*/
  text-align: left;
}
.cnt-basic .contents .course .course-exective .img {
  position: relative;
  margin: 0 -20px 20px;
}
.cnt-basic .contents .course .course-exective .btn-link {
  padding-top: 30px;
}
.cnt-basic .contents .course .course-exective .btn-link a {
  min-width: 300px;
  background: #c69a00;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .course .course-exective .btn-link {
    padding-top: 30px;
  }
  .cnt-basic .contents .course .course-exective .btn-link a {
    min-width: 300px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .course .course-exective .btn-link {
    padding-top: 20px;
  }
  .cnt-basic .contents .course .course-exective .btn-link a {
    width: 100%;
    min-width: 0;
  }
}
.cnt-basic .contents .lesson .lesson-list {
  position: relative;
  zoom: 1;
}
.cnt-basic .contents .lesson .lesson-list:before,
.cnt-basic .contents .lesson .lesson-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-basic .contents .lesson .lesson-list:after {
  clear: both;
}
.cnt-basic .contents .lesson .item {
  float: left;
  text-align: center;
}
.cnt-basic .contents .lesson .item a {
  display: block;
  text-decoration: none;
}
.cnt-basic .contents .lesson .item dd {
  font-weight: 700;
}
.cnt-basic .contents .lesson .item .more {
  display: block;
  background: #c00;
  color: #fff;
  font-weight: 500;
  line-height: 1;
}
.cnt-basic .contents .lesson .item .more i {
  margin-right: 5px;
}
@media all and (min-width: 960px) {
  .cnt-basic .contents .lesson .lesson-list {
    margin: 0 -20px;
  }
  .cnt-basic .contents .lesson .item {
    width: 25%;
    padding: 0 20px;
  }
  .cnt-basic .contents .lesson .item a {
    padding: 20px 0 0;
  }
  .cnt-basic .contents .lesson .item dl {
    margin: 0 0 15px;
  }
  .cnt-basic .contents .lesson .item dt {
    margin-bottom: 15px;
  }
  .cnt-basic .contents .lesson .item dd {
    font-size: 20px;
  }
  .cnt-basic .contents .lesson .item .more {
    padding: 15px 0;
    font-size: 14px;
  }
  .cnt-basic .contents .lesson .item .more i {
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-basic .contents .lesson .lesson-list {
    margin: 0 -10px;
  }
  .cnt-basic .contents .lesson .item {
    width: 25%;
    padding: 0 10px;
  }
  .cnt-basic .contents .lesson .item a {
    padding: 15px 0 0;
  }
  .cnt-basic .contents .lesson .item dl {
    margin: 0 0 10px;
  }
  .cnt-basic .contents .lesson .item dt {
    width: 80%;
    margin: 0 auto 10px;
  }
  .cnt-basic .contents .lesson .item dd {
    font-size: 16px;
  }
  .cnt-basic .contents .lesson .item .more {
    padding: 10px 0;
    font-size: 13px;
  }
  .cnt-basic .contents .lesson .item .more i {
    font-size: 11px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-basic .contents .lesson .lesson-list {
    margin: 0 -5px;
  }
  .cnt-basic .contents .lesson .item {
    width: 50%;
    padding: 0 5px;
    margin-bottom: 10px;
  }
  .cnt-basic .contents .lesson .item a {
    padding: 15px 0 0;
  }
  .cnt-basic .contents .lesson .item dl {
    margin: 0 0 10px;
  }
  .cnt-basic .contents .lesson .item dt {
    width: 80%;
    margin: 0 auto 10px;
  }
  .cnt-basic .contents .lesson .item dd {
    font-size: 16px;
  }
  .cnt-basic .contents .lesson .item .more {
    padding: 10px 0;
    font-size: 11px;
  }
  .cnt-basic .contents .lesson .item .more i {
    font-size: 10px;
  }
}

/* announcer
--------------------------------------------------------- */
.cnt-announcer .pagetitle {
  position: relative;
}
@media all and (min-width: 960px) {
  .cnt-announcer .pagetitle {
    height: 400px;
  }
}
.cnt-announcer .pagetitle .txt {
  position: relative;
  margin: auto;
  zoom: 1;
}
.cnt-announcer .pagetitle .txt:before,
.cnt-announcer .pagetitle .txt:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-announcer .pagetitle .txt:after {
  clear: both;
}
.cnt-announcer .pagetitle .txt h1 {
  position: relative;
  background: #c00;
  color: #fff;
}
.cnt-announcer .pagetitle .txt h1 span {
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
}
.cnt-announcer .pagetitle .txt p {
  font-weight: 700;
  line-height: 1.5;
}
.cnt-announcer .pagetitle .txt p.lead-copy {
  margin-bottom: 10px;
  line-height: 1;
}
.cnt-announcer .pagetitle .txt p.lead-copy em {
  color: #c00;
  line-height: 1.3;
}
.cnt-announcer .pagetitle .txt p.lead-copy span {
  display: block;
  margin-top: 5px;
}
@media all and (min-width: 960px) {
  .cnt-announcer .pagetitle .txt {
    max-width: 1100px;
    height: 400px;
    padding-top: 50px;
    text-align: left;
    zoom: 1;
  }
  .cnt-announcer .pagetitle .txt:before,
  .cnt-announcer .pagetitle .txt:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden;
  }
  .cnt-announcer .pagetitle .txt:after {
    clear: both;
  }
  .cnt-announcer .pagetitle .txt h1 {
    width: 50%;
    margin-bottom: 20px;
    padding: 20px 0;
    text-align: left;
    font-size: 34px;
  }
  .cnt-announcer .pagetitle .txt h1:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -50%;
    width: 50%;
    background: #c00;
  }
  .cnt-announcer .pagetitle .txt h1 span {
    margin: 0 0 10px;
    font-size: 12px;
  }
  .cnt-announcer .pagetitle .txt p {
    font-size: 18px;
  }
  .cnt-announcer .pagetitle .txt p.lead-copy {
    font-size: 30px;
  }
  .cnt-announcer .pagetitle .txt p.lead-copy em {
    font-size: 50px;
  }
  .cnt-announcer .pagetitle .txt p.lead-copy span {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-announcer .pagetitle .txt {
    margin: auto;
    padding: 30px 0;
  }
  .cnt-announcer .pagetitle .txt h1 {
    position: relative;
    margin-bottom: 20px;
    padding: 15px 0;
    background: #c00;
    color: #fff;
    font-size: 24px;
  }
  .cnt-announcer .pagetitle .txt h1 span {
    margin: 0 0 5px;
    color: #fff;
    font-size: 12px;
    font-family: "Roboto Condensed", sans-serif;
  }
  .cnt-announcer .pagetitle .txt p {
    padding: 0 20px;
    font-size: 16px;
    text-align: center;
  }
  .cnt-announcer .pagetitle .txt p.lead-copy {
    font-size: 20px;
  }
  .cnt-announcer .pagetitle .txt p.lead-copy em {
    font-size: 30px;
  }
  .cnt-announcer .pagetitle .txt p.lead-copy span {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-announcer .pagetitle .txt p {
    padding: 0 15px;
    font-size: 14px;
  }
  .cnt-announcer .pagetitle .txt p.lead-copy {
    font-size: 18px;
  }
  .cnt-announcer .pagetitle .txt p.lead-copy em {
    font-size: 24px;
  }
  .cnt-announcer .pagetitle .txt p.lead-copy span {
    font-size: 12px;
  }
}
.cnt-announcer .pagetitle .video {
  text-align: center;
}
.cnt-announcer .pagetitle .video .inner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.cnt-announcer .pagetitle .video .inner iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
@media all and (min-width: 960px) {
  .cnt-announcer .pagetitle .video {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 0;
    width: 55%;
  }
}
@media screen and (max-width: 959px) {
  .cnt-announcer .pagetitle .video {
    width: 60%;
    margin: 20px auto 0;
  }
}
@media screen and (max-width: 767px) {
  .cnt-announcer .pagetitle .video {
    width: auto;
    margin: 15px 15px 0;
  }
}
.cnt-announcer .contents .intro .img {
  width: 50%;
}
.cnt-announcer .contents .feature-list {
  position: relative;
  zoom: 1;
}
.cnt-announcer .contents .feature-list:before,
.cnt-announcer .contents .feature-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-announcer .contents .feature-list:after {
  clear: both;
}
.cnt-announcer .contents .feature-list .item {
  position: relative;
  overflow: visible;
  float: left;
}
.cnt-announcer .contents .feature-list .item dl {
  width: 100%;
  text-align: center;
}
.cnt-announcer .contents .feature-list .item dt {
  display: table;
  width: 100%;
  border-bottom: 2px solid #c00;
  background: rgba(204, 0, 0, 0.05);
  color: #c00;
  font-weight: 700;
  line-height: 1.3;
}
.cnt-announcer .contents .feature-list .item dt span {
  display: table-cell;
  vertical-align: middle;
}
.cnt-announcer .contents .feature-list .item dt i {
  display: block;
  position: absolute;
  top: 0;
  background: #c00;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 700;
  text-align: center;
  -webkit-border-radius: 100%;
  border-radius: 100%;
}
.cnt-announcer .contents .feature-list .item dd {
  padding: 0 20px;
}
@media all and (min-width: 960px) {
  .cnt-announcer .contents .feature-list {
    margin: 0 -10px;
  }
  .cnt-announcer .contents .feature-list .item {
    width: 25%;
    padding: 25px 10px 0;
  }
  .cnt-announcer .contents .feature-list .item dl {
    padding: 0 0 20px;
  }
  .cnt-announcer .contents .feature-list .item dt {
    padding: 30px 20px 15px;
    margin-bottom: 15px;
    font-size: 20px;
  }
  .cnt-announcer .contents .feature-list .item dt i {
    left: calc(50% - 25px);
    width: 50px;
    height: 50px;
    font-size: 26px;
    line-height: 50px;
  }
  .cnt-announcer .contents .feature-list .item dd {
    padding: 0 20px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-announcer .contents .feature-list {
    margin: 0 -10px;
  }
  .cnt-announcer .contents .feature-list .item {
    width: 50%;
    padding: 20px 10px 0;
  }
  .cnt-announcer .contents .feature-list .item dl {
    padding: 0 0 15px;
  }
  .cnt-announcer .contents .feature-list .item dt {
    padding: 25px 15px 15px;
    margin-bottom: 15px;
    font-size: 18px;
  }
  .cnt-announcer .contents .feature-list .item dt br {
    display: none;
  }
  .cnt-announcer .contents .feature-list .item dt i {
    left: calc(50% - 20px);
    width: 40px;
    height: 40px;
    font-size: 20px;
    line-height: 40px;
  }
  .cnt-announcer .contents .feature-list .item dd {
    padding: 0 15px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-announcer .contents .feature-list {
    margin: 0;
  }
  .cnt-announcer .contents .feature-list .item {
    float: none;
    width: 100%;
    margin-bottom: 15px;
    padding: 25px 0 0;
  }
  .cnt-announcer .contents .feature-list .item:last-child {
    margin-bottom: 0;
  }
  .cnt-announcer .contents .feature-list .item dt {
    padding: 20px 15px 15px;
    font-size: 16px;
  }
}
.cnt-announcer .contents .offer dl {
  margin-bottom: 30px;
}
.cnt-announcer .contents .offer dl:last-child {
  margin-bottom: 0;
}
.cnt-announcer .contents .offer dt {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dotted #ededed;
  color: #c00;
  font-weight: 700;
  line-height: 1;
}
.cnt-announcer .contents .offer .list {
  zoom: 1;
}
.cnt-announcer .contents .offer .list:before,
.cnt-announcer .contents .offer .list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-announcer .contents .offer .list:after {
  clear: both;
}
.cnt-announcer .contents .offer .list li {
  float: left;
  width: 23%;
  padding-right: 2%;
}
.cnt-announcer .contents .offer .results {
  margin-top: 30px;
  padding: 15px;
  background: rgba(204, 0, 0, 0.05);
  font-weight: 700;
  /*text-align: right;*/
  line-height: 1;
}
@media all and (min-width: 960px) {
  .cnt-announcer .contents .offer .list li {
    width: 23%;
    padding-right: 2%;
  }
  .cnt-announcer .contents .offer .results {
    margin-top: 30px;
    padding: 15px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-announcer .contents .offer .list li {
    width: 33.333%;
  }
  .cnt-announcer .contents .offer .results {
    margin-top: 20px;
    padding: 10px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-announcer .contents .offer .list li {
    float: none;
    width: 100%;
  }
  .cnt-announcer .contents .offer .results {
    font-size: 12px;
    text-align: center;
  }
}
.cnt-announcer .contents .curriculum h4 {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 700;
}
@media screen and (max-width: 959px) {
  .cnt-announcer .contents .curriculum h4 {
    font-size: 16px;
  }
}
.cnt-announcer .contents .support .img {
  text-align: center;
}
.cnt-announcer .contents .support .hgroup dd {
  font-weight: 700;
}
.cnt-announcer .contents .support table th,
.cnt-announcer .contents .support table td {
  padding: 10px;
  font-size: 14px;
}
@media all and (min-width: 960px) {
  .cnt-announcer .contents .support .img {
    float: left;
  }
  .cnt-announcer .contents .support .hgroup {
    margin-left: 330px;
  }
  .cnt-announcer .contents .support .hgroup dt {
    font-size: 14px;
  }
  .cnt-announcer .contents .support .hgroup dd {
    font-size: 26px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-announcer .contents .support .hgroup {
    margin-top: 15px;
  }
  .cnt-announcer .contents .support .hgroup dl {
    text-align: center;
  }
  .cnt-announcer .contents .support .hgroup dt,
  .cnt-announcer .contents .support .hgroup dd {
    display: inline-block;
  }
  .cnt-announcer .contents .support .hgroup dt {
    margin-right: 5px;
    font-size: 14px;
  }
  .cnt-announcer .contents .support .hgroup dd {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-announcer .contents .support .hgroup dt,
  .cnt-announcer .contents .support .hgroup dd {
    display: block;
  }
  .cnt-announcer .contents .support .hgroup dt {
    margin-right: 0;
    font-size: 12px;
  }
  .cnt-announcer .contents .support .hgroup dd {
    font-size: 18px;
  }
}
.cnt-announcer .contents .support .cap {
  margin: 30px 0 15px;
  padding: 15px;
  background: rgba(204, 0, 0, 0.05);
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
}
.cnt-announcer .contents .message .message-list .hgroup h4 {
  font-weight: 700;
}
.cnt-announcer .contents .message .message-list .hgroup h4 span {
  display: block;
  font-weight: 500;
}
.cnt-announcer .contents .message .message-list .txt {
  padding-top: 15px;
  border-top: 1px dotted #ededed;
}
@media screen and (min-width: 768px) {
  .cnt-announcer .contents .message .message-list .item {
    float: left;
    width: 50%;
  }
  .cnt-announcer .contents .message .message-list .item:nth-child(1),
  .cnt-announcer .contents .message .message-list .item:nth-child(2) {
    padding-top: 0;
  }
}
@media all and (min-width: 960px) {
  .cnt-announcer .contents .message .message-list {
    margin: 0 -20px;
  }
  .cnt-announcer .contents .message .message-list .item {
    padding: 40px 20px 0;
  }
  .cnt-announcer .contents .message .message-list .box-shadow {
    padding: 20px;
  }
  .cnt-announcer .contents .message .message-list .hgroup {
    display: table;
    width: 100%;
    margin-bottom: 20px;
  }
  .cnt-announcer .contents .message .message-list .hgroup .img,
  .cnt-announcer .contents .message .message-list .hgroup h4 {
    display: table-cell;
    vertical-align: middle;
  }
  .cnt-announcer .contents .message .message-list .hgroup .img {
    width: 175px;
  }
  .cnt-announcer .contents .message .message-list .hgroup h4 {
    font-size: 24px;
  }
  .cnt-announcer .contents .message .message-list .hgroup h4 span {
    font-size: 14px;
  }
  .cnt-announcer .contents .message .message-list .txt {
    padding-top: 15px;
  }
  .cnt-announcer .contents .message .message-list .txt p {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-announcer .contents .message .message-list {
    margin: 0 10px;
  }
  .cnt-announcer .contents .message .message-list .item {
    padding: 20px 10px 0;
  }
  .cnt-announcer .contents .message .message-list .box-shadow {
    padding: 15px;
  }
  .cnt-announcer .contents .message .message-list .img {
    margin-bottom: 10px;
  }
  .cnt-announcer .contents .message .message-list .hgroup {
    margin-bottom: 15px;
    text-align: center;
  }
  .cnt-announcer .contents .message .message-list .hgroup h4 {
    font-size: 20px;
  }
  .cnt-announcer .contents .message .message-list .hgroup h4 span {
    font-size: 14px;
  }
  .cnt-announcer .contents .message .message-list .txt {
    padding-top: 15px;
  }
  .cnt-announcer .contents .message .message-list .txt p {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-announcer .contents .message .message-list {
    margin: 0;
  }
  .cnt-announcer .contents .message .message-list .item {
    padding: 15px 0 0;
  }
  .cnt-announcer .contents .message .message-list .item:first-child {
    padding-top: 0;
  }
  .cnt-announcer .contents .message .message-list .hgroup h4 {
    font-size: 16px;
  }
  .cnt-announcer .contents .message .message-list .hgroup h4 span {
    font-size: 12px;
  }
}

/* skype
--------------------------------------------------------- */
.cnt-skype .pagetitle {
  position: relative;
}
@media all and (min-width: 960px) {
  .cnt-skype .pagetitle {
    height: 400px;
  }
}
.cnt-skype .pagetitle .txt {
  position: relative;
  margin: auto;
  zoom: 1;
}
.cnt-skype .pagetitle .txt:before,
.cnt-skype .pagetitle .txt:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-skype .pagetitle .txt:after {
  clear: both;
}
.cnt-skype .pagetitle .txt h1 {
  position: relative;
  background: #c00;
  color: #fff;
}
.cnt-skype .pagetitle .txt h1 span {
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
}
.cnt-skype .pagetitle .txt p {
  font-weight: 700;
  line-height: 1.5;
}
.cnt-skype .pagetitle .txt p.lead-copy {
  margin-bottom: 10px;
  line-height: 1;
}
.cnt-skype .pagetitle .txt p.lead-copy em {
  color: #c00;
  line-height: 1.3;
  letter-spacing: 0;
}
.cnt-skype .pagetitle .txt p.lead-copy span {
  display: block;
  margin-top: 5px;
}
@media all and (min-width: 960px) {
  .cnt-skype .pagetitle .txt {
    max-width: 1100px;
    height: 400px;
    padding-top: 50px;
    text-align: left;
    zoom: 1;
  }
  .cnt-skype .pagetitle .txt:before,
  .cnt-skype .pagetitle .txt:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden;
  }
  .cnt-skype .pagetitle .txt:after {
    clear: both;
  }
  .cnt-skype .pagetitle .txt h1 {
    width: 50%;
    margin-bottom: 20px;
    padding: 20px 0;
    text-align: left;
    font-size: 34px;
  }
  .cnt-skype .pagetitle .txt h1:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -50%;
    width: 50%;
    background: #c00;
  }
  .cnt-skype .pagetitle .txt h1 span {
    margin: 0 0 10px;
    font-size: 12px;
  }
  .cnt-skype .pagetitle .txt p {
    font-size: 18px;
  }
  .cnt-skype .pagetitle .txt p.lead-copy {
    font-size: 30px;
  }
  .cnt-skype .pagetitle .txt p.lead-copy em {
    font-size: 50px;
  }
  .cnt-skype .pagetitle .txt p.lead-copy span {
    font-size: 14px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-skype .pagetitle .txt {
    margin: auto;
    padding: 30px 0;
  }
  .cnt-skype .pagetitle .txt h1 {
    position: relative;
    margin-bottom: 20px;
    padding: 15px 0;
    background: #c00;
    color: #fff;
    font-size: 24px;
  }
  .cnt-skype .pagetitle .txt h1 span {
    margin: 0 0 5px;
    color: #fff;
    font-size: 12px;
    font-family: "Roboto Condensed", sans-serif;
  }
  .cnt-skype .pagetitle .txt p {
    padding: 0 20px;
    font-size: 16px;
    text-align: center;
  }
  .cnt-skype .pagetitle .txt p.lead-copy {
    font-size: 20px;
  }
  .cnt-skype .pagetitle .txt p.lead-copy em {
    font-size: 30px;
  }
  .cnt-skype .pagetitle .txt p.lead-copy span {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-skype .pagetitle .txt p {
    padding: 0 15px;
    font-size: 14px;
  }
  .cnt-skype .pagetitle .txt p.lead-copy {
    font-size: 18px;
  }
  .cnt-skype .pagetitle .txt p.lead-copy em {
    font-size: 24px;
  }
  .cnt-skype .pagetitle .txt p.lead-copy span {
    font-size: 12px;
  }
}
.cnt-skype .pagetitle .video {
  text-align: center;
}
.cnt-skype .pagetitle .video .inner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.cnt-skype .pagetitle .video .inner iframe,
.cnt-skype .pagetitle .video .inner img {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
@media all and (min-width: 960px) {
  .cnt-skype .pagetitle .video {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 0;
    width: 55%;
  }
}
@media screen and (max-width: 959px) {
  .cnt-skype .pagetitle .video {
    width: 60%;
    margin: 20px auto 0;
  }
}
@media screen and (max-width: 767px) {
  .cnt-skype .pagetitle .video {
    width: auto;
    margin: 15px 15px 0;
  }
}
.cnt-skype .contents .feature-list {
  position: relative;
  zoom: 1;
}
.cnt-skype .contents .feature-list:before,
.cnt-skype .contents .feature-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-skype .contents .feature-list:after {
  clear: both;
}
.cnt-skype .contents .feature-list .item {
  position: relative;
  overflow: visible;
  float: left;
}
.cnt-skype .contents .feature-list .item dl {
  width: 100%;
  text-align: center;
}
.cnt-skype .contents .feature-list .item dt {
  display: table;
  width: 100%;
  border-bottom: 2px solid #c00;
  background: rgba(204, 0, 0, 0.05);
  color: #c00;
  font-weight: 700;
  line-height: 1.3;
}
.cnt-skype .contents .feature-list .item dt span {
  display: table-cell;
  vertical-align: middle;
}
.cnt-skype .contents .feature-list .item dt i {
  display: block;
  position: absolute;
  top: 0;
  background: #c00;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 700;
  text-align: center;
  -webkit-border-radius: 100%;
  border-radius: 100%;
}
.cnt-skype .contents .feature-list .item dd {
  padding: 0 20px;
}
@media all and (min-width: 960px) {
  .cnt-skype .contents .feature-list {
    margin: 0 -10px;
  }
  .cnt-skype .contents .feature-list .item {
    width: 25%;
    padding: 25px 10px 0;
  }
  .cnt-skype .contents .feature-list .item dl {
    padding: 0 0 20px;
  }
  .cnt-skype .contents .feature-list .item dt {
    padding: 30px 20px 15px;
    margin-bottom: 15px;
    font-size: 20px;
  }
  .cnt-skype .contents .feature-list .item dt i {
    left: calc(50% - 25px);
    width: 50px;
    height: 50px;
    font-size: 26px;
    line-height: 50px;
  }
  .cnt-skype .contents .feature-list .item dd {
    padding: 0 20px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-skype .contents .feature-list {
    margin: 0 -10px;
  }
  .cnt-skype .contents .feature-list .item {
    width: 50%;
    padding: 20px 10px 0;
  }
  .cnt-skype .contents .feature-list .item dl {
    padding: 0 0 15px;
  }
  .cnt-skype .contents .feature-list .item dt {
    padding: 25px 15px 15px;
    margin-bottom: 15px;
    font-size: 18px;
  }
  .cnt-skype .contents .feature-list .item dt br {
    display: none;
  }
  .cnt-skype .contents .feature-list .item dt i {
    left: calc(50% - 20px);
    width: 40px;
    height: 40px;
    font-size: 20px;
    line-height: 40px;
  }
  .cnt-skype .contents .feature-list .item dd {
    padding: 0 15px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-skype .contents .feature-list {
    margin: 0;
  }
  .cnt-skype .contents .feature-list .item {
    float: none;
    width: 100%;
    margin-bottom: 15px;
    padding: 25px 0 0;
  }
  .cnt-skype .contents .feature-list .item:last-child {
    margin-bottom: 0;
  }
  .cnt-skype .contents .feature-list .item dt {
    padding: 20px 15px 15px;
    font-size: 16px;
  }
}
.cnt-skype .contents .teacher {
  background: #f8f8f8;
}
.cnt-skype .contents .teacher h2 span {
  background: #f8f8f8;
}
@media all and (min-width: 960px) {
  .cnt-skype .contents .teacher {
    margin-bottom: 80px;
    padding-top: 80px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-skype .contents .teacher {
    margin-bottom: 50px;
    padding-top: 50px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-skype .contents .teacher {
    margin-bottom: 40px;
    padding-top: 40px;
  }
}
.cnt-skype .contents .flow .flow-list {
  zoom: 1;
}
.cnt-skype .contents .flow .flow-list:before,
.cnt-skype .contents .flow .flow-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-skype .contents .flow .flow-list:after {
  clear: both;
}
.cnt-skype .contents .flow .flow-list .item {
  position: relative;
  text-align: center;
}
.cnt-skype .contents .flow .flow-list .item .icon-arrow {
  color: #c00;
}
.cnt-skype .contents .flow .flow-list .box-shadow i {
  display: block;
  margin: auto;
}
.cnt-skype .contents .flow .flow-list dl {
  width: 100%;
}
.cnt-skype .contents .flow .flow-list dt {
  margin-bottom: 15px;
  padding: 15px 0;
  border-bottom: 1px dotted #ededed;
  color: #c00;
  font-weight: 700;
}
.cnt-skype .contents .flow .flow-list dt span {
  display: table-cell;
  vertical-align: middle;
}
.cnt-skype .contents .flow .flow-list dd {
  text-align: left;
}
@media screen and (min-width: 768px) {
  .cnt-skype .contents .flow .flow-list .item {
    float: left;
    width: 33.333%;
  }
  .cnt-skype .contents .flow .flow-list .item .icon-arrow {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .cnt-skype .contents .flow .flow-list dt {
    display: table;
    width: 100%;
  }
  .cnt-skype .contents .flow .flow-list dt span {
    display: table-cell;
    vertical-align: middle;
  }
}
@media all and (min-width: 960px) {
  .cnt-skype .contents .flow .flow-list {
    margin: 0 -25px;
  }
  .cnt-skype .contents .flow .flow-list .item {
    padding: 0 25px;
  }
  .cnt-skype .contents .flow .flow-list .item .icon-arrow {
    font-size: 30px;
    right: -15px;
  }
  .cnt-skype .contents .flow .flow-list .box-shadow {
    padding: 20px 0;
  }
  .cnt-skype .contents .flow .flow-list .box-shadow i {
    width: 200px;
  }
  .cnt-skype .contents .flow .flow-list dl {
    padding: 0 20px;
  }
  .cnt-skype .contents .flow .flow-list dt {
    font-size: 20px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-skype .contents .flow .flow-list {
    margin: 0 -15px;
  }
  .cnt-skype .contents .flow .flow-list .item {
    padding: 0 15px;
  }
  .cnt-skype .contents .flow .flow-list .item .icon-arrow {
    font-size: 20px;
    right: -10px;
  }
  .cnt-skype .contents .flow .flow-list .box-shadow {
    padding: 15px 0;
  }
  .cnt-skype .contents .flow .flow-list .box-shadow i {
    width: 80%;
  }
  .cnt-skype .contents .flow .flow-list dl {
    padding: 0 15px;
  }
  .cnt-skype .contents .flow .flow-list dt {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-skype .contents .flow .flow-list .item {
    padding-bottom: 20px;
  }
  .cnt-skype .contents .flow .flow-list .item:last-child {
    padding-bottom: 0;
  }
  .cnt-skype .contents .flow .flow-list .item .icon-arrow {
    display: block;
    margin-top: 10px;
    transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
  }
  .cnt-skype .contents .flow .flow-list .box-shadow {
    padding: 15px 0;
  }
  .cnt-skype .contents .flow .flow-list .box-shadow i {
    width: 50%;
  }
  .cnt-skype .contents .flow .flow-list dt {
    font-size: 16px;
  }
}

.cnt-skype .contents #results .list {
  zoom: 1;
}
.cnt-skype .contents #results .list:before,
#results-page .contents #results .list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.cnt-skype .contents #results .list:after {
  clear: both;
}
.cnt-skype .contents #results .list li {
  margin-top: 5px;
}
@media all and (min-width: 960px) {
  .cnt-skype .contents #results .list li {
    float: left;
    display: inline-block;
    width: 33.3333%;
    padding-right: 15px;
  }
}
@media screen and (max-width: 959px) {
  .cnt-skype .contents #results dt {
    font-size: 16px;
  }
  .cnt-skype .contents #results .list li {
    float: left;
    display: inline-block;
    width: 50%;
    padding-right: 15px;
  }
}
@media screen and (max-width: 767px) {
  .cnt-skype .contents #results dt {
    font-size: 16px;
  }
  .cnt-skype .contents #results .list li {
    float: none;
    display: block;
    width: 100%;
    padding-right: 0;
    font-size: 12px;
  }
  .cnt-skype .contents #results .list li:before {
    top: 7px;
  }
}

/* course popup
========================================================= */
#course-popup .contents {
  margin: auto;
  padding-top: 0;
}
@media all and (min-width: 960px) {
  #course-popup .contents {
    max-width: 1000px;
  }
}
#course-popup .contents h1 {
  background: #c00;
  color: #fff;
  font-weight: 500;
  text-align: center;
  line-height: 1;
}
#course-popup .contents h1 span {
  display: block;
  font-family: "Roboto Condensed", sans-serif;
}
@media all and (min-width: 960px) {
  #course-popup .contents h1 {
    margin-bottom: 60px;
    padding: 30px 0;
    font-size: 38px;
  }
  #course-popup .contents h1 small {
    font-size: 26px;
  }
  #course-popup .contents h1 span {
    margin-top: 10px;
    font-size: 12px;
  }
}
@media screen and (max-width: 959px) {
  #course-popup .contents h1 {
    margin-bottom: 40px;
    padding: 20px 0;
    font-size: 30px;
  }
  #course-popup .contents h1 span {
    margin-top: 5px;
    font-size: 10px;
  }
}
@media screen and (max-width: 767px) {
  #course-popup .contents h1 {
    margin-bottom: 30px;
    font-size: 24px;
  }
  #course-popup .contents h1 small {
    font-size: 18px;
  }
}
@media all and (min-width: 960px) {
  #course-popup .contents .article,
  #course-popup .contents .intro {
    width: auto;
    margin: 0 50px;
  }
}
@media screen and (max-width: 959px) {
  #course-popup .contents .article,
  #course-popup .contents .intro {
    width: 90%;
    margin: auto;
  }
}
@media all and (min-width: 960px) {
  #course-popup .contents .img {
    width: calc(50% - 10px);
  }
}
@media screen and (max-width: 959px) {
  #course-popup .contents .img {
    width: calc(40% - 10px);
  }
}
@media screen and (max-width: 767px) {
  #course-popup .contents .img {
    width: 100%;
  }
  #course-popup .contents .img + .img {
    margin-top: 15px;
  }
}
#course-popup .contents .list {
  overflow: hidden;
}
#course-popup .contents .intro {
  margin-bottom: 30px;
  text-align: center;
}
@media all and (min-width: 960px) {
  #course-popup .contents .recommended li {
    font-size: 18px;
  }
}
@media screen and (max-width: 959px) {
  #course-popup .contents .recommended li {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  #course-popup .contents .recommended li {
    font-size: 14px;
  }
}
#course-popup .contents .curriculum,
.cnt-skype .contents .curriculum {
  width: 100%;
}
#course-popup .contents .curriculum + .curriculum {
  margin-top: 10px;
}
#course-popup .contents .curriculum dl,
.cnt-skype .contents .curriculum dl {
  margin: 0;
  border: 1px solid #ddd;
  border-bottom: none;
}
#course-popup .contents .curriculum dl:last-child,
.cnt-skype .contents .curriculum dl:last-child {
  border-bottom: 1px solid #ddd;
}
#course-popup .contents .curriculum dl:last-child dt:before,
#course-popup .contents .curriculum dl:last-child dt:after,
.cnt-skype .contents .curriculum dl:last-child dt:before,
.cnt-skype .contents .curriculum dl:last-child dt:after {
  display: none;
}
@media screen and (min-width: 768px) {
  #course-popup .contents .curriculum dl,
  .cnt-skype .contents .curriculum dl {
    display: table;
    width: inherit;
  }
}
@media screen and (min-width: 768px) {
  #course-popup .contents .curriculum dt,
  #course-popup .contents .curriculum dd,
  .cnt-skype .contents .curriculum dt,
  .cnt-skype .contents .curriculum dd {
    display: table-cell;
    vertical-align: middle;
  }
}
@media all and (min-width: 960px) {
  #course-popup .contents .curriculum dt,
  #course-popup .contents .curriculum dd,
  .cnt-skype .contents .curriculum dt,
  .cnt-skype .contents .curriculum dd {
    padding: 20px;
  }
}
@media screen and (max-width: 959px) {
  #course-popup .contents .curriculum dt,
  #course-popup .contents .curriculum dd,
  .cnt-skype .contents .curriculum dt,
  .cnt-skype .contents .curriculum dd {
    padding: 15px;
  }
}
#course-popup .contents .curriculum dt,
.cnt-skype .contents .curriculum dt {
  position: relative;
  background: #fcf2f2;
  font-weight: 500;
}
#course-popup .contents .curriculum dt:before,
#course-popup .contents .curriculum dt:after,
.cnt-skype .contents .curriculum dt:before,
.cnt-skype .contents .curriculum dt:after {
  position: absolute;
  content: "";
  width: 30px;
  height: 15px;
  margin-left: -15px;
}
#course-popup .contents .curriculum dt:before,
.cnt-skype .contents .curriculum dt:before {
  left: 50%;
  bottom: -15px;
  border-top: 15px solid #ddd;
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
  z-index: 10;
}
#course-popup .contents .curriculum dt:after,
.cnt-skype .contents .curriculum dt:after {
  left: 50%;
  bottom: -13px;
  border-top: 15px solid #fcf2f2;
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
  z-index: 20;
}
#course-popup .contents .curriculum dt em,
#course-popup .contents .curriculum dt div,
.cnt-skype .contents .curriculum dt em,
.cnt-skype .contents .curriculum dt div {
  display: table-cell;
  vertical-align: middle;
}
#course-popup .contents .curriculum dt em,
.cnt-skype .contents .curriculum dt em {
  padding-left: 10px;
  line-height: 1.3;
}
#course-popup .contents .curriculum dt div,
.cnt-skype .contents .curriculum dt div {
  background: #c00;
  color: #fff;
  font-family: "Roboto Condensed", sans-serif;
  line-height: 1;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  text-align: center;
}
#course-popup .contents .curriculum dt div span,
.cnt-skype .contents .curriculum dt div span {
  display: block;
  font-size: 11px;
}
@media all and (min-width: 960px) {
  #course-popup .contents .curriculum dt,
  .cnt-skype .contents .curriculum dt {
    width: 320px;
    font-size: 18px;
  }
  #course-popup .contents .curriculum dt div,
  .cnt-skype .contents .curriculum dt div {
    width: 50px;
    height: 50px;
    font-size: 26px;
  }
  #course-popup .contents .curriculum dt div span,
  .cnt-skype .contents .curriculum dt div span {
    font-size: 11px;
  }
}
@media screen and (max-width: 959px) {
  #course-popup .contents .curriculum dt,
  .cnt-skype .contents .curriculum dt {
    width: 250px;
    font-size: 16px;
  }
  #course-popup .contents .curriculum dt div,
  .cnt-skype .contents .curriculum dt div {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }
  #course-popup .contents .curriculum dt div span,
  .cnt-skype .contents .curriculum dt div span {
    font-size: 10px;
  }
}
@media screen and (max-width: 767px) {
  #course-popup .contents .curriculum dt,
  .cnt-skype .contents .curriculum dt {
    width: auto;
  }
  #course-popup .contents .curriculum dt:before,
  #course-popup .contents .curriculum dt:after,
  .cnt-skype .contents .curriculum dt:before,
  .cnt-skype .contents .curriculum dt:after {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  #course-popup .contents .curriculum + .img-btm .img,
  .cnt-skype .contents .curriculum + .img-btm .img {
    width: calc(50% - 10px);
  }
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  #course-popup .contents .curriculum + .img-btm .fl,
  .cnt-skype .contents .curriculum + .img-btm .fl {
    float: left;
  }
  #course-popup .contents .curriculum + .img-btm .fr,
  .cnt-skype .contents .curriculum + .img-btm .fr {
    float: right;
  }
}
#course-popup .contents .video h4 {
  padding: 15px;
  background: #c00;
  color: #fff;
  text-align: center;
  font-weight: 500;
}
#course-popup .contents .video .inner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#course-popup .contents .video .inner iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  #course-popup .contents .video {
    width: calc(50% - 10px);
  }
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  #course-popup .contents .video.fl {
    float: left;
  }
  #course-popup .contents .video.fr {
    float: right;
  }
}
@media screen and (max-width: 767px) {
  #course-popup .contents .video:first-child {
    margin-bottom: 15px;
  }
}

/* hoge page
========================================================= */
/* hoge pagech
========================================================= */
/*  contact page
========================================================= */
#contact-page .contents .tel dt,
#contact-page .contents .tel dd {
  font-weight: 500;
  line-height: 1;
}
#contact-page .contents .tel dt {
  font-family: "Roboto Condensed", sans-serif;
}
#contact-page .contents .tel dd span {
  display: block;
  margin-top: 5px;
  font-size: 12px;
  font-weight: 500;
}
@media all and (min-width: 960px) {
  #contact-page .contents .tel {
    display: table;
    margin: 0;
  }
  #contact-page .contents .tel dt,
  #contact-page .contents .tel dd {
    display: table-cell;
    vertical-align: middle;
  }
  #contact-page .contents .tel dt {
    font-size: 60px;
  }
  #contact-page .contents .tel dd {
    padding-left: 15px;
    font-size: 20px;
  }
}
@media screen and (max-width: 959px) {
  #contact-page .contents .tel {
    display: table;
    margin: 0;
  }
  #contact-page .contents .tel dt,
  #contact-page .contents .tel dd {
    display: table-cell;
    vertical-align: middle;
  }
  #contact-page .contents .tel dt {
    font-size: 50px;
  }
  #contact-page .contents .tel dd {
    padding-left: 15px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  #contact-page .contents .tel {
    display: block;
  }
  #contact-page .contents .tel dt,
  #contact-page .contents .tel dd {
    display: block;
  }
  #contact-page .contents .tel dt {
    margin-bottom: 10px;
    font-size: 40px;
  }
  #contact-page .contents .tel dd {
    padding-left: 0px;
    font-size: 18px;
  }
}
#contact-page .contents form {
  width: 100%;
}
@media all and (min-width: 960px) {
  #contact-page .contents th {
    /*padding-top: 30px;*/
    width: 300px;
  }
}
#contact-page .contents th span {
  display: block;
  float: right;
  width: 35px;
  height: 18px;
  margin-top: 3px;
  background: #c00;
  color: #fff;
  font-size: 9px;
  text-align: center;
  line-height: 18px;
  text-indent: 0;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
#contact-page .contents h3 {
  margin-bottom: 15px;
}
#contact-page .contents td .info {
  display: block;
  font-size: 12px;
}
#contact-page .contents td table {
  width: auto;
  border: none;
}
#contact-page .contents td table th,
#contact-page .contents td table td {
  width: auto;
  padding: 0 0 10px;
  border: none;
  background: none;
  vertical-align: middle;
}
#contact-page .contents td table th {
  padding-right: 10px;
}
/*#contact-page .contents td#address {
  padding-bottom: 10px;
}*/
#contact-page .contents td#day input {
  width: 250px !important;
  margin-right: 10px;
}
#contact-page .contents td#day .custom {
  display: inline-block;
  vertical-align: bottom;
}
#contact-page .contents td input[type="text"],
#contact-page .contents td input[type="tel"],
#contact-page .contents td input[type="email"],
#contact-page .contents td textarea {
  -webkit-appearance: none;
  width: 100% !important;
  padding: 10px;
  border: solid 1px #ededed;
  background: #f8f8f8;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 100% !important;
}
@media screen and (max-width: 959px) {
  #contact-page .contents td input[type="text"],
  #contact-page .contents td input[type="tel"],
  #contact-page .contents td input[type="email"],
  #contact-page .contents td textarea {
    font-size: 16px;
  }
}
#contact-page .contents td #zip input {
  width: 150px !important;
  margin: 0 5px;
}
@media screen and (max-width: 959px) {
  #contact-page .contents td #zip input {
    width: 120px !important;
  }
}
#contact-page .contents td #zip input[type="button"] {
  width: auto;
  padding: 0 15px;
  border: solid 1px #ededed;
  background: #eee;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 100% !important;
  line-height: 45px;
}
@media screen and (max-width: 767px) {
  #contact-page .contents td #zip input[type="button"] {
    display: block;
    width: 100% !important;
    margin: 10px 0 0;
    line-height: 35px;
  }
}
#contact-page .contents td .custom {
  overflow: hidden;
  position: relative;
  width: 250px;
  border: 1px solid #ededed;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #f8f8f8;
  z-index: 10;
}
#contact-page .contents td .custom i {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 10px;
}
#contact-page .contents td select {
  box-sizing: border-box;
  /*display: block;*/
  display: inline-block;
  position: relative;
  /*width: 130%;*/
  height: 44px;
  padding: 11px 0 10px 15px;
  font-weight: 400;
  cursor: pointer;
  background: none;
  z-index: 15;
  vertical-align: middle;
  line-height: 24px;
  border: none;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
}
#contact-page .contents td input[type="radio"],
#contact-page .contents td input[type="checkbox"] {
  display: none;
}
#contact-page .contents td .radio,
#contact-page .contents td .checkbox {
  box-sizing: border-box;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  position: relative;
  display: block;
  padding: 15px 15px 15px 45px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  border: 1px solid #ededed;
  background-color: #f8f8f8;
  vertical-align: middle;
  cursor: pointer;
}
#contact-page .contents td .radio:hover:after,
#contact-page .contents td .checkbox:hover:after {
  border-color: #c00;
}
#contact-page .contents td .radio:before,
#contact-page .contents td .radio:after,
#contact-page .contents td .checkbox:before,
#contact-page .contents td .checkbox:after {
  display: block;
  position: absolute;
  top: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
}
#contact-page .contents td .radio:before,
#contact-page .contents td .checkbox:before {
  opacity: 0;
}
#contact-page .contents td .radio:after,
#contact-page .contents td .checkbox:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  left: 15px;
  margin-top: -10px;
  width: 20px;
  height: 20px;
  border: 2px solid #bbb;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
#contact-page .contents td input[type="checkbox"].req:checked + label:after,
#contact-page .contents td input[type="radio"]:checked + label:after {
  border-color: #c00;
}
#contact-page .contents td input[type="checkbox"].req:checked + label:before,
#contact-page .contents td input[type="radio"]:checked + label:before {
  opacity: 1;
}
#contact-page .contents td .radio:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  left: 21px;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border-radius: 50%;
  background-color: #c00;
}
#contact-page .contents td .radio:after {
  -webkit-border-radius: 100%;
  border-radius: 100%;
}
#contact-page .contents td .checkbox:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 21px;
  display: block;
  margin-top: -7px;
  width: 7px;
  height: 11px;
  border-right: 3px solid #c00;
  border-bottom: 3px solid #c00;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
@media all and (min-width: 960px) {
  #contact-page .contents td ol {
    margin-bottom: -10px;
    zoom: 1;
  }
  #contact-page .contents td ol:before,
  #contact-page .contents td ol:after {
    content: "";
    display: table;
    height: 0;
    visibility: hidden;
  }
  #contact-page .contents td ol:after {
    clear: both;
  }
}
#contact-page .contents td li {
  float: left;
  width: 50%;
  padding: 0 10px 10px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media screen and (max-width: 959px) {
  #contact-page .contents td li {
    width: 49%;
    margin: 0 1% 1px 0;
    box-sizing: border-box;
    font-size: 12px;
    padding: 0;
  }
  #contact-page .contents td li:last-child {
    padding-bottom: 0;
  }
}
#contact-page .contents td li input {
  margin-right: 5px;
  padding: 0;
  border: none;
  background: none;
}
#contact-page .contents #submit {
  padding-top: 50px;
  text-align: center;
}
#contact-page .contents #submit input {
  display: block;
  height: 60px;
  margin: 0 auto;
  padding: 0;
  border: none;
  background: #c00;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  cursor: pointer;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
}
#contact-page .contents #submit input:hover {
  opacity: 0.8;
}
@media all and (min-width: 960px) {
  #contact-page .contents #submit input {
    width: 350px;
  }
}
@media screen and (max-width: 959px) {
  #contact-page .contents #submit input {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  #contact-page .contents #submit input {
    width: 100%;
  }
}
#contact-page .contents .mfp_buttons {
  padding: 0;
  zoom: 1;
}
#contact-page .contents .mfp_buttons:before,
#contact-page .contents .mfp_buttons:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#contact-page .contents .mfp_buttons:after {
  clear: both;
}
#contact-page .contents .mfp_buttons button {
  width: 45%;
}
@media screen and (max-width: 767px) {
  #contact-page .contents .mfp_buttons button {
    width: 100%;
    margin-top: 30px;
  }
}
#contact-page .contents .mfp_buttons #mfp_button_send {
  float: right;
}
#contact-page .contents .mfp_buttons #mfp_button_cancel {
  float: left;
}
#contact-page .contents .privacy p,
#contact-page .contents .privacy dt,
#contact-page .contents .privacy dd,
#contact-page .contents .privacy li {
  font-size: 14px;
}
#contact-page .contents .privacy .inner {
  padding-right: 10px;
}
#contact-page .contents .privacy .scroll {
  height: 300px;
  overflow-y: scroll;
  overflow-x: hidden;
}
#contact-page .contents .privacy h4 {
  margin-top: 30px;
  font-weight: 500;
}
#contact-page .contents .privacy h4:first-child {
  margin-top: 0;
}
#contact-page .contents .privacy dt {
  margin-top: 15px;
}
#contact-page .contents .privacy dt:first-of-type {
  margin-top: 0;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.course-special img,
.slick-slide img {
  display: inline-block;
  margin-top: 20px;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
/*.slick-loading .slick-list {
  background: #fff url("/wp/wp-content/themes/mil_ver2/images/ajax-loader.gif") center center no-repeat;
}*/

/* Icons */
/*
@if $slick-font-family == "slick" {
 @font-face {
  font-family: "slick";
  src: slick-font-url("slick.eot");
  src: slick-font-url("slick.eot?#iefix") format("embedded-opentype"), slick-font-url("slick.woff") format("woff"), slick-font-url("slick.ttf") format("truetype"), slick-font-url("slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
 }
}
*/
/*!
*  - v1.3
* Homepage: http://bqworks.com/slider-pro/
* Author: bqworks
* Author URL: http://bqworks.com/
*/
/* Core
--------------------------------------------------*/
.slider-pro {
  position: relative;
  margin: 0 auto;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.sp-slides-container {
  position: relative;
}

.sp-mask {
  position: relative;
  overflow: hidden;
}

.sp-slides {
  position: relative;
  -webkit-backface-visibility: hidden;
  -webkit-perspective: 1000;
}

.sp-slide {
  position: absolute;
}

.sp-image-container {
  overflow: hidden;
}

.sp-image {
  position: relative;
  display: block;
  border: none;
}

.sp-no-js {
  overflow: hidden;
  max-width: 100%;
}

/* Thumbnails
--------------------------------------------------*/
.sp-thumbnails-container {
  position: relative;
  overflow: hidden;
  direction: ltr;
}

.sp-top-thumbnails,
.sp-bottom-thumbnails {
  left: 0;
  margin: 0 auto;
}

.sp-top-thumbnails {
  position: absolute;
  top: 0;
  margin-bottom: 4px;
}

.sp-bottom-thumbnails {
  margin-top: 4px;
}

.sp-left-thumbnails,
.sp-right-thumbnails {
  position: absolute;
  top: 0;
}

.sp-right-thumbnails {
  right: 0;
  margin-left: 4px;
}

.sp-left-thumbnails {
  left: 0;
  margin-right: 4px;
}

.sp-thumbnails {
  position: relative;
}

.sp-thumbnail {
  border: none;
}

.sp-thumbnail-container {
  position: relative;
  display: block;
  overflow: hidden;
  float: left;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.sp-rtl .sp-thumbnail-container {
  float: right;
}

/* Horizontal thumbnails
------------------------*/
.sp-top-thumbnails .sp-thumbnail-container,
.sp-bottom-thumbnails .sp-thumbnail-container {
  margin-left: 2px;
  margin-right: 2px;
}

.sp-top-thumbnails .sp-thumbnail-container:first-child,
.sp-bottom-thumbnails .sp-thumbnail-container:first-child {
  margin-left: 0;
}

.sp-top-thumbnails .sp-thumbnail-container:last-child,
.sp-bottom-thumbnails .sp-thumbnail-container:last-child {
  margin-right: 0;
}

/* Vertical thumbnails
----------------------*/
.sp-left-thumbnails .sp-thumbnail-container,
.sp-right-thumbnails .sp-thumbnail-container {
  margin-top: 2px;
  margin-bottom: 2px;
}

.sp-left-thumbnails .sp-thumbnail-container:first-child,
.sp-right-thumbnails .sp-thumbnail-container:first-child {
  margin-top: 0;
}

.sp-left-thumbnails .sp-thumbnail-container:last-child,
.sp-right-thumbnails .sp-thumbnail-container:last-child {
  margin-bottom: 0;
}

/* Right thumbnails with pointer
--------------------------------*/
.sp-right-thumbnails.sp-has-pointer {
  margin-left: -13px;
}

.sp-right-thumbnails.sp-has-pointer .sp-thumbnail {
  position: absolute;
  left: 18px;
  margin-left: 0 !important;
}

.sp-right-thumbnails.sp-has-pointer .sp-selected-thumbnail:before {
  content: "";
  position: absolute;
  height: 100%;
  border-left: 5px solid #f00;
  left: 0;
  top: 0;
  margin-left: 13px;
}

.sp-right-thumbnails.sp-has-pointer .sp-selected-thumbnail:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  left: 0;
  top: 50%;
  margin-top: -8px;
  border-right: 13px solid #f00;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
}

/* Left thumbnails with pointer
-------------------------------*/
.sp-left-thumbnails.sp-has-pointer {
  margin-right: -13px;
}

.sp-left-thumbnails.sp-has-pointer .sp-thumbnail {
  position: absolute;
  right: 18px;
}

.sp-left-thumbnails.sp-has-pointer .sp-selected-thumbnail:before {
  content: "";
  position: absolute;
  height: 100%;
  border-left: 5px solid #f00;
  right: 0;
  top: 0;
  margin-right: 13px;
}

.sp-left-thumbnails.sp-has-pointer .sp-selected-thumbnail:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  right: 0;
  top: 50%;
  margin-top: -8px;
  border-left: 13px solid #f00;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
}

/* Bottom thumbnails with pointer
---------------------------------*/
.sp-bottom-thumbnails.sp-has-pointer {
  margin-top: -13px;
}

.sp-bottom-thumbnails.sp-has-pointer .sp-thumbnail {
  position: absolute;
  top: 18px;
  margin-top: 0 !important;
}

.sp-bottom-thumbnails.sp-has-pointer .sp-selected-thumbnail:before {
  content: "";
  position: absolute;
  width: 100%;
  border-bottom: 5px solid #f00;
  top: 0;
  margin-top: 13px;
}

.sp-bottom-thumbnails.sp-has-pointer .sp-selected-thumbnail:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  left: 50%;
  top: 0;
  margin-left: -8px;
  border-bottom: 13px solid #f00;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
}

/* Top thumbnails with pointer
------------------------------*/
.sp-top-thumbnails.sp-has-pointer {
  margin-bottom: -13px;
}

.sp-top-thumbnails.sp-has-pointer .sp-thumbnail {
  position: absolute;
  bottom: 18px;
}

.sp-top-thumbnails.sp-has-pointer .sp-selected-thumbnail:before {
  content: "";
  position: absolute;
  width: 100%;
  border-bottom: 5px solid #f00;
  bottom: 0;
  margin-bottom: 13px;
}

.sp-top-thumbnails.sp-has-pointer .sp-selected-thumbnail:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  left: 50%;
  bottom: 0;
  margin-left: -8px;
  border-top: 13px solid #f00;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
}

/* Layers
--------------------------------------------------*/
.sp-layer {
  position: absolute;
  margin: 0;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-backface-visibility: hidden;
}

.sp-black {
  color: #fff;
  background: black;
  background: rgba(0, 0, 0, 0.7);
}

.sp-white {
  color: #000;
  background: white;
  background: rgba(255, 255, 255, 0.7);
}

.sp-rounded {
  border-radius: 10px;
}

.sp-padding {
  padding: 10px;
}

/* Touch Swipe
--------------------------------------------------*/
/*
.sp-grab {
	cursor: url(images/openhand.cur), move;
}

.sp-grabbing {
	cursor: url(images/closedhand.cur), move;
}

.sp-selectable {
	cursor: default;
}
*/
/* Caption
--------------------------------------------------*/
.sp-caption-container {
  text-align: center;
  margin-top: 10px;
}

/* Full Screen
--------------------------------------------------*/
.sp-full-screen {
  margin: 0 !important;
  background-color: #000;
}

.sp-full-screen-button {
  position: absolute;
  top: 5px;
  right: 10px;
  font-size: 30px;
  line-height: 1;
  cursor: pointer;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.sp-full-screen-button:before {
  content: "\2195";
}

.sp-fade-full-screen {
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

.slider-pro:hover .sp-fade-full-screen {
  opacity: 1;
}

/* Buttons
--------------------------------------------------*/
.sp-buttons {
  position: relative;
  width: 100%;
  text-align: center;
  padding-top: 10px;
}

.sp-rtl .sp-buttons {
  direction: rtl;
}

.sp-full-screen .sp-buttons {
  display: none;
}

.sp-button {
  width: 10px;
  height: 10px;
  border: 2px solid #000;
  border-radius: 50%;
  margin: 4px;
  display: inline-block;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
}

.sp-selected-button {
  background-color: #000;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sp-button {
    width: 14px;
    height: 14px;
  }
}
@media only screen and (min-width: 568px) and (max-width: 768px) {
  .sp-button {
    width: 16px;
    height: 16px;
  }
}
@media only screen and (min-width: 320px) and (max-width: 568px) {
  .sp-button {
    width: 18px;
    height: 18px;
  }
}
/* Arrows
--------------------------------------------------*/
.sp-fade-arrows {
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

.sp-slides-container:hover .sp-fade-arrows {
  opacity: 1;
}

.sp-arrow {
  position: absolute;
  top: 50%;
  margin-top: -40px;
  display: block;
  width: 80px;
  height: 80px;
  cursor: pointer;
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "fonts" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.sp-arrow:before {
  content: "\e900";
  position: absolute;
  top: 0;
  left: 0;
  border: 10px solid #f8f8f8;
  background: #f8f8f8;
  -webkit-border-radius: 100%;
  border-radius: 100%;
  color: #c00;
  font-size: 60px;
  line-height: 1;
}

.sp-next-arrow {
  right: 50%;
  margin-right: -380px;
}

.sp-previous-arrow {
  left: 50%;
  margin-left: -380px;
}

.sp-previous-arrow:before {
  transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}

/* Thumbnail Arrows
--------------------------------------------------*/
.sp-thumbnail-arrows {
  position: absolute;
}

.sp-fade-thumbnail-arrows {
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

.sp-thumbnails-container:hover .sp-fade-thumbnail-arrows {
  opacity: 1;
}

.sp-top-thumbnails .sp-thumbnail-arrows,
.sp-bottom-thumbnails .sp-thumbnail-arrows {
  width: 100%;
  top: 50%;
  left: 0;
  margin-top: -12px;
}

.sp-left-thumbnails .sp-thumbnail-arrows,
.sp-right-thumbnails .sp-thumbnail-arrows {
  height: 100%;
  top: 0;
  left: 50%;
  margin-left: -7px;
}

.sp-thumbnail-arrow {
  position: absolute;
  display: block;
  width: 15px;
  height: 25px;
  cursor: pointer;
}

.sp-left-thumbnails .sp-thumbnail-arrows .sp-thumbnail-arrow,
.sp-right-thumbnails .sp-thumbnail-arrows .sp-thumbnail-arrow {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.sp-top-thumbnails .sp-previous-thumbnail-arrow,
.sp-bottom-thumbnails .sp-previous-thumbnail-arrow {
  left: 0px;
}

.sp-top-thumbnails .sp-next-thumbnail-arrow,
.sp-bottom-thumbnails .sp-next-thumbnail-arrow {
  right: 0px;
}

.sp-left-thumbnails .sp-previous-thumbnail-arrow,
.sp-right-thumbnails .sp-previous-thumbnail-arrow {
  top: 0px;
}

.sp-left-thumbnails .sp-next-thumbnail-arrow,
.sp-right-thumbnails .sp-next-thumbnail-arrow {
  bottom: 0px;
}

.sp-previous-thumbnail-arrow:before,
.sp-previous-thumbnail-arrow:after,
.sp-next-thumbnail-arrow:before,
.sp-next-thumbnail-arrow:after {
  content: "";
  position: absolute;
  width: 50%;
  height: 50%;
  background-color: #fff;
}

.sp-previous-thumbnail-arrow:before {
  left: 30%;
  top: 0;
  -webkit-transform: skew(145deg, 0deg);
  -ms-transform: skew(145deg, 0deg);
  transform: skew(145deg, 0deg);
}

.sp-previous-thumbnail-arrow:after {
  left: 30%;
  top: 50%;
  -webkit-transform: skew(-145deg, 0deg);
  -ms-transform: skew(-145deg, 0deg);
  transform: skew(-145deg, 0deg);
}

.sp-next-thumbnail-arrow:before {
  right: 30%;
  top: 0;
  -webkit-transform: skew(35deg, 0deg);
  -ms-transform: skew(35deg, 0deg);
  transform: skew(35deg, 0deg);
}

.sp-next-thumbnail-arrow:after {
  right: 30%;
  top: 50%;
  -webkit-transform: skew(-35deg, 0deg);
  -ms-transform: skew(-35deg, 0deg);
  transform: skew(-35deg, 0deg);
}

.ie8 .sp-thumbnail-arrow,
.ie7 .sp-thumbnail-arrow {
  width: 0;
  height: 0;
}

.ie8 .sp-thumbnail-arrow:before,
.ie8 .sp-thumbnail-arrow:after,
.ie7 .sp-thumbnail-arrow:before,
.ie7 .sp-thumbnail-arrow:after {
  content: none;
}

.ie8 .sp-top-thumbnails .sp-previous-thumbnail-arrow,
.ie8 .sp-bottom-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-top-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-bottom-thumbnails .sp-previous-thumbnail-arrow {
  border-right: 12px solid #fff;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
}

.ie8 .sp-top-thumbnails .sp-next-thumbnail-arrow,
.ie8 .sp-bottom-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-top-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-bottom-thumbnails .sp-next-thumbnail-arrow {
  border-left: 12px solid #fff;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
}

.ie8 .sp-left-thumbnails .sp-previous-thumbnail-arrow,
.ie8 .sp-right-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-left-thumbnails .sp-previous-thumbnail-arrow,
.ie7 .sp-right-thumbnails .sp-previous-thumbnail-arrow {
  border-bottom: 12px solid #fff;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
}

.ie8 .sp-left-thumbnails .sp-next-thumbnail-arrow,
.ie8 .sp-right-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-left-thumbnails .sp-next-thumbnail-arrow,
.ie7 .sp-right-thumbnails .sp-next-thumbnail-arrow {
  border-top: 12px solid #fff;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
}

/* Video
--------------------------------------------------*/
a.sp-video {
  text-decoration: none;
}

a.sp-video img {
  -webkit-backface-visibility: hidden;
  border: none;
}

a.sp-video:after {
  content: "\25B6";
  position: absolute;
  width: 45px;
  padding-left: 5px;
  height: 50px;
  border: 2px solid #fff;
  text-align: center;
  font-size: 30px;
  border-radius: 30px;
  top: 0;
  color: #fff;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.2);
  margin: auto;
  line-height: 52px;
}

/* CSS for preventing styling issues in WordPress
--------------------------------------------------*/
.slider-pro img.sp-image,
.slider-pro img.sp-thumbnail {
  max-width: none;
  max-height: none;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  -webkit-box-shadow: none !important;
  -mox-box-shadow: none !important;
  box-shadow: none !important;
  transition: none;
  -moz-transition: none;
  -webkit-transition: none;
  -o-transition: none;
}

.slider-pro a {
  position: static;
  transition: none !important;
  -moz-transition: none !important;
  -webkit-transition: none !important;
  -o-transition: none !important;
}

.slider-pro iframe,
.slider-pro object,
.slider-pro video,
.slider-pro embed,
.slider-pro canvas {
  max-width: none;
  max-height: none;
}

.slider-pro p.sp-layer {
  font-size: 14px;
  line-height: 1.4;
  margin: 0;
}

.slider-pro h1.sp-layer {
  font-size: 32px;
  line-height: 1.4;
  margin: 0;
}

.slider-pro h2.sp-layer {
  font-size: 24px;
  line-height: 1.4;
  margin: 0;
}

.slider-pro h3.sp-layer {
  font-size: 19px;
  line-height: 1.4;
  margin: 0;
}

.slider-pro h4.sp-layer {
  font-size: 16px;
  line-height: 1.4;
  margin: 0;
}

.slider-pro h5.sp-layer {
  font-size: 13px;
  line-height: 1.4;
  margin: 0;
}

.slider-pro h6.sp-layer {
  font-size: 11px;
  line-height: 1.4;
  margin: 0;
}

.slider-pro img.sp-layer {
  border: none;
}

/* スクロールバー要素
----------------------------------------------------------- */
.jspContainer {
  overflow: hidden;
  position: relative;
}

.jspPane {
  position: absolute;
}

.jspVerticalBar {
  position: absolute;
  top: 0px;
  right: 0px;
  width: 5px;
  /* 縦スクロールバーの幅を指定 */
  height: 100%;
  background: #ffffff;
}

.jspHorizontalBar {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  height: 5px;
  /* 横スクロールバーの幅を指定 */
  background: #ffffff;
}

.jspCap {
  display: none;
}

.jspHorizontalBar .jspCap {
  float: left;
}

.jspTrack {
  background: #e5e5e5;
  /* スクロールバーの背景色を指定 */
  position: relative;
}

.jspDrag {
  background: #b5b5b5;
  /* スクロールバーの色を指定 */
  position: relative;
  top: 0px;
  left: 0px;
  cursor: pointer;
}

.jspHorizontalBar .jspTrack,
.jspHorizontalBar .jspDrag {
  float: left;
  height: 100%;
}

.jspArrow {
  background: #50506d;
  text-indent: -20000px;
  display: block;
  cursor: pointer;
  padding: 0px;
  margin: 0px;
}

.jspArrow.jspDisabled {
  cursor: default;
  background: #80808d;
}

.jspVerticalBar .jspArrow {
  height: 16px;
}

.jspHorizontalBar .jspArrow {
  width: 16px;
  float: left;
  height: 100%;
}

.jspVerticalBar .jspArrow:focus {
  outline: none;
}

.jspCorner {
  background: #eeeef4;
  float: left;
  height: 100%;
}

/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox,
#cboxOverlay,
#cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
}

#cboxWrapper {
  max-width: none;
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxMiddleLeft,
#cboxBottomLeft {
  clear: left;
}

#cboxContent {
  position: relative;
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#cboxTitle {
  margin: 0;
}

#cboxLoadingOverlay,
#cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#cboxPrevious,
#cboxNext,
#cboxClose,
#cboxSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}

#colorbox,
#cboxContent,
#cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

/*
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: #000;
  opacity: 0.9;
  filter: alpha(opacity=90);
}

#colorbox {
  outline: 0;
}

#cboxContent {
  margin-top: 20px;
  background: #000;
}

.cboxIframe {
  background: #fff;
}

#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

#cboxLoadedContent {
  background: #fff;
}

#cboxTitle {
  position: absolute;
  top: -20px;
  left: 0;
  color: #ccc;
}

#cboxCurrent {
  position: absolute;
  top: -20px;
  right: 0px;
  color: #ccc;
}

#cboxLoadingGraphic {
  background: url(../images/loading.gif) no-repeat center center;
}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious,
#cboxNext,
#cboxSlideshow,
#cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none;
}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active,
#cboxNext:active,
#cboxSlideshow:active,
#cboxClose:active {
  outline: 0;
}

#cboxSlideshow {
  position: absolute;
  top: -20px;
  right: 90px;
  color: #fff;
}

#cboxPrevious {
  position: absolute;
  top: 50%;
  left: 5px;
  margin-top: -32px;
  background: url(../images/controls.png) no-repeat top left;
  width: 28px;
  height: 65px;
  text-indent: -9999px;
}

#cboxPrevious:hover {
  background-position: bottom left;
}

#cboxNext {
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -32px;
  background: url(../images/controls.png) no-repeat top right;
  width: 28px;
  height: 65px;
  text-indent: -9999px;
}

#cboxNext:hover {
  background-position: bottom right;
}

#cboxClose {
  position: absolute;
  top: 0;
  right: 5px;
  display: block;
  background: url(../images/controls.png) no-repeat top center;
  width: 38px;
  height: 19px;
  text-indent: -9999px;
}

#cboxClose:hover {
  background-position: bottom center;
}

@media print {
  * html body {
    zoom: 0.7;
  }
}

/* 180116
--------------------------------------------------------------------------------------------------------------------------------*/
form select {
  /*selectの矢印を非表示に「Chrome/Safari/FireFox」*/
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
form select::-ms-expand {
  /*selectの矢印を非表示に「IE」*/
  display: none;
}
#ui-datepicker-div {
  z-index: 999 !important;
}
#terms-page ol.list02 {
  margin-left: 20px;
}
#terms-page ul.list li ol li,
#terms-page ul.list li + li,
#terms-page ol.list02 li {
  margin-top: 10px;
}
.contents h2 span strong {
  font-size: 20px;
}
#recruit-page table {
  margin-bottom: 1em;
}
.access_copy {
  font-size: 16px;
  margin-top: 10px;
}
.btn-results {
  padding-top: 0 !important;
  text-align: center;
}
.btn-results a {
  font-size: 14px;
  line-height: 30px;
  min-width: auto;
}
.rogiBox {
  margin-top: 30px;
}
.rogiBox .btn-link {
  padding-top: 0;
}
#course-popup .curriculum ul.list li {
  float: none;
  width: 100%;
  box-sizing: border-box;
}
#course-popup .curriculum ul.list.one li {
  float: none;
  width: 100%;
  box-sizing: border-box;
}
.certifiBox {
  padding: 20px;
  margin-right: 30px;
  width: 420px;
  background: #f9f9f9;
  float: left;
}
.certifiBox li {
  float: left;
  text-align: center;
}
.certifiBox li + li {
  margin-left: 20px;
}
.certifiBox li img {
  max-width: 180px;
}
.certifiBox li span {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}
.certifiBox li b {
  display: inline-block;
  margin-top: 5px;
}
#teacher_pop-page .header,
#teacher_pop-page .topic-path,
#teacher_pop-page .pagetitle,
#teacher_pop-page .pagetop,
#teacher_pop-page .footer {
  display: none;
}
#teacher_pop-page .floatL {
  float: left;
  margin-right: 20px;
}
#teacher_pop-page .floatR {
  float: right;
}
#teacher_pop-page .contents,
#teacher_pop-page #wrapper {
  padding-top: 0;
}
#teacher_pop-page #popup {
  width: 600px;
  margin: 0 auto;
  background-image: url(../../images/teacher/pop_bg01.jpg);
  background-position: 0 0;
  background-repeat: no-repeat;
}
#teacher_pop-page #popup .inner {
  padding-bottom: 50px;
  background-image: url(../../images/teacher/pop_bg02.jpg);
  background-position: left bottom;
  background-repeat: no-repeat;
}
#teacher_pop-page #popup .profile {
  width: 500px;
  margin: 32px 0 25px 32px;
}
#teacher_pop-page #popup .profile .img {
  width: 262px;
  float: left;
}
#teacher_pop-page #popup .profile .txt {
  width: 238px;
  float: left;
}
#teacher_pop-page #popup .profile .txt p {
  font-size: 20px;
  margin-top: 40px;
  margin-left: 6px;
  font-weight: bold;
}
#teacher_pop-page #popup .profile .txt dt {
  margin: 10px 0 10px;
}
#teacher_pop-page #popup .profile .txt dd {
  font-size: 14px;
  margin-left: 6px;
}
#teacher_pop-page #popup .mes01 {
  margin-left: 70px;
  width: 490px;
}
#teacher_pop-page #popup .mes01 dt {
  color: #ca0000;
  font-size: 14px;
}
#teacher_pop-page #popup .mes01 dd {
  margin-bottom: 20px;
  width: 460px;
}
#teacher_pop-page #popup .mes02 {
  margin-left: 32px;
  width: 500px;
}
#teacher_pop-page #popup .mes02 dl {
  float: left;
  width: 265px;
}
#teacher_pop-page #popup .mes02 dt {
  color: #ca0000;
  font-size: 14px;
}
#teacher_pop-page #popup .mes02 dd {
  margin-bottom: 20px;
}
#teacher_pop-page #popup .mes03 {
  margin-left: 70px;
  width: 490px;
}
#teacher_pop-page #popup .mes03 dl {
  float: left;
  width: 227px;
}
#teacher_pop-page #popup .mes03 dt {
  color: #ca0000;
  font-size: 14px;
}
#teacher_pop-page #popup .mes03 dd {
  margin-bottom: 20px;
}
#news-page .scroll dl {
  border-top: 1px dotted #ededed;
  border-bottom: 1px dotted #ededed;
  padding: 15px 0;
}
#news-page .scroll dl + dl {
  border-top: none;
  padding-top: 0;
}
#news-page .scroll dl dt {
  float: left;
}
#news-page .scroll dl dd {
  float: right;
  width: 920px;
}
#news-page .scroll dl dd a {
  text-decoration: none;
}
.store .pickup .item a {
  text-decoration: none;
}
.store .item a {
  display: block;
}
.restxt {
  margin-top: 30px;
  font-weight: bold;
  text-align: right;
}
#teacher-page .contents .teacher-list .item.anone .clear-fix,
#enteacher .teacherlist .item.anone .clear-fix {
  padding: 20px;
}
.foot-action .pagetop {
  bottom: 92px;
}
.foot-action .pagetop i {
  margin-right: 0;
}
.column_pager {
  text-align: center;
  clear: both;
  padding-top: 60px;
}
.column_pager ul {
}
.column_pager li {
  display: inline-block;
}
.column_pager li span,
.column_pager li a {
  display: block;
  padding: 15px;
  line-height: 1;
  box-sizing: border-box;
  border: 1px solid #efefef;
  text-decoration: none;
}
.column_pager li:hover span,
.column_pager li.current span,
.column_pager li:hover a,
.column_pager li.current a {
  background: #c00;
  color: #fff;
  border: 1px solid #c00;
}
.column_pager li + li {
  margin-left: 5px;
}

/* course color　※コース詳細ページ内もあわせて修正する
--------------------------------------------------------------------------*/
.c_basic h3 {
  /*6時間ベーシックSPEECHコース*/
  background: #c00 !important;
}
.c_basic dl dt {
  color: #c00 !important;
}
.c_basic ul.list li:before {
  background: #c00 !important;
}
.c_basic h4 span {
  color: #c00 !important;
}
.c_basic dl + .icon-arrow {
  color: #c00 !important;
}

.c_business h3 {
  /*ビジネスコース*/
  background: #19836c !important;
}
.c_business dl dt {
  color: #19836c !important;
}
.c_business ul.list li:before {
  background: #19836c !important;
}
.c_business h4 span {
  color: #19836c !important;
}
.c_basic dl + .icon-arrow {
  color: #0099cc !important;
}

.c_ex h3 {
  /*エグゼクティブ・スピーチコース*/
  background: #009933 !important;
}
.c_ex dl dt {
  color: #009933 !important;
}
.c_ex ul.list li:before {
  background: #009933 !important;
}
.c_ex h4 span {
  color: #009933 !important;
}
.c_ex dl + .icon-arrow {
  color: #009933 !important;
}

.c_customize h3 {
  /*カスタマイズコース*/
  background: #20b2aa !important;
}
/*.c_customize dl dt { color: #20B2AA !important; }*/
/*.c_customize ul.list li:before { background: #20B2AA !important; }*/
.c_customize h4 span {
  color: #20b2aa !important;
}
/*.c_customize dl + .icon-arrow { color: #20B2AA !important; }*/

.c_child h3 {
  /*こどもコミュニケーション*/
  background: #ffcc00 !important;
}
.c_child dl dt {
  color: #ffcc00 !important;
}
.c_child ul.list li:before {
  background: #ffcc00 !important;
}
.c_child h4 span {
  color: #ffcc00 !important;
}
.c_child dl + .icon-arrow {
  color: #ffcc00 !important;
}

.c_marriage h3 {
  /*結婚式スピーチコース*/
  background: #ff6699 !important;
}
.c_marriage dl dt {
  color: #ff6699 !important;
}
.c_marriage ul.list li:before {
  background: #ff6699 !important;
}
.c_marriage h4 span {
  color: #ff6699 !important;
}
.c_marriage dl + .icon-arrow {
  color: #ff6699 !important;
}

.c_sunday h3 {
  /*SUNDAYビギナーズ*/
  background: #663399 !important;
}
.c_sunday dl dt {
  color: #663399 !important;
}
.c_sunday ul.list li:before {
  background: #663399 !important;
}
.c_sunday h4 span {
  color: #663399 !important;
}
.c_sunday dl + .icon-arrow {
  color: #663399 !important;
}

.c_sman h3 {
  /*スピーチマンツーマン*/
  background: #4682b4 !important;
}
.c_sman dl dt {
  color: #4682b4 !important;
}
.c_sman ul.list li:before {
  background: #4682b4 !important;
}
.c_sman h4 span {
  color: #4682b4 !important;
}
.c_sman dl + .icon-arrow {
  color: #4682b4 !important;
}

.c_technical h3 {
  /*テクニカルスピーチ*/
  background: #3cb371 !important;
}
.c_technical dl dt {
  color: #3cb371 !important;
}
.c_technical ul.list li:before {
  background: #3cb371 !important;
}
.c_technical h4 span {
  color: #3cb371 !important;
}
.c_technical dl + .icon-arrow {
  color: #3cb371 !important;
}

.c_mind h3 {
  /*マインド*/
  /*background: #E9967A !important;*/
}
.c_mind dl dt {
  color: #e9967a !important;
}
.c_mind ul.list li:before {
  background: #e9967a !important;
}
.c_mind h4 span {
  color: #e9967a !important;
}
/*.c_mind dl + .icon-arrow { color: #E9967A !important; }*/

.c_com h3 {
  /*コミュニケーション*/
  background: #008080 !important;
}
.c_com dl dt {
  color: #008080 !important;
}
/*.c_com ul.list li:before { background: #008080 !important; }*/
.c_com h4 span {
  color: #008080 !important;
}
/*.c_com dl + .icon-arrow { color: #008080 !important; }*/

.c_talk h3 {
  /*ビジネス・商談ん*/
  background: #ff6347 !important;
}
.c_talk dl dt {
  color: #ff6347 !important;
}
.c_talk ul.list li:before {
  background: #ff6347 !important;
}
.c_talk h4 span {
  color: #ff6347 !important;
}
.c_talk dl + .icon-arrow {
  color: #ff6347 !important;
}

.c_talk_b h3 {
  /*話し方美女*/
  background: #a25a67 !important;
}
.c_talk_b dl dt {
  color: #a25a67 !important;
}
.c_talk_b ul.list li:before {
  background: #a25a67 !important;
}
.c_talk_b h4 span {
  color: #a25a67 !important;
}
.c_talk_b dl + .icon-arrow {
  color: #a25a67 !important;
}

.c_english h3 {
  /*英語プレゼン*/
  background: #ff99cc !important;
}
.c_english dl dt {
  color: #ff99cc !important;
}
.c_english ul.list li:before {
  background: #ff99cc !important;
}
.c_english h4 span {
  color: #ff99cc !important;
}
.c_english dl + .icon-arrow {
  color: #ff99cc !important;
}

.c_conversation h3 {
  /*「会話」マンツーマンレッスン*/
  background: #2e8b57 !important;
}
.c_conversation dl dt {
  color: #2e8b57 !important;
}
.c_conversation ul.list li:before {
  background: #2e8b57 !important;
}
.c_conversation h4 span {
  color: #2e8b57 !important;
}
.c_conversation dl + .icon-arrow {
  color: #2e8b57 !important;
}

.c_speech h3 {
  /*「スピーチ」マンツーマンレッスン*/
  background: #ff9900 !important;
}
.c_speech dl dt {
  color: #ff9900 !important;
}
.c_speech ul.list li:before {
  background: #ff9900 !important;
}
.c_speech h4 span {
  color: #ff9900 !important;
}
.c_speech dl + .icon-arrow {
  color: #ff9900 !important;
}

.c_beauty h3 {
  /*美女講座*/
  background: #b22222 !important;
}
.c_beauty dl dt {
  color: #b22222 !important;
}
.c_beauty ul.list li:before {
  background: #b22222 !important;
}
.c_beauty h4 span {
  color: #b22222 !important;
}
.c_beauty dl + .icon-arrow {
  color: #b22222 !important;
}

.c_groupset h3 {
  /*マンツーマン＆グループレッスンセット*/
  background: #006600 !important;
}
.c_groupset dl dt {
  color: #006600 !important;
}
.c_groupset ul.list li:before {
  background: #006600 !important;
}
.c_groupset h4 span {
  color: #006600 !important;
}
.c_groupset dl + .icon-arrow {
  color: #006600 !important;
}

.c_announcer h3 {
  /*アナウンススクール*/
  background: #191970 !important;
}
.c_announcer dl dt {
  color: #191970 !important;
}
.c_announcer ul.list li:before {
  background: #191970 !important;
}
.c_announcer h4 span {
  color: #191970 !important;
}
.c_announcer dl + .icon-arrow {
  color: #191970 !important;
}

.c_interview h3 {
  /*就活コース（入試面接コース）*/
  background: #3366cc !important;
}
.c_interview dl dt {
  color: #3366cc !important;
}
.c_interview ul.list li:before {
  background: #3366cc !important;
}
.c_interview h4 span {
  color: #3366cc !important;
}
.c_interview dl + .icon-arrow {
  color: #3366cc !important;
}

.c_elp h3 {
  /*eラーニング*/
  background: #9999ff !important;
}
.c_elp dl dt {
  color: #9999ff !important;
}
.c_elp ul.list li:before {
  background: #9999ff !important;
}
.c_elp h4 span {
  color: #9999ff !important;
}
.c_elp dl + .icon-arrow {
  color: #9999ff !important;
}

.c_skype h3 {
  /*Skypeレッスン*/
  background: #01a0da !important;
}
.c_skype dl dt {
  color: #01a0da !important;
}
.c_skype ul.list li:before {
  background: #01a0da !important;
}
.c_skype h4 span {
  color: #01a0da !important;
}
.c_skype dl + .icon-arrow {
  color: #01a0da !important;
}

.info .news dd a {
  text-decoration: none !important;
}
.info .news dd a:hover {
  text-decoration: none;
  color: #c00;
}

.courseTab .mblank a::after {
  display: none;
}
body#results-page .item a {
  display: block;
}
a.a_color,
body#results-page .item a,
body#course-page .hgroup table td a,
body#news-page .article dd a,
body#recruit-page .article a,
body#company-page table td a {
  color: #000;
  text-decoration: none !important;
}

a.a_color:hover,
body#home-page .store .item a:hover dt,
body#home-page .store .item a:hover dd,
body#results-page .item a:hover,
body#course-page .hgroup table td a:hover,
body#news-page .article dd a:hover,
body#recruit-page .article a:hover,
body#company-page table td a:hover {
  color: #c00;
  text-decoration: none !important;
}

.ml_ttl {
  margin-top: 30px;
  padding: 15px;
  background: rgba(204, 0, 0, 0.05);
  font-weight: 700;
  line-height: 1;
  text-align: left;
  margin-bottom: 1em;
}

/* 英語コースCSS
--------------------------------------------------------------------------*/
.english-training {
  font-size: 20px;
}
.english-training a {
  text-decoration: none;
}
.english-training div {
  margin-bottom: 18px;
  line-height: 1.4;
}
.english-training span {
  font-size: 16px;
  padding: 2px 10px 3px;
  color: #fff;
}
.english-training .first-step span {
  background: #e06666;
}
.english-training .second-step span {
  background: #db4c4c;
}
.english-training .third-step span {
  background: #cc0000;
}
.english-training .special span {
  background: #123194;
}
.diffTable th.en {
  color: #fff;
  background: #cc0000;
}
.diffTable td.en {
  background: #fef5f5;
}
.diffTable td {
  vertical-align: top;
}

/* スピーチマンツーマンコース追加
--------------------------------------------------------------------------*/
.scene-list .item {
  float: left;
  width: 25%;
  padding: 20px 5px 0;
  box-sizing: border-box;
}
.scene-list .item dl {
  margin: 0;
  padding: 10px;
  border-top: 3px solid #cc0000;
  background: #f2f2f2;
}
.scene-list .item dl {
  margin: 0;
  padding: 10px;
  border-top: 3px solid #cc0000;
  background: #f2f2f2;
}
.scene-list .item dt {
  margin: 0 0 10px;
  font-weight: 500;
}
.scene-list .item dd {
  color: #666;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .scene-list .item {
    width: 50%;
  }
  .scene-list .item img {
    width: 100%;
  }
  .scene-list .item dt {
    font-size: 12px;
    letter-spacing: 0;
  }
  .scene-list .item dd {
    display: none;
  }
}
/* teacher detail　※SP用CSSではありません
----------------*/
@media all and (min-width: 0px) and (max-width: 450px) {
  #teacher_pop-page .floatL,
  #teacher_pop-page .floatR {
    float: none;
    text-align: center;
    margin: 0 0 20px 0;
  }
  #teacher_pop-page #popup {
    width: 100%;
    background-size: 100%;
  }
  #teacher_pop-page #popup .inner {
    width: 100%;
    background: url(../../images/teacher/pop_bg02_sp.jpg) no-repeat 0 bottom;
    background-size: 100%;
    padding-bottom: 0;
    position: relative;
  }
  #teacher_pop-page #popup .inner:after {
    display: block;
    height: 50px;
    width: 100%;
    background: url(../../images/teacher/pop_bg03_sp.jpg) no-repeat 0 bottom;
  }
  #teacher_pop-page #popup .profile {
    width: 100%;
    padding: 5%;
    background: url(../../images/teacher/pop_bg01.jpg) no-repeat 0 0;
    margin: 0;
    background-size: 100%;
    box-sizing: border-box;
  }
  #teacher_pop-page #popup .profile .img {
    width: 100%;
    float: none;
  }
  #teacher_pop-page #popup .profile .txt {
    width: 95%;
    padding-left: 5%;
    float: none;
  }
  #teacher_pop-page #popup .profile .txt p {
    margin-top: 10px;
  }
  #teacher_pop-page #popup .mes03,
  #teacher_pop-page #popup .mes01 {
    width: 78%;
    margin: 0 12%;
    box-sizing: border-box;
  }
  #teacher_pop-page #popup .mes02 {
    width: 83.5%;
    margin: 0 12% 0 4.5%;
    box-sizing: border-box;
  }
  #teacher_pop-page #popup .mes02 dl {
    margin-left: 7.5%;
    width: 92.5%;
    float: none;
  }
  #teacher_pop-page #popup .mes02 .floatL {
    text-align: left;
  }
  #teacher_pop-page #popup .mes01 dd {
    width: 100%;
  }
  /*△teacher detail ※SP用CSSではありません----------------------------------------------------------------------------*/
}

/* 受講の流れ
--------------------------------------------------------------------------*/
#flow-page .contents .flow .flow-list {
  zoom: 1;
}
#flow-page .contents .flow .flow-list:before,
#flow-page .contents .flow .flow-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
#flow-page .contents .flow .flow-list:after {
  clear: both;
}
#flow-page .contents .flow .item {
  float: left;
  position: relative;
}
#flow-page .contents .flow .item .icon-arrow {
  display: block;
  position: absolute;
  top: 50%;
  color: #c00;
  font-size: 30px;
}
@media all and (min-width: 960px) {
  #flow-page .contents .flow .item {
    width: 100%;
    margin-bottom: 40px;
  }
  #flow-page .contents .flow .item:nth-child(5) {
    margin-bottom: 0;
  }
  /*  #flow-page .contents .flow .item .icon-arrow {
    right: 8px;
    margin-top: -15px;
    font-size: 30px;
  }*/
  #flow-page .contents .flow .item .icon-arrow {
    bottom: -34px;
    left: 50%;
    top: auto;
    right: auto;
    margin-left: -15px;
    font-size: 30px;
    transform: rotate(90deg);
  }
  #flow-page .contents .flow .box-shadow {
    padding: 20px 0;
  }
  #flow-page .contents .flow .item .img {
    float: right;
    margin: 0 20px;
  }
}
@media screen and (max-width: 959px) {
  #flow-page .contents .flow .item {
    width: 100%;
    margin-bottom: 20px;
    padding-right: 30px;
  }
  #flow-page .contents .flow .item:nth-child(5) {
    margin-bottom: 0;
  }
  #flow-page .contents .flow .item .icon-arrow {
    right: 4px;
    margin-top: -12px;
    font-size: 24px;
  }
  #flow-page .contents .flow .box-shadow {
    padding: 15px 0;
  }
  #flow-page .contents .flow .img {
    margin: 0 15px;
  }
}
@media screen and (max-width: 767px) {
  #flow-page .contents .flow .item {
    margin-bottom: 15px;
    padding-right: 0;
  }
  #flow-page .contents .flow .item:nth-child(5) {
    margin-bottom: 0;
  }
  #flow-page .contents .flow .item .icon-arrow {
    /*right: 0;
    margin-top: -10px;
    font-size: 20px;*/
    position: static;
    text-align: center;
    margin-top: 10px;
  }
  #flow-page .contents .flow .item .box-shadow + .icon-arrow:before {
    display: inline-block;
    transform: rotate(90deg);
  }
  #flow-page .contents .flow .box-shadow {
    padding: 10px 0;
  }
  #flow-page .contents .flow .img {
    margin: 20px 10px 0 10px;
  }
}
#flow-page .contents .flow .txt {
  position: relative;
  text-align: center;
}
#flow-page .contents .flow .txt i {
  position: relative;
  display: block;
  background: #c00;
  color: #fff;
  font-weight: 700;
  font-family: "Roboto Condensed", sans-serif;
  line-height: 1;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
#flow-page .contents .flow .txt i span {
  display: block;
  font-size: 10px;
}
#flow-page .contents .flow .txt dl {
  width: 100%;
}
#flow-page .contents .flow .txt dt {
  display: table;
  width: 100%;
  margin-bottom: 10px;
  padding-top: 7px;
  padding-bottom: 15px;
  border-bottom: 1px solid #ededed;
  color: #c00;
  font-weight: 500;
  line-height: 1.3;
}
#flow-page .contents .flow .txt dt small {
  font-size: 18px;
}
#flow-page .contents .flow .txt dd {
  text-align: left;
}
#flow-page .contents .flow .txt dd small {
  font-size: 13px;
}
#flow-page .contents .flow .txt dd.link-txt {
  font-size: 16px;
}
#flow-page .contents .flow .txt dd.btn-link {
  padding-top: 15px;
}
#flow-page .contents .flow .txt dd.btn-link a {
  text-align: center;
}
#flow-page .contents .flow .txt dd.btn-link .icon-arrow {
  transform: none;
  background: none;
  position: static;
  font-size: 14px;
  color: #fff;
  display: inline-block;
  width: auto;
  height: auto;
  margin-right: 3px;
}

@media all and (min-width: 960px) {
  #flow-page .contents .flow .txt {
    padding: 0 20px 0;
  }
  #flow-page .contents .flow .item .txt {
    overflow: hidden;
    position: relative;
    float: left;
    width: 560px;
  }
  #flow-page .contents .flow .item .txt i {
    width: 50px;
    height: 50px;
    padding-top: 6px;
    font-size: 30px;
    position: absolute;
    margin: 0 auto 10px;
  }
  #flow-page .contents .flow .txt dl {
    width: 100%;
    float: left;
  }
  #flow-page .contents .flow .item .txt dt {
    font-size: 28px;
    text-align: left;
    padding-left: 70px;
  }
  /*#flow-page .contents .flow .item.step4Box .txt {
        float: none;
        width: auto;
    }*/
}
@media screen and (max-width: 959px) {
  #flow-page .contents .flow .txt {
    padding: 0 15px 0;
  }
  #flow-page .contents .flow .txt i {
    width: 40px;
    height: 40px;
    margin: 0 auto 10px;
    padding-top: 5px;
    font-size: 22px;
  }
  #flow-page .contents .flow .txt dl {
    width: 100%;
  }
  #flow-page .contents .flow .txt dt {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  #flow-page .contents .flow .txt {
    padding: 0 10px 0;
  }
  #flow-page .contents .flow .txt dt {
    font-size: 16px;
  }
  #flow-page .contents .flow .item .moive-list-feature ul li,
  #flow-page .contents .flow .item .moive-list-curriculum ul > li li {
    width: 100% !important;
  }

  /*〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓*/
  .step4Box .movie iframe {
    height: auto;
    width: 100%;
  }
  .step4Box .movie .fl + .fr {
    margin-top: 20px;
  }
  .step4Box {
  }
  .step4Box {
  }
  .step4Box {
  }
  .step4Box {
  }
  /*〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓*/
}
#flow-page .contents .flow .item:nth-of-type(4) .txt dl {
  float: none;
}
#flow-page .contents .flow .item .moive-list-feature {
  margin: 40px 0;
}
#flow-page .contents .flow .item .moive-list-feature,
#flow-page .contents .flow .item .moive-list-curriculum {
  background: #f5f5f5;
  padding: 20px 0 15px;
  border-radius: 3px;
}
#flow-page .contents .flow .item .moive-list-feature .ttl,
#flow-page .contents .flow .item .moive-list-curriculum .ttl {
  color: #c00;
  font-size: 20px;
  margin-bottom: 10px;
}
#flow-page .contents .flow .item .moive-list-feature ul {
  margin-top: 15px;
}
#flow-page .contents .flow .item .moive-list-feature ul li,
#flow-page .contents .flow .item .moive-list-curriculum ul > li li {
  float: left;
  width: 50%;
  padding: 5px 20px 5px 40px;
  text-align: left;
  font-size: 14px;
  position: relative;
}
#flow-page .contents .flow .item .moive-list-feature ul li:before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background: #c00;
  display: block;
  position: absolute;
  top: 13px;
  left: 20px;
}
#flow-page .contents .flow .item .moive-list-curriculum {
  margin-top: 40px;
}
#flow-page .contents .flow .item .moive-list-curriculum ul > li {
  font-weight: bold;
  text-align: left;
  margin: 0 20px;
}
#flow-page .contents .flow .item .moive-list-curriculum ul > li + li {
  margin-top: 15px;
  border-top: 1px dotted #aaa;
  padding-top: 20px;
  margin-top: 20px;
}
#flow-page .contents .flow .item .moive-list-curriculum ol {
  margin-top: 10px;
}
#flow-page .contents .flow .item .moive-list-curriculum ul > li li {
  width: 33.3%;
  list-style: decimal inside;
  text-indent: -1em;
  padding: 0 15px;
  margin: 2px 0;
  font-size: 12px;
  letter-spacing: 0;
}
.course_textList {
  text-align: center;
}
.course_textList li {
  display: inline-block;
  width: 20%;
}
.course_textList li img {
  max-width: 100%;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.course_textList li + li {
  margin-left: 10px;
}
.cnt-basic .course_textList li + li {
  margin-left: 36px;
}
.article.school h4 {
  margin-bottom: 10px;
  color: #c00;
  font-weight: 700;
  line-height: 1;
}
.article.school table + h4 {
  margin-top: 30px;
}

/* コース色統一
--------------------------------------------------------------------------*/
.c_talk_b h3,
.c_talk_b ul.list li:before,
.c_mind h3,
.c_mind ul.list li:before,
.contents .box-course.green h3,
.contents .box-course.green .list li:before,
#course-page .contents .tab-cnt .course-select .talk .box-course h3,
#course-page .contents .tab-cnt .course-select .talk .box-course .txt li:before,
#course-page .contents .tab-cnt .course-type .talk .box-course h3,
#course-page .contents .tab-cnt .course-type .talk .box-course .txt li:before {
  background: #c00 !important;
}
.c_talk_b dl dt,
.c_mind dl dt,
.contents .box-course.green dt,
#course-page .contents .tab-cnt .course-select .talk .box-course .txt dt,
#course-page .contents .tab-cnt .course-type .talk .box-course .txt dt {
  color: #c00 !important;
}
#course-page .contents .tab-cnt .course-type .talk h2 {
  color: #c00 !important;
  border: 3px solid #c00;
}
#course-page .contents .tab-cnt .course-type .talk h2:before {
  border-top-color: #c00 !important;
}

.c_mind ul.list li:before,
ul.list li:before,
.c_business ul.list li:before,
.c_talk h3,
.c_talk ul.list li:before,
.c_ex ul.list li:before,
.c_ex h3,
.c_technical ul.list li:before,
.c_technical h3,
#course-page .contents .tab-cnt .course-basic.c_com .curriculum dt,
#course-page .contents .tab-cnt .course-basic.c_com .point li span,
#course-page .contents .tab-cnt .course-basic.c_com h3,
#course-page .contents .tab-cnt .course-select .speech .box-course h3,
#course-page
  .contents
  .tab-cnt
  .course-select
  .speech
  .box-course
  .txt
  li:before,
#course-page .contents .tab-cnt .course-type .speech .box-course h3,
#course-page
  .contents
  .tab-cnt
  .course-type
  .speech
  .box-course
  .txt
  li:before {
  background: #19375a !important;
}
.c_customize dl dt,
.c_mind dl dt,
.cnt-basic .contents .course .course-high h3,
.c_com dl dt,
.c_business dl dt,
.c_talk dl dt,
.c_ex dl dt,
.c_technical dl dt,
#course-page .contents .tab-cnt .course-basic.c_com .curriculum dd li i,
#course-page .contents .tab-cnt .course-select .speech .box-course .txt dt,
#course-page .contents .tab-cnt .course-type .speech .box-course .txt dt {
  color: #19375a !important;
}
#course-page .contents .tab-cnt .course-type .speech h2 {
  color: #19375a !important;
  border: 3px solid #19375a;
}
#course-page .contents .tab-cnt .course-type .speech h2:before {
  border-top-color: #19375a !important;
}
#course-page .contents .tab-cnt .course-basic .point li {
  border-bottom: 1px dotted #19375a;
}
#course-page .contents .tab-cnt .course-basic.c_com .curriculum dd {
  border: 2px solid #19375a !important;
}
.skypelist li {
  width: 260px;
}
.pc-hide_inline,
.pc-hide {
  display: none;
}

/* bxslider
--------------------------------------------------------------------------*/
.bxslider li,
.bxslider2 li {
  width: 650px;
}
.bxslider li video + a {
  display: none;
}

.contact_mail {
  display: inline-block;
  margin-left: 60px;
}
.goldenBox {
  background: rgba(0, 0, 0, 0.85) !important;
}
.goldenBox h3 {
  border-bottom: 1px dotted #999 !important;
}
.goldenBox ul li i,
.goldenBox ul,
.goldenBox h3 span,
.goldenBox h3 {
  color: #c69a00 !important;
}
.goldenBox .btn-link a {
  background: #c69a00;
}
.list.list2 li {
  float: left;
  width: 50%;
}
.specialcontents .article {
  padding: 25px 0 !important;
}
.specialcontents .imgL.img {
  width: auto !important;
  float: left;
}
.specialcontents .scright {
  width: 630px;
  float: right;
}

a.popupsp {
  text-decoration: none;
  display: block;
}
.special-list .box-shadow {
  padding-bottom: 0 !important;
}
.contents.spteacher {
  padding-top: 0;
}
.spteacher h1 {
  background: #c00;
  color: #fff;
  font-weight: 500;
  text-align: center;
  line-height: 1;
  margin-bottom: 60px;
  padding: 30px 0;
  font-size: 38px;
}
.spteacher h1 span {
  margin-top: 10px;
  font-size: 12px;
  display: block;
  font-family: "Roboto Condensed", sans-serif;
}
.spteacher .intro {
  text-align: center;
  width: auto;
  margin: 0 50px;
}
.spteacher .article {
  margin: 0 50px;
  width: auto;
}
.special-list .more_sp {
  position: relative;
  display: block;
  margin: 15px -20px 0 -20px;
  padding: 15px 0;
  background: #bbb;
  color: #fff;
  font-weight: 500;
  text-align: center;
  line-height: 1;
  font-size: 14px;
}
.special-list .more_sp i {
  margin-right: 5px;
}
table.englishtable th {
  background: #fcf2f2 !important;
}

.annlist {
  text-align: center;
}
.annlist li {
  width: 204px;
  display: inline-block;
}
.annlist li a {
  text-decoration: none;
  display: block;
  padding: 15px 0;
  text-align: center;
  color: #fff;
  border-radius: 5px;
  background: #c00;
  font-weight: 700;
}
.annlist li + li {
  margin-left: 20px;
}
.annlist li i {
  margin-right: 5px;
  font-size: 14px;
}

/* ▽SP
----------------------------------------------------------------------------------------------------------------------------------------------------*/
@media all and (min-width: 0px) and (max-width: 768px) {
  .sp-hide {
    display: none !important;
  }
  .pc-hide {
    display: block !important;
  }
  .pc-hide_inline {
    /*footer用*/
    display: inline-block !important;
    padding: 0 !important;
  }
  .pt0_sp {
    padding-top: 0px !important;
  }
  .pb20_sp {
    padding-bottom: 20px !important;
  }

  #home-page .contents .philosophy p {
    font-size: 12px;
  }
  #home-page .contents .store .book .item dt {
    display: block;
    width: 100%;
  }
  #news-page .scroll dl dt {
    float: none;
  }
  #news-page .scroll dl dd {
    float: none;
    width: 100%;
  }
  .slick-slide img {
    margin-top: 0;
  }
  #teacher-page .contents .teacher-list .item dl dt,
  #enteacher .teacherlist .item dl dt {
    width: auto;
    display: block;
  }
  .column_pager {
    padding-top: 40px;
  }
  .column_pager li a {
    padding: 8px;
  }
  .column_pager li + li {
    margin-left: 2px;
  }
  #teacher-page .contents .teacher-list .item.anone .clear-fix,
  #enteacher .teacherlist .item.anone .clear-fix {
    padding: 0;
  }
  .certifiBox {
    width: 100%;
    float: none;
  }
  .certifiBox li {
    width: 48%;
  }
  .certifiBox li img {
    max-width: 100% !important;
  }
  .certifiBox li + li {
    margin-left: 0;
    float: right;
  }
  .pop_youtube iframe {
    width: 100% !important;
  }
  .c_Box {
    height: auto !important;
  }
  #course-page .tab-body {
    width: 100%;
    border-bottom: 3px solid #c00;
    margin-bottom: 40px;
  }
  .basicBtn a {
    padding: 25px 0;
  }
  .ml_ttl {
    text-align: center;
    font-size: 12px;
    margin-top: 20px;
    padding: 10px;
  }
  .english-training {
    font-size: 16px;
  }
  .english-training span {
    display: block;
    padding: 3px;
    margin-bottom: 5px;
  }
  #course-popup .curriculum ul.list li {
    float: none;
    width: 100%;
    box-sizing: border-box;
  }
  .listnum4 {
    height: auto !important;
  }
  #home-page .contents .philosophy .cnt-inner {
    padding: 30px;
  }
  #graph #graph-before .ttl-graph,
  #graph #graph-after .ttl-graph {
    font-size: 16px;
  }
  #graph #doughnut-right .ttl-graph span {
    font-size: 30px;
  }
  #graph #doughnut-right .ttl-graph span small {
    font-size: 14px;
  }
  #home-page .contents .course .popular .popular-photo {
    width: 100% !important;
    margin: 0 !important;
    float: none;
    transform: none;
    padding-bottom: 0;
  }
  #home-page .contents .course .popular .popular-sec {
    margin: 0;
    width: 100%;
    float: none;
    transform: none !important;
  }
  #home-page .contents .course .popular .popular-sec .btn-link a {
    padding: 15px 0;
    text-align: center;
  }
  #home-page .contents .course .popular .popular-sec .btn-link {
    margin-top: 15px;
  }
  #home-page .contents .course .popular .popular-sec .point li {
    margin-bottom: 0;
    font-size: 12px;
  }
  #home-page .contents .course .popular .popular-sec .point li b {
    font-weight: normal;
  }
  #home-page .contents .course .popular .popular-sec .point li i {
    float: left;
  }
  #home-page .contents .course .popular .popular-sec .point li + li {
    margin-top: 5px;
  }
  .course_textList li {
    width: 30%;
  }
  .course_textList li + li {
    margin-left: 0 !important;
    margin-top: 10px;
  }
  .course_textList.skypelist {
    margin-bottom: 30px;
  }
  .course_textList.skypelist li {
    width: 50%;
    float: left;
    display: inline-block;
    padding: 1%;
    margin: 0;
  }
  .bxslider li video {
    display: none;
  }
  .bxslider li video + a {
    display: block;
  }
  .blarea {
    margin: 30px 8% 0;
  }
  #flow-page .contents .flow .txt dd.btn-link.blheight,
  .blheight {
    line-height: 1.3;
  }
  .basicBtn.blheight a {
    padding: 13px 0;
  }
  #flow-page .contents .flow .txt dd.btn-link.blheight i,
  .blheight i {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
  }
  .contact_mail {
    display: block;
    margin-left: 0;
  }
  body.privacyPage h2 strong {
    font-size: 16px;
  }
  #course-page .contents .tab-cnt .course-action,
  #course-page .course-intro p {
    text-align: left;
  }
  .video + p {
    text-align: left;
  }
  .Tleft {
    text-align: left !important;
  }
  .mt40sp {
    margin-top: 40px !important;
  }
  .special-list .more_sp {
    font-size: 11px;
    letter-spacing: 0;
  }
  #course-page .contents .tab-cnt .course-action .next {
    display: inline-block;
  }
  #course-page .contents .tab-cnt .course-action {
    text-align: center;
  }
  .index_map {
    margin-bottom: 20px;
  }
  .stagename {
    width: 100%;
    /* float: left; */
    margin-top: 10px;
    font-size: 13px;
    font-weight: bold;
  }
  .index_map .map {
    width: 48%;
    float: left;
  }
  .stagename + .stagename,
  .index_map .map + .map {
    float: right;
  }
  .header .sp-nav2 {
    display: block;
  }
  .header .sp-nav2 li {
    display: inline-block;
    float: left;
    font-size: 12px;
    letter-spacing: -0.4px;
  }
  .header .sp-nav2 li + li {
    margin-left: 10px;
  }
  /*.contents .box-results dl {
    border: none;
    padding-top: 0;
    box-shadow: none;
    background: none;
}*/
  /*.contents .box-results dl dd div {
  width: 100%;
  position: static;
  transform: none;
  display: table-cell;
  vertical-align: middle;
}*/
  #home-page .contents .course .popular .popular-sec ul {
    margin-bottom: 10px;
  }
  #home-page .contents .box-results dl dd div br {
    display: none;
  }
  .goldenBox h3,
  #home-page .contents .course .popular .popular-sec h3 {
    padding-bottom: 10px;
    /*border-bottom: none !important;*/
    margin-bottom: 10px;
    font-size: 12px;
  }
  #home-page .contents .course .popular .popular-sec .btn-link {
    margin-top: 0;
    padding: 0;
  }
  #home-page .contents .course .popular .parts {
    /*width: 50%;*/
    /*float: left;*/
    /*padding: 2% 1% 2% 2%;*/
    padding: 2% 2% 0 2%;
  }
  /*#home-page .contents .course .popular .parts + .parts {
    float: right;
    padding: 2% 2% 2% 1%;
}*/
  #home-page .contents .course .popular .popular-sec h3 span {
    font-size: 18px;
    margin-top: 10px;
    display: inline-block;
  }

  .courseTab a {
    position: relative;
  }
  .courseTab a::after {
    position: absolute;
    content: "\e900";
    font-size: 12px;
    top: 50%;
    right: 10px;
    line-height: 0;
    font-family: "fonts" !important;
  }
  .courseTab a.current::after {
  }
  /*.courseTab #scrollTerm11 a {
    background: #DFDFDF url(../../images/course/icontab01.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}
.courseTab #scrollTerm12 a {
    background: #DFDFDF url(../../images/course/icontab02.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}
.courseTab .courseTab_mini01 a {
    background: #DFDFDF url(../../images/course/icontab03.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}
.courseTab .courseTab_mini02 a {
    background: #DFDFDF url(../../images/course/icontab04.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}
.courseTab #scrollTerm13 a {
    background: #DFDFDF url(../../images/course/icontab05.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}
.courseTab #scrollTerm14 a {
    background: #DFDFDF url(../../images/course/icontab06.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}*/

  /*.courseTab #scrollTerm11 a.current {
    background: #c00 url(../../images/course/icontab01_on.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}
.courseTab #scrollTerm12 a.current {
    background: #c00 url(../../images/course/icontab02_on.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}
.courseTab .courseTab_mini01 a.current {
    background: #c00 url(../../images/course/icontab03_on.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}
.courseTab .courseTab_mini02 a.current {
    background: #c00 url(../../images/course/icontab04_on.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}
.courseTab #scrollTerm13 a.current {
    background: #c00 url(../../images/course/icontab05_on.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}
.courseTab #scrollTerm14 a.current {
    background: #c00 url(../../images/course/icontab06_on.png) no-repeat 10px center !important;
    background-size: 42px 30px !important;
    padding-left: 60px !important;
}*/

  .ui-datepicker table th,
  .ui-datepicker table td {
    display: table-cell;
    padding: 1px;
    width: 14%;
  }
  .index_address .map {
    padding-bottom: 0;
    height: auto;
    text-align: left;
    font-size: 12px;
    line-height: 1.4;
  }
  .typeB h3 {
    margin-bottom: 0 !important;
  }
  .typeB .img {
    margin: 0;
    padding: 0 !important;
    width: 100% !important;
  }
  .typeB .txt {
    margin: 0 !important;
    padding: 10px 10px 0 10px !important;
    clear: both;
  }
  .typeC h3 {
    margin-bottom: 20px !important;
  }
  .typeC .img {
    float: left !important;
    width: 90px !important;
    margin-left: 10px !important;
  }
  .typeC .curriculum {
    clear: inherit !important;
    margin-left: 110px !important;
  }
  .hidden_box {
    margin: 20px 0 0 0;
    padding: 0;
  }
  .hidden_box label#label2-1 {
    margin-top: 2px !important;
    display: block !important;
    clear: both;
    margin: 20px 10% 10px 10% !important;
  }
  .hidden_box ol label {
    margin-top: 2px !important;
    text-align: left;
  }

  .lessonslist01 img {
    float: left;
    width: 49%;
  }
  .lessonslist01 img + img {
    float: right;
  }
  .lessonslist02 {
    text-align: center;
    margin-top: 20px;
  }
  .lessonslist02 li {
    display: inline-block;
    width: 33.33%;
    float: left;
    padding: 0 3%;
  }
  .lessonslist02 li span {
    display: block;
    font-size: 12px;
  }
  .english-training .sp_english {
    margin-bottom: 10px;
  }
  .english-training .first-step.sp_english {
    border: 1px solid #e06666;
  }
  .english-training .second-step.sp_english {
    border: 1px solid #db4c4c;
  }
  .english-training .third-step.sp_english {
    border: 1px solid #cc0000;
  }
  .english-training .special.sp_english {
    border: 1px solid #123194;
  }

  .english-training .sp_english span {
    font-size: 12px;
    text-align: center;
    margin-bottom: 0;
  }
  .english-training .sp_english a {
    display: block;
    width: 100%;
    padding: 3%;
    font-size: 14px;
    position: relative;
  }
  .english-training .sp_english a i {
    float: right;
    color: #cc0000;
    position: absolute;
    right: 5px;
    top: 50%;
    margin-top: -7px;
  }
  .english-training .special.sp_english a i {
    float: right;
    color: #123194;
    position: absolute;
    right: 5px;
    top: 50%;
    margin-top: -7px;
  }
  .newtabmenu {
  }
  .newtabmenu li {
    width: 31.33%;
    margin: 1%;
  }
  .newtabmenu li a {
    background: red;
  }
  .newtabmenu li a.current {
    background: red;
  }
  .newtabmenu li a span {
  }
  .cblist {
    margin-top: 40px;
  }
  .cblist li {
    display: inline-block;
    float: left;
    width: 49%;
    border-radius: 6px;
    background: #19375a;
  }
  .cblist li a {
    color: #fff;
    text-decoration: none;
    padding: 10px;
    display: block;
    font-size: 12px;
  }
  .cblist li a i {
    font-size: 10px;
    display: inline-block;
    margin-left: 5px;
  }
  .cblist li + li {
    float: right;
    background: #c00;
  }
  .annlist {
    text-align: center;
    margin-bottom: 40px;
  }
  .annlist li {
    width: 31.33%;
    float: left;
    display: inline-block;
    margin: 1%;
  }
  .annlist li a {
    text-decoration: none;
    display: block;
    padding: 15px 0;
    text-align: center;
    color: #fff;
    font-weight: normal;
    font-size: 12px;
    letter-spacing: 0;
  }
  .annlist li + li {
    margin-left: 1%;
  }
  .bx-wrapper {
    margin: 0 auto !important;
  }
  body#home-page .contents .box-results dl {
    padding-top: 93%;
  }
  body#home-page .contents .box-results dl dd div {
    padding: 0 11%;
  }
  #contact-page .contents td#day .custom {
    margin-top: 5px;
  }
  .mblank i {
    margin: -7px 0 0 0;
    position: absolute;
    top: 50%;
    right: 10px;
    display: inline-block;
  }
  #flow-page .contents .flow .item .moive-list-feature {
    margin: 20px 0;
  }
  #flow-page .contents .flow .item .moive-list-curriculum {
    margin-top: 0;
  }
  .courseBnr {
    padding: 0 10px 15px;
  }

  .typeC .txt dt {
    font-weight: 900;
  }
  .typeC .txt dd li {
    font-size: 12px;
    line-height: 1.5;
  }
  .typeC .txt dd li:before {
    top: 6px;
  }
  .imgwidth img {
    max-width: auto;
    width: 100%;
  }
  #graph {
    overflow: hidden;
  }
  #course-page .contents .sptable th li,
  #course-page .contents .course-price th li {
    font-size: 12px;
    padding-left: 0;
  }
  #course-page .contents .sptable th li + li,
  #course-page .contents .course-price th li + li {
    margin-top: 10px;
  }
  #course-page .contents .sptable th li:before,
  #course-page .contents .course-price th li:before {
    display: none;
  }
  .contents .sptable th,
  .contents .sptable td,
  #course-page .contents .course-price th,
  #course-page .contents .course-price td {
    font-size: 12px;
    padding: 5px;
  }
  .annlist li i {
    font-size: 12px;
  }

  #contact-page .contents td .radio,
  #contact-page .contents td .checkbox {
    padding: 8px 8px 8px 27px;
  }
  #contact-page .contents td .radio:before {
    left: 10px;
    margin-top: -3px;
    width: 6px;
    height: 6px;
  }
  #contact-page .contents td .radio:after,
  #contact-page .contents td .checkbox:after {
    left: 5px;
    margin-top: -8px;
    width: 16px;
    height: 16px;
  }
  #contact-page .contents td .checkbox:before {
    left: 10px;
    margin-top: -7px;
    width: 6px;
    height: 11px;
  }
  /*△SP----------------------------------------------------------------------------*/
}
.box-teacher {
  outline: none;
}

.menu2 {
  display: none;
}
.fleft_map {
  float: none;
  margin-right: 0;
  margin-bottom: 5px;
}
.fleft_map img {
  width: 100%;
}
.hidden_box .hidden_show {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.8s;
}
.hidden_box {
  margin: 0;
  padding: 0;
}
.hidden_box label {
  padding: 15px;
  font-weight: bold;
  cursor: pointer;
  color: #c00;
  border: 2px solid #c00;
  display: inline-block;
  margin: 15px auto 0px auto;
}
.hidden_box label:hover {
  background: #efefef;
}
.hidden_box input#label2 {
  display: none;
}
.hidden_box .hidden_show {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.8s;
}
.hidden_box input:checked ~ .hidden_show {
  padding: 10px 0;
  height: auto;
  opacity: 1;
}
.contact_day {
  color: #c00;
  font-size: 14px;
}
.ui-datepicker .ui-datepicker-buttonpane button {
  font-size: 12px;
}

/*180718----------------------------*/
.index_map_pc .cnt-inner {
  max-width: 1100px;
  margin: 0 auto;
}
.index_map_pc .fleft_map_pc {
  max-width: 500px;
  float: left;
  margin-bottom: 80px;
  /*border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);	*/
}
.index_map_pc .fright_map_pc {
  max-width: 500px;
  float: right;
  margin-bottom: 80px;
  /*border-radius: 5px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);*/
}
.index_map_pc .fleft_map_pc img,
.index_map_pc .fright_map_pc img {
  float: left;
  margin: 0 20px 20px 0;
}
.index_map_pc .fleft_map_pc h3,
.index_map_pc .fright_map_pc h3 {
  margin-top: 50px;
  text-align: left;
  font-size: 22px;
  color: #c00;
}
.index_map_pc .fleft_map_pc p,
.index_map_pc .fright_map_pc p {
  text-align: left;
  font-size: 16px;
}
.foot-action li.mail,
.foot-action li.diagnosis {
  width: 25%;
  padding-left: 10px;
}
.foot-action li.tel em {
  font-size: 26px;
}
.foot-action li.reservation {
  width: 25%;
  padding-left: 10px;
}
.foot-action li.reservation a {
  background: #f1963d;
}
.foot-action li.reservation a {
  -webkit-border-radius: 5px;
  border-radius: 5px;
  line-height: 50px;
}
.foot-action li.reservation a {
  color: #fff;
  font-weight: 700;
}
.foot-action li.reservation i {
  position: relative;
  display: inline-block;
  margin-top: -5px;
  width: 24px;
  height: 24px;
  vertical-align: middle;
  background: url(../../images/index/icon-reservation.svg) no-repeat;
  background-size: 24px;
}
.header .head-info .for-com {
  width: initial;
}

.header .head-info .reservation {
  float: left;
  background: #f1963d;
  width: 50%;
  text-align: center;
  letter-spacing: 0;
}
.header .head-info li.reservation a {
  color: #fff;
  padding: 20px 0;
  font-size: 11px;
  font-weight: 700;
}
.header .head-info .reservation i {
  display: block;
  margin-bottom: 5px;
  width: 24px;
  height: 24px;
  position: relative;
  display: block;
  margin: 0 auto 5px;
  background: url(../../images/index/icon-reservation.svg) no-repeat;
  background-size: 24px;
  background-position: center center;
}
div#scroll-campaign {
  padding: 150px 0 0;
}
div#scroll-campaign {
  margin: -70px auto 0;
  width: 1100px;
  text-align: center;
}
/*#loader {
	width: 100%;
	height: 100%;
	margin: 0;
	background: #fff;
	opacity: 1.0;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999999;
}
#loader img {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -40px;
	margin-left: -40px;
}*/

@media screen and (max-width: 959px) {
  .foot-action li.mail,
  .foot-action li.diagnosis {
    padding-left: 0;
    width: 33.3333%;
  }
  .header .head-info .for-com {
    width: 100%;
  }
  div#scroll-campaign {
    margin-top: -60px;
    width: 100%;
  }
  div#scroll-campaign {
    padding: 60px 0 40px;
  }
}

/* =========================================================
	fade
========================================================= */
#js_fade {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 9999999999999999999;
}
#js_fade .sk-fading-circle {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  margin-left: -20px;
}
#js_fade .sk-fading-circle .sk-circle {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
#js_fade .sk-fading-circle .sk-circle:before {
  content: "";
  display: block;
  margin: 0 auto;
  width: 15%;
  height: 15%;
  background-color: #cc0000;
  border-radius: 100%;
  -webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
  animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
}
#js_fade .sk-fading-circle .sk-circle2 {
  transform: rotate(30deg);
  -moz-transform: rotate(30deg);
  -webkit-transform: rotate(30deg);
}
#js_fade .sk-fading-circle .sk-circle3 {
  transform: rotate(60deg);
  -moz-transform: rotate(60deg);
  -webkit-transform: rotate(60deg);
}
#js_fade .sk-fading-circle .sk-circle4 {
  transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
}
#js_fade .sk-fading-circle .sk-circle5 {
  transform: rotate(120deg);
  -moz-transform: rotate(120deg);
  -webkit-transform: rotate(120deg);
}
#js_fade .sk-fading-circle .sk-circle6 {
  transform: rotate(150deg);
  -moz-transform: rotate(150deg);
  -webkit-transform: rotate(150deg);
}
#js_fade .sk-fading-circle .sk-circle7 {
  transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}
#js_fade .sk-fading-circle .sk-circle8 {
  transform: rotate(210deg);
  -moz-transform: rotate(210deg);
  -webkit-transform: rotate(210deg);
}
#js_fade .sk-fading-circle .sk-circle9 {
  transform: rotate(240deg);
  -moz-transform: rotate(240deg);
  -webkit-transform: rotate(240deg);
}
#js_fade .sk-fading-circle .sk-circle10 {
  transform: rotate(270deg);
  -moz-transform: rotate(270deg);
  -webkit-transform: rotate(270deg);
}
#js_fade .sk-fading-circle .sk-circle11 {
  transform: rotate(300deg);
  -moz-transform: rotate(300deg);
  -webkit-transform: rotate(300deg);
}
#js_fade .sk-fading-circle .sk-circle12 {
  transform: rotate(330deg);
  -moz-transform: rotate(330deg);
  -webkit-transform: rotate(330deg);
}
#js_fade .sk-fading-circle .sk-circle2:before {
  animation-delay: -1.1s;
  -moz-animation-delay: -1.1s;
  -webkit-animation-delay: -1.1s;
}
#js_fade .sk-fading-circle .sk-circle3:before {
  animation-delay: -1s;
  -moz-animation-delay: -1s;
  -webkit-animation-delay: -1s;
}
#js_fade .sk-fading-circle .sk-circle4:before {
  animation-delay: -0.9s;
  -moz-animation-delay: -0.9s;
  -webkit-animation-delay: -0.9s;
}
#js_fade .sk-fading-circle .sk-circle5:before {
  animation-delay: -0.8s;
  -moz-animation-delay: -0.8s;
  -webkit-animation-delay: -0.8s;
}
#js_fade .sk-fading-circle .sk-circle6:before {
  animation-delay: -0.7s;
  -moz-animation-delay: -0.7s;
  -webkit-animation-delay: -0.7s;
}
#js_fade .sk-fading-circle .sk-circle7:before {
  animation-delay: -0.6s;
  -moz-animation-delay: -0.6s;
  -webkit-animation-delay: -0.6s;
}
#js_fade .sk-fading-circle .sk-circle8:before {
  animation-delay: -0.5s;
  -moz-animation-delay: -0.5s;
  -webkit-animation-delay: -0.5s;
}
#js_fade .sk-fading-circle .sk-circle9:before {
  animation-delay: -0.4s;
  -moz-animation-delay: -0.4s;
  -webkit-animation-delay: -0.4s;
}
#js_fade .sk-fading-circle .sk-circle10:before {
  animation-delay: -0.3s;
  -moz-animation-delay: -0.3s;
  -webkit-animation-delay: -0.3s;
}
#js_fade .sk-fading-circle .sk-circle11:before {
  animation-delay: -0.2s;
  -moz-animation-delay: -0.2s;
  -webkit-animation-delay: -0.2s;
}
#js_fade .sk-fading-circle .sk-circle12:before {
  animation-delay: -0.1s;
  -moz-animation-delay: -0.1s;
  -webkit-animation-delay: -0.1s;
}

@-webkit-keyframes sk-circleFadeDelay {
  0%,
  39%,
  100% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
}
@keyframes sk-circleFadeDelay {
  0%,
  39%,
  100% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
}

/*180808---------------------------------------------------------*/
@media all and (min-width: 960px) {
  .header .head-txt {
    top: 18px;
    line-height: 1.2;
  }
  .youtube-area {
    width: 650px;
    height: 366px;
    margin-left: 20px;
    display: inline-block;
  }
}

/*180914---------------------------------------------------------*/
ul.curriculumBox > li {
  width: 500px;
  float: left;
  margin-bottom: 40px;
}
ul.curriculumBox > li:nth-of-type(2n) {
  margin-left: 100px;
}

ul.curriculumBox > li dt {
  font-weight: bold;
  margin-bottom: 5px;
  font-size: 20px;
}
ul.curriculumBox > li dd {
  padding-left: 20px;
}
ul.curriculumBox > li dd span {
  display: block;
  text-indent: 1em;
}
ul.curriculumBox > li dd li {
  text-indent: -1.8em;
  padding-left: 1.8em;
  margin-bottom: 3px;
}
ul.curriculumBox > li dt span {
  background: #c00;
  color: #fff;
  width: 30px;
  display: inline-block;
  text-align: center;
  margin-right: 10px;
}

@media screen and (max-width: 767px) {
  ul.curriculumBox > li dt span {
    width: 22px;
  }
  ul.curriculumBox > li {
    width: 100%;
    float: none;
    margin-bottom: 20px;
  }
  ul.curriculumBox > li:nth-of-type(2n) {
    margin-left: 0;
  }
  ul.curriculumBox > li dt {
    font-size: 16px;
  }
}
@media screen and (min-width: 767px) {
  #contact-page .contents td .school-list li {
    width: 33%;
  }
}

/*181004----------------------------------------------------------------------------------*/
.tleft {
  text-align: left;
}
.tCenter {
  text-align: center;
}
.mt20 {
  margin-top: 20px;
}
.mt40 {
  margin-top: 40px;
}
.mb60 {
  margin-bottom: 60px;
}
#home-page .contents .course .cnt-inner.course-lead {
  margin: 40px auto 60px;
}
#home-page .contents .lead {
  padding: 0 0 160px;
}
#home-page .contents .lesson {
  background: #fff;
}
#home-page .contents .lesson.top-voice {
  background: #f2f2f2;
}
.voice-about-list {
  margin: -80px 0 0 0;
  position: relative;
}
.voice-about-list {
  /*max-width: 1100px;
	margin: -80px auto 0;*/
  max-width: 980px;
  margin: 20px auto 0;
}
.voice-about-list .prev,
.voice-about-list .next {
  position: absolute;
}
.voice-about-list .prev:hover,
.voice-about-list .next:hover {
  opacity: 0.7;
}
.voice-about-list .prev {
  top: 50%;
  transform: translateY(-50%);
  left: -50px;
}
.voice-about-list .next {
  top: 50%;
  transform: translateY(-50%);
  right: -50px;
}
.voice-about-list-bxslider-wrap {
  overflow: hidden;
}
.voice-about-list-bxslider {
  width: 100%;
  margin: 0 auto;
}

.voice-about-list li {
  /*    width: 530px;
    float: left;*/
  background: #fff;
  box-sizing: border-box;
  padding: 10px 10px 10px 10px;
}
/*.voice-about-list li:nth-of-type(1) {
    margin-right: 40px;
}*/
.voice-about-list li img {
  float: left;
  width: 90px;
  border: 1px solid #eee;
  margin-right: 10px;
}
.voice-about-list li .txt {
  /*float: left;
    width: 350px;*/
  /*margin-top: 20px;*/
}
.voice-about-list li .txt p {
  font-size: 10px;
  text-align: left;
}
.voice-about-list .bx-wrapper {
  position: relative;
}
#home-page .contents .voice-about-list li .txt h3 {
  font-size: 11px;
  text-align: left;
  line-height: 1.4 !important;
  margin-bottom: 0;
  letter-spacing: 0;
  color: #c00;
  /*font-weight:bold;*/
}
#home-page .contents .voice-about-list li .txt h3 span {
  color: #333;
  font-size: 10px;
  display: block;
  margin-bottom: 3px;
}
#graph #graph-before .ttl-graph,
#graph #graph-after .ttl-graph {
  z-index: 0;
}
dd.lesson-btn a {
  background: #c00;
  max-width: 80%;
  border-radius: 100px;
  padding: 3px 0;
  margin: 0 auto;
  color: #fff;
}
dd.lesson-btn .icon-arrow {
  font-size: 10px;
  margin-right: 4px;
}
#snsBox {
  margin-top: 60px;
}
#snsBox .title {
  text-align: center;
  font-weight: bold;
  margin-bottom: 10px;
}
#snsBox .line .line-inner {
  border-radius: 4px;
  box-sizing: border-box;
  text-align: center;
  border: 1px solid #ccc;
  padding: 20px;
  background: #fff;
  min-height: 530px;
}
.line-inner p {
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 10px;
}
.line-inner h4 {
  font-weight: bold;
}
.line-inner .qr-code {
  width: 100px;
  margin: 0 auto;
}
.qr-code img {
  max-width: 100%;
}
.line-inner small {
  color: #999;
}
.results-voice-box .item {
  overflow: hidden;
}
.results-voice-box .item + .item {
  margin-top: 40px;
  border-top: 1px solid #eee;
  padding-top: 40px;
}
.results-voice-box .img {
  float: left;
  width: 300px;
}
.results-voice-box .img img {
  width: 100%;
}
.results-voice-box .txt {
  float: right;
  overflow: hidden;
  width: 760px;
}
.results-voice-box .txt h3 {
  border: none;
  background: none;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 10px;
  color: #c00;
  padding: 0;
}
.results-voice-box .txt h3 span {
  font-size: 16px;
  color: #333;
  display: block;
  margin-bottom: 5px;
}
.contents .results-voice-box h3:before {
  content: none;
}
.fb_iframe_widget.pc-hide {
  display: none !important;
}

li.sns-fasebook {
  width: 30px;
  height: 70px;
  min-width: 30px;
  display: flex;
  align-items: center;
}
li.sns-instagram {
  width: 30px;
  height: 70px;
  margin: 0 5px;
  min-width: 30px;
  display: flex;
  align-items: center;
}
li.sns-line {
  width: 30px;
  height: 70px;
  margin-right: 20px;
  min-width: 30px;
  display: flex;
  align-items: center;
}
.header .head-info li.sns-fasebook a,
.header .head-info li.sns-instagram a,
.header .head-info li.sns-line a {
  height: 30px;
}

#home-page .contents .philosophy {
  /*padding-bottom: 100px;*/
}
.insta .figure {
  max-hight: 103px;
}
@media all and (min-width: 960px) {
  #home-page .contents .lesson h2 {
    background: url(../../images/index/lesson-ttl-bg_wh.png) no-repeat top left;
    background-size: 100% auto;
    -moz-background-size: 100% auto;
    -webkit-background-size: 100% auto;
  }
  #home-page .contents .lesson.top-voice h2 {
    background: url(../../images/index/lesson-ttl-bg.png) no-repeat top left;
    background-size: 100% auto;
    -moz-background-size: 100% auto;
    -webkit-background-size: 100% auto;
  }
  #home-page .contents .info .news {
    float: right;
    float: none;
    width: 100%;
  }
  div#snsBox .fb {
    width: 350px;
    float: left;
  }
  div#snsBox .insta {
    width: 350px;
    float: left;
    margin: 0 25px;
    max-height: 570px;
    overflow: hidden;
  }
  div#snsBox .line {
    width: 350px;
    float: left;
  }
  .footer .foot-link .base-menu ul:first-of-type {
    margin-right: 30px;
  }
  .footer .foot-link .base-menu ul {
    float: left;
  }
  .base-menu-ttl {
    margin-top: 20px;
    color: #000;
  }
  .btn-link.top-voice-btn {
    padding: 30px 0 0;
  }
}
@media screen and (max-width: 767px) {
  .fb_iframe_widget.pc-hide {
    display: inline-block !important;
  }
  .fb_iframe_widget.sp-hide {
    display: none !important;
  }
  div#snsBox .insta {
    max-height: 570px;
    overflow: hidden;
    box-sizing: border-box;
    padding: 0px 2px;
  }
  .voice-about-list li {
    width: 100%;
    float: none;
    padding: 15px 15px 20px 15px;
  }
  .voice-about-list li img {
    float: left;
    width: 100px;
    margin-right: 10px;

    box-sizing: border-box;
  }
  .voice-about-list ul {
    width: 100%;
  }
  .voice-about-list li .txt {
    margin-top: 10px;
  }
  .voice-about-list {
    margin: 0px 0 0 0;
  }
  .voice-about-list ul {
    padding: 0 2%;
    margin: 10px auto 0px;
  }
  .voice-about-list li .txt {
    float: none;
    width: 100%;
  }
  /*#home-page .contents .philosophy {
    padding-bottom: 40px;
}*/
  #home-page .contents .voice-about-list li .txt h3 {
    font-size: 16px;
  }
  .voice-about-list li .txt p {
    font-size: 12px;
    color: #999;
  }
  .voice-about-list li:nth-of-type(1) {
    margin: 0 0 10px 0;
  }
  #home-page .contents .lead {
    padding: 0 0 40px;
  }
  #home-page .contents .lead h2 {
    padding-top: 0px;
  }
  .insta {
    margin: 40px 0;
  }
  #snsBox .line .line-inner {
    min-height: auto;
  }
  .base-menu-ttl {
    display: none;
  }
  .results-voice-box .img {
    float: none;
    width: 100%;
    margin: 0 auto 10px;
  }
  .results-voice-box .txt {
    float: none;
    overflow: hidden;
    width: 100%;
  }
  .results-voice-box .txt h3 span {
    font-size: 14px;
  }
  .results-voice-box .txt h3 {
    font-size: 18px;
  }
  .results-voice-box .item + .item {
    margin-top: 20px;
    padding-top: 20px;
  }
  .sns-btn {
    margin-bottom: 15px;
  }
  .sns-btn a {
    display: inline-block;
    width: 40px;
  }
  .sns-btn a:nth-of-type(2) {
    margin: 0 10px;
  }
  .btn-link.top-voice-btn {
    padding: 30px 0 0;
    margin: 0 2%;
  }
  #home-page .contents .voice-about-list li .txt h3 span {
    font-size: 12px;
  }
  .voice-about-list .prev {
    left: 0;
  }
  .voice-about-list .next {
    right: 0;
  }
}

/*181109-----------------------------------------*/
.voic-tegaki-list {
  margin-top: 40px;
}
.voic-tegaki-list li {
  overflow: hidden;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  float: left;
  margin-bottom: 20px;
}
.voic-tegaki-list li:nth-of-type(2n) {
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .voic-tegaki-list li:nth-of-type(2n) {
    margin-left: 0;
  }
  .voic-tegaki-list li {
    margin-bottom: 10px;
  }
}

/*190129--------------------------------------------*/
#home-page .contents .course .popular .popular-sec {
  position: relative;
  overflow: visible;
}
.head-info li.sp-hide img {
  width: 100%;
}
.renewal {
  position: absolute;
  right: -30px;
  z-index: 1;
  top: -20px;
}
.renewal img {
  width: 100%;
}
.popular-sec h4 {
  color: #c00;
  /* line-height: 1.4; */
  margin-bottom: 20px;
  font-weight: bold;
}
@media all and (min-width: 0px) and (max-width: 1400px) {
  .renewal {
    width: 8vw;
  }
}

.js-load {
  display: none;
}
.js-load.active {
  display: block;
}

/*190214　lessonroom------------------------------------------*/
.lessonroom .halfColumn {
  width: 47%;
  float: left;
  position: relative;
}
.slider_Lessonroom_wrap {
  overflow: hidden;
}
.slider_Lessonroom_wrap ul {
  max-height: 260px;
  overflow: hidden;
}
.lessonroom .halfColumn + .halfColumn {
  margin-left: 6%;
}
.lessonroom .halfColumn .slider_Lessonroom {
  width: 100%;
}
#home-page .contents .lessonroom.results h3 {
  color: #333;
  text-align: center;
}
.lessonroom .bx-wrapper {
  margin: 0;
}
.lessonroom .bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #c00;
}

.accessLessonroomBox p.copy {
  font-size: 28px;
  /* font-weight: bold; */
}
.accessLessonroomBox .accessBox {
  background: #f6f6f6;
  padding: 20px;
  margin-bottom: 20px;
}
.accessLessonroomBox .accessBox p.ttl {
  margin-bottom: 10px;
}
.accessLessonroomBox .accessBox ul li:before {
  content: "✔ ";
  color: #c00;
}
.accessLessonroomBox .accessBox ul li {
  text-indent: -1em;
  padding-left: 1em;
  line-height: 1.4;
}
.accessLessonroomBox .photoBox {
  overflow: hidden;
}
.accessLessonroomBox .photoBox li {
  float: left;
  width: 32%;
  margin-bottom: 20px;
  margin-right: 2%;
}
.accessLessonroomBox .photoBox li:nth-of-type(3n) {
  margin-right: 0;
}

.accessLessonroomBox .photoBoxUnder {
  overflow: hidden;
  margin: 60px 0 30px;
}
.accessLessonroomBox .photoBoxUnder li {
  float: left;
  width: 32%;
  margin-bottom: 20px;
  margin-right: 2%;
}
.accessLessonroomBox .photoBoxUnder li:nth-of-type(3n) {
  margin-right: 0;
}
.accessLessonroomBox .photoBoxUnder li span {
  display: block;
  margin: 10px 0 0;
}
.accessAttentionBox {
  overflow: hidden;
}
.accessAttentionBox .half {
  float: left;
  width: 48%;
}
.accessAttentionBox .half + .half {
  margin-left: 4%;
  background: #f6f6f6;
  padding: 20px;
}
.accessAttentionBox .half:nth-of-type(1) p {
  font-size: 14px;
}
.accessAttentionBox .half:nth-of-type(1) p.ttl {
  font-size: 16px;
  font-weight: bold;
  color: #c00;
}
.accessAttentionBox .half + .half p {
  font-size: 14px;
}
.accessAttentionBox .half + .half p.ttl {
  font-weight: bold;
}

@media screen and (max-width: 959px) {
  #home-page .contents .lessonroom.results {
    background: #f8f8f8;
    padding: 40px 0 70px;
  }

  .accessLessonroomBox p.copy {
    font-size: 16px;
    /* font-weight: bold; */
  }
  .accessLessonroomBox .photoBox li {
    width: 49%;
    margin-right: 2%;
    margin-bottom: 10px;
  }
  .accessLessonroomBox .photoBox li:nth-of-type(3n) {
    margin-right: 2%;
  }
  .accessLessonroomBox .photoBox li:nth-of-type(2n) {
    margin-right: 0;
  }
  .accessLessonroomBox .photoBoxUnder {
    margin: 40px 0 20px;
  }
  ul.photoBoxUnder li span {
    font-size: 12px;
  }
  .accessAttentionBox .half {
    float: none;
    width: 100%;
  }
  .accessAttentionBox .half:nth-of-type(1) p.ttl {
    font-size: 14px;
    margin-bottom: 5px;
  }
  .accessAttentionBox .half:nth-of-type(1) p {
    font-size: 12px;
  }
  .accessAttentionBox .half + .half {
    margin-left: 0;
    padding: 10px;
    margin: 10px 0 0 0;
  }
  .accessAttentionBox .half + .half p.ttl {
    margin-bottom: 5px;
  }
  .accessAttentionBox .half + .half p {
    font-size: 12px;
  }
}

/*190214　アナウンススクール------------------------------------------*/
.cnt-announcer .pagetitle .video .inner {
  padding-top: 0;
}
.an_teacherList {
  overflow: hidden;
}
.an_teacherList + .an_teacherList {
  border-top: 1px solid #eee;
  padding-top: 25px;
  margin-top: 25px;
}
.an_teacherList_photo {
  float: left;
  width: 16%;
}

.an_teacherList_profile {
  float: left;
  width: 26%;
  margin: 0 3% 0 2%;
}

.an_teacherList_text {
  float: left;
  width: 53%;
}

.an_teacherList_profile p.name {
  font-size: 20px;
  font-weight: bold;
}

.an_teacherList_profile p.name span {
  font-size: 10px;
  color: #c00;
  font-weight: normal;
  margin-left: 5px;
}
.an_teacherList_profile p.kyoku {
  font-size: 14px;
}
.an_teacherList_profile p.kyoku span {
  background: #c00;
  font-size: 10px;
  color: #fff;
  display: block;
  padding: 0 4px;
  width: 100px;
  border-radius: 3px;
  text-align: center;
  margin-bottom: 5px;
}
span.an_message_span {
  background: #c00;
  /* width: 220px; */
  font-size: 16px !important;
  text-align: center;
  color: #fff;
  /* display: inline-block !important; */
  max-width: 240px;
  padding: 3px;
  border-radius: 3px;
}
.annlist li + li {
  margin-left: 5px;
}
.annlist li {
  width: 176px;
}
@media (min-width: 960px) {
  .cnt-announcer .pagetitle .txt p.lead-copy em {
    font-size: 35px;
  }
  .cnt-announcer .pagetitle .txt p.lead-copy span {
    font-size: 12px;
  }
  .cnt-announcer .pagetitle .txt p {
    font-size: 16px;
  }
}
@media (max-width: 960px) {
  .an_teacherList_photo {
    width: 30%;
  }
  .an_teacherList_profile {
    width: 64%;
    margin: 0 0 0 6%;
    margin-bottom: 15px;
  }
  .an_teacherList_profile p.name {
    font-size: 16px;
    margin-bottom: 3px;
  }
  .an_teacherList_profile p.kyoku {
    line-height: 1.4;
    margin-bottom: 5px;
  }
  .an_teacherList_text {
    float: none;
    width: 100%;
    margin-top: 10px;
    clear: both;
  }
  span.an_message_span {
    max-width: initial;
    width: 100%;
    box-sizing: border-box;
  }
  .annlist li {
    width: 47%;
  }
}

/*190228------------------------------------------*/
#home-page .contents .top_column_section {
  background: #fff;
  padding: 80px 0;
}
#home-page .contents .top_column_section ul li {
  border-top: 1px dotted #ededed;
  padding: 15px 0;
}
#home-page .contents .top_column_section ul li:last-child {
  border-bottom: 1px dotted #ededed;
}
#home-page .contents .top_column_section ul li a {
  text-decoration: none;
  font-size: 18px;
}
#home-page .contents .top_column_section ul li a:hover {
  color: #c00;
}
@media (min-width: 960px) {
  #home-page .contents .top_column_section .cnt-inner {
    max-width: 1100px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  #home-page .contents .top_column_section {
    padding: 40px 0;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .top_column_section .cnt-inner {
    max-width: 90%;
    margin: 0 auto;
  }
  #home-page .contents .top_column_section ul li a {
    text-decoration: none;
    font-size: 14px;
  }
}

/*190404-----------------------------------*/
.demo {
  max-width: 600px;
  margin: 0 auto;
  position: relative;
}
.demo .prev {
  position: absolute;
  z-index: 20;
  top: 50%;
  left: -50px;
}
.demo .next {
  position: absolute;
  z-index: 20;
  top: 50%;
  right: -50px;
}
.demoWrap {
  overflow: hidden;
}
.demo .bx-wrapper {
  margin: 0 !important;
}
.demo .bx-wrapper .bx-viewport {
  width: 100% !important;
}
.demo .bx-wrapper .bx-pager,
.demo .bx-wrapper .bx-controls-auto {
  width: 100%;
}
.demo .bx-wrapper .bx-pager.bx-default-pager a:hover,
.demo .bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #c00;
}
.btnBlock {
  background: #c00;
  border-radius: 4px;
  color: #fff !important;
  text-decoration: none !important;
  padding: 10px 5px;
  font-size: 14px;
  box-sizing: border-box;
  display: block;
  max-width: 260px;
  letter-spacing: -1px;
}
#method-page .btnBlock {
  padding: 10px 20px;
  font-size: 16px;
  letter-spacing: 0px;
  max-width: inherit;
}
.btnBlock:hover {
  transition: 0.3s;
  opacity: 0.7;
}
.methdBtnBlock {
  float: left;
}
a.popup.btnBlock.basicBtnBlock {
  width: 100%;
  max-width: 100%;
  margin: 10px 0 0 0;
  text-align: center;
}
a.popup.btnBlock.basicBtnBlock:before {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  margin: 0 3px 2px 0;
  vertical-align: center;
  border-color: #fff;
  content: "";
}
#home-page .contents .course .popular .popular-sec {
  position: relative;
  overflow: visible;
}
.renewal {
  position: absolute;
  right: -30px;
  z-index: 1;
  top: -20px;
}
.renewal img {
  width: 100%;
}
@media all and (min-width: 0px) and (max-width: 1400px) {
  .renewal {
    width: 8vw;
  }
}
@media screen and (min-width: 960px) {
  .about-list .img {
    float: left;
    width: 50%;
  }
  #home-page .contents .about .about-list .item p {
    line-height: 1.4;
  }
  #home-page .contents .about .about-list .item .txt {
    margin-bottom: 0;
    padding: 0;
    float: right;
    width: 48%;
    text-align: left;
  }
  #home-page .contents .about .about-list .item {
    width: 50%;
    padding: 15px 15px;
  }
  #home-page .contents .box-shadow {
    padding: 15px;
  }
  #home-page .contents .about .about-list .item dt {
    display: none;
  }
  #home-page .contents .about .about-list .item dl {
    margin: 0 0 5px;
  }
  #home-page .contents .about .about-list .item .more {
    display: none;
  }
  #home-page .list .item dd {
    font-size: 20px;
  }
  #home-page .contents .about .about-list .item dl {
  }
}
@media screen and (max-width: 767px) {
  .btnBlock {
    padding: 8px 30px;
    width: 100%;
    text-align: center;
  }
  .demo {
    box-sizing: border-box;
    /*padding: 0 10px;*/
    width: 100%;
  }
  .demo .prev,
  .demo .next {
    display: none;
  }
  p.methdBtnBlock a.btnBlock {
    max-width: 100%;
  }
  p.methdBtnBlock {
    width: 100%;
  }
  #home-page .btnBlock {
    padding: 5px;
    width: 100%;
    text-align: center;
    font-size: 12px;
  }
}
.movie-inner .movie-thumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  background: url(../../images/index/top-thumb.png) no-repeat;
  background-size: cover;
}
.movie-inner {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  /*padding-bottom: 60%;*/
  overflow: hidden;
}
.movie-inner iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.popular-sec h4 {
  color: #c00;
  /* line-height: 1.4; */
  margin-bottom: 20px;
  font-weight: bold;
}
.movie-box-wrap {
  width: 500px;
}
.small_txt {
  font-size: 12px;
}
iframe#player1 {
  width: 100%;
  /*height: auto;*/
}
.youtube:hover {
  cursor: pointer;
  opacity: 0.7;
  transition: 0.3s;
}
#home-page iframe#player1 {
  height: 100%;
}
@media screen and (max-width: 768px) {
  .movie-box-wrap {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  ul.head-info li.sns-fasebook.sp-hide img {
    width: 30px;
  }
  ul.head-info li.sns-instagram.sp-hide img {
    width: 30px;
  }
  ul.head-info li.sns-line.sp-hide img {
    width: 30px;
  }
}

@media screen and (min-width: 960px) {
  .cnt-basic .contents .reason .reason-list .img {
    margin: 0 10px 15px 20px;
    width: 240px;
    float: left;
  }
  .cnt-basic .contents .reason .reason-list .item {
    float: left;
    width: 50%;
    padding: 0 15px;
    margin-bottom: 30px;
  }
  .cnt-basic .contents .reason .reason-list dl {
    margin: 0 10px;
    width: 240px;
    float: left;
  }
  .cnt-basic .contents .reason .reason-list dd {
    font-size: 14px;
  }
  .cnt-basic .contents .reason .reason-list dt {
    font-size: 16px;
  }
}

/*190326 -------------------------------------------------------------------------*/
#home-page .mv {
  height: auto;
  padding: 20px 0 120px;
  width: 100%;
}
.youtube-area {
  position: relative;
  width: 900px;
  height: 506px;
  padding-top: 0;
  margin: 0 auto;
  display: block;
}
#youtube {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.mv video {
  width: 900px;
  margin: 0 auto;
  display: block;
}
_::-webkit-full-page-media,
_:future,
:root .mv video {
  max-height: 675px;
  height: auto;
}
.mv a {
  width: 100%;
  max-width: 1200px;
  display: block;
  margin: 0 auto;
}
.mv a:hover video {
  opacity: 0.7;
  transition: 0.3s;
}
@media (min-width: 768px) {
  #home-page .mv .sp-hide {
    opacity: 0;
  }
}
.voice-about-list li {
  padding: 10px 10px 10px 10px;
  width: calc((100% - 10px * 2 * 4) / 4);
  float: left;
  margin: 10px;
}
.contents .magazine-list .item {
  float: none;
  display: inline-block;
}
div.loader-bg {
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -8px;
  margin-top: -8px;
}
@media (max-width: 1200px) {
  #home-page .mv {
    height: auto;
    padding: 0 !important;
    width: 100%;
  }
  .youtube-area {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
  }
  .mv video {
    width: 100%;
    margin: 0 auto;
    display: block;
  }
  #home-page .contents .voice-about-list li .txt h3 {
    font-size: 13px;
  }
  .voice-about-list li {
    width: 100%;
    float: none;
  }
  #home-page .mv .pc-hide {
    opacity: 0;
  }
}

@media screen and (max-width: 767px) {
  .contents .box-teacher {
    margin-bottom: 10px;
  }
  #graph #graph-before #doughnut-left,
  #graph #graph-before #doughnut-center {
    float: none;
    width: 50%;
    margin-top: 8%;
    margin: 0 auto 25px;
  }

  #graph #graph-before,
  #graph #graph-after {
    float: left;
    width: 49%;
    margin: 0;
  }
  #graph #graph-after {
    margin-left: 2%;
  }
  #graph #doughnut-right:before {
    content: none;
  }
  #graph #graph-before #doughnut-left {
    width: 100%;
    margin: 0;
  }
  #graph #graph-after #doughnut-right {
    width: 100%;
    margin: 0 auto;
  }
}

.header .head-info li.mail.head-communication {
  background: #f1963d;
}
.foot-action li.diagnosis.reflection-img a {
  background: #f1963d;
}
.foot-action li.reservation a {
  background: #19375a;
}
.reflection-img {
  width: 510px;

  position: relative;
  overflow: hidden;
}
.reflection {
  height: 100%;
  width: 30px;
  position: absolute;
  top: -180px;
  left: 0;
  background-color: #fff;
  opacity: 0;
  transform: rotate(45deg);
  animation: reflection 2s ease-in-out infinite;
  -webkit-transform: rotate(45deg);
  -webkit-animation: reflection 2s ease-in-out infinite;
  -moz-transform: rotate(45deg);
  -moz-animation: reflection 2s ease-in-out infinite;
  -ms-transform: rotate(45deg);
  -ms-animation: reflection 2s ease-in-out infinite;
  -o-transform: rotate(45deg);
  -o-animation: reflection 2s ease-in-out infinite;
}
@keyframes reflection {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@-webkit-keyframes reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@-moz-keyframes reflection {
  0% {
    -moz-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -moz-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -moz-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -moz-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@-ms-keyframes reflection {
  0% {
    -ms-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -ms-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -ms-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -ms-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
@-o-keyframes reflection {
  0% {
    -o-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -o-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -o-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -o-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

.bnr_top_voice {
  margin: 0 auto;
  width: 1100px;
  -webkit-transform: translateY(-90px);
  -ms-transform: translateY(-90px);
  -o-transform: translateY(-90px);
  transform: translateY(-90px);
  border: 2px solid #c00;
}
.bnr_top_voice:hover {
  opacity: 0.7;
  transition: 0.3s;
}

@media (max-width: 767px) {
  .bnr_top_voice img {
    width: 100%;
  }
  .bnr_top_voice {
    margin: 10px auto 0;
    width: 94%;
    border: none;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
}

/* 200114 */
@media (min-width: 768px) {
  .bnr_top img {
    padding: 5px 5px;
  }
}
.bnr_top {
  margin: 0 auto;
  width: 1100px;
  transform: translateY(-90px);
}
/*.bnr_top img:hover {
    opacity: .7;
    transition: .3s;
}*/

@media (max-width: 767px) {
  .bnr_top img {
    width: 100%;
  }
  .bnr_top {
    margin: 10px auto 0;
    width: 94%;
  }
}
/*.philosophy{
	overflow: hidden;
}*/

/*200304 add*/
.bnr_top_online {
  margin: 0 auto;
  width: 1100px;
  transform: translateY(-105px);
}

.bnr_top_online img:hover {
  opacity: 0.7;
  transition: 0.3s;
}

/*200309*/
.bnr_top a {
  position: relative;
}
.bnr_top .online___icon {
  position: absolute;
  right: 95px;
  bottom: 156px;
  width: 113px;
  transform: rotate(7deg);
}
.popular-sec .online___icon {
  position: absolute;
  right: 10px;
  bottom: 331px;
  width: 144px;
  transform: rotate(7deg);
}

.bnr_top_voice .online___icon {
  position: absolute;
  width: 57px;
  right: 65px;
  bottom: 271px;
}
.sp_basic_detailimg .online___icon {
  width: 68px;
  position: absolute;
  right: 7px;
  bottom: 162px;
  transform: rotate(7deg);
}
/*200330*/
.bnr_top_online {
  position: relative;
}
.bnr_top_online .icon_book {
  position: absolute;
  right: -70px;
  top: -60px;
  transform: rotate(-4deg);
  z-index: 50;
}
@media (max-width: 767px) {
  .bnr_top_voice .icon_book {
    width: 20%;
    position: absolute;
    top: -15px;
    right: -6px;
  }
}
/*200409*/
@media (min-width: 768px) {
  .off20_icon {
    position: absolute;
    top: -274px;
    left: 303px;
  }
  #home-page .bnr_top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 4px;
  }
}
@media (max-width: 767px) {
  .contents .bnr_top_voice .off20_icon {
    position: absolute;
    width: 26%;
    top: 348px;
    left: 202px;
  }
  .about .tleft {
    padding: 0 15px;
  }
}
.contents .bnr_top_online {
  margin: 29px auto 0;
}

#home-page .popular-sec .online___icon {
  transform: rotate(7deg);
  width: 6vw;
  z-index: 1;
  bottom: auto;
  top: -3vw;
  right: 1vw;
}

/*201009書籍バナー追加--------------------------------------------------------------------------------------------*/
#newbook1009 .youtube_movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#newbook1009 .player {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

#newbook1009 .thumb {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

#newbook1009 .youtube_movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#newbook1009 .youtube_movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#newbook1009 .player {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

#newbook1009 .thumb,
#newbook1009 .youtube iframe {
  position: absolute;
  top: 170px;
  left: 50px;
  z-index: 1;
  width: 435px;
  height: 223px;
}

#newbook1009 .youtube_movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#newbook1009 .flex {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
  margin-bottom: 20px;
  flex-wrap: wrap;
  gap: 30px;
}

#newbook1009 .youtube {
  position: relative;
  width: 535px;
  height: 423px;
  background: url("../images/bnr_book_201008_movie.jpg");
}
.bnr_top #newbook1009 img {
  padding: 0;
}
@media (max-width: 767px) {
  #newbook1009 .youtube {
    position: relative;
    width: auto;
    height: 300px;
    /* height: auto; */
    background: url(../images/bnr_book_201008_movie.jpg);
    background-size: contain;
    background-repeat: no-repeat;
  }
  #newbook1009 .thumb,
  #newbook1009 .youtube iframe {
    position: absolute;
    top: 38%;
    left: 9%;
    z-index: 1;
    width: 81%;
    height: auto;
  }
}
@media (max-width: 320px) {
  #newbook1009 .youtube {
    height: 250px;
  }
}

img.icon_onlinecom_10off {
  position: absolute;
  top: -426px;
  right: 41px;
  width: 174px;
}
.popular img.icon_onlinecom_10off {
  position: absolute;
  top: -63px;
  right: 280px;
  width: 219px;
}
@media (max-width: 767px) {
  img.icon_onlinecom_10off {
    position: absolute;
    top: 288px;
    right: 20px;
    width: 120px;
  }
  .popular img.icon_onlinecom_10off {
    position: absolute;
    top: 134px;
    right: 77px;
    width: 93px;
  }
}

/*201130SPボタン色変更*/

.header .head-info li.for-com {
  background: #19375a;
}
.header .head-info .reservation {
  float: left;
  width: 50%;
  text-align: center;
  letter-spacing: 0;
}

/*201005 top info_covid追加-----------------------------------------------------------*/
@media (min-width: 768px) {
  .info_covid {
    margin: 0 auto 30px;
    width: 1100px;
    padding: 30px;
    border: 1px solid #eeeeee;
    text-align: center;
    transform: translateY(-90px);
  }
}

.info_covid a {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  font-size: 18px;
  margin-top: 5px;
}
.info_covid a:before {
  content: "";
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -4px;
}

@media (max-width: 767px) {
  .info_covid {
    padding: 20px;
    border: 1px solid #d1d1d1;
    text-align: center;
    margin: 40px 12px 12px;
  }
  .info_covid a {
    font-size: 14px;
  }
}

/*20210119*/
@media (min-width: 768px) {
  .info_covid {
    margin: 120px auto 0;
  }
}
@media (max-width: 767px) {
  .info_covid {
    margin: 30px 12px 30px;
  }
}
#newbook1009 .youtube {
  position: relative;
  width: 535px;
  height: 250px;
  background: url("../images/bnr_book_2021.jpg");
}
#newbook1009 .thumb,
#newbook1009 .youtube iframe {
  position: absolute;
  top: 88px;
  left: 11px;
  z-index: 1;
  width: 297px;
  height: 150px;
}
#newbook1009 {
  width: 100%;
}
#newbook1009 .youtube .link_amazon {
  position: absolute;
  bottom: 5px;
  right: 3px;
  width: 225px;
}
#newbook1009 .youtube .link_amazon:hover {
  bottom: 2px;
  transition: all 0.5s 0s ease;
}
@media (max-width: 767px) {
  #newbook1009 .youtube {
    position: relative;
    width: auto;
    height: 180px;
    background: url(../images/bnr_book_2021.jpg);
    background-size: contain;
    background-repeat: no-repeat;
  }
  #newbook1009 .thumb,
  #newbook1009 .youtube iframe {
    position: absolute;
    top: 61px;
    left: 11px;
    z-index: 1;
    width: 177px;
    height: 93px;
  }
  #newbook1009 .youtube .link_amazon {
    position: absolute;
    bottom: 24px;
    right: 10px;
    width: 40%;
  }
  #newbook1009 .youtube .link_amazon:hover {
    bottom: 21px;
    transition: all 0.5s 0s ease;
  }
}
#newbook1009 .youtube:hover {
  opacity: 1;
  cursor: default;
}
#newbook1009 .youtube img:hover {
  cursor: pointer;
  opacity: 0.7;
  transition: 0.3s;
}
/*20210122*/
#newbook1009 .bnr_cate {
  background: #9d9d9d;
  padding: 5px;
  display: block;
  width: 100%;
  margin: 60px auto 0;
  color: #fff;
  text-align: center;
  font-size: 20px;
}
/*#newbook1009 .bnr_cate.bnr_cate02 {
    background: #a89742;
}*/
#newbook1009 .bnr_cate strong {
  font-size: 1.2em;
}

/*20210406*/
.trial {
  padding: 80px 0;
  text-align: center;
}

.trial-list {
  position: relative;
  zoom: 1;
  max-width: 1100px;
  margin: 0 auto;
}
.trial-list:before,
.trial-list:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.trial-list:after {
  clear: both;
}
.trial-list .box-summary {
  overflow: hidden;
  -webkit-border-radius: 5px;
  border-radius: 5px;

  padding: 10px;
}
.trial-list .box-summary h3 {
  margin: 0;
  background: #c00;
  color: #fff;
  text-align: center;
  line-height: 1;
  padding: 20px;
  display: block;
}

.trial-list .box-summary h4 {
  color: #c00;
  font-weight: 500;
}
.trial-list.box-summary .inner {
  zoom: 1;
}
.trial-list.box-summary .inner:before,
.trial-list .box-summary .inner:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
}
.trial-list .box-summary .inner:after {
  clear: both;
}
.trial-list.box-summary .inner p {
  text-align: left;
}
.trial-list-text {
  text-align: left;
  display: block;
}
.trial-list-span {
  color: #cc0000;
  text-align: center;
  margin: 20px auto;
  display: block;
  font-weight: 600;
}

@media all and (min-width: 960px) {
  .trial-list .box-summary {
    margin-top: 50px;
  }
  .trial-list .box-summary h3 {
    padding: 20px;
    font-size: 30px;
  }
  .trial-list .box-summary h4 {
    margin-bottom: 15px;
    font-size: 24px;
  }
  .trial-list .box-summary .inner {
    border: 10px solid rgba(204, 0, 0, 0.1);
    padding: 20px;
    min-height: 300px;
  }
  .trial-list .box-summary {
    max-width: 550px;
  }
  .trial-list .item .trleft {
    float: left;
  }
  .trial-list .item .trright {
    float: right;
  }
}

@media screen and (max-width: 959px) {
  .trial-list.box-summary {
    margin-top: 30px;
    max-width: 550px;
  }
  .trial-list.box-summary h3 {
    padding: 15px;
    font-size: 24px;
  }
  .trial-list .box-summary h4 {
    margin-bottom: 15px;
    font-size: 20px;
  }
  .trial-list.box-summary .inner {
    border: 5px solid rgba(204, 0, 0, 0.1);
    padding: 15px;
  }
}

@media screen and (max-width: 767px) {
  .trial-list .item {
    float: none;
  }
  .trial-list .box-summary h3 {
    padding: 15px;
    font-size: 20px;
  }
  .trial-list .box-summary h4 {
    margin-bottom: 10px;
    font-size: 18px;
  }
  .trial-list .box-summary .inner {
    padding: 10px;
    border: 10px solid rgba(204, 0, 0, 0.1);
  }
}

@media (min-width: 960px) {
  .trial-list .item {
    padding: 0 10px;
    float: left;
  }
}

/*20210806------------------------------------------------------------------------------------------------*/

.camp_210806 {
  position: absolute;
  bottom: -31px;
  right: -34px;
  /*width: 123px;*/
}
.camp_210806_A {
  position: absolute;
  top: -73px;
  right: 59px;
  transform: rotate(4deg);
}

.pos_rel {
  position: relative;
}
@media (max-width: 959px) {
  img.camp_210806 {
    width: 25%;
  }
  img.camp_210806_A {
    width: 23%;
    right: 3px;
    top: -38px;
  }
}

/*20210824------------------------------------------------------------------------------------------------*/
#home-page .contents .front-course h2 {
  position: relative;
  padding: 20px;
  background: #fff;
  color: #c00;
  border: 3px solid #c00;
  font-size: 20px;
  margin-bottom: 30px;
  font-weight: 800;
  text-align: center;
  line-height: 1.2;
}
#home-page .contents .front-course h2:before {
  display: inline-block;
  position: absolute;
  content: "";
  width: 30px;
  height: 15px;
  margin-left: -15px;
  border-top-color: #c00;
  left: 50%;
  top: auto;
  bottom: -15px;
  border-top: 15px solid;
  border-right: 15px solid rgba(252, 252, 252, 0);
  border-left: 15px solid rgba(252, 252, 252, 0);
  z-index: 10;
  background: none;
}
#home-page .contents .front-course h2:after {
  display: inline-block;
  position: absolute;
  content: "";
  width: 30px;
  height: 15px;
  margin-left: -15px;
  left: 50%;
  top: auto;
  bottom: -11px;
  border-top: 15px solid #fff;
  border-right: 15px solid rgba(252, 252, 252, 0);
  border-left: 15px solid rgba(252, 252, 252, 0);
  z-index: 20;
  background: none;
}
#home-page .contents .front-course .blue {
  color: #19375a;
  border: 3px solid #19375a;
}
#home-page .contents .front-course .blue:before {
  border-top-color: #19375a;
}

@media screen and (max-width: 767px) {
  #home-page .contents .front-course h2 {
    font-size: 14px;
    padding: 10px;
  }
}

/*20211119------------------------------------------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .footer .foot-link .box-link a {
    padding: 2px 0;
    max-width: 280px;
    text-indent: -13px;
    margin-left: 13px;
    line-height: 1.5;
  }
}

/*20211222------------------------------------------------------------------------------------------------*/
@media (max-width: 959px) {
  img.camp_210806 {
    right: -15px;
  }
}

/*20220405------------------------------------------------------------------------------------------------*/
.contents .box-teacher .img img {
  display: inline-block;
  margin-top: 20px;
}
@media all and (min-width: 0px) and (max-width: 768px) {
  .contents .box-teacher .img img {
    margin-top: 0;
  }
}

/*20220406------------------------------------------------------------------------------------------------*/

#snsBox .twitter .line-inner {
  border-radius: 4px;
  box-sizing: border-box;
  text-align: center;
  border: 1px solid #ccc;
  padding: 20px;
  background: #fff;
}
div#snsBox .line .line-inner {
  display: flex;
  flex-flow: column;
  align-items: center;
}
div#snsBox .line .line-inner a {
  margin-top: auto;
  transition: 0.3s;
}
div#snsBox .line .line-inner a:hover {
  opacity: 0.7;
}

@media all and (min-width: 960px) {
  div#snsBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  div#snsBox .fb {
    width: 250px;
  }
  div#snsBox .insta {
    width: 250px;
    margin: 0;
  }
  div#snsBox .line {
    width: 250px;
  }
  div#snsBox .line .line-inner {
    min-height: 455px;
  }
  div#snsBox .twitter {
    width: 250px;
  }
  #snsBox .twitter .line-inner {
    min-height: 455px;
  }
}
@media screen and (max-width: 767px) {
  div#snsBox .line {
    margin: 0 0 40px;
  }
}

/*20220418------------------------------------------------------------------------------------------------*/
.bnr_subscription {
  display: block;
  text-decoration: none;
}
.bnr_subscription p {
  font-size: 30px;
  text-align: center;
  padding: 12px 0;
  font-weight: bold;
  margin: 0;
  line-height: 1;
  background: #19375b;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .bnr_subscription p {
    font-size: 20px;
  }
}

/*20220422------------------------------------------------------------------------------------------------*/

#home-page .contents .course .popular .parts .camp_ribbon_2204 {
  position: absolute;
  width: 20%;
  z-index: 1;
  top: -5%;
  left: 5%;
  transform: rotate(-15deg);
}
.bnr_top a .camp_10off_2204 {
  position: absolute;
  z-index: 1;
  bottom: -30px;
  right: -30px;
  width: 30%;
}
#home-page .contents .course .popular .popular-sec .camp_10off_2204 {
  position: absolute;
  z-index: 1;
  top: -40px;
  left: 400px;
  right: auto;
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .popular .parts .camp_ribbon_2204 {
    width: 40%;
    top: 5%;
    left: 0%;
  }

  #home-page .contents .course .popular .parts .camp_10off_2204 {
    position: absolute;
    z-index: 1;
    top: 10px;
    right: 0;
    width: 25%;
  }

  .pos_rel a img.camp_10off_2204 {
    position: absolute;
    width: 25%;
    bottom: -15px;
    right: -5px;
  }
}

#home-page .contents .course .popular .popular-sec .camp_10off_2204 {
  left: auto;
  width: 10vw;
  right: 5%;
}

.lessonroom_flex {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
}

.lessonroom_flex_item {
  width: calc((100% - 3rem * 2) / 3);
}

.access_flex {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin-bottom: 80px;
}
.access_flex_item {
  width: calc((100% - 2rem * 2) / 3);
}
.access_flex_item_conts {
  display: flex;
  margin-bottom: 2rem;
  gap: 1rem;
  align-items: center;
}
.access_flex_item_img {
  width: calc(30% - 1rem);
}
.access_flex_item_text {
  width: 70%;
  text-align: left;
}
.access_flex_item_text h3 {
  color: #c00;
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 1rem;
}

.access_flex_item_text p {
  font-size: 15px;
}
.access_flex_item_map {
  margin-top: auto;
}
.access_flex_item_map iframe {
  max-width: 100%;
}
.access .cnt-inner {
  max-width: 1100px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .lessonroom_flex_item {
    width: 100%;
  }
  .access_flex_item {
    width: 100%;
  }
  .access .cnt-inner {
    max-width: 90%;
  }
  .access_flex {
    gap: 4rem;
  }
}

@media screen and (max-width: 767px) {
  .bnr_top {
    transform: none;
  }
}

.header .head-info li.recruit {
  background: #167db3;
  text-align: center;
}

.header .head-info li.recruit a {
  width: 150px;
  font-size: 12px;
  color: #fff;
}
.header .head-info li.recruit i {
  display: block;
  margin-bottom: 5px;
  font-size: 23px;
}

.icon-recruit:before {
  content: "";
  background-image: url("../images/recruit_icon.png");
  background-position: center;
  background-repeat: no-repeat;
  display: block;
  margin: 0 auto;
}
.header .head-info li.recruit i.icon-recruit:before {
  width: 27px;
  height: 26px;
}

.header .head-info li.plus-cue {
  background: #49b6c4;
  text-align: center;
  margin-right: 1px;
}

.header .head-info li.plus-cue a {
  width: 150px;
  font-size: 12px;
  color: #fff;
}
.header .head-info li.plus-cue i {
  display: block;
  margin-bottom: 5px;
  font-size: 23px;
}

.icon-plus-cue:before {
  content: "";
  background-image: url("../images/plus-cue_icon.png");
  background-position: center;
  background-repeat: no-repeat;
  display: block;
  margin: 0 auto;
}
.header .head-info li.plus-cue i.icon-plus-cue:before {
  width: 27px;
  height: 26px;
}

@media (min-width: 960px) {
  .header .head-info {
    display: flex;
    justify-content: flex-end;
    width: 60%;
  }
  .header .head-info li.head-btn {
    display: flex;
    width: 15%;
    justify-content: center;
    padding: 0 5px;
    align-items: stretch;
  }

  .header .head-info li.head-btn a {
    display: flex;
    flex-flow: column;
    justify-content: center;
    height: 100%;
  }
}
@media screen and (max-width: 959px) {
  .header .head-info li.for-com {
    width: 50%;
    margin-right: 0;
  }
  .header .head-info li.recruit {
    width: 50%;
    float: left;
  }

  .header .head-info li.recruit a {
    padding: 20px 0;
    font-size: 11px;
    font-weight: 700;
    width: 100%;
  }
  .header .head-info li.recruit i.icon-recruit:before {
    height: 24px;
  }
  .header .head-info li.plus-cue {
    width: 50%;
    float: left;
    margin-right: 0;
  }

  .header .head-info li.plus-cue a {
    padding: 20px 0;
    font-size: 11px;
    font-weight: 700;
    width: 100%;
  }
  .header .head-info li.plus-cue i.icon-plus-cue:before {
    height: 24px;
  }
}

@media (max-width: 1400px) {
  .header .head-txt {
    display: none;
  }
}

@media all and (min-width: 959px) and (max-width: 1150px) {
  .header .gnav a {
    font-size: 13px;
  }

  .header .head-info li.head-btn a {
    font-size: 11px;
  }
}

.worry-list ul {
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
}

.worry-list ul li {
  width: calc((100% - 40px * 2) / 3);
}

.worry-list-item {
  text-align: center;
}

.worry-list-item-text {
  background: #ededed;
  border-radius: 10px;
  font-size: 18px;
  color: rgb(51, 51, 51);
  line-height: 1.778;
  padding: 30px 20px;
  font-weight: 500;
  position: relative;
  margin-bottom: 15px;
}
.worry-list-item-text::after {
  position: absolute;
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  background-image: url(../../images/index/worry-list-text.png);
  background-position: top right;
  background-repeat: no-repeat;
  bottom: -50px;
  right: 60px;
}
#home-page .contents .faq h3 i span {
  background: #c00;
}

#home-page .contents .faq h3 span {
  padding: 0 30px 0 15px;
}

@media screen and (max-width: 959px) {
  #home-page .contents .worry .cnt-inner {
    margin: 0 10px;
  }
  .worry-list ul li {
    width: 100%;
  }
  .worry-list-item-text {
    padding: 15px;
    font-size: 16px;
    line-height: 1.4;
  }
  #home-page .contents .faq-section .cnt-inner {
    max-width: 90%;
  }
  #home-page .contents .faq h3 i span,
  #home-page .contents .faq .answer i span {
    width: 30px;
    font-size: 16px;
    line-height: 30px;
    padding: 0;
  }
  #home-page .contents .faq .answer i span {
    line-height: 24px;
  }
}

/*20240105------------------------------------------------------------------------------------------------*/

#home-page .contents h2 {
  line-height: 1.4;
}

.contents .box-teacher h3 {
  font-weight: bold;
}

.contents .box-teacher dd span {
  font-weight: bold;
  font-size: 14px;
}

#home-page .contents .exective {
  padding: 80px 0;
}

@media screen and (max-width: 767px) {
  #home-page .contents .exective {
    padding: 40px 0;
  }
}

#home-page .contents .exective .cnt-inner {
  background: rgba(255, 255, 255, 0.9);
  padding: 0px;
  max-width: 1100px;
  margin: 0 auto;
  box-shadow: none;
}

#home-page .contents .exective h2 {
  color: #c60000;
  font-size: 36px;
  font-weight: normal;
  letter-spacing: -0.5px;
}

@media screen and (max-width: 767px) {
  #home-page .contents .exective h2 {
    color: #c60000;
    font-size: 22px;
    font-weight: normal;
    letter-spacing: -0.5px;
  }
}

#home-page .contents .exective h2 span {
  font-size: 26px;
  font-weight: 500;
  display: inline;
}

@media screen and (max-width: 767px) {
  #home-page .contents .exective h2 span {
    font-size: 18px;
    font-weight: 500;
    display: inline;
  }
}

.exective-voice-list ul {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 0 auto;
  flex-wrap: wrap;
  /*gap: 40px;*/
  gap: 30px;
  /*max-width: 900px;*/
}

.exective-voice-list li {
  width: calc((100% - 30px * 2) / 3);
  border-radius: 5px;
  box-shadow: 0 0 19.2px 0.8px rgba(0, 0, 0, 0.1);
  background: #fff;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .exective-voice-list li {
    width: 100%;
  }
}

.exective-voice-list li a {
  width: 100%;
}
.exective-voice-list li a img {
  width: 100%;
}
.exective-voice-list li .txt {
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 20px;
  text-align: left;
}
.exective-voice-list li .txt p {
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .exective-voice-list li .txt {
    gap: 10px;
  }
}

.exective-voice-list h3 {
  font-size: 19px;
  text-align: left;
  line-height: 1.4 !important;
  margin-bottom: 0;
  letter-spacing: 0;
  color: #c00;
  font-weight: bold;
  display: flex;
  flex-flow: column;
  justify-content: center;
}

@media screen and (max-width: 767px) {
  .exective-voice-list h3 {
    font-size: 16px;
    text-align: center;
  }
}

#home-page .contents .exective p {
  text-align: left;
  line-height: 1.8;
}

#home-page .contents .course {
}

#home-page .contents .course .popular .parts {
  padding-bottom: 0px;
}

#home-page .contents .course .popular .parts + .parts {
  padding-top: 50px;
}

#home-page .contents .attention-course {
  background-color: #f8f8f8;
}

@media screen and (max-width: 768px) {
  .bnr_top {
    width: 100%;
  }
}

#home-page #newbook1009 {
  width: 100%;
  padding: 40px;
  background: #fff;
  -webkit-border-radius: 10px;
  border-radius: 30px;
  box-shadow: 0px 0px 9.6px 0.4px rgba(0, 0, 0, 0.1);
  text-align: center;
  margin: 0 auto;
  width: 1100px;
}

@media screen and (max-width: 768px) {
  #home-page #newbook1009 {
    width: 90%;
    padding: 40px;
    background: #fff;
    -webkit-border-radius: 10px;
    border-radius: 30px;
    box-shadow: 0px 0px 9.6px 0.4px rgba(0, 0, 0, 0.1);
    text-align: center;
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  #home-page #newbook1009 {
    width: 90%;
    padding: 10px;
    transform: translateY(0px);
    padding-bottom: 20px;
    border-radius: 5px;
  }
}

#newbook1009 .flex {
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
  margin-bottom: 20px;
  flex-wrap: nowrap;
  gap: 27px;
}

@media screen and (max-width: 768px) {
  #newbook1009 .flex {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
    margin-bottom: 20px;
    flex-wrap: nowrap;
    gap: 27px;
    flex-direction: column;
  }
}

@media screen and (max-width: 767px) {
  #newbook1009 .flex {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
    margin-bottom: 20px;
    flex-wrap: nowrap;
    gap: 27px;
    flex-direction: column;
  }
}

#home-page .contents #newbook1009 h3 {
  padding: 0;
  border: none;
  background: none;
  line-height: 1;
  text-align: center;
  color: #c00;
  font-weight: 400;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic,
    "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo",
    sans-serif;
  font-size: 32px;
  position: relative;
  display: inline-block;
  margin-bottom: 0px;
  background: #fff;
  padding: 0px 20px;
}

@media screen and (max-width: 767px) {
  #home-page .contents #newbook1009 h3 {
    margin-top: 40px;
    font-size: 20px;
  }
}

#home-page .contents #newbook1009 h3::before {
  content: "";
  display: inline-block;
  width: 324px;
  height: 2px;
  color: #c00;
  position: absolute;
  top: 40%;
  left: -50%;
  z-index: -1;
}

@media screen and (max-width: 767px) {
  #home-page .contents #newbook1009 h3::before {
    content: "";
    display: inline-block;
    width: 240px;
    height: 2px;
    color: #c00;
    position: absolute;
    top: 40%;
    left: -50%;
    z-index: -1;
  }
}

#home-page .contents .pickUp {
  padding: 80px 0 0;
}

@media screen and (max-width: 767px) {
  #home-page .contents .pickUp {
    padding: 40px 0;
  }
}

#home-page .contents .course .popular {
  margin-top: 0px;
}

#home-page .contents .course .pickup {
  padding-top: 0px;
}

#home-page .bnr_top {
  display: flex;
  justify-content: space-between;
  margin-bottom: 4px;
  flex-direction: column;
  gap: 0px;
  transform: none;
}

#home-page .contents .pickUp .btn-link {
  padding: 0px 0 0;
}

#home-page .contents .top-voice {
  padding: 80px 0 20px;
  text-align: center;
}

@media screen and (max-width: 767px) {
  #home-page .contents .top-voice {
    padding: 40px 0 20px;
  }
}

#home-page .contents .top-voice h2 {
  background: none;
  display: inline-block;
  position: relative;
  border: 3px solid #cc0000;
  border-radius: 50px;
  padding: 20px 80px;
  line-height: 1;
  background: #fff;
}

@media screen and (max-width: 767px) {
  #home-page .contents .top-voice h2 {
    background: none;
    display: inline-block;
    position: relative;
    border: 3px solid #cc0000;
    border-radius: 50px;
    padding: 10px 50px;
    line-height: 1;
  }
}

#home-page .contents .top-voice h2::before {
  content: "";
  position: absolute;
  display: inline-block;
  top: 110%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-top: 20px solid #fff;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  z-index: 2;
  background-color: transparent;
}

#home-page .contents .top-voice h2::after {
  content: "";
  position: absolute;
  display: inline-block;
  top: 116%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-top: 20px solid #cc0000;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  background-color: transparent;
}

@media screen and (max-width: 767px) {
  #home-page .contents .top-voice h2::before {
    content: "";
    position: absolute;
    display: inline-block;
    top: 112%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-top: 15px solid #fff;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    z-index: 2;
    background-color: transparent;
  }

  #home-page .contents .top-voice h2::after {
    content: "";
    position: absolute;
    display: inline-block;
    top: 118%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-top: 15px solid #cc0000;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    background-color: transparent;
  }
}

#home-page .contents h2 span {
  margin-bottom: 0px;
  font-size: 38px;
}

@media screen and (max-width: 767px) {
  #home-page .contents h2 span {
    margin-bottom: 0px;
    font-size: 28px;
  }
}

#home-page .contents .lead {
  padding: 0px 0 80px;
}

@media screen and (max-width: 767px) {
  #home-page .contents .lead {
    padding: 0px 0 40px;
  }
}

#home-page .contents .lesson {
  padding: 50px 0 80px;
  border-top: none;
}

#home-page .contents .worry {
  background: #f8f8f8;
}

#home-page .contents .about {
  background: #fff;
}

#home-page .contents .lesson {
  background: #eee;
}

@media screen and (max-width: 767px) {
  #home-page .contents .lesson {
    /*margin-top: 40px;*/
    padding: 40px 0 50px;
    background: #eee;
  }
}

#home-page .contents .lesson h1 {
  font-size: 44px;
  margin-bottom: 40px;
  color: #c00;
  line-height: 1.4;
  font-weight: 500;
}

#home-page .contents .lesson .lesson-ttl {
  width: 240px;
  margin: 0 auto;
  top: -50px;
  left: 50%;
  bottom: 100%;
  transform: translateX(-50%);
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
}

#home-page .contents .lesson .lesson-ttl::before {
  content: "";
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: -1;
  background: #eee;
  transform: scaleY(1.3) perspective(0.6em) rotateX(3deg);
  transform-origin: bottom;
  z-index: 0;
  width: 240px;
  border-radius: 10px 10px 0 0;
}

#home-page .contents .lesson-ttl span {
  background: none;
  padding-bottom: 0;
  position: relative;
  color: #c00;
  font-weight: 400;
  font-size: 28px;
  line-height: 1;
  padding-top: 10px;
}
@media screen and (max-width: 767px) {
  #home-page .contents .lesson-ttl span {
    font-size: 20px;
  }

  #home-page .contents .lesson h1 {
    font-size: 28px;
  }
}

#home-page .contents .results {
  background: #fff;
}
#home-page .contents .lessonroom {
  background: #eee;
}

@media screen and (max-width: 959px) {
  #home-page .contents .cnt-inner {
    max-width: 90% !important;
    margin: 0 auto;
  }
}

@media screen and (max-width: 959px) {
  #home-page .contents .worry .cnt-inner {
    margin: auto;
  }
}

@media screen and (max-width: 959px) {
  #home-page .contents .course .cnt-inner.course-lead {
    margin: 20px auto 0px;
  }
}

.btn-link-flex {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  margin-top: 20px;
}
#home-page .contents .course .popular .popular-sec .btn-link-flex .btn-link {
  padding: 0;
  max-width: 400px;
}

@media (max-width: 1150px) {
  #home-page .contents .course .popular .popular-sec .btn-link-flex .btn-link {
    width: 100%;
    text-align: center;
    padding: 0;
    max-width: 400px;
  }
  #home-page
    .contents
    .course
    .popular
    .popular-sec
    .btn-link-flex
    .btn-link
    a {
    padding: 0;
    width: 100%;
  }
}
@media screen and (max-width: 959px) {
  #home-page .contents .course .popular .popular-sec .btn-link-flex .btn-link {
    width: 100%;
    text-align: center;
    padding: 0;
    max-width: 400px;
  }
  #home-page
    .contents
    .course
    .popular
    .popular-sec
    .btn-link-flex
    .btn-link
    a {
    padding: 20px 0;
    width: 100%;
  }
}

.pickUp-online {
  border-radius: 30px;
  overflow: hidden;
  position: relative;
  border: 3px solid #dbdbdb;
  padding: 60px 50px;
  background: #fff;
  margin-top: 60px;
  margin-left: auto;
  margin-right: auto;
  z-index: 0;
  max-width: 1100px;
  width: 100%;
}
.pickUp-online_img {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  line-height: 1;
  right: 0;
  z-index: -1;
  height: 100%;
}
.pickUp-online_img img {
  padding: 0;
  width: auto;
  height: 100%;
  max-width: none;
}

.pickUp-online_title {
  font-size: 26px;
  color: rgb(204, 0, 0);
  line-height: 1.5;
  margin-bottom: 25px;
  font-weight: 500;
}
.pickUp-online_title span {
  font-size: 36px;
}
.pickUp-online_title span.bold {
  font-weight: bold;
}

.pickUp-online_text {
  font-size: 18px;
  line-height: 1.556;
  font-weight: 600;
  margin-bottom: 30px;
}

.pickUp-online_btn a {
  background: #c00;
  color: #fff;
  padding: 22px;
  border-radius: 3px;
  text-decoration: none;
  display: inline-block;
  font-weight: 500;
  transition: 0.3s;
}
.pickUp-online_btn a:hover {
  opacity: 0.8;
}

@media screen and (max-width: 767px) {
  .pickUp-online {
    width: 90%;
    padding: 20px;
    border-radius: 10px;
  }

  .pickUp-online_title {
    font-size: 22px;
    margin-bottom: 10px;
  }

  .pickUp-online_title span {
    font-size: 25px;
  }

  .pickUp-online_img {
    opacity: 0.2;
    right: -140px;
  }

  .pickUp-online_img img {
  }
}

.qualification {
  border-radius: 30px;
  overflow: hidden;
  position: relative;
  border: 5px solid #dbdbdb;
  padding: 55px 70px;
  background: #f7f7f7;
  margin-top: 35px;
  margin-bottom: 35px;
  margin-left: auto;
  margin-right: auto;
  z-index: 0;
  max-width: 1100px;
  width: 100%;
}
.qualification_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.qualification_img {
  width: 39%;
}
.qualification_img img {
  padding: 0;
}

.qualification_textbox {
  width: calc(100% - 39%);
}
.qualification_title {
  font-size: 26px;
  color: rgb(204, 0, 0);
  line-height: 1.5;
  margin-bottom: 25px;
  font-weight: 500;
}
.qualification_title span {
  font-size: 36px;
}
.qualification_title span.bold {
  font-weight: 700;
}

.qualification_text {
  font-size: 16px;
  line-height: 1.75;
  font-weight: 600;
}

.qualification_btn a {
  background: #c00;
  color: #fff;
  padding: 22px;
  border-radius: 3px;
  text-decoration: none;
  display: inline-block;
  font-weight: 500;
  transition: 0.3s;
}
.qualification_btn a:hover {
  opacity: 0.8;
}

@media screen and (max-width: 767px) {
  .qualification {
    width: 90%;
    padding: 20px;
    border-radius: 10px;
    margin-top: 40px;
    margin-bottom: 40px;
  }

  .qualification_title {
    font-size: 22px;
    margin-bottom: 10px;
  }

  .qualification_title span {
    font-size: 25px;
  }
  .qualification_flex {
    display: flex;
    gap: 20px;
  }
  .qualification_textbox {
    width: 100%;
  }
  .qualification_img {
    width: 100%;
  }
  .pickUp-online_btn a {
    width: 100%;
  }
}

@media screen and (min-width: 960px) and (max-width: 1400px) {
  #home-page .contents .course .cnt-inner.course-lead {
    margin: 40px auto 60px;
  }
  #home-page .contents .course .popular .popular-sec h3 .camp {
    padding-top: 40px;
  }
  #home-page .contents .course .popular .parts .camp_10off_2204 {
    top: -20px;
  }
  #home-page .contents .course .popular .parts .camp_ribbon_2204 {
    width: 20%;
    top: -5%;
    left: 5%;
  }
}
/*240513_キャンペーン公開後修正*/
@media screen and (min-width: 960px) and (max-width: 1400px) {
  #home-page .contents .course .popular .parts .camp_10off_2204 {
    right: -7%;
  }
}
.reflection {
  display: none;
}

#home-page .contents .pickUp .btn-link.btn-big a {
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 0.5px;
}
@media screen and (min-width: 960px) {
  #home-page .contents .pickUp .btn-link.btn-big a {
    min-width: 720px;
    line-height: 70px;
  }
}

#home-page .contents .lesson {
  background: #fff;
  box-shadow: 0px -7px 15px 0px rgba(0, 0, 0, 0.1);
}
#home-page .contents .lesson .lesson-ttl::before {
  background: #fff;
}

@media screen and (max-width: 960px) {
  #home-page .contents .lesson {
    margin-top: 65px;
    box-shadow: none;
    padding: 0 0 50px;
  }
  #home-page .contents .lesson .lesson-ttl::before {
    content: none;
  }
}

.cnt-inner {
  max-width: 1100px;
  margin: 0 auto;
}

.message {
  padding: 80px 0;
}
.exective_slide {
  padding: 80px 0;
}
.strengths {
  padding: 80px 0;
}

#home-page .contents .message h2 {
  font-size: 44px;
  color: rgb(204, 0, 0);
  font-weight: bold;
  line-height: 1.364;
  margin-bottom: 25px;
  font-family: "Noto Serif JP";
}

#home-page .contents .section .cnt-inner h2 {
  font-size: 44px;
  font-family: "Noto Sans CJK JP";
  color: rgb(204, 0, 0);
  font-weight: 500;
  line-height: 1.364;
  margin-bottom: 25px;
}

#home-page .contents .cnt-inner p {
  font-size: 20px;
  color: rgb(51, 51, 51);
  line-height: 1.6;
  font-weight: 600;
}

ul.message-circle-list {
  display: flex;
  flex-wrap: wrap;
  gap: 35px;
}

ul.message-circle-list li {
  width: calc((100% - 35px * 3) / 4);
}

.message-circle-item {
  border: 4px solid #cc0000;
  border-radius: 100%;
  padding-top: 100%;
  position: relative;
  background: #fff;
}

.message-circle-item-inner {
  padding-top: 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  width: 100%;
  color: #cc0000;
  font-weight: bold;
  font-size: 24px;
  font-feature-settings: "palt";
  letter-spacing: -0.5px;
  line-height: 1.8;
}

.message-circle-item-inner span {
  font-size: 34px;
  line-height: 1.4;
}

.message-circle-item-inner span.num {
  font-size: 46px;
  line-height: 1.2;
}
.exective_slide-list {
  position: relative;
}

.exective_slide-list-item {
  padding: 15px;
  height: 100%;
}
.exective_slide-list-item a {
  display: block;
  border-radius: 5px;
  background-color: rgb(255, 255, 255);
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.2);
  padding: 20px;
  height: 100%;
  text-decoration: none;
  transition: 0.3s;
}
.exective_slide-list-item a:hover {
  opacity: 0.8;
}

.exective_slide-list .slick-track {
  display: flex;
}

.exective_slide-list .slick-slide {
  height: auto !important;
}

.exective_slide-list-item .img {
  height: 190px;
  overflow: hidden;
  line-height: 1;
  font-size: 0;
  margin-bottom: 15px;
  text-align: center;
}
.exective_slide-list-item .img img {
  margin: 0 auto;
  max-width: none;
  height: 100%;
}
.exective_slide-list-item .txt {
  text-decoration: none;
}
.exective_slide-list-item .txt h3 {
  font-size: 14px;
  color: rgb(51, 51, 51);
  line-height: 1.571 !important;
  font-weight: 500;
  margin: 0;
  font-weight: 600;
}
.exective_slide-list-item .txt h3 span {
  font-size: 18px;
}

.exective_slide-list .slick-arrow {
  position: absolute;
  color: #c00;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}
.exective_slide-list .slick-arrow i {
  font-size: 20px;
}
.exective_slide-list .slick-next {
  right: -30px;
}
.exective_slide-list .slick-prev {
  left: -30px;
  transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}

.strengthslist li + li {
  margin-top: 60px;
}
.strengthslist li:nth-child(2n) .strengthslist-item-text {
  order: 2;
}
.strengthslist li:nth-child(2n) .strengthslist-item-img {
  order: 1;
}

.strengthslist-item {
  display: flex;
  gap: 100px;
  align-items: center;
  flex-wrap: wrap;
}

.strengthslist-item-text {
  width: calc(50% - 100px);
}

.strengthslist-item-img {
  width: 50%;
}

.strengthslist-item-text-num {
  background: #c00;
  color: #fff;
  border-radius: 5px;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  flex-flow: column;
  font-feature-settings: "palt";
  line-height: 1.1;
  letter-spacing: -0.3px;
  font-family: "Roboto Condensed";
}

.strengthslist-item-text-num span {
  display: block;
  font-size: 28px;
}

.strengthslist-item-title {
  font-size: 28px;
  color: rgb(204, 0, 0);
  line-height: 1.857;
  font-weight: 600;
  margin: 15px 0;
}

.strengthslist-item-text p {
  font-size: 18px;
  color: rgb(51, 51, 51);
  line-height: 1.611;
  font-weight: 500;
}

.contents .box-teacher {
  position: relative;
}
.contents .box-teacher .executive {
  position: absolute;
  right: 0;
  top: -20px;
  width: 70px;
  height: 70px;
  background: #c69a00;
  border-radius: 100%;
  padding-top: 5px;
  color: #fff;
  line-height: 1.2;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-weight: 500;
  transform: rotate(10deg);
}

#home-page .contents .teacher .slick-list {
  padding: 25px 0 5px !important;
}

.course-balloon {
  background: #f7d9d9;
  text-align: center;
  padding: 16px 10px 14px;
  position: relative;
  font-size: 30px;
  color: #cc0000;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 35px;
  margin-bottom: 50px;
}
.course-balloon::after {
  position: absolute;
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 15px solid transparent;
  border-left: 15px solid transparent;
  border-top: 20px solid #f7d9d9;
  border-bottom: 0;
  left: 50%;
  bottom: -20px;
  transform: translateX(-50%);
}

.course-link {
  background: #fff;
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  overflow: hidden;
  margin-bottom: 50px;
}

.course-link-title {
  background: #c00;
  padding: 13px 20px;
  font-size: 28px;
  color: #fff;
  font-weight: bold;
  display: flex;
  align-items: center;
}
.course-link-title .icon-arrow {
  margin-left: auto;
  margin-right: 0;
  font-size: 19px;
}
.course-link-title a {
  color: #fff;
  text-decoration: none;
}

.course-link-conts {
  padding: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  align-items: center;
}

.course-link-conts-img {
  width: 44.5%;
  order: 1;
}

.course-link-conts-text {
  width: calc(100% - 44.5% - 50px);
  order: 2;
}

.course-link-conts-text-title {
  color: #c00;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.5;
}

.course-link-conts-text p {
  font-size: 18px;
  color: rgb(51, 51, 51);
  line-height: 1.611;
  font-weight: 500;
}

ul.course-link-conts-text-checklist li {
  font-size: 18px;
  color: rgb(51, 51, 51);
  line-height: 1.778;
  font-weight: 600;
  text-indent: -24px;
  padding-left: 24px;
}
ul.course-link-conts-text-checklist li .icon-check {
  margin-right: 5px;
  color: #c00;
}
ul.course-link-conts-text-checklist li {
  font-size: 18px;
  color: rgb(51, 51, 51);
  line-height: 1.778;
  font-weight: 600;
}
ul.course-link-conts-text-checklist li .icon-check {
  margin-right: 5px;
  color: #c00;
}

.course-link-flex {
  display: flex;
  flex-wrap: wrap;
  gap: 80px;
}

.course-link-flex .course-link {
  width: calc((100% - 80px) / 2);
  margin: 0;
}

.course-link-flex .course-link-conts {
  gap: 20px;
}

.course-link-flex .course-link-conts-text {
  width: 100%;
}

.course-link-flex .course-link-conts-img {
  width: 100%;
}
ul.media-list {
  gap: 40px;
  display: flex;
  flex-wrap: wrap;
}

ul.media-list li {
  width: calc((100% - 40px * 3) / 4);
}

.media-list-item-text {
  text-align: center;
  font-size: 14px;
  letter-spacing: -0.5px;
  font-weight: 500;
  line-height: 1.8;
  margin-top: 1rem;
}
.media-list-item-text span {
  font-size: 16px;
  font-weight: 600;
}

ul.access_list {
  display: flex;
  flex-wrap: wrap;
  gap: 48px;
  margin-top: 50px;
}

ul.access_list li {
  width: calc((100% - 48px * 2) / 3);
}

.access_list_item_name {
  font-size: 25px;
  font-weight: 600;
  margin-bottom: 10px;
}

.access_list_item a {
  margin-top: 1rem;
  display: inline-block;
  color: #c00;
  font-size: 14px;
}

.access_list_item a .icon-arrow {
  font-size: 10px;
  vertical-align: middle;
}

.bg-gray {
  background: #f8f8f8;
}

@media screen and (max-width: 767px) {
  #home-page .contents .message h2 {
    font-size: 22px;
  }

  #home-page .contents .cnt-inner p {
    font-size: 16px;
  }

  ul.message-circle-list li {
    width: calc((100% - 15px) / 2);
  }

  ul.message-circle-list {
    gap: 15px;
  }

  .message-circle-item-inner {
    font-size: 16px;
  }

  .message-circle-item-inner span {
    font-size: 20px;
  }

  .message-circle-item-inner span.num {
    font-size: 25px;
  }

  #home-page .contents .section .cnt-inner h2 {
    font-size: 22px;
  }

  .strengthslist-item-text {
    width: 100%;
  }

  .strengthslist-item-img {
    width: 100%;
  }

  .strengthslist-item {
    gap: 20px;
  }

  .strengthslist-item-title {
    font-size: 20px;
  }

  .strengthslist li:nth-child(2n) .strengthslist-item-text {
    order: 1;
  }

  .course-link-conts-text {
    width: 100%;
  }

  .course-link-conts-img {
    width: 100%;
  }

  .course-link-title {
    font-size: 20px;
  }

  .course-balloon {
    font-size: 20px;
  }

  .course-link-conts {
    gap: 20px;
  }

  .course-link-conts-text-title {
    font-size: 20px;
  }

  .course-link-flex .course-link {
    width: 100%;
  }

  .course-link-flex {
    gap: 50px;
  }

  .exective_slide-list .slick-prev {
    left: -10px;
  }

  .exective_slide-list .slick-next {
    right: -10px;
  }

  .contents .box-teacher .executive {
    font-size: 12px;
    width: 60px;
    height: 60px;
    padding: 5px;
  }

  ul.access_list li {
    width: 100%;
  }

  ul.access_list {
    gap: 20px;
  }

  ul.media-list {
    gap: 20px;
  }

  ul.media-list li {
    width: calc((100% - 20px) / 2);
  }
}

.course-link-conts-img.coming-soon {
  position: relative;
}

.course-link-conts-img.coming-soon::before {
  content: "";
  background: rgb(0 0 0 / 50%);
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

p.coming-soon-txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff !important;
  width: 100%;
  text-align: center;
  text-shadow: 0px 0px 14px #000;
}

.free-trial-counseling {
  border: 10px solid #f9e4e4;
  background: #fff;
  position: relative;
}
.free-trial-counseling-conts {
  padding: 45px;
  position: relative;
  z-index: 1;
}

.free-trial-counseling-conts-title {
  font-size: 36px;
  line-height: 1.2;
  color: rgb(204, 0, 0);
  font-weight: 500;
  margin-bottom: 15px;
}
.free-trial-counseling-conts-text {
  font-size: 18px;
  color: rgb(17, 17, 17);
  line-height: 1.444;
  font-weight: 500;
  margin-bottom: 15px;
}
.free-trial-counseling-conts-text-list {
  display: flex;
  flex-wrap: wrap;
  background: #f6f6f6;
  padding: 20px;
  max-width: 450px;
  gap: 0 20px;
}

.free-trial-counseling-conts-text-list li {
  color: rgb(51, 51, 51);
  line-height: 1.625;
  font-weight: 500;
  position: relative;
  padding-left: 1.2rem;
}
.free-trial-counseling-conts-text-list li::after {
  position: absolute;
  content: "";
  display: block;
  top: 9px;
  left: 0;
  width: 12px;
  height: 7px;
  border-left: 3.5px solid #cc0000;
  border-bottom: 3.5px solid #cc0000;
  transform: rotate(-45deg);
}

.free-trial-counseling .btn-link {
  padding-top: 25px;
  text-align: left;
}
.free-trial-counseling .btn-link a {
  text-align: center;
}

.free-trial-counseling-img {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
}
.free-trial-counseling-img img {
  max-width: none;
  height: calc(100% + 2px);
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.free-trial-counseling-conts-text-list li i {
  color: #c00;
}
@media screen and (max-width: 767px) {
  .free-trial-counseling-conts {
    padding: 20px;
  }

  .free-trial-counseling-conts-title {
    font-size: 24px;
    text-align: center;
  }
  .free-trial-counseling-img {
    opacity: 0.4;
  }

  .free-trial-counseling-img img {
    filter: blur(10px);
    right: -15%;
  }

  .free-trial-counseling-conts-text {
    font-size: 18px;
    text-align: center;
  }
}

/* 250109 */
.lesson p.search-course {
  position: relative;
  padding: 0 65px;
  text-align: center;
  font-weight: bold;
  margin-top: 3rem;
  margin-bottom: 2rem;
}

.lesson p.search-course:before {
  position: absolute;
  top: calc(50% - 1px);
  left: 50%;
  transform: translateX(-50%);
  width: 75%;
  height: 8px;
  content: "";
  background-color: rgb(240, 240, 240);
}

.lesson p.search-course span.border {
  position: relative;
  padding: 0 1em;
  background: #fff;
}

.lesson p.search-course span.hlt {
  font-size: 24px;
  color: #c00;
}

@media screen and (max-width: 959px) {
  #home-page .contents .lesson dl.sp-concern {
    width: 50%;
  }
  #home-page .contents .lesson dd.sp-concern {
    text-decoration: underline;
  }

  #home-page .contents .lesson dt.sp-concern a img {
    width: 70%;
  }
}
/* フッター */
@media (min-width: 960px) {
  .footer .foot-link {
    max-width: 1320px;
    margin: auto;
    padding: 50px 0;
    zoom: 1;
    overflow: hidden;
  }
}
h3.footer-issue {
  margin-bottom: 15px;
}

/* 250206（トップページフォント修正） */
#home-page .contents .section .cnt-inner h2 {
  font-family: "Noto Sans JP";
}

#home-page .contents .top-voice h2::after {
  top: 114%;
}

@media screen and (max-width: 767px) {
  #home-page .contents .top-voice h2::after {
    top: 118%;
  }
}

#home-page .contents h2 span {
  margin-bottom: 10px;
}

/*250326（バナー修正）*/
@media screen and (max-width: 959px) {
  .foot-action li.mail,
  .foot-action li.tel {
    width: 50%;
  }
}
@media screen and (min-width: 767px) {
  .bnr_margin-top {
    margin-top: 80px !important;
  }
}
@media screen and (max-width: 767px) {
  .header .submenu,
  .sub-submenu {
    display: none;
    list-style: none;
  }

  li.gnav-course .span,
  .submenu li .span {
    position: relative;
    display: block;
    padding: 15px;
    background: #fff;
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 0px;
  }

  li.gnav-course .submenu li.gnav-beginner {
    border-top: 1px solid #ededed;
  }

  li.gnav-course .submenu > li > .sub-submenu > li:first-child {
    border-top: 1px solid #ededed;
  }

  li.gnav-course .submenu > li > span {
    padding: 15px 15px 15px 30px;
  }

  li.gnav-course .submenu > li > .sub-submenu > li > a {
    padding: 15px 15px 15px 50px;
    color: rgb(135, 135, 135);
    font-size: 0.8em;
  }

  .submenu > li > span::before,
  .submenu > li > span::after {
    content: "";
    display: inline-block;
    width: 16px; /* 線の幅 */
    height: 2px; /* 線の高さ */
    background-color: rgb(135, 135, 135); /* 線の色 */
    position: absolute;
    right: 15px;
    top: 50%;
    transform-origin: center;
    transition: 0.3s;
  }

  .submenu > li > span::before {
    transform: rotate(90deg);
  }

  .submenu > li.open > span::before {
    transform: rotate(0deg);
  }
}

/*250509追記（ヘッダーボタン修正）----------------------------------------------------------*/
/*PC*/
@media screen and (min-width: 960px) {
    .header .head-info li.head-reservation,.header .head-info li.kids-school {
        margin-right: 1px;
    }
.header .head-info li.head-reservation,.header .head-info li.kids-school{
        text-align: center;
}
    .header .head-info li.head-reservation a, .header .head-info li.kids-school a{
        width: 150px;
        font-size: 12px;
}
    .header .head-info li.head-reservation i , .header .head-info li.kids-school i {
        display: block;
        margin-bottom: 5px;
        font-size: 23px;
}
}
.header .head-info li.head-reservation{
    background: #19375a;
}
.header .head-info li.kids-school{
  background: #f1963d;

}
.header .head-info li.head-reservation,.header .head-info li.kids-school{
    color: #fff;
}

.header .head-info li.head-reservation a,.header .head-info li.kids-school a{
color: #fff;
}
.header .head-info .head-reservation i {
    display: block;
    margin-bottom: 5px;
    width: 24px;
    height: 24px;
    position: relative;
    display: block;
    margin: 0 auto 5px;
    background: url(../../images/index/icon-reservation.svg) no-repeat;
    background-size: 24px;
    background-position: center center;
}
.header .head-info .kids-school i{
    display: block;
    margin-bottom: 5px;
    width: 24px;
    height: 24px;
    position: relative;
    display: block;
    margin: 0 auto 5px;
    background: url(../../images/index/icon-kids.svg) no-repeat;
    background-size: 24px;
    background-position: center center;

}

/*SP*/
.header .head-info .reservation{
      background: #19375a;
}
@media screen and (max-width: 959px) {
    .header .head-info .kids-school, .header .head-info .head-reservation {
        float: left;
        width: 50%;
        text-align: center;
        letter-spacing: 0;

    }
      .header .head-info .kids-school a,.header .head-info .head-reservation a{
        padding: 20px 0;
        font-size: 11px;
        font-weight: 700;
    }
        .header .head-info .kids-school i,.header .head-info .head-reservation i{
        display: block;
        margin-bottom: 5px;
    }
        .header .head-info .kids-school a, .header .head-info .head-reservation a {
        padding: 14.5px 0;

  }
}

/* 250509 モバイル最適化
---------------------------------------------------- */
.list-2col {
  display: flex;
  flex-wrap: wrap;
  gap: 60px;
}
.list-2col__item {
  width: calc((100% - 60px) / 2);
}
@media screen and (max-width: 767px) {
  .list-2col {
    gap: 30px;
  }
  .list-2col__item {
    width: 100%;
  }
}
.item-detail {
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.item-detail__head {
  background: #c00;
  color: #fff;
  font-weight: bold;
  font-size: 24px;
  padding: 20px 30px;
  border-radius: 5px 5px 0 0;
}
.item-detail__head a {
  color: #fff;
  text-decoration: none;
  position: relative;
  display: inline-block;
  width: 100%;
}
.item-detail__head a .icon-arrow {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.item-detail__body {
  padding: 20px 30px 40px;
  background: #fff;
  border-radius: 0 0 5px 5px;
}
.item-detail__body img {
  margin-bottom: 20px;
}
.item-detail__body img + p {
  font-size: 16px!important;
}
@media screen and (max-width: 767px) {
  .item-detail__head {
    padding: 20px;
    font-size: 20px;
  }
  .item-detail__head a .icon-arrow {
    display: none;
  }
  .item-detail__body {
    padding: 20px;
  }
  .item-detail__body--more {
    color: #c00!important;
    text-align: right;
    margin-top: 30px;
  }
  .item-detail__body--more .icon-arrow {
    margin-left: 8px;
  }
}
.list-2col-wide {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.list-2col-wide__item {
  width: calc((100% - 20px) / 2);
}
@media screen and (max-width: 767px) {
  .list-2col-wide__item {
    width: 100%;
  }
}
.item-detail-flex {
  padding: 20px;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  display: flex;
  gap: 15px;
}
.item-detail-flex__img {
  width: 200px;
  height: 200px;
}
.item-detail-flex__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.item-detail-flex__txt {
  width: calc(100% - 215px);
}
.item-detail-flex__txt--title {
  font-size: 17px!important;
  font-weight: bold;
  color: #c00!important;
  margin-bottom: 20px;
  position: relative;
  z-index: 0;
}
.item-detail-flex__txt--title a {
  color: #c00!important;
  text-decoration: none!important;
  font-weight: bold;
}
.item-detail-flex__txt--txt {
  font-size: 15px!important;
}
.item-detail-flex__txt--num {
  position: absolute;
  top: -5px;
  right: 0;
  z-index: -1;
  color: #c00;
  opacity: .2;
  font-size: 60px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .item-detail-flex {
    flex-direction: column;
  }
  .item-detail-flex__img {
    width: 100%;
    height: auto;
  }
  .item-detail-flex__txt {
    width: 100%;
  }
}

.exective_slide-list-item .txt + p {
  font-size: 14px!important;
  font-weight: 500;
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .exective_slide-list-item a {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    height: auto;
  }
  .exective_slide-list-item .img {
    width: 100px;
    height: 100px;
    margin: 0;
  }
  .exective_slide-list-item .img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }
  .exective_slide-list-item .txt {
    width: calc(100% - 120px);
    height: fit-content;
  }
  .exective_slide-list-item .txt h3 span {
    font-size: 20px;
    font-weight: 700;
    display: inline-block;
    margin-top: 10px;
  }
  .exective_slide-list-item .txt + p {
    margin-top: 0;
    width: 100%;
  }
}

.access_list_item {
  text-align: left;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.access_list_item_name {
  margin: 25px 0 30px;
}
.access_list_item_address {
  flex-grow: 1;
  font-weight: 600;
}
/* 250509 モバイル最適化ここまで */
