@charset "utf-8";
/**
 *
 *  第２階層ページ
 *
 */



/*--------------------------------------------------------------------------
	overwrite
---------------------------------------------------------------------------*/

#Content {
	max-width: 1072px;
	width: 90.6%;
	padding: 0px 0 80px;
}
#page {
	margin: 0;
}



/* ------------------------------------------------------
	トピックス一覧
------------------------------------------------------ */
#Main.newsList .newsBox {
	padding-bottom: 60px;
	margin-bottom: 40px;
	border-bottom:1px dotted #d1d1d1;
	position: relative;
}

#Main.newsList .newsBox .date {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	margin-right: 20px;
	font-size: 14px;
	font-size: 1.4rem;
	color: #666;
}

#Main.newsList .newsBox .tag {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	font-size: 11px;
	font-size: 1.1rem;
	line-height: 1;
	color: #fff;
	min-width: 110px;
	margin-right: 20px;
	text-align: center;
	background: #e61414;
}

#Main.newsList .newsBox .tag a {
	color: inherit;
	padding: 4px 0 3px;
	display: block;
}

#Main.newsList .newsBox .tag a:hover {
	opacity: 0.7;
}

#Main.newsList .newsBox .tag.info {
	background: #e61414;
}

#Main.newsList .newsBox .tag.philippine-info {
	background: #ffbc00;
}

#Main.newsList .newsBox .tag.canada-info {
	background: #005a94;
}

#Main.newsList .newsBox .tag.australia-info {
	background: #126012;
}

#Main.newsList .newsBox h3 {
	background: none;
	border-bottom: none;
	padding: 10px 0 20px;
	margin: 0;
}

#Main.newsList .newsBox h3:after {
	display: none;
}

#Main.newsList .newsBox .txt {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8;
}

#Main.newsList .newsBox .more {
	position: absolute;
	bottom: 30px;
	right: 0;
	background: url(../images/common/icon_arrow02.png) no-repeat right center;
	background-size: 18px 18px;
	padding-right: 22px;
}

#Main.newsList .pager {
	padding-bottom: 80px;
	text-align: center;
}

#Main.newsList .pager a,
#Main.newsList .pager span {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1;
	color: #333;
	vertical-align: middle;
	padding: 4px 6px;
}

#Main.newsList .pager a {
	border: 1px solid #333;
}

#Main.newsList .pager a:hover,
#Main.newsList .pager a:active {
	text-decoration: none;
	background: #eee;
}

#Main.newsList .pager .current {
	border: 1px solid #333;
	background: #333;
	color: #fff;
}



/* ------------------------------------------------------
	トピックス個別
------------------------------------------------------ */
#Main.newsSingle .newsBox {
	padding-bottom: 40px;
	margin-bottom: 40px;
	border-bottom:1px dotted #d1d1d1;
}

#Main.newsSingle .newsBox > h3 {
	margin-bottom: 10px;
}

#Main.newsSingle .newsBox .tagBox {
	text-align: right;
	margin-bottom: 40px;
}

#Main.newsSingle .newsBox .date {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	font-size: 14px;
	font-size: 1.4rem;
	color: #666;
	text-align: right;
}

#Main.newsSingle .newsBox .tag {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	font-size: 11px;
	font-size: 1.1rem;
	color: #fff;
	min-width: 90px;
	text-align: center;
	background: #e61414;
	margin-left: 20px;
}

#Main.newsSingle .newsBox .tag a {
	color: inherit;
	padding: 4px 0 3px;
	display: block;
}

#Main.newsSingle .newsBox .tag a:hover {
	opacity: 0.7;
}

#Main.newsSingle .newsBox .tag.info {
	background: #e61414;
}

#Main.newsSingle .newsBox .tag.philippine-info {
	background: #ffbc00;
}

#Main.newsSingle .newsBox .tag.canada-info {
	background: #005a94;
}

#Main.newsSingle .contentArea {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8;
	overflow: hidden;
}

#Main.newsSingle .contentArea img {
	max-width: 100%;
	height: auto;
}

/* -------- エディター部分 ---------- */
#Main.newsSingle .contentArea h6 {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.4;
	font-weight: bold;
	padding: 6px 0 20px 16px;
	margin: 0 0 10px 0;
	position: relative;
}
#Main.newsSingle .contentArea h6:after {
	position: absolute;
	content: '';
	top: 10px;
	left: 0;
	height: 0;
	width: 0;
	border: 6px solid transparent;
	border-left: 6px solid #e61414;
}

#Main.newsSingle .contentArea h3,
#Main.newsSingle .contentArea h4,
#Main.newsSingle .contentArea h5,
#Main.newsSingle .contentArea h6 {
	clear: both;
}

#Main.newsSingle .contentArea b,
#Main.newsSingle .contentArea strong {
	font-weight: 700;
}

#Main.newsSingle .contentArea dfn,
#Main.newsSingle .contentArea cite,
#Main.newsSingle .contentArea em,
i {
	font-style: italic;
}

#Main.newsSingle .contentArea blockquote {
	background: #f2f2f2;
	padding: 20px;
	margin: 0 0 1.5em 0;
	position: relative;
}

#Main.newsSingle .contentArea blockquote:before {
	content: "“";
	font-size: 60px;
	line-height: 0;
	color: #ddd;
	position: absolute;
	left: 6px;
	top: 30px;
	z-index: 1;
}

#Main.newsSingle .contentArea blockquote:after {
	content: "”";
	font-size: 60px;
	line-height: 0;
	color: #ddd;
	position: absolute;
	right: 6px;
	bottom: -4px;
	z-index: 1;
}

#Main.newsSingle .contentArea blockquote > p {
	margin: 0;
	position: relative;
	z-index: 2;
}

#Main.newsSingle .contentArea blockquote cite,
#Main.newsSingle .contentArea blockquote small {
	color: #1a1a1a;
	font-size: 13px;
	font-size: 1.3px;
	line-height: 1.6;
}

#Main.newsSingle .contentArea blockquote em,
#Main.newsSingle .contentArea blockquote i,
#Main.newsSingle .contentArea blockquote cite {
	font-style: normal;
}

#Main.newsSingle .contentArea blockquote strong,
#Main.newsSingle .contentArea blockquote b {
	font-weight: 400;
}

#Main.newsSingle .contentArea blockquote.alignleft,
#Main.newsSingle .contentArea blockquote.alignright {
	border: 0 solid #1a1a1a;
	border-top-width: 4px;
	padding: 18px 0 0;
	width: -webkit-calc(50% - 14px);
	width: calc(50% - 14px);
}

#Main.newsSingle .contentArea sup,
#Main.newsSingle .contentArea sub {
	font-size: 75%;
	height: 0;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

#Main.newsSingle .contentArea sub {
	top: -6px;
}

#Main.newsSingle .contentArea sup {
	bottom: -3px;
}

#Main.newsSingle .contentArea small {
	font-size: 80%;
}

#Main.newsSingle .contentArea big {
	font-size: 125%;
}

#Main.newsSingle .contentArea hr {
	background-color: #d1d1d1;
	border: 0;
	height: 1px;
	margin-bottom: 28px;
}

#Main.newsSingle .contentArea ul,
#Main.newsSingle .contentArea ol {
	margin: 0 0 1.5em 0;
	padding: 0 0 0 20px;
	color: #666;
}

#Main.newsSingle .contentArea ul {
	list-style: disc;
}

#Main.newsSingle .contentArea ol {
	list-style: decimal;
}

#Main.newsSingle .contentArea li > ul,
#Main.newsSingle .contentArea li > ol {
	margin-bottom: 0;
}

#Main.newsSingle .contentArea table {
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	margin-bottom: 1.5em;
}

#Main.newsSingle .contentArea th {
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	text-align: center;
	font-weight: bold;
	font-size: 14px;
	font-size: 1.4rem;
	padding: 4px 10px;
}

#Main.newsSingle .contentArea td {
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	text-align: center;
	font-size: 14px;
	font-size: 1.4rem;
	padding: 4px 10px;
}

#Main.newsSingle .contentArea a,
#Main.newsSingle .contentArea a:link,
#Main.newsSingle .contentArea a:visited {
	color: #F95158;
	text-decoration: underline;
}

#Main.newsSingle .contentArea a:hover,
#Main.newsSingle .contentArea a:active {
	color: #F95158;
	text-decoration: none;
}

#Main.newsSingle .contentArea .alignleft {
	float: left;
	margin: 0 15px 0.5em 0;
}

#Main.newsSingle .contentArea .alignright {
	float: right;
	margin: 0 0 0.5em 15px;
}

#Main.newsSingle .contentArea .aligncenter {
	clear: both;
	display: block;
	margin: 0 auto 0.5em;
}

#Main.newsSingle .contentArea .wp-caption {
	background: transparent;
	border: none;
	margin-bottom: 28px;
	max-width: 100%;
	padding: 0;
	text-align: inherit;
}

#Main.newsSingle .contentArea .wp-caption-text,
#Main.newsSingle .contentArea .wp-caption-dd {
	color: #686868;
	font-size: 13px;
	font-style: italic;
	line-height: 1.6153846154;
	padding-top: 7px;
}
 
 #Main.newsSingle .contentArea .gallery-item {
	margin-top: 0 !important;
	margin-bottom: 4%;
	padding-right: 2%;
	width: 32% !important;
}

#Main.newsSingle .contentArea .gallery-item:nth-of-type(3n) {
	padding-right: 0;
}

#Main.newsSingle .contentArea .gallery-item img {
	border: none !important;
}

#Main.newsSingle .contentArea .gallery-item .gallery-caption {
	text-align: left;
	display: none;
}
/* -------- エディター部分 / end ---------- */

#Main.newsSingle .linkBox {
	position: relative;
	width: 670px;
	height: 20px;
	padding-bottom: 60px;
}

#Main.newsSingle .linkBox .btnPrev {
	position: absolute;
	top: 0;
	left: 0;
	background: url(../images/common/icon_arrow05.png) no-repeat left center;
	background-size: 18px 18px;
	padding-left: 22px;
	font-size: 14px;
	font-size: 1.4rem;
}

#Main.newsSingle .linkBox .btnNext {
	position: absolute;
	top: 0;
	right: 0;
	background: url(../images/common/icon_arrow02.png) no-repeat right center;
	background-size: 18px 18px;
	padding-right: 22px;
	font-size: 14px;
	font-size: 1.4rem;
}



/*--------------------------------------------------------------------------
	企業情報トップ
---------------------------------------------------------------------------*/

#corporate .box {
	width: 290px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align: top;
	text-align: left;
	padding-left: 28px;
	padding-bottom: 40px;
}

#corporate .box:nth-child(3) {
	padding-left: 0;
}

#corporate .box_large {
	width: 450px;
	padding-left: 38px;
}

#corporate .box_large:first-child {
	padding-left: 0;
}

#corporate .box a {
	display: block;
}

#corporate .box h3 {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	border-bottom: 1px solid #c5c5c5;
	background: url(../images/common/icon_arrow02.png) no-repeat right center;
	background-size: 18px;
	position: relative;
	padding: 10px 0 4px 4px;
}

#corporate .box h3:after {
	position: absolute;
	bottom: -1px;
	left: 0;
	z-index: 2;
	content: '';
	width: 40px;
	height: 1px;
	background-color: #e61414;
}

#corporate .box .txt {
	margin-top: 10px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
	color: #333;
}



/*--------------------------------------------------------------------------
	代表挨拶
---------------------------------------------------------------------------*/

#greeting {
	padding-bottom: 40px;
}

#greeting .mainTxt {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8;
}

#greeting .mainTxt .imgCeo {
	float: left;
	width: 180px;
	height: 220px;
	padding: 10px 1em 0.5em 0;
}

#greeting .mainTxt .imgCeo img {
	-moz-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	-webkit-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
}

#greeting .mainTxt h5 {
	background: none;
}

#greeting .mainTxt .date {
	text-align: right;
	font-size: 13px;
	font-size: 1.3rem;
	padding: 30px 0 20px;
	margin-bottom: 0;
}

#greeting .detail {
	text-align: right;
	border-bottom: 1px dotted #ccc;
	padding: 0 0 20px;
}

#greeting .detail div {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	margin-left: 10px;
	font-size: 13px;
	font-size: 1.3rem;
	vertical-align: top;
}

#greeting .member {
	text-align: right;
	font-size: 13px;
	font-size: 1.3rem;
	margin-top: 20px;
}



/*--------------------------------------------------------------------------
	コンセプト
---------------------------------------------------------------------------*/

#concept {
	padding-bottom: 60px;
}

#concept h4 {
	background: #fff;
	border-top: none;
	padding: 0;
	margin: 0 0 30px;
}

#concept h4:after {
	display: none;
}

#concept .txt {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8;
	background: url(../images/corporate/concept/img01.jpg) no-repeat top right;
	min-height: 822px;
	margin-bottom: 60px;
}

#concept .aboutLogo .img {
	margin-bottom: 20px;
}

#concept .aboutLogo .mean {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8;
}



/*--------------------------------------------------------------------------
	会社概要
---------------------------------------------------------------------------*/

#company {
	padding-bottom: 60px;
}

#company table {
	width: 100%;
}

#company table tr {
	border-bottom: 1px dotted #ccc;
}

#company table th {
	text-align: center;
	padding: 10px;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: normal;
}

#company table td {
	padding: 10px;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: normal;
}

#company table td.imgOffice {
	width: 215px;
}

#access {
	padding-bottom: 60px;
}

#access .detail {
	padding: 20px 0;
}



/*--------------------------------------------------------------------------
	CSR活動
---------------------------------------------------------------------------*/

#csr #rakuten,
#csr .block {
	padding-bottom: 60px;
}

#csr .img {
	float: left;
}

#csr .img img {
	-moz-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	-webkit-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
}

#csr .boxR {
	padding-left: 170px;
}

#csr .boxR .txt {
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.8;
	margin-bottom: 10px;
}

#csr .boxR .photo {
	margin: 0;
}

#csr .summary {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8;
	padding-bottom: 30px;
}



/*--------------------------------------------------------------------------
	事業紹介トップ
---------------------------------------------------------------------------*/

#business {
	text-align: left;
}

#business .businessBox {
	width: 450px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align: top;
	text-align: left;
	padding-bottom: 40px;
}

#business .businessBox:nth-child(2n) {
	padding-left: 38px;
}

#business .businessBox a {
	display: block;
}

#business .businessBox h3 {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	border-bottom: 1px solid #c5c5c5;
	background: url(../images/common/icon_arrow02.png) no-repeat right center;
	background-size: 18px;
	position: relative;
	padding: 10px 0 4px 4px;
}

#business .businessBox h3:after {
	position: absolute;
	bottom: -1px;
	left: 0;
	z-index: 2;
	content: '';
	width: 40px;
	height: 1px;
	background-color: #e61414;
}

#business .businessBox .txt {
	margin-top: 10px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
	color: #333;
}



/*--------------------------------------------------------------------------
	事業紹介下層共通
---------------------------------------------------------------------------*/
.businessWrap img {
  max-width: 100%;
  height: auto;
}
.businessWrap .mainWrap .txt {
  font-size: 15px;
  font-size: 1.5rem;
  margin-top: 1em;
  margin-bottom: 40px;
}
.businessWrap > section {
  padding-top: 90px;
  margin-top: -90px;
  margin-bottom: 40px;
  font-size: 14px;
  font-size: 1.4rem;
  overflow: hidden;
}
#Main .businessWrap h5 {
  background: none;
  padding-left: 0;
}
.businessWrap h3#contact {
  width: 100%;
  box-sizing: border-box;
}
#Main .tel_contact h5,
#Main .mail_contact h5 {
  font-size: 20px;
  font-size: 2.0rem;  
}
.businessWrap .mail_contact dl dt {
	font-size: 14px;
	font-size: 1.4rem;
	color: #333;
	font-weight: bold;
	float: left;
	clear: left;
	padding: 20px 0;
	margin: 5px 0;
	text-align: left;
	width: 200px;
}
.businessWrap .mail_contact dl dt .must {
	font-size: 12px;
	font-size: 1.2rem;
	color: #d11d08;
	font-weight: normal;
}
.businessWrap .mail_contact dl dd {
	padding: 20px 0 20px 220px;
	font-size: 14px;
	font-size: 1.4rem;
	border-bottom: 1px dotted #d8d8d8;
}
.businessWrap .mail_contact dl dd.no-border {
	border-bottom: none;
	padding-bottom: 0;
}
.businessWrap .mail_contact dl dd input,
.businessWrap .mail_contact dl dd textarea {
	padding: 5px 10px;
	margin: 5px 0;
	font-size: 14px;
	font-size: 1.4rem;
}
.businessWrap .mail_contact dl dt .note {
	color: #999;
	font-weight: normal;
}
.businessWrap .mail_contact dl dd .note {
	color: #999;
}
.businessWrap .mail_contact dl dd .wid20 {
	width: 15%;
}
.businessWrap .mail_contact dl dd .wid50 {
	width: 50%;
}
.businessWrap .mail_contact dl dd .wid80 {
	width: 80%;
}
.businessWrap .mail_contact dl dd .wid100 {
	width: 100%;
}
.businessWrap .mail_contact dl dd select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	text-indent: .01px; /*Firefox用*/
  text-overflow: ""; /*Firefox用*/
	font-size: inherit;
	padding: 5px 10px;
	width: 40%;
	border: 1px solid #cccccc;
	border-radius: 4px;
	background: url(../images/contact/arrow.png) no-repeat right center #ffffff;
	cursor: pointer;
}
.businessWrap .mail_contact dl dd input[type="text"],
.businessWrap .mail_contact dl dd input[type="tel"],
.businessWrap .mail_contact dl dd input[type="email"],
.businessWrap .mail_contact dl dd textarea {
	border: 1px solid #cccccc;
	border-radius: 4px;
  box-sizing: border-box;
}
.businessWrap .mail_contact dl dd .wpcf7-list-item {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	margin-right: 1em;
	margin-left: 0.5em;
}
.businessWrap .mail_contact .privacyBox {
	padding: 30px 0 0;
	font-size: 14px;
	font-size: 1.4rem;
	width: 100%;
	margin: 0 auto;
}
#Main .businessWrap .mail_contact .privacyBox h4 {
	font-size: 14px;
	font-size: 1.4rem;
	padding: 0;
  margin-bottom: 1em;
  border: none;
  background: #ffffff;
}
#Main .businessWrap .mail_contact .privacyBox h4::after {
  display: none;
}
.businessWrap .mail_contact .privacyBox p {
	padding: 0 0 1.5em;
}
.businessWrap .mail_contact .privacyBox .wrap {
	border: 1px dotted #d8d8d8;
	padding: 20px;
	margin-bottom: 20px;
	width: auto;
	height: 300px;
	overflow-y: scroll;
}
.businessWrap .mail_contact .privacyBox h5 {
	color: #e61414;
	font-size: 15px;
	font-size: 1.5rem;
}
.businessWrap .mail_contact .privacyBox dt {
	float: none;
	width: 100%;
	padding: 20px 0 0;
	margin: 0;
	text-align: left;
}
.businessWrap .mail_contact .privacyBox dd {
	padding: 20px 0;
}
.businessWrap .mail_contact .privacyBox .sign {
	padding-top: 20px;
	text-align: right;
}
.businessWrap .mail_contact .privacyBox .window {
	background: #f1f1f1;
	padding: 30px;
}
.businessWrap .mail_contact .privacyBox .btn {
	text-align: center;
}
.businessWrap .mail_contact .btnBox {
	text-align: center;
	padding: 30px 0 0;
}
.businessWrap .mail_contact .btnBox input {
	border-radius: 4px;
	box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2);
	background: #fff;
	background: -moz-linear-gradient(top, #ffffff, #e1e1e1);
	background: -webkit-linear-gradient(top, #ffffff, #e1e1e1);
	background: linear-gradient(top, #ffffff, #e1e1e1);
	padding: 10px 0;
	margin: 0 10px;
	width: 200px;
	text-align: center;
	border: none;
	font-size: 16px;
	font-size: 1.6rem;
	color: #797979;
}
.businessWrap .mail_contact .btnBox input:hover {
	color: #333;
}
.businessWrap .mail_contact .submitMsg {
	text-align: center;
	padding: 30px 0 0;
}
.businessWrap .mail_contact .wpcf7c-conf {
	background: #f1f1f1 !important;
	border: none !important;
}



/*--------------------------------------------------------------------------
	海外留学事業
---------------------------------------------------------------------------*/
#abroad {
	padding-bottom: 40px;
}

#abroad .mapArea {
	padding-bottom: 20px;
}

#abroad .mapArea p {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
	margin-top: 15px;
}

#abroad .countryWrap {
	padding-bottom: 40px;
}

#abroad .countryWrap img.img_sp {
	display: none;
}

#abroad .management h3,
#abroad .mediation h3 {
	margin-bottom: 20px;
}

#abroad .countryWrap h4 {
	padding-left: 70px;
	margin-bottom: 30px;
}

#abroad .countryWrap h4 img {
	width: 84px;
	position: absolute;
	top: 50%;
	left: -10px;
	margin-top: -42px;
	z-index: 2;
}

#abroad .countryWrap .schoolBox {
	width: 630px;
	margin: 0 auto;
}

#abroad .countryWrap .schoolBox .img {
	display: table-cell;
	vertical-align: middle;
}

#abroad .countryWrap .schoolBox .img img {
	-moz-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	-webkit-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
}

#abroad .countryWrap .schoolBox .boxR {
	display: table-cell;
	vertical-align: middle;
	padding-left: 30px;
}

#abroad .countryWrap .schoolBox .boxR img {
	vertical-align: middle;
}

#abroad .countryWrap .schoolBox .boxR p {
	color: #e61414;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.4;
	margin-top: 10px;
}

#abroad .countryWrap .schoolBox .txt {
	padding: 20px 0;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
}

#abroad .countryWrap .schoolBox.ccel {
	padding-top: 30px;
	margin-top: 30px;
	border-top: 1px dotted #ccc;
}

#abroad .countryWrap .aboutCountry {
	width: 630px;
	margin: 0 auto;
}

#abroad .countryWrap .aboutCountry .img {
	float: left;
	width: 210px;
}

#abroad .countryWrap .aboutCountry .img img {
	-moz-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	-webkit-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
}

#abroad .countryWrap .aboutCountry .txt {
	float: right;
	width: 395px;
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.7;
}

#abroad .countryWrap .btn {
	width: 630px;
	margin: 0 auto;
	text-align: right;
}

#abroad .countryWrap .stepup01,
#abroad .countryWrap .stepup02,
#abroad .countryWrap .stepup03 {
	width: 630px;
	margin: 0 auto;
}

#abroad .countryWrap .stepup01,
#abroad .countryWrap .stepup02 {
	padding-bottom: 20px;
}

#abroad .countryWrap .stepup01 .img {
	float: left;
	width: 210px;
	margin: 0 10px 10px 0;
}

#abroad .countryWrap .stepup02 .img {
	float: right;
	width: 210px;
	margin: 0 0 10px 10px;
}

#abroad .countryWrap .stepup01 .img img,
#abroad .countryWrap .stepup02 .img img {
	-moz-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	-webkit-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
}

#abroad #stepup .txt {
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.7;
}

#abroad .countryWrap .stepup03 h5 {
	font-size: 16px;
	font-size: 1.6rem;
}

#abroad .countryWrap .stepup03 .txt {
	padding: 20px 0;
}



/*--------------------------------------------------------------------------
	講師派遣事業
---------------------------------------------------------------------------*/
#dispatch {
	padding-bottom: 40px;
}

#dispatch .mainWrap,
#dispatch .caseBox {
	padding-bottom: 60px;
}

#dispatch .mainWrap .txt {
	padding-top: 20px;
	font-size: 15px;
	font-size: 1.5rem;
}

#dispatch .pagenavi {
	padding-top: 20px;
	font-size: 0;
	text-align: center;
}

#dispatch .pagenaviSP {
	display: none;
}

#dispatch .pagenavi li {
	display: inline-block;
	width: 210px;
	margin: 0 5px;
}

#dispatch .caseBox {
	padding-top: 90px;
	margin-top: -90px;
}

#dispatch #aboutAlt .summary {
	padding-bottom: 30px;
	font-size: 15px;
	font-size: 1.5rem;
}

#dispatch #aboutAlt .point {
	padding-bottom: 40px;
	overflow: hidden;
}

#dispatch #aboutAlt .point h5 {
	background: none;
	display: table;
	width: 100%;
	padding-left: 0;
}

#dispatch #aboutAlt .point h5 .icon {
	display: table-cell;
	width: 100px;
	height: 44px;
	padding-right: 10px;
	vertical-align: middle;
}

#dispatch #aboutAlt .point h5 .ttl {
	display: table-cell;
	vertical-align: middle;
}

#dispatch #aboutAlt .point .img {
	width: 230px;
	float: left;
}

#dispatch #aboutAlt .point .txt {
	width: 420px;
	float: right;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.7;
}

#dispatch #aboutAlt h6 {
	border-bottom: 1px dotted #808080;
	padding: 0 0 8px;
	margin-bottom: 20px;
}

#dispatch #aboutAlt .feature {
	padding-bottom: 40px;
	font-size: 0;
}

#dispatch #aboutAlt .feature li {
	display: inline-block;
	vertical-align: top;
	width: 200px;
	margin-right: 20px;
}

#dispatch #aboutAlt .feature li:nth-child(2) {
	width: 240px;
}

#dispatch #aboutAlt .feature li:last-child {
	width: 180px;
	margin: 0;
}

#dispatch #aboutAlt .feature li .img {
	text-align: center;
	height: 110px;
	margin: 10px 0;
}

#dispatch #aboutAlt .feature li .txt,
#dispatch #aboutAlt .processTxt {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
}

#dispatch #aboutAlt .processTxt .red {
	color: #e61414;
	font-weight: bold;
}

#dispatch #aboutAlt .process {
	overflow: hidden;
	padding-bottom: 20px;
}

#dispatch #aboutAlt .process li {
	float: left;
	width: 200px;
	height: 200px;
	padding: 15px;
	margin-right: 15px;
	background: #fce7e7;
	border: 2px solid #e61414;
	box-sizing: border-box;
	border-radius: 5px;
	position: relative;
}

#dispatch #aboutAlt .process li.num01 {
	width: 240px;
}

#dispatch #aboutAlt .process li.num03 {
	margin-right: 0;
}

#dispatch #aboutAlt .process li.num01::after,
#dispatch #aboutAlt .process li.num02::after {
	content: "";
	width: 26px;
	height: 30px;
	border-top: 15px solid transparent;
	border-right: 13px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 13px solid #e61414;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -15px;
}

#dispatch #aboutAlt .process .ttl {
	color: #e61414;
	font-weight: bold;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.3;
	display: table;
	width: 100%;
}

#dispatch #aboutAlt .process .ttl img {
	vertical-align: middle;
	display: table-cell;
	width: 40px;
	height: 40px;
	padding-right: 5px;
}

#dispatch #aboutAlt .process .ttl span {
	vertical-align: middle;
	display: table-cell;
	width: 125px;
}

#dispatch #aboutAlt .process .num01 .ttl span {
	width: 165px;
}

#dispatch #aboutAlt .process .txt {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
	margin: 5px 0;
}

#dispatch #aboutAlt .process .tel {
	background: #e61414;
	width: 100%;
	text-align: center;
	color: #fff;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1;
	font-weight: bold;
	padding: 4px 0;
}

#dispatch #toyoCase .summary {
	padding-bottom: 20px;
}

#dispatch #toyoCase .ttl {
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	color: #e61414;
	padding-bottom: 10px;
}

#dispatch #toyoCase > .txt {
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.6;
}

#dispatch #toyoCase .program {
	padding: 30px 0 40px;
}

#dispatch #toyoCase .program h6 {
	padding-bottom: 15px;
}

#dispatch #toyoCase .program ul {
	font-size: 0;
}

#dispatch #toyoCase .program li {
	width: 210px;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	padding-right: 19px;
}

#dispatch #toyoCase .program .program03 {
	padding-right: 0;
}

#dispatch #toyoCase .program .ttl {
	padding-bottom: 8px;
}

#dispatch #toyoCase .program .txt {
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.4;
	height: 75px;
}

#dispatch #toyoCase .program04 {
	width: 430px;
	float: left;
}

#dispatch #toyoCase .program05 {
	width: 228px;
	float: right;
}

#dispatch #toyoCase .program04 h6,
#dispatch #toyoCase .program05 h6 {
	background: url(../images/common/main_h5_bk.gif) no-repeat 0 5px;
	font-size: 16px;
	font-size: 1.6rem;
	padding-left: 20px;
	margin: 0 0 6px;
}

#dispatch #toyoCase .program04 .txt,
#dispatch #toyoCase .program05 .txt {
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.4;
	padding-bottom: 10px;
}

#dispatch #toyoCase .program04 .txt {
	padding-right: 20px;
}

#dispatch .voiceBox h6 {
	border-bottom: 1px dotted #808080;
	position: relative;
	font-size: 18px;
	font-size: 1.8rem;
	padding: 14px 0 8px 50px;	
	margin-bottom: 14px;
}

#dispatch .voiceBox h6:after {
	position: absolute;
	display: block;
	width: 42px;
	height: 42px;
	content: "";
	top: 0;
	left: 0;
	background: url(../images/business/dispatch/icon_baloon.png) no-repeat 0 0;
	background-size: 42px 42px;
}

#dispatch .voiceBox .img {
	margin-bottom: 20px;
}

#dispatch .voiceBox .txt {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.7;
}

#dispatch .voiceBox .txt .strong {
	font-weight: bold;
}

#dispatch .voiceBox .txt .red {
	color: #e61414;
}

#dispatch #toyoCase .voice01 {
	clear: both;
	padding-top: 60px;
}

#dispatch #toyoCase .voice02 {
	margin-top: 40px;
	position: relative;
}

#dispatch #toyoCase .voice02 .course {
	position: absolute;
	top: 10px;
	right: 0;
	font-size: 12px;
	font-size: 1.2rem;
	color: #808080;
	line-height: 1.4;
}

#dispatch #toyoCase .voice02 .img {
	float: right;
	width: 166px;
	margin: 0 0 1em 1em;
}

#dispatch #caseFirm > dl {
	margin-bottom: 20px;
}

#dispatch #caseFirm > dl dt {
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	color: #e61414;
	padding: 20px 0 8px;
}

#dispatch #caseFirm > dl dd {
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.5;
}

#dispatch #caseFirm > dl dd .boxL {
	width: 518px;
	float: left;
}

#dispatch #caseFirm > dl dd .boxR {
	width: 132px;
	float: right;
}

#dispatch #caseFirm > dl dd .strong {
	font-weight: bold;
}

#dispatch #caseFirm .pointBox {
	background: #f1f1f1;
	border: 1px solid #b8b8b8;
	padding: 20px;
	margin-bottom: 40px;
}

#dispatch #caseFirm .pointBox .ttl {
	padding-bottom: 15px;
}

#dispatch #caseFirm .pointBox .ttl p {
	display: table-cell;
	vertical-align: middle;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.4;
	font-weight: bold;
}

#dispatch #caseFirm .pointBox .ttl p.icon {
	padding-right: 1em;
}

#dispatch #caseFirm .pointBox li {
	list-style: disc;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.46;
	margin: 0 0 10px 20px;
}

#dispatch #avexCase .aboutAvex {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: 700;
	color: #666;
	margin-bottom: 20px;
}

#dispatch #avexCase .voice03 dt {
	font-weight: bold;
	margin-bottom: 8px;
}

#dispatch #avexCase .voice03 dd {
	margin-bottom: 16px;
}

#dispatch #avexCase .otherCorp {
	background: #f1f1f1;
	border: 1px solid #b8b8b8;
	padding: 20px 0;
	margin-top: 40px;
}

#dispatch #avexCase .otherCorp .ttl {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	padding-left: 30px;
	margin-bottom: 5px;
	position: relative;
}

#dispatch #avexCase .otherCorp .ttl:after {
	position: absolute;
	content: "";
	top: 5px;
	left: 20px;
	width: 0;
	height: 0;
	border-top: 6px solid transparent;
	border-right: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 6px solid #e61414;
}

#dispatch #avexCase .otherCorp ul {
	font-size: 0;
	text-align: center;
}

#dispatch #avexCase .otherCorp li {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	padding: 0 3px;
}



/*--------------------------------------------------------------------------
	英語講師スポット派遣事業
---------------------------------------------------------------------------*/
#spot {
	padding-bottom: 40px;
}

#spot .mainWrap,
#spot .caseBox {
	padding-bottom: 60px;
}

#spot .mainWrap .txt {
	padding-top: 20px;
	font-size: 15px;
	font-size: 1.5rem;
}

#spot .caseBox {
	padding-top: 90px;
	margin-top: -90px;
}

#spot #serviceBox .case {
	width: 100%;
	overflow: hidden;
	padding-bottom: 30px;
}

#spot #serviceBox .case h5 {
	background: none;
	padding-left: 0;
	margin: 0 0 15px;
	font-size: 18px;
	font-size: 1.8rem;
	overflow: hidden;
}

#spot #serviceBox .case h5 .icon {
	float: left;
	display: block;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
}

#spot #serviceBox .case h5 .genre {
	margin-left: 66px;
	margin-top: 6px;
	display: block;
	width: 45px;
	text-align: center;
	background: #286619;
	color: #fff;
	font-size: 13px;
	font-size: 1.3rem;
}

#spot #serviceBox .case h5 .genre.corporation {
	background: #e61414;
}

#spot #serviceBox .case h5 .ttl {
	margin-left: 66px;
	display: block;
}

#spot #serviceBox .case .img {
	float: right;
	width: 250px;
	margin-left: 12px;
}

#spot #serviceBox .case.case02 .img {
	float: left;
	margin-left: 0;
	margin-right: 12px;
}

#spot #serviceBox .case .txt {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.7;
}

#spot #serviceBox .case.case03 {
	padding-bottom: 0;
}

#spot #contactBox h5 {
	border-bottom: 1px dotted #808080;
	background: none;
	padding: 0 0 8px;
	margin-bottom: 20px;
}

#spot #contactBox .process {
	overflow: hidden;
	padding-bottom: 30px;
}

#spot #contactBox .process li {
	float: left;
	width: 200px;
	height: 200px;
	padding: 15px;
	margin-right: 15px;
	background: #fce7e7;
	border: 2px solid #e61414;
	box-sizing: border-box;
	border-radius: 5px;
	position: relative;
}

#spot #contactBox .process li.num01 {
	width: 240px;
}

#spot #contactBox .process li.num02 {
	background: url(../images/business/spot/img_contact02.png) no-repeat 96% 96% #fce7e7;
	background-size: 100px 70px;
}

#spot #contactBox .process li.num03 {
	margin-right: 0;
	background: url(../images/business/spot/img_contact03.png) no-repeat 96% 96% #fce7e7;
	background-size: 100px 70px;
}

#spot #contactBox .process li.num01::after,
#spot #contactBox .process li.num02::after {
	content: "";
	width: 26px;
	height: 30px;
	border-top: 15px solid transparent;
	border-right: 13px solid transparent;
	border-bottom: 15px solid transparent;
	border-left: 13px solid #e61414;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -15px;
}

#spot #contactBox .process .ttl {
	color: #e61414;
	font-weight: bold;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.3;
	display: table;
	width: 100%;
}

#spot #contactBox .process .ttl img {
	vertical-align: middle;
	display: table-cell;
	width: 40px;
	height: 40px;
	padding-right: 5px;
}

#spot #contactBox .process .ttl span {
	vertical-align: middle;
	display: table-cell;
	width: 125px;
}

#spot #contactBox .process .num01 .ttl span {
	width: 165px;
}

#spot #contactBox .process .txt {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
	margin: 5px 0;
}

#spot #contactBox .process li.num03 .txt > br {
	display: none;
}

#spot #contactBox .process .tel {
	background: #e61414;
	width: 100%;
	text-align: center;
	color: #fff;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1;
	font-weight: bold;
	padding: 4px 0;
}

#spot #priceBox table {
	width: 100%;
	border-top: 1px solid #c8c8c8;
	border-left: 1px solid #c8c8c8;
	margin-bottom: 20px;
}

#spot #priceBox table th {
	background: #f1f1f1;
	border-right: 1px solid #c8c8c8;
	border-bottom: 1px solid #c8c8c8;
	text-align: center;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: normal;
	vertical-align: middle;
	padding: 8px 10px;
	width: 33%;
}

#spot #priceBox table th > br {
	display: none;
}

#spot #priceBox table td {
	border-right: 1px solid #c8c8c8;
	border-bottom: 1px solid #c8c8c8;
	text-align: center;
	font-size: 14px;
	font-size: 1.4rem;
	vertical-align: middle;
	padding: 8px 10px;
}

#spot #priceBox h5 {
	color: #e61414;
}

#spot #priceBox .attend {
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.6;
	margin-bottom: 30px;
}

#spot #priceBox .attend li {
	list-style: disc outside;
	margin-left: 1.2em;
	margin-bottom: 3px;
}



/*--------------------------------------------------------------------------
	オンライン英会話事業
---------------------------------------------------------------------------*/
#online {
	padding-bottom: 40px;
}

#online .mainWrap,
#online .caseBox {
	padding-bottom: 60px;
}

#online .mainWrap .txt {
	padding-top: 20px;
	font-size: 15px;
	font-size: 1.5rem;
}

#online #caseAeon .summary {
	padding-bottom: 20px;
}

#online #caseAeon .txt {
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.6;
}

#online #caseSmeag .caseImg {
	padding-bottom: 30px;
}

#online #caseSmeag h5 {
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.4;
	font-weight: bold;
	border-bottom: 1px solid #ddd;
	position: relative;
	padding: 0 0 10px;
	margin-bottom: 20px;
	background: none;
}

#online #caseSmeag h5:after {
	display: block;
	position: absolute;
	bottom: -1px;
	left: 0;
	z-index: 2;
	content: "";
	width: 40px;
	height: 1px;
	background: #e61414;
}

#online #caseSmeag .about {
	margin-bottom: 60px;
}

#online #caseSmeag .about ul {
	display: table;
}

#online #caseSmeag .about li {
	width: 220px;
	display: table-cell;
	border-right: 1px dotted #b8b8b8;
}

#online #caseSmeag .about li:last-child {
	border-right: 0;
}

#online #caseSmeag .about li .img {
	text-align: center;
}

#online #caseSmeag .about li .txt {
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.4;
	margin: 0;
	padding: 0 10px;
}

#online #caseSmeag #forFirm .img {
	margin-bottom: 10px;
}

#online #caseSmeag #forFirm .txt {
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.6;
	margin-bottom: 30px;
}

#online #caseSmeag #forFirm .patternWrap {
	border: 1px solid #b8b8b8;
	background: #f1f1f1;
	padding: 20px 20px 0;
	margin-bottom: 20px;
}

#online #caseSmeag #forFirm .patternWrap h6 {
	background: url(../images/common/main_h5_bk.gif) no-repeat 0 5px;
	font-size: 16px;
	font-size: 1.6rem;
	padding-left: 20px;
	margin: 0 0 10px 0;
}

#online #caseSmeag #forFirm .patternWrap dt {
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	color: #e61414;
	vertical-align: middle;
	margin-bottom: 10px;
}

#online #caseSmeag #forFirm .patternWrap dt img {
	margin-right: 5px;
	vertical-align: middle;
}

#online #caseSmeag #forFirm .patternWrap dd {
	position: relative;
	width: 100%;
}

#online #caseSmeag #forFirm .patternWrap dd .img {
	position: absolute;
	top: -43px;
	right: 0;
}

#online #caseSmeag #forFirm .patternWrap dd .txt {
	padding-right: 240px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.7;
	min-height: 107px;
	margin-bottom: 20px;
	color: #333;
}

#online #caseSmeag #forFirm .patternWrap dd .txt .ttl {
	font-weight: bold;
}



/*--------------------------------------------------------------------------
	ライザップイングリッシュ事業
---------------------------------------------------------------------------*/
#rizap {
	padding-bottom: 60px;
}

#rizap .mainWrap,
#rizap .caseBox {
	padding-bottom: 60px;
}

#rizap .mainWrap .txt {
	padding-top: 20px;
	font-size: 15px;
	font-size: 1.5rem;
}

#rizap .caseBox .imgRizap {
	padding: 30px 0;
}

#rizap .caseBox li {
	background: #000;
	width: 663px;
	height: 164px;
	padding: 8px 0 8px 8px;
	margin-bottom: 20px;
	color: #fff;
	position: relative;
}

#rizap .caseBox li:before,
#rizap .caseBox li:after {
	display: block;
	z-index: -1;
	position: absolute;
	content: "";
	bottom: 15px;
	left: 10px;
	width: 50%;
	top: 80%;
	max-width:300px;
	background: #777;
	-webkit-box-shadow: 0 15px 10px #777;
	-moz-box-shadow: 0 15px 10px #777;
	box-shadow: 0 15px 10px #777;
	-webkit-transform: rotate(-3deg);
	-moz-transform: rotate(-3deg);
	-o-transform: rotate(-3deg);
	-ms-transform: rotate(-3deg);
	transform: rotate(-3deg);
}

#rizap .caseBox li:after {
	-webkit-transform: rotate(3deg);
	-moz-transform: rotate(3deg);
	-o-transform: rotate(3deg);
	-ms-transform: rotate(3deg);
	transform: rotate(3deg);
	right: 10px;
	left: auto;
}

#rizap .caseBox li:last-child {
	margin-bottom: 0;
}

#rizap .caseBox li .img {
	float: left;
}

#rizap .caseBox li .boxR {
	float: right;
	width: 400px;
}

#rizap .caseBox li .boxR .txt {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.48;
	width: 368px;
	height: 124px;
	margin: 8px auto 0;
	vertical-align: middle;
}

#rizap .rizapBnr img {
	-moz-box-shadow: 0px 0px 6px 2px rgba(0,0,0,0.2);
	-webkit-box-shadow: 0px 0px 6px 2px rgba(0,0,0,0.2);
	box-shadow: 0px 0px 6px 2px rgba(0,0,0,0.2);
}



/*--------------------------------------------------------------------------
	国内留学事業
---------------------------------------------------------------------------*/
#camp {
	padding-bottom: 40px;
}

#camp .sp {
	display: none;
}

#camp .mainWrap {
	padding-bottom: 60px;
}

#camp .mainWrap .txt {
	padding-top: 20px;
	font-size: 15px;
	font-size: 1.5rem;
}

#camp .schoolWrap,
#camp .pointWrap,
#camp .courseWrap,
#camp .flow {
	padding-bottom: 40px;
}

#camp .schoolWrap h4 {
	padding-left: 70px;
	margin-bottom: 30px;
}

#camp .schoolWrap h4 img {
	width: 84px;
	position: absolute;
	top: 50%;
	left: -10px;
	margin-top: -42px;
	z-index: 2;
}

#camp .schoolWrap .schoolBox {
	width: 630px;
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
}

#camp .schoolWrap .schoolBox .img {
	width: 280px;
	margin-right: 30px;
}

#camp .schoolWrap .schoolBox .img img {
	-moz-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	-webkit-box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
	box-shadow:0px 0px 6px 2px rgba(0,0,0,0.2);
}

#camp .schoolWrap .schoolBox .boxR {
	width: 320px;
}

#camp .schoolWrap .schoolBox .boxR p {
	color: #e61414;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.4;
	margin: 10px 0 0;
}

#camp .schoolWrap .schoolBox .txt {
	padding: 20px 0;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
}

#camp .planWrap li {
	overflow: hidden;
	margin-bottom: 20px;
}

#camp .planWrap li figure {
	width: 300px;
	float: left;
}

#camp .planWrap li p {
	padding-left: 320px;
}

#camp .planWrap li .ttl {
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.3;
	color: #0a328c;
	margin: 20px 0 10px;
}

#camp .planWrap li .ttl img {
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}

#camp .planWrap li .ttl span {
	display: inline-block;
	vertical-align: middle;
}

#camp .pointWrap h4 {
	background: #ffffff;
	border: none;
	padding: 0;
}

#camp .pointWrap h4::after {
	display: none;
}

#camp .pointWrap li {
	overflow: hidden;
	margin-bottom: 20px;
}

#camp .pointWrap li figure {
	width: 180px;
	float: left;
}

#camp .pointWrap li p {
	padding-left: 200px;
}

#camp .pointWrap li .ttl {
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.3;
	color: #0a328c;
	margin: 20px 0 10px;
}

#camp .pointWrap li .ttl img {
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}

#camp .pointWrap li .ttl span {
	display: inline-block;
	vertical-align: middle;
}

#camp .courseWrap li {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin-bottom: 20px;
}

#camp .courseWrap li .ttl {
	width: 100%;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.3;
	margin: 0 0 10px;
}

#camp .courseWrap li .ttl img {
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}

#camp .courseWrap li .ttl span {
	display: inline-block;
	vertical-align: middle;
}

#camp .courseWrap li .txt {
	width: 350px;
}

#camp .courseWrap li figure {
	width: 300px;
}



/* ------------------------------------------------------
	留学フェア
------------------------------------------------------ */
#Main.fair {
	padding: 0 0 80px;
}

#Main.fair .mainWrap {
	padding-bottom: 40px;
}

#Main.fair .mainWrap .txt {
	margin: 20px 0 0;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.6;
}

#Main.fair .date {
	padding-bottom: 40px;
}

#Main.fair .date .note {
	color: #e61414;
	font-size: 14px;
	font-size: 1.4rem;
	background: none;
	padding-left: 10px;
	margin-bottom: 20px;
	font-weight: normal;
}

#Main.fair .formBtn {
	text-align: center;
	margin-top: 20px;
}

/* .c-cta-button の __icon は position:absolute で flex layout に参加しないため、
   ボタン自体に幅を持たせて justify-content: center でラベルを中央に逃がさないと
   アイコンとラベル文字が重なる（p-contact__cta と同じ対処）。 */
#Main.fair .formBtn .c-cta-button {
	width: 345px;
	justify-content: center;
}

#Main.fair .place .box {
	width: 77.125%; /* 617px / #Main(800px) */
	margin: 0 auto 40px;
	padding: 20px 55px;
	background: #f4f4f4;
	position: relative;
}

#Main.fair .place .box .name {
	text-align: center;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	padding-bottom: 16px;
}

#Main.fair .place .box .detail {
	padding-bottom: 20px;
}

#Main.fair .place .box .detail p {
	font-size: 15px;
	font-size: 1.5rem;
	padding: 0;
	margin: 0;
	line-height: 1.6;
}

#Main.fair .place .box .detail .ttl {
	font-weight: bold;
	color: #e61414;
}

#Main.fair .place .box .access {
	color: #666;
}

#Main.fair .place .box .btn {
	position: absolute;
	right: 20px;
	bottom: 20px;
}

#Main.fair .place .box .btn a {
	display: block;
	padding: 10px 30px;
	background: #333;
	font-size: 18px;
	font-size: 1.8rem;
	color: #fff;
}

#Main.fair .place .box .btn a:hover {
	background: #666;
}



/* ------------------------------------------------------
	お問い合わせ・フェア申し込み
------------------------------------------------------ */
#contact {
	width: 840px;
	margin: 0 auto;
	text-align: left;
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.6;
}

/* #contact h4 と同じ見た目に揃える（#Main.privacy h4 と同じパターン） */
#contact h3 {
	position: relative;
	margin: 0 0 40px;
	padding: 0 0 14px 25px;
	border: none;
	background: none;
	font-family: var(--font-base);
	font-size: 23px;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 0.06em;
	color: #282828;
	border-bottom: 1px solid #bfbfbf;
}

#contact h3::after {
	content: none;
}

#contact h3::before {
	content: '';
	position: absolute;
	top: 18px;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: var(--color-accent);
	transform: translateY(-50%);
}

#contact .tel {
	text-align: center;
	padding-bottom: 60px;
}

#contact .tel img {
	margin: 0 auto;
}

#contact .genre {
	width: 100%;
	overflow: hidden;
	margin-bottom: 20px;
}

#contact .genre li {
	width: 50%;
	float: left;
	font-size: 18px;
	font-size: 1.8rem;
	text-align: center;
}

#contact .genre li a,
#contact .genre li span {
	background: #fef3f3;
	color: #989898;
	padding: 14px 0;
	display: block;
}

#contact .genre li a:hover {
	background: #eb4343;
	color: #fff;
}

#contact .genre li.current span {
	background: #e61414;
	color: #fff;
}

#contact dl dt {
	font-size: 14px;
	font-size: 1.4rem;
	color: #333;
	font-weight: bold;
	float: left;
	clear: left;
	padding: 20px 0;
	margin: 5px 0;
	text-align: center;
	width: 200px;
}

#contact dl dt .must {
	font-size: 12px;
	font-size: 1.2rem;
	color: #d11d08;
	font-weight: normal;
}

#contact dl dd {
	padding: 20px 0 20px 220px;
	font-size: 14px;
	font-size: 1.4rem;
	border-bottom: 1px dotted #d8d8d8;
}

#contact dl dd.no-border {
	border-bottom: none;
	padding-bottom: 0;
}

#contact dl.fairSchedule {
	margin-bottom: 30px;
}

#contact dl.fairSchedule > dt {
	float: none;
	width: 100%;
	text-align: left;
	padding-bottom: 0;
}

#contact dl.fairSchedule dd {
	padding: 0 0 20px;
	border-bottom: none;
}

#contact dl.fairSchedule dd.sample {
	background: #f1f1f1;
	padding: 20px;
}

#contact dl.fairSchedule dd dl dt {
	float: left;
	clear: left;
	text-align: center;
	width: 140px;
}

#contact dl.fairSchedule dd dl dd {
	padding: 20px 0 20px 140px;
	border-bottom: 1px dotted #d8d8d8;
}

#contact dl.fairSchedule dd dl dd br {
	display: none;
}

#contact dl dd input,
#contact dl dd textarea {
	padding: 5px 10px;
	margin: 5px 0;
	font-size: 14px;
	font-size: 1.4rem;
}

#contact dl dt .note {
	color: #999;
	font-weight: normal;
}

#contact dl dd .note {
	color: #999;
}

#contact dl dd .wid20 {
	width: 15%;
}

#contact dl dd .wid30 {
	width: 30%;
}

#contact dl dd .wid50 {
	width: 50%;
}

#contact dl dd .wid80 {
	width: 80%;
}

#contact dl dd .wid100 {
	width: 100%;
}

#contact dl dd select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	text-indent: .01px; /*Firefox用*/
    text-overflow: ""; /*Firefox用*/
	font-size: inherit;
	padding: 5px 10px;
	width: 40%;
	border: 1px solid #cccccc;
	border-radius: 4px;
	background: url(../images/contact/arrow.png) no-repeat right center #ffffff;
	cursor: pointer;
}

#contact dl dd input[type="text"],
#contact dl dd input[type="tel"],
#contact dl dd input[type="email"],
#contact dl dd textarea {
	border: 1px solid #cccccc;
	border-radius: 4px;
}

#contact dl dd .wpcf7-list-item {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	margin-right: 1em;
	margin-left: 0.5em;
}

#contact .privacyBox {
	padding: 30px 0 0;
	font-size: 14px;
	font-size: 1.4rem;
	width: 90%;
	margin: 0 auto;
}

#contact .privacyBox p {
	padding: 0 0 1.5em;
}

#contact .privacyBox .wrap {
	border: 1px dotted #d8d8d8;
	padding: 20px;
	margin-bottom: 20px;
	width: auto;
	height: 300px;
	overflow-y: scroll;
}

#contact .privacyBox h5 {
	color: #e61414;
	font-size: 15px;
	font-size: 1.5rem;
}

#contact .privacyBox dt {
	float: none;
	width: 100%;
	padding: 20px 0 0;
	margin: 0;
	text-align: left;
}

#contact .privacyBox dd {
	padding: 20px 0;
}

#contact .privacyBox .sign {
	padding-top: 20px;
	text-align: right;
}

#contact .privacyBox .window {
	background: #f1f1f1;
	padding: 30px;
}

#contact .privacyBox .btn {
	text-align: center;
}

#contact .btnBox {
	text-align: center;
	padding: 30px 0 0;
}

#contact .btnBox input {
	display: block;
	border-radius: 4px;
	box-shadow: 0px 0px 4px 2px rgba(0,0,0,0.2);
	background: #fff;
	background: -moz-linear-gradient(top, #ffffff, #e1e1e1);
	background: -webkit-linear-gradient(top, #ffffff, #e1e1e1);
	background: linear-gradient(top, #ffffff, #e1e1e1);
	padding: 10px 0;
	margin: 0 auto;
	width: 200px;
	text-align: center;
	border: none;
	font-size: 16px;
	font-size: 1.6rem;
	color: #797979;
}

#contact .btnBox input:hover {
	color: #333;
}

#contact .submitMsg {
	text-align: center;
	padding: 30px 0 0;
}

#contact .wpcf7c-conf {
	background: #f1f1f1 !important;
	border: none !important;
}



/* ------------------------------------------------------
	サンクスページ
------------------------------------------------------ */
#Main.thanks {
	padding: 60px 0;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 2.0;
}



/* ------------------------------------------------------
	パンくず（旧デザインページ共通）
	LocalHeader（旧タイトルバー）は撤去したので、#bread だけが残る。
	中身は yoast_breadcrumb() ではなく ag_render_breadcrumb()（functions.php）が出力する
	c-breadcrumb（component/_breadcrumb.scss、newsite/main.css に既に読み込み済み）そのものなので、
	見た目のルールはここには不要。#bread 自身の古い width/margin（common.css）だけ、
	c-breadcrumb 自体が持つ padding と二重に効いて余白が過剰にならないよう軽くリセットする。
------------------------------------------------------ */
#bread {
	width: 1072px !important;
	margin: 0 auto !important;
}

/* ------------------------------------------------------
	個人情報保護方針
------------------------------------------------------ */
#Main.privacy {
	padding-bottom: 80px;
}

#Main.privacy .summary {
	padding-bottom: 40px;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.8;
}

/* common.css の #Main h3（背景アイコン画像・border-bottom・::after の下線）が素通りしないよう、
   #Main h4 と同様に使わないプロパティも全て 0/none で明示的に潰す。 */
#Main.privacy h3 {
	position: relative;
	margin: 0 0 40px;
	padding: 0;
	border: none;
	background: none;
	font-family: var(--font-base);
	font-size: 32px;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 0.06em;
	color: #282828;
}

#Main.privacy h3::after {
	content: none;
}

/* 新デザイン側の c-section-title（component/_section-title.scss）と同じ見た目にする。
   --color-accent / --font-base は newsite/main.css の :root で定義済み（全ページ読み込み済み）のものを使う。
   common.css の #Main h4（グラデ背景・赤いborder-top・padding 10px 0 10px 10px・margin 0 0 20px）と
   #Main h4::after（下線の疑似要素）はここで明示的に打ち消していないと、指定していないプロパティだけ
   古いルールが素通りしてしまう（実際に発生していた）ため、使わないプロパティも全て 0/none で潰す。 */
#Main.privacy h4 {
	position: relative;
	margin: 0 0 40px;
	padding: 0 0 14px 25px;
	border: none;
	background: none;
	font-family: var(--font-base);
	font-size: 23px;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 0.06em;
	color: #282828;
	border-bottom: 1px solid #bfbfbf;
}

#Main.privacy h4::after {
	content: none;
}

#Main.privacy h4::before {
	content: '';
	position: absolute;
	top: 18px;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: var(--color-accent);
	transform: translateY(-50%);
}

#Main.privacy .wp-block-gallery-1 {
	width: 58.8%;
	margin: 90px auto 0;
}

#Main.privacy ol {
	border-top: 1px dotted #d8d8d8;
}

#Main.privacy ol li {
	border-bottom: 1px dotted #d8d8d8;
	padding: 20px 0;
}

#Main.privacy ol li .num,
#Main.privacy ol li .txt {
	display: table-cell;
	vertical-align: middle;
	/* newsite側main.cssの *{box-sizing:border-box} が効いてしまうと、
	   table-cellの幅計算にpaddingが食い込み、.num内の画像が潰れるため復旧する */
	box-sizing: content-box !important;
}

#Main.privacy ol li .num img {
	vertical-align: middle;
	box-sizing: content-box !important;
	/* newsite側main.cssの img{max-width:100%} が効くと、画像が「伸縮可能」とみなされ
	   table-cellの列幅の取り合いで.txt側にほぼ全幅を持っていかれてしまうため、
	   幅を固定値に戻して.num列の幅を確保する */
	width: 40px !important;
	max-width: none !important;
}

#Main.privacy ol li .num {
	padding: 0 20px;
}

#Main.privacy .date {
	padding: 20px 0;
	text-align: right;
}

#Main.privacy .mark {
	text-align: center;
}

#Main.privacy .about,
#Main.privacy .window {
	padding: 40px 0 0;
}

#Main.privacy .about dt {
	 font-size: 14px;
	 font-size: 1.4rem;
	 font-weight: bold;
	 padding: 20px 0 0.5em;
}

#Main.privacy .about dd {
	 border-bottom: 1px dotted #d8d8d8; 
	 padding: 0 0 20px;
	 font-size: 13px;
	 font-size: 1.3rem;
	 line-height: 1.8;
}

#Main.privacy .about .sign {
	padding: 20px 0 0;
	text-align: right;
}

#Main.privacy .window .box {
	background: #f1f1f1;
	padding: 30px;
	font-size: 14px;
	font-size: 1.4rem;
}

#Main.privacy .window .box hr {
	padding-bottom: 20px;
	margin-top: 20px;
	border-top: 1px dotted #ccc;
}

#Main.privacy .window .box a:link,
#Main.privacy .window .box a:visited {
	color: #F95158;
	text-decoration: none;
}

#Main.privacy .window .box a:hover,
#Main.privacy .window .box a:active {
	color: #F95158;
	text-decoration: underline;
}



/* ------------------------------------------------------
	404
------------------------------------------------------ */
#Main.notFound {
	padding: 60px 0;
	text-align: center;
}

#Main.notFound .txt {
	font-weight: bold;
	font-size: 14px;
	font-size: 1.4rem;
	padding-bottom: 40px;
}

#Main.notFound .btn {
	background: url(../images/common/icon_arrow02.png) no-repeat left center;
	background-size: 18px 18px;
	padding-left: 22px;
	width: 120px;
	margin: 0 auto;
}



/*--------------------------------------------------------------------------
	アンカーリンクの位置調整
---------------------------------------------------------------------------*/
#cebu,
#canada,
#australia,
#nz, #aus,
#stepup,
#access {
	padding-top: 90px;
	margin-top: -90px;
	display: block;
}



/* ------------------------------------------------------
	留学フェア
------------------------------------------------------ */
#Main.fair .mainImg {
	width: 100%;
}

#Main.fair .mainImg img {
	width: 100%;
}

#Main.fair .mainWrap {
	padding-bottom: 90px;
}

#Main.fair .mainWrap .txt {
	font-family: var(--font-base);
	font-size: 16px;
	font-weight: 400;
	line-height: 2.06;
	margin-top: 50px;
}

/* common.css の #Main h4（グラデ背景・赤いborder-top・padding・margin）と
   #Main h4::after（下線の疑似要素）が素通りしないよう、#Main.privacy h4 と同様に潰す。 */
#Main.fair h4 {
	position: relative;
	margin: 0 0 40px;
	padding: 0 0 14px 25px;
	border: none;
	background: none;
	font-family: var(--font-base);
	font-size: 23px;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 0.06em;
	color: #282828;
	border-bottom: 1px solid #bfbfbf;
}

#Main.fair h4::after {
	content: none;
}

#Main.fair h4::before {
	content: '';
	position: absolute;
	top: 18px;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: var(--color-accent);
	transform: translateY(-50%);
}

#Main.fair .date p.txt {
	font-family: var(--font-base);
	font-size: 16px;
	line-height: 2.06;
	font-weight: 400;
}

#Main.fair .date p.txt .bold_txt {
	font-size: 20px;
	line-height: 2;
	font-weight: 700;
}



/* ------------------------------------------------------
	お問い合わせ・お問い合わせ完了ページ
	common.css の #Main h4（グラデ背景・赤いborder-top・padding・margin）と
	#Main h4::after（下線の疑似要素）が素通りしないよう、#Main.privacy h4 と同様に潰す。
	（お問い合わせページは #Main ではなく #contact 配下なので h4 も #contact で拾う）
------------------------------------------------------ */
#contact h4,
#Main.thanks h4 {
	position: relative;
	margin: 0 0 40px;
	padding: 0 0 14px 25px;
	border: none;
	background: none;
	font-family: var(--font-base);
	font-size: 23px;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 0.06em;
	color: #282828;
	border-bottom: 1px solid #bfbfbf;
}

#contact h4::after,
#Main.thanks h4::after {
	content: none;
}

#contact h4::before,
#Main.thanks h4::before {
	content: '';
	position: absolute;
	top: 18px;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: var(--color-accent);
	transform: translateY(-50%);
}


/* Localized */
