﻿@charset "utf-8";

/*--------------------------------------------------------

  eachColumn
  
  01. forPC Layout
  
  02. forSP Layout

--------------------------------------------------------*/



/********************************************************************************

  01. forPC Layout

********************************************************************************/



.nte_content_document .inner_details {
	line-height:1.8;
}

.nte_content_document .inner_details strong {
	font-weight:bold;
}

.nte_content_document .inner_details.textRight {
	text-align: right;
}

.nte_content_document ruby {
	position: relative;
}

.nte_content_document ruby rt{
	position: relative;
	top: 2px;
	font-size:9px;
}

.nte_content_document ruby rp{
	font-size:9px;
}

.nte_content_document sup{
	vertical-align: super;
}

/* ページ見出し
----------------------------- */
h3.ttl3 {
	font-size:30px;
	margin:0 0 10px 0;
}
h3.ttl3 span {
	font-size:18px;
	font-weight:normal;
}
.section_wrap h5 {
	font-size:18px;
	font-weight:bold;
	margin: 5px 0 0;
}

/* 文字
----------------------------- */
.fwB {
    font-weight: bold;
}

/* コンテンツ
----------------------------- */
.inner_title {
	overflow:hidden;
	margin:0 0 25px;
}
.inner_title .col_flL_02 {
}
.inner_title .col_flR_03 {
	float:right;
	width:680px;
}

.teacher {
	display: inline-block;
    margin: 0 25px 0 3px;
}
.name {
	display: inline-block;
	font-size:25px !important;
	font-weight:normal;
}

.section_wrap {
	/*overflow:hidden;*/
	margin:0 0 10px;
}

.section_lead_wrap {
	margin:0 -25px 50px;
	padding: 25px;
	background: url(../nss_shou_kokugo_img/common/bg_section_lead_wrap@1.5x.png) repeat;
	background-size: 100px auto;
}

.section_wrap h3 {
	margin:0 0 10px;
	line-height: 1.2;
	font-size: 3.2rem;
	font-weight: 700;
}

.section_wrap h4 {
	margin:0 0 10px;
	line-height: 1.2;
	font-size: 2rem;
	font-weight: 700;
}

.section_wrap h5 {
	margin:0 0 10px;
	line-height: 1.2;
	font-size: 1.8rem;
	font-weight: 700;
}

.section_wrap h6 {
	margin:0 0 10px;
	line-height: 1.2;
	font-size: 1.8rem;
	font-weight: 700;
}

.note_area {
	clear: both;
	margin: 10px 0 15px;
	padding:14px 25px;
	background:#f2f2f2;
	border-radius: 10px;
}
.note_area p {
	font-size:14px;
}

.note_area_narrow {
	margin: 10px 0 15px;
	padding:14px 5px;
	background:#f2f2f2;
	border-radius: 10px;
}

.note_area.bg_blue {
	background:#008ed2;
}
.note_area.bg_blue p {
	color: #fff;
}

.border_area {
	position: relative;
	overflow: hidden;
	margin: 10px 0 15px;
	padding: 20px 25px;
	border-radius: 10px;
	border: 2px solid #e2e2e2;
	background: #fff;
}
.border_area p {
	/*font-size:14px;*/
}

.balloon_area {
	position: relative;
	margin: 0 35px 10px;
	padding: 0 15px;
	width: 250px;
	text-align: center;
	background: #fff;
	border-radius: 10px;
	border: 2px solid #e2e2e2;
	z-index: 0;
}
.balloon_area:before {
	content: "";
	position: absolute;
	bottom: -9px; 
	left: 50%;
	margin-left: -9px;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 9px 9px 0 9px;
	border-color: #fff transparent transparent transparent;
	z-index: 0;
}
.balloon_area:after {
	content: "";
	position: absolute;
	bottom: -12px; left: 50%;
	margin-left: -10px;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #e2e2e2 transparent transparent transparent;
	z-index: -1;
}

.balloon_area_wide {
	width: 500px;
}

h4.floatReset {
	clear: both;
}

p.borderline {
	border: solid 1px #333;
	display: inline-block;
	padding: 0 6px;
	margin-bottom: 10px;
}

p.imgLeft:last-child {
	margin-right: 0 !important;
}

.underline {
	border-bottom: solid 1px #333; 
}
.underline-tc {
	font-size: 15px;
	text-decoration: underline;
}
.underline-double {
	border-bottom: double #ff0000; 
}
.underline-double-black {
	border-bottom: double #000; 
}
.underline-wave-black {
	background:url(../nss_shou_eigo_img/common/underline-wave-black.png) bottom repeat-x; 
	background-size: 16px;
}
.underline-yellow {
    background: linear-gradient(transparent 74%, #fff020 0%);
    line-height: 1.4;
}
.underline-black {
    background: linear-gradient(transparent 87%, #000 0%);
    line-height: 1.4;
}

.markerline {
	background: #e5e5e5; 
}
.markerbox {
	border: 1px solid #000; 
}

.hr_dashed {
  border: none;
  height: 1px;
  position: relative;
}
.hr_dashed::before {
  content: "";
  background-image: linear-gradient(to right, #9c9d9e, #9c9d9e 7px, transparent 7px, transparent 14px);
  background-size: 14px 1px;
  background-repeat: repeat-x;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.centerBox {
	overflow: hidden;
	margin: 0 auto;
}

.centerBox_x2,
.centerBox_x3 {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 20px;
}
/*文章途中から回り込み*/
.spacer {
	float: right;
	width: 1px;
	height: 50px;
}

/* 画像の回りこみ
----------------------------- */
.imgLeft {
	display: inline;
	float:left;
	margin: 0 25px 15px 0;
}
.imgRight {
	display: inline;
	float:right;
	margin: 0 0 25px 15px;
}
.imgCenter {
	display: flex;
	flex-flow: column;
    align-items: center;
	margin: 0 0 25px;
}

.comment {
	font-size: 1.4rem;
	line-height:1.2;
	float:left;
}
.commentCenter {
	font-size: 1.4rem;
	line-height:1.2;
	text-align: center;
}
.posting {
	text-align:right;
	margin:10px 0;
}

.imgBorder {
	border: 1px solid #000;
	box-sizing: border-box;
}

/* ボタン
----------------------------- */
.nte_btn_01 {
	background:#008ed2;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	margin:0 auto;
}
.nte_btn_01 a {
	display:block;
	font-size:18px;
	color:#fff;
	margin: 0 0 20px;
	padding:10px;
	text-decoration:none;
}


/* 幅
----------------------------- */
.wid280 {width:280px;}
.wid440 {width:440px;}
.wid480 {width:480px;}
.wid600 {width:600px;}
.wid800 {width:800px;}


/* フロート
----------------------------- */
.col_flL {
	float:left;
}
.col_flR {
	float:right;
}

/* 画像エリア
----------------------------- */
.img_wrap {
	text-align:center;
}
.img_wrap li {
	display: inline-block;
	padding:0 5px 10px;
}

/* 注意リスト
----------------------------- */
ul.caution {
	padding-left: 0;
	list-style-type: none;
}
ul.caution > li {
	margin-left: 1.2em;
	font-size: 12px;
}
ul.caution > li:before {
	content: "\0203B";
}

/* 取材・編集協力
----------------------------- */
.caution_area {
  width: 960px;
	margin:0 auto;
}
.caution_area .inner {
	float:right;
	text-align:right;
}
.caution_area .inner p {
	line-height:1.4;
	font-size:18px;
}


/* table
----------------------------- */
table.inquest_tbl {
	margin: 0 0 20px;
	border-collapse: collapse;
	border-spacing: 1px;
	border-bottom: 1px solid #bfbfbf;
	text-align: center;
	line-height: 1.5;
}
table.inquest_tbl th {
	padding: 1px 10px;
	vertical-align: top;
	background: #e5e5e5;
	border: 1px solid #bfbfbf;
	text-align: center;
}
table.inquest_tbl td {
	padding: 0 0 10px;
	vertical-align: top;
	border: 1px solid #bfbfbf;
	border-bottom: none;
	text-align: left;
}

table.inquest_tbl p,
table.inquest_tbl ul{
	margin: 10px 10px 0;
}
table.inquest_tbl li{
	padding: 0 0 0 1em;
	text-indent: -1em;
}
table.inquest_tbl ul.inner_detail{
	margin: 0 10px 0;
}

table.standard_tbl {
	margin: 0 0 20px;
	border-collapse: collapse;
	border-spacing: 1px;
	border-bottom: 1px solid #bfbfbf;
	text-align: center;
	line-height: 1.5;
}
table.standard_tbl th {
	padding: 1px 10px;
	vertical-align: top;
	border: 1px solid #bfbfbf;
	text-align: center;
}
table.standard_tbl td {
	padding: 0 0 10px;
	vertical-align: top;
	border: 1px solid #bfbfbf;
	border-bottom: none;
	text-align: left;
}
table.standard_tbl p,
table.standard_tbl ul{
	margin: 10px 8px 0;
}

.reference {
    text-decoration: none !important;
}

a.anchor_default {
    display: block;
    position: relative;
    top: -70px;
    visibility: hidden;
}

/* icon_movie
----------------------------- */
.icon_movie {
    position: relative;
    display: inline-block;
    border: 1px solid #ddd;
    line-height: 0;
}

.icon_movie:after {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    content: "";
    height: 84px;
    width: 84px;
    background: url(../nss_shou_kokugo_img/common/icon_movie@1.5x.png) no-repeat;
    background-size: contain;
}



/********************************************************************************

  02. forSP Layout
    *横幅が667px以下の場合
  

********************************************************************************/

@media screen and (min-width: 0px) and (max-width: 668px) {



/* コンテンツ
----------------------------- */
.section_lead_wrap {
	margin:0 -3% 50px;
	padding: 4%;
}

.section_wrap h3 {
	font-size: 1.92rem;
}

.section_wrap h4 {
	font-size: 1.7rem;
}

.section_wrap h5 {
	font-size: 1.6rem;
}

.section_wrap h6 {
	font-size: 1.6rem;
}

.centerBox_x2,
.centerBox_x3 {
	width: 100%;
	justify-content: center;
}

.balloon_area {
	margin: 0 0 10px;
}
.balloon_area_wide {
	box-sizing: border-box;
	width: 100%;
}
.nte_content_document p.textRight{
	text-align: left;
}

/* 画像の回りこみ
----------------------------- */
.imgLeft {
	display: block;
	float:none;
	margin: 0 auto 25px;
}
.imgRight {
	display: block;
	float:none;
	margin: 0 auto 25px;
}

.commentCenter {
	font-size: 1.1rem;
}

/* table
----------------------------- */
table.inquest_tbl { width: 100%; border:none; padding: 10px; border-bottom: 1px solid #bfbfbf;}
table.inquest_tbl th { display: none;}
table.inquest_tbl tr { display: block;}
table.inquest_tbl td {
	width: 100%;
	box-sizing: border-box;
	border-right: 1px solid #bfbfbf;
	border-bottom: none;
	display: block;
	padding: 0 0 10px;
}
table.inquest_tbl td:before {
	display: block;
	text-align: center;
}
table.inquest_tbl td:nth-of-type(1):before { border-top: 1px solid #bfbfbf; border-bottom: 1px solid #bfbfbf; background: #e5e5e5;}
table.inquest_tbl td:nth-of-type(2):before { border-top: 1px solid #bfbfbf; border-bottom: 1px solid #bfbfbf; background: #e5e5e5;}
table.inquest_tbl td:nth-of-type(3):before { border-top: 1px solid #bfbfbf; border-bottom: 1px solid #bfbfbf; background: #e5e5e5;}

table.inquest_tbl td p:before {
	display: block;
	text-align: center;
	margin: -10px -10px 10px;
}

/* フロート
----------------------------- */
.col_fln_sp {
	float:none;
}

/* 幅
----------------------------- */
.widauto_sp {width:auto;}
.wid90per_sp {width:90%;}
.wid150_sp {width:150px;}
.wid200_sp {width:200px;}
.wid250_sp {width:250px;}

a.anchor_default {
    top: -75px;
}

/* icon_movie
----------------------------- */
.icon_movie:after {
    height: 70px;
    width: 70px;
}



}