/*---------------------------------------------------

	VARIABLES

---------------------------------------------------*/

/*---------------------------------------------------

	MIXIN

---------------------------------------------------*/

/* レスポンシブ
______________________________________________*/

/* レイアウト関連
______________________________________________*/

/* hoverアニメーション
______________________________________________*/

/* arrow
______________________________________________*/

/* font
______________________________________________*/

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.svg-defs {
	display: none;
}

a.button-yellow-arrow,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow,
a.button-orange-arrow,
a.button-yellow-arrow-back,
a.button-orange-arrow-back,
a.button-green-arrow,
a.button-gray-arrow,
a.button-red-pdf {
	font-size: 14px;
	font-weight: bold;
	line-height: 40px;
	position: relative;
	display: inline-block;
	width: 300px;
	height: 40px;
	text-align: center;
	border-radius: 20px;
}

a.button-yellow-arrow:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow:after,
a.button-orange-arrow:after,
a.button-yellow-arrow-back:after,
a.button-orange-arrow-back:after,
a.button-green-arrow:after,
a.button-gray-arrow:after,
a.button-red-pdf:after {
	position: absolute;
	top: 0;
	bottom: 0;
	display: block;
	margin: auto;
	content: '';
}

a.button-yellow-arrow,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow,
a.button-orange-arrow {
	color: #fff;
	background: #f7b844;
}

a.button-yellow-arrow:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow:after,
a.button-orange-arrow:after {
	right: 10px;
	width: 0;
	height: 0;
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #fff;
}

a.button-yellow-arrow:hover,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow:hover,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow:hover,
a.button-orange-arrow:hover {
	line-height: 36px;
	color: #f7b844;
	border: solid 2px #f7b844;
	background: #fff;
}

a.button-yellow-arrow:hover:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow:hover:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow:hover:after,
a.button-orange-arrow:hover:after {
	right: 8px;
	width: 0;
	height: 0;
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #f7b844;
}

a.button-yellow-arrow-back,
a.button-orange-arrow-back {
	color: #fff;
	background: #f7b844;
}

a.button-yellow-arrow-back:after,
a.button-orange-arrow-back:after {
	left: 10px;
	width: 0;
	height: 0;
	border-width: 5.5px 6px 5.5px 0;
	border-style: solid;
	border-color: transparent #fff transparent transparent;
}

a.button-yellow-arrow-back:hover,
a.button-orange-arrow-back:hover {
	line-height: 36px;
	color: #f7b844;
	border: solid 2px #f7b844;
	background: #fff;
}

a.button-yellow-arrow-back:hover:after,
a.button-orange-arrow-back:hover:after {
	left: 8px;
	width: 0;
	height: 0;
	border-width: 5.5px 6px 5.5px 0;
	border-style: solid;
	border-color: transparent #f7b844 transparent transparent;
}

a.button-green-arrow {
	color: #fff;
	background: #009794;
}

a.button-green-arrow:after {
	right: 10px;
	width: 0;
	height: 0;
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #fff;
}

a.button-green-arrow:hover {
	line-height: 36px;
	color: #009794;
	border: solid 2px #009794;
	background: #fff;
}

a.button-green-arrow:hover:after {
	right: 8px;
	width: 0;
	height: 0;
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #009794;
}

a.button-gray-arrow {
	background: #ddd;
}

a.button-gray-arrow:after {
	right: 10px;
	width: 0;
	height: 0;
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #fff;
}

a.button-red-pdf {
	color: #fff;
	background: #cd1e1e;
}

a.button-red-pdf:after {
	right: 7px;
	width: 24px;
	height: 24px;
	background-image: url('../images/service-pl-sugaku/sprite-s72fc218870.png');
	background-repeat: no-repeat;
	background-position: 0 -129px;
	-webkit-background-size: 24px auto;
	background-size: 24px auto;
}

a.button-red-pdf:hover {
	line-height: 36px;
	color: #cd1e1e;
	border: solid 2px #cd1e1e;
	background: #fff;
}

a.button-red-pdf:hover:after {
	right: 5px;
	width: 24px;
	height: 24px;
	background-image: url('../images/service-pl-sugaku/sprite-s72fc218870.png');
	background-repeat: no-repeat;
	background-position: 0 -105px;
	-webkit-background-size: 24px auto;
	background-size: 24px auto;
}

a.arrow-triangle-after {
	position: relative;
	display: inline-block;
	padding-right: 14px;
	vertical-align: bottom;
	color: #009794;
}

a.arrow-triangle-after:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	display: inline-block;
	width: 0;
	height: 0;
	margin: auto;
	content: '';
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #009794;
}

a.arrow-text-before {
	position: relative;
	display: inline-block;
	vertical-align: bottom;
	color: #009794;
}

a.arrow-text-before:before {
	display: inline-block;
	width: 0;
	height: 0;
	margin-right: 8px;
	content: '';
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #009794;
}

a.arrow-triangle-corporate {
	position: relative;
	display: inline-block;
	padding-right: 14px;
	vertical-align: bottom;
	color: #009794;
}

a.arrow-triangle-corporate:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	display: inline-block;
	width: 0;
	height: 0;
	margin: auto;
	content: '';
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #009794;
}

a.blank-white-after {
	position: relative;
	display: inline-block;
	padding-right: 26px;
	color: #fff;
}

a.blank-white-after:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	display: inline-block;
	width: 16px;
	height: 14px;
	margin: auto;
	content: '';
	background-image: url('../images/service-pl-sugaku/sprite-s72fc218870.png');
	background-repeat: no-repeat;
	background-position: 0 -37px;
	-webkit-background-size: 24px auto;
	background-size: 24px auto;
}

a.blank-green-after {
	position: relative;
	display: inline-block;
	padding-right: 26px;
	color: #009794;
}

a.blank-green-after:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	display: inline-block;
	width: 16px;
	height: 14px;
	margin: auto;
	content: '';
	background-image: url('../images/service-pl-sugaku/sprite-s72fc218870.png');
	background-repeat: no-repeat;
	background-position: 0 -51px;
	-webkit-background-size: 24px auto;
	background-size: 24px auto;
}

.title-symbol {
	font-size: 22px;
	font-weight: bold;
	position: relative;
	margin-bottom: 30px;
	padding-bottom: 43px;
	text-align: center;
	color: #009794;
}

.title-symbol:after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 14px;
	margin: auto;
	content: '';
	background: url(../images/service-pl-sugaku/icons/title-symbol.png) center bottom no-repeat;
	-webkit-background-size: auto 14px;
	background-size: auto 14px;
}

.title-symbol .title-en,
.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer .name-en {
	font-family: 'Kreon', serif;
	font-size: 18px;
	font-weight: 300;
	display: block;
	margin-bottom: 20px;
	color: #009794;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.title-symbol .title-en:before,
.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer .name-en:before,
.title-symbol .title-en:after,
.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer .name-en:after {
	font-family: '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 12px;
	content: '〜';
	vertical-align: 1px;
}

.title-symbol .title-jp {
	line-height: 30px;
	display: block;
}

.title-green-bold {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 30px;
	text-align: center;
	color: #009794;
}

.title-horizon-line {
	font-size: 16px;
	font-weight: bold;
	display: table;
	margin-bottom: 30px;
	text-align: center;
	white-space: nowrap;
}

.title-horizon-line:after,
.title-horizon-line:before {
	display: table-cell;
	width: 50%;
	content: '';
	background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 50%, #ddd 50%, #ddd -webkit-calc(50% + 1px), rgba(0, 0, 0, 0) -webkit-calc(50% + 1px));
	background: linear-gradient(rgba(0, 0, 0, 0) 50%, #ddd 50%, #ddd calc(50% + 1px), rgba(0, 0, 0, 0) calc(50% + 1px));
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	-webkit-background-size: 100% -webkit-calc(100%);
	background-size: 100% calc(100%);
}

.title-horizon-line:before {
	border-right: 1.5em solid transparent;
}

.title-horizon-line:after {
	border-left: 1.5em solid transparent;
}

p.text-center {
	margin-bottom: 30px;
	text-align: center;
}

p.text-small-gray {
	font-size: 13px;
	line-height: 20px;
	color: #666;
}

.box-gray {
	padding: 40px;
	background: #f9f9f9;
}

.column-2 {
	display: table;
	width: 100%;
}

.column-2 .box-column {
	display: table-cell;
	width: 50%;
}

.column-2-separate {
	display: table;
	width: 100%;
}

.column-2-separate .box-column {
	display: table-cell;
	width: 50%;
	padding: 0 40px;
	border-left: solid 1px #ddd;
}

.column-2-separate .box-column:first-child {
	border-left: none;
}

.column-2-frame {
	display: table;
	width: 100%;
	border: solid 1px #ddd;
}

.column-2-frame .box-column {
	display: table-cell;
	width: 50%;
	padding: 40px;
	border-left: solid 1px #ddd;
}

.column-2-frame .box-column:first-child {
	border-left: none;
}

.column-3 {
	display: table;
	width: 100%;
}

.column-3 .box-column {
	display: table-cell;
	width: 33.333333%;
}

.column-3-separate {
	display: table;
	width: 100%;
}

.column-3-separate .box-column {
	display: table-cell;
	width: 33.333333%;
	padding: 0 40px;
	border-left: solid 1px #ddd;
}

.column-3-separate .box-column:first-child {
	border-left: none;
}

.image-left .box-image {
	float: left;
	margin-right: 40px;
}

.image-left .box-text {
	padding-top: 40px;
}

.table-layout {
	line-height: 28px;
	display: table;
	width: 100%;
	border-bottom: solid 1px #ddd;
}

.table-layout .tr {
	display: table-row;
}

.table-layout .tr .th {
	display: table-cell;
	width: 24%;
	padding: 25px;
	text-align: center;
	vertical-align: middle;
	border-top: solid 1px #ddd;
	background: #f9f9f9;
}

.table-layout .tr .td {
	display: table-cell;
	padding: 25px 20px;
	vertical-align: middle;
	border-top: solid 1px #ddd;
}

.table-layout.is-thead .tr {
	display: table-row;
}

.table-layout.is-thead .tr .td {
	border-left: solid 1px #ddd;
}

.table-layout.is-thead .tr:first-child {
	display: table-header-group;
}

.table-layout.is-thead .tr:first-child .th {
	display: table-cell;
	width: auto;
	padding: 10px 25px;
	text-align: center;
	color: #fff;
	border-top: solid 1px #ddd;
	border-left: solid 1px #ddd;
	background: #6d6d6d;
}

.table-layout.is-thead .tr:first-child .th:first-child {
	border-left: none;
}

.table-layout.is-plain {
	border-bottom: none;
}

.table-layout.is-plain .tr .th {
	width: auto;
	padding: 0;
	text-align: left;
	vertical-align: top;
	border-top: none;
	background: none;
}

.table-layout.is-plain .tr .td {
	padding: 0;
	vertical-align: top;
	border-top: none;
}

.list-point-green li {
	margin-bottom: 8px;
}

.list-point-green li:before {
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-right: 8px;
	content: '';
	border-radius: 50%;
	background: #009794;
}

.list-underline li {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: solid 1px #ddd;
}

.list-hanging li {
	padding-left: 1em;
	text-indent: -1em;
}

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

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

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

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

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

.margin-bottom-60 {
	margin-bottom: 60px !important;
}

.margin-bottom-80 {
	margin-bottom: 80px !important;
}

.float-right {
	float: right;
}

.float-left {
	float: left;
}

.float-right-pc {
	float: right;
}

.float-left-pc {
	float: left;
}

.return-pc:after {
	display: block;
	content: '';
}

.clearfix {
	*zoom: 1;
}

.clearfix:after {
	display: table;
	clear: both;
	content: '';
}

.header {
	width: 100%;
}

.header .header-top {
	overflow: hidden;
	height: 80px;
	border-top: solid 5px #009794;
	border-bottom: solid 1px #ddd;
	*zoom: 1;
}

.header .header-top:after {
	display: table;
	clear: both;
	content: '';
}

.header .header-left .logo {
	position: relative;
	top: -5px;
	float: left;
	overflow: hidden;
	width: 80px;
	height: 80px;
	background: #009794;
}

.header .header-left .logo a {
	position: relative;
	display: block;
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.header .header-left .logo a:before {
	position: absolute;
	z-index: 1;
	right: 0;
	bottom: 0;
	display: block;
	width: 0;
	height: 0;
	content: '';
	border-width: 0 0 28px 28px;
	border-style: solid;
	border-color: transparent transparent #fff transparent;
}

.header .header-left .logo a:after {
	position: absolute;
	z-index: 2;
	right: 0;
	bottom: 0;
	display: block;
	width: 0;
	height: 0;
	content: '';
	border-width: 0 0 23.5px 23.5px;
	border-style: solid;
	border-color: transparent transparent #f7b844 transparent;
}

.header .header-left .logo .logo-symbol {
	position: absolute;
	z-index: 3;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	width: 51px;
	height: 44px;
	margin: auto;
	fill: #fff;
}

.header .header-left .title-lecture {
	float: left;
	width: 305px;
	margin: 25px 0 0 20px;
}

.header .header-left .title-lecture img {
	display: block;
	width: 100%;
	height: auto;
}

.header .header-left .link-for-personal {
	float: left;
	width: 175px;
	height: 25px;
	margin: 25px 0 0 20px;
}

.header .header-left .link-for-personal a {
	font-size: 12px;
	font-weight: bold;
	line-height: 25px;
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	-webkit-transition: opacity .1s linear;
	transition: opacity .1s linear;
	text-align: center;
	text-indent: -5px;
	color: #009794;
	border: solid 1px #ddd;
	border-radius: 22.5px;
}

.header .header-left .link-for-personal a:after {
	position: absolute;
	top: 7px;
	right: 8px;
	width: 0;
	height: 0;
	content: '';
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #009794;
}

.header .header-left .link-for-personal a:hover {
	opacity: .6;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
}

.header .header-right {
	float: right;
	padding: 19px 16px 0 0;
}

.header .header-right .extra-menu {
	float: right;
	width: 340px;
	height: 35px;
}

.header .header-right .extra-menu a {
	font-size: 13px;
	line-height: 35px;
	display: block;
	float: left;
	width: 50%;
	-webkit-transition: opacity .1s linear;
	transition: opacity .1s linear;
	text-align: center;
	color: #fff;
}

.header .header-right .extra-menu a:hover {
	opacity: .6;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
}

.header .header-right .extra-menu .link-contact {
	background: #009794;
}

.header .header-right .extra-menu .link-application {
	background: #f7b844;
}

.header .header-right .link-faq {
	float: right;
	margin-right: 25px;
}

.header .header-right .link-faq a {
	font-size: 14px;
	line-height: 36px;
	color: #009794;
}

.header .header-navi {
	width: 100%;
	height: 61px;
	background: #fff;
}

.header-navi ul {
	height: 100%;
	*zoom: 1;
}

.header-navi ul:after {
	display: table;
	clear: both;
	content: '';
}

.header-navi ul li {
	float: left;
	width: 25%;
	height: 100%;
	border-left: solid 1px #ddd;
}

.header-navi ul li:first-child {
	border-left: none;
}

.header-navi ul li a {
	font-size: 14px;
	font-weight: bold;
	line-height: 60px;
	display: block;
	width: 100%;
	height: 100%;
	-webkit-transition: opacity .1s linear;
	transition: opacity .1s linear;
	text-align: center;
	text-indent: .05em;
	letter-spacing: .05em;
	color: #000;
	border-bottom: solid 1px #ddd;
}

.header-navi ul li a:hover {
	opacity: .5;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
}

.header-navi ul li a.is-current {
	position: relative;
	color: #009794;
	border-bottom: solid 1px #009794;
}

.header-navi ul li a.is-current:after {
	position: absolute;
	bottom: 0;
	display: block;
	width: 100%;
	height: 3px;
	content: '';
	background: #009794;
}

.header-fixed {
	position: fixed;
	z-index: 1000;
	top: -61px;
	display: table;
	width: 100%;
	min-width: 1080px;
	height: 61px;
	-webkit-transition: top .2s ease;
	transition: top .2s ease;
	background: #fff;
}

.header-fixed.is-fixed {
	top: 0;
}

.header-fixed .header-navi {
	display: table-cell;
	border-right: solid 1px #ddd;
}

.header-fixed .header-right {
	display: table-cell;
	width: 310px;
	vertical-align: middle;
	border-bottom: solid 1px #ddd;
}

.header-fixed .header-right .extra-menu {
	width: 270px;
	height: 35px;
	margin: 0 auto;
}

.header-fixed .header-right .extra-menu a {
	font-size: 13px;
	line-height: 35px;
	display: block;
	float: left;
	width: 50%;
	-webkit-transition: opacity .1s linear;
	transition: opacity .1s linear;
	text-align: center;
	color: #fff;
}

.header-fixed .header-right .extra-menu a:hover {
	opacity: .6;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
}

.header-fixed .header-right .extra-menu a.link-contact {
	background: #009794;
}

.header-fixed .header-right .extra-menu a.link-application {
	background: #f7b844;
}

.navi-header-sp {
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	width: 100%;
	height: 0;
	-webkit-transition: opacity .2s ease;
	transition: opacity .2s ease;
	opacity: 0;
	background: rgba(247, 173, 68, .98);
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
}

.navi-header-sp .navi-header-inner-sp {
	overflow: scroll;
	height: 100%;
	-webkit-overflow-scrolling: touch;
}

.navi-header-sp .header-sp {
	background: none;
}

.navi-header-sp .header-sp:after {
	content: none;
}

.navi-header-sp.is-open .button-navi-sp i.button-pict {
	width: 13.5px;
	height: 13.5px;
	background-image: url('../images/service-pl-sugaku/sprite-s72fc218870.png');
	background-repeat: no-repeat;
	background-position: 0 -23px;
	-webkit-background-size: 24px auto;
	background-size: 24px auto;
}

.navi-header-sp .wrapper-menu {
	padding: 10px 15px 0;
}

.navi-header-sp .wrapper-menu a {
	color: #fff;
}

.navi-header-sp .extra-menu {
	width: 100%;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	*zoom: 1;
}

.navi-header-sp .extra-menu:after {
	display: table;
	clear: both;
	content: '';
}

.navi-header-sp .extra-menu a {
	line-height: 45px;
	display: block;
	float: left;
	width: 50%;
	height: 45px;
	text-align: center;
	border-bottom: solid 1px #fff;
	border-left: solid 1px #fff;
}

.navi-header-sp .link-application {
	margin-top: 10px;
}

.navi-header-sp .link-application a {
	line-height: 45px;
	display: block;
	width: 100%;
	height: 45px;
	text-align: center;
	border: solid 1px #fff;
}

.navi-header-sp .link-contents {
	margin-top: 40px;
}

.navi-header-sp .link-contents li {
	width: 100%;
}

.navi-header-sp .link-contents li a {
	font-size: 15px;
	line-height: 40px;
	display: block;
	height: 40px;
	text-align: center;
}

.navi-header-sp.is-open {
	height: 100%;
	opacity: 1;
	filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
}

.header-sp {
	position: relative;
	width: 100%;
	height: 48px;
	background: #009794;
}

.header-sp:after {
	position: absolute;
	right: 0;
	bottom: 0;
	display: block;
	width: 0;
	height: 0;
	content: '';
	border-width: 0 0 15px 15px;
	border-style: solid;
	border-color: transparent transparent #f7b844 transparent;
}

.header-sp .header-logo {
	float: left;
	width: 48px;
	height: 48px;
}

.header-sp .header-logo a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

.header-sp .header-logo .logo-symbol {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 30px;
	height: 26px;
	margin: auto;
	fill: #fff;
}

.header-sp .header-link {
	font-size: 0;
	float: right;
	margin-right: 48px;
	padding-top: 15px;
}

.header-sp .header-link a {
	font-size: 13px;
	line-height: 18px;
	display: inline-block;
	height: 18px;
	padding: 0 10px;
	color: #fff;
	border-right: solid 1px #fff;
}

.header-sp .button-navi-sp {
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 48px;
	height: 48px;
}

.header-sp .button-navi-sp i.button-pict {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	width: 17px;
	height: 13px;
	margin: auto;
	background-image: url('../images/service-pl-sugaku/sprite-s72fc218870.png');
	background-repeat: no-repeat;
	background-position: 0 -10px;
	-webkit-background-size: 24px auto;
	background-size: 24px auto;
}

.title-lecture-sp {
	position: relative;
	width: 100%;
	height: 67px;
	text-align: center;
}

.title-lecture-sp img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 260px;
	height: auto;
	margin: auto;
}

.mainvisual {
	position: relative;
	width: 100%;
	height: 670px;
	background: url('../images/service-pl-sugaku/mainvisual.jpg') center center no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
}

.mainvisual .catch-copy {
	position: absolute;
	top: 110px;
	width: 100%;
	text-align: center;
}

.mainvisual .catch-copy .pict-mainvisual {
	display: inline-block;
	width: 103px;
	height: auto;
}

.mainvisual .catch-copy .catch-copy-en {
	font-size: 15px;
	font-weight: bold;
	margin-top: 25px;
	text-transform: uppercase;
	color: #fff;
	text-shadow: rgba(0, 0, 0, .2) 1px 1px 7px, rgba(0, 0, 0, .2) -1px 1px 7px, rgba(0, 0, 0, .2) 1px -1px 7px, rgba(0, 0, 0, .2) -1px -1px 7px;
}

.mainvisual .catch-copy .catch-copy-jp {
	font-size: 48px;
	font-weight: bold;
	margin-top: 33px;
	text-indent: .2em;
	letter-spacing: .2em;
	color: #fff;
	text-shadow: rgba(0, 0, 0, .2) 1px 1px 7px, rgba(0, 0, 0, .2) -1px 1px 7px, rgba(0, 0, 0, .2) 1px -1px 7px, rgba(0, 0, 0, .2) -1px -1px 7px;
}

.mainvisual .bottom-mainvisual {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 246px;
	padding: 40px 40px 0;
	opacity: .9;
	background: #009794;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=90);
}

.mainvisual .bottom-mainvisual p {
	font-size: 15px;
	line-height: 2.0;
	text-align: center;
	color: #fff;
}

.section-feature {
	width: 100%;
	padding: 0 40px 30px;
	background: url('../images/service-pl-sugaku/pattern-slash.gif') left top repeat;
}

.section-feature .feature-inner {
	position: relative;
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 1320px;
	margin-top: -60px;
	margin-right: auto;
	margin-left: auto;
	padding: 30px 80px 60px;
	background: #fff;
	-webkit-box-shadow: 3px 4px 0 0 rgba(0, 0, 0, .05);
	box-shadow: 3px 4px 0 0 rgba(0, 0, 0, .05);
}

.section-feature .feature-inner:before {
	position: absolute;
	top: 10px;
	left: 10px;
	display: block;
	width: 0;
	height: 0;
	content: '';
	border-width: 50px 50px 0 0;
	border-style: solid;
	border-color: #009794 transparent transparent transparent;
}

.section-feature .feature-inner:after {
	position: absolute;
	right: 10px;
	bottom: 10px;
	display: block;
	width: 0;
	height: 0;
	content: '';
	border-width: 0 0 50px 50px;
	border-style: solid;
	border-color: transparent transparent #f7b844 transparent;
}

.section-feature .feature-contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.section-feature .feature-content {
	width: 31.0344%;
	max-width: 360px;
}

.section-feature .feature-content-title {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.section-feature .feature-content-picture {
	margin-top: 20px;
}

.section-feature .feature-content-picture img {
	width: 100%;
	height: auto;
}

.section-feature .feature-content-text {
	margin-top: 30px;
}

.section-feature .feature-content-link {
	margin-top: 30px;
	text-align: center;
}

.section-feature .feature-content-link a.button-yellow-arrow,
.section-feature .feature-content-link .lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .section-feature .feature-content-link .button-orange-arrow,
.section-feature .feature-content-link .lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .section-feature .feature-content-link .button-yellow-arrow {
	width: 100%;
	max-width: 300px;
	margin-right: auto;
	margin-left: auto;
}

.section-student {
	width: 100%;
	padding: 0 40px 40px;
	background: url('../images/service-pl-sugaku/pattern-slash.gif') left top repeat;
}

.section-student .student-inner {
	position: relative;
	position: relative;
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 1320px;
	margin-right: auto;
	margin-left: auto;
	padding: 30px 0 50px;
	background: #fff;
	-webkit-box-shadow: 3px 4px 0 0 rgba(0, 0, 0, .05);
	box-shadow: 3px 4px 0 0 rgba(0, 0, 0, .05);
}

.section-student .student-inner:before {
	position: absolute;
	top: 10px;
	left: 10px;
	display: block;
	width: 0;
	height: 0;
	content: '';
	border-width: 50px 50px 0 0;
	border-style: solid;
	border-color: #009794 transparent transparent transparent;
}

.section-student .student-inner:after {
	position: absolute;
	right: 10px;
	bottom: 10px;
	display: block;
	width: 0;
	height: 0;
	content: '';
	border-width: 0 0 50px 50px;
	border-style: solid;
	border-color: transparent transparent #f7b844 transparent;
}

.section-student .student-image {
	width: 21.9696%;
	margin: 40px auto 0;
}

.section-student .student-problem {
	position: absolute;
	top: 20px;
	width: 100%;
}

.section-student .student-problem.is-left {
	left: 6.8181%;
}

.section-student .student-problem.is-right {
	right: 5%;
}

.section-student .student-problem-baloon {
	position: absolute;
	width: 15.6818%;
	min-width: 175px;
	text-align: center;
	background-repeat: no-repeat;
	background-position: 0 0;
	-webkit-background-size: contain;
	background-size: contain;
}

.section-student .student-problem-baloon:before {
	display: inline-block;
	width: 100%;
	padding-top: 80.6763%;
	content: '';
}

.section-student .student-problem-baloon.is-green {
	color: #009794;
	background-image: url(../images/service-pl-sugaku/student-problem-baloon-green.png);
}

.section-student .student-problem-baloon.is-yellow {
	color: #f7b844;
	background-image: url(../images/service-pl-sugaku/student-problem-baloon-yellow.png);
}

.section-student .student-problem-baloon.problem-1 {
	top: 0;
	left: 2.80303%;
}

.section-student .student-problem-baloon.problem-2 {
	top: 114px;
	left: 13.63636%;
}

.section-student .student-problem-baloon.problem-3 {
	top: 188px;
	left: 0;
}

.section-student .student-problem-baloon.problem-4 {
	top: 0;
	right: 12.12121%;
}

.section-student .student-problem-baloon.problem-5 {
	top: 100px;
	right: 0;
}

.section-student .student-problem-baloon.problem-6 {
	top: 165px;
	right: 14.39394%;
}

.section-student .student-problem-text {
	font-size: 14px;
	line-height: 1.2;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 34px;
	margin: auto;
	text-shadow: #fff 1px 1px 0, #fff -1px 1px 0, #fff 1px -1px 0, #fff -1px -1px 0;
}

.service-flow {
	position: relative;
}

.service-flow .flow-steps {
	display: table;
	padding-top: 52px;
}

.service-flow .flow-steps li {
	position: relative;
	display: table-cell;
	width: 25%;
	padding: 40px 30px 30px;
	text-align: center;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	background: #fff;
}

.service-flow .flow-steps li:first-child {
	border-left: 1px solid #ddd;
}

.service-flow .flow-steps li:before,
.service-flow .flow-steps li:after {
	position: absolute;
	top: 50%;
	left: 100%;
	width: 0;
	height: 0;
	content: ' ';
	pointer-events: none;
	border: solid transparent;
}

.service-flow .flow-steps li:before {
	margin-top: -22px;
	border-width: 27px 0 27px 22px;
	border-color: rgba(221, 221, 221, 0);
	border-left-color: #ddd;
}

.service-flow .flow-steps li:after {
	margin-top: -20px;
	border-width: 25px 0 25px 20px;
	border-color: rgba(255, 255, 255, 0);
	border-left-color: #fff;
}

.service-flow .flow-steps li.flow-step01 {
	z-index: 4;
}

.service-flow .flow-steps li.flow-step02 {
	z-index: 3;
}

.service-flow .flow-steps li.flow-step03 {
	z-index: 2;
}

.service-flow .flow-steps li.flow-step04 {
	z-index: 1;
}

.service-flow .flow-steps li.flow-step04:before,
.service-flow .flow-steps li.flow-step04:after {
	content: none;
}

.service-flow .flow-steps .pict-step {
	position: absolute;
	z-index: 1;
	top: -52px;
	right: 0;
	left: 0;
	width: 104px;
	height: 104px;
	margin: auto;
	text-align: center;
	border: solid 1px #ddd;
	border-radius: 50%;
	background: #fff;
}

.service-flow .flow-steps .pict-step img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: inline-block;
	margin: auto;
}

.service-flow .flow-steps li.flow-step01 img {
	width: 35px;
	height: auto;
}

.service-flow .flow-steps li.flow-step02 img {
	width: 50px;
	height: auto;
}

.service-flow .flow-steps li.flow-step03 img {
	width: 32px;
	height: auto;
}

.service-flow .flow-steps li.flow-step04 img {
	width: 45px;
	height: auto;
}

.service-flow .flow-steps .number-step {
	font-family: 'Kreon', serif;
	font-size: 12px;
	font-size: .75rem;
	font-weight: 300;
	line-height: 20px;
	position: relative;
	z-index: 2;
	display: inline-block;
	width: 60px;
	height: 20px;
	text-align: center;
	color: #fff;
	background: #009794;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.service-flow .flow-steps .title-step {
	font-size: 16px;
	font-size: 1rem;
	font-weight: bold;
	margin-top: 20px;
}

.service-flow .flow-steps .description-step {
	font-size: 13px;
	font-size: .8125rem;
	line-height: 20px;
	margin: 15px 0 0;
	color: #666;
}

.service-flow .flow-contact-wrapper {
	padding: 0 80px;
}

.section-class {
	padding: 40px 120px;
}

.section-class .class-inner {
	width: 100%;
	max-width: 800px;
	margin-right: auto;
	margin-left: auto;
}

.section-class .class-box {
	overflow: hidden;
	width: 100%;
	height: auto;
	margin-top: 40px;
}

.section-review {
	margin: 60px 80px;
}

.section-review .inner-section {
	width: 100%;
	max-width: 1240px;
	margin-right: auto;
	margin-left: auto;
}

.section-review .review-table {
	margin-top: 40px;
	border-top: 1px solid #ddd;
}

.section-review .review-table .review-row {
	display: table;
	width: 100%;
	border-collapse: collapse;
}

.section-review .review-table .review-column {
	position: relative;
	display: table-cell;
	padding: 35px 60px 25px;
	vertical-align: middle;
	border: 1px solid #ddd;
	border-top: none;
}

.section-review .review-table .review-column.column-1 {
	width: 100%;
}

.section-review .review-table .review-column.column-2 {
	width: 50%;
}

.section-review .review-table .review-link:hover .review-link-title {
	text-decoration: none;
}

.section-review .review-table .review-link-title {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	text-decoration: underline;
}

.section-review .review-table .review-person {
	font-size: 14px;
	line-height: 1.3;
	margin-top: 20px;
	color: #666;
}

.section-review .review-table .review-pict {
	position: absolute;
	top: 20px;
	left: 20px;
	display: inline-block;
	width: 31px;
}

.section-review .review-link-more {
	margin-top: 40px;
	text-align: center;
}

.section-media {
	margin: 40px 0 0;
	padding: 0 40px;
	background: #f9f9f9;
}

.section-media .inner-section {
	width: 100%;
	max-width: 1320px;
	margin-right: auto;
	margin-left: auto;
	padding: 50px 0 20px;
}

.section-media .title-media {
	font-size: 16px;
	width: 100%;
	padding: 0 80px;
	text-align: center;
}

.section-media .body-media {
	margin-top: 50px;
	padding: 0 80px;
}

.section-media .body-media li {
	width: 100%;
	margin-top: 5px;
	-webkit-box-shadow: 1px 1px 0 0 rgba(0, 0, 0, .05);
	box-shadow: 1px 1px 0 0 rgba(0, 0, 0, .05);
}

.section-media .body-media li a {
	position: relative;
	display: table;
	width: 100%;
	padding: 20px 60px 20px 30px;
	background: #fff;
}

.section-media .body-media li a:after {
	position: absolute;
	top: 0;
	right: 36px;
	bottom: 0;
	display: inline-block;
	width: 0;
	height: 0;
	margin: auto;
	content: '';
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #009794;
}

.section-media .body-media li a .category-post {
	display: table-cell;
	width: 100px;
	padding-right: 30px;
}

.section-media .body-media li a .category-post .mark-category {
	font-size: 12px;
	line-height: 25px;
	display: inline-block;
	width: 100%;
	height: 25px;
	text-align: center;
	color: #fff;
}

.section-media .body-media li a .category-post .media {
	background: #009794;
}

.section-media .body-media li a .category-post .news {
	background: #009794;
}

.section-media .body-media li a .date-post {
	font-size: 15px;
	line-height: 25px;
	display: table-cell;
	width: 110px;
}

.section-media .body-media li a .title-post {
	font-size: 15px;
	line-height: 25px;
	display: table-cell;
}

.section-media .link-continue {
	font-size: 13px;
	margin: 36px 0 0;
	text-align: right;
}

.title-lecture-sp {
	position: relative;
	height: 40px;
}

.title-lecture-sp img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: inline-block;
	width: 230px;
	height: auto;
	margin: auto;
}

.wrapper-content-title {
	width: 100%;
	height: 220px;
	background: url(../images/service-pl-sugaku/bg-content-title-pc.png) center top no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
}

.wrapper-content-title h1.content-title {
	font-size: 32px;
	font-weight: bold;
	width: 100%;
	padding-top: 60px;
	text-align: center;
	text-indent: .2em;
	letter-spacing: .2em;
	color: #fff;
}

.container-main {
	padding: 0 40px;
	background: url(../images/service-pl-sugaku/pattern-slash.gif) left top repeat;
}

.inner-container {
	position: relative;
	position: relative;
	position: relative;
	top: -60px;
	overflow: hidden;
	width: 100%;
	max-width: 1320px;
	margin-right: auto;
	margin-bottom: -15px;
	margin-left: auto;
	padding: 90px 40px 40px;
	background: #fff;
	-webkit-box-shadow: 3px 4px 0 0 rgba(0, 0, 0, .05);
	box-shadow: 3px 4px 0 0 rgba(0, 0, 0, .05);
}

.inner-container:before {
	position: absolute;
	top: 10px;
	left: 10px;
	display: block;
	width: 0;
	height: 0;
	content: '';
	border-width: 50px 50px 0 0;
	border-style: solid;
	border-color: #009794 transparent transparent transparent;
}

.inner-container:after {
	position: absolute;
	top: 10px;
	right: 10px;
	display: block;
	width: 0;
	height: 0;
	content: '';
	border-width: 0 50px 50px 0;
	border-style: solid;
	border-color: transparent #f7b844 transparent transparent;
}

.inner-container p,
.inner-container ul,
.inner-container dl {
	margin-bottom: 30px;
}

.inner-container .table-layout {
	margin-bottom: 30px;
}

.inner-container .table-layout p,
.inner-container .table-layout ul,
.inner-container .table-layout dl {
	margin-bottom: 0;
}

.inner-container .catch-copy {
	font-size: 30px;
	text-align: center;
	color: #009794;
}

.inner-container .bottom-contact {
	width: 100%;
	max-width: 1240px;
	margin-right: auto;
	margin-left: auto;
	padding: 40px 80px;
	border: 1px solid #ddd;
	background: #f9f9f9;
}

.inner-container .bottom-contact p.text-center {
	margin-top: 30px;
}

.inner-container .bottom-contact .contact-button {
	font-size: 0;
	width: 600px;
	margin: 30px auto 0;
}

.inner-container .bottom-contact a {
	font-size: 14px;
	font-weight: bold;
	line-height: 40px;
	display: inline-block;
	width: 50%;
	height: 40px;
	text-align: center;
	color: #fff;
}

.inner-container .bottom-contact a.link-contact {
	background: #f7b844;
}

.inner-container .bottom-contact a.link-application {
	background: #009794;
}

.style-template {
	width: 100%;
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}

.characteristics {
	padding-bottom: 80px;
}

.characteristics .inner {
	max-width: 1120px;
}

.characteristics .characteristics-header {
	margin-top: 20px;
	padding-bottom: 40px;
	text-align: center;
	border-bottom: 1px solid #ddd;
}

.characteristics .characteristics-header .header-headline {
	font-size: 36px;
	font-size: 2.25rem;
	font-weight: normal;
	line-height: 1.35;
	color: #009794;
}

.characteristics .characteristics-header .header-subheadline {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: bold;
	line-height: 1.8;
	margin-top: 50px;
}

.characteristics .characteristics-header .header-body {
	line-height: 1.85;
	margin-top: 40px;
}

.characteristics .characteristics-policy {
	padding-top: 40px;
}

.characteristics .policy-message {
	padding: 0 40px;
}

.characteristics .policy-points {
	font-size: 0;
	width: 100%;
	margin-top: 30px;
	padding-bottom: 80px;
	text-align: center;
	border-bottom: 1px solid #ddd;
}

.characteristics .policy-point {
	position: relative;
	display: inline-block;
	width: 210px;
	height: 210px;
	margin: 0 15px;
	text-align: center;
	border: 2px solid #009794;
	border-radius: 50%;
}

.characteristics .policy-point:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: inline-block;
	width: 200px;
	height: 200px;
	margin: auto;
	content: '';
	border: 1px solid #009794;
	border-radius: 50%;
}

.characteristics .policy-point-pict {
	position: absolute;
	right: 0;
	bottom: 86px;
	left: 0;
	margin: auto;
}

.characteristics .policy-point-pict.is-goal {
	width: 67px;
}

.characteristics .policy-point-pict.is-curriculum {
	width: 51px;
}

.characteristics .policy-point-pict.is-schedule {
	width: 75px;
}

.characteristics .policy-point-pict img {
	width: 100%;
	height: auto;
}

.characteristics .policy-point-title {
	font-size: 16px;
	font-size: 1rem;
	font-weight: bold;
	position: absolute;
	bottom: 51px;
	width: 100%;
	text-align: center;
	color: #009794;
}

.characteristics .characteristics-instructor {
	margin-top: 40px;
	padding-bottom: 80px;
	border-bottom: 1px solid #ddd;
}

.characteristics .instructor-headline {
	font-size: 36px;
	font-size: 2.25rem;
	margin-top: 30px;
	text-align: center;
}

.characteristics .instructor-body {
	padding: 0 40px;
}

.characteristics .instructor-link {
	margin-top: 50px;
	text-align: center;
}

.characteristics .characteristics-choosable {
	margin-top: 40px;
}

.characteristics .choosable-points {
	zoom: 1;
	margin-top: 40px;
	padding: 0 40px;
}

.characteristics .choosable-points:before,
.characteristics .choosable-points:after {
	display: table;
	content: '';
}

.characteristics .choosable-points:after {
	clear: both;
}

.characteristics .choosable-point {
	float: left;
	width: 30.6%;
	margin-left: 4.1%;
}

.characteristics .choosable-point:first-child {
	margin-left: 0;
}

.characteristics .choosable-title {
	position: relative;
	height: 100px;
	border: 2px solid #009794;
}

.characteristics .choosable-title:before,
.characteristics .choosable-title:after {
	position: absolute;
	top: 10px;
	display: inline-block;
	width: 20px;
	height: 20px;
	content: '';
}

.characteristics .choosable-title:before {
	left: 10px;
	border-top: 1px solid #009794;
	border-left: 1px solid #009794;
}

.characteristics .choosable-title:after {
	right: 10px;
	border-top: 1px solid #009794;
	border-right: 1px solid #009794;
}

.characteristics .choosable-title-inner {
	display: table;
	width: 100%;
	height: 100%;
}

.characteristics .choosable-title-inner:before,
.characteristics .choosable-title-inner:after {
	position: absolute;
	bottom: 10px;
	display: inline-block;
	width: 20px;
	height: 20px;
	content: '';
}

.characteristics .choosable-title-inner:before {
	left: 10px;
	border-bottom: 1px solid #009794;
	border-left: 1px solid #009794;
}

.characteristics .choosable-title-inner:after {
	right: 10px;
	border-right: 1px solid #009794;
	border-bottom: 1px solid #009794;
}

.characteristics .choosable-title-text {
	font-size: 16px;
	font-size: 1rem;
	font-weight: bold;
	line-height: 26px;
	display: table-cell;
	width: 100%;
	height: 100%;
	text-align: center;
	vertical-align: middle;
	color: #009794;
}

.characteristics .choosable-body {
	margin-top: 40px;
	padding: 0 40px;
}

.characteristics .characteristics-price {
	padding: 40px;
	border: 1px solid #ddd;
	background: #f9f9f9;
}

.characteristics .price-message {
	margin-bottom: 30px;
	text-align: center;
}

.characteristics .price-info {
	width: 100%;
	margin-bottom: 40px;
	border-top: 3px solid #009794;
	background: #fff;
	-webkit-box-shadow: 3px 4px 0 0 rgba(0, 0, 0, .05);
	box-shadow: 3px 4px 0 0 rgba(0, 0, 0, .05);
}

.characteristics .price-info-header {
	padding: 20px;
	border-bottom: 1px solid #ddd;
}

.characteristics .price-ticket-title {
	float: left;
	zoom: 1;
	margin-right: 30px;
	padding: 0 30px;
	border-right: 1px solid #ddd;
}

.characteristics .price-ticket-title:before,
.characteristics .price-ticket-title:after {
	display: table;
	content: '';
}

.characteristics .price-ticket-title:after {
	clear: both;
}

.characteristics .ticket-title-text {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: bold;
	line-height: 40px;
	margin-right: 10px;
	vertical-align: middle;
	color: #009794;
}

.characteristics .ticket-title-pict {
	width: 44px;
	height: auto;
	vertical-align: middle;
}

.characteristics .price-tiket-price {
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: bold;
	line-height: 40px;
	color: #009794;
}

.characteristics .price-tiket-price .text-large {
	font-size: 24px;
	font-size: 1.5rem;
}

.characteristics .price-info-body {
	padding: 30px;
}

.characteristics .price-note li {
	font-size: 13px;
	font-size: .8125rem;
	line-height: 1.5;
	color: #666;
}

.characteristics .price-feature {
	margin-bottom: 0;
}

.characteristics .price-feature li {
	padding-left: 1em;
	text-indent: -1em;
}

.characteristics .price-case {
	margin-top: 20px;
	padding: 30px;
	border: 1px solid #ddd;
	background: #fff;
}

.characteristics .case-header {
	zoom: 1;
	padding-bottom: 30px;
	border-bottom: 1px solid #ddd;
}

.characteristics .case-header:before,
.characteristics .case-header:after {
	display: table;
	content: '';
}

.characteristics .case-header:after {
	clear: both;
}

.characteristics .case-label {
	font-family: 'Kreon', serif;
	line-height: 1;
	display: inline-block;
	float: left;
	width: 70px;
	height: 70px;
	margin-right: 30px;
	text-align: center;
	color: #fff;
	background: #009794;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.characteristics .case-label-text {
	font-size: 14px;
	font-size: .875rem;
	display: block;
	margin-top: 12px;
	text-align: center;
}

.characteristics .case-label-num {
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: bold;
	display: inline-block;
	margin-top: 8px;
}

.characteristics .case-headline {
	float: right;
	width: 100%;
	margin-bottom: 0;
	margin-left: -100px;
	padding-left: 100px;
}

.characteristics .case-headline-sub {
	font-size: 15px;
	font-size: .9375rem;
	line-height: 30px;
	display: block;
}

.characteristics .case-headline-main {
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 30px;
	display: block;
	margin-top: 10px;
	color: #009794;
}

.characteristics .case-body {
	padding-top: 30px;
}

.characteristics .case-plan {
	font-size: 14px;
	font-size: .875rem;
	font-weight: bold;
	color: #009794;
}

.characteristics .case-price {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 30px;
}

.characteristics .case-price .text-large {
	font-size: 30px;
	font-size: 1.875rem;
}

.characteristics .case-message {
	margin: 30px 0 0;
}

.characteristics .characteristics-school {
	margin-top: 80px;
}

.characteristics .table-layout.school-list {
	margin-top: 60px;
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
}

.characteristics .table-layout.school-list .tr .th {
	font-size: 15px;
	font-size: .9375rem;
	font-weight: bold;
	background: none;
}

.characteristics .table-layout.school-list .tr .td {
	position: relative;
	padding-right: 40px;
}

.characteristics .table-layout.school-list .tr .td:before {
	position: absolute;
	top: 10px;
	bottom: 10px;
	left: 0;
	display: inline-block;
	width: 1px;
	margin: auto;
	content: '';
	background: #ddd;
}

.characteristics .table-layout.school-list .tr .td .school-detail {
	font-size: 11px;
	font-size: .6875rem;
	line-height: 30px;
	position: absolute;
	right: 30px;
	display: inline-block;
	width: 100px;
	height: 30px;
	text-align: center;
	color: #fff;
	border-radius: 3px;
	background: #f7b844;
}

.characteristics .table-layout.school-list .tr .td .school-detail:after {
	position: absolute;
	top: 0;
	right: 10px;
	bottom: 0;
	display: inline-block;
	width: 0;
	height: 0;
	margin: auto;
	content: '';
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #fff;
}

.characteristics .characteristics-faq {
	margin-top: 100px;
	text-align: center;
}

.course .course-header {
	margin-bottom: 15px;
}

.course .course-index {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	max-width: 1240px;
	margin-right: auto;
	margin-bottom: 80px;
	margin-left: auto;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.course .course-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 48.7903%;
	margin-top: 50px;
	border: 1px solid #ddd;
	background: #f9f9f9;
}

.course .course-box .course-box-inner {
	position: relative;
	width: 100%;
	padding: 50px 40px 120px;
	text-align: center;
	border-top: 5px solid #009794;
	background-color: #e5f4f4;
}

.course .course-box .course-title {
	font-size: 20px;
	font-weight: bold;
	line-height: 28px;
	display: inline-block;
	margin: 0 auto;
	padding-left: 30px;
	background: url(../images/service-pl-sugaku/icons/title-symbol.png) left 7px no-repeat;
	-webkit-background-size: 20px auto;
	background-size: 20px auto;
}

.course .course-box .course-description {
	margin: 40px 0 0;
	padding: 30px;
	text-align: left;
	border: 1px solid #ddd;
	background-color: #fff;
}

.course .course-box .course-student {
	margin-top: 10px;
	padding: 25px 30px;
	text-align: left;
	border: 1px solid #5cbcba;
	background-color: #f5fbfb;
}

.course .course-box .student-title {
	font-weight: bold;
	color: #009794;
}

.course .course-box .student-habit {
	font-size: 13px;
	line-height: 1.6;
	margin: 20px 0 0;
	color: #0f8380;
}

.course .course-box .course-link-detail {
	position: absolute;
	bottom: 40px;
	left: 0;
	width: 100%;
}

.course-single {
	width: 100%;
	max-width: 1000px;
	margin-right: auto;
	margin-bottom: 60px;
	margin-left: auto;
}

.course-single .course-single-body {
	margin-top: 50px;
}

.course-single .course-single-body h3 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 30px;
	text-align: center;
	color: #009794;
}

.course-single .course-single-body h4 {
	font-size: 16px;
	font-weight: bold;
	display: table;
	margin-bottom: 30px;
	text-align: center;
	white-space: nowrap;
}

.course-single .course-single-body h4:after,
.course-single .course-single-body h4:before {
	display: table-cell;
	width: 50%;
	content: '';
	background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 50%, #ddd 50%, #ddd -webkit-calc(50% + 1px), rgba(0, 0, 0, 0) -webkit-calc(50% + 1px));
	background: linear-gradient(rgba(0, 0, 0, 0) 50%, #ddd 50%, #ddd calc(50% + 1px), rgba(0, 0, 0, 0) calc(50% + 1px));
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	-webkit-background-size: 100% -webkit-calc(100%);
	background-size: 100% calc(100%);
}

.course-single .course-single-body h4:before {
	border-right: 1.5em solid transparent;
}

.course-single .course-single-body h4:after {
	border-left: 1.5em solid transparent;
}

.course-single .course-single-body .text-small {
	font-size: 12px;
}

.course-single .course-single-table table {
	line-height: 28px;
	width: 100%;
	margin-bottom: 30px;
	border-collapse: collapse;
	border-bottom: solid 1px #ddd;
}

.course-single .course-single-table table th {
	width: 24%;
	padding: 25px;
	text-align: center;
	vertical-align: middle;
	border-top: solid 1px #ddd;
	background: #f9f9f9;
}

.course-single .course-single-table table td {
	padding: 25px 20px;
	vertical-align: middle;
	border-top: solid 1px #ddd;
	border-left: solid 1px #ddd;
}

.course-single .course-single-table table td .table-list {
	display: table;
	width: 100%;
}

.course-single .course-single-table table td .table-list dl {
	display: table-row;
}

.course-single .course-single-table table td .table-list dt,
.course-single .course-single-table table td .table-list dd {
	display: table-cell;
	vertical-align: top;
}

.course-single .course-single-table table td ul {
	margin-bottom: 0;
}

.course-single .course-single-table table thead th {
	width: auto;
	padding: 10px 25px;
	text-align: center;
	color: #fff;
	border-top: solid 1px #ddd;
	border-left: solid 1px #ddd;
	background: #6d6d6d;
}

.course-single .course-single-table table thead th:first-child {
	border-left: none;
}

.course-single .course-single-table.column-4 {
	overflow: scroll;
	width: 100%;
	-webkit-overflow-scrolling: touch;
}

.course-single .course-single-table.column-4 table {
	table-layout: fixed;
}

.course-single .course-single-table.column-4 table tr:first-child th:first-child {
	width: 100px;
}

.course-single .course-single-table.column-4 table tr:first-child th:nth-child(2) {
	width: 200px;
}

.course-single .course-single-table.column-4 table tr:first-child th:nth-child(3) {
	width: 300px;
}

.course-single .course-single-class {
	margin-top: 60px;
}

.course-single .course-single-class .class-inner {
	padding: 40px 100px 60px;
	background: #f9f9f9;
}

.course-single .course-single-class .class-box {
	margin-top: 35px;
}

.course-single .course-single-class .class-box img {
	width: 100%;
	height: auto;
}

.course-single .course-single-student {
	margin-top: 60px;
}

.course-single .course-single-student .student-box {
	margin-top: 30px;
	padding: 40px 70px;
	border: 1px solid #ddd;
}

.course-single .course-single-student .student-comment {
	font-size: 16px;
	min-height: 40px;
	margin: 40px 0 0;
	padding-left: 60px;
	background: url(../images/service-pl-sugaku/course-single-habit.png) 0 8px no-repeat;
	-webkit-background-size: 30px auto;
	background-size: 30px auto;
}

.course-single .course-single-student .student-comment:first-child {
	margin-top: 0;
}

.voice .voice-index {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	max-width: 1240px;
	margin-right: auto;
	margin-left: auto;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.voice .voice-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 48.3871%;
	margin-top: 40px;
	border: 1px solid #ddd;
}

.voice .box-inner {
	position: relative;
	width: 100%;
	padding: 0 30px 100px;
	text-align: center;
	border-top: 2px solid #009794;
}

.voice .voice-course {
	font-size: 14px;
	line-height: 35px;
	display: inline-block;
	height: 35px;
	padding: 0 16px;
	color: #fff;
	background: #009794;
}

.voice .voice-title {
	font-size: 24px;
	font-weight: bold;
	line-height: 28px;
	margin-top: 25px;
}

.voice .voice-person {
	font-size: 16px;
	margin-top: 15px;
}

.voice .voice-comment {
	font-weight: bold;
	line-height: 1.6;
	position: relative;
	min-height: 100px;
	margin: 50px 0 0;
	padding: 30px 30px 20px;
	color: #009794;
	border: 1px solid #009794;
	background: #f3ffff;
}

.voice .voice-comment:before {
	position: absolute;
	top: -20px;
	right: 0;
	left: 0;
	display: inline-block;
	width: 43px;
	height: 43px;
	margin: auto;
	content: '';
	background: url(../images/service-pl-sugaku/voice-comment.svg) 0 0 no-repeat;
}

.voice .voice-link-detail {
	position: absolute;
	bottom: 30px;
	left: 0;
	width: 100%;
	text-align: center;
}

.voice-single {
	width: 100%;
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}

.voice-single .voice-single-header .header-summary {
	width: 100%;
	max-width: 800px;
	margin-top: 40px;
	margin-right: auto;
	margin-left: auto;
}

.voice-single .voice-single-body {
	margin-top: 50px;
	padding-bottom: 50px;
}

.voice-single .voice-single-body h3 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 30px;
	text-align: center;
	color: #009794;
}

.voice-single .voice-single-body h4 {
	font-size: 16px;
	font-weight: bold;
	display: table;
	margin-bottom: 30px;
	text-align: center;
	white-space: nowrap;
}

.voice-single .voice-single-body h4:after,
.voice-single .voice-single-body h4:before {
	display: table-cell;
	width: 50%;
	content: '';
	background: -webkit-linear-gradient(rgba(0, 0, 0, 0) 50%, #ddd 50%, #ddd -webkit-calc(50% + 1px), rgba(0, 0, 0, 0) -webkit-calc(50% + 1px));
	background: linear-gradient(rgba(0, 0, 0, 0) 50%, #ddd 50%, #ddd calc(50% + 1px), rgba(0, 0, 0, 0) calc(50% + 1px));
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	-webkit-background-size: 100% -webkit-calc(100%);
	background-size: 100% calc(100%);
}

.voice-single .voice-single-body h4:before {
	border-right: 1.5em solid transparent;
}

.voice-single .voice-single-body h4:after {
	border-left: 1.5em solid transparent;
}

.voice-single .voice-single-body .text-small {
	font-size: 12px;
}

.voice-single .voice-single-link-back {
	margin-bottom: 40px;
	text-align: center;
}

.lecturer .inner-container .index-lecturer .lead-copy {
	margin-bottom: 50px;
}

.lecturer .inner-container .index-lecturer .index-list {
	width: 100%;
}

.lecturer .inner-container .index-lecturer .index-list ul {
	width: 100%;
	margin-bottom: 0;
	*zoom: 1;
}

.lecturer .inner-container .index-lecturer .index-list ul:after {
	display: table;
	clear: both;
	content: '';
}

.lecturer .inner-container .index-lecturer .index-list li {
	float: left;
	width: 25%;
	margin: 20px 0;
	padding-right: 4px;
}

.lecturer .inner-container .index-lecturer .index-list li a {
	display: block;
	width: 100%;
	padding: 0 0 25px;
	background: #fff;
	-webkit-box-shadow: 3px 4px 0 0 rgba(0, 0, 0, .05);
	box-shadow: 3px 4px 0 0 rgba(0, 0, 0, .05);
}

.lecturer .inner-container .index-lecturer .index-list .picture-lecturer {
	width: 190px;
	height: 190px;
	margin: 0 auto;
}

.lecturer .inner-container .index-lecturer .index-list .picture-lecturer img {
	display: inline-block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
}

.lecturer .inner-container .index-lecturer .index-list .name-lecturer {
	position: relative;
	top: -30px;
	width: 172px;
	height: 30px;
	margin: 0 auto;
}

.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow {
	line-height: 30px;
	width: 100%;
	height: 30px;
	border-radius: 15px;
}

.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow:hover,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow:hover {
	line-height: 28px;
}

.lecturer .inner-container .index-lecturer .index-list .comment-lecturer {
	font-size: 13px;
	line-height: 20px;
	overflow: hidden;
	width: 100%;
	height: 80px;
	margin: -10px 0 0;
	padding: 0 40px;
}

.lecturer .inner-container .lecturer-detail {
	width: 100%;
}

.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer {
	margin-top: 40px;
	text-align: center;
	color: #009794;
}

.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer .name-jp {
	font-size: 28px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer .name-en {
	margin: 20px 0 0;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer {
	position: relative;
	display: table;
	width: 100%;
	max-width: 1000px;
	margin-top: 60px;
	margin-right: auto;
	margin-left: auto;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .picture-info {
	display: table-cell;
	overflow: hidden;
	width: 330px;
	height: 330px;
	background-repeat: no-repeat;
	background-position: center center;
	-webkit-background-size: cover;
	background-size: cover;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info {
	display: table-cell;
	padding: 30px 0 0 40px;
	vertical-align: top;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info .info-job {
	font-size: 15px;
	font-weight: bold;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info .company {
	display: inline-block;
	margin-right: 2rem;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info .profile-list {
	font-size: 14px;
	line-height: 26px;
	margin-top: 15px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info .profile-list dl {
	width: 100%;
	margin-bottom: 0;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info .profile-list dt {
	float: left;
	margin-right: 5px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info .profile-list dd {
	overflow: hidden;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .link-sns {
	position: absolute;
	bottom: 40px;
	left: 410px;
	overflow: hidden;
	height: 35px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .link-sns .button-sns {
	float: left;
	width: 135px;
	height: 35px;
	margin-right: 5px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .link-sns .button-sns a {
	font-family: 'Kreon', serif;
	font-size: 16px;
	line-height: 35px;
	display: inline-block;
	width: 100%;
	height: 100%;
	text-align: center;
	color: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .link-sns .button-sns.fb a {
	background: #3b5998;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .link-sns .button-sns.tw a {
	background: #1da1f2;
}

.lecturer .inner-container .lecturer-detail .profile-description {
	width: 100%;
	max-width: 920px;
	margin-top: 70px;
	margin-right: auto;
	margin-left: auto;
}

.lecturer .inner-container .lecturer-detail .picture-wide {
	overflow: hidden;
	width: 100%;
	max-width: 1000px;
	height: auto;
	margin-top: 80px;
	margin-right: auto;
	margin-left: auto;
}

.lecturer .inner-container .lecturer-detail .picture-wide img {
	width: 100%;
	height: auto;
}

.lecturer .inner-container .lecturer-detail .link-lecturer {
	margin-top: 70px;
	text-align: center;
}

.lecturer .inner-container .lecturer-detail .link-lecturer a {
	width: 300px;
}

.faq {
	padding-bottom: 50px;
}

.faq .list-faq {
	width: 100%;
	max-width: 1000px;
	margin-top: 60px;
	margin-right: auto;
	margin-left: auto;
}

.faq .list-faq .question {
	display: table;
	width: 100%;
	margin-top: 60px;
}

.faq .list-faq .question .label-q {
	font-family: 'Kreon', serif;
	font-size: 18px;
	line-height: 1.0;
	display: table-cell;
	width: 60px;
	height: 60px;
	text-align: center;
	vertical-align: middle;
	color: #fff;
	border: solid 1px #ddd;
	background: #009794;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.faq .list-faq .question .text-q {
	font-size: 16px;
	font-weight: bold;
	display: table-cell;
	padding: 0 20px;
	vertical-align: middle;
	color: #009794;
	border: solid 1px #ddd;
	border-left: none;
}

.faq .list-faq .answer {
	margin: 30px 40px 0;
}

.faq .list-faq .answer p {
	margin: 10px 0;
}

.footer .head-footer {
	background: #009794;
}

.footer .footer-tab-label {
	width: 100%;
	max-width: 1400px;
	margin-right: auto;
	margin-left: auto;
	padding: 20px 70px 0;
	*zoom: 1;
}

.footer .footer-tab-label:after {
	display: table;
	clear: both;
	content: '';
}

.footer .footer-tab-label li {
	float: left;
	width: 25%;
	height: 60px;
	padding: 0 10px;
}

.footer .footer-tab-label li span {
	font-size: 14px;
	line-height: 60px;
	display: block;
	width: 100%;
	height: 100%;
	cursor: pointer;
	-webkit-transition: linear .1s;
	transition: linear .1s;
	text-align: center;
	opacity: .3;
	color: #fff;
	background: #000;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=30);
}

.footer .footer-tab-label li.active span,
.footer .footer-tab-label li:hover span {
	font-weight: bold;
	opacity: 1;
	color: #009794;
	background: #fff;
	filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
}

.footer .footer-tab-content {
	width: 100%;
	background: #fff;
}

.footer .footer-tab-content > li {
	display: none;
	width: 100%;
	padding: 18px 80px;
}

.footer .footer-tab-content > li.content-3 {
	display: block;
}

.footer .footer-tab-content .navi-content {
	text-align: center;
}

.footer .footer-tab-content .navi-content > li {
	display: inline-block;
	margin: 15px 20px;
}

.footer .footer-tab-content .navi-content > li a {
	font-size: 13px;
}

.footer .access-footer {
	padding: 40px 80px 60px;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}

.footer .access-footer-inner {
	width: 100%;
	max-width: 1550px;
	margin-right: auto;
	margin-left: auto;
}

.footer .access-footer-title {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}

.footer .access-footer-contents {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	margin-top: 35px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.footer .access-footer-content {
	display: inline-block;
	width: 23.7903%;
	max-width: 295px;
}

.footer .access-footer-picture {
	width: 100%;
	height: auto;
}

.footer .access-footer-text {
	line-height: 25px;
	position: relative;
	margin-top: 14px;
	text-align: center;
}

.footer .access-footer-button {
	font-size: 11px;
	line-height: 25px;
	position: absolute;
	top: 0;
	right: 0;
	display: inline-block;
	width: 50px;
	height: 25px;
	text-align: center;
	color: #fff;
	border-radius: 3px;
	background: #f7b844;
}

.footer .body-footer {
	display: table;
	width: 100%;
	padding: 50px 40px;
	background: #f9f9f9;
	*zoom: 1;
}

.footer .body-footer:after {
	display: table;
	clear: both;
	content: '';
}

.footer .box-content {
	display: table-cell;
	vertical-align: top;
	border-left: solid 1px #ddd;
}

.footer .box-content:first-child {
	border-left: none;
}

.footer .box-logo {
	width: 274px;
	padding-left: 40px;
}

.footer .box-logo .inner-logo {
	position: relative;
	padding-top: 20px;
}

.footer .box-logo .logo-symbol-wakara {
	display: block;
	float: left;
	width: 60px;
	height: 50px;
	margin-right: 2px;
	fill: #009794;
}

.footer .box-logo .text-logo {
	font-size: 17px;
	font-weight: bold;
	display: block;
	margin-top: 18px;
	color: #009794;
}

.footer .box-logo .link-sns {
	font-size: 0;
	position: absolute;
	top: 80px;
	left: 60px;
}

.footer .box-logo .link-sns .link-sns-button {
	position: relative;
	display: inline-block;
	width: 30px;
	height: 30px;
	border: 1px solid #009794;
	border-radius: 50%;
}

.footer .box-logo .link-sns .link-sns-button img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: inline-block;
	margin: auto;
}

.footer .box-logo .link-sns .link-sns-button.is-facebook img {
	width: 10px;
}

.footer .box-logo .link-sns .link-sns-button.is-twitter {
	margin-left: 6px;
}

.footer .box-logo .link-sns .link-sns-button.is-twitter img {
	width: 16px;
}

.footer .box-menu {
	*zoom: 1;
}

.footer .box-menu:after {
	display: table;
	clear: both;
	content: '';
}

.footer .box-menu .menu-footer {
	float: left;
	margin-left: 50px;
}

.footer .box-menu .menu-footer li {
	line-height: 1.0;
	margin-top: 18px;
}

.footer .box-menu .menu-footer li a {
	font-size: 12px;
	font-weight: bold;
}

.footer .box-menu .menu-footer > li:first-child {
	margin-top: 8px;
}

.footer .box-menu .menu-footer .submenu li a {
	font-weight: normal;
}

.footer .box-contact {
	width: 290px;
	padding: 20px 0 0 10px;
}

.footer .box-contact .link-contact {
	width: 200px;
	height: 35px;
	margin: 0 auto;
}

.footer .box-contact .link-contact a.button-contact {
	font-size: 13px;
	line-height: 35px;
	display: block;
	width: 100%;
	height: 100%;
	-webkit-transition: opacity .1s linear;
	transition: opacity .1s linear;
	text-align: center;
	color: #fff;
	background: #009794;
}

.footer .box-contact .link-contact a.button-contact:hover {
	opacity: .6;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
}

.footer .box-contact .text-contact {
	width: 100%;
	margin-top: 20px;
	text-align: center;
}

.footer .box-contact .text-contact .info-number {
	font-size: 0;
	height: 24px;
}

.footer .box-contact .text-contact .pict-telephone {
	display: inline-block;
	width: 24px;
	height: 24px;
	margin-right: 8px;
	fill: #b9b9b9;
}

.footer .box-contact .text-contact .number-telephone {
	font-size: 20px;
	font-weight: bold;
	line-height: 24px;
	display: inline-block;
	vertical-align: bottom;
}

.footer .box-contact .text-contact .info-time {
	font-size: 12px;
	margin-top: 10px;
}

.footer .footer-contents-sp {
	display: none;
}

.footer .footer-contents-sp .title-organization {
	font-size: 14px;
	font-weight: bold;
	line-height: 50px;
	width: 100%;
	height: 50px;
	text-align: center;
	color: #fff;
	background: #009794;
}

.footer .footer-contents-sp .navi-footer {
	padding: 10px;
	background: #f9f9f9;
}

.footer .footer-contents-sp .navi-footer ul {
	width: 100%;
	border-top: solid 1px #ddd;
	border-right: solid 1px #ddd;
	*zoom: 1;
}

.footer .footer-contents-sp .navi-footer ul:after {
	display: table;
	clear: both;
	content: '';
}

.footer .footer-contents-sp .navi-footer li {
	float: left;
	width: 50%;
	height: 50px;
	border-bottom: solid 1px #ddd;
	border-left: solid 1px #ddd;
}

.footer .footer-contents-sp .navi-footer li a {
	font-size: 14px;
	font-weight: bold;
	line-height: 50px;
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	background: #fff;
}

.footer .footer-contents-sp .navi-footer li.button-contact a {
	color: #fff;
	background: #f7b844;
}

.footer .footer-contents-sp .navi-footer .navi-bottom {
	margin-top: 10px;
}

.footer .footer-contents-sp .personal-menu a {
	font-size: 14px;
	font-weight: bold;
	line-height: 50px;
	position: relative;
	display: block;
	width: 100%;
	height: 50px;
	text-align: center;
	border: solid 1px #ddd;
}

.footer .footer-contents-sp .personal-menu a:before {
	position: absolute;
	top: 50%;
	right: 20px;
	width: 7px;
	height: 7px;
	margin-top: -5px;
	content: '';
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	border: 0;
	border-top: solid 2px #009794;
	border-right: solid 2px #009794;
}

.footer .footer-contents-sp .personal-menu a:first-child {
	border-bottom: none;
}

.footer .footer-contents-sp .footer-info {
	padding: 15px;
}

.footer .footer-contents-sp .footer-info .box-contact {
	width: 100%;
	padding: 0 0 15px 0;
	border-bottom: solid 1px #ddd;
}

.footer .footer-contents-sp .footer-info .info-number {
	text-align: center;
}

.footer .footer-contents-sp .footer-info .info-number .pict-telephone {
	display: inline-block;
	width: 22px;
	height: 21.5px;
	fill: #b9b9b9;
}

.footer .footer-contents-sp .footer-info .info-number .number-telephone {
	font-size: 20px;
	font-weight: bold;
	display: block;
	margin-top: 10px;
	text-align: center;
}

.footer .footer-contents-sp .footer-info .info-time {
	font-size: 13px;
	display: block;
	margin-top: 8px;
	text-align: center;
}

.footer .footer-contents-sp .footer-info .box-corporate {
	padding-top: 15px;
	*zoom: 1;
}

.footer .footer-contents-sp .footer-info .box-corporate:after {
	display: table;
	clear: both;
	content: '';
}

.footer .footer-contents-sp .footer-info .box-corporate .left-corporate {
	float: left;
}

.footer .footer-contents-sp .footer-info .box-corporate .left-corporate .logo-symbol-wakara {
	display: inline-block;
	float: left;
	width: 40px;
	height: 34px;
	fill: #009794;
}

.footer .footer-contents-sp .footer-info .box-corporate .left-corporate .text-logo {
	font-size: 13px;
	font-weight: bold;
	display: inline-block;
	padding-top: 10px;
	color: #009794;
}

.footer .footer-contents-sp .footer-info .box-corporate .right-corporate {
	font-size: 13px;
	padding-top: 10px;
	text-align: right;
}

.footer .bottom-footer {
	width: 100%;
	height: 60px;
	padding: 0 20px;
	text-align: right;
	background: #343434;
}

.footer .bottom-footer .link-privacypolicy {
	float: left;
}

.footer .bottom-footer .link-privacypolicy a {
	font-size: 12px;
	line-height: 60px;
	color: #fff;
}

.footer .bottom-footer .copyright {
	font-size: 12px;
	line-height: 60px;
	color: #999;
}

.section-media {
	margin-bottom: 60px;
}

.footer {
	position: relative;
}

.scroll-top {
	position: fixed;
	z-index: 999;
	right: 60px;
	bottom: -60px;
	display: inline-block;
	width: 60px;
	height: 60px;
	-webkit-transition: bottom .15s linear;
	transition: bottom .15s linear;
	background: #343434;
}

.scroll-top.is-fixed {
	bottom: 60px;
}

.scroll-top.is-unfixed {
	position: absolute;
	top: -40px;
}

.scroll-top .scroll-top-icon {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: inline-block;
	width: 17px;
	margin: auto;
}

.scroll-top-sp {
	display: none;
}

.scroll-top-sp .scroll-top-icon {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: inline-block;
	width: 12px;
	margin: auto;
}

.hidden-sp {
	display: block;
}

.hidden-pc {
	display: none;
}

.section-thought {
	padding: 4em 0;
}

.section-thought h1 {
	margin-bottom: 25px;
	padding: 0;
}

.section-thought h1:after {
	display: none;
}

.section-thought .thought-inner {
	width: 100%;
	max-width: 1320px;
	margin-right: auto;
	margin-left: auto;
}

.section-thought .c-text {
	text-align: center;
}

.section-thought .link-continue {
	display: block;
	text-align: right;
	color: #009794;
}

.section-thought .thought_banner {
	position: relative;
}

.section-thought .thought_box {
	text-align: center;
}

.section-thought .thought_text img {
	width: 406px;
	height: auto;
}

.section-thought .thought_text span {
	font-size: 16px;
	font-weight: bold;
	display: block;
	margin-bottom: .9em;
	color: #fff;
}

.section-thought .thought_text + .thought_link {
	display: inline-block;
	width: 80px;
	margin-top: 22px;
}

.section-thought .thought_link {
	position: relative;
	cursor: pointer;
}

.section-thought .thought_link img {
	width: 80px;
	height: auto;
}

.section-thought .thought_link:before {
	font-size: 12px;
	font-weight: bold;
	position: absolute;
	top: auto;
	bottom: -30px;
	left: 0;
	display: block;
	width: 100%;
	height: 20px;
	margin: auto;
	content: 'PLAY MOVIE';
	white-space: nowrap;
	color: #fff;
}

@media (min-width: 768px) {

.section-thought .c-text + .thought_banner {
	margin-top: 30px;
}

.section-thought .thought_box {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: auto;
	height: 200px;
	margin: auto;
}

}

@media (max-width: 767px) {

a.button-yellow-arrow,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow,
a.button-orange-arrow,
a.button-yellow-arrow-back,
a.button-orange-arrow-back,
a.button-green-arrow,
a.button-gray-arrow,
a.button-red-pdf {
	font-size: 13px;
	line-height: 35px;
	width: 100%;
	height: 35px;
	border-radius: 17.5px;
}

a.button-yellow-arrow:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow:after,
a.button-orange-arrow:after {
	border-width: 4px 0 4px 4px;
}

a.button-yellow-arrow:hover,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow:hover,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow:hover,
a.button-orange-arrow:hover {
	color: #fff;
	border: none;
	background: #f7b844;
}

a.button-yellow-arrow:hover:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow:hover:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow:hover:after,
a.button-orange-arrow:hover:after {
	border-width: 4px 0 4px 4px;
}

a.button-yellow-arrow:hover:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow:hover:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow:hover:after,
a.button-orange-arrow:hover:after {
	right: 10px;
	width: 0;
	height: 0;
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #fff;
}

a.button-yellow-arrow-back:after,
a.button-orange-arrow-back:after {
	border-width: 4px 4px 4px 0;
}

a.button-yellow-arrow-back:hover,
a.button-orange-arrow-back:hover {
	color: #fff;
	border: none;
	background: #f7b844;
}

a.button-yellow-arrow-back:hover:after,
a.button-orange-arrow-back:hover:after {
	border-width: 4px 4px 4px 0;
}

a.button-yellow-arrow-back:hover:after,
a.button-orange-arrow-back:hover:after {
	left: 10px;
	width: 0;
	height: 0;
	border-width: 5.5px 6px 5.5px 0;
	border-style: solid;
	border-color: transparent #fff transparent transparent;
}

a.button-green-arrow:after {
	border-width: 4px 0 4px 4px;
}

a.button-green-arrow:hover {
	color: #fff;
	border: none;
	background: #009794;
}

a.button-green-arrow:hover:after {
	right: 10px;
	width: 0;
	height: 0;
	border-width: 5.5px 0 5.5px 6px;
	border-style: solid;
	border-color: transparent transparent transparent #fff;
}

a.button-gray-arrow:after {
	border-width: 4px 0 4px 4px;
}

a.button-red-pdf:after {
	right: 6px;
}

a.button-red-pdf:hover {
	color: #fff;
	border: none;
	background: #cd1e1e;
}

a.button-red-pdf:hover:after {
	right: 7px;
	width: 24px;
	height: 24px;
	background-image: url('../images/service-pl-sugaku/sprite-s72fc218870.png');
	background-repeat: no-repeat;
	background-position: 0 -129px;
	-webkit-background-size: 24px auto;
	background-size: 24px auto;
}

a.arrow-triangle-after:after {
	border-width: 4.5px 0 4.5px 5px;
}

a.arrow-text-before:before {
	border-width: 4.5px 0 4.5px 5px;
}

a.arrow-triangle-corporate:after {
	border-width: 4.5px 0 4.5px 5px;
}

a.blank-white-after {
	padding-right: 16px;
}

a.blank-white-after:after {
	width: 11px;
	height: 10px;
	background-image: url('../images/service-pl-sugaku/sprite-s72fc218870.png');
	background-repeat: no-repeat;
	background-position: 0 0;
	-webkit-background-size: 24px auto;
	background-size: 24px auto;
}

a.blank-green-after {
	padding-right: 16px;
}

a.blank-green-after:after {
	width: 11px;
	height: 10px;
	background-image: url('../images/service-pl-sugaku/sprite-s72fc218870.png');
	background-repeat: no-repeat;
	background-position: -11px 0;
	-webkit-background-size: 24px auto;
	background-size: 24px auto;
}

.title-symbol {
	font-size: 17px;
	line-height: 23px;
	margin-bottom: 15px;
	padding-bottom: 22px;
}

.title-symbol:after {
	-webkit-background-size: auto 11px;
	background-size: auto 11px;
}

.title-symbol .title-en,
.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer .name-en {
	font-size: 14px;
	margin-bottom: 7px;
}

.title-symbol .title-en:before,
.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer .name-en:before,
.title-symbol .title-en:after,
.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer .name-en:after {
	font-size: 9px;
	vertical-align: 1.5px;
}

.title-symbol .title-jp {
	line-height: 23px;
}

.title-green-bold {
	font-size: 15px;
	line-height: 20px;
	margin-bottom: 20px;
}

.title-horizon-line {
	font-size: 14px;
	line-height: 19px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 20px;
	white-space: normal;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.title-horizon-line:before,
.title-horizon-line:after {
	display: inline-block;
	width: auto;
	content: '';
	border-top: 1px solid #ddd;
	background: none;
	-webkit-box-flex: 1;
	-webkit-flex-grow: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}

.title-horizon-line:before {
	margin-right: .5em;
	border-right: none;
}

.title-horizon-line:after {
	margin-left: .5em;
	border-left: none;
}

p.text-center {
	margin-bottom: 15px;
	text-align: left;
}

p.text-small-gray {
	font-size: 12px;
	line-height: 1.8;
}

.box-gray {
	padding: 15px;
}

.column-2 {
	display: block;
}

.column-2 .box-column {
	display: block;
	width: 100%;
	margin-top: 15px;
}

.column-2 .box-column:first-child {
	margin-top: 0;
}

.column-2-separate {
	display: block;
}

.column-2-separate .box-column {
	display: block;
	width: 100%;
	margin-top: 20px;
	padding: 15px 15px 0;
	border-top: solid 1px #ddd;
	border-left: none;
}

.column-2-separate .box-column:first-child {
	padding-top: 0;
	border-top: none;
}

.column-2-frame {
	display: block;
}

.column-2-frame .box-column {
	display: block;
	width: 100%;
	padding: 15px;
	border-top: solid 1px #ddd;
	border-left: none;
}

.column-2-frame .box-column:first-child {
	border-top: none;
}

.image-left .box-image {
	float: none;
	margin: 0 0 15px;
	text-align: center;
}

.image-left .box-text {
	padding-top: 0;
}

.table-layout {
	line-height: 1.8;
}

.table-layout .tr {
	display: block;
}

.table-layout .tr .th {
	display: block;
	width: 100%;
	padding: 10px 15px;
	border: none;
}

.table-layout .tr .td {
	display: block;
	padding: 10px 0 15px;
}

.table-layout.is-thead {
	display: table;
}

.table-layout.is-thead .tr .th {
	display: table-cell;
	width: 24%;
	padding: 10px;
	border-top: solid 1px #ddd;
}

.table-layout.is-thead .tr .td {
	display: table-cell;
	padding: 10px;
}

.table-layout.is-thead .tr:first-child .th {
	display: table-cell;
	padding: 10px;
	border-top: solid 1px #ddd;
}

.table-layout.is-plain .tr .th {
	display: block;
	width: 100%;
	padding: 0 5px;
	border: none;
}

.table-layout.is-plain .tr .td {
	display: block;
	padding: 10px 0 20px;
}

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

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

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

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

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

.float-right-pc {
	float: none;
}

.float-left-pc {
	float: none;
}

.return-pc:after {
	content: none;
}

.smooth-scroll {
	overflow: scroll;
	width: 100%;
	-webkit-overflow-scrolling: touch;
}

.header-fixed {
	display: none;
}

.mainvisual {
	height: auto;
	background: none;
}

.mainvisual .mainvisual-sp {
	position: relative;
	width: 100%;
	height: 160px;
	background: url('../images/service-pl-sugaku/mainvisual.jpg') center center no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
}

.mainvisual .catch-copy {
	top: 25px;
}

.mainvisual .catch-copy .pict-mainvisual {
	width: 50px;
}

.mainvisual .catch-copy .catch-copy-en {
	font-size: 10px;
	line-height: 1.5;
	margin-top: 12px;
}

.mainvisual .catch-copy .catch-copy-jp {
	font-size: 22px;
	margin-top: 12px;
	letter-spacing: 0;
}

.mainvisual .bottom-mainvisual {
	position: static;
	bottom: auto;
	height: auto;
	padding: 20px 15px 80px;
	opacity: 1;
	filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
}

.mainvisual .bottom-mainvisual p {
	font-size: 13px;
	font-weight: bold;
	line-height: 1.8;
}

.section-feature {
	padding: 0 15px 15px;
}

.section-feature .feature-inner:before {
	top: 5px;
	left: 5px;
	border-width: 13px 13px 0 0;
}

.section-feature .feature-inner:after {
	right: 5px;
	bottom: 5px;
	border-width: 0 0 13px 13px;
}

.section-feature .feature-inner {
	display: block;
	margin-top: -55px;
	padding: 15px;
	background: #fff;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.section-feature .feature-contents {
	display: block;
	background: #fff;
}

.section-feature .feature-content {
	width: auto;
	max-width: initial;
	margin-top: 20px;
	margin-left: 0;
	padding-bottom: 20px;
}

.section-feature .feature-content-title {
	font-size: 15px;
}

.section-feature .feature-content-picture {
	margin-top: 15px;
}

.section-feature .feature-content-text {
	margin-top: 15px;
}

.section-student {
	padding: 0 15px 15px;
}

.section-student .student-inner:before {
	top: 5px;
	left: 5px;
	border-width: 13px 13px 0 0;
}

.section-student .student-inner:after {
	right: 5px;
	bottom: 5px;
	border-width: 0 0 13px 13px;
}

.section-student .student-inner {
	display: block;
	padding: 15px;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.section-student .student-image {
	width: 175px;
	margin: 10px auto 0;
}

.section-student .student-problem {
	position: relative;
	top: 0;
	height: 174px;
}

.section-student .student-problem.is-left {
	left: 0;
}

.section-student .student-problem.is-right {
	top: -22px;
	right: 0;
	margin-bottom: -22px;
}

.section-student .student-problem-baloon {
	width: 130px;
	min-width: 0;
}

.section-student .student-problem-baloon.problem-1 {
	top: 75px;
	left: -10px;
}

.section-student .student-problem-baloon.problem-2 {
	top: 0;
	right: 0;
	left: 0;
	margin: auto;
}

.section-student .student-problem-baloon.problem-3 {
	top: 75px;
	right: -10px;
	left: auto;
}

.section-student .student-problem-baloon.problem-4 {
	top: 75px;
	left: -10px;
}

.section-student .student-problem-baloon.problem-5 {
	top: 0;
	right: 0;
	left: 0;
	margin: auto;
}

.section-student .student-problem-baloon.problem-6 {
	top: 75px;
	right: -10px;
	left: auto;
}

.section-student .student-problem-text {
	font-size: 12px;
	height: 29px;
}

.service-flow .flow-steps {
	display: block;
	padding-top: 0;
}

.service-flow .flow-steps li {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	padding: 30px 0 20px;
	text-align: left;
	border-right: none;
	border-bottom: none;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.service-flow .flow-steps li:first-child {
	padding-top: 0;
	border-top: none;
	border-left: none;
}

.service-flow .flow-steps li:last-child {
	border-bottom: 1px solid #ddd;
}

.service-flow .flow-steps li:before,
.service-flow .flow-steps li:after {
	top: 100%;
	left: 50%;
}

.service-flow .flow-steps li:before {
	margin-top: auto;
	margin-left: -20px;
	border-width: 15px 20px 0 20px;
	border-color: rgba(221, 221, 221, 0);
	border-top-color: #ddd;
}

.service-flow .flow-steps li:after {
	margin-top: auto;
	margin-left: -18px;
	border-width: 13px 18px 0 18px;
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #fff;
}

.service-flow .flow-steps .pict-step {
	display: none;
}

.service-flow .flow-steps .number-step {
	line-height: 15px;
	width: 50px;
	height: 15px;
}

.service-flow .flow-steps .title-step {
	font-size: 14px;
	font-size: .875rem;
	line-height: 15px;
	margin: 0 0 0 10px;
}

.service-flow .flow-steps .description-step {
	font-size: 12px;
	font-size: .75rem;
	width: 100%;
	margin-top: 5px;
}

.service-flow .flow-contact-wrapper {
	margin-top: 30px;
	padding: 0;
}

.section-class {
	padding: 20px 15px 0;
}

.section-class .class-box {
	margin-top: 20px;
}

.section-review {
	margin: 0;
	padding: 25px 15px;
}

.section-review .review-table {
	margin-top: 20px;
}

.section-review .review-table .review-row {
	display: block;
}

.section-review .review-table .review-column {
	display: block;
	padding: 15px 25px 15px 35px;
}

.section-review .review-table .review-column.column-2 {
	width: 100%;
}

.section-review .review-table .review-link:hover .review-link-title {
	text-decoration: underline;
}

.section-review .review-table .review-link-title {
	font-size: 14px;
}

.section-review .review-table .review-person {
	font-size: 12px;
}

.section-review .review-table .review-pict {
	top: 10px;
	left: 10px;
	width: 21px;
}

.section-review .review-link-more {
	margin-top: 20px;
}

.section-media {
	margin: 0;
	padding: 25px 0;
}

.section-media .inner-section {
	padding: 0;
	background: none;
}

.section-media .title-media {
	font-size: 14px;
	padding: 0 15px;
}

.section-media .body-media {
	margin-top: 20px;
	padding: 0 15px;
}

.section-media .body-media ul {
	border: solid 1px #ddd;
}

.section-media .body-media li {
	margin: 0;
	border-top: solid 1px #ddd;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.section-media .body-media li:first-child {
	border-top: none;
}

.section-media .body-media li a {
	display: block;
	padding: 15px;
}

.section-media .body-media li a:after {
	display: none;
	content: none;
}

.section-media .body-media li a .category-post {
	display: inline-block;
	width: 55px;
	height: 20px;
	margin-right: 10px;
	padding: 0;
}

.section-media .body-media li a .category-post .mark-category {
	line-height: 1.8;
	width: 100%;
	height: 100%;
}

.section-media .body-media li a .date-post {
	font-size: 13px;
	line-height: 1.8;
	display: inline-block;
	width: auto;
}

.section-media .body-media li a .title-post {
	font-size: 13px;
	line-height: 1.8;
	display: inline-block;
	margin-top: 10px;
}

.section-media .link-continue {
	margin: 15px 15px 0;
}

.wrapper-content-title {
	display: table;
	height: 110px;
	background: url(../images/service-pl-sugaku/bg-content-title-sp.png) center top no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
}

.wrapper-content-title h1.content-title {
	font-size: 20px;
	display: table-cell;
	padding: 0 15px;
	padding: 0;
	vertical-align: middle;
}

.container-main {
	padding: 0;
	background: none;
}

.inner-container:before {
	top: 5px;
	left: 5px;
	border-width: 13px 13px 0 0;
}

.inner-container:after {
	top: 5px;
	right: 5px;
	border-width: 0 13px 13px 0;
}

.inner-container {
	top: auto;
	margin-bottom: 0;
	padding: 25px 0 0;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.inner-container p,
.inner-container ul,
.inner-container dl {
	margin-bottom: 15px;
}

.inner-container .table-layout {
	margin-bottom: 15px;
}

.inner-container .table-layout p,
.inner-container .table-layout ul,
.inner-container .table-layout dl {
	margin-bottom: 0;
}

.inner-container .catch-copy {
	font-size: 22px;
	line-height: 33px;
	padding: 0 15px;
}

.inner-container .lead-copy {
	padding: 0 15px;
}

.inner-container .head-content-sp {
	padding: 0 15px;
}

.inner-container .body-content-sp {
	margin-top: 15px;
	padding: 15px;
	background: url(../images/service-pl-sugaku/pattern-slash.gif) left top repeat;
}

.inner-container .body-content-sp .inner-body-sp {
	padding: 15px;
	border: solid 1px #ddd;
	background: #fff;
}

.inner-container .bottom-contact {
	margin: 0;
	padding: 30px 15px;
	border: none;
	border-top: 1px solid #ddd;
}

.inner-container .bottom-contact p.text-center {
	margin-top: 20px;
}

.inner-container .bottom-contact .contact-button {
	width: 100%;
	margin-top: 20px;
}

.inner-container .bottom-contact a {
	font-size: 13px;
	width: 50%;
}

.characteristics {
	padding-bottom: 0;
}

.characteristics .characteristics-header {
	margin-top: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.characteristics .characteristics-header .header-headline {
	font-size: 20px;
	font-size: 1.25rem;
}

.characteristics .characteristics-header .header-subheadline {
	font-size: 15px;
	font-size: .9375rem;
	margin-top: 20px;
	text-align: left;
}

.characteristics .characteristics-header .header-body {
	line-height: 1.85;
	margin-top: 15px;
	text-align: left;
}

.characteristics .characteristics-policy {
	padding-top: 30px;
}

.characteristics .policy-message {
	padding: 0;
}

.characteristics .policy-points {
	margin-top: 0;
	padding-bottom: 25px;
}

.characteristics .policy-point {
	width: 170px;
	height: 170px;
	margin: 10px auto 0;
}

.characteristics .policy-point:before {
	width: 160px;
	height: 160px;
}

.characteristics .policy-point-pict {
	bottom: 66px;
}

.characteristics .policy-point-title {
	font-size: 14px;
	font-size: .875rem;
	bottom: 35px;
}

.characteristics .characteristics-instructor {
	margin-top: 15px;
	padding-bottom: 40px;
}

.characteristics .instructor-headline {
	font-size: 20px;
	font-size: 1.25rem;
	margin-top: 15px;
}

.characteristics .instructor-body {
	padding: 0;
}

.characteristics .instructor-link {
	margin-top: 25px;
}

.characteristics .characteristics-choosable {
	margin-top: 15px;
}

.characteristics .choosable-points {
	margin-top: 20px;
	padding: 0;
}

.characteristics .choosable-point {
	float: none;
	width: 100%;
	margin: 10px 0 0;
}

.characteristics .choosable-title {
	height: 75px;
}

.characteristics .choosable-title:before,
.characteristics .choosable-title:after {
	width: 10px;
	height: 10px;
}

.characteristics .choosable-title-inner:before,
.characteristics .choosable-title-inner:after {
	width: 10px;
	height: 10px;
}

.characteristics .choosable-title-text {
	font-size: 14px;
	font-size: .875rem;
}

.characteristics .choosable-body {
	margin-top: 20px;
	padding: 0;
}

.characteristics .characteristics-price {
	padding: 15px;
}

.characteristics .price-message {
	margin-bottom: 15px;
	text-align: left;
}

.characteristics .price-info {
	margin-bottom: 30px;
}

.characteristics .price-info-header {
	padding: 10px;
}

.characteristics .price-ticket-title {
	float: none;
	margin-right: 0;
	padding: 0;
	text-align: center;
	border-right: none;
}

.characteristics .ticket-title-text {
	font-size: 15px;
	line-height: 20px;
	margin-right: 2px;
}

.characteristics .ticket-title-pict {
	width: 34px;
}

.characteristics .price-tiket-price {
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.3;
}

.characteristics .price-tiket-price .text-large {
	font-size: 20px;
	font-size: 1.25rem;
}

.characteristics .price-info-body {
	padding: 10px;
}

.characteristics .price-note li {
	font-size: 12px;
	font-size: .75rem;
}

.characteristics .price-case {
	margin-top: 15px;
	padding: 15px;
}

.characteristics .case-header {
	padding-bottom: 15px;
}

.characteristics .case-label {
	line-height: 28px;
	display: block;
	float: none;
	width: 100%;
	height: 28px;
	margin-right: 0;
}

.characteristics .case-label-text {
	font-size: 13px;
	font-size: .8125rem;
	display: inline;
}

.characteristics .case-label-num {
	font-size: 18px;
	font-size: 1.125rem;
	margin-top: 0;
	margin-left: .5em;
}

.characteristics .case-headline {
	float: none;
	margin-left: 0;
	padding-left: 0;
}

.characteristics .case-headline-sub {
	font-size: 13px;
	font-size: .8125rem;
	line-height: 1.5;
	margin-top: 15px;
}

.characteristics .case-headline-main {
	font-size: 17px;
	font-size: 1.0625rem;
	line-height: 1.35;
}

.characteristics .case-body {
	padding-top: 15px;
}

.characteristics .case-plan {
	font-size: 13px;
	font-size: .8125rem;
}

.characteristics .case-price {
	font-size: 17px;
	font-size: 1.0625rem;
	line-height: 1.35;
	margin-top: 5px;
}

.characteristics .case-price .text-large {
	font-size: 20px;
	font-size: 1.25rem;
}

.characteristics .case-message {
	margin: 15px 0 0;
}

.characteristics .characteristics-school {
	margin-top: 40px;
}

.characteristics .table-layout.school-list {
	margin-top: 30px;
}

.characteristics .table-layout.school-list .tr .th {
	font-size: 13px;
	font-size: .8125rem;
	border-top: 1px solid #ddd;
}

.characteristics .table-layout.school-list .tr .td .school-detail:after {
	border-width: 4px 0 4px 4px;
}

.characteristics .table-layout.school-list .tr .td {
	padding: 10px 15px;
}

.characteristics .table-layout.school-list .tr .td:before {
	content: none;
}

.characteristics .table-layout.school-list .tr .td .school-detail {
	position: static;
	display: block;
	width: auto;
	margin: 15px 0 0;
}

.characteristics .characteristics-faq {
	margin-top: 30px;
}

.course .course-header {
	margin-bottom: 0;
}

.course .course-index {
	display: block;
	max-width: initial;
	margin-bottom: 0;
}

.course .course-box {
	width: auto;
	margin-top: 25px;
}

.course .course-box:first-child {
	margin-top: 0;
}

.course .course-box .course-box-inner {
	padding: 25px 10px 65px;
}

.course .course-box .course-title {
	font-size: 16px;
	line-height: 22px;
	padding-left: 22px;
	background-position: left 6px;
	-webkit-background-size: auto 11px;
	background-size: auto 11px;
}

.course .course-box .course-description {
	margin: 20px 0 0;
	padding: 10px;
}

.course .course-box .course-student {
	padding: 10px;
}

.course .course-box .student-habit {
	font-size: 12px;
	margin: 10px 0 0;
}

.course .course-box .course-link-detail {
	bottom: 15px;
	padding: 0 10px;
}

.course-single {
	max-width: initial;
	margin-bottom: 0;
}

.course-single .course-single-body {
	margin-top: 0;
}

.course-single .course-single-body h3 {
	font-size: 15px;
	line-height: 20px;
	margin-bottom: 20px;
}

.course-single .course-single-body h4 {
	font-size: 14px;
	line-height: 19px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 20px;
	white-space: normal;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.course-single .course-single-body h4:after,
.course-single .course-single-body h4:before {
	display: inline-block;
	width: auto;
	content: '';
	border-top: 1px solid #ddd;
	background: none;
	-webkit-box-flex: 1;
	-webkit-flex-grow: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}

.course-single .course-single-body h4:before {
	margin-right: .5em;
	border-right: none;
}

.course-single .course-single-body h4:after {
	margin-left: .5em;
	border-left: none;
}

.course-single .course-single-body .text-small {
	font-size: 11px;
}

.course-single .course-single-table table {
	line-height: 1.8;
	margin-bottom: 15px;
}

.course-single .course-single-table table th {
	padding: 10px;
}

.course-single .course-single-table table td {
	padding: 10px;
}

.course-single .course-single-table table td .table-list {
	display: block;
}

.course-single .course-single-table table td .table-list dl {
	display: block;
}

.course-single .course-single-table table td .table-list dt,
.course-single .course-single-table table td .table-list dd {
	display: block;
}

.course-single .course-single-table table thead th {
	padding: 10px;
}

.course-single .course-single-table.column-4 table tr:first-child th:first-child {
	width: 75px;
}

.course-single .course-single-table.column-4 table tr:first-child th:nth-child(2) {
	width: 170px;
}

.course-single .course-single-table.column-4 table tr:first-child th:nth-child(3) {
	width: 250px;
}

.course-single .course-single-table.column-4 table tr:first-child th:last-child {
	width: 300px;
}

.course-single .course-single-class {
	margin-top: 0;
}

.course-single .course-single-class .class-inner {
	padding: 20px 15px;
}

.course-single .course-single-class .class-box {
	margin-top: 15px;
}

.course-single .course-single-student {
	margin-top: 30px;
}

.course-single .course-single-student .student-box {
	margin: 15px;
	padding: 15px;
}

.course-single .course-single-student .student-comment {
	font-size: 13px;
	margin: 20px 0 0;
	padding-left: 30px;
	background-position: 0 4px;
	-webkit-background-size: 20px auto;
	background-size: 20px auto;
}

.voice .voice-index {
	display: block;
	max-width: initial;
}

.voice .voice-box {
	width: auto;
	max-width: initial;
	margin: 15px 0 0;
}

.voice .voice-box:first-child {
	margin-top: 0;
}

.voice .box-inner {
	padding: 0 15px 65px;
}

.voice .voice-course {
	font-size: 13px;
}

.voice .voice-title {
	font-size: 18px;
	line-height: 1.5;
	margin-top: 15px;
}

.voice .voice-person {
	font-size: 13px;
	margin-top: 15px;
}

.voice .voice-comment {
	min-height: 0;
	margin: 30px 0 0;
	padding: 30px 15px 15px;
}

.voice .voice-comment:before {
	width: 40px;
	height: 40px;
}

.voice .voice-link-detail {
	bottom: 15px;
	padding: 0 10px;
}

.voice-single {
	max-width: initial;
}

.voice-single .voice-single-header .header-meta {
	text-align: center;
}

.voice-single .voice-single-header .header-summary {
	max-width: initial;
	margin-top: 20px;
	text-align: center;
}

.voice-single .voice-single-body {
	margin-top: 0;
	padding-bottom: 20px;
}

.voice-single .voice-single-body h3 {
	font-size: 15px;
	line-height: 20px;
	margin-bottom: 20px;
}

.voice-single .voice-single-body h4 {
	font-size: 14px;
	line-height: 19px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 20px;
	white-space: normal;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

.voice-single .voice-single-body h4:after,
.voice-single .voice-single-body h4:before {
	display: inline-block;
	width: auto;
	content: '';
	border-top: 1px solid #ddd;
	background: none;
	-webkit-box-flex: 1;
	-webkit-flex-grow: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}

.voice-single .voice-single-body h4:before {
	margin-right: .5em;
	border-right: none;
}

.voice-single .voice-single-body h4:after {
	margin-left: .5em;
	border-left: none;
}

.voice-single .voice-single-body .text-small {
	font-size: 11px;
}

.voice-single .voice-single-link-back {
	margin-bottom: 0;
}

.lecturer .inner-container .index-lecturer .lead-copy {
	margin: 0 0 15px;
}

.lecturer .inner-container .index-lecturer .index-list {
	padding: 15px 15px 15px;
	background: url(../images/service-pl-sugaku/pattern-slash.gif) left top repeat;
}

.lecturer .inner-container .index-lecturer .index-list ul {
	margin-bottom: 0;
	padding-bottom: 25px;
	border: solid 1px #ddd;
	background: #fff;
}

.lecturer .inner-container .index-lecturer .index-list li {
	float: none;
	width: 100%;
	margin: 25px 0 0;
	padding-right: 0;
}

.lecturer .inner-container .index-lecturer .index-list li a {
	padding: 0 15px 0;
	-webkit-box-shadow: none;
	box-shadow: none;
}

.lecturer .inner-container .index-lecturer .index-list .picture-lecturer {
	width: 125px;
	height: 125px;
}

.lecturer .inner-container .index-lecturer .index-list .name-lecturer {
	top: -15px;
	width: 115px;
	height: 25px;
}

.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow {
	line-height: 25px;
	height: 25px;
	border-radius: 12.5px;
}

.lecturer .inner-container .index-lecturer .index-list .comment-lecturer {
	line-height: 1.8;
	height: auto;
	margin-top: 0;
	padding: 0;
}

.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer {
	margin-top: 25px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer .name-jp {
	font-size: 20px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .name-lecturer .name-en {
	margin: 10px 0 0;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer {
	display: block;
	width: auto;
	margin: 25px 15px 0;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .picture-info {
	display: block;
	width: 100%;
	height: auto;
	margin-right: 0;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .picture-info:before {
	display: block;
	padding-top: 100%;
	content: '';
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info {
	display: block;
	float: none;
	width: 100%;
	padding: 15px 0 0 0;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info .info-job {
	font-size: 14px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info .company {
	margin-right: 1em;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .text-info .profile-list {
	font-size: 13px;
	line-height: 1.8;
	margin-top: 10px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .link-sns {
	position: static;
	bottom: auto;
	left: auto;
	height: 40px;
	margin-top: 10px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .link-sns .button-sns {
	width: 50%;
	height: 40px;
	margin-right: 0;
	padding: 0 2px;
}

.lecturer .inner-container .lecturer-detail .profile-summary .profile-lecturer .link-sns .button-sns a {
	font-size: 13px;
	line-height: 40px;
}

.lecturer .inner-container .lecturer-detail .profile-description {
	margin-top: 25px;
	padding: 0 15px;
}

.lecturer .inner-container .lecturer-detail .picture-wide {
	margin-top: 25px;
}

.lecturer .inner-container .lecturer-detail .link-lecturer {
	margin: 25px 15px;
}

.lecturer .inner-container .lecturer-detail .link-lecturer a {
	width: 100%;
}

.faq {
	padding-bottom: 0;
}

.faq .list-faq {
	margin-top: 25px;
}

.faq .list-faq .question {
	display: block;
	margin-top: 25px;
}

.faq .list-faq .question .label-q {
	font-size: 13px;
	line-height: 30px;
	display: block;
	width: 100%;
	height: 30px;
	border: none;
}

.faq .list-faq .question .text-q {
	font-size: 16px;
	line-height: 24px;
	display: block;
	padding: 20px 15px 0;
	border: none;
}

.faq .list-faq .answer {
	margin: 15px 0 0;
	padding: 15px 0 0;
	border-top: solid 1px #ddd;
}

.footer .head-footer {
	display: none;
}

.footer .access-footer {
	padding: 20px 15px;
}

.footer .access-footer-title {
	font-size: 14px;
}

.footer .access-footer-contents {
	display: block;
	margin-top: 15px;
}

.footer .access-footer-content {
	display: block;
	width: auto;
	max-width: initial;
	margin-top: 20px;
	margin-left: 0;
}

.footer .access-footer-text {
	width: 100%;
	margin-top: 10px;
}

.footer .access-footer-button {
	font-size: 12px;
	line-height: 40px;
	position: relative;
	display: block;
	width: 100%;
	height: 40px;
	margin-top: 10px;
}

.footer .body-footer {
	display: none;
}

.footer .footer-contents-sp {
	display: block;
	width: 100%;
}

.footer .bottom-footer {
	height: auto;
	padding: 20px 10px;
	text-align: center;
}

.footer .bottom-footer .link-privacypolicy {
	float: none;
}

.footer .bottom-footer .link-privacypolicy a {
	line-height: 1.0;
}

.footer .bottom-footer .copyright {
	line-height: normal;
	margin-top: 15px;
}

.section-media {
	margin-bottom: 0;
}

.scroll-top {
	display: none;
}

.scroll-top-sp {
	position: fixed;
	z-index: 1000;
	right: 10px;
	bottom: -40px;
	display: inline-block;
	width: 40px;
	height: 40px;
	-webkit-transition: bottom .15s linear;
	transition: bottom .15s linear;
	background: #343434;
}

.hidden-sp {
	display: none;
}

.hidden-pc {
	display: block;
}

.section-thought {
	padding: 3em 0 2.5em;
}

.section-thought .c-text {
	padding: 0 20px;
	text-align: left;
}

.section-thought .c-text + .thought_img {
	margin-top: 15px;
}

.section-thought .link-continue {
	margin-top: -10px;
	padding-right: 4%;
}

.section-thought .thought_banner {
	display: block;
	overflow: hidden;
	width: 93%;
	margin: auto;
	padding-top: 50%;
}

.section-thought .thought_banner > img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	max-width: 200%;
	max-height: 200%;
	margin: auto;
	object-fit: contain;
}

.section-thought .thought_box {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 75%;
	height: 120px;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.section-thought .thought_text span {
	font-size: 12px;
}

.section-thought .thought_link img {
	width: 30px;
}

.section-thought .thought_link:before {
	font-size: 10px;
}

}

@media (max-width: 767px) and (max-width: 767px) {

a.button-yellow-arrow:hover:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-orange-arrow:hover:after,
.lecturer .inner-container .index-lecturer .index-list .name-lecturer .button-yellow-arrow:hover:after,
a.button-orange-arrow:hover:after {
	border-width: 4px 0 4px 4px;
}

a.button-yellow-arrow-back:hover:after,
a.button-orange-arrow-back:hover:after {
	border-width: 4px 4px 4px 0;
}

a.button-green-arrow:hover:after {
	border-width: 4px 0 4px 4px;
}

}

@media (max-width: 320px) {

.section-thought .thought_box {
	height: 90px;
}

.section-thought .thought_link:before {
	display: none;
}

}

