@charset "UTF-8";
/* @font-face {
	font-weight : normal;
	font-style : normal;
	font-family : "yugoth";
	src : url("../fonts/YuGothM.eot");
	src : url("../fonts/YuGothM.ttc") format("truetype"),
	url("../fonts/YuGothM.woff") format("woff");
}

@font-face {
	font-weight : bold;
	font-style : normal;
	font-family : "yugoth";
	src : url("../fonts/YuGothB.eot");
	src : url("../fonts/YuGothB.ttc") format("truetype"),
	url("../fonts/YuGothB.woff") format("woff");
}

@font-face {
	font-style : normal;
	font-family : "yugothBlank";
	src : url("../fonts/YuGothBlank.eot");
	src : url("../fonts/YuGothBlank.ttc") format("truetype"),
	url("../fonts/YuGothBlank.woff2") format("woff2"),
	url("../fonts/YuGothBlank.woff") format("woff");
}


@font-face {
	font-weight : normal;
	font-style : normal;
	font-family : "hiragino";
	src : url("../fonts/hiragino_kakugo_W3.otf") format("opentype"),
	url("../fonts/hiragino_kakugo_W3.woff") format("woff");
}

@font-face {
	font-weight : bold;
	font-style : normal;
	font-family : "hiragino";
	src : url("../fonts/hiragino_kakugo_W6.otf") format("opentype"),
	url("../fonts/hiragino_kakugo_W6.woff") format("woff");
} */

* {
	box-sizing: border-box;
}

.wrap {
	overflow: hidden;
	margin: 0 auto;
	max-width: 1920px;
	width: 100%;
}

html {
	letter-spacing: 0.1em;
	font-size: 62.5%;
	font-family: "yugothBlank", "yugoth", sans-serif;
	/* font-family : "游ゴシック", sans-serif; */
}

html *.hiragino {
	font-family: "hiragino";
}

html *.hiragino.normal {
	font-weight: normal;
}

body {
	position: relative;
	font-size: 1.4rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}

a {
	text-decoration: none;
}

span.red {
	color: #e83820;
}

/* padding */
.pb20 {
	padding-bottom: 20px;
}

.pb40 {
	padding-bottom: 40px;
}

.pb60 {
	padding-bottom: 60px;
}

.pb80 {
	padding-bottom: 80px;
}

.pb100 {
	padding-bottom: 100px;
}

.pt20 {
	padding-top: 20px;
}

.pt40 {
	padding-top: 40px;
}

.pt60 {
	padding-top: 60px;
}

.pt80 {
	padding-top: 80px;
}

.pt100 {
	padding-top: 100px;
}



/* margin */
.mb20 {
	margin-bottom: 20px;
}

.mb40 {
	margin-bottom: 40px;
}

.mb60 {
	margin-bottom: 60px;
}

.mb80 {
	margin-bottom: 80px;
}

.mtb00 {
	margin-bottom: 100px;
}





.center {
	text-align: center;
}

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

.text_box {
	line-height: 230%;
}

.br_576 {
	display: none;
}

.no_shadow {
	box-shadow: none !important;
}

.button_style_red,
.button_style_red a {
	display: flex;
	align-items: center;
	justify-content: center;
}

.button_style_red {
	margin-bottom: 10px;
}

.button_style_red a {
	max-width: 500px;
	width: 100%;
	height: 40px;
	border-radius: 10px;
	background: #e83820;
	color: #ffffff;
	text-align: center;
	letter-spacing: 0.1em;
	font-weight: bold;
	font-size: 2.0rem;
	transition: background-color 0.5s;
}

.button_style_red a:hover {
	border: 1px solid #e83820;
	background: #ffffff;
	color: #e83820;
}

.break_box img.line_type2 {
	max-width: 350px;
	width: 50%;
}

/*img responsive*/
.img_pc {
	display: inline;
}

.img_768 {
	display: none;
}

/*toppage*/

/*headerArea*/
header {
	position: fixed;
	z-index: 9999;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0;
	width: 100%;
	background: #e2e7df;
	height: 120px;
}

.header_left {
	display: flex;
	align-items: center;
	/* height: 60px; */
	/* width: 100%; */
	height: 100%;
}

.header_left img {
	/*width: 182px;*/
	width: 260px;

}

.header_right {
	display: flex;
	align-items: center;
	padding-right: 30px;
	height: 60px;
}

header ul {
	display: flex;
}

header nav img {
	display: none;
}

.sp_dis {
	display: none;
}

header a {
	margin-left: 50px;
	color: #303030;
	text-decoration: none;
	font-weight: bold;
	font-size: 1.5rem;
}

header a.link {
	position: relative;
	height: 17px;
}

header nav {
	/* height: 17px; */
}

header a.link::after {
	position: absolute;
	bottom: -10px;
	left: 0;
	z-index: 5;
	width: 0;
	height: 3px;
	background-color: #97b265;
	content: "";
}

header a.link:hover::after {
	width: 100%;
	transition: 0.3s;
}

a img {
	cursor: pointer;
	transition: opacity 0.5s;
}

a img:hover {
	opacity: 0.5;
}

/*ログインアイコン*/
.login_icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 112px;
	height: 26px;
	border: 1px solid #e83820;
	border-radius: 5px;
	transition: 0.5s;
}

.login_icon:hover {
	background: #e83820;
	color: #ffffff;
}

.login_icon i {
	margin-right: 5px;
	font-size: 1.6rem;
}

.login_icon span {
	letter-spacing: 0.1em;
	font-size: 1.5rem;
	font-family: "Century Gothic";
}

.header_right .header_icon {
	display: block;
	margin: 0 auto 5px;
}

.header_right ul {
	align-items: center;
}

.header_right .header_icon_box {
	margin-left: 30px;
}

.header_icon_box a {
	margin-left: 0;
}

/*タブ*/
.tab_box {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.tab_box label {
	cursor: pointer;
}

.tab_style {
	display: flex;
	overflow: hidden;
	width: 126px;
	border: 1px solid #f7f3f7;
	border-radius: 10px;
}

#weekly,
#monthly {
	display: none;
}

#weekly+label,
#monthly+label {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 63px;
	height: 39px;
	background: #ffffff;
	color: #636563;
	font-weight: bold;
	font-size: 1.4rem;
}

#weekly:checked+label,
#monthly:checked+label {
	background: #f7f7f7;
	color: #000000;
}

/*ハンバーガー*/
header input {
	display: none;
}

.navi-btn {
	position: relative;
	z-index: 10000;
	display: none;
	width: 50px;
	height: 62px;
	cursor: pointer;
}

.navi-btn span {
	position: absolute;
	z-index: 10000;
	display: block;
	width: 40px;
	height: 5px;
	border-radius: 25%;
	background: #e83820;
	text-align: center;
	transition: all 0.3s;
}

.navi-btn span:nth-of-type(2) {
	top: 18px;
	opacity: 1;
	transition: all 0.3s;
}

.navi-btn span:last-of-type {
	top: 36px;
}

.navi-btn p {
	position: absolute;
	top: 45px;
	left: -7px;
	z-index: 10000;
	color: #e83820;
	text-align: center;
	font-weight: bold;
	font-size: 1.8rem;
	font-family: "Century Gothic";
}

#navi-btn:checked+.navi-btn span:first-of-type {
	transform: rotate(-45deg) translateY(16px) translateX(-13px);
}

#navi-btn:checked+.navi-btn span:nth-of-type(2) {
	opacity: 0;
	transform: translateX(0);
}

#navi-btn:checked+.navi-btn span:last-of-type {
	transform: rotate(45deg) translateY(-13px) translateX(-9px);
}


.navi-menu {
	position: fixed;
	top: 80px;
	z-index: 100;
	display: none;
	overflow-y: auto;
	width: 100%;
	background: #252525;
}

.navi-menu li {
	list-style-type: none;
}

.navi-menu li a {
	display: block;
	padding: 5px 30px;
	color: #e7efe7;
	text-decoration: none;
	font-size: 20px;
}

/*top img area*/
.top_img {
	position: relative;
	overflow: hidden;
	height: 544px;
}

.top_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.title_box {
	position: absolute;
	right: 10%;
	top: 100px;
	width: 24%;
}

.site_en {
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	font-size: 20px;
	color: #787878;
	margin-bottom: 4px;
}

.site_ttl {
	font-size: 36px;
	font-weight: 600;
	color: #29755e;
	margin-bottom: 23px;
	font-family: 'Noto Sans JP', sans-serif;
}

.ttl_des {
	font-size: 14px;
	color: #787878;
	line-height: 1.9;
}

.midasi_1_1 {
	margin-bottom: 40px;
	text-align: center;
	letter-spacing: 0.18em;
	font-weight: bold;
	font-size: 4rem;
	line-height: 135%;
}

.midasi_1_1 span:first-of-type {
	position: relative;
	z-index: 2;
	display: inline-block;
	margin-bottom: 30px;
	border-bottom: 10px solid #E7A744;
	color: #313031;
	letter-spacing: 0.1em;
	font-size: 2.8rem;
	font-family: "Century Gothic";
	line-height: 0.5;
}

.midasi_1_1 span:first-of-type:after {
	position: absolute;
	top: 100%;
	left: 50%;
	z-index: -1;
	width: 0;
	height: 0;
	border: 20px solid transparent;
	border-top: 20px solid #E7A744;
	content: "";
	transform: translateX(-50%);
}

.top_sec1 p {
	margin-bottom: 30px;
	color: #313031;
	font-size: 1.8rem;
	line-height: 190%;
}

/*main contents*/
main {
	display: block;
	padding-top: 60px;
}

article {
	padding: 0 80px;
}

.top_sec1 {
	border-bottom: 1px solid #dee0da;
}

.top_sec1 {
	padding-top: 50px;
	padding-bottom: 20px;
	max-width: 1280px;
	margin: 0 auto;
}

.top_sec2 {
	padding-top: 60px;
	padding-bottom: 0;
	max-width: 1280px;
	margin: 0 auto;
}

section.top_sec2 .midasi_2_1 {
	margin-bottom: 25px;
	font-size: 2.8rem;
}

.top_sec3 {
	padding-top: 100px;
	padding-bottom: 0;
	max-width: 1280px;
	margin: 0 auto;
}

section.top_sec3 .midasi_2_1 {
	margin-bottom: 25px;
	font-size: 2.8rem;
}

.fa-heart {
	position: relative;
	color: #999999;
	font-size: 2.8rem;
}

.fa-heart span {
	position: absolute;
	right: 0;
	bottom: 10%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 13px;
	height: 13px;
	background: #ffffff;
	font-size: 1.2rem;
	line-height: 1;
}

.slider_box {
	display: flex;
	justify-content: flex-start;
	margin-bottom: 20px;
}

.slider_box .slick-list {
	padding: 0 10% 0 0;
}

.slider_img {
	width: 100%;
}

.slider_middle_box {
	padding: 20px;
	box-shadow: 2px 5px 10px rgba(0, 0, 0, 0.1);
	font-size: 1.4rem;
}

.slider_child {
	padding-bottom: 10px;
}

.slider_child .midasi_3_1 {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	letter-spacing: 0.05em;
	font-weight: bold;
	line-height: 100%;
}

.slider_child .midasi_3_1 a {
	color: #313031;
	line-height: 1;
	transition: all 0.5s;
}

.slider_child .midasi_3_1 a:hover,
.slider_bottom_box a:hover {
	text-decoration: underline;
	opacity: 0.8;
}

.slider_bottom_box a {
	color: #848684;
	text-decoration: none;
}

.slider_bottom_box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 10px;
	font-size: 16px;
}

.slider_bottom_box img {
	display: inline !important;
}

.more {
	text-align: center;
}

.more a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 225px;
	height: 40px;
	border: 1px solid #E7A744;
	border-radius: 30px;
	background: #ffffff;
	color: #E7A744;
	letter-spacing: 0.05em;
	font-size: 1.4rem;
	line-height: 40px;
	transition: all 0.5s;
	margin: 0 20px;
}

.more a:hover {
	background: #E7A744;
	color: #ffffff;
	opacity: 0.9;
}

.more a~a {
	margin-left: 20px;
}

.more2 {
    text-align: center;
    background-color: #f5f5f5;
    padding: 20px;
}

.more2 a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 225px;
	height: 80px;
	border: 1px solid #ea1111;
	border-radius: 15px;
	background: #ea1111;
	color: #ffffff;
	letter-spacing: 0.05em;
	font-size: 1.6rem;
	line-height: 40px;
	transition: all 0.5s;
	margin: 0 20px;
}

.more2 a:hover {
	background: #ffffff;
	color: #ea1111;
	opacity: 0.9;
}

.more2 a~a {
	margin-left: 20px;
}

.mdetail_btn{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 30px;
}


.type_1 .slider_child {
	margin-right: 10px;
	width: 24%;
}

.type_1 .slider_child .midasi_3_1 {
	margin-bottom: 20px;
}

.type_2 .slider_child {
	margin-right: 10px;
	width: 17%;
}

.type_2 .slider_child .midasi_3_1 {
	margin-bottom: 20px;
}



.slick-prev:before,
.slick-next:before {
	color: #000000;
}


.break_box {
	margin-top: 30px;
	padding: 30px 10px;
	width: 100%;
	background: #e83820;
	color: #ffffff;
	text-align: center;
	font-weight: bold;
	font-size: 2.8rem;
}

.break_box .yen {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	margin-right: 20px;
}

.break_box p {
	margin-bottom: 10px;
	line-height: 150%;
}

.break_box a img:hover {
	opacity: 1;
	transform: translate(1px, 1px);
}

.flex_tb {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	width: 100%;
}

.font40 {
	letter-spacing: 0;
	font-size: 5.0rem;
	line-height: 0.8;
}

.top_button2 a {
	display: inline-block;
	width: 255px;
	height: 45px;
	border: 1px solid #e83820;
	border-radius: 30px;
	background: #ffffff;
	color: #e83820;
	text-align: center;
	font-weight: bold;
	font-size: 2.0rem;
	line-height: 45px;
}

.top_button2 a:hover {
	border: 1px solid #ffffff;
	background: #e83820;
	color: #ffffff;
	transition: all 0.5s;
}

.top_midashi {
	margin-bottom: 40px;
	padding-bottom: 25px;
	border-bottom: 2px solid #f7f3f7;
	text-align: center;
	font-size: 2.8rem;
}

.top_box2 {
	margin: 0 auto;
	width: 1200px;
}

/* mypage内 */
.top_box2_2 {
	margin: 0 auto;
	width: 100%;
}


.top_category nav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin-bottom: 50px;
}

.top_category nav li {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
	width: calc((100% - 40px) / 4);
	background: #f7f3f7;
	transition: all 0.5s;
}

.top_category nav li:hover {
	background: #eeeeee;
}

.top_category nav li a {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding-left: 20px;
	width: 100%;
	height: 45px;
	color: #313031;
	font-weight: bold;
	font-size: 1.7rem;
    letter-spacing: 0.15em;
}

.top_category nav li img {
	margin-right: 10px;
	width: 33px;
}

.top_category p {
	color: #313031;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 2.9rem;
}

.top_category .top_sec2 .midasi_3_2 {
	display: flex;
	align-items: center;
	margin-bottom: 25px;
	font-size: 2.0rem;
}

.top_category .top_sec2 .midasi_3_2 img {
	margin-right: 10px;
}

.top_lower_contents img {
	margin-bottom: 60px;
	width: 100%;
}

.top_lower_contents .more {
	margin-top: 30px;
}

/*lecture section*/

.lecture .top_box2 .midasi_3_3 {
	margin-top: 70px;
	margin-bottom: 10px;
	font-size: 2.0rem;
}

.lecture .top_box2 .midasi_3_3 i {
	margin-right: 10px;
}

.lecture time {
	display: block;
	margin-right: 10px;
	color: #e83820;
	text-align: center;
	font-weight: bold;
	font-size: 2.2rem;
}

.lecture time span {
	text-align: center;
	line-height: 120%;
}

.lecture time span:nth-child(1) {
	display: block;
	font-size: 2.0rem;
}

.lecture time span:nth-child(2) {
	font-size: 2.2rem;
}

.lecture time span:nth-child(3) {
	font-size: 2.2rem;
}

.lecture time span:nth-child(4) {
	font-size: 4.2rem;
}

.lecture time span:nth-child(5) {
	display: block;
	font-size: 1.7rem;
}

.lecture .top_box2 p {
	line-height: 150%;
}

.lecture_box {
	display: flex;
	padding: 20px 0;
}

.lecture_box~.lecture_box {
	border-top: 1px solid #f7f3f7;
}

.lecture_box .midasi_4_1 {
	padding: 20px 0;
	font-size: 1.6rem;
}

.lecture_box .midasi_4_1 a {
	color: #313031;
	line-height: 1.5;
}

.lecture_box .midasi_4_1 a:hover {
	color: #848684;
	text-decoration: underline;
}

.lecture_box p {
	margin: 0;
	color: #848684;
	font-size: 1.3rem;
}

.lecture_box .lecture_box_title{
	color: #000;
	font-size: 1.6rem;
	overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.lecture_box .lecture_box_text{
	color: #000;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.lecture_box.type2 time {
	color: #ff9505;
}

.lecture .more {
	margin-top: 30px;
	margin-bottom: 60px;
}

/*college section*/
.college {
	position: relative;
}

.college a {
	position: absolute;
	top: calc((100vw - 160px) * 265 / 1760);
	left: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(100vw * 382 / 1920);
	height: calc(100vw * 62 / 1920);
	border-radius: 30px;
	background: #e83820;
	color: #ffffff;
	font-weight: bold;
	font-size: calc(100vw * 25 / 1980);
	transition: 0.5s;
	transform: translateX(-50%);
}

.college a:hover {
	border: 1px solid #e83820;
	background: #ffffff;
	color: #e83820;
	opacity: 0.8;
}

/*info section*/

.info {
	padding-bottom: 80px;
	/*background : #f5f5f5;*/
}

.info .top_midashi {
	border-bottom-color: #dcdcdc;
}

.info_box {
	margin: 0 25px;
	padding: 15px 0;
	border-bottom: 1px solid #dcdcdc;
}

.info_box time {
	color: #848684;
	font-weight: normal;
	font-size: 1.6rem;
}

.info_box .midasi_3_4 {
	overflow: hidden;
	margin-top: 10px;
	width: 100%;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.info_box .midasi_3_4 a {
	color: #313031;
	font-weight: bold;
	font-size: 1.6rem;
}

.info_box .midasi_3_4 a:hover {
	color: #848684;
	text-decoration: underline;
}

/* mypage内 */
.info_box_2 {
	margin: 0 25px;
	padding: 15px 0;
	border-bottom: 1px solid #dcdcdc;
	display: flex;
}
.info_box_2 time {
	color: #848684;
	font-weight: normal;
	font-size: 1.6rem;
	width: 20%;
	text-align: left;
}

.info_box_2 .midasi_3_4 {
	overflow: hidden;
	margin-top: 10px;
	width: 100%;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.info_box_2 .midasi_3_4 a {
	color: #313031;
	font-weight: bold;
	font-size: 1.6rem;
}

.info_box_2 .midasi_3_4 a:hover {
	color: #848684;
	text-decoration: underline;
}


.info .more {
	margin-top: 30px;
}

/*contact section*/
.contact p {
	font-size: 1.6rem;
	line-height: 180%;
}

.contact p a {
	color: #e83820;
	text-decoration: underline;
}

.contact a:hover {
	background: #e83820;
	color: #ffffff;
}

.contact .more a {
	width: 230px;
}

.contact {
	padding-bottom: 60px;
}

/*footer*/
footer a {
	color: #ffffff;
	font-weight: bold;
}

footer a.link {
	position: relative;
	display: inline-block;
}

footer a.link::after {
	position: absolute;
	bottom: -3px;
	left: 0;
	width: 0;
	height: 1px;
	background-color: #ffffff;
	content: "";
	transition: width 0.3s;
}

footer a.link:hover::after {
	width: 100%;
}

.footer_top {
	padding: 95px 150px 140px 150px;
	height: 50vh;
	/*background: #E7A744;*/
	background-image: url(../img/footer_bk.png); 
    background-repeat: repeat-x;

}



footer small {
	display: block;
	height: 60px;
	background: #ea1111;
	color: #ffffff;
	text-align: center;
	font-size: 1.3rem;
	line-height: 60px;
}

.footer_top {
	display: flex;
	justify-content: space-between;
}

.footer_top ul {
	margin-bottom: 30px;
	width: 20vw;
	border-bottom: 1px solid #ffffff;
}

.footer_top ul li {
	margin-bottom: 25px;
	line-height: 120%;
}

.footer_top nav:nth-child(3) {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.footer_top nav:nth-child(3) div {
	display: flex;
	justify-content: space-between;
}

.footer_top nav:nth-child(3) div a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 10px;
	width: 49%;
	height: 40px;
	background: #494949;
	transition: all 0.5s;
}

.footer_top nav:nth-child(3) div a:hover {
	background: #848684;
}




@media (max-width:1280px) {
	header {
		display: flex;
	}

	main {
		padding-top: 120px;
	}

	.footer_top {
		padding: 50px 100px 60px 100px;
		height: 50vh;
	}

	header a {
		margin-left: 10px;
	}

	.top_box2 {
		margin: 0 auto;
		width: 100%;
	}

	.college a {
		top: calc((100vw - 160px) * 265 / 1760);
	}

	.top_category nav li a {
		padding-left: 10px;
	}

	.top_category nav li a img {
		width: 20px;
	}

	.footer_top {
		padding: 50px 50px 60px 50px;
	}
}


@media (max-width:991px) {
	article {
		padding: 0 25px;
	}

	nav.top_box2 {
		width: calc(100% - 20px);
	}

	.college a {
		top: calc((100vw - 50px) * 265 / 1760);
	}

	.top_category nav li a {
		font-size: 1.2rem;
	}

	.top_category nav li a img {
		margin-right: 5px;
	}

	.top_category nav li {
		width: calc((100% - 20px) / 5);
	}
}

@media (max-width:768px) {
	header {
		height: 100px;
	}

	header nav span {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 0;
		width: 100%;
		height: 100vh;
	}

	.header_left {
		position: relative;
		width: 100%;
		height: 100px;
		text-align: center;
	}

	.header_left .header_logo {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
	}

	.header_left img {
		width: 40vw;
	}

	.header_left nav {
		position: absolute;
		display: none;
	}


	/*ログインアイコン*/

	.login_icon i {
		margin-right: 0;
		font-size: 4.0rem;
	}

	.login_icon {
		position: relative;
		display: inline-block;
		display: none;
		width: 50px;
		height: 62px;
		border: none;
		text-align: center;
	}

	.login_icon:hover {
		background: none;
		color: #e83820;
	}

	.login_icon span {
		position: absolute;
		bottom: 0;
		left: -5px;
		letter-spacing: 0;
		font-size: 1.8rem;
		font-family: "Century Gothic";
	}

	.navi-btn {
		position: absolute;
		top: 20px;
		left: 20px;
		display: inline-block;
	}

	.header_right a:not(.login_icon) {
		display: none;
	}

	header nav img {
		display: inline-block;
	}

	#navi-btn+.navi-btn+nav {
		position: fixed;
		top: 100px;
		left: 0;
		display: block;
		visibility: hidden;
		padding: 0;
		width: 100%;
		height: 100vh;
	}

	#navi-btn:checked+.navi-btn+nav {
		position: fixed;
		z-index: 5;
		visibility: visible;
		background: #ffffff;
		opacity: 1;
		transition: opacity 0.3s;
	}

	#navi-btn+.navi-btn+nav ul {
		flex-direction: column;
		padding: 10px;
		padding-bottom: 30px;
		width: 100%;
	}

	#navi-btn+.navi-btn+nav ul li {
		border-bottom: 1px solid #e83820;
	}

	#navi-btn+.navi-btn+nav ul li a {
		display: flex;
		align-items: center;
		justify-content: center;
		margin-left: 0;
		height: 100px;
		font-size: 3.0rem;
		;
	}

	#navi-btn+.navi-btn+nav ul li a:hover {
		background: #e83820;
		color: #ffffff;
		opacity: 0.8;
	}

	/*アニメーション部部分*/
	#navi-btn:checked+.navi-btn+nav .ef2_1 {
		-webkit-animation-name: ef2;
		-ms-animation-name: ef2;
		animation-name: ef2;
		-webkit-animation-duration: 0.5s;
		-ms-animation-duration: 0.5s;
		animation-duration: 0.5s;
		-webkit-animation-delay: 0.5s;
		-ms-animation-delay: 0.5s;
		animation-delay: 0.5s;

		-webkit-animation-fill-mode: both;
		-ms-animation-fill-mode: both;
		animation-fill-mode: both;
	}

	@keyframes ef2 {
		0% {
			opacity: 0;
			-webkit-transform: translateY(20px);
			transform: translateY(20px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateY(0);
			transform: translateY(0);
		}
	}

	@-webkit-keyframes ef2 {
		0% {
			opacity: 0;
			-webkit-transform: translateY(20px);
		}

		100% {
			opacity: 1;
			-webkit-transform: translateY(0);
		}
	}


	header a.link:hover::after {
		width: auto;
	}

	.login_icon {
		position: absolute;
		top: 20px;
		right: 20px;
		display: block;
	}

	.img_pc {
		display: none;
	}

	.img_768 {
		display: inline;
	}

	main {
		padding-top: 100px;
	}

	article {
		padding: 0 25px;
	}

	.top_box2 {
		width: 100%;
	}


	.info .top_midashi {
		padding-left: 20px;
	}

	.info .more {
		margin-top: 30px;
	}

	.top_midashi {
		margin-bottom: 20px;
		text-align: left;
	}

	.top_category nav li {
		width: calc((100% - 20px) / 2);
	}

	.college a {
		top: calc((100vw - 50px) * 385 / 1100);
		left: 50%;
		width: calc(100vw * 469 / 1150);
		height: calc(100vw * 76 / 1150);
		border-radius: 30px;
		background: #e83820;
		color: #ffffff;
		font-weight: bold;
		font-size: calc((100vw - 50px) * 30 / 1150);
		transition: 0.5s;
		transform: translateX(-50%);
	}

	.college a:hover {
		background: #ffffff;
		color: #e83820;
	}

	footer small {
		display: block;
		height: 40px;
		background: #ea1111;
		color: #ffffff;
		text-align: center;
		font-size: 1.3rem;
		line-height: 40px;
	}



	.footer_top ul {
		display: none;
	}

	.footer_top {
		padding: 0;
		height: auto;
	}

	.footer_top div {
		flex-direction: column;
	}

	.footer_top div a {
		width: 100%;
	}

	.footer_top nav:nth-child(1),
	.footer_top nav:nth-child(2) {
		display: none;
	}

	.footer_top nav:nth-child(3) {
		width: 100%;
	}

	.footer_top nav:nth-child(3) div a {
		width: 100%;
	}

	.footer_top nav:nth-child(3) div a~a {
		border-top: 1px solid #282828;
	}

	.top_img {
		height: auto;
	}

	.top_img img {
		height: auto;
		object-fit: inherit;
		object-position: inherit;
	}

	.title_box {
		display: none;
	}

	.header_right {
		display: none;
	}
}

@media (max-width:768px) {
	.videodetails .mdetail_btn {
		display: block;
	}
	.videodetails .mdetail_btn .more{
		margin-bottom: 20px;
	}
}

@media (max-width:576px) {
	.sp_dis {
		display: block;
	}



	.top_box1,
	.top_box2 {
		width: 100%;
	}

	.br_clear576 {
		display: none;
	}

	.br_576 {
		display: inline;
	}

	.ta_left576 {
		text-align: left;
	}

	main {
		padding-top: 70px;
	}

	article {
		padding: 0 10px;
	}

	.header_left,
	header {
		height: 70px;
	}

	.header_left {
		overflow: hidden;
		align-items: center;
	}

	.header_left img {
		min-width: 200px;
		width: 40vw;
	}

	#navi-btn+.navi-btn+nav {
		top: 70px;
	}

	.navi-btn {
		top: 5px;
		left: 10px;
		transform: scale(0.8, 0.8);
	}

	#navi-btn+.navi-btn+nav ul li a {
		height: 70px;
		font-size: 2.0rem;
	}

	.login_icon {
		top: 5px;
		right: 5px;
		transform: scale(0.8, 0.8);
	}

	.slider_middle_box {
		padding: 10px;
	}

	.top_sec1 .midasi_1_1 {
		font-size: 2.8rem;
		line-height: 135%;
	}

	.top_sec1 p {
		font-size: 1.8rem;
	}

	.break_box {
		font-size: 2.0rem;
	}

	.break_box a {
		width: 240px;
	}

	.break_box img {
		max-width: 350px;
		width: 90%;
	}

	.college a {
		top: calc((100vw - 20px) * 385 / 1100);
		font-size: calc((100vw - 20px) * 30 / 1150);
	}

	.font40 {
		margin: 0;
		font-size: 3.5rem;
	}

	.flex_tb {
		display: flex;
		align-items: center;
		flex-direction: column;
		justify-content: center;
		width: 100%;
	}

	.break_box .yen {
		margin-right: 0;
		margin-bottom: 10px;
	}

	.top_category .top_sec2 .midasi_3_2 {
		margin-bottom: 10px;
	}
}











/*information.php*/
.information .top_sec2 {
	padding-top: 25px;
}

.information .info {
	background: #ffffff;
}

/*lecture.php*/
.lecture_page .top_sec2 {
	padding-top: 25px;
}

.lecture_page .lecture .top_box2 .midasi_3_3 {
	margin-top: 20px;
}

.break_box.type_2 h2 {
	margin: 20px 0;
	letter-spacing: 0.1em;
	font-size: 2.8rem;
	line-height: 1.4;
}

.break_box h2 {
	margin: 20px 0;
	letter-spacing: 0.1em;
	font-size: 2.8rem;
	line-height: 1.4;
}

.break_box.type_2 div {
	display: block;
	text-align: center;
}

.break_box.type_2 span {
	display: block;
	margin-top: 20px;
}

.break_box.type_2 {
	margin-bottom: 30px;
}

.lecture_page .tab_box {
	display: block;
}

.tab_style2 {
	margin-bottom: 20px;
	padding-bottom: 10px;
	width: 100%;
	border-bottom: 1px solid #dcdcdc;
}

.tab_style3 {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #dcdcdc;
}

.tab_style2 input {
	display: none;
}

.tab_style2 label {
	padding-bottom: 5px;
	color: #636563;
	font-weight: bold;
	font-size: 1.8rem;
}

#ranking+label {
	margin-left: 20px;
}

#new_arrival:checked+label,
#ranking:checked+label {
	border-bottom: 4px solid #e83820;
	color: #e83820;
}

.type_1 .slider_child {
	width: calc((100% - 40px) / 5);
}

.rank1,
.rank2,
.rank3,
.rank4,
.rank5 {
	position: relative;
}

.rank1:before,
.rank2:before,
.rank3:before,
.rank4:before,
.rank5:before {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 1000;
	display: block;
	width: 30px;
	height: 30px;
	content: "";
	;
}

.rank1:before {
	background: url(../img/rank1.png);
	background-size: contain;
	background-repeat: no-repeat;
}

.rank2:before {
	background: url(../img/rank2.png);
	background-size: contain;
	background-repeat: no-repeat;
}

.rank3:before {
	background: url(../img/rank3.png);
	background-size: contain;
	background-repeat: no-repeat;
}

.rank4:before {
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background-color: #adaaad;
	color: #ffffff;
	content: "4";
	font-size: 1.4rem;
}

.rank5:before {
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background-color: #adaaad;
	color: #ffffff;
	content: "5";
	font-size: 1.4rem;
}

.lecture_page .break_box,
.lecturedetaile_page .break_box {
	margin-bottom: 20px;
}

@media (max-width:768px) {
	.lecture_page .slider_box {
		flex-direction: column;
	}

	.lecture_page .slider_child {
		display: flex;
		justify-content: flex-start;
		margin-bottom: 20px;
		padding-bottom: 0;
		padding-bottom: 20px;
		padding-left: 50px;
		width: 100%;
		border-bottom: 3px solid #f7f3f7;
	}

	.lecture_page .slider_child .slider_img {
		width: 25vw;
	}

	.lecture_page .slider_middle_box {
		padding-top: 0;
		width: 70%;
		box-shadow: none;
	}

	.rank1:before,
	.rank2:before,
	.rank3:before,
	.rank4:before,
	.rank5:before {
		top: calc((100% - 20px) / 2);
		left: 10px;
		transform: translateY(-50%);
	}

	.break_box.type_2 h2 {
		margin: 20px 0;
		letter-spacing: 0.1em;
		font-size: 2.0rem;
		line-height: 1.4;
	}

	.break_box h2 {
		margin: 20px 0;
		letter-spacing: 0.1em;
		font-size: 2.0rem;
		line-height: 1.4;
	}

	.break_box span {
		display: block;
	}
}


/*videodetails.php*/
.videodetails iframe {
	margin: 0 auto;
	max-width: 960px;
	width: 100%;
	height: 60vh;
}

.videodetails .video_flex {
	display: flex;
	flex-direction: column;
}

.videodetails .video_flex2 {
	position: relative;
	margin-bottom: 10px;
	padding: 25px 0;
	border-bottom: #1c6187 dotted 10px;
}

.videodetails .video_flex2 time {
	position: absolute;
	right: 0;
	bottom: 0;
}

.videodetails .video_flex2 span {
	position: absolute;
	bottom: 0;
}

.videodetails .video_flex2 span a {
	color: #000000;
}

.heart_right {
	position: absolute;
	top: 20px;
	right: 0;
}

.videodetails .title_style20 {
	padding-right: 30px;
}

.videodetails .slider_middle_box .midasi_3_1 {
	margin-bottom: 10px;
}

.videodetails .slider_middle_box .midasi_3_1 a {
	color: #313031;
	font-weight: bold;
	font-size: 2.0rem;
}

.sns_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 20px;
}

.sns_box a img {
	width: 100%;
}

.sns_box a {
	max-width: 200px;
	width: calc((100% - 20px) / 3);
}

.sns_box a~a {
	margin-left: 10px;
}

.videodetails .slider_bottom_box {
	margin-bottom: 10px;
}

.videodetails .top_sec2 {
	padding-top: 30px;
}

.videodetails .top_sec2 .midasi_2_1 {
	text-align: center;
}

.top_sec2.lecture_page .slider_child {
	padding-left: 0;
}

@media (max-width:768px) {
	.videodetails iframe {
		height: 50vw;
	}

	.videodetails .top_sec2 .midasi_2_1 {
		text-align: left;
	}

	.videodetails .slider_middle_box {
		padding-top: 0;
		padding-bottom: 0;
	}

	.videodetails .slider_middle_box .midasi_3_1 a {
		color: #313031;
		font-weight: bold;
		font-size: 1.4rem;
	}

	.v_order1 {
		order: 2;
	}

	.v_order2 {
		order: 1;
	}

	.v_order3 {
		order: 3;
	}
}

/*lecturedetaile.php*/
.lecturedetaile_page .top_sec2 {
	padding-top: 25px;
	padding-bottom: 120px;
}

.title_style28 {
	margin-bottom: 10px;
	font-size: 2.8rem;
}

.lecturedetaile_page time {
	margin-bottom: 20px;
}

.lecturedetail_style {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid #f7f3f7;
}

.lecture_box2 {
	margin-bottom: 40px;
	padding: 20px;
	background: #f7f7f7;
}

.lecture_box2 h2 {
	padding-bottom: 10px;
	border-bottom: 2px solid #ffffff;
	letter-spacing: 0.1em;
	font-size: 2.0rem;
}

.maru_photo {
	overflow: hidden;
	flex-shrink: 0;
	width: 244px;
	height: 244px;
	border-radius: 50%;
}

.fit_01 img {
	object-position: -20px 0;
}

.lecture_box3 {
	display: flex;
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom: 2px solid #ffffff;
}

.lecture_box3 .right {
	padding: 10px;
}

.lecture_box3 h3 {
	margin-bottom: 10px;
	font-size: 1.8rem;
}

.lecture_box3 .right p:first-of-type {
	color: #848684;
}

.lecture_box2 dl {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.lecture_box2 dt {
	flex-shrink: 0;
	padding-right: 20px;
	width: 30%;
	font-weight: bold;
}

.lecture_box2 dt:before {
	content: "●";
}

.lecture_box2 dd {
	flex-shrink: 0;
	margin-bottom: 10px;
	width: 70%;
}

.lecture_box2 dl a {
	color: #e83820;
}

.button_style_red+p {
	text-align: center;
}

@media (max-width:768px) {
	.maru_photo {
		width: 180px;
		height: 180px;
		border-radius: 50%;
	}

	.maru_photo img {
		width: 180px;
	}

	.fit_01 img {
		object-position: -50% 0;
	}

	.lecture_box2 dl {
		flex-direction: column;
	}

	.lecture_box2 dt,
	.lecture_box2 dd {
		width: 100%;
	}
}

/*infodetails.php*/
.infodetails .top_sec2 {
	padding-top: 20px;
}

/*modal*/
.remodal.reg_window {
	display: inline-flex;
	height: 50vh;
	border-radius: 20px;
}

.remodal.reg_window div {
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}

.modal_style1 {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 2.0rem;
}

.remodal.reg_window p {
	text-align: left;
}

.button_in_modal1,
.button_in_modal2 {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
	width: 80%;
	height: 40px;
	border-radius: 60px;
	color: #ffffff;
	font-size: 1.6rem;
}

.button_in_modal1 i,
.button_in_modal2 i {
	padding-left: 5px;
}

.button_in_modal1 {
	background: #e83820;
	transition: 0.5s;
}

.button_in_modal2 {
	background: #e8c520;
	transition: 0.5s;
}

.button_in_modal1:hover {
	border: 1px solid #e83820;
	background: #ffffff;
	color: #e83820;
}

.button_in_modal2:hover {
	border: 1px solid #e8c520;
	background: #ffffff;
	color: #e8c520;
}

@media (max-width:768px) {

	.button_in_modal1,
	.button_in_modal2 {
		width: 100%;
		font-size: 1.4rem;
	}
}

@media (max-width:576px) {

	.button_in_modal1,
	.button_in_modal2 {
		font-size: 1.2rem;
	}
}

/*select_plan.php*/
.select_plan .top_sec2 {
	padding-top: 0;
}

.select_top_img {
	position: relative;
	overflow: hidden;
	margin-bottom: 20px;
	height: 470px;
}

.select_plan .midasi_2_1 {
	padding: 10px 0;
}

.select_plan .top_midashi {
	margin-top: 30px;
	padding-bottom: 30px;
}

.select_plan .more {
	margin-top: 30px;
}

.select_top_img img {
	width: 100%;

	object-fit: contain;
}

.select_top_box {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	padding: 40px 20px;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	color: #ffffff;
}

.select_midashi {
	color: #ffffff;
	text-align: center;
	font-size: 5.5rem;
	line-height: 150%;
}

.select_top_box p {
	margin-bottom: 20px;
	color: #ffffff;
	text-align: center;
	font-size: 1.8rem;
	line-height: 160%;
}

.select_button1,
.select_button2 {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 20px;
	max-width: 300px;
	width: 40vw;
	height: 70px;
	border-radius: 60px;
	color: #ffffff;
	font-size: 2.4rem;
}

.select_button1 {
	background: #e83820;
	transition: 0.5s;
}

.select_button2 {
	background: #36c4ff;
	transition: 0.5s;
}

.select_button1:hover {
	border: 1px solid #e83820;
	background: #ffffff;
	color: #e83820;
}

.select_button2:hover {
	border: 1px solid #36c4ff;
	background: #ffffff;
	color: #36c4ff;
}

.select_button2 {
	margin-left: 30px;
	background: #36c4ff;
}

.select_top_style {
	display: flex;
	justify-content: space-around;
}

.select_plan .title_style28 {
	text-align: center;
}

.select_wrap {
	display: flex;
	justify-content: space-around;
	margin-bottom: 20px;
}

.select_plan_box h3 {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 40px;
	background: #e83820;
	color: #ffffff;
	font-size: 1.6rem;
}

.select_plan_box.type_2 h3 {
	background: #36c4ff;
}

.select_plan_box.type_1,
.select_plan_box.type_2 {
	overflow: hidden;
	width: 48%;
	border-radius: 10px;
}

.select_plan_box.type_1 {
	border: 1px solid #e83820;
}

.select_plan_box.type_2 {
	border: 1px solid #36c4ff;
}

.select_plan_box2 {
	padding: 20px 10px;
	text-align: center;
}

.select_plan_style {
	margin-bottom: 20px;
}

.select_plan_box2 p:first-child {
	margin-bottom: 10px;
	font-weight: bold;
	line-height: 150%;
}

.select_plan_style.type_1 {
	color: #e83820;
	font-weight: bold;
	font-size: 2.8rem;
}

.select_plan_style span {
	vertical-align: bottom;
}

.select_plan_style.type_2 {
	color: #36c4ff;
	font-weight: bold;
	font-size: 2.8rem;
}

.tate {
	letter-spacing: -0.3em;
	font-size: 1.4rem;

	writing-mode: vertical-rl;
}

.select_wrap .select_button1,
.select_wrap .select_button2 {
	display: inline-flex;
	margin: 0;
	max-width: 380px;
}

.speechbubble {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
	text-align: left;
}

.speechbubble .left {
	padding-left: 10px;
	width: 25%;
}

.speechbubble .right {
	position: relative;
	margin-left: 30px;
	padding: 20px;
	width: 75%;
	border-radius: 10px;
	background: #f3f3f3;
	line-height: 150%;
}

.speechbubble .right:after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: -35px;
	z-index: -1;
	margin: auto;
	width: 0;
	height: 0;
	border: 20px solid transparent;
	border-top: 20px solid #f3f3f3;
	content: "";
	transform: rotate(90deg);
}

.select_plan_box .text_box {
	margin-top: 20px;
	text-align: left;
}

@media (max-width:991px) {

	.select_wrap .select_button1,
	.select_wrap .select_button2 {
		font-size: 2.0rem;
	}
}

@media (max-width:768px) {
	.select_top_img {
		height: auto;
	}

	.select_wrap {
		flex-direction: column;
	}

	.select_plan_box.type_1,
	.select_plan_box.type_2 {
		width: 100%;
	}

	.select_plan_box.type_1 {
		margin-bottom: 20px;
	}

	.speechbubble .right {
		margin-left: 30px;
	}
}

@media (max-width:576px) {
	.select_midashi {
		font-size: 2.8rem;
		line-height: 130%;
	}

	.select_button1,
	.select_button2 {
		padding: 0 10px;
		height: 40px;
		font-size: 1.4rem;
	}

	.select_button2 {
		margin-left: 10px;
	}

	.select_top_box p {
		margin-bottom: 10px;
		font-size: 1.2rem;
	}

	.select_top_box {
		padding: 10px;
	}

	.select_wrap .select_button1,
	.select_wrap .select_button2 {
		min-width: 200px;
		font-size: 1.4rem;
	}

	.speechbubble .right {
		padding: 10px;
		font-size: 1.2rem;
	}
}



.title_style28 {
	margin-bottom: 10px;
	font-size: 2.8rem;
}

.title_style20 {
	margin-bottom: 10px;
	padding-right: 30px;
	width: 90%;
	color: #313031;
	font-weight: bold;
	font-size: 2.0rem;
}
.title_style30 {
	margin-bottom: 10px;
	padding-right: 30px;
	width: 90%;
	color: #313031;
	font-weight: bold;
	font-size: 3.0rem;
	line-height: 1.5;
}

.title_style30 .priceIcon{
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 10px;
    height: 1em;
    vertical-align: middle;
}

.text_box img {
	width: 100%;
}

.text_box {
	margin-bottom: 20px;
	color: #848684;
	font-family: "hiragino";
	font-size: 16px;
}

.back_btn {
	margin-bottom: 30px;
	letter-spacing: 0.05em;
}






/* listPager */
.listPagerBox{
	margin-top: 50px;
    margin-bottom: 50px;
    padding: 0 15px;
    display: flex;
    justify-content: center;
}


.pager {
    display: flex;
    list-style: none;
    margin: 0 -15px;
}

.pager>li {
    margin: 0 5px;
}

.pager>li>a {
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid #E7A744;
    color: #000;
    border-radius: 0;
    transition: .2s;
}

.pager>li>a.active,
.pager>li>a:hover {
    color: #FFF;
    background-color: #E7A744;
    transition: .2s
}

.pager li button {
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid #E7A744;
    color: #000;
    border-radius: 0;
    transition: .2s;
    background-color: #fff;
}

.pager li button.active,
.pager li button:hover {
    color: #FFF;
    background-color: #E7A744;
    transition: .2s
}





