@charset "utf-8";

/* ========================================
   共通項目
   ======================================== */

.spi,
.spb { display: none; }

img { vertical-align: bottom; }

body {
    font-size: 100%;
    line-height: 1.6;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #333;
    overflow-x: hidden;
}

a:link,
a:active,
a:visited {
    color: #08c;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

.arrow01 {
    background: url(../img/icon-arrow01.gif) no-repeat left center;
    padding-left: 12px;
}

.arrow02 {
    background: url(../img/icon-arrow02.gif) no-repeat left center;
    padding-left: 20px;
}

.kome-s li {
    color: #666;
    font-size: 77%;
    list-style-type: none;
    padding-left: 1em;
    text-indent: -1em;
}

/* ========================================
   ヘッダ
   ======================================== */
.hdr-corporate {
    width: 960px;
    margin: 0 auto;
    padding: 10px 16px;
}

.hdr-corporate_logo {
    width: 107px;
    float: left;
}

.hdr-corporate_link {
    float: right;
    font-size: 75%;
    padding-top: 4px;
}

.hdr-site {
    width: 960px;
    margin: 0 auto 15px;
}

.hdr-site h1 {
    width: 265px;
    margin-right: 20px;
    padding-top: 5px;
    float: left;
}

.hdr-site .hdr-site_caption {
    font-size: 75%;
    float: left;
    margin-top: 10px;
}

.hdr-site .hdr-site_search {
    width: 285px;
    float: right;
}

.hdr-site_search_sp { display: none; }

.hdr-site .search-wrapper {
    background: #f2f2f2;
    border-radius: 7px;
    height: 32px;
}

.hdr-site #search {
    border: none;
    background: transparent;
    font-size: 87.5%;
    padding: 5px 10px;
    width: 203px;
    vertical-align: top;
}

.hdr-site #search_btn {
    background: url(/_shared/img/btn-search.gif) no-repeat left top;
    text-indent: -9999px;
    width: 56px;
    height: 32px;
    display: inline-block;
    border: none;
}

.nav-global {
    background: url(../img/bg-globalnavi.gif) repeat-x;
    padding-bottom: 2px;
}

.nav-global ul {
    width: 960px;
    margin: 0 auto;
}

.nav-global li {
    float: left;
}

.nav-global .nav-global_last {
    padding: 5px 0 0 5px;
    position: relative;
}

.nav-global .nav-global_last #target_balloon {
    position: absolute;
    top: 50px;
    right: 0;
    z-index: 9999;
    display: none;
}

.nav-global .nav-global_last #target_balloon span {
    position: absolute;
    top: 12px;
    right: -4px;
}
/*
.targetbox {
    background: #0070cb url(/_shared/img/bg_target.gif) no-repeat 10px center;
    border-radius: 7px;
    color: #fff;
    display: block;
    font-size: 100%;
    line-height: 40px;
    padding-left: 37px;
    position: relative;
    width: 118px;
}

.targetbox:link,
.targetbox:active,
.targetbox:visited {
    color: #fff;
}

.targetbox:hover {
    text-decoration: none;
}

.targetbox span span {
    position: absolute;
    top: 16px;
    right: 10px;
    line-height: 0;
}
*/
.targetbtn {
    float: right;
}

.targetbox {
    font-size: 75%;
}

.targetbox:hover {
    text-decoration: none;
}

.targetbox span span {
    position: absolute;
    top: 16px;
    right: 10px;
    line-height: 0;
}

/* ========================================
   コンテンツ
   ======================================== */
#emargency {
    width: 960px;
    margin: 30px auto;
}

#emargency h2 {
    background: #e60012;
    text-align: center;
    font-size: 112.5%;
    font-weight: normal;
    color: #fff;
    padding: 10px 0;
    border-radius: 7px 7px 0 0;
}

#emargency ul {
    border: 3px solid #e60012;
    border-radius: 0 0 7px 7px;
    padding: 20px 20px 5px;
}

#emargency li {
    font-size: 87.5%;
    margin-bottom: 15px;
}

#main {
    width: 960px;
    margin: 0 auto;
    padding: 20px 0 60px;
}

.breadcrumb {
    font-size: 75%;
    margin-bottom: 35px;
}

.breadcrumb li {
    float: left;
    margin-right: 10px;
}

.breadcrumb a {
    margin-right: 15px;
}

.breadcrumb .kw a {
    margin-right: 5px;
    color: #666;
}

#contents {
    width: 708px;
    float: left;
    padding-top: 20px;
}

#contents h1 { word-break: break-all; }

.cnt-info {
    margin-bottom: 15px;
}

.cnt-info .categories {
    float: left;
}

.cnt-info .categories li {
    background: #a2a7ab;
    display: inline-block;
    *display: inline;
    *zoom: 1;
    text-align: center;
    margin-right: 10px;
    padding: 2px 20px;
    color: #fff;
    font-size: 87.5%;
    border-radius: 3px;
}

.cnt-info .pub-date {
    font-size: 87.5%;
    color: #666;
    float: right;
    padding-top: 2px;
}

.pr-date {
    /*font-size: 75%;
    border-radius: 3px;
    margin-right: 10px;
    padding: 0 20px !important;
    float: left;
    background: #fff;
    border: 1px solid #666;*/
    display: none;
}

.article-body .article-title {
    font-size: 200%;
    margin-bottom: 30px;
    font-weight: normal;
}

.article-theme {
    margin-bottom: 15px;
}

.article-theme li {
    font-size: 75%;
    border-radius: 3px;
    margin-right: 10px;
    float: left;
}

.article-theme li a {
    display: block;
    padding: 2px 20px 0;
    border-radius: 3px;
    color: inherit;
}

.article-theme .clip_btn {
	float: right;
	margin: 0;
	padding: 0;
}

.article-theme .clip_btn a {
	padding: 0;
}

.theme01 {
    color: #eb7777;
    border: 1px solid #eb7777;
}

.theme02 {
    color: #eb9944;
    border: 1px solid #eb9944;
}

.theme03 {
    color: #0070cb;
    border: 1px solid #0070cb;
}

.social-button {
    margin-bottom: 35px;
}

.social-button li {
    float: left;
    margin-left: 3px;
}

.social-button li:first-child {
    margin-left: 0;
}

#articles {
    margin-bottom: 60px;
}

#articles .block {
    margin-bottom: 40px;
}

#articles .block .dtl p {
    margin-bottom: 0;
}

#articles .block p {
    margin-bottom: 20px;
}

#articles .img_l .img {
    float: left;
    margin-right: 20px;
    margin-bottom: 10px;
    width: 250px;
}
#articles .img_l .img img {
    width: 100%;
    border-radius: 4px;
}

#articles .img_r .img {
    float: right;
    margin-left: 20px;
    width: 250px;
}
#articles .img_r .img img {
    width: 100%;
    border-radius: 4px;
}

.ttl01 {
    font-size: 137.5%;
    font-weight: normal;
    background: #f7f7f7;
    margin-bottom: 35px;
    padding: 8px 10px;
}

#articles .ttl01 {
    font-size: 125%;
    font-weight: bold;
    margin: 30px 0 20px;
    padding-bottom: 5px;
    border-bottom: 1px solid #e1e1e1;
    border-left: none!important;
    background: none;
}

.ttl01b {
    font-size: 137.5%;
    font-weight: normal;
    background: #f7f7f7;
    margin-bottom: 20px;
    padding: 8px 10px;
}

#page_kosodate .ttl01,
#page_kosodate .ttl01b { border-left: 5px solid #eb7777; }

#page_kyouiku .ttl01,
#page_kyouiku .ttl01b { border-left: 5px solid #eb9944; }

#page_juken .ttl01,
#page_juken .ttl01b,
#page_top .ttl01,
#page_top .ttl01b { border-left: 5px solid #0070cb; }

.ttl02 {
    font-size: 125%;
    font-weight: normal;
    margin: 30px 0 20px;
    padding-bottom: 5px;
    border-bottom: 1px solid #e1e1e1;
}

#articles .ttl02 {
    font-size: 100%;
    font-weight: bold;
    margin: 20px 0 10px;
    padding-bottom: 5px;
    border:none;
}

.ttl03 {
    background: #f7f7f7;
    font-size: 112.5%;
    font-weight: bold;
    margin-bottom: 20px;
    padding: 5px 7px;
}

#articles .img-cap {
    margin-top: 10px;
    font-size: 87.5%;
}

#articles .atc-copyright {
    text-align: right;
    font-size: 87.5%;
    color: #808080;
    margin-bottom: 10px;
}

#articles .atc-logo {
    text-align: right;
}

#articles .atc-source {
    border: 1px solid #e1e1e1;
    margin-top: 40px;
    padding: 15px;
    font-size: 87.5%;
}

#articles .mainvisual {
    text-align: center;
}
#articles .mainvisual img {
    border-radius: 4px;
}

#articles .pagenation {
    text-align: center;
    margin-top: 40px;
}

#articles .pagenation li {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    font-size: 87.5%;
    line-height: 40px;
    margin-right: 8px;
}

#articles .pgn-prev {
    padding-right: 27px;
}

#articles .pgn-next {
    padding-left: 27px;
}

#articles .pagenation .num a {
    display: block;
    width: 40px;
    text-align: center;
    border: 1px solid #e8eadf;
    border-radius: 7px;
}

#articles .pagenation .current-page a {
    background: #f6f6f6;
    color: #333;
    text-decoration: none;
    cursor: default;
}

#articles .author {
    background: #f7f7f7;
    border: 1px solid #e1e1e1;
    border-radius: 7px;
    margin-top: 60px;
    padding: 20px;
}

#articles .author h4 {
    font-size: 87.5%;
    font-weight: normal;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e1e1e1;
}

#articles .author .img {
    float: left;
    margin-right: 15px;
}
#articles .author .img img {
    width: 82px;
}

#articles .author .dtl {
    overflow: hidden;
    zoom: 1;
    font-size: 87.5%;
}

#articles .author .dtl .name {
    margin-bottom: 10px;
}

#articles .borromBnrArea h2.ttl01{
    font-size: 137.5%;
    font-weight: normal;
    background: #f7f7f7;
    margin-bottom: 20px;
    padding: 8px 10px;
}
#page_kosodate #articles .borromBnrArea h2.ttl01 { border-left: 5px solid #eb7777!important; }
#page_kyouiku #articles .borromBnrArea h2.ttl01 { border-left: 5px solid #eb9944!important; }
#page_juken #articles .borromBnrArea h2.ttl01 { border-left: 5px solid #0070cb!important; }

#articles .soudan{
    margin:15px 0 15px 9px;
}

#articles .soudan td{
    vertical-align:top;
}

#articles .soudan .face{
    width:89px;
    text-align:center;
}

#articles .soudan .face .name{
    margin-top:5px;
    padding:3px;
    text-align:center;
    font-size:80%;
    background-color:#FCEFDC;
}

#articles .soudan .fukidashiTbl{
    width: 477px;
}

#articles .soudan .fukidashiTbl .taRight {
    text-align: right;
    line-height: 0;
}

#articles .soudan .fukidashiTbl .taRight img {
    vertical-align: baseline;
}

#articles .soudan .fukidashiTbl .fukidashi{
    background: url(/img_o/kj/common/images/teacher/soudan_tbl03.gif) repeat-y 0 0;
}

#articles .soudan .fukidashiTbl .fukidashi p{
    padding: 5px 10px;
}

#new-article .item img{
    border-radius: 3.5px;
}

#related {
    margin-bottom: 40px;
    padding-bottom: 30px;
    border-bottom: 1px solid #e1e1e1;
}

#related li {
    width: 175px;
    float: left;
    margin-right: 2px;
}

#related li a {
    display: block;
    text-decoration: none;
}

#related .last {
    margin-right: 0;
}

#related li .img {
    margin-bottom: 7px;
    max-height: 108px;
    overflow: hidden;
}

#related img {
    width: 100%;
    border-radius: 3px;
}

#related li .date {
    margin-bottom: 7px;
    font-size: 75%;
    color: #666;
}

#related li .link {
    font-size: 87.5%;
    line-height: 1.2;
    font-weight: normal;
}

#related li a:hover .link {
    text-decoration: underline;
}

.bnr-cap {
    font-size: 87.5%;
    margin-top: 7px;
}

#bottom-banner {
    margin-bottom: 60px;
}

#recommend {
    padding-bottom: 45px;
}

#recommend .item {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e1e1e1;
}

#recommend .item a {
    display: block;
    text-decoration: none;
}

#recommend .item .last {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

#recommend .item .img {
    width: 174px;
    float: left;
    margin-right: 15px;
}

#recommend .item .img img {
    width: 100%;
    border-radius: 3px;
}

#recommend .item .dtl {
    overflow: hidden;
    zoom: 1;
}

#recommend .item .dtl .date {
    font-size: 75%;
    color: #666;
    margin-bottom: 15px;
}

#recommend .item .txt {
    font-weight: normal;
}

#recommend .item a:hover .txt {
    text-decoration: underline;
}

#faq .item {
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px dotted #999;
}

#faq h3 {
    background: url(../img/icon-q.gif) no-repeat left 0.2em;
    font-size: 100%;
    font-weight: normal;
    padding-left: 45px;
    zoom: 1;
}

.item .play {
    position: relative;
}

.item .play .icon_play {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -29px;
    margin-left: -29px;
    cursor: pointer;
}

.more-link {
    margin-bottom: 60px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e1e1e1;
}

.more-link p {
    text-align: right;
}

.more-link p a {
    font-size: 87.5%;
}

#useful,
#useful2,
#useful3 {
    margin-bottom: 60px;
}

#useful .bnr-cap,
#useful2 .bnr-cap,
#useful3 .bnr-cap {
    margin-bottom: 15px;
    font-weight: normal;
}

#useful .theme,
#useful2 .theme,
#useful3 .theme {
    font-size: 75%;
    border-radius: 3px;
    margin-right: 10px;
    padding: 0 20px;
    float: left;
    background: #fff;
}

#useful ul,
#useful2 ul,
#useful3 ul {
  margin-left: -27px;
}

#useful li,
#useful2 li,
#useful3 li {
    width: 218px;
    float: left;
    margin-left: 27px;
}

#useful .more-link,
#useful2 .more-link,
#useful3 .more-link {
  margin-bottom: 15px;
}

.pr {
    border: 2px solid #0070cb;
    border-radius: 7px;
    margin-top: 40px;
}

.pr h3 {
    background: #0070cb;
    text-align: center;
    color: #fff;
    font-size: 112.5%;
    padding: 5px 0 7px;
}

.pr .body {
    padding: 18px;
}

.pr .body .img {
    margin-top: 20px;
}

.pr .body .cap {
    font-size: 87.5%;
}

/* モーダル */
#target_select {
    margin: 0 auto;
    background: #fff;
    display: none;
}

#cboxLoadedContent #target_select,
#cboxLoadedContent #theme_select {
    display: block;
}

#target_select h2 {
    font-size: 125%;
    font-weight: normal;
    margin-bottom: 20px;
    text-align: center;
}

#target_select .col {
    width: 290px;
    float: left;
    margin-left: 10px;
}

#target_select .regist_buttons {
    clear: both;
    margin: 0;
    float: none;
    width: 100%;
    padding: 10px 0 0;
}

#target_select .col:first-child {
    margin-left: 0;
}

#target_select .target_item h3 {
    background: #a2a7ab;
    color: #fff;
    padding: 3px 0;
    font-size: 100%;
    font-weight: normal;
    text-align: center;
}

#target_select .target_item .kou-ttl {
    margin-top: 25px;
}

#target_select .target_item ul {
    margin-left: -4px;
}

#target_select .regist_buttons ul {
    border-top: 1px solid #eee;
    margin: 0;
    text-align: center;
}

#target_select .target_item li {
    margin-top: 10px;
    margin-left: 4px;
    width: 143px;
    float: left;
}

#target_select .regist_buttons li {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    float: none;
    margin: 0;
    width: 290px;
}

#target_select .target_item li input { display: none; }

#target_select .target_item li label {
    display: block;
    width: 143px;
    line-height: 46px;
    text-align: center;
    background: url(/_shared/img/bg_target_btn.gif) no-repeat left top;
    font-size: 100%;
}

#target_select .target_item li label.on {
    background: url(/_shared/img/bg_target_btn_on.gif) no-repeat left top;
    color: #fff;
}

#target_select #target_clear {
    text-align: right;
    margin-top: 90px;
    font-size: 87.5%;
}

#target_select .target_item #target_regist {
    margin-top: 10px;
}

#target_select .target_links {
    background: #e5f5fd;
    margin: -25px -15px -25px;
    padding: 20px 25px 30px;
    padding-bottom: 20px\9;
    *padding-bottom: 20px;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  #target_select .target_links:not(:target) {
    padding-bottom: 20px;
  }
}

#target_select .target_links h2 {
    text-align: center;
    font-size: 125%;
    margin-bottom: 15px;
}

#target_select .target_links .shimajiro {

}

#target_select .target_links .parents {
    margin-bottom: 30px;
}

#target_select .target_links h3 {
    background: #a2a7ab;
    color: #fff;
    margin-bottom: 10px;
    padding: 3px 0;
    font-size: 100%;
    font-weight: normal;
    text-align: center;
}

#theme_select {
    width: 890px;
    margin: 0 auto;
    background: #fff;
    display: none;
}

#theme_select h2 {
    font-size: 125%;
    font-weight: normal;
    margin-bottom: 20px;
    text-align: center;
}

#theme_select .theme_item {
    width: 290px;
    float: left;
    margin-left: 10px;
}

#theme_select .theme_item:first-child {
    margin-left: 0;
}

#theme_select .theme_item h3 {
    background: #a2a7ab;
    color: #fff;
    padding: 3px 0;
    font-size: 100%;
    font-weight: normal;
    text-align: center;
}

#theme_select .theme_item li {
    text-align: center;
    margin-top: 10px;
}

#conclusion h1 {
	font-size: 200%;
	margin-bottom: 20px;
	color: #333;
}

#conclusion .item {
	margin-bottom: 60px;
}

#conclusion .item .img {
	float: right;
	margin-left: 30px;
}

#conclusion .item .dtl {
	overflow: hidden;
	zoom: 1;
}


/* ========================================
   サイドナビ
   ======================================== */
#sidebar {
    width: 232px;
    float: right;
}

#sidebar .side-ad {
    margin-bottom: 20px;
    border-radius: 3px;
    border: #e2e2e2 solid 1px;
}

#sidebar .side-ad.withMT {
    margin-top:1.5em;
}

#sidebar .side-ad img {
    width: 100%;
}

#sidebar .side-contents {
    background: #f7f7f7;
    margin-bottom: 20px;
    padding: 20px 0;
}

#sidebar .ttl01 {
    font-size: 112.5%;
    margin-bottom: 15px;
    padding: 0 10px;
    border-bottom: 1px solid #e1e1e1;
}

#sidebar .ttl01 small {
    font-size: 77%;
}
.article-body .ttl01 small {
    font-size: 77%;
}

#sidebar .side-contents .block {
    margin-bottom: 40px;
    padding: 0 15px;
}

#sidebar .side-theme ul {
    border-bottom: 1px solid #e1e1e1;
}

#sidebar .side-theme li {
    margin-bottom: 8px;
}

#sidebar .side-theme a {
    font-size: 87.5%;
    background: url(../img/icon-arrow_side.gif) no-repeat left 0.2em;
    padding-left: 18px;
}

#sidebar .side-theme .more-link {
    text-align: right;
    border-bottom: none;
    padding-top: 8px;
    margin-bottom: 0;
}

#sidebar .side-theme.block {
    margin-bottom: 10px;
}

#sidebar .side-ranking a {
    display: block;
    text-decoration: none;
}

#sidebar .side-ranking a:hover .txt {
    text-decoration: underline;
}

#sidebar .side-ranking .date { display: none; }

#sidebar .side-topics li,
#sidebar .side-ranking li {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e1e1e1;
    position: relative;
}

#sidebar .side-topics .img {
    width: 60px;
    height: 60px;
    float: left;
    margin-right: 10px;
    position: relative;
    overflow: hidden;
}

#sidebar .side-ranking .img {
    width: 60px;
    height: 60px;
    float: left;
    margin-right: 10px;
    background-position: center top;
    background-size: auto 60px;
    background-repeat: no-repeat;
    border-radius: 3px;
    overflow: hidden;
}

#sidebar .side-ranking .img.horizontal { background-size: 60px auto; }


#sidebar img {
    width: 100%;
    border-radius: 3px;
}

#sidebar .side-ranking .img img {
    display: none;
}

*:first-child+html #sidebar .side-ranking .img img {
    display: inline;
    width: auto;
    height: 100%;
}

#sidebar .side-ranking .img img {
    display: inline\9;
    width: auto\9;
    height: 100%\9;
}

#sidebar .side-ranking li .ranknum {
    width: auto;
    height: auto;
    position: static;
    position: absolute;
    top: -2px;
    left: 0;
}

#sidebar .side-topics .dtl,
#sidebar .side-ranking .dtl {
    overflow: hidden;
    font-size: 87.5%;
}

#sidebar .side-keywords ul {
    /*  margin-bottom: 10px; */
    padding-bottom: 10px;
    border-bottom: 1px solid #e1e1e1;
}

#sidebar .side-keywords li {
    width: 99px;
    float: left;
    margin-right: 4px;
    margin-bottom: 10px;
}

#sidebar .side-keywords .even {
    margin-right: 0;
}

#sidebar .side-keywords li a {
    display: block;
    height: 26px;
    background: #e1ecf1;
    text-align: center;
    font-size: 87.5%;
    border-radius: 5px;
    line-height: 1.2;
    padding: 12px 5px 0;
}

#sidebar .side-keywords .l2 a {
    height: 35px;
    padding-top: 3px;
}

#sidebar .side-keywords .more-link {
    text-align: right;
    border-bottom: none;
    padding-top: 8px;
}

#sidebar .side-keywords .more-link a {
    background: url(../img/icon-arrow_side.gif) no-repeat left 0.2em;
    padding-left: 18px;
    font-size: 87.5%;
}

#sidebar .side-contents .side-faq { margin-bottom: 10px; }

#sidebar .side-faq .item {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px dotted #999;
}

#sidebar .side-faq h3 {
    font-weight: normal;
    font-size: 87.5%;
    background: url(../img/icon-q_side.gif) no-repeat left 0.2em;
    padding-left: 12px;
}

#sidebar .side-banners {
    margin-bottom: 15px;
    border-bottom: 1px solid #e1e1e1;
}

#sidebar .side-banners .itemTit {
    margin-bottom: 15px;
    padding: 0 10px;
    border-bottom: 1px solid #e1e1e1;
    font-weight:normal;
}

#page_kosodate #sidebar .side-banners .itemTit {
    border-left: 5px solid #eb7777;
}

#page_kyouiku #sidebar .side-banners .itemTit {
    border-left: 5px solid #eb9944;
}

#page_juken #sidebar .side-banners .itemTit {
    border-left: 5px solid #0070cb;
}

#sidebar .side-banners .item {
    padding-bottom: 15px;
}

#sidebar .side-banners .item img {
    width: 100%;
}

#sidebar .side-social {
    background: #eef7ff;
    padding: 10px;
}

#sidebar .side-social .side-social_lead {
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 87.5%;
    text-align: center;
}

#sidebar .side-social .side-social_cap {
    text-align: center;
    font-size: 75%;
    margin-bottom: 10px;
}

#sidebar .side-social .side-social_button {
    width: 165px;
    margin: 0 auto;
}

#sidebar .side-social li {
    width: 72px;
    float: right;
}

#sidebar .side-social li:first-child {
    float: left;
}

#sidebar #side_login {
    border: 9px solid #e7f4ff;
    margin-bottom: 20px;
    padding: 9px 11px;
}

#sidebar .side_login_wrap {
	background: #fff;
	margin: 20px 0;
	padding: 20px 0;
}

#sidebar .side_login_wrap #side_login {
	margin-bottom: 0;
}

#sidebar #side_login p {
    font-size: 81.2%;
    line-height: 1.7;
}

#sidebar #side_login .login_btn {
    margin-bottom: 10px;
    text-align: center;
}

#sidebar #side_login .resist_btn {
    margin-bottom: 12px;
    text-align: center;
}

#sidebar #side_login .resist_text {
	font-size: 81.2%;
    margin-bottom: 10px;
}

#sidebar #side_login .service_link a {
    font-size: 85.7%;
}

/* ========================================
   フッタ
   ======================================== */
.pagetop {
    position: relative;
    left: 50%;
    margin-left: 540px;
    bottom: 15px;
    width: 34px;
}

.menu-ttl { display: none; }

.nav-local {
    background: #0070cb;
    padding: 30px 0;
}

.nav-local_inr {
    width: 960px;
    margin: 0 auto;
}

.nav-local .item {
    width: 280px;
    padding-left: 39px;
    padding-bottom: 5px;
    border-right: 1px solid #4798d9;
    float: left;
}

.nav-local .nav-local_last {
    border-right: none;
}

.nav-local .item h3 {
    margin-bottom: 25px;
    font-weight: normal;
    line-height: 1;
}

.nav-local .item h3 a {
    background: url(../img/icon-arrow_footer.gif) no-repeat left center;
    padding-left: 18px;
    font-size: 112%;
    color: #fff;
}

.nav-local .item li {
    width: 140px;
    float: left;
    margin-bottom: 10px;
}

.nav-local .item li a {
    font-size: 87.5%;
    color: #fff;
}

.ftr-sublink {
    text-align: center;
    font-size: 75%;
    padding: 12px 0;
    background: #e6e6e6;
}

p.security {
    font-size: 75%;
    text-align: center;
    color: #808080;
    background: #f2f2f2;
    padding: 10px 0;
}

p.security a {
    color: #808080;
}

footer {
    width: 960px;
    margin: 0 auto;
    padding: 15px 0 18px;
}

footer .ftr-corporate_logo {
    width: 100px;
    margin-right: 27px;
    float: left;
    line-height: 1;
    font-size: 0;
}

footer .ftr-corporate_copyright {
    width: 262px;
    float: left;
    padding-top: 11px;
    line-height: 1;
    font-size: 0;
}

footer .ftr-corporate_link {
    font-size: 75%;
    float: right;
    color: #808080;
    padding-top: 7px;
}

footer .ftr-corporate_link a {
    color: #808080;
}

#login_require {
    margin: 30px auto;
    width: 500px;
}

#non_kaiin_menu {
    float: left;
    margin-left: 205px;
    width: 178px;
}

#non_kaiin_menu p {
    float: right;
    width: 85px;
}

#non_kaiin_menu p:first-child {
    float: left;
}

#non_kaiin_menu p a {
    background: #0070cb;
    border: 1px solid #0070cb;
    border-radius: 7px;
    color: #fff;
    display: block;
    font-size: 87.5%;
    line-height: 30px;
    text-align: center;
    text-decoration: none;
}

#non_kaiin_menu #hdr-login a {
    background: #fff;
    color: #0070cb;
}

#kaiin_menu {
    float: left;
    margin-left: 218px;
    width: 161px;
}

#kaiin_menu .kaiinbtn {
    background: #0070cb url(/_shared/img/bg_target.gif) no-repeat 20px center;
    border-radius: 7px;
    color: #fff;
    display: block;
    font-size: 87.5%;
    line-height: 32px;
    padding-left: 40px;
    position: relative;
    width: 121px;
}

#kaiin_menu.on .kaiinbtn {
    border-radius: 7px 7px 0 0;
}

#kaiin_menu .kaiinbtn:link,
#kaiin_menu .kaiinbtn:active,
#kaiin_menu .kaiinbtn:visited {
    color: #fff;
}

#kaiin_menu .kaiinbtn:hover {
    text-decoration: none;
}

#kaiin_menu .kaiinbtn span span {
    position: absolute;
    top: 11px;
    right: 11px;
    line-height: 0;
}

#kaiin_menu .kaiinbtn .badge {
    background: #f00;
    border-radius: 9px;
    box-shadow:4px 5px 5px -5px #333;
    -moz-box-shadow:4px 5px 5px -5px #333;
    -webkit-box-shadow:4px 5px 5px -5px #333;    color: #00;
    display: block;
    font-size: 75%;
    height: 18px;
    left: 2px;
    line-height: 18px;
    position: absolute;
    text-align: center;
    top: 2px;
    width: 18px;
}

#kaiin_menu ul {
    background: #fff;
    border-left: 2px solid #0070cb;
    border-right: 2px solid #0070cb;
    border-bottom: 2px solid #0070cb;
    border-radius: 0 0 7px 7px;
    display: none;
    position: absolute;
    width: 157px;
    z-index: 20000;
}

#kaiin_menu li a {
    background: url(/sns_login/img/icon_menu_arrow.gif) no-repeat 137px center;
    border-top: 1px solid #0070cb;
    color: #333;
    display: block;
    font-size: 87.5%;
    line-height: 30px;
    padding: 0 12px;
}

#kaiin_menu li:first-child a {
    border-top: none;
}

.targetbtn {
    float: right;
}

.renew_notice {
    border: 1px solid #08c;
    color: #08c;
    font-size: 75%;
    font-weight: bold;
    margin: 0 auto;
    padding: 10px;
    text-align: center;
    width: 958px;
}


@media screen and (max-width: 740px) {
    /* ========================================
       共通項目
       ======================================== */
    .pc { display: none; }

    .spi { display: inline !important; }

    .spb { display: block !important; }

    .img img {
        max-width: 100%;
    }

    /* ========================================
       ヘッダ
       ======================================== */
    #app_banner {
        background: #f3faff;
        border-bottom: 1px solid #f5f5f5;
        position: relative;
        height: 88px;
    }

    #app_banner .app_banner_close {
        width: 30px;
        height: 88px;
        position: absolute;
        top: 0;
        left: 0;
        display: block;
    }

    #app_banner .app_banner_close img {
        position: absolute;
        top: 50%;
        left: 7px;
        margin-top: -7px;
    }

    #app_banner .app_banner_item {
        display: table;
        padding: 20px 10px 20px 30px;
        width: 100%;
        box-sizing: border-box;
    }

    #app_banner .app_banner_item:hover {
        text-decoration: none;
    }

    #app_banner .app_banner_icon,
    #app_banner .app_banner_text,
    #app_banner .app_banner_download {
        display: table-cell;
        vertical-align: middle;
        text-align: center;
    }

    #app_banner .app_banner_icon {
        padding-right: 7px;
    }

    #app_banner .app_banner_text {
        font-size: 62.5%;
        color: #000;
    }
    
    #header_wrap { position: relative; }

    header {
        padding: 15px 10px 22px;
    }

    .hdr-corporate {
        width: auto;
        padding: 0;
    }

    .hdr-corporate_logo {
        width: auto;
        float: none;
        line-height: 1;
        margin-bottom: 12px;
    }

    .hdr-corporate_link {
        display: none;
    }

    .hdr-site {
        width: auto;
        margin: 0 0 18px;
    }

    .hdr-site h1 {
        width: auto;
        margin-right: 0;
        padding-top: 0;
        float: none;
        line-height: 1;
    }

    .hdr-site .hdr-site_caption {
        display: none;
    }

    .hdr-site .hdr-site_search {
        display: none;
    }

    .hdr-site_search_sp {
        position: relative;
        display: none;
    }

    .hdr-site_search_sp .search-wrapper {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        background: url(/_shared/img_sp/bg_search.png) repeat;
        padding: 10px;
        box-sizing: border-box;
        z-index: 99999;
    }

    .hdr-site_search_sp #search_sp {
        background: #fff;
        border: none;
        border-radius: 7px;
        box-sizing: border-box;
        font-size: 87.5%;
        padding: 5px 10px;
        width: 100%;
        vertical-align: top;
    }

    .nav-global {
        background: none;
        padding-bottom: 0;
        border-top: 1px solid #e6e6e6;
        border-bottom: 2px solid #ebebeb;
    }

    .nav-global ul {
        width: auto;
    }

    .nav-global li {
        float: left;
        width: 27%;
        box-sizing: border-box;
        border-right: 1px solid #ebebeb;
    }

    .nav-global .nav-global_last {
        padding: 0;
        position: absolute;
        top: 12px;
        right: 10px;
        border: none;
        width: auto;
    }

    .nav-global .nav-global_last a {
        background: none transparent;
        padding: 0;
        width: auto;
    }

    .nav-global .nav-global_sp_last {
        width: 19%;
        border: none;
    }

    .nav-global .nav-global_last #target_balloon {
        position: absolute;
        top: 50px;
        right: -17px;
        z-index: 9999;
        width: 320px;
        display: none;
    }

    .nav-global .nav-global_last #target_balloon span {
        position: absolute;
        top: 8px;
        right: 20px;
        width: 30px;
    }

    /* ========================================
       コンテンツ
       ======================================== */
    #emargency {
        width: auto;
        margin: 15px auto;
        padding: 0 15px;
    }

    #emargency h2 {
        font-size: 87.5%;
    }

    #emargency ul {
        padding: 12px 12px 2px;
    }

    #emargency li {
        margin-bottom: 10px;
    }

    #emargency li span {
        display: block;
        font-size: 92.8%;
    }

    #main {
        width: auto;
        margin: 0 auto;
        padding: 20px 0 60px;
    }

    #contents {
        width: auto;
        float: none;
        padding: 0 10px;
    }

    #contents h1.theme_ttl { font-size: 125%; }

	.clip_btn {
		margin-bottom: 10px;
		text-align: right;
	}

	.clip_btn img {
		width: 150px;
	}

    .cnt-info .categories li {
        width: 79px;
        margin-right: 10px;
        font-size: 62.5%;
    }

    .cnt-info .pub-date {
        font-size: 87.5%;
        line-height: 1;
        padding-top: 3px;
    }
    
    .pr-date { font-size: 62.5% !important; }

    .article-body .article-title {
        font-size: 125%;
        margin-bottom: 10px;
    }

    .article-theme {
        margin-bottom: 15px;
    }

    .article-theme li {
        font-size: 62.5%;
    }
    	.article-theme .clip_btn {
		display: none;
	}

    .social-button li {
        width: 24%;
        margin-left: 1%;
    }

    .social-button li:first-child {
        margin-left: 0;
    }

    #articles {
        margin-bottom: 40px;
        word-break: break-all;
    }

    #articles img {
        width: 100%;
        height: auto;
    }

    #articles img[width="1"] {
        width: auto;
    }

    #articles img.arrow {
        width: auto;
        vertical-align: baseline;
    }

    #articles .img_r .img {
        float: none;
        width: 100%;
        margin-left: 0;
    }
    #articles .block {
        margin-bottom: 15px;
    }

    /* #articles .block p { font-size: 87.5%; } */

    #articles .more-article { display: none; }

    #articles .more-btn { margin-bottom: 30px; }

    #articles .more-btn a {
        display: block;
        border: 1px solid #e1e1e1;
        border-radius: 7px;
        text-align: center;
        padding: 15px 0;
        font-size: 81.2%;
    }

    #articles .more-btn a span {
        background: url(../img_sp/icon-arrow_d.gif) no-repeat right center;
        background-size: 10px auto;
        padding-right: 15px;
    }

    #articles .more-btn .on span {
        background: url(../img_sp/icon-arrow_u.gif) no-repeat right center;
        background-size: 10px auto;
    }

    .ttl01 {
        font-size: 125%;
        margin-bottom: 15px;
        line-height: 1.6;
    }

    .ttl02 {
        font-size: 100%;
        margin-bottom: 10px;
    }

    #articles .atc-copyright {
        text-align: center;
        font-size: 75%;
    }

    #articles .atc-logo {
        text-align: center;
    }

    #articles .atc-source {
        border-radius: 7px;
        margin-top: 40px;
        padding: 10px;
        font-size: 81.2%;
    }

    #articles .atc-source p {
        text-indent: -3em;
        margin-left: 3em;
    }

    #articles .pagenation {
        text-align: center;
        margin-top: 30px;
    }

    #articles .pagenation li {
        display: inline-block;
        font-size: 87.5%;
        line-height: 40px;
        margin-right: 8px;
    }

    #articles .pagenation .pgn-prev {
        padding-right: 0;
        float: left;
    }

    #articles .pagenation .pgn-next {
        margin-right: 0;
        padding-left: 0;
        float: right;
    }

    #articles .pagenation .num a,
    #articles .pgn-prev a,
    #articles .pgn-next a {
        display: block;
        width: 40px;
        text-align: center;
        border: 1px solid #e8eadf;
        border-radius: 7px;
    }

    #articles .author {
        margin-top: 30px;
        padding: 10px;
    }

    #articles .author h4 {
        font-size: 81.2%;
    }

    #articles .author .dtl {
        font-size: 81.2%;
    }

    #articles .author .dtl .name {
        font-weight: bold;
    }

    #articles .soudan .face{
        width:45px;
    }

    #articles .soudan .fukidashiTbl{
        width: auto;
    }

    #articles .soudan .fukidashiTbl .taRight {
        padding-left: 12px;
    }

    #articles .soudan .fukidashiTbl .fukidashi{
        background: url(/img_o/kj/common/images/teacher/soudan_tbl03.gif) repeat-y 0 0;
        background-size: 100% auto;
    }

    #articles .soudan .fukidashiTbl .fukidashi td:first-child{
        width: 12px;
    }

    .more-link {
        margin-bottom: 30px;
        padding-bottom: 10px;
        border-bottom: 1px solid #e1e1e1;
    }
    
    .more-link p a {
        font-size: 81.2%;
        background: none;
        position: relative;
        padding-right: 20px;
    }
    
    .more-link p a::after {
        background: url(/_shared/img_sp/icon-arrow_r.gif) no-repeat left top;
        background-size: 6px 11px;
        content: "";
        display: block;
        width: 6px;
        height: 11px;
        position: absolute;
        top: 50%;
        right: 10px;
        margin-top: -7px;
    }

    #useful ul,
    #useful2 ul,
    #useful3 ul {
      margin-left: 0;
    }
    
    #useful li,
    #useful2 li,
    #useful3 li {
        margin-left: 0;
        margin-bottom: 15px;
        width: 47%;
    }

    #useful .normal li,
    #useful2 .normal li,
    #useful3 .normal li,
    #useful .normal li:nth-child(2n),
    #useful2 .normal li:nth-child(2n),
    #useful3 .normal li:nth-child(2n) {
        float: none;
    }

    #useful li img,
    #useful2 li img,
    #useful3 li img {
        width: 100%;
    }

    #useful li:nth-child(2n),
    #useful2 li:nth-child(2n),
    #useful3 li:nth-child(2n) {
        float: right;
    }
    
    #useful li .dtl,
    #useful2 li .dtl,
    #useful3 li .dtl {
      min-height: auto;
    }

    #useful li .bnr-cap,
    #useful2 li .bnr-cap,
    #useful3 li .bnr-cap {
      min-height: 60px;
    }
    

    #related {
        border: none;
        padding-bottom: 0;
    }

    #related li {
        width: auto;
        float: none;
        margin-right: 0;
        margin-bottom: 10px;
        padding-bottom: 10px;
        border-bottom: 1px solid #e1e1e1;
    }

    #related li a { position: relative; }

    #related li a::after {
        background: url(../img_sp/icon-arrow_r.gif) no-repeat left top;
        background-size: 6px 11px;
        display: block;
        width: 6px;
        height: 11px;
        position: absolute;
        top: 50%;
        right: 0;
        margin-top: -5px;
        content: "";
    }

    #related li .img {
        width: 60px;
        margin-right: 10px;
        margin-bottom: 0;
        float: left;
    }

    #related li .dtl {
        overflow: hidden;
    }

    #related li .date {
        font-size: 68.7%;
        margin-bottom: 0;
    }

    #related li .link {
        font-size: 81.2%;
        margin: 5px 0;
        padding-right: 5px;
    }

    .rcat {
        background: #a2a7ab;
        margin-right: 3px;
        font-size: 62.5%;
        text-align: center;
        padding: 2px 12px;
        float: left;
        color: #fff;
        border-radius: 3px;
    }

    .rtheme {
        font-size: 62.5%;
        border-radius: 3px;
        margin-right: 2px;
        padding: 2px 20px 0;
        float: left;
    }

    .bnr-cap {
        font-size: 81.2%;
        margin-top: 7px;
    }

    #bottom-banner {
        margin-bottom: 60px;
    }

    #recommend {
        padding-bottom: 25px;
    }

    #recommend a {
        position: relative;
    }

    #recommend li a::after {
        background: url(../img_sp/icon-arrow_r.gif) no-repeat left top;
        background-size: 6px 11px;
        display: block;
        width: 6px;
        height: 11px;
        position: absolute;
        top: 50%;
        right: 0;
        margin-top: -5px;
        content: "";
    }

    #recommend .item {
        margin-bottom: 20px;
        padding-right: 20px;
        padding-bottom: 20px;
        border-bottom: 1px solid #e1e1e1;
    }

    #recommend .item .last {
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: none;
    }

    #recommend .item .img {
        width: 60px;
        margin-right: 10px;
    }

    #recommend .item .dtl .date {
        font-size: 68.7%;
        margin-bottom: 0;
    }

    #recommend .item .dtl .txt {
        font-size: 75%;
        margin: 5px 0;
    }

    #faq .item {
        margin-bottom: 15px;
        padding-bottom: 15px;
    }

    #faq h3 {
        background: url(../img_sp/icon-q.gif) no-repeat 6px center;
        background-size: 10px auto;
        font-size: 81.2%;
        padding-left: 30px;
    }

    .item .play .icon_play {
        width: 29px;
        height: 29px;
        margin-top: -14px;
        margin-left: -14px;
    }

    .item .play .icon_play.icon_l {
        width: 58px;
        height: 58px;
        margin-top: -29px;
        margin-left: -29px;
    }

    .pr {
        border: 2px solid #0070cb;
        border-radius: 7px;
        margin-top: 40px;
    }

    .pr h3 {
        font-size: 100%;
    }

    .pr .body {
        padding: 9px;
    }

    .pr .body .lead {
        font-size: 87.5%;
    }

    .pr .body .img {
        margin-top: 10px;
    }

    .pr .body .cap {
        font-size: 81.3%;
    }

    /* モーダル */
    #target_select {
        width: auto;
    }

    #target_select h2 {
        font-size: 81.2%;
    }

    #target_select .col {
        width: auto;
        float: none;
        margin-left: 0;
    }

    #target_select .target_item {
        margin-bottom: 15px;
    }

    #target_select .target_item h3 {
        font-size: 81.2%;
    }

    #target_select .target_item .kou-ttl {
        margin-top: 0;
    }

    #target_select .target_item ul {
        margin-left: 0;
    }

    #target_select .target_item li {
        margin-top: 10px;
        margin-left:0;
        width: 49%;
        float: left;
    }

    #target_select .target_item li.wide {
        width: 100%;
    }

    #target_select .target_item li:nth-child(2n) {
        float: right;
    }

    #target_select .target_item li label {
        display: block;
        width: 100%;
        line-height: 46px;
        text-align: center;
        background: url(/_shared/img/bg_target_btn.gif) no-repeat left top;
        background-size: 100% 100%;
    }

    #target_select .target_item li label.on {
        background: url(/_shared/img/bg_target_btn_on.gif) no-repeat left top;
        background-size: 100% 100%;
        color: #fff;
    }

    #target_select #target_clear a {
        color: #333;
        font-size: 85%;
    }

    #target_select #target_clear a span {
        border-bottom: 1px solid #333;
    }

    #target_select #target_clear,
    #target_select .target_item #target_regist {
        margin-top: 0;
    }

    #target_select .target_item #target_clear img {
        width: 100%;
    }

    #target_select .target_links {
        background: #e5f5fd;
        margin: -25px -15px -25px;
        padding: 20px 15px 30px;
    }
    
    #target_select .target_links h2 {
        text-align: left;
        font-size: 82%;
    }
    
    #target_select .target_links .shimajiro {
        width: auto;
        float: none;
        margin-bottom: 15px;
    }
    
    #target_select .target_links .parents {
        width: auto;
        float: none;
    }
    
    #target_select .target_links h3 {
        font-size: 82%;
    }

    #theme_select {
        width: auto;
    }

    #theme_select h2 {
        font-size: 81.2%;
    }

    #theme_select .category_select {
        width: 250px;
        margin: 0 auto 10px;
    }

    #theme_select .category_select p {
        float: left;
    }

    #theme_select .theme_item {
        width: auto;
        float: none;
        margin-left: 0;
        display: none;
    }

    #theme_select .theme_item.actv { display: block; }

    #theme_select .theme_item h3 {
        display: none;
    }

    #theme_select .theme_item ul {
        margin: 0 auto;
        width: 230px;
    }

    #theme_select .theme_item li {
        margin-top: 10px;
        margin-left:0;
        width: 110px;
        float: left;
    }

    #theme_select .theme_item li a {
        background: url(/_shared/img_sp/bg_select_theme.gif) no-repeat left top;
        background-size: 100% auto;
        display: block;
        line-height: 42px;
        text-align: center;
        font-size: 64%;
        color: #333;
    }

    #theme_select .theme_item li:nth-child(2n) {
        float: right;
    }

    #target_select .regist_buttons {
        padding: 0;
    }

    #target_select .regist_buttons ul {
        border: none;
    }

    /* ========================================
       サイドナビ
       ======================================== */
    #sidebar {
        width: auto;
        float: none;
        margin-top: 40px;
        padding: 0 10px;
    }

    #sidebar .side-ad,
    .side-ad {
        margin-bottom: 10px;
    }

    #sidebar .side-contents {
        background: #fff;
        margin-bottom: 20px;
        padding: 0;
    }

    #sidebar .ttl01 {
        font-size: 125%;
        padding: 8px 10px;
    }

    #sidebar .ttl01 br { display: none; }

    #sidebar .ttl01 small {
        font-size: 100%;
    }
    .article-body .ttl01 small {
        font-size: 100%;
    }

    #sidebar .side-contents .block {
        margin-bottom: 20px;
        padding: 0;
    }

    #sidebar .side-theme ul {
        background: #f3f3f3;
        border: 1px solid #e1e1e1;
        border-radius: 7px;
    }

    #sidebar .side-theme li {
        margin-bottom: 0;
        float: left;
        width: 50%;
        border-right: 1px solid #e1e1e1;
        border-bottom: 1px solid #e1e1e1;
        box-sizing: border-box;
    }

    #sidebar .side-theme li:nth-child(2n) {
        border-right: none;
    }

    #sidebar .side-theme li:last-child {
        border-bottom: none;
    }

    #sidebar .side-theme li a {
        display: block;
        font-size: 81.2%;
        background: #fff none;
        padding: 10px;
        position: relative;
    }

    #sidebar .side-theme li a::after {
        background: url(../img_sp/icon-arrow_r.gif) no-repeat left top;
        background-size: 6px 11px;
        display: block;
        width: 6px;
        height: 11px;
        position: absolute;
        top: 50%;
        right: 10px;
        margin-top: -5px;
        content: "";
    }

    #sidebar .side-ranking a {
        display: block;
        position: relative;
        text-decoration: none;
    }

    #sidebar .side-ranking a::after {
        background: url(../img_sp/icon-arrow_r.gif) no-repeat left top;
        background-size: 6px 11px;
        display: block;
        width: 6px;
        height: 11px;
        position: absolute;
        top: 50%;
        right: 0;
        margin-top: -5px;
        content: "";
        visibility: visible;
    }

    #sidebar .side-topics li,
    #sidebar .side-ranking li {
        margin-bottom: 10px;
        padding-bottom: 10px;
        border-bottom: 1px solid #e1e1e1;
    }

    #sidebar .side-topics .img,
    #sidebar .side-ranking .img {
        width: 60px;
        float: left;
        margin-right: 10px;
    }

    #sidebar .side-topics .dtl,
    #sidebar .side-ranking .dtl {
        padding-top: 0;
        font-size: 93.7%;
    }

    #sidebar .side-ranking .dtl .date {
        font-size: 68.7%;
        color: #666;
        margin-bottom: 0;
    }

    #sidebar .side-ranking .dtl .txt {
        font-size: 100%;
        margin: 5px 0;
        padding-right: 5px;
    }

    #sidebar .side-keywords ul {
        margin-bottom: 10px;
        padding-bottom: 10px;
        border-bottom: 1px solid #e1e1e1;
    }

    #sidebar .side-keywords li {
        width: 33%;
        margin-right: .5%;
    }

    #sidebar .side-keywords .even {
        margin-right: .5%;
    }

    #sidebar .side-keywords li:nth-child(3n) {
        margin-right: 0;
    }

    #sidebar .side-keywords li a {
        display: block;
        height: 26px;
        background: #e1ecf1;
        text-align: center;
        font-size: 87.5%;
        border-radius: 5px;
        line-height: 1.2;
        padding-top: 12px;
    }

    #sidebar .side-keywords .l2 a {
        height: 35px;
        padding-top: 3px;
    }

    #sidebar .side-keywords .more-link,
    #sidebar .side-theme .more-link {
        text-align: right;
    }

    #sidebar .side-keywords .more-link a,
    #sidebar .side-theme .more-link a {
        background: url(../img_sp/icon-arrow_r.gif) no-repeat right 0.3em;
        background-size: 6px auto;
        padding-right: 10px;
        font-size: 81.2%;
    }

    #sidebar .side-contents .side-faq { display: none; }

    #sidebar .side-banners {
        margin-bottom: 15px;
        padding: 0;
        border-bottom: none;
    }

    #sidebar .side-banners .item {
        padding-bottom: 15px;
    }

    #sidebar .side-social {
        background: #eef7ff;
        padding: 10px;
    }

    #sidebar .side-social .side-social_lead {
        font-weight: bold;
        margin-bottom: 10px;
        font-size: 100%;
        text-align: center;
    }

    #sidebar .side-social .side-social_lead br { display: none; }

    #sidebar .side-social .side-social_cap {
        text-align: center;
        font-size: 75%;
        margin-bottom: 10px;
    }

    #sidebar .side-social .side-social_button {
        width: 165px;
        margin: 0 auto;
    }

    #sidebar .side-social li {
        width: 72px;
        float: right;
    }

    #sidebar .side-social li:first-child {
        float: left;
    }

	#sidebar .side_login_wrap {
		margin-top: 0;
		padding-top: 0;
	}

	#sidebar #side_login {
		background: #e3faff;
		border: 2px solid #0070cb;
	}

	#sidebar #side_login h3 {
	    font-size: 137%;
		text-align: center;
	}
	
	#sidebar #side_login h4 {
	    font-size: 93.7%;
		text-align: center;
	}
	
	#sidebar #side_login p {
	    font-size: 93.7%;
	    margin: 0 auto;
		width: 220px;
	}

	#sidebar #side_login .login_btn {
		margin: 15px auto 10px;
	}
	
	#sidebar #side_login .login_btn img {
	    width: 220px;
	}
	
	#sidebar #side_login .resist_link {
	    text-align: center;
	}
	
	#sidebar #side_login .resist_link a {
	    font-size: 66.6%;
	}

    /* ========================================
       フッタ
       ======================================== */
    .pagetop {
        position: fixed;
        left: initial;
        margin-left: 0;
        bottom: 15px;
        right: 10px;
        z-index: 30000;
        width: auto;
    }

    .menu-ttl {
        display: block;
        font-size: 125%;
        font-weight: normal;
        background: #fff;
        border-top: 1px solid #e6e6e6;
        border-left: 5px solid #0070cb;
        border-botom: 1px solid #e6e6e6;
        padding: 10px;
    }

    .nav-local {
        background: #f3f3f3;
        padding: 0;
    }

    .nav-local_inr {
        width: auto;
        margin: 0 auto;
    }

    .nav-local .item {
        width: auto;
        padding: 0;
        border-right: none;
        float: none;
    }

    .nav-local .nav-local_last {
        border-right: none;
    }

    .nav-local .item h3 {
        margin-bottom: 0;
        font-weight: bold;
        line-height: 1;
    }

    .nav-local .item h3 a {
        display: block;
        background: none;
        padding: 15px;
        font-size: 87.5%;
        color: #333;
        position: relative;
    }

    .nav-local .item ul {
        background: #e6e6e6;
        border-bottom: 1px solid #e6e6e6;
    }

    .nav-local .item li {
        width: 50%;
        float: left;
        margin-bottom: 0;
        background: #f3f3f3;
        border-right: 1px solid #e6e6e6;
        border-top: 1px solid #e6e6e6;
        box-sizing: border-box;
    }

    .nav-local .item li:nth-child(2n) {
        border-right: none;
    }

    .nav-local .item li a {
        font-size: 75%;
        color: #333;
        display: block;
        padding: 15px;
        position: relative;
    }

    .nav-local .item a::after {
        content: "";
        background: url(../img_sp/icon-arrow_footer.gif) no-repeat left top;
        background-size: 6px 11px;
        display: block;
        width: 6px;
        height: 11px;
        position: absolute;
        top: 50%;
        right: 10px;
        margin-top: -5px;
    }

    .breadcrumb {
        font-size: 62.5%;
        margin-bottom: 15px;
        padding: 10px 15px;
        border-bottom: 1px solid #e6e6e6;
    }

    .breadcrumb li {
        float: left;
        margin-right: 5px;
    }

    .breadcrumb a {
        margin-right: 5px;
    }

    .breadcrumb .kw a {
        color: #666;
    }

    .ftr-sublink {
        font-size: 62.5%;
        padding: 12px 10px;
    }

    p.security {
        font-size: 62.5%;
        text-align: center;
        color: #808080;
        background: #f7f7f7;
        border: 2px solid #e6e6e6;
        border-radius: 7px;
        margin: 0 10px;
        padding: 10px 0;
    }

    p.security a {
        color: #808080;
    }

    #page_top .security, #page_juken .security, #page_kosodate .security, #page_kyouiku .security { margin-top: 15px; }

    footer {
        width: auto;
        margin: 0 auto;
        padding: 15px 0 18px;
        border-bottom: 4px solid #0070cb;
    }

    footer .ftr-corporate_logo {
        width: auto;
        margin-right: 0;
        margin-bottom: 15px;
        float: none;
        line-height: 1;
        font-size: 0;
        text-align: center;
    }

    footer .ftr-corporate_copyright {
        width: auto;
        float: none;
        padding-top: 0;
        line-height: 1;
        font-size: 0;
        text-align: center;
    }

    footer .ftr-corporate_link {
        font-size: 75%;
        float: none;
        text-align: center;
        margin-bottom: 10px;
    }

    footer .ftr-corporate_link a {
        color: #808080;
    }


    #login_require {
        margin: 15px auto 30px;
        width: 300px;
    }

    .targetbox {
        font-size: 62.5%;
        position: absolute;
        top: 70px;
        right: 10px;
    }

    #non_kaiin_menu {
        float: none;
        margin-left: 0;
        position: absolute;
        right: 10px;
        top: 17px;
        width: 119px;
    }

    #non_kaiin_menu p {
        width: 58px;
    }

    #non_kaiin_menu p a {
        font-size: 75%;
        line-height: 41px;
    }

    #kaiin_menu {
        position: absolute;
        right: 10px;
        top: 17px;
        width: auto;
    }

    #kaiin_menu .kaiinbtn {
        padding-left: 0;
        width: auto;
    }

    #kaiin_menu .menu-block {
        position: absolute;
        right: -170px;
        top: 0;
        transition: all .5s;
        width: 160px;
        z-index: 20000;
    }

    #kaiin_menu .menu-block.on {
        right: -10px;
    }

    #kaiin_menu .menu-block .menu-sp-header {
        background: #0070cb;
        padding: 12px 14px 10px 8px;
    }

    #kaiin_menu .menu-block .menu-sp-header h3 {
        float: left;
        line-height: 1;
    }

    #kaiin_menu .menu-block .menu-sp-header p {
        float: right;
        line-height: 1;
    }

    #kaiin_menu .menu-block ul {
        border: none;
        border-radius: 0;
        display: block;
        position: static;
        width: 160px;
    }

    #kaiin_menu .menu-block li a {
        background-size: 7px auto;
        border-top: 1px solid #bdbdbd;
        font-size: 75%;
        line-height: 40px;
    }
    
    .renew_notice {
        box-sizing: border-box;
        margin: 50px 15px 0;
        width: auto;
    }
}

.article-body #bottom-banner,
.article-body #faq { display:none;}

/* .fixedMenuArea */
.fixedMenuArea {
    display:none;
}
@media screen and (min-width: 741px) {
    .fixedMenuArea {
        display:block;
        position:fixed;
        top:155px;
        right:0;
        z-index:10000;
        transition: -webkit-transform .4s;
        transition: transform .4s;
        transition: transform .4s, -webkit-transform .4s;
    }
    .fixedMenuArea.hide {
        -webkit-transform: translateX(110%);
        transform: translateX(110%);
    }
    .fixedMenuArea .menuArea {
        padding:14px 0 6px 9px;
        background:#fff;
        border:1px solid #d7d7d7;
        -moz-border-radius: 7px 0 0 7px;
        -webkit-border-radius: 7px 0 0 7px;
        -ms-border-radius: 7px 0 0 7px;
        border-radius: 7px 0 0 7px;
        -moz-box-shadow: 0 0 4px 0 rgba(0, 0, 0, .3);
        -webkit-box-shadow: 0 0 4px 0 rgba(0, 0, 0, .3);
        -ms-box-shadow: 0 0 4px 0 rgba(0, 0, 0, .3);
        box-shadow: 0 0 4px 0 rgba(0, 0, 0, .3);
    }
    .fixedMenuArea .menuArea + .menuArea {
        padding:13px 0 17px 9px;
        margin-top:8px;
    }
    .fixedMenuArea .menuArea h2 {
        margin-bottom:13px;
        line-height:1;
    }
    .fixedMenuArea .menuArea + .menuArea h2 {
        margin-bottom:10px;
    }
    .fixedMenuArea .menuArea ul {
        
    }
    .fixedMenuArea .menuArea ul li {
        margin-bottom:5px;
        text-align:center;
    }
    .fixedMenuArea .menuArea ul li:last-child {
        margin-bottom:0;
    }
}
/* .mobileAnchorBnr */
.mobileAnchorBnr {
    display:none;
}
@media screen and (max-width: 740px) {
    .mobileAnchorBnr {
        position:fixed;
        left:0;
        bottom:0;
        z-index: 20000;
        width:100%;
        background:#fff;
        overflow:hidden;
    }
    .mobileAnchorBnr .mobileAnchorBnrIn {
        width:100%;
        text-align:center;
    }
    .mobileAnchorBnr .mobileAnchorBnrIn img {
        max-width:100%;
    }
    .mobileAnchorBnr .mobileAnchorBnrIn p img {
        width:100%;
        max-width:375px;
        height:auto;
    }
}
