@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

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

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: '';
}

q:before, q:after {
  content: '';
}

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

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  word-wrap: break-word;
}

html {
  overflow-y: scroll;
  width: 100%;
}

body {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  text-rendering: auto;
  font-size: 14px;
  font-family: "Hiragino Sans, " ヒラギノ角ゴシック ", Hiragino Kaku Gothic ProN, " ヒラギノ角ゴ Pro W3 ", " メイリオ ", Meiryo, Osaka, " ＭＳ Ｐゴシック ", " MS PGothic ", sans-serif";
  color: #333;
  background-color: #f3f3f3;
  line-height: 1.5;
  min-width: 320px;
  width: 100%;
  word-break: break-word;
}

body * {
  font-family: Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a {
  color: #000;
  text-decoration: none;
}

.SP {
  display: none !important;
}

.SP_simple01 {
  display: none;
}

.PC {
  display: block !important;
}

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-style: normal;
  font-weight: normal;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

blockquote:before, blockquote:after {
  content: '';
  content: none;
}

blockquote q {
  quotes: none;
}

q:before, q:after {
  content: '';
  content: none;
}

input, textarea {
  margin: 0;
  padding: 0;
}

ol, ul {
  list-style: none;
}

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

caption, th {
  text-align: left;
}

.sp-only {
  display: block;
}
.section-main .pc-only {
  display: none;
}

@media (min-width: 680px) {
  .section-main .pc-only {
    display: block;
  }
  .sp-only {
    display: none;
  }
}

.hover_strong01 a:hover img {
  opacity: 0.7;
}

.clearboth {
  clear: both !important;
}

.clearfix {
  min-height: 1px;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

* html .clearfix {
  height: 1px;
}

.both {
  clear: both;
}

.inline_block {
  display: inline-block;
}

img {
  max-width: 100%;
  height: auto;
  width: auto;
}

/*--------------common-*/
@media screen and (min-width: 680px) {
  #wrapper {
    min-width: 659px;
  }
}

.menu_bg {
  display: none;
}

.inner {
  width: 92%;
  margin: 0 auto;
  position: relative;
}

@media (min-width: 680px) {
  .inner {
    width: 1000px;
  }
}

.spirit header .top_navi .theme li:nth-child(2) a, .sports header .top_navi .theme li:nth-child(3) a, .culture header .top_navi .theme li:nth-child(4) a, .environment header .top_navi .theme li:nth-child(5) a, .learn header .top_navi .action li:nth-child(2) a, .watch header .top_navi .action li:nth-child(3) a, .do header .top_navi .action li:nth-child(4) a, .support header .top_navi .action li:nth-child(5) a, .spirit footer .top_navi .theme li:nth-child(1) a, .sports footer .top_navi .theme li:nth-child(2) a, .culture footer .top_navi .theme li:nth-child(3) a, .environment footer .top_navi .theme li:nth-child(4) a, .learn footer .top_navi .action li:nth-child(1) a, .watch footer .top_navi .action li:nth-child(2) a, .do footer .top_navi .action li:nth-child(3) a, .support footer .top_navi .action li:nth-child(4) a {
  background: url(../common/images/navi_on_bg.gif);
}

header .inner:after, footer .inner:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

header {
  background: #fff;
}

header .PC .link:after, header .PC #IdFontsize:after, header .PC .search:after, header .PC .block:after, header .PC .Olympic-count:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

footer {
  background: #fff;
}

header .PC .left {
  float: left;
}

header .PC .logo {
  padding: 24px 0 23px 0;
  font-size: 12px;
}

header .PC .logo img {
  width: 168px;
}

header .PC .txt {
  margin-bottom: 12px;
  font-size: 12px;
}

header .PC .right {
  width: 425px;
  float: right;
  padding-top: 12px;
}

header .PC .link {
  margin-bottom: 10px;
}

header .PC .link li {
  float: left;
  font-size: 12px;
}

header .PC .link li.first {
  width: 62px;
}

header .PC .link li.second {
  width: 123px;
}

header .PC .link li.third {
  width: 145px;
}

header .PC .link li.fourth {
  width: 95px;
}

header .PC .block {
  margin-bottom: 10px;
}

header .PC #IdFontsize {
  font-size: 12px;
  float: left;
  width: 220px;
}

header .PC #IdFontsize a {
  color: #e12d00;
}

header .PC #IdFontsize dl dt, header .PC #IdFontsize dl dd {
  float: left;
}

header .PC .search {
  float: right;
  width: 200px;
}

header .PC .search p {
  float: left;
  font-size: 12px;
  display: block;
  margin-right: 4px;
  line-height: 1.9;
}

header .PC .search .form {
  float: left;
  font-size: 12px;
  position: relative;
}

header .PC .search .form .sbt {
  position: absolute;
  top: 4px;
  right: 7px;
  width: 12px;
}

header .PC .search #inner_search_box01, header .PC .search #inner_search_box02 {
  border: 1px solid #c1c1c1;
  width: 120px;
  height: 20px;
  border-radius: 10px;
  padding: 0 23px 0 5px;
  font-size: 12px;
  background: #f2f2f2;
}

header .PC .Olympic-count {
  width: 100%;
  border-radius: 8px;
  border: 1px solid #e12d00;
  margin-bottom: 6px;
}

header .PC .Olympic-count p {
  color: #e12d00;
  font-size: 12px;
  float: left;
  padding: 9px 0;
  margin: 0 3px;
}

header .PC .Olympic-count p.tit {
  color: #e12d00;
  margin: 0 14px 0 22px;
  text-align: center;
}

header .PC .Olympic-count li {
  padding: 2px 5px;
  border-radius: 2px;
  background-color: #e12d00;
  float: left;
  margin: 2px 1px 2px;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  line-height: 28px;
}

header .top_navi {
  border-top: 3px solid #e12d00;
  border-bottom: 3px solid #e12d00;
  background-color: rgba(255, 255, 255, 0.8);
  box-sizing: content-box !important;
}

/*navigation*/
footer .top_navi {
  border-top: 3px solid #e12d00;
  border-bottom: 3px solid #e12d00;
  background-color: rgba(255, 255, 255, 0.8);
  box-sizing: content-box !important;
}

header .top_navi .inner, footer .top_navi .inner {
  border-left: 1px dotted #e12d00;
  box-sizing: content-box !important;
}

header .top_navi .navi_right, footer .top_navi .navi_right {
  float: left;
  border-left: 3px solid #e12d00;
  vertical-align: top;
}

header .top_navi .top, footer .top_navi .top {
  float: left;
  width: 83px;
  margin-bottom: 0px;
}

header .top_navi .top a, footer .top_navi .top a {
  display: block;
  padding: 11px 0 10px 0;
  font-size: 14px;
  line-height: 15px;
  text-align: center;
  height: 77px;
}

header .top_navi .top a, footer .top_navi .top a {
  font-weight: bold;
}

header .top_navi a:hover, footer .top_navi a:hover {
  background: url(../common/images/navi_on_bg.gif);
  text-decoration: none;
  color: #000 !important;
}

header .top_navi .top span img, footer .top_navi .top span img {
  display: block;
  margin: 0 auto 3px;
  width: 26px;
}

header .top_navi .tit {
  width: 201px !important;
  border-left: none !important;
}

footer .top_navi .tit {
  width: 201px;
  float: left;
}

header .top_navi .tit img, footer .top_navi .tit img {
  margin: 3px 3px 0px 3px;
  line-height: 1.0;
  vertical-align: bottom;
  width: 98%;
}

header .top_navi .list a img, footeer .top_navi .list a img {
  width: 29px;
}

header .top_navi .theme, footer .top_navi .theme {
  border-bottom: 1px solid #e12d00;
  overflow: hidden;
}

header .top_navi .theme:after, footer .top_navi .theme:after, header .top_navi .action:after, footer .top_navi .action:after, header .top_navi .list:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

footer .top_navi .list {
  float: left;
  width: 612px;
}

footer .top_navi .list:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

header .top_navi .list li, footer .top_navi .list li {
  float: left;
  font-size: 14px;
  line-height: 16px !important;
  font-weight: bold;
  text-align: center;
  border-left: 1px dotted #e12d00;
  width: 153px;
}

#navi_top.top_navi .list li a, #navi_btm.top_navi .list li a, header .top_navi .list li a, footer .top_navi .list li a {
  font-family: Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

header .top_navi .list li:last-child, footer .top_navi .list li:last-child {
  border-right: 1px dotted #e12d00;
}

header .top_navi .list li a, footer .top_navi .list li a {
  display: block;
  padding: 9px 0 7px 0;
  font-weight: bold;
}

header .top_navi .list li a img, footer .top_navi .list li a img {
  width: 23px;
  margin-right: 5px;
  margin-top: -1px;
  vertical-align: middle;
}

header .top_navi .list li.first a, footer .top_navi .list li.first a {
  font-size: 12px;
  line-height: 14px;
  text-align: left;
  padding: 5px 0;
}

header .top_navi .list li.first a img {
  float: left;
  padding-top: 4px;
  margin: 0 2px;
}

footer .top_navi {
  margin-bottom: 50px;
}

footer .top_navi .list li.first a img {
  float: left;
  padding-top: 4px;
  margin: 0 2px;
}

header.login .right .link {
  float: right;
}

header.login .block .link {
  float: left;
  margin-left: 30px;
  margin-bottom: 5px;
}

header.login #IdFontsize {
  float: right;
  width: auto;
}

.pagetop {
  width: 100px;
  text-align: center;
  margin: 0 auto 50px;
  font-size: 12px;
}

.pagetop img {
  margin: 0 auto 5px;
}

.banner {
  width: 900px;
  margin: 0 auto 40px;
}

.banner li {
  float: left;
  margin-right: 24px;
}

.banner li:last-child {
  margin-right: 0px;
}

.banner li img {
  width: 284px;
}

.banner:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.foot_link {
  margin: 0 auto;
  padding-bottom: 20px;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.foot_link ul {
  position: relative;
  left: 50%;
  float: left;
  margin-left: 10px;
}

.foot_link ul li {
  position: relative;
  left: -50%;
  float: left;
}

.foot_link li a {
  float: left;
  margin-right: 15px;
  color: #e12d00;
}

.foot_link li a span {
  padding-right: 0px;
  color: #000;
}

.foot_link li a:hover * {
  color: #e12d00;
}

.copyright {
  clear: both;
  font-size: 85.7%;
  text-align: center;
  padding-bottom: 10px;
  width: 100% !important;
}

header .top_navi2 {
  border-top: 3px solid #e12d00;
  border-bottom: 3px solid #e12d00;
  position: relative;
  background-color: rgba(255, 255, 255, 0.8);
  box-sizing: content-box;
}

header .top_navi2 .top_link a {
  display: block;
  float: left;
  padding-left: 50px;
  padding-top: 14px;
  padding-bottom: 12px;
  font-size: 14px;
  font-weight: bold;
  line-height: 18px;
  width: 187px;
  border-left: 1px dotted #e12d00;
  border-right: 1px dotted #e12d00;
  background: url(../images.b5cf947526894bd57f34048b139a6558/home.png) no-repeat 12px center;
}

header .top_navi2 .info {
  float: right;
}

header .top_navi2 .info .name {
  font-size: 16px;
  font-weight: bold;
  padding-top: 8px;
  padding-bottom: 6px;
  text-align: right;
}

header .top_navi2 .info .name span {
  font-size: 16px;
  font-weight: lighter !important;
  padding-left: 10px;
}

header .top_navi2 .info li {
  display: table-cell;
  padding-left: 15px;
  font-size: 12px;
}

header .top_navi2 .info li a {
  color: #e12d00;
}

header .top_navi2 .info li a:hover * {
  color: #e12d00;
}

header .top_navi2 .info li a span {
  padding-right: 3px;
  color: #000;
}

/*form*/
input.txt01 {
  border-radius: 15px;
  width: 250px;
  border: 1px solid #c1c1c1;
  padding: 6px 10px;
}

input:focus {
  background: #FCEFEB;
}

input[type="checkbox"] {
  margin-right: 6px;
}

select {
  border: 1px solid #c1c1c1;
  padding: 5px;
}

textarea.style01 {
  width: 100%;
  height: 150px;
  border: 1px solid #c1c1c1;
}

input.password, input.string {
  border-radius: 15px;
  width: 250px;
  border: 1px solid #ccc;
  padding: 6px 10px;
}

textarea.text {
  width: 100%;
  height: 150px;
  border: 1px solid #ccc;
}

#IdFontsize dl {
  margin-top: 2px;
}

header.login #IdFontsize dl {
  margin-top: 0px;
}

dd#IdFontS, dd#IdFontM, dd#IdFontL {
  letter-spacing: -0.7px;
}

dd#IdFontS a, dd#IdFontM a, dd#IdFontL a {
  letter-spacing: 0;
}

.box_margin_top_00 {
  margin-top: 0.4em;
}

.box_margin_top_00s {
  margin-top: 0.3em;
}

.box_margin_top_00s2 {
  margin-top: 0.2em;
}

.box_margin_top_00s3 {
  margin-top: 0.1em;
}

.box_margin_top_01 {
  margin-top: 0.5em;
}

.box_margin_top_02 {
  margin-top: 1em;
}

.box_margin_top_03 {
  margin-top: 1.5em;
}

.box_margin_top_04 {
  margin-top: 2em;
}

.box_margin_top_05 {
  margin-top: 2.5em;
}

.box_margin_top_06 {
  margin-top: 3em;
}

.box_margin_top_07 {
  margin-top: 3.5em;
}

.box_margin_top_08 {
  margin-top: 4em;
}

.box_margin_top_01minus {
  margin-top: -0.5em;
}

.box_margin_top_02minus {
  margin-top: -1em;
}

.box_margin_top_03minus {
  margin-top: -1.5em;
}

.box_margin_top_04minus {
  margin-top: -2em;
}

.box_margin_top_05minus {
  margin-top: -2.5em;
}

.box_margin_top_06minus {
  margin-top: -3em;
}

.box_margin_top_minus_ptn01 {
  margin-top: -6.5em;
}

.box_margin_bottom_00 {
  margin-bottom: 0.4em;
}

.box_margin_bottom_00s {
  margin-bottom: 0.3em;
}

.box_margin_bottom_00s2 {
  margin-bottom: 0.2em;
}

.box_margin_bottom_00s3 {
  margin-bottom: 0.1em;
}

.box_margin_bottom_01 {
  margin-bottom: 0.5em;
}

.box_margin_bottom_02 {
  margin-bottom: 1em;
}

.box_margin_bottom_03 {
  margin-bottom: 1.5em;
}

.box_margin_bottom_04 {
  margin-bottom: 2em;
}

.box_margin_bottom_05 {
  margin-bottom: 2.5em;
}

.box_margin_bottom_06 {
  margin-bottom: 3em;
}

.box_margin_bottom_07 {
  margin-bottom: 3.5em;
}

.box_margin_bottom_08 {
  margin-bottom: 4em;
}

.box_margin_bottom_09 {
  margin-bottom: 4.5em;
}

.box_margin_bottom_10 {
  margin-bottom: 5em;
}

.box_radius01 {
  display: block;
  border: 1px solid #c1c1c1;
  width: 100%;
  border-radius: 10px;
}

.box_radius02 {
  display: block;
  border: 1px solid #5F5F5F;
  width: 100%;
  border-radius: 5px;
  background: #5F5F5F;
}

.box_indent00 {
  padding-left: 0.55em;
}

.box_indent01 {
  padding-left: 1em;
}

.box_indent02 {
  padding-left: 1em;
  text-indent: -1em;
}

.box_indent02b {
  padding-left: 1.4em;
  text-indent: -1.4em;
}

.box_indent03 {
  margin-left: 2em;
  padding-left: 1em;
  text-indent: -1em;
}

.box_indent03b {
  margin-left: 2em;
  padding-left: 1.3em;
  text-indent: -1.3em;
}

.box_indent04 {
  margin-left: 3em;
  padding-left: 1em;
  text-indent: -1em;
}

.box_indent05 {
  margin-left: 4em;
  padding-left: 1em;
  text-indent: -1em;
}

.liststyle_ul00 {
  padding-left: 1em;
}

.liststyle_ul00 li {
  list-style: disc;
}

.liststyle_ul00_none li {
  list-style: none;
}

.liststyle_ul01 {
  padding-left: 2em;
}

.liststyle_ul01 li {
  list-style: disc;
}

.liststyle_ol00 {
  padding-left: 0.5em;
}

.liststyle_ol00 li {
  list-style: decimal;
}

.liststyle_ol01 {
  padding-left: 1.5em;
}

.liststyle_ol01 li {
  list-style: decimal;
}

.simpletable01 {
  width: 100%;
}

.simpletable01 td {
  border: 1px solid #c1c1c1;
  width: 50%;
}

.simpletable01 th {
  border: 1px solid #c1c1c1;
  width: 50%;
  background: #f9f9f9;
  vertical-align: middle;
  text-align: center;
  padding: 0.5em 0.5em 0.5em 0.5em;
}

.bg_white {
  background: #ffffff !important;
}

.simpletable01 td {
  text-align: left;
  padding: 0.5em 0.5em 0.5em 0.5em;
}

.simpletable01 a {
  text-decoration: underline;
}

.simpletable02 {
  width: 100%;
}

.simpletable02 td, .simpletable02 th {
  width: 50%;
}

.simpletable03 {
  width: 100%;
}

.simpletable03 td, .simpletable03 th {
  border: 1px solid #c1c1c1;
}

.simpletable03_td01, .simpletable03_td02 {
  width: 30%;
}

.simpletable03_td03 {
  width: 40%;
}

.simpletable03_td04 {
  width: 33%;
}

.simpletable03_td05 {
  width: 12%;
}

.simpletable03_td06 {
  width: 20%;
}

.min_height01 {
  min-height: 50px;
}

.max_height01 {
  max-height: 50px;
}

.min_width01 {
  min-width: 160px;
}

.min_width02 {
  min-width: 200px;
}

.min_width03 {
  min-width: 180px;
}

.max_width01 {
  max-width: 160px;
}

.max_width02 {
  max-width: 200px;
}

.max_width03 {
  max-width: 180px;
}

.simpletable03 th {
  background: #f9f9f9;
  vertical-align: middle;
  text-align: center;
  padding: 0.5em 0.5em 0.5em 0.5em;
}

.simpletable03 td {
  text-align: left;
  padding: 0.5em 0.5em 0.5em 0.5em;
}

.simpletable03 a {
  text-decoration: underline;
}

.simpletable04 {
  width: 100%;
}

.box_flex_container {
  display: flex;
}

.box_flex_container_center {
  justify-content: center;
  align-items: center;
}

.box_margin_left_01 {
  margin-left: 0.5em;
}

.box_margin_left_02 {
  margin-left: 1em;
}

.box_margin_left_03 {
  margin-left: 1.5em;
}

.box_margin_left_04 {
  margin-left: 2em;
}

.box_margin_left_05 {
  margin-left: 2.5em;
}

.box_margin_left_06 {
  margin-left: 3em;
}

.box_padding_top_00 {
  margin-top: 0.4em;
}

.box_padding_top_00s {
  margin-top: 0.3em;
}

.box_padding_top_00s2 {
  margin-top: 0.2em;
}

.box_padding_top_00s3 {
  margin-top: 0.1em;
}

.box_padding_top_01 {
  margin-top: 0.5em;
}

.box_padding_top_02 {
  margin-top: 1em;
}

.box_padding_top_03 {
  margin-top: 1.5em;
}

.box_padding_top_04 {
  margin-top: 2em;
}

.box_padding_top_05 {
  margin-top: 2.5em;
}

.box_padding_top_06 {
  margin-top: 3em;
}

.box_padding_top_07 {
  margin-top: 3.5em;
}

.box_padding_top_08 {
  margin-top: 4em;
}

.box_padding_left_01 {
  padding-left: 0.5em;
}

.box_padding_left_02 {
  padding-left: 1em;
}

.box_padding_left_03 {
  padding-left: 1.5em;
}

.box_padding_left_04 {
  padding-left: 2em;
}

.box_padding_left_05 {
  padding-left: 2.5em;
}

.box_padding_left_06 {
  padding-left: 3em;
}

.box_margin_right_01 {
  margin-right: 0.5em;
}

.box_margin_right_02 {
  margin-right: 1em;
}

.box_margin_right_03 {
  margin-right: 1.5em;
}

.box_margin_right_04 {
  margin-right: 2em;
}

.box_margin_right_05 {
  margin-right: 2.5em;
}

.box_margin_right_06 {
  margin-right: 3em;
}

.box_padding_right_01 {
  padding-right: 0.5em;
}

.box_padding_right_02 {
  padding-right: 1em;
}

.box_padding_right_03 {
  padding-right: 1.5em;
}

.box_padding_right_04 {
  padding-right: 2em;
}

.box_padding_right_05 {
  padding-right: 2.5em;
}

.box_padding_right_06 {
  padding-right: 3em;
}

.float_left01 {
  float: left;
}

.fontsize_per80 {
  font-size: 80%;
}

.fontsize_per90 {
  font-size: 90%;
}

.fontsize_per110 {
  font-size: 110%;
}

.fontsize_per124 {
  font-size: 124%;
}

.fontsize_per129 {
  font-size: 129%;
}

.ruby_adjustment01 rt {
  font-size: 60%;
}

.vertical_top {
  vertical-align: top !important;
}

.interval01 {
  padding-right: 1em;
}

.interval012 {
  padding-right: 1.5em;
}

.interval013 {
  padding-right: 2em;
}

.interval014 {
  padding-right: 2.5em;
}

.interval015 {
  padding-right: 3em;
}

.interval016 {
  padding-right: 3.5em;
}

.interval017 {
  padding-right: 4em;
}

.interval02 {
  padding-left: 1em;
}

.interval001 {
  padding-right: 0.5em;
}

.interval002 {
  padding-left: 0.5em;
}

.width_pc001 {
  width: 68%;
}

.simple_ranking01 {
  background: url(/opedu/static/page/open/images_area/common/ranking_icon_medal01.png) no-repeat 10px 5px;
  width: 20%;
  text-align: center;
  display: table-cell;
  padding: 10px;
  border: 1px solid #c1c1c1;
}

.simple_ranking02 {
  background: url(/opedu/static/page/open/images_area/common/ranking_icon_medal02.png) no-repeat 10px 5px;
  width: 20%;
  text-align: center;
  display: table-cell;
  padding: 10px;
  border: 1px solid #c1c1c1;
}

.simple_ranking03 {
  background: url(/opedu/static/page/open/images_area/common/ranking_icon_medal03.png) no-repeat 10px 5px;
  width: 20%;
  text-align: center;
  display: table-cell;
  padding: 10px;
  border: 1px solid #c1c1c1;
}

.letterspacing_short01 {
  letter-spacing: -0.01em;
}

.letterspacing_short02 {
  letter-spacing: -0.015em;
}

.letterspacing_short03 {
  letter-spacing: -0.02em;
}

.letterspacing_short04 {
  letter-spacing: -0.025em;
}

.letterspacing_short05 {
  letter-spacing: -0.03em;
}

.letterspacing_short06 {
  letter-spacing: -0.035em;
}

.letterspacing_short07 {
  letter-spacing: -0.04em;
}

.letterspacing_short08 {
  letter-spacing: -0.045em;
}

/* icon */
.icon_mark {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/side_allow.png) no-repeat left center;
  padding-left: 20px;
}

.icon_out {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/out_icon.png) no-repeat right center;
  padding-right: 15px;
}

.icon_pdf {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/pdf_icon.png) no-repeat right center;
  background-size: 24px;
  padding-right: 28px;
}

.linkicon img {
  max-width: 24px;
  margin-left: 8px;
  vertical-align: middle;
}

/* list */
ul.linklist {
  margin-left: 15px;
}

ul.linklist li {
  margin-top: 7px;
  margin-bottom: 7px;
}

ul.linklist li a {
  display: inline-block;
}

ul.linklist li a.icon_mark {
  background-position: left 5px;
}

ul.pdflinklist li a:hover {
  text-decoration: none;
}

ul.pdflinklist li a:hover span {
  text-decoration: underline;
}

ul.pdflinklist li a:hover span.linkicon {
  text-decoration: none;
}

ul.pdflinklist li a:hover small {
  text-decoration: none;
}

/* text link */
.link_txt {
  color: #022361;
  text-decoration: underline;
}

.link_txt_white {
  color: #ffffff;
  text-decoration: underline;
}

.link_txt_underline {
  text-decoration: underline;
}

/* text */
strong, .txt_b {
  font-weight: bold;
}

.txt_c {
  text-align: center;
}

/*--------------
 pankuzu module
  ------------*/
.pankuzu {
  font-size: 87.5%;
  padding: 6px 0;
}

.pankuzu:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.pankuzu .inner {
  height: auto;
}

@media (min-width: 680px) {
  .pankuzu .inner {
    width: 930px;
  }
}

.pankuzu a {
  color: #022361;
  text-decoration: underline;
}

.pankuzu a:hover {
  opacity: 0.7;
}

.pankuzu li {
  float: left;
}

@media screen and (max-width: 679px) {
  .pankuzu li {
    line-height: 25px;
  }
  .pankuzu li:first-child {
    margin-left: 0;
  }
}

.pankuzu li:after {
  color: #022361;
  content: "＞";
  text-decoration: none !important;
  padding: 0 6px;
}

.pankuzu li:first-child a {
  text-decoration: none;
  line-height: 22px;
  vertical-align: middle;
}

.pankuzu li:first-child a img {
  position: relative;
  top: 1px;
}

.pankuzu li:last-child:after {
  content: "" !important;
  padding: 0;
}

.pankuzu li span {
  color: #022361;
}

/* 下層ページ */
.conts {
  margin-bottom: 2em;
  background-position: top center;
  background-repeat: no-repeat;
  /* side bar */
}

@media (min-width: 680px) {
  .conts {
    padding-top: 200px;
    min-width: 659px;
    margin-bottom: 50px;
  }
}

.conts:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.conts.page .text-right {
  text-align: right;
}

.conts.page .style01 table td.no-bor-l, .conts.page .style01 table th.no-bor-l {
  border-left: 0 none transparent !important;
}

.conts.page p, .conts.page table.form div.error {
  line-height: 1.7;
}

.conts.page .des {
  margin-bottom: 40px;
}

.conts.page .des:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.conts.page .des h2.s_tit {
  font-size: 158%;
  font-weight: bold;
  margin-bottom: 10px;
  padding: 10px 0 10px 63px;
  border: none;
}

.conts.page .des h2.s_tit.icon_archery {
  background: #fff url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/cate_icon_archery.png) no-repeat left center;
}

.conts.page .des img {
  float: left;
}

.conts.page .des .img {
  float: left;
  width: 200px;
  margin-right: 15px;
}

.conts.page .des .img img {
  max-width: 200px;
}

.conts.page .des .img .img_caption {
  text-align: center;
  font-size: 11px;
}

.conts.page .des p.outline {
  font-size: 115%;
  font-weight: bold;
  margin-bottom: 9px;
}

.conts.page div.style01 {
  padding-bottom: 40px;
}

.conts.page .style01 p.txt {
  font-size: 115%;
  line-height: 1.9;
}

.conts.page .style01 table {
  margin-bottom: 40px;
  width: 100%;
}

.conts.page .style01 table td, .conts.page .style01 table th {
  border: 1px solid #c1c1c1;
}

.conts .side {
  width: 230px;
  float: right;
}

.conts .side .list {
  border-bottom: 3px solid #022361;
}

.conts .side .list.mb30 {
  margin-bottom: 30px;
}

.conts .side .list a {
  display: block;
  line-height: 1;
  padding: 22px 10px 22px 36px;
  border-bottom: 1px solid #022361;
  position: relative;
  background-image: url(/opedu/static/page/open/images/common/icons/arrow_right.png);
  background-repeat: no-repeat;
  background-position: 10px center;
  background-size: 8px;
  background-color: #fff;
}

@media (min-width: 680px) {
  .conts .side .list a {
    background-position: 10px center;
  }
}

.conts .side .list a:hover {
  color: white;
  background: url(/opedu/static/page/open/images/common/icons/arrow_right_white.png) no-repeat 10px center;
  background-size: 8px;
  background-color: #69799e;
}

.conts .side .tit {
  font-size: 129%;
  font-weight: bold;
  padding: 16px 0 16px 19px;
  border-top: 3px solid #022361;
  border-bottom: 1px solid #022361;
  background: #fff;
}

.conts .pankuzu ul:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.conts .conts .list {
  border-bottom: 3px solid #022361;
}

.conts .conts .list li a {
  display: block;
  padding: 20px 10px 20px 36px;
  background: #fff;
  border-bottom: 1px solid #022361;
  position: relative;
}

.conts .conts .list li a:before {
  position: absolute;
  left: 15px;
  top: 50%;
  width: 10px;
  height: 11px;
  margin-top: -5px;
  content: '';
  display: block;
  background: url(/opedu/static/page/open/images/common/icons/arrow_right.png) no-repeat left top;
  background-size: 6px;
}

.conts .conts .list li a:hover {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/navi_on_bg.gif);
  color: #000 !important;
  text-decoration: none;
}

.conts .conts .list li.line_sec a {
  padding: 15px 10px 15px 36px;
}

.conts .conts .list li:last-child a {
  border: none;
}

.conts .center {
  width: 630px;
  float: left;
  background: #fff;
  border-top: 3px solid #022361;
}

.conts .center .inner_style01 {
  padding: 0 43px;
}

.conts .center .inner_style01_wide01 {
  padding: 0 28px;
}

.conts .center .inner_style01_wide_full {
  padding: 0 0px;
}

.conts .center .cate {
  padding-top: 38px;
  margin-bottom: 30px;
}

.conts .center .cate:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.conts .center p.read {
  margin-bottom: 25px;
  line-height: 1.75;
  font-size: 115%;
}

.conts .center .cate span.icon {
  float: left;
  display: block;
  margin-right: 16px;
}

.conts .center h1.cate_tit {
  display: block;
  float: left;
  font-size: 36px;
  line-height: 42px;
  padding-left: 48px;
  font-weight: bold;
}

.conts .center h1.cate_tit.spirit {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/head_icon01.png) no-repeat left 0;
}

.conts .center h1.cate_tit.sports {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/head_icon02.png) no-repeat left 0;
}

.conts .center h1.cate_tit.culture {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/head_icon03.png) no-repeat left 0;
}

.conts .center h1.cate_tit.environment {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/head_icon04.png) no-repeat left 0;
}

.conts .center h1.cate_tit.learn {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/head_icon05.png) no-repeat left 0;
}

.conts .center h1.cate_tit.watch {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/head_icon06.png) no-repeat left 0;
}

.conts .center h1.cate_tit.do {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/head_icon07.png) no-repeat left 0;
}

.conts .center h1.cate_tit.support {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/head_icon08.png) no-repeat left 0;
}

.conts .center .anc_tit {
  text-align: center;
  margin-bottom: 15px;
}

.conts .center .anc_tit .line {
  border-bottom: 1px solid #002063;
  margin-top: -10px;
}

.conts .center .anc_tit p {
  font-size: 86%;
  font-weight: bold;
  background: #fff;
  display: inline;
  padding: 0 14px;
}

.conts .center .anc_tit p span {
  font-size: 79%;
  padding-left: 6px;
}

.conts .center .anc_navi {
  padding-bottom: 35px;
}

.conts .center .anc_navi:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.conts .center .anc_navi li {
  float: left;
  margin-right: 10px;
}

.conts .center .anc_navi li a {
  display: block;
  font-size: 14px;
  line-height: 16px;
  border: 1px solid #002063;
  width: 105px;
  padding: 16px 5px;
  text-align: center;
  padding-right: 12px;
  border-radius: 25px;
  line-height: 1.2;
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/anc_allow.png) no-repeat right 12px center;
}

.conts .center .anc_navi li a:hover {
  background: #002063 url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/anc_allow_on.png) no-repeat right 12px center;
  color: #fff !important;
  text-decoration: none;
}

.conts .center .anc_navi li.line a {
  text-align: left;
  width: 180px;
  padding: 7px 0 8px 0;
  padding-left: 12px !important;
}

.conts .center_only .sec, .conts .center .sec {
  clear: both;
  border: 3px solid #002063;
  margin-bottom: 42px;
}

/* main column */
/* category title */
/* page inner link btn */
/* red box */
.read_wide01 {
  margin-bottom: 25px;
  line-height: 1.75;
  font-size: 125%;
}

.sec_wide01 {
  margin-top: 26px;
}

/*-------------
 conts module
 -------------*/
.conts.id_top {
  padding-top: 140px;
}

.conts .inner {
  width: 100%;
}

@media (min-width: 680px) {
  .conts .inner {
    width: 960px;
  }
}

.conts .center_only .colum.colum_wide01,
.conts .center .colum.colum_wide01 {
  margin: 0 0px 0px 0px !important;
  padding: 35px 35px 35px 35px;
  border-bottom: 1px solid #022361;
}

.conts .center_only .colum.colum_wide01_last,
.conts .center .colum.colum_wide01_last {
  border-bottom: none;
}

.conts .center_only .colum:after,
.conts .center .colum:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.conts .center_only .colum img,
.conts .center .colum img {
  float: left;
}

.conts .center_only .colum a,
.conts .center .colum a {
  display: block;
}

.conts .center_only .colum a:hover *,
.conts .center .colum a:hover * {
  text-decoration: underline;
}

.conts .center_only .colum h3,
.conts .center .colum h3 {
  font-size: 116%;
  font-weight: bold;
  padding: 12px 0;
}

.conts .center_only .colum .txt,
.conts .center .colum .txt {
  float: right;
  width: 270px;
  line-height: 1.7;
}

.conts .center_only .colum .txt.colum_txt_wide01,
.conts .center .colum .txt.colum_txt_wide01 {
  width: 506px !important;
}

.conts .center_only .colum .txt.colum_txt_wide01 h3,
.conts .center .colum .txt.colum_txt_wide01 h3 {
  font-size: 120% !important;
}

.conts .center_only .colum .txt.colum_txt_wide01 p, .conts .center_only .colum .txt.colum_txt_wide01 .link,
.conts .center .colum .txt.colum_txt_wide01 p,
.conts .center .colum .txt.colum_txt_wide01 .link {
  font-size: 114%;
}

.conts .center_only .colum .txt .link,
.conts .center .colum .txt .link {
  text-align: right;
}

.conts .center_only .colum .txt p,
.conts .center .colum .txt p {
  margin-bottom: 12px;
}

.conts .center h2 {
  font-size: 100%;
  padding: 0;
  border-bottom: 1px solid #022361;
  margin-bottom: 20px;
}

@media (min-width: 680px) {
  .conts .center h2 {
    font-weight: bold;
    font-size: 143%;
    padding: 24px 18px;
    border-bottom: 1px solid #022361;
    margin-bottom: 40px;
  }
}

.conts .center h2 img {
  width: 20px;
  vertical-align: middle;
  margin-top: -2px;
  padding: 0 5px;
}

@media (min-width: 680px) {
  .conts .center h2 img {
    vertical-align: middle;
    margin-top: -3px;
    padding: 0 10px;
  }
}

.conts .center_only {
  background: #fff;
  border-top: 3px solid #022361;
  padding: 30px 0;
}

@media (min-width: 680px) {
  .conts .center_only {
    padding: 60px 42px;
  }
}

.conts .center_only h1 {
  font-size: 2em;
  font-weight: bold;
  margin: 0 0 20px;
  margin: 0 30px 20px;
}

@media (min-width: 680px) {
  .conts .center_only h1 {
    margin: 0 0 52px;
  }
}

.conts .center_only .info {
  margin-bottom: 60px;
}

.conts .center_only .info h2 {
  font-size: 14px;
  margin-bottom: 32px;
}

.conts .center_only .info h2 img {
  height: 28px;
  margin-right: 15px;
  float: left;
}

.conts .center_only .info h2 span {
  display: block;
  line-height: 2;
}

.conts .center_only .info dl {
  margin: 0 auto 15px;
}

.conts .center_only .info ul.list {
  margin: 0 auto;
}

.conts .center_only .info ul.list li {
  margin-bottom: 12px;
}

.conts .center_only .info ul.list a {
  background-image: url(/opedu/static/page/open/images/icon_list_right.png);
  background-repeat: no-repeat;
  background-position: left 7px;
  background-size: 6px;
  display: block;
  padding-left: 12px;
}

.conts .center_only .info .link {
  text-align: right;
  margin-bottom: 35px;
}

.conts .center_only .btns {
  margin-bottom: 40px;
  border: 3px solid #022361;
}

.conts .center_only .btns a {
  display: block;
  position: relative;
}

.conts .center_only .btns a:after {
  background: url(/opedu/static/page/open/images/about_icon_bottom.png) no-repeat right bottom;
  display: block;
  position: absolute;
  content: '';
  width: 24px;
  height: 24px;
  background-size: 24px;
  right: 0;
  bottom: 0;
}

.conts .center_only .btns div {
  display: table-cell;
  vertical-align: middle;
  padding: 0;
  line-height: 1;
}

.conts .center_only .btns .txt {
  width: 540px;
  line-height: 1.6;
  padding-left: 30px;
}

.conts .center_only .btns img {
  width: 100%;
  line-height: 1.0;
  vertical-align: bottom;
}

.conts .center_only .btns h3 {
  font-weight: bold;
  padding-top: 4px;
  margin-bottom: 13px;
}

.conts .center_only .btn_list {
  margin-bottom: 80px;
}

.conts .center_only .btn_list li {
  margin-bottom: 40px;
  float: left;
  border: 3px solid #022361;
  position: relative;
}

.conts .center_only .btn_list li:after {
  background: url(/opedu/static/page/open/images/about_icon_bottom.png) no-repeat right bottom;
  display: block;
  position: absolute;
  content: '';
  width: 24px;
  height: 24px;
  background-size: 24px;
  right: 0;
  bottom: 0;
}

.conts .center_only .btn_list li a {
  display: table-cell;
  vertical-align: middle;
  width: 386px;
  height: 94px;
  font-size: 115%;
  font-weight: bold;
  padding-left: 105px;
  padding-right: 20px;
  text-decoration: none;
}

.conts .center_only .btn_list li a:hover {
  color: #000 !important;
}

.conts .center_only .btns a:hover {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/navi_on_bg.gif);
  color: #000 !important;
  text-decoration: none;
}

.conts .center_only .btn_list li:hover {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/navi_on_bg.gif);
  color: #000 !important;
  text-decoration: none;
}

.conts .center_only .btn_list li:first-child a {
  line-height: 1.3;
}

.conts .center_only .btn_list li:nth-child(even) {
  float: right;
}

.conts .center_only .btn_list li a img {
  float: left;
}

.conts .center_only .contact {
  clear: both;
  text-align: center;
  padding-top: 15px;
}

.conts .center_only .contact a {
  padding-left: 35px;
}

/*login*/
.center_only_wide01 {
  border-top: none !important;
  padding: 0px 40px 40px 40px !important;
}

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

.conts .center_only_narrow01 {
  padding: 60px 72px;
}

.center_only_narrow02 {
  padding: 60px 42px 2px 42px !important;
}

@media (min-width: 680px) {
  .conts.page, .conts.effort, .conts.page, .conts.login {
    padding-top: 40px !important;
  }
}

.conts.effort .area_float_wrapper {
  text-align: left !important;
}

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

.conts .login_area {
  text-align: center;
}

.conts .login_area h2.tit {
  padding: 90px 0 25px 0;
}

.conts .login_area h2.tit2 {
  padding: 90px 0 135px 0;
}

.conts .login_area p.txt {
  padding-bottom: 150px;
}

.conts h1.tit_style01, .conts .h1_imitate.tit_style01 {
  font-size: 172%;
  font-weight: bold;
  border-bottom: 1px solid #022361;
  padding: 10px 0 12px 41px;
  margin-bottom: 40px;
}

.conts .h1_imitate_h2.tit_style01 {
  font-size: 143%;
  font-weight: bold;
  border-bottom: 1px solid #022361;
  padding: 10px 0 12px 41px;
  margin-bottom: 40px;
}

.conts h2.tit_style01 {
  font-size: 143%;
  font-weight: bold;
  border-bottom: 1px solid #022361;
  padding: 10px 0 12px 0px;
  margin-bottom: 20px;
}

.conts .h2_imitate.tit_style01 {
  font-size: 172%;
  font-weight: bold;
  border-bottom: 1px solid #022361;
  padding: 10px 0 12px 41px;
  margin-bottom: 20px;
}

.conts .h2_imitate_h1.tit_style01 {
  font-size: 172%;
  font-weight: bold;
  border-bottom: 1px solid #022361;
  padding: 10px 0 12px 0px;
  margin-bottom: 20px;
}

.conts h3.tit_style01 {
  border-left: 4px solid #022361;
  background: #fff url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/tit_bg.png);
  font-size: 129%;
  font-weight: bold;
  padding: 6px 15px;
  margin-bottom: 18px;
}

.conts h4.tit_h4 {
  font-weight: bold;
  font-size: 110%;
  margin-bottom: 15px;
}

.h5_simple01 {
  font-weight: bold;
  background: #f7f7f7;
  border-top: 1px dotted #ccc;
  border-bottom: 1px dotted #ccc;
  padding: 5px 8px 4px 8px;
  margin-bottom: 15px;
}

/*競技別アイコン*/
.no-bor-l {
  border-left: 0 none transparent !important;
}

.no-bor-r {
  border-right: 0 none transparent !important;
}

.conts.page .style01 table td.no-bor-r, .conts.page .style01 table th.no-bor-r {
  border-right: 0 none transparent !important;
}

table.tbl-no-min-w th, table.tbl-no-min-w td {
  min-width: auto !important;
  width: auto !important;
}

.conts.page .style01 table.tbl-no-min-w th, .conts.page .style02 table.tbl-no-min-w th, .conts.page .style01 table.tbl-no-min-w td, .conts.page .style02 table.tbl-no-min-w td {
  min-width: initial;
  min-width: auto;
  padding-left: 1px !important;
  padding-right: 1px !important;
}

@media (min-width: 680px) {
  .conts.page .style01 table.tbl-no-min-w th, .conts.page .style02 table.tbl-no-min-w th, .conts.page .style01 table.tbl-no-min-w td, .conts.page .style02 table.tbl-no-min-w td {
    min-width: auto !important;
    width: auto !important;
    padding: 0 !important;
  }
}

.conts.page .style01 table th {
  width: 163px;
  background: #f9f9f9;
  vertical-align: middle;
  text-align: center;
}

.conts.page .style01 table th.wi-auto01 {
  width: auto;
  white-space: nowrap;
}

.conts.page .style01 table .schedule_ti01 {
  background: #ccc none repeat scroll 0 0;
  border: 1px solid #fafafa;
  padding: 8px;
  /*    text-align: center;*/
}

.conts.page .style01 table .head td {
  text-align: center;
  padding: 8px;
}

.conts.page .style01 table .tableTitle td {
  background: #f9f9f9;
}

.conts.page .style01 table td {
  text-align: left;
  padding: 15px 14px;
}

.conts.page .style01 table td.td_num {
  text-align: center;
}

.conts.page .style01 table.table_style02 td {
  padding: 30px !important;
}

.conts.page .style01 table.table_style02 td p {
  margin-bottom: 20px;
}

/*201602 category\olympics */
.conts .style01 table.table_no_style {
  width: auto;
  margin: 0;
}

.conts .style01 table.table_no_style th, .conts .style01 table.table_no_style td {
  width: auto;
  padding: 5px;
  border: none;
}

.conts.login .ipass {
  width: 550px;
  padding: 30px 0 20px 25px;
  border-radius: 10px;
  margin: 0 auto;
  border: 1px solid #022361;
  margin-bottom: 20px;
}

.conts.login .ipass dl {
  clear: both;
}

.conts.login .ipass dt {
  float: left;
  width: 180px;
  margin-bottom: 15px;
  text-align: right;
  padding: 3px 10px 0 0;
}

.conts.login .ipass dd {
  float: left;
  margin-bottom: 15px;
}

.conts.login .ipass:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.conts.login .ipass label {
  float: left;
  width: 180px;
  margin-bottom: 15px;
  text-align: right;
  padding: 3px 10px 0 0;
}

.conts.login .ipass input {
  float: left;
  margin-bottom: 15px;
}

.conts .error {
  color: #022361;
  text-align: center;
  margin-bottom: 20px;
}

.conts .btn_style01 {
  width: 160px;
  margin: 0 auto 20px;
}

.conts .btn_style01 input, .conts .btn_style01 a {
  border: 1px solid #022361;
  cursor: pointer;
  width: 160px;
  border-radius: 25px;
  padding: 13px;
  display: block;
  text-align: center;
  font-weight: bold;
  font-size: 115%;
  background: #fff url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/allow_icon.png) no-repeat right 15px center;
  text-decoration: none;
  background-size: 7px !important;
}

.conts .btn_style01 input:hover {
  background: #022361 url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/allow_icon_hover.png) no-repeat right 15px center;
  text-decoration: none;
  color: #fff !important;
}

.conts .btn_style01 a {
  font-family: Arial, sans-serif;
}

.conts .btn_style01 a:hover {
  background: #022361 url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/allow_icon_hover.png) no-repeat right 15px center;
  text-decoration: none;
  color: #fff !important;
}

.conts .btn_style01.middle {
  width: 250px;
}

.conts .btn_style01.middle input {
  width: 250px;
}

.conts .btn_style02 {
  width: 160px;
  margin: 0 auto 20px;
}

.conts .btn_style02 input, .conts .btn_style02 a {
  width: 160px;
  cursor: pointer;
  border: 1px solid #c1c1c1;
  background: #e8e8e8;
  border-radius: 20px;
  padding: 7px 10px;
  display: block;
  text-align: center;
  font-weight: bold;
  font-size: 100%;
  text-decoration: none;
}

.conts .btn_style02 input:hover, .conts .btn_style02 a:hover {
  background: #D8D8D8;
  color: #333 !important;
}

.conts.login .forgot {
  text-align: center;
  margin-bottom: 20px;
}

.conts.login .forgot a {
  text-decoration: underline;
}

.conts.login .des {
  background: #efefef;
  padding: 20px;
  border-radius: 10px;
  text-align: center;
  line-height: 2;
}

/*login*/
/* login */
/* table */
table.table {
  width: 100%;
  margin: 0 auto 20px;
}

table.table td, table.table th {
  padding: 20px;
  border-bottom: 1px dotted #c1c1c1;
}

table.form {
  width: 100%;
  margin: 0 auto 30px;
  border: 1px solid #c1c1c1;
}

table.form td {
  padding: 20px;
  border-bottom: 1px solid #c1c1c1;
  text-align: left;
}

table.form th {
  padding: 20px;
  border-bottom: 1px solid #c1c1c1;
  text-align: left;
  width: 300px;
  vertical-align: middle;
  text-align: left;
  background: #f9f9f9;
}

table.form.style01 th {
  width: 160px !important;
}

table.form.style02 th {
  width: 300px !important;
}

table.form th p {
  float: left;
}

table.form th p small {
  display: block;
  line-height: 1.3;
}

table.form .error {
  text-align: left;
  margin: 10px 0 0 0;
}

.must {
  float: right;
  display: block;
  font-weight: bold;
  padding: 2px 11px;
  background: #022361;
  text-align: center;
  color: #fff;
  line-height: 25px;
  border-radius: 16px;
}

/*------------------
 jp site header
------------------- */
header {
  line-height: 1.5;
}

header > .inner {
  position: relative;
  border: none;
  outline: none;
}

@media (min-width: 680px) {
  header > .inner {
    width: 958px;
    margin: 0 auto;
  }
}

header .button-menu {
  position: absolute;
  top: 14%;
  right: 0;
  background: #002063 url(/en/assets/images/common/header/button_menu.png) no-repeat center center;
  text-indent: -1000px;
  width: 45px;
  height: 45px;
}

@media (min-width: 680px) {
  header .button-menu {
    display: none;
  }
}

header .button-menu.is-active {
  background: #002063 url(/en/assets/images/common/header/button_menu_on.png) no-repeat center center;
}

@media (min-width: 680px) {
  header .left-side {
    float: left;
  }
}

header .left-side .logo {
  padding: 15px 0 0;
  font-size: 12px;
  max-width: 200px;
  width: 42%;
}

@media (min-width: 680px) {
  header .left-side .logo {
    padding: 12px 0 0;
    width: 133px;
  }
}

header .left-side .logo img {
  width: 168px;
}

header .left-side .txt {
  margin: -5px 0 12px;
  line-height: 1;
  width: 80%;
  max-width: 300px;
}

@media (min-width: 680px) {
  header .left-side .txt {
    width: auto;
    max-width: none;
    margin: 0 0 12px;
    width: 350px;
  }
}

@media (min-width: 680px) {
  header .right-side {
    float: right;
    padding-top: 12px;
  }
}

header .right-side .upper {
  display: none;
}

@media (min-width: 680px) {
  header .right-side .upper {
    display: block;
  }
}

header .right-side .upper .links {
  text-align: right;
}

header .right-side .upper .links li {
  display: inline;
  font-size: 0.93em;
  margin-left: 31px;
}

header .right-side .upper .links li:first-child {
  margin-left: 0;
}

header .right-side .upper .links li a {
  text-decoration: underline;
}

header .right-side .upper .links li a:hover {
  text-decoration: none !important;
}

header .right-side .lower {
  margin-bottom: 10px;
}

@media (min-width: 680px) {
  header .right-side .lower {
    margin-top: 9px;
  }
}

header .right-side .lower .button-sitemap {
  background: #dfe0e6;
  padding: 2.5px 15px;
  margin-right: 10px;
  display: none;
}

@media (min-width: 680px) {
  header .right-side .lower .button-sitemap {
    float: left;
    display: block;
    color: #022361;
    font-size: 0.93em;
  }
}

@media (min-width: 680px) {
  header .right-side .lower .search-form {
    float: left;
  }
}

header .right-side .lower .search-form .form {
  font-size: 12px;
  position: relative;
  background: #fff;
}

header .right-side .lower .search-form .form .text,
header .right-side .lower .search-form .form .submit {
  display: inline-block;
  vertical-align: middle;
}

header .right-side .lower .search-form .form .text {
  height: 25px;
  padding: 7px 5px;
  border: 1px solid #dfe0e6;
  font-size: 100%;
  width: calc(100% - 6em);
}

@media (min-width: 680px) {
  header .right-side .lower .search-form .form .text {
    width: 260px;
  }
}

header .right-side .lower .search-form .form .submit {
  height: 25px;
  margin-left: -5px;
  color: #022361;
  width: 5.6em;
  border: 1px solid #dfe0e6;
  background: #dfe0e6;
}

@media (min-width: 680px) {
  header .right-side .lower .search-form .form .submit {
    background: #022361;
    border: 1px solid #022361;
    color: #fff;
    font-size: 1em;
  }
}

header .gnav {
  background: #022361;
  display: none;
}

@media (min-width: 680px) {
  header .gnav {
    display: block;
    overflow: hidden;
  }
}

header .gnav .top,
header .gnav .menu {
  display: inline-block;
  vertical-align: top;
}

@media (min-width: 680px) {
  header .gnav .top {
    height: 47px;
  }
}

header .gnav .top .top-link {
  display: block;
  width: 60px;
  margin: 0 auto;
  background: url(/en/assets/images/common/icons/top_icon_off.png) no-repeat;
  background-size: 21px;
  background-position: center 7px;
  background-color: #022361;
  padding: 33px 0 6px;
  text-align: center;
  font-size: 0.6em;
  color: white;
}

header .gnav .top.is-active .top-link, header .gnav .top:hover .top-link {
  background: url(/en/assets/images/common/icons/top_icon.png) no-repeat;
  background-color: #fff;
  background-size: 21px;
  background-position: center 7px;
  color: #002063;
}

header .gnav .menu {
  width: 930px;
}

@media (min-width: 680px) {
  header .gnav .menu {
    margin-left: -8px;
  }
}

header .gnav .menu:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

header .gnav .menu ul {
  display: table;
}

@media (min-width: 680px) {
  header .gnav .menu ul {
    margin-bottom: -5px;
  }
}

header .gnav .menu li {
  display: table-cell;
  vertical-align: middle;
  transition: 0.1s;
}

header .gnav .menu li:hover, header .gnav .menu li.is-active {
  background: #fff;
}

header .gnav .menu li:hover a, header .gnav .menu li.is-active a {
  color: #022361;
}

header .gnav .menu li a {
  color: #fff;
  line-height: 1.4;
  display: block;
  padding: 5px 20px;
}

@media (min-width: 680px) {
  header .gnav .menu li a {
    padding: 5px 20px 10px;
    font-size: 12px;
  }
}

header .sp-menu {
  display: none;
}

header .sp-menu.is-active {
  display: block;
}

header .sp-menu .wrap_sma_sch {
  position: absolute;
  width: 100%;
  z-index: 9999;
  display: none;
  box-sizing: border-box;
  font-size: 116.7%;
  line-height: 1.72;
  background: rgba(0, 0, 0, 0.5);
}

header .sp-menu .wrap_sma_sch .sma_sch {
  padding: 15px 20px;
  background: #002063;
  color: #FFFFFF;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_hnavi:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0.1%;
  line-height: 0.1;
  clear: both;
  visibility: hidden;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_hnavi ul {
  list-style: none;
  list-style-image: none;
  margin: 0 0 5px;
  text-align: center;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_hnavi ul li {
  margin: 0 0 10px;
  font-size: 87.5%;
  width: 100%;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_hnavi ul li a {
  display: block;
  color: #FFFFFF;
  background: #3e4770;
  padding: 6px 5px 5px;
  text-decoration: none;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_gnavi {
  margin-bottom: 20px;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_gnavi ul {
  list-style: none;
  list-style-image: none;
  margin: 0;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_gnavi ul li {
  margin-top: 2px;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_gnavi ul li a {
  background: #FFFFFF;
  color: #222222;
  display: block;
  padding: 12px 15px 9px;
  text-decoration: none;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_snavi {
  margin-bottom: 15px;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_snavi:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0.1%;
  line-height: 0.1;
  clear: both;
  visibility: hidden;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_snavi p {
  width: 50%;
  float: left;
}

header .sp-menu .wrap_sma_sch .sma_sch #tmp_sma_snavi p a {
  color: #FFFFFF;
  font-size: 87.5%;
  text-decoration: underline;
}

header .sp-menu .wrap_sma_sch .sma_sch .close_btn {
  border-top: 1px solid #3e4770;
  margin: 0 -20px;
  padding: 15px 0 0;
}

header .sp-menu .wrap_sma_sch .sma_sch .close_btn a {
  display: block;
  margin: 0 auto;
  width: 40%;
  padding: 6px 5px;
  text-align: center;
  background: #dfe0e6;
  color: #002063;
  text-decoration: none;
}

header .sp-menu .wrap_sma_sch .sma_sch .close_btn a span {
  background: url(/en/assets/images/common/header/close.png) left center no-repeat;
  background-size: 12px 12px;
  padding: 0 0 0 20px;
}

.top_navi {
  border-top: 3px solid #022361;
  border-bottom: 3px solid #022361;
  background-color: rgba(255, 255, 255, 0.8);
  box-sizing: content-box !important;
}

.pnavi {
  width: auto;
  padding: 0 15px;
  margin-top: 30px;
}

@media (min-width: 680px) {
  .pnavi {
    width: 960px;
    margin: 0 auto;
  }
}

.pnavi:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0.1%;
  line-height: 0.1;
  clear: both;
  visibility: hidden;
}

.pnavi .ptop {
  text-align: right;
}

.pnavi .ptop a {
  text-align: center;
  display: inline-block;
  background: #002063;
  color: #FFFFFF;
  text-decoration: none;
  width: 160px;
  padding: 9px 5px 7px;
}

.pnavi .ptop a:hover {
  background: #69799e;
}

/**
 * BxSlider v4.1.2 - Fully loaded, responsive content slider
 * http://bxslider.com
 *
 * Written by: Steven Wanderski, 2014
 * http://stevenwanderski.com
 * (while drinking Belgian ales and listening to jazz)
 *
 * CEO and founder of bxCreative, LTD
 * http://bxcreative.com
 */
/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
  position: relative;
  margin: 0 auto;
  padding: 0;
  *zoom: 1;
}

.bx-wrapper img {
  max-width: 100%;
  display: block;
}

/** THEME
===================================*/
.bx-wrapper .bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0);
  -moz-transform: translatez(0);
  -ms-transform: translatez(0);
  -o-transform: translatez(0);
  transform: translatez(0);
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  width: 100%;
}

/* LOADER */
.bx-wrapper .bx-loading {
  min-height: 50px;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}

/* PAGER */
.bx-wrapper .bx-pager {
  text-align: center;
  font-size: .85em;
  font-family: Arial;
  font-weight: bold;
  color: #666;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  *zoom: 1;
  *display: inline;
}

.bx-wrapper .bx-pager.bx-default-pager a {
  background: #666;
  text-indent: -9999px;
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  outline: 0;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #002063;
}

/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
  left: 0;
}

.bx-wrapper .bx-prev:before {
  font-family: 'icomoon';
  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;
  content: "\e615";
}

.bx-wrapper .bx-next {
  right: 0;
}

.bx-wrapper .bx-next:before {
  font-family: 'icomoon';
  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;
  content: "\e616";
}

.bx-wrapper .bx-prev:hover {
  background-position: 0 0;
}

.bx-wrapper .bx-next:hover {
  background-position: -43px 0;
}

.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 4.6875%;
  outline: 0;
  display: none;
  width: 30px;
  height: 30px;
  background: #ededed;
  -webkit-box-shadow: 0 0 5px #202025;
  -moz-box-shadow: 0 0 5px #202025;
  -ms-box-shadow: 0 0 5px #202025;
  -o-box-shadow: 0 0 5px #202025;
  box-shadow: 0 0 5px #202025;
  text-indent: -9999px;
  text-align: center;
  z-index: 999;
}

.bx-wrapper .bx-controls-direction a:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  text-indent: 0;
  text-align: center;
  font-size: 85.71429%;
  line-height: 250%;
  color: #002063;
}

.bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}

/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
  text-align: center;
}

.bx-wrapper .bx-controls-auto .bx-start {
  text-indent: -9999px;
  width: 10px;
  height: 11px;
  outline: 0;
  background: url(/en/assets/images/common/icons/play.jpg) top left no-repeat;
  background-size: contain;
  margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop {
  text-indent: -9999px;
  width: 9px;
  height: 11px;
  outline: 0;
  background: url(/en/assets/images/common/icons/pause.jpg) top left no-repeat;
  background-size: contain;
  margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
  opacity: 0.8;
}

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
  text-align: left;
  width: 80%;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  right: 0;
  width: 35px;
}

/* IMAGE CAPTIONS */
.bx-wrapper .bx-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #666 \9;
  background: rgba(80, 80, 80, 0.75);
  width: 100%;
}

.bx-wrapper .bx-caption span {
  color: #fff;
  font-family: Arial;
  display: block;
  font-size: .85em;
  padding: 10px;
}

/** FOR SMART PHONE
===================================*/
@media screen and (max-width: 679px) {
  .bx-wrapper .bx-controls-direction a {
    display: block;
  }
}

/** FOOTER BANNER
===================================*/
.sliderArea .bx-controls-auto {
  position: absolute;
  right: 0;
  bottom: 0;
  width: auto;
  height: auto;
  line-height: 35px;
}

.sliderArea .bx-controls-auto-item .bx-stop {
  border-left: 0 none;
}

@media screen and (max-width: 679px) {
  .sliderArea .bx-controls-auto {
    display: none;
  }
}

footer a:hover {
  text-decoration: none !important;
}

/** FOOTER BANNER
===================================*/
.footerBannerArea {
  padding: 15px 0 0;
  border-top: 3px solid #002063;
  background: #dfe0e6;
}

.footerBannerArea .bx-controls {
  margin-top: 10px;
  line-height: 16px;
  white-space: nowrap;
}

.footerBannerArea .bx-default-pager,
.footerBannerArea .bx-controls-auto {
  display: inline-block;
  letter-spacing: normal;
  vertical-align: middle;
  position: static;
  height: 16px;
  line-height: 16px;
}

.footerBannerArea .bx-pager {
  position: static;
  margin-left: 34px;
}

.footerBannerArea .bx-pager.bx-default-pager a {
  margin: 0;
  background: #fff;
}

.footerBannerArea .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
  width: auto;
  margin-left: 0;
}

.footerBannerArea .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  width: auto;
  margin-left: 10px;
}

.footerBannerArea .bx-pager-item {
  line-height: 10px;
}

.footerBannerArea .bx-pager-item + .bx-pager-item {
  margin-left: 10px;
}

.footerBannerArea .bx-controls-direction {
  display: none;
}

.footerBannerArea .bx-has-controls-auto {
  text-align: center;
}

.footerBannerArea .bx-has-controls-auto .bx-start {
  position: relative;
  display: block;
  width: 24px;
  height: 16px;
  margin: 0;
  background-size: contain;
}

.footerBannerArea .bx-has-controls-auto .bx-start.active {
  display: none;
}

.footerBannerArea .bx-has-controls-auto .bx-stop {
  position: relative;
  display: block;
  width: 24px;
  height: 16px;
  margin: 0;
}

.footerBannerArea .bx-has-controls-auto .bx-stop.active {
  display: none;
}

@media screen and (max-width: 679px) {
  .footerBannerArea {
    padding: 22px 15px 0;
  }
}

/*
footer__body
--------------------------- */
.footerBannerSlider a {
  display: block;
}

.footerBannerSlider a:hover, .footerBannerSlider a:active {
  background: #fff;
}

.footerBannerSlider a:hover img, .footerBannerSlider a:active img {
  -webkit-opacity: 0.8;
  -moz-opacity: 0.8;
  -ms-opacity: 0.8;
  -o-opacity: 0.8;
  opacity: 0.8;
}

.footerBannerSlider.-noSlider, .footerBannerSlider.-noSlider_sp {
  letter-spacing: -0.34em;
  text-align: center;
  white-space: nowrap;
}

.footerBannerSlider.-noSlider .footerBannerSlider__item, .footerBannerSlider.-noSlider_sp .footerBannerSlider__item {
  display: inline-block;
  letter-spacing: normal;
  width: 20%;
  padding: 0 5px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

@media screen and (max-width: 679px) {
  .footerBannerSlider__item img {
    width: 100%;
  }
  .footerBannerSlider.-noSlider_sp .footerBannerSlider__item {
    width: 50%;
  }
}

#tmp_foot_link {
  padding: 15px 4px;
  background: #dfe0e6;
  color: inherit;
}

@media (min-width: 680px) {
  #tmp_foot_link {
    padding: 14px 0 20px;
  }
}

#tmp_foot_link #tmp_flink {
  margin: 0 auto;
}

@media (min-width: 680px) {
  #tmp_foot_link #tmp_flink {
    width: 960px;
  }
}

#tmp_foot_link #tmp_flink ul {
  list-style: none;
  list-style-image: none;
  padding: 0 10px;
}

@media (min-width: 680px) {
  #tmp_foot_link #tmp_flink ul {
    padding: auto;
  }
}

#tmp_foot_link #tmp_flink ul:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0.1%;
  line-height: 0.1;
  clear: both;
  visibility: hidden;
}

#tmp_foot_link #tmp_flink ul li {
  width: 50%;
  height: 65px;
  box-sizing: border-box;
  padding: 0 2px;
  margin-top: 4px;
  float: left;
  text-align: center;
  display: table;
}

@media (min-width: 680px) {
  #tmp_foot_link #tmp_flink ul li {
    width: 25%;
  }
}

#tmp_foot_link #tmp_flink ul li:nth-child(2n+1) {
  clear: both;
}

@media (min-width: 680px) {
  #tmp_foot_link #tmp_flink ul li:nth-child(2n+1) {
    clear: none;
  }
}

@media (min-width: 680px) {
  #tmp_foot_link #tmp_flink ul li:nth-child(4n+1) {
    clear: both;
  }
}

#tmp_foot_link #tmp_flink ul li a {
  display: table-cell;
  padding: 9px 15px 8px;
  background: #FFFFFF;
  color: #002063;
  text-decoration: none;
  font-size: 0.86em;
  line-height: 1.4;
  vertical-align: middle;
}

@media (min-width: 680px) {
  #tmp_foot_link #tmp_flink ul li a {
    font-size: 108.3%;
  }
}

#tmp_foot_link #tmp_flink ul li a:hover {
  background: #002063;
  color: #FFFFFF !important;
  text-decoration: none !important;
}

#tmp_fnavi {
  background: #3e4770;
  color: #FFFFFF;
}

#tmp_fnavi ul {
  margin: 0 auto;
  list-style: none;
  list-style-image: none;
  text-align: center;
  padding: 5px 30px;
}

#tmp_fnavi ul:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0.1%;
  line-height: 0.1;
  clear: both;
  visibility: hidden;
}

@media (min-width: 680px) {
  #tmp_fnavi ul {
    width: 960px;
    padding: auto;
  }
}

#tmp_fnavi ul li {
  color: #fff;
  padding: 8px 2px;
  width: 50%;
  float: left;
  font-size: 85.7%;
  text-align: left;
}

@media (min-width: 680px) {
  #tmp_fnavi ul li {
    padding: 8px 0;
    display: inline-block;
    font-size: 100%;
    text-align: center;
    float: none;
    width: auto;
  }
}

@media (min-width: 680px) {
  #tmp_fnavi ul li:first-child:before {
    content: "" !important;
    display: inline-block !important;
    width: 1px !important;
    height: 20px !important;
    margin: 0 15px !important;
    padding: 0 !important;
    background: #999 !important;
    vertical-align: middle;
    -webkit-border-radius: 0 !important;
    border-radius: 0 !important;
  }
  #tmp_fnavi ul li:after {
    content: "" !important;
    display: inline-block !important;
    width: 1px !important;
    height: 20px !important;
    margin: 0 15px !important;
    padding: 0 !important;
    background: #999 !important;
    vertical-align: middle;
    -webkit-border-radius: 0 !important;
    border-radius: 0 !important;
  }
}

#tmp_fnavi ul li a {
  color: #FFFFFF;
  text-decoration: underline;
}

#tmp_faddress {
  background: #002063;
  color: #FFFFFF;
  padding: 11px 20px 9px;
  line-height: 1.24;
  text-align: left;
  font-size: 85.7%;
  text-align: center;
}

@media (min-width: 680px) {
  #tmp_faddress {
    padding: auto;
    font-size: 100%;
  }
}

#tmp_faddress > p {
  word-break: normal;
}

#tmp_faddress address {
  font-style: normal;
  margin-bottom: 10px;
  line-height: 1.5;
}

#tmp_faddress address p {
  margin: 3px 0;
}

#tmp_faddress address span {
  margin: 0 1em 0 0;
}

@media (min-width: 680px) {
  #tmp_faddress address span.spbr {
    display: inline;
  }
}

.to-pc {
  backgroud: #fff;
  padding: 25px 14px;
  text-align: center;
}

@media (min-width: 680px) {
  .to-pc {
    display: none;
  }
}

.to-pc .to-pc-button {
  display: block;
  background: #dfe0e6;
  color: #022361;
  padding: 10px;
}

@media (min-width: 680px) {
  .culture.learn .conts .inner > .center, .culture.do .conts .inner > .center, .culture.support .conts .inner > .center, .culture.watch .conts .inner > .center,
  .spirit.learn .conts .inner > .center,
  .spirit.do .conts .inner > .center,
  .spirit.support .conts .inner > .center,
  .spirit.watch .conts .inner > .center,
  .sports.learn .conts .inner > .center,
  .sports.do .conts .inner > .center,
  .sports.support .conts .inner > .center,
  .sports.watch .conts .inner > .center,
  .environment.learn .conts .inner > .center,
  .environment.do .conts .inner > .center,
  .environment.support .conts .inner > .center,
  .environment.watch .conts .inner > .center {
    width: 690px;
  }
}

/*----------------
  info module
  ---------------*/
.conts.infolist.index .inner .info dl {
  background-image: url(/opedu/static/page/open/images/common/icons/arrow_right.png);
  background-repeat: no-repeat;
  background-position: 98% 45%;
}

@media (min-width: 680px) {
  .conts.infolist .inner {
    width: 900px;
  }
}

.conts.infolist .inner .info {
  padding-bottom: 50px;
}

.conts.infolist .inner .info a:hover {
  text-decoration: underline;
  color: #022361;
}

.conts.infolist .inner .info dl {
  margin: 0 auto 15px;
  background-size: 11px;
}

.conts.infolist .inner .info dl dt {
  color: #022361;
  padding-right: 15px;
}

.conts.infolist .inner .info dl dt p {
  float: left;
  margin-right: 10px;
}

.conts.infolist .inner .info .cates li {
  float: left;
  background: #022361;
  min-width: 75px;
  padding: 2px 10px;
  color: #fff;
  text-align: center;
  margin: 0 10px 3px 0;
  font-weight: bold;
  font-size: 76%;
}

.conts.infolist .inner .info dl dd {
  clear: both;
  padding: 10px 40px 15px 0;
  border-bottom: 1px solid #c1c1c1;
}

.conts.infolist .inner .info dl dd.body {
  padding: 20px 0;
}

/*-------------------
  pagination module
 -------------------*/
.pagination {
  margin-bottom: 80px;
  text-align: center;
}

.pagination .num {
  display: inline-block;
  padding: 3px 8px;
  margin-right: 4px;
  margin-bottom: 5px;
  background: #f3f3f3;
  font-size: .875em;
  font-weight: bold;
  text-decoration: none;
  color: #717171;
}

.pagination .num:hover {
  background: #022361;
  color: #fff;
  text-decoration: none !important;
}

.pagination .num.active {
  background: #fff;
  border: solid 1px #022361;
  color: #022361;
}

.pagination .num.active:hover {
  color: #022361;
}

.goinfolist {
  margin-bottom: 15px;
  float: right;
}

.infobodyimage {
  margin-bottom: 20px;
}

.form_search {
  font-size: 12px;
  position: relative;
  width: 220px;
}

.form_search .sbt {
  position: absolute;
  top: 5px;
  right: 9px;
  width: 18px;
}

.form_search input {
  border: 1px solid #c1c1c1;
  width: 220px;
  height: 30px;
  border-radius: 15px;
  padding: 0 28px 0 8px;
  font-size: 12px;
  background: #f2f2f2;
}

.part {
  margin-bottom: 30px;
}

.part:last-child {
  margin-bottom: 50px;
}

.small_txt {
  font-size: 86%;
}

.form label {
  margin: 5px 10px 5px 0;
  display: inline-block;
}

.result {
  border: 2px solid #022361;
  padding-top: 30px;
  margin-bottom: 35px;
}

.result .colum {
  border-bottom: 1px dotted #022361;
  padding-bottom: 30px;
}

.result .colum p {
  margin-bottom: 10px;
}

.result .colum:last-child {
  border: none;
  margin-bottom: 0;
}

.result .resultphoto {
  width: 40%;
}

.bottom_page ul li {
  list-style: disc;
  margin-left: 20px;
  margin-bottom: 10px;
}

.no_list_style > li {
  list-style: none;
  margin-left: 0;
}

.bottom_page ul.no_list_style > li {
  list-style: none;
  margin-left: 0;
}

.bottom_page img.fl {
  float: left;
  margin-right: 15px;
  margin-bottom: 15px;
}

/*--------------
  tab module
  -------------*/
.tab_section .tab {
  _position: relative;
}

.tab_section .tab.top:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.tab_section .tab.top a {
  border-radius: 8px 8px 0 0;
}

@media (min-width: 680px) {
  .tab_section .tab.top .current a {
    border-bottom: 2px solid #ffffff !important;
  }
}

.tab_section .tab.top.five-columns li {
  width: 19%;
  margin-right: 1.2%;
}

@media (min-width: 680px) {
  .tab_section .tab.top.five-columns li {
    width: 189.6px;
    margin-right: 13px;
  }
}

.tab_section .tab.top.five-columns li:last-child {
  margin-right: 0;
}

.tab_section .tab.top.two-columns li {
  width: 50%;
}

.tab_section .tab.top.two-columns li:first-child {
  float: left;
  padding-right: 1%;
}

@media (min-width: 680px) {
  .tab_section .tab.top.two-columns li:first-child {
    padding-right: 6px;
  }
}

.tab_section .tab.top.two-columns li:last-child {
  margin-right: 0;
  padding-left: 1%;
}

@media (min-width: 680px) {
  .tab_section .tab.top.two-columns li:last-child {
    padding-left: 6px;
  }
}

.tab_section .tab.top li {
  list-style: none;
  float: left;
}

.tab_section .tab.top li.current a {
  background: #ffffff;
}

.tab_section .tab.top li a {
  font-size: 0.7em;
  border-radius: 15px 15px 0 0;
  background: #e4e4e4;
  width: 100%;
  text-align: center;
  display: block;
  padding: 16px 0;
  text-decoration: none;
  line-height: 1;
}

@media (min-width: 680px) {
  .tab_section .tab.top li a {
    font-size: 1.145em;
  }
}

.tab_section .contents .content {
  padding: 30px 6% 40px;
  background-color: #ffffff;
  border-radius: 0 0 20px 20px;
}

/*イベント*/
.eventlist_lead {
  margin-bottom: 30px;
}

.conts .event {
  padding-bottom: 30px;
}

.conts .event .list:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.conts .event_body .colum_img:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.conts .event .list {
  border-top: 2px solid #022361;
  padding: 20px;
}

.conts .event .list img {
  float: left;
  margin-right: 15px;
}

.conts .event .list .txt {
  float: left;
  width: 289px;
}

.conts .event .list h3 {
  font-weight: bold;
  font-size: 115%;
  margin-bottom: 10px;
}

.conts .event .list p {
  margin-bottom: 15px;
}

.conts .event .list a {
  display: block;
}

.conts .event .list a:hover * {
  text-decoration: underline !important;
}

.conts .event .list .link {
  text-align: right;
}

.conts .event_body .colum_txt, .conts .event_body .colum_img {
  margin-bottom: 30px;
}

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

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

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

.spirit.do img.ph_left, .spirit.do img.ph_right {
  max-width: 200px;
}

@media screen and (max-width: 680px) {
  .spirit.do img.ph_left, .spirit.do img.ph_right {
    max-width: 100%;
  }
}

.conts .category p {
  margin-bottom: 30px;
}

.conts .tab_section .category_list {
  margin-bottom: 30px;
}

.conts .tab_section .category_list li {
  display: inline-block;
  width: 170px;
  margin-right: 7px;
  padding-bottom: 5px;
  vertical-align: top;
}

.conts .tab_section .category_list li a {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/side_allow.png) no-repeat left 5px;
  display: inline-block;
  padding-left: 15px;
}

.conts .tab_section .category_list li:nth-child(3n) {
  margin-right: 0px !important;
  margin-bottom: 13px;
}

.conts .tab_section .category_list li img {
  width: 100%;
}

.conts .tab_section .category_list li.icon_new01 a {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/side_allow_with_new01.png) no-repeat left 5px;
  display: inline-block;
  padding-left: 41px;
}

.conts .btn_ioc li {
  margin: 0 auto;
  border: 3px solid #022361;
  width: 386px;
  height: 94px;
  position: relative;
  overflow: hidden;
}

.conts .btn_ioc li:after {
  background: url(/opedu/static/page/open/images/about_icon_bottom.png) no-repeat right bottom;
  display: block;
  position: absolute;
  content: '';
  width: 24px;
  height: 24px;
  background-size: 24px;
  right: 0;
  bottom: 0;
}

.conts .btn_ioc li a {
  width: 386px;
  height: 94px;
  display: table-cell;
  vertical-align: middle;
  font-size: 115%;
  font-weight: bold;
  padding-left: 35px;
  padding-right: 20px;
  text-decoration: none;
  color: #000 !important;
}

.conts .btn_ioc li a:before {
  background: url(/opedu/static/page/open/images.b5cf947526894bd57f34048b139a6558/icon04.png) no-repeat left top;
  display: inline-block;
  content: '';
  width: 40px;
  height: 40px;
  background-size: 40px;
  vertical-align: middle;
  margin-right: 30px;
}

.conts .btn_ioc li a:hover {
  color: #000 !important;
  text-decoration: none;
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/navi_on_bg.gif) repeat left top;
}

/* 協議ボタン */
/* about olympic */
.about_olympic {
  padding-bottom: 60px !important;
}

/* game list */
.gamelist_tab {
  padding-bottom: 50px;
}

/*about site*/
.about_site .about_site_contact {
  float: right;
  text-align: center;
}

/*schedule*/
.conts.page .schedule_table {
  padding: 0 30px;
}

@media (min-width: 680px) {
  .conts.page .schedule_table {
    padding: 0;
  }
}

.conts.page .schedule_table table th {
  text-align: center;
  border: 1px solid #fafafa;
  background: #ccc;
}

.conts.page .schedule_table table td {
  font-size: 80%;
  border: 1px solid #c1c1c1;
}

.conts.page .schedule_table table td.txt_c {
  white-space: nowrap;
  vertical-align: middle;
}

@media (min-width: 680px) {
  .conts.page .schedule_table table td {
    font-size: 100%;
  }
  .conts.page .schedule_table table td:nth-child(2n) {
    width: 650px;
  }
}

.conts.page .schedule_table table th.schedule {
  width: auto !important;
}

/* effot example */
.effort_example_detail .part {
  overflow: hidden;
}

.effort_example_image {
  width: 50%;
  float: right;
  margin-left: 20px;
}

.effort_example_image img {
  max-width: 100%;
}

/* suggestion */
.table_suggestion tr td:first-child {
  width: 170px;
}

/* about education */
/* sitemap */
.conts.page .sitemap_area ul {
  margin-left: 15px;
}

.conts.page .sitemap_area ul li a {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/side_allow.png) no-repeat left 4px;
  padding-left: 20px;
  display: inline-block;
  padding-bottom: 7px;
  text-decoration: underline;
}

.conts.page .sitemap_area .sitemap_list_table td {
  padding: 0 0 3px 15px;
  vertical-align: top;
}

.conts.page .sitemap_area .sitemap_list_table td a {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/side_allow.png) no-repeat left 4px;
  padding-left: 20px;
  display: inline-block;
  padding-bottom: 7px;
  text-decoration: underline;
}

.conts.page .sitemap_area .sitemap_list_td-last {
  width: 55%;
}

.conts.page .sitemap_area ul.related_links li {
  margin-bottom: 15px;
}

.conts.page .accessibility_area a {
  background: url(/opedu/static/page/open/images.3717d50df5a0931a8334d9edf7295248/side_allow.png) no-repeat left 4px;
  padding-left: 20px;
  display: inline-block;
  padding-bottom: 7px;
  text-decoration: underline;
}

/*---------------
  inquiry module
 ---------------*/
.inqury_area {
  width: 100%;
  padding: 0 30px;
  box-sizing: border-box;
}

@media (min-width: 680px) {
  .inqury_area {
    width: auto;
    display: table;
    margin: 0 auto;
  }
}

.inqury_area p {
  margin-bottom: 20px;
}

.inqury_area ul {
  margin-bottom: 20px;
}

.inqury_area ul li {
  font-size: 80%;
  margin-left: 12px;
  text-indent: -12px;
  line-height: 1.7;
}

@media (min-width: 680px) {
  .inqury_area ul li {
    font-size: 100%;
    margin-left: 15px;
    text-indent: -15px;
    margin-bottom: 10px;
  }
}

/* about_site */
.about_site {
  padding-bottom: 40px;
}

.about_site h3 {
  font-weight: bold;
  margin: 20px 0;
}

.about_site h4 {
  font-weight: bold;
  margin: 15px 0;
  font-size: 110%;
}

.about_site h5 {
  font-weight: bold;
  margin: 10px 0;
  font-size: 100%;
}

.spirit.do .conts .event .list img {
  float: left;
  width: 200px;
  margin-right: 15px;
}

.font_red01 {
  color: #022361;
}

.menu_block03b ul.list li {
  list-style: disc;
  margin-bottom: 12px;
}

.menu_block03b ul.list li ul li {
  background-image: url(/en/assets/images.3717d50df5a0931a8334d9edf7295248/side_allow.png);
  background-repeat: no-repeat;
  background-position: left 7px;
  display: block;
  padding-left: 6px;
  list-style: none;
  margin-bottom: 12px;
  padding-left: 7em;
  text-indent: -7em;
}

.menu_block03b ul.list li ul li:nth-child(1) {
  margin-top: 12px;
}

.menu_block03b ul.list a {
  margin-left: 1em;
  color: #022361;
  text-decoration: underline;
}

.category_list_attention01 {
  margin-top: 0px;
  margin-bottom: 18px;
  font-size: 85%;
}

@media screen and (max-width: 680px) {
  .category_list_attention01 {
    margin-left: 10px;
    margin-top: 10px;
    margin-bottom: 10px;
    font-size: 80%;
  }
}

/*----------------
 card module
 ----------------*/
.card {
  border-radius: 24px;
  position: relative;
  min-height: 240px;
  background: #fff;
  overflow: hidden;
  box-sizing: initial;
}

.card.nolink:hover {
  box-shadow: none;
  border: none;
  margin: 0;
  cursor: default;
  outline: none;
}

.card.link-icon {
  background: url(/en/assets/images/common/icons/arrow_right.png) no-repeat;
  background-position: 96% 95%;
  background-size: 8px;
  background-color: #fff;
}

.card.empty {
  text-align: center;
  display: table;
  width: 100%;
}

.card.empty .image {
  display: table-cell;
  vertical-align: middle;
}

.card:hover {
  box-shadow: 0 4px 4px #aaa;
  border: 1px solid #777;
  margin: -1px;
  cursor: pointer;
}

.card:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.card .label {
  font-size: 87%;
  border-radius: 0 20px;
  background: #0a942b;
  color: #fff;
}

.card .card-img {
  border-radius: 24px 24px 0 0;
  font-size: 0;
}

.card .card-img img {
  width: 100%;
}

.card .card-body {
  padding: 6%;
  text-align: left;
}

.card .card-body .card-title {
  font-size: 0.93em;
}

@media (min-width: 680px) {
  .card .card-body .card-title {
    font-size: 1.145em;
  }
}

.card .card-body .card-text {
  margin-top: 10px;
  line-height: 1.4;
  font-size: 0.86em;
}

@media (min-width: 680px) {
  .card .card-body .card-text {
    font-size: 1em;
  }
}

.card .card-body .card-text:hover {
  text-decoration: none;
}

.card .card-body .option {
  margin-top: 10px;
}

.card .card-body .option .card-status > .item {
  display: inline-block;
}

.card .card-body .option .card-status > .item .icon {
  padding-top: 4px;
}

.card .card-body .option .card-status > .item .icon.is-active {
  padding-top: 0;
}

.card .card-body .option .pdf-link {
  text-align: right;
}

.card .card-body .option .pdf-link .pdf-link-inner {
  line-height: 1;
  vertical-align: middle;
  margin-top: 10px;
  text-align: right;
  font-size: 0.76em;
  padding: 0 18px 0 0;
  background: url(/en/assets/images/common/icons/arrow_right.png) no-repeat;
  background-size: 6px;
  background-position: 91% 45%;
  background-color: #fff;
  display: inline-block;
}

.card .card-body .option .pdf-link .pdf-link-inner span {
  word-break: break-word;
}

.card .card-body .option .text-link {
  line-height: 1;
  vertical-align: middle;
  margin-top: 10px;
  font-size: 0.76em;
  padding: 0 10% 0 2em;
  background: url(/en/assets/images/common/icons/arrow_right.png) no-repeat;
  background-size: 6px;
  background-position: 97% 50%;
  background-color: #fff;
  text-align: right;
}

@media (min-width: 680px) {
  .card .card-body .option .text-link {
    padding: 0 9% 0 2em;
    font-size: 0.86em;
  }
}

.card .card-body .option .external-link {
  line-height: 1;
  vertical-align: middle;
  margin-top: 20px;
  font-size: 0.76em;
  padding: 0 10% 0 2em;
  background: url(/en/assets/images/common/icons/out_icon.png) no-repeat;
  background-size: 12px;
  background-position: 97% 50%;
  background-color: #fff;
  text-align: right;
}

@media (min-width: 680px) {
  .card .card-body .option .external-link {
    padding: 0 9% 0 2em;
    font-size: 0.86em;
  }
}

/*----------------
 card group module
 ----------------*/
.card-group:after, .card-group .action:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.card-group > .item {
  width: 100%;
  float: left;
  margin-top: 20px;
}

.card-group > .item a {
  display: block;
  padding-bottom: 1px;
}

@media (min-width: 0) {
  .card-group.col-sm-6 > .item {
    width: 48%;
    margin-right: 4%;
  }
  .card-group.col-sm-6 > .item:nth-child(2n) {
    margin-right: 0;
  }
}

@media (min-width: 560px) {
  .card-group.col-md-6 > .item {
    width: 49%;
    margin-right: 2%;
  }
  .card-group.col-md-6 > .item:nth-child(2n) {
    margin-right: 0;
  }
}

@media (min-width: 680px) {
  .card-group.col-lg-12 {
    width: 100%;
  }
  .card-group.col-lg-6 > .item {
    width: 49%;
    margin-right: 2%;
  }
  .card-group.col-lg-6 > .item:nth-child(2n) {
    margin-right: 0;
  }
  .card-group.col-lg-3 > .item {
    width: 23.2653333333%;
    margin-right: 2%;
  }
  .card-group.col-lg-3 > .item:nth-child(2n) {
    margin-right: 2%;
  }
  .card-group.col-lg-3 > .item:nth-child(4n) {
    margin-right: 0;
  }
  .card-group.col-lg-4 > .item {
    width: 32%;
    margin-right: 2%;
  }
  .card-group.col-lg-4 > .item:nth-child(2n) {
    margin-right: 2%;
  }
  .card-group.col-lg-4 > .item:nth-child(3n) {
    margin-right: 0;
  }
}

.label {
  display: inline-block;
  line-height: 1;
  vertical-align: baseline;
  margin: 0 .14285714em;
  background-color: #e8e8e8;
  background-image: none;
  padding: .5833em .833em;
  color: rgba(0, 0, 0, 0.6);
  text-transform: none;
  border: 0 solid transparent;
}

.label.attached {
  position: absolute;
  margin: 0;
  top: 0;
  left: 0;
  padding: 0.75em 1.5em;
}

.label.attached.right {
  right: 0;
  left: auto;
}

/*----------------
 buttons
 ----------------*/
.basic-button {
  padding: 14px 54px;
  border: 1px solid #333;
  text-align: center;
  border-radius: 30px;
  display: inline-block;
  font-size: 1em;
  line-height: 1;
  color: #000;
  text-decoration: none;
}

.basic-button.inverted {
  color: #fff;
  background: #002063;
}

.basic-button.inverted:hover {
  color: #000;
  background: white;
  cursor: pointer;
}

.basic-button:hover {
  color: #fff;
  background: #002063;
}

.basic-button span {
  font-size: 76%;
  font-weight: lighter;
}

.link-button {
  background-image: url(/en/assets/images/common/icons/arrow_right.png);
  background-repeat: no-repeat;
  background-position: 90% center;
  background-size: 6px;
  padding: 14px 54px;
  border: 1px solid #333;
  text-align: right;
  margin-bottom: 35px;
  border-radius: 30px;
  display: inline-block;
  font-size: 1.145em;
  line-height: 1;
  color: #000;
  text-decoration: none;
  background-color: white;
}

.link-button:hover {
  background-image: url(/en/assets/images/common/icons/arrow_right_white.png);
  background-color: #022361;
  color: #fff;
}

.link-button span {
  font-size: 76%;
  font-weight: lighter;
}

.qualification-modal-button {
  text-align: center;
  margin: 10px 0;
}

@media (min-width: 680px) {
  .qualification-modal-button {
    text-align: right;
  }
  .qualification-modal-button.left-aligned {
    text-align: left;
  }
}

.inner-link-button {
  background-image: url(/en/assets/images/common/icons/arrow_down_s.png);
  background-repeat: no-repeat;
  background-position: right 18px center;
  background-color: #fff;
  background-size: 12px;
  padding: 14px 35px;
  border: 1px solid #333;
  text-align: center;
  border-radius: 30px;
  display: inline-block;
  font-size: 1em;
  line-height: 1;
  color: #000;
  text-decoration: none;
  transition: 0.2s;
}

.inner-link-button:hover {
  background-image: url(/en/assets/images/common/icons/arrow_down_white.png);
  background-color: #022361;
  color: #fff;
}

.inner-link-button span {
  font-size: 76%;
  font-weight: lighter;
}

/*----------------
 icons
 ----------------*/
.icon {
  background-repeat: no-repeat;
  width: 20px;
  height: 27px;
  background-size: 17px;
  background-position: center center;
  display: inline-block;
  vertical-align: middle;
}

@media (min-width: 680px) {
  .icon {
    width: 24px;
    height: 24px;
    background-size: 18px;
  }
}

.icon.medium {
  width: 36px;
  height: 36px;
  background-size: 36px;
}

.icon.medium.hand {
  background-image: url(/en/assets/images/common/icons/hand_m.png);
}

.icon.medium.heart {
  background-image: url(/en/assets/images/common/icons/heart_m.png);
}

.icon.medium.run {
  background-image: url(/en/assets/images/common/icons/run_m.png);
}

.icon.medium.sakura {
  background-image: url(/en/assets/images/common/icons/sakura_m.png);
}

.icon.medium.world {
  background-image: url(/en/assets/images/common/icons/world_m.png);
}

.icon.medium.environment {
  background-image: url(/en/assets/images/common/icons/environment_m.png);
  width: 51px;
  background-size: contain;
}

.icon.large {
  width: 40px;
  height: 40px;
  background-size: contain;
}

@media (min-width: 680px) {
  .icon.large {
    width: 60px;
    height: 60px;
  }
}

.icon.large.hand {
  background-image: url(/en/assets/images/common/icons/hand_large.png);
}

.icon.large.heart {
  background-image: url(/en/assets/images/common/icons/heart_large.png);
}

.icon.large.run {
  background-image: url(/en/assets/images/common/icons/run_large.png);
}

.icon.large.sakura {
  background-image: url(/en/assets/images/common/icons/sakura_large.png);
}

.icon.large.world {
  background-image: url(/en/assets/images/common/icons/world_large.png);
}

.icon.large.environment {
  background-image: url(/en/assets/images/common/icons/environment_large.png);
  width: 51px;
  background-size: contain;
}

.icon.is-active {
  background-size: contain;
}

.icon.hand {
  background-image: url(/en/assets/images/common/icons/hand_disactive.png);
}

.icon.hand.is-active {
  background-image: url(/en/assets/images/common/icons/hand_active.png);
}

.icon.heart {
  background-image: url(/en/assets/images/common/icons/heart_disactive.png);
}

.icon.heart.is-active {
  background-image: url(/en/assets/images/common/icons/heart_active.png);
}

.icon.run {
  background-image: url(/en/assets/images/common/icons/run_disactive.png);
}

.icon.run.is-active {
  background-image: url(/en/assets/images/common/icons/run_active.png);
}

.icon.sakura {
  background-image: url(/en/assets/images/common/icons/sakura_disactive.png);
}

.icon.sakura.is-active {
  background-image: url(/en/assets/images/common/icons/sakura_active.png);
}

.icon.world {
  background-image: url(/en/assets/images/common/icons/world_disactive.png);
}

.icon.world.is-active {
  background-image: url(/en/assets/images/common/icons/world_active.png);
}

.icon.pdf {
  background-image: url(/en/assets/images/common/icons/pdf_icon.png);
}

.icon.link {
  background-image: url(/en/assets/images/common/icons/arrow_right.png);
  width: 12px;
  height: 12px;
  background-size: contain;
}

/*-------------
 header module
 -------------*/
.section-header {
  font-size: 1em;
  position: relative;
  padding-bottom: 1.5%;
  text-align: center;
  margin-bottom: 30px;
}

@media (min-width: 680px) {
  .section-header {
    font-size: 1.5em;
  }
}

.section-header:after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  display: inline-block;
  width: 100px;
  height: 2px;
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #022361;
  border-radius: 2px;
}

.header {
  font-weight: bold;
}

.header.basic {
  font-weight: normal;
}

.header.centered {
  text-align: center;
}

.header.huge {
  min-height: 1em;
  font-size: 1.5em;
}

@media (min-width: 680px) {
  .header.huge {
    font-size: 2.2em;
  }
}

.header.large {
  font-size: 1.71428571em;
}

.header.medium {
  font-size: 1.57389068em;
}

.header.small {
  font-size: 1.28571429em;
}

/*----------------
 utilities
 ----------------*/
.lines-on-sides {
  color: #444;
  display: flex;
  align-items: center;
  display: inline-block\9;
}

.lines-on-sides:before, .lines-on-sides:after {
  content: "";
  flex-grow: 1;
  height: 1px;
  background: #444;
  display: block;
}

.lines-on-sides:before {
  margin-right: 5px;
}

.lines-on-sides:after {
  margin-left: 5px;
}

.lines-on-sides:not(:target):before, .lines-on-sides:not(:target):after {
  display: none\9;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  ::i-block-chrome, .lines-on-sides:before {
    display: none;
  }
  ::i-block-chrome, .lines-on-sides:after {
    display: none;
  }
}

/*----------------
 counter module
 ----------------*/
.counter {
  border: 1px solid #999;
  border-radius: 10px;
  display: table;
  text-align: center;
}

.counter li {
  display: table-cell;
  border-right: 1px solid #999;
  padding: 2px 8px;
  font-size: 200%;
}

.counter li:last-child {
  border: none;
}

/*----------------------
  customize slick slider
 ---------------------*/
.slick-slider .card {
  margin: 10px;
  width: 200px !important;
  height: 380px;
}

@media (min-width: 680px) {
  .slick-slider .card {
    width: 235px !important;
    box-sizing: border-box !important;
  }
}

.slick-slider .card .item {
  margin-right: 4px;
}

.slick-slider .card .option {
  padding-right: 6%;
  position: absolute;
  bottom: 6%;
  width: 100%;
}

.slick-slider .card:hover {
  border-width: 0;
}

@media (min-width: 680px) {
  .slick-slider .card:hover {
    border-width: 1px;
    width: 237px !important;
    margin: 9px;
    height: 382px;
  }
}

.slick-slider .slick-slide {
  outline: none;
}

.slick-slider .slick-arrow {
  width: 48px;
  height: 48px;
  top: calc(50% - 27px);
}

.slick-slider .slick-arrow div {
  width: 48px;
  height: 48px;
  background-size: 48px 48px;
  background-position: top left;
}

.slick-slider .slick-arrow div:hover {
  opacity: 0.8;
  background-position: top left;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .slick-slider ::i-block-chrome, .slick-slider .slick-arrow {
    top: 47.3%;
  }
}

.slick-slider .slick-prev {
  left: 10px;
}

@media (min-width: 680px) {
  .slick-slider .slick-prev {
    left: -14px;
  }
}

.slick-slider .slick-prev div {
  background-image: url("/en/assets/images/common/icons/carousel-arrow-left.png");
}

.slick-slider .slick-next {
  right: 10px;
}

@media (min-width: 680px) {
  .slick-slider .slick-next {
    right: -14px;
  }
}

.slick-slider .slick-next div {
  background-image: url("/en/assets/images/common/icons/carousel-arrow-right.png");
  background-position: top left !important;
}

@media (min-width: 0) {
  footer .top_navi .list {
    width: 100%;
  }
}

/*
 *  Remodal - v1.1.1
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */
/* ==========================================================================
   Remodal's necessary styles
   ========================================================================== */
/* Hide scroll bar */
html.remodal-is-locked {
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
}

/* Anti FOUC */
.remodal,
[data-remodal-id] {
  display: none;
}

/* Necessary styles of the overlay */
.remodal-overlay {
  position: fixed;
  z-index: 9999;
  top: -5000px;
  right: -5000px;
  bottom: -5000px;
  left: -5000px;
  display: none;
}

/* Necessary styles of the wrapper */
.remodal-wrapper {
  position: fixed;
  z-index: 10000;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  overflow: auto;
  text-align: center;
  -webkit-overflow-scrolling: touch;
}

.remodal-wrapper:after {
  display: inline-block;
  height: 100%;
  margin-left: -0.05em;
  content: "";
}

/* Fix iPad, iPhone glitches */
.remodal-overlay,
.remodal-wrapper {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* Necessary styles of the modal dialog */
.remodal {
  position: relative;
  outline: none;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.remodal-is-initialized {
  /* Disable Anti-FOUC */
  display: inline-block;
}

/*
 *  Remodal - v1.1.1
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */
/* ==========================================================================
   Remodal's default mobile first theme
   ========================================================================== */
/* Default theme styles for the background */
.remodal-bg.remodal-is-opening,
.remodal-bg.remodal-is-opened {
  -webkit-filter: blur(3px);
  filter: blur(3px);
}

/* Default theme styles of the overlay */
.remodal-overlay {
  background: rgba(43, 46, 56, 0.9);
}

.remodal-overlay.remodal-is-opening,
.remodal-overlay.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.remodal-overlay.remodal-is-opening {
  -webkit-animation-name: remodal-overlay-opening-keyframes;
  animation-name: remodal-overlay-opening-keyframes;
}

.remodal-overlay.remodal-is-closing {
  -webkit-animation-name: remodal-overlay-closing-keyframes;
  animation-name: remodal-overlay-closing-keyframes;
}

/* Default theme styles of the wrapper */
.remodal-wrapper {
  padding: 10px 10px 0;
}

/* Default theme styles of the modal dialog */
.remodal {
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 10px;
  border-radius: 20px;
  margin-top: 30px;
  height: 87%;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  color: #2b2e38;
  background: #fff;
}

@media (min-width: 680px) {
  .remodal {
    height: 90%;
  }
}

.remodal.remodal-is-opening,
.remodal.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.remodal.remodal-is-opening {
  -webkit-animation-name: remodal-opening-keyframes;
  animation-name: remodal-opening-keyframes;
}

.remodal.remodal-is-closing {
  -webkit-animation-name: remodal-closing-keyframes;
  animation-name: remodal-closing-keyframes;
}

/* Vertical align of the modal dialog */
.remodal,
.remodal-wrapper:after {
  vertical-align: middle;
}

/* Close button */
.remodal-close {
  position: absolute;
  top: -44px;
  right: 0;
  background: url("/en/assets/images/common/icons/modal_close.png") no-repeat;
  background-size: contain;
  display: block;
  overflow: visible;
  width: 32px;
  height: 32px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  text-decoration: none;
  color: #95979c;
  border: 0;
  outline: 0;
}

.remodal-close:hover,
.remodal-close:focus {
  color: #2b2e38;
}

/* Dialog buttons */
.remodal-confirm,
.remodal-cancel {
  font: inherit;
  display: inline-block;
  overflow: visible;
  min-width: 110px;
  margin: 0;
  padding: 12px 0;
  cursor: pointer;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border: 0;
  outline: 0;
}

.remodal-confirm {
  color: #fff;
  background: #81c784;
}

.remodal-confirm:hover,
.remodal-confirm:focus {
  background: #66bb6a;
}

.remodal-cancel {
  color: #fff;
  background: #e57373;
}

.remodal-cancel:hover,
.remodal-cancel:focus {
  background: #ef5350;
}

/* Remove inner padding and border in Firefox 4+ for the button tag. */
.remodal-confirm::-moz-focus-inner,
.remodal-cancel::-moz-focus-inner,
.remodal-close::-moz-focus-inner {
  padding: 0;
  border: 0;
}

/* Keyframes
   ========================================================================== */
@-webkit-keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

@keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

@-webkit-keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

@keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}

@-webkit-keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@-webkit-keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

/* Media queries
   ========================================================================== */
@media only screen and (min-width: 641px) {
  .remodal {
    max-width: 1000px;
  }
}

/* IE8
   ========================================================================== */
.lt-ie9 .remodal-overlay {
  background: #2b2e38;
}

.lt-ie9 .remodal {
  width: 700px;
}

.qualification-modal .modal-inner {
  height: 100%;
  overflow-y: auto;
  padding: 30px 4%;
}

@media (min-width: 680px) {
  .qualification-modal .modal-inner {
    padding: 77px 140px;
  }
}

.qualification-modal .heading {
  font-size: 1.43em;
  color: #022361;
  font-weight: bold;
  margin-bottom: 20px;
}

@media (min-width: 680px) {
  .qualification-modal .heading {
    margin-bottom: 35px;
  }
}

.qualification-modal .qualifications .item {
  border-top: 1px solid #999;
  padding: 30px 4%;
}

@media (min-width: 680px) {
  .qualification-modal .qualifications .item {
    padding: 30px 25px;
  }
}

.qualification-modal .qualifications .item:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

@media (min-width: 680px) {
  .qualification-modal .qualifications .item .image,
  .qualification-modal .qualifications .item .text {
    float: left;
  }
}

.qualification-modal .qualifications .item .text {
  margin-top: 15px;
}

@media (min-width: 680px) {
  .qualification-modal .qualifications .item .text {
    text-align: left;
    margin-left: 28px;
    width: 564px;
  }
}

.qualification-modal .qualifications .item .text .title {
  font-size: 1.29em;
  margin-bottom: 10px;
  font-weight: bold;
}

.qualification-modal .qualifications .item .text .description {
  text-align: left;
}

.qualification-modal .qualifications .item.hand .image {
  padding-top: 10px;
}

.qualification-modal .qualifications .item.heart .image {
  padding-top: 20px;
}

.qualification-modal .qualifications .item.run .image {
  padding-top: 10px;
}

.qualification-modal .qualifications .item.sakura .image {
  padding-top: 10px;
}

.qualification-modal .qualifications .item.world .image {
  padding-top: 10px;
}

.qualification-modal .qualifications .item.environment {
  border-bottom: 1px solid #999;
}

@media (min-width: 680px) {
  .qualification-modal .qualifications .item.environment {
    padding-left: 18px;
  }
}

@media (min-width: 680px) {
  .qualification-modal .qualifications .item.environment .image {
    padding-top: 24px;
  }
}

.qualification-modal .qualifications .item.environment .image .icon {
  width: 76px;
}

@media (min-width: 680px) {
  .qualification-modal .qualifications .item.environment .text {
    margin-left: 20px;
  }
}

/* 2016リオデジャネイロ */
.main .messageBlock {
  position: relative;
  overflow: hidden;
  padding: 0;
  width: 778px;
}

.main .messageBlock .topcarousel {
  height: 390px;
  margin: 0;
  padding: 0;
}

.main .messageBlock .loader {
  position: absolute;
  z-index: 10000;
  top: 0;
  left: 0;
  width: 100%;
  height: 390px;
  border-radius: 10px;
  background: white url(/opedu/static/page/open/topcarousel/plugin/ajax-loader.gif) center center no-repeat;
}

.main .messageBlock .topcarousel .item a.hover *, .main .messageBlock .topcarousel .item a.active * {
  opacity: .6 !important;
}

.main .messageBlock .topcarousel .item img {
  width: 100%;
  opacity: 0;
}

.main .messageBlock .topcarousel .item a {
  outline: none;
}

.main .messageBlock .topcarousel .item a:hover img, .main .messageBlock .topcarousel .item a:active img {
  opacity: .7;
}

.main .messageBlock .carouselControlBlock {
  opacity: 0;
  position: absolute;
  top: 342px;
  left: 0;
  width: 100%;
  height: 48px;
  padding-top: 11px;
  text-align: center;
}

.slick-stop {
  display: none;
  text-indent: -9999px;
  width: 66px;
  height: 30px;
  margin: 0 auto;
  outline: none;
  padding: 0;
}

.slick-start {
  display: none;
  text-indent: -9999px;
  width: 66px;
  height: 30px;
  margin: 0 auto;
  outline: none;
  padding: 0;
}

.slick-start.act {
  display: block;
}

.slick-stop.act {
  display: block;
}

.slick-start div, .slick-stop div {
  width: 60px;
  height: 32px;
  margin: 0 auto;
}

.slick-start div {
  background: url(/opedu/static/page/open/topcarousel/plugin/controls.png) no-repeat;
  background-position: -90px -32px;
}

.slick-start.hover div, .slick-start.active div {
  /*background-color: #E12D00;*/
  background-position: -90px 0;
}

.slick-stop div {
  background: url(/opedu/static/page/open/topcarousel/plugin/controls.png) no-repeat;
  background-position: -160px -32px;
}

.slick-stop.hover div, .slick-stop.active div {
  /*background-color: #E12D00;*/
  background-position: -160px 0px;
}

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

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  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;
  top: 0;
  left: 0;
  display: block;
}

.slick-track:before {
  display: table;
  content: '';
}

.slick-track:after {
  display: table;
  content: '';
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.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("/opedu/static/page/open/topcarousel/plugin/ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: 'slick';
  font-weight: normal;
  font-style: normal;
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
}

/* Arrows */
.slick-prev, .slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 353px;
  z-index: 1;
  display: block;
  width: 33px;
  height: 30px;
  padding: 0;
  /*-webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);*/
  cursor: pointer;
  color: transparent;
  border: none;
  // outline: none;
  background: transparent;
}

.slick-prev:hover:before, .slick-prev:focus:before {
  opacity: 1;
}

.slick-next:hover:before, .slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
  opacity: .25;
}

.slick-prev, .slick-next {
  border-radius: 15px;
  z-index: 100;
}

.slick-arrow div {
  width: 31px;
  height: 32px;
}

.slick-prev div {
  background: url(/opedu/static/page/open/topcarousel/plugin/controls.png) no-repeat;
  background-position: 0 -32px;
}

.slick-next div {
  background: url(/opedu/static/page/open/topcarousel/plugin/controls.png) no-repeat;
  background-position: -43px -32px;
}

.slick-arrow.hover div, .slick-arrow.active div {
  /*background-color: #E12D00;*/
}

.slick-prev.hover div, .slick-prev.active div {
  background-position: 0 0;
}

.slick-next.hover div, .slick-next.active div {
  background-position: -43px 0;
}

.slick-prev {
  left: 145px;
}

[dir='rtl'] .slick-prev {
  right: 142px;
  left: auto;
}

/*.slick-prev:before
{
	content: '←';
}
[dir='rtl'] .slick-prev:before
{
	content: '→';
}*/
.slick-next {
  right: 142px;
}

[dir='rtl'] .slick-next {
  right: auto;
  left: 145px;
}

/*.slick-next:before
{
	content: '→';
}
[dir='rtl'] .slick-next:before
{
	content: '←';
}*/
/* Dots */
@media (min-width: 680px) {
  .slick-dotted.slick-slider {
    margin-bottom: 0;
  }
}

.slick-dots {
  position: absolute;
  bottom: 48px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  font-size: 0px;
  line-height: 1;
  list-style: none;
  text-align: center;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 6px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 8px;
  height: 8px;
  padding: 0;
  border-radius: 50%;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: #CDCDCD;
}

.slick-dots li.slick-active button {
  opacity: 1;
  background: #E12D00;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

/*.slick-dots li button:before
{
	font-family: 'slick';
	font-size: 6px;
	line-height: 10px;

	position: absolute;
	top: 0;
	left: 0;

	width: 10px;
	height: 10px;

	content: '•';
	text-align: center;

	opacity: .25;
	color: black;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
	opacity: 1;
	color: #E12D00;
}*/
body {
  background: #ebebeb;
}

@media (min-width: 680px) {
  .section-main {
    background: linear-gradient(90deg, #f3f3f3 0%, #f3f3f3 50%, white 50%, white 100%);
  }
}

.section-main .pc-only {
  display: none;
}

@media (min-width: 680px) {
  .section-main .pc-only {
    display: block;
  }
}

.section-main:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.section-main > .inner {
  width: 100%;
}

@media (min-width: 680px) {
  .section-main > .inner {
    width: 1080px;
    min-width: 1080px;
  }
}

.section-main .messageBlock,
.section-main .main-navigation {
  display: inline-block;
  vertical-align: top;
}

.section-main .slick-arrow,
.section-main .slick-dots {
  display: none !important;
}

.section-main .messageBlock {
  position: relative;
  width: 100%;
}

@media (min-width: 680px) {
  .section-main .messageBlock {
    width: 756px;
    height: 534px;
    overflow: hidden;
  }
}

.section-main .messageBlock .item {
  position: relative;
  padding-bottom: 440px;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
}

@media (min-width: 680px) {
  .section-main .messageBlock .item {
    padding-bottom: 534px;
  }
}

.section-main .messageBlock .item.first {
  background-image: url(/en/assets/images/sp/index/main1.jpg);
}

@media (min-width: 680px) {
  .section-main .messageBlock .item.first {
    background-image: url(/en/assets/images/index/top_main1.jpg);
  }
}

.section-main .messageBlock .item.first .text-block {
  top: 30px;
}

.section-main .messageBlock .item.first .text-block .header {
  margin-bottom: 5px;
}

.section-main .messageBlock .item.first .text-block .link-button {
  padding: 14px 32px 14px 25px;
  margin-top: 20px;
}

@media (min-width: 680px) {
  .section-main .messageBlock .item.first .text-block .link-button {
    padding: 14px 54px;
  }
}

.section-main .messageBlock .item.second {
  background-image: url(/en/assets/images/sp/index/main2.jpg);
}

@media (min-width: 680px) {
  .section-main .messageBlock .item.second {
    background-image: url(/en/assets/images/index/top_main2.jpg);
  }
}

.section-main .messageBlock .item.third {
  background-image: url(/en/assets/images/index/top_main3.jpg);
}

.section-main .messageBlock .item.fourth {
  background-image: url(/en/assets/images/index/top_main4.jpg);
}

.section-main .messageBlock .item.fifth {
  background-image: url(/en/assets/images/index/top_main5.jpg);
}

.section-main .messageBlock .item.sixth {
  background-image: url(/en/assets/images/index/top_main6.jpg);
}

.section-main .messageBlock .item .text-block {
  position: absolute;
  top: 45px;
  left: 4%;
  width: 92%;
}

@media (min-width: 680px) {
  .section-main .messageBlock .item .text-block {
    left: 60px;
    width: auto;
  }
}

@media (min-width: 680px) {
  .section-main .messageBlock .item .text-block .header {
    margin: 10px 0;
    font-size: 25px;
  }
}

.section-main .messageBlock .item .text-block .title {
  font-size: 160%;
  margin-bottom: 6px;
}

.section-main .messageBlock .item .text-block .purpose {
  font-size: 16px;
  font-weight: bold;
}

.section-main .messageBlock .item .text-block .text {
  margin-bottom: 6px;
}

@media (min-width: 680px) {
  .section-main .messageBlock .item .text-block .text {
    font-size: 16px;
  }
}

.section-main .main-navigation {
  width: 100%;
  background: #fff;
}

@media (min-width: 680px) {
  .section-main .main-navigation {
    margin-left: -7px;
    width: 324px;
  }
}

.section-main .main-navigation ul li {
  vertical-align: middle;
  background: #fff;
  padding: 20px 0 0 10px;
  width: 50%;
  height: 78px;
  float: left;
  border-collapse: collapse;
  border: 1px solid #ccc;
  transition: all 0.15s;
}

@media (min-width: 680px) {
  .section-main .main-navigation ul li {
    display: table;
    width: 294px;
    height: 89.45px;
    padding: 0 0 0 10px;
    border: none;
    border-radius: 44px 0 0 44px;
    font-size: 100%;
  }
  .section-main .main-navigation ul li.is-active, .section-main .main-navigation ul li:hover {
    background: #ebebeb;
    cursor: pointer;
    width: 354px;
    transform: translateX(-50px);
  }
  .section-main .main-navigation ul li.is-active p, .section-main .main-navigation ul li:hover p {
    padding-right: 70px;
  }
}

.section-main .main-navigation ul li .image {
  text-align: center;
  width: 21%;
}

@media (min-width: 680px) {
  .section-main .main-navigation ul li .image {
    width: 66px;
    padding-left: 10px;
  }
}

.section-main .main-navigation ul li .image,
.section-main .main-navigation ul li p {
  display: table-cell;
  vertical-align: middle;
}

.section-main .main-navigation ul li p {
  font-size: 11px;
  word-break: break-all;
  padding: 0 2% 0 5%;
  transition: 0.15s;
  -webkit-transition: 0.15s;
}

@media (min-width: 680px) {
  .section-main .main-navigation ul li p {
    width: auto;
    padding: 0 40px 0 10px;
    font-size: 100%;
  }
}

.section-main .link-area {
  background: #f3f3f3;
}

.section-main .link-area .link {
  text-align: center;
  margin: 0 auto;
  padding-top: 28px;
}

@media (min-width: 680px) {
  .section-main .link-area .link {
    margin: 0;
    text-align: right;
  }
}

.section-main .link-area .link .link-button {
  padding: 14px 15%;
  color: #022361;
  border: 1px solid #022361;
  border-radius: 60px;
  background-image: url(/en/assets/images/common/icons/arrow_right_blue.png);
  background-position: 95% center;
}

@media (min-width: 680px) {
  .section-main .link-area .link .link-button {
    background-image: url(/en/assets/images/common/icons/arrow_right.png);
    color: #000;
    border: 1px solid #000;
    display: inline-block;
    padding: 14px 30px;
  }
  .section-main .link-area .link .link-button:hover {
    color: #fff;
    background-image: url(/en/assets/images/common/icons/arrow_right_white.png);
  }
  .section-main .link-area .link .link-button:hover span {
    color: #fff;
  }
}

.section-main .link-area .link .link-button span {
  color: #022361;
  display: block;
  padding-top: 7px;
}

@media (min-width: 680px) {
  .section-main .link-area .link .link-button span {
    color: #000;
    display: inline;
  }
}

.section-movie {
  padding: 40px 10px 20px;
  background: #f3f3f3;
}

@media (min-width: 680px) {
  .section-movie {
    padding-top: 70px;
  }
}

.section-movie .inner {
  width: 100%;
  margin: 0;
}

@media (min-width: 680px) {
  .section-movie .inner {
    min-width: 1080px;
    margin-bottom: 40px;
  }
}

.section-movie .inner .header {
  padding: 0 4%;
}

.section-movie .inner .youtube {
  margin: 20px auto 0;
  max-width: 960px;
  position: relative;
  padding-top: 56.25%;
  width: 100%;
}

@media (min-width: 680px) {
  .section-movie .inner .youtube {
    margin-top: 40px;
    width: 1000px;
    padding-top: 541px;
  }
}

.section-movie .inner .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.section-info {
  padding: 40px 0 20px;
  background: #fff;
}

.section-info .inner {
  paddin: 0 4%;
}

@media (min-width: 680px) {
  .section-info .inner {
    width: 1000px;
  }
}

@media (min-width: 680px) {
  .section-info {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}

.section-info dl.list {
  background-image: url(../images/common/icons/arrow_right.png);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 8px;
  margin: 30px auto 15px;
}

@media (min-width: 680px) {
  .section-info dl.list {
    background-position: 815px center;
    width: 845px;
  }
}

.section-info dl.list dt {
  color: #022361;
  padding-right: 15px;
}

@media (min-width: 680px) {
  .section-info dl.list dt {
    padding-right: 80px;
  }
}

.section-info dl.list dt p {
  float: left;
  margin-right: 10px;
}

.section-info dl.list dd {
  clear: both;
  padding: 10px 30px 15px 0;
  border-bottom: 1px solid #ccc;
}

@media (min-width: 680px) {
  .section-info dl.list dd {
    padding-right: 80px !important;
  }
}

.section-info dl.list dd p a:hover {
  color: #022361;
  text-decoration: underline;
}

.section-info ul.list li {
  margin-bottom: 12px;
}

.section-info ul.list li a {
  background-image: url(/en/assets/images/common/icons/icon_list_right.png);
  background-repeat: no-repeat;
  background-position: left 7px;
  background-size: 6px;
  display: block;
  padding-left: 12px;
}

.section-info .link {
  text-align: center;
  margin-top: 40px;
}

.section-efforts {
  padding-top: 30px;
  background: #f3f3f3;
}

@media (min-width: 680px) {
  .section-efforts {
    padding-top: 70px;
  }
}

.section-efforts .inner {
  width: 100%;
}

@media (min-width: 680px) {
  .section-efforts .inner {
    width: 1000px;
  }
}

@media (min-width: 680px) {
  .section-efforts .header {
    margin-bottom: 40px;
  }
}

.section-efforts .card .card-body {
  padding-bottom: 100px;
}

@media (min-width: 680px) {
  .section-efforts .card {
    min-height: 380px;
  }
}

.section-efforts .link {
  text-align: center;
  margin-top: 40px;
}

.section-efforts .slick-slide a {
  // outline: none;
}

@media (min-width: 680px) {
  .section-textbook,
  .section-education,
  .section-mottainai {
    min-width: 1080px;
  }
}

.section-textbook .inner,
.section-education .inner,
.section-mottainai .inner {
  width: 100%;
  background-position: bottom center;
  background-repeat: no-repeat;
}

@media (min-width: 680px) {
  .section-textbook .inner,
  .section-education .inner,
  .section-mottainai .inner {
    width: 1080px;
    padding: 30px;
  }
}

.section-textbook .inner .contents,
.section-education .inner .contents,
.section-mottainai .inner .contents {
  width: 88%;
  margin: 0 auto;
}

@media (min-width: 680px) {
  .section-textbook .inner .contents,
  .section-education .inner .contents,
  .section-mottainai .inner .contents {
    width: 550px;
    display: inline-block;
    text-align: left;
  }
}

.section-textbook .inner .contents .title,
.section-education .inner .contents .title,
.section-mottainai .inner .contents .title {
  font-size: 1.29em;
  font-weight: bold;
}

.section-textbook .inner .contents .description,
.section-education .inner .contents .description,
.section-mottainai .inner .contents .description {
  font-size: 1em;
  margin-top: 20px;
  line-height: 1.4;
  text-align: left;
}

.section-textbook .inner .contents .status,
.section-education .inner .contents .status,
.section-mottainai .inner .contents .status {
  margin-top: 10px;
}

@media (min-width: 680px) {
  .section-textbook .inner .contents .status,
  .section-education .inner .contents .status,
  .section-mottainai .inner .contents .status {
    display: inline-block;
    margin-right: 20px;
  }
}

.section-textbook .inner .contents .status > .item,
.section-education .inner .contents .status > .item,
.section-mottainai .inner .contents .status > .item {
  display: inline-block;
}

.section-textbook .inner .contents .status > .item .icon,
.section-education .inner .contents .status > .item .icon,
.section-mottainai .inner .contents .status > .item .icon {
  padding-top: 4px;
}

.section-textbook .inner .contents .status > .item .icon.is-active,
.section-education .inner .contents .status > .item .icon.is-active,
.section-mottainai .inner .contents .status > .item .icon.is-active {
  padding-top: 0;
}

.section-mottainai {
  background-color: #e4f2f6;
}

.section-mottainai .inner {
  background-image: url(/en/assets/images/sp/index/mottainai/bg1.png);
  padding: 30px 0 210px;
  background-size: 600px;
}

@media (min-width: 680px) {
  .section-mottainai .inner {
    text-align: right;
    background-image: url(/en/assets/images/index/mottainai/bg1.png);
    background-size: auto;
    height: 318px;
  }
}

@media (min-width: 680px) {
  .section-mottainai .inner .contents {
    padding-right: 120px;
  }
}

.section-mottainai .inner .contents .link-button {
  padding: 14px 48px;
}

.section-mottainai .inner .link {
  margin-top: 10px;
  text-align: center;
}

@media (min-width: 680px) {
  .section-mottainai .inner .link {
    display: inline-block;
    margin-left: 71px;
  }
}

.section-textbook {
  background: #fffcda;
  margin-top: 10px;
  margin-bottom: 30px;
}

@media (min-width: 680px) {
  .section-textbook {
    background-size: auto;
    margin-top: 18px;
  }
}

.section-textbook .inner {
  background-image: url(/en/assets/images/sp/index/textbook/bg1.png);
  padding: 30px 0 190px;
  background-size: 220px;
}

@media (min-width: 680px) {
  .section-textbook .inner {
    text-align: right;
    margin-top: 18px;
    background-image: url(/en/assets/images/index/textbook/bg1.png);
    background-position: 19% bottom !important;
    background-size: auto;
    height: 308px;
  }
}

.section-textbook .inner .link {
  margin-top: 40px;
  text-align: center;
}

@media (min-width: 680px) {
  .section-textbook .inner .link {
    display: inline-block;
  }
}

.section-education {
  background: #f3f3f3;
  margin-top: 10px;
}

@media (min-width: 680px) {
  .section-education {
    background-size: auto;
    margin-top: 18px;
    background: url(/en/assets/images/index/education/bg.jpg) no-repeat top center;
  }
}

.section-education .inner {
  background-image: url(/en/assets/images/sp/index/education/bg1.jpg);
  background-color: #fbf7f1;
  background-size: 100%;
  padding: 30px 0 54%;
}

@media (min-width: 680px) {
  .section-education .inner {
    background: none;
    padding: 30px;
    height: 278px;
  }
}

@media (min-width: 680px) {
  .section-education .inner .contents {
    padding-left: 120px;
  }
}

.section-four-projects {
  background: #f3f3f3;
  padding: 30px 0;
}

@media (min-width: 680px) {
  .section-four-projects {
    padding-top: 70px;
  }
}

@media (min-width: 680px) {
  .section-four-projects .inner {
    width: 1000px;
  }
}

@media (min-width: 680px) {
  .section-four-projects .header {
    margin-bottom: 20px;
    font-size: 1.86em;
  }
}

@media (min-width: 680px) {
  .section-four-projects .card .card-body .card-title {
    font-size: 18px;
    font-weight: bold;
  }
}

.section-four-projects .card .card-body .option {
  margin-top: 1em;
}

.section-relative {
  padding-top: 58px;
  padding-bottom: 30px;
}

@media (min-width: 680px) {
  .section-relative .inner {
    width: 1000px;
  }
}

.section-relative .inner .card .card-body .card-title {
  font-size: 1em;
}

.label {
  width: 90px;
  padding: 2px;
  text-align: center;
  float: left;
  margin-right: 10px;
  margin-top: 0;
  margin-bottom: 3px;
  font-weight: bold;
  font-size: 80%;
}

.label.red {
  background: #e12d00;
  color: #fff;
}

.label.blue {
  background: #022361;
  color: #fff;
}

.section-counter {
  background: #fff;
  padding: 30px 0;
}

@media (min-width: 680px) {
  .section-counter {
    padding: 45px 0 180px;
  }
}

.section-counter .counters {
  text-align: center;
}

.section-counter .counters .item {
  height: 170px;
  margin: 30px auto 0;
}

.section-counter .counters .item:first-child {
  padding-top: 30px;
  margin-top: 0;
  padding-left: 110px;
  width: 300px;
  background: url("/en/assets/images/common/character/miraitowa.png") no-repeat left 50%;
  background-size: 90px;
}

@media (min-width: 680px) {
  .section-counter .counters .item:first-child {
    padding-left: 130px;
    background-size: auto;
    width: auto;
  }
}

.section-counter .counters .item:last-child {
  padding-top: 30px;
  padding-right: 100px;
  width: 300px;
  background: url("/en/assets/images/common/character/someity.png") no-repeat right 50%;
  background-size: 90px;
}

@media (min-width: 680px) {
  .section-counter .counters .item:last-child {
    padding-right: 130px;
    background-size: auto;
    width: auto;
  }
}

@media (min-width: 680px) {
  .section-counter .counters .item {
    display: inline-block;
    margin: 0 40px;
  }
}

.section-counter .counters .item .header {
  margin-bottom: 10px;
  color: #022361;
}

.section-counter .counters .item .text,
.section-counter .counters .item .counter-container {
  display: inline-block;
}

.section-counter .counters .item .text,
.section-counter .counters .item .unit {
  font-size: 140%;
  position: relative;
  top: -8px;
}

.section-counter .counters .item .unit {
  color: #022361;
}

/*20160330add*/
.top_about li.bottom a {
  height: 147px;
  overflow: hidden;
  display: block;
  border-radius: 0 0 6px 6px;
  border-top: 1px #e12d00 solid;
}

.top_about li.bottom a img.img {
  margin-top: -2px;
}

/* participation innerlink button */
.section-main .link-area .link .link-button.participation,
.section-participation .link .link-button.participation {
  padding: 14px 15%;
  border-radius: 60px;
  background-position: 95% center;
  color: #fff;
  background-color: #022361;
  text-align: center;
}
.section-main .link-area .link .link-button.participation {
  background-image: url(/opedu/static/page/open/images/common/icons/arrow_down_white.png);
  background-size: 14px;
}

.section-participation .link .link-button.participation {
  background-image: url(/opedu/static/page/open/images/common/icons/arrow_right_white.png);
  background-size: 8px;
}

.section-main .link-area .link .link-button.participation:hover,
.section-participation .link .link-button.participation:hover {
  background-color: #E50A84;
  border: 1px solid #E50A84;
}
.section-main .link-area .link .link-button.participation span,
.section-participation .link .link-button.participation span {
  color: #fff;
  display: block;
  padding-top: 7px;
}

@media (min-width: 680px) {
  .section-main .link-area .link .link-button.participation,
  .section-participation .link .link-button.participation {
    padding: 14px 40px 14px 30px;
    border: 1px solid #022361;
    text-align: left;
  }
  .section-main .link-area .link .link-button.participation span,
  .section-participation .link .link-button.participation span {
    color: white;
    display: inline;
  }
}

/* section participation */
.section-participation {
  padding: 80px 0 20px;
  background: #fff;
}

.section-participation .inner {
  padding: 0 10px;
}

.section-participation .header {
  font-weight: normal;
}

.section-participation .inner .description {
  margin-top: 30px;
  padding: 0 10px;
  font-size: 20px;
}

@media (max-width: 680px) {
  .section-participation .inner .description {
    font-size: 16px;
  }
}

.section-participation .inner .banner-link {
  margin-top: 30px;
  display: block;
}
.section-participation .inner .link {
  text-align: center;
  margin-top: 30px;
}
.section-participation .inner .link-button {
  text-align: center;
  padding-left: 30px;
}
@media (min-width: 680px) {
  .section-participation .inner .link-button {
    text-align: left;
    padding-left: 34px;
    padding-right: 40px;
    background-position: 95% 50%;
  }
}