@charset "UTF-8";
/* CSS Document */

/* 共通（メイン）
----------------------------------------------------------- */

.wrapper2 h2 {
	margin: 0 0 35px;
	padding: 30px 0 27px 30px;
	color: #444;
	font-size: 185.71%;
	font-weight: bold;
	background: #edf2e3;
	border-left: solid #5fa900 10px;
}
@media screen and (max-width: 767px) {
  .wrapper2 h2 {
	margin: 0 0 10px;
	padding: 30px 0 27px 10px;
	font-size: 142.86%;
	border-left: solid #5fa900 5px;
	border-radius: 0 20px 0 0;
}
}

    h3, h4 {
      color: #5fa900;
      font-weight: bold;
    }
    h3 span {
      font-size: 0.8em;
      font-weight: normal;
      color: #000;
    }
    h4 {
      margin: 0 0 1em 0;/**/
		line-height: 1.5em;
    }
@media screen and (max-width: 767px) {
    h4 {
      margin: 0 0 0.5em 0;/**/
		line-height: 1.5em;
    }
}


    h4 .sub {
      /*margin: 1em 0 1em;*/
		font-size: 1.4em;
		line-height: 1.4em;
    }
@media screen and (max-width: 767px) {
    h4 .sub {
      /*margin: 1em 0 1em;*/
		font-size: 1.1em;
		line-height: 1.2em;
    }
}


.kfs_dai-b {
	font-size: 1.2em;
	font-weight: bold;
    }
.c-g {
	color: #5fa900;
	font-size: 1.3em;
    }
@media screen and (max-width: 767px) {
.kfs_dai-b {
	font-size: 1.1em;
	font-weight: bold;
    }
}






.k-m_tb20-0 {
	margin: 20px 0 0 0;
    }
.k-m_tb30-0 {
	margin: 30px 0 0 0;
    }
.k-m_tb40-0 {
	margin: 40px 0 0 0;
    }
@media screen and (max-width: 767px) {
.k-m_tb20-0 {
	margin: 0px 0 0 0;
    }
.k-m_tb30-0 {
	margin: 0px 0 0 0;
    }
.k-m_tb40-0 {
	margin: 0px 0 0 0;
    }
}

.k-fb_white {
	background-color: #FFFFFF;
	padding: 6px 4px 4px 4px;
	border-radius: 5px;
    }

.k-rstr_hr {
	border-top: #C5F39B 3px dotted;
	margin: 40px 0 0px 0;
	padding: 30px 0 0 0;
    }




body {
    padding-top: 152px; /* ヘッダーの高さ分の余白をいれ、うしろの要素が隠れないようにする 173px */
}
@media screen and (max-width: 767px) {
body {
    padding-top: 72px; /* ヘッダーの高さ分の余白をいれ、うしろの要素が隠れないようにする */
}
}

/******* ヘッダーのスタイル ********/
header {
    position: fixed; /*** ← fixedで固定 ***/
    width: 100%; 
    height: 114px; 
	z-index: 10;
	
    top: 0; 
    left: 0; 

}


.table-radius {
  border: none;
  border-radius: 15px;
  border-spacing: 0;
  border-collapse: separate;
  border: 1px solid #ddd;
	margin: 0 -15px 0 -15px;
}
@media screen and (max-width: 767px) {
.table-radius {
	margin: 0 0 0 0;
}
}
	
.table-radius tr th,
.table-radius tr td {
  border: none;
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd;
	padding: 20px;
}

.table-radius tr:nth-child(odd){
  /*background: #ffffff;  */
}

.table-radius tr th{
  background: #ddd; 
}

.table-radius tr td:first-child {
  border-left: none;
  border-bottom: none;
}

.table-radius tr td:last-child {
  border-right: none;
}

.table-radius tr th:first-child {
  border-radius: 15px 0 0 0;
}

.table-radius tr th:last-child {
  border-right: none;
  border-radius: 0 15px 0 0;
}

.table-radius tr:last-child td:first-child{
  border-top: none;
  border-radius: 15px 0 0 15px;
}
.table-radius tr:last-child td:last-child {
  border-bottom: none;
  border-radius: 0 15px 15px 0;
}





.table-radius-t {
  border: none;
  border-radius: 15px;
  border-spacing: 0;
  border-collapse: separate;
  border: 1px solid #ddd;
	margin: 0 -15px 0 -15px;
}
@media screen and (max-width: 767px) {
.table-radius-t {
	margin: 0 0 0 0;
}
}
	
.table-radius-t tr th,
.table-radius-t tr td {
  border: none;
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd;
	padding: 20px;
}

.table-radius-t tr:nth-child(odd){
  /*background: #ffffff;  */
}

.table-radius-t tr th{
  background: #ddd; 
}

.table-radius-t tr td:first-child {
  border-left: none;
}

.table-radius-t tr td:last-child {
  border-right: none;
}

.table-radius-t tr th:first-child {
  border-radius: 15px 0 0 0;
}

.table-radius-t tr th:last-child {
  border-right: none;
  border-radius: 0 15px 0 0;
}

.table-radius-t tr:last-child td:first-child{
  border-top: none;
  border-radius: 15px 0 0 15px;
}
.table-radius-t tr:last-child td:last-child {
  border-bottom: none;
  border-radius: 0 0 15px 15px;
}




.table-ai {

}
.table-ai tr td {
	padding: 15px;
}
.table-ai th {
	background-color: #e5e8f2;
	padding: 15px;
	vertical-align: middle; /* go-comでは top　にしていた*/
	text-align: center;
}





.img-border {
	border: #dddddd 1px solid;
}

.column {
	font-size: 0.9em; 
	border: #c6f69c 2px dotted; 
	border-radius: 5px; 
	padding: 10px 10px 15px 10px;
	line-height: 1.4em;
	background-color: #F5FFE2;
}
.column span {
	background-color: #c6f69c; 
	padding: 5px 15px; 
	border-radius: 15px;
	line-height: 2.5em;
}

.column2 {
	font-size: 0.9em; 
	border: #d7d1b7 2px dotted; 
	border-radius: 5px; 
	padding: 10px 10px 15px 10px;
	line-height: 1.4em;
}
.column2 span {
	background-color: #e3dfcf; 
	padding: 5px 15px; 
	border-radius: 15px;
	line-height: 2.5em;
}



.daimoji {
	font-size: 1.8em;
}
.daimoji07 {
	font-size: 0.7em;
}
.daimoji09 {
	font-size: 0.9em;
}
.daimoji-read {
	font-size: 1.8em;
}
@media screen and (max-width: 767px) {
.daimoji {
	font-size: 1.4em;
}
}
	
	

.app-btnEX {
	font-size: 1.0em;
	margin:0px auto 5px;
	padding: 7px 5px 3px 7px;
	display:block;
	background-color: #d0ed78;  /*ff8400*/
	border:1px solid #d4d4d4;
	border-radius: 7px;
	font-weight:normal;
	text-align:center;
	color: #ffffff;
	width: 100%;
	} 
.app-btnEX a {
	font-size: 1.2em;
	padding:0 0 20px 30px ;
	margin:0 0 5px;
	color: #333;
	/*text-decoration: underline;*/
	background: url(/img/icon_arrow.png) no-repeat 0px 0px;
	}
.app-btnEX a:hover {
	color:#5fa900;
	text-decoration: none;
	}
@media screen and (max-width:767px){
.app-btnEX a {
	font-size: 1.1em;
	}
	}


.waku {
	border: #CCCBBF 1px solid;
	margin-bottom: 20px;

} 
.waku0 {
	display: flex;
    flex-wrap: wrap;
} 
.wakumi {
	padding-right: -1px;
} 


.ser3 {
	background-color: #c6f69c; 
	padding: 5px 15px; 
	border-radius: 15px;
}

.cor1 {
	background-color: #d0c8ec; 
	padding: 5px 15px; 
	border-radius: 15px;
}
.cor2 {
	background-color: #b7dded; 
	padding: 5px 15px; 
	border-radius: 15px;
}
.cor3 {
	background-color: #d2f0a5; 
	padding: 5px 15px; 
	border-radius: 15px;
}




.wk_otms {
	border: #c2c4df 1px solid; 
	border-radius: 10px; 
	background-color: #d8e1fb;
}

.wk_login {
	border: #c2c4df 1px solid; 
	border-radius: 10px; 
	background-color: #d0ed78;
}

















/* タイトル（モーダル部分抜粋　2次階層タイトル用）
----------------------------------------------------------- */
/*.pageTitle {
  padding: 0 0 0 0px;
  color: #d84700;
  font-size: 2.3em;
  font-weight: bold;
}*/

/* 共通（サイドバー）
----------------------------------------------------------- */

/*#side1 {
	padding: 0 0 0;
}*/

#side1 ul {
	margin: 0 0 15px;
  list-style: none;
}

#side1 li {
	margin: 0 0 7px;
	border-bottom: 1px dashed #a7a79d;
}

#side1 li:last-child {
	border: none;
}

#side1 li.current {
	background-color: #d84700;
  border-radius: 10px;
  padding-top: 5px;
  font-size: 1.1em;
  color: #fff;
  font-weight: bold;
}

#side1 li a {
	display: block;
	padding: 5px 10px 11px 20px;
	font-size: 1.15em;
	color: #333;
}

#side1 li a:hover {
	color: #5fa900;  /* みどり */
}

#side1 li.current a {
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}

#side1 p {
	margin: 0 0 10px;
}

/* 学習一覧
----------------------------------------------------------- */
.studyList h2 {
	margin: 0;
}

.studyList > div {
	padding: 5px 8px;
	border-top: 1px solid #b2b29b;
}

.studyList h2 + div {
	border: none;
}

.studyList div:last-child {
	padding: 5px 8px 8px;
}

.studyList a {
	display: block;
	overflow: hidden;
	padding: 20px 30px 0px 30px;
	text-decoration: none;
}
.studyList a:hover {
	background: #fbefe7;
}

.studyList a dt {
  margin-bottom:5px;
	font-size: 170%;
	font-weight: bold;
}

@media screen and (max-width: 767px) {
  .studyList > div {
	padding: 0px 8px;
}

  .studyList div:last-child {
	padding: 0px 8px 3px;
}

  .studyList a dt {
	font-size: 130%;
}
}

.studyList a dt span {
	text-decoration: underline;
  padding-top: 10px;
}

.studyList a:hover dt {
	color: #d84700;
}

.studyList a:hover dt span {
	text-decoration: none;
}

.studyList a figure{
	padding-left: 40px;
}

.studyList a figure img{
	border: 1px solid #c5c5c5;
}

/* おすすめコンテンツ
----------------------------------------------------------- */
.wrapper_recommend {
	margin: 0 0 40px;
  background-color: #fff;
  border: solid #eb8b5c 3px;
  border-radius: 5px;
  overflow: hidden; /* はみ出した部分を隠す */
}

.wrapper_recommend h2 {
	margin: 0 0 35px;
	padding: 20px 0 17px 0px;
  text-align: center;
	color: #d84700;
	font-size: 185.71%;
	font-weight: bold;
	background: #fbefe7;
}

@media screen and (max-width: 767px) {
  .wrapper_recommend h2 {
	font-size: 160%;
}
}

.recommend dl {
	margin: 0 0 30px 0;
}

.recommend dt {
	margin: 0 0 5px;
}
.recommend p {
	margin: 0 0 5px;
	padding: 0 15px;
  text-align: center;
}

.btn---recommend a:hover img{
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}
