@charset "UTF-8";
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  word-wrap: break-word;
}

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;
}

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

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: '';
  content: 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;
}

.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;
}

/*====================================================================
 elements
====================================================================*/
body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.5;
  min-width: 320px;
  -webkit-text-size-adjust: 100%;
  background: #f3f3f3;
  color: #000;
  font-size: 87.5%;
  width: 100%;
  word-break: break-all;
}

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

.ov-h {
  overflow: hidden;
}

/*====================================================================
 general purpose
====================================================================*/
.tLeft {
  text-align: left !important;
}

.tCenter {
  text-align: center;
}

.tCenter02 {
  text-align: center !important;
}

.tRight {
  text-align: right;
}

.tRight02 {
  text-align: right !important;
}

.fleft {
  float: left;
}

.fright {
  float: right;
}

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

.vMiddle {
  vertical-align: middle !important;
}

.vBottom {
  vertical-align: bottom !important;
}

.underLine {
  text-decoration: underline !important;
}

.bn {
  border: none !important;
}

.mt00 {
  margin-top: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.mb00 {
  margin-bottom: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.ml00 {
  margin-left: 0 !important;
}

.ml05 {
  margin-left: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.ml50 {
  margin-left: 50px !important;
}

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

.mr05 {
  margin-right: 5px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.pt00 {
  padding-top: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.pb00 {
  padding-bottom: 0 !important;
}

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

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

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

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

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

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

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

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

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

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

.pb60 {
  padding-bottom: 60px !important;
}

.pl00 {
  padding-left: 0 !important;
}

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

.pl10 {
  padding-left: 10px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pl50 {
  padding-left: 50px !important;
}

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

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

.pr10 {
  padding-right: 10px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.fs10 {
  font-size: 10px !important;
}

.fs11 {
  font-size: 11px !important;
}

.fs12 {
  font-size: 12px !important;
}

.fs13 {
  font-size: 13px !important;
}

.fs14 {
  font-size: 14px !important;
}

.fs15 {
  font-size: 15px !important;
}

.fs16 {
  font-size: 16px !important;
}

.fs17 {
  font-size: 17px !important;
}

.fs18 {
  font-size: 18px !important;
}

.fs19 {
  font-size: 19px !important;
}

.fs20 {
  font-size: 20px !important;
}

.fs21 {
  font-size: 21px !important;
}

.fs22 {
  font-size: 22px !important;
}

.fs23 {
  font-size: 23px !important;
}

.fs24 {
  font-size: 24px !important;
}

.letterspace2 {
  letter-spacing: 5px !important;
}

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

@media screen and (max-width: 680px) {
  .letterspace2 {
    letter-spacing: 3px !important;
  }
}

.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;
}
