@charset "UTF-8";
body {
  margin: 0;
  padding: 0;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.6; }
a {
	color: #ae2039;
	text-decoration: none;
	transition: .3s;
}
a:hover {opacity: .8;}

#container {
	position: relative;
	 overflow: hidden; }

li {list-style: outside none none;}

/*___PC____*/
@media only screen and (min-width: 741px) {
	header.logo_all {padding:16px 0 10px 16px;}
	header.logo_all img {width:480px;}
	.snsBox div li iframe {width:80px;}
	footer {display:flex;justify-content:space-between; margin-top:120px;}
	footer div {width:48%;margin: 24px 0;padding: 0 32px;}
	.pageTtl {padding: 180px 0 102px 0;}
	.pageTtl.instructor_ttl {padding: 56px 0 0 0;}
	.pageTtl h1 {font-size: 200%;}
	table th {width:180px;}
	.q_button,.btn,.wp_cont a,.entrybtnLine {padding:8px 40px;}
	.main_cont.top-page h2 {font-size: 220%}
	.main_cont.pages {margin-top: 80px;}
	.main_cont.pages h2 {margin-top: 80px;font-size: 180%;}

	.link_list {display:flex;justify-content:space-between;}
	.link_list li {width:49%;}

	footer img {width: 400px;}
	.col2 {display:flex;justify-content:space-between;}
	.col2 .col2-txt {margin-right: 40px;}
	.reccomend .col2 .col2-txt {width: 70%;}
	.reccomend .col2 .col2-img {width: 280px;}
	.col2 .col2-img img {width: 100%;}
	.imgLine {display:flex;justify-content:space-between;}
	.imgLine img {width: 33%;}
	.main_cont .contBox h3 {font-size: 200%;}
	.snsBox ul {display:flex;justify-content:space-between;align-items: top;}
	.snsBox li { width: 32%;}
	.snsBox li iframe { width: 100%;}
	.btnLINE {
		bottom: 16px;
		right: 32px;}
	table {margin:40px 0;}

}

/*___SP____*/
@media screen and (max-width: 740px) {
img {
	width: 100%;
	height: auto; }
	
	header.logo_all {padding: 8px 0 0 8px;}
	header.logo_all img {width:302px;}
	.pageTtl {padding: 64px 0 48px 0;}
	.pageTtl.instructor_ttl {padding: 8px 0;}
	.pageTtl h1 {font-size: 150%;}
	.main_cont.top-page h2 {margin-left: 8px;}
	.main_cont.top-page h2 span {display:block;}
	.main_cont.pages {
		width: 90%;
		margin: 32px auto 0 auto;
	}
	.snsBox { padding: 0 8px;}
	.main_cont.pages h2 {margin-top: 40px;font-size: 140%}
	.main_cont p.txtC {font-size: 95%;}
	.q_button,.btn,.wp_cont a,.entrybtnLine {padding:8px 16px;}
	table th, table td {display:block;}
	table th {padding-bottom: 0px!important;}
	table td {padding-top: 8px!important;}
	.top-page .link_list {margin: 0 10px;}
	.link_list li {margin-top:16px;}
	footer {margin-top:40px;padding:16px 16px 102px 16px;}
	footer p {margin:4px;}
	footer .logo_bg img {width: 240px;}
	footer .logo_wp img {width: 320px;}
	.col2 img {display:block;}
	.contBox img {display:block; margin-bottom: 16px;}
	.imgLine img {display:block; margin-bottom: 8px;}
	.main_cont .contBox h3 {font-size: 150%;}
	.btnLINE {
		bottom: -7px;
		right: 3px;}
	.reccomend .col2 .col2-img {margin-top: 16px;}
	table {margin:8px 0 40px 0;}
	.reccomend li {margin: 8px 0;}
}


/*________________________________________________________

	スライドイン
________________________________________________________*/
@media only screen and (min-width: 750px) {
  .slidein {
    position: relative;
    top: -40px;
    left: 0px; }
    .slidein.on {
      top: 0px;
      left: 0;
      -webkit-animation: slide_in .5s linear forwards;
      animation: slide_in .5s linear forwards; } }

@-webkit-keyframes slide_in {
  0% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
    opacity: 0; }
  100% {
    -webkit-transform: translate(0px, -40px);
    transform: translate(0px, -40px);
    opacity: 1; } }

@keyframes slide_in {
  0% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
    opacity: 0; }
  100% {
    -webkit-transform: translate(0px, -40px);
    transform: translate(0px, -40px);
    opacity: 1; } }

/*________________________________________________________

	ページトップボタン
	________________________________________________________
*/
a.pagetop {
  position: fixed;
  display: block;
  right: 40px;
  bottom: 120px;
  width: 40px;
  height: 40px;
  padding: 8px;
  cursor: pointer;
  color: #FFF;
  font-size: 100%;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  border-radius: 100px;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 20; }
  a.pagetop::before {
    display: block;
    margin-bottom: 4px;
    font-family: "Font Awesome 5 Free";
    content: '\f106';
font-weight: 900; }

.btnLINE {
    position: fixed;
	z-index: 100;
	transition: transform .6s ease;
}

/*________________________________________________________

	utility
	________________________________________________________
*/
.red {color:#FF0000!important;}
.btn,.wp_cont a { border: 1px solid #FFF; color: #FFF;}
.q_button,.entrybtnLine {
	display: block;
	margin:24px 0;
	font-size: 110%;
	color: #FFF;
	font-weight: bold;
}
.q_button {background-color: #ae2039;}
.entrybtnLine {background-color: #01c101;}
.btn,.wp_cont a {display: block;}
a.txtLink {text-decoration: underline;}
.txtC {text-align: center;}
.txtBig {font-size: 180%!important;}
.btn::before,
.q_button::before,
.wp_cont a::before,
.txtLink::before,
.entrybtnLine::before,
.performers_nav a::before {
	display: inline-block;
	margin-right: 8px;
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	line-height: 1.8;
}
ul.list {margin: 24px 0 32px 0;}
ul.list li {
	list-style: disc inside none;
}
.reccomend {
	background-color: #fff0f3;
	margin: 16px 0;
	padding: 16px 16px 24px 16px;
}
.reccomend h3 {margin-top: 0;}
.reccomend ul {
	margin-left: 16px;
}
.reccomend li::before {
	display: inline-block;
	margin-right: 8px;
	content: '\f00c';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	line-height: 1.8;
	color: #ae2039;
}

.link_list li a {
	display:block;
	background-color: #ececec;
	color:#ae2039;
	padding: 24px;
	font-weight: bold;
	font-size: 130%;
}
.link_list li a::before {
	display: inline-block;
	margin-right: 8px;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	line-height: 1.8;
	content: '\f105';
}

table {width:100%;text-align: left;}
table tr {border-bottom: 1px dotted #4b4b4b;}
table th {padding: 16px 16px 0 8px; vertical-align: top;}
table td {padding: 16px 8px;}
table td strong {display:block; margin:8px 0;}


/*________________________________________________________

	header
	________________________________________________________
*/
header {position: relative;background-color: #FFF;}


/*________________________________________________________

	contents
	________________________________________________________
*/
h1 {font-family: 'Yu Mincho','游明朝', serif;}
h2 {
	color:#ae2039;
	letter-spacing: .05em;
	font-family: 'Yu Mincho','游明朝', serif;
	}
.main_cont.top-page h2 {
	font-size: 220%
}
.main_cont.top-page h2 span {
	font-size:40%;
	letter-spacing: 0;
	font-weight:normal;
	color:#000;
}
.pages h2 {
	border-left: 3px solid #ae2039;
	padding-left: 16px;
}
.pages h2.headLine {text-align: center; color:#000; border:none;}

h3 {
	margin-top: 24px;
	padding: 0 0 8px 16px;
	border-bottom: 1px solid #a5a5a5;
	font-size: 110%;
	}
h4 {
	margin: 16px 0 8px 0;
	padding: 4px 8px;
	background-color: #ececec;
	font-size: 100%;
}

/*________________________________________________________

	SNS
	________________________________________________________
*/
.snsBox h3 {
	border-bottom: dotted 1px #ae2039;
	color:#ae2039;
}

/*________________________________________________________

	footer
	________________________________________________________
*/
footer {
	background-color: #ae2039;
	color: #FFF;
}
footer a {color: #FFF;}
.copy {font-size:80%; color:#d59b9b;}
.footerLink {
		padding-top: 24px;
		padding-bottom: 24px;
	border-left:1px solid #d87687;
	font-size: 90%;
	}
.footerLink a:hover {text-decoration: underline;}
.footerLink li {margin-bottom: 8px;}
.footerLink li::before {
	display:inline-block;
	content:'-';
	margin-right:4px;
}
.footerLink li ul {
		margin-left: 32px;
		font-size: 85%;
	}
.footerLink li ul li {margin-bottom:0;}
.footerLink li ul li::before {
	content:none;
	}
	
	
/*________________________________________________________

	下層ページ
	________________________________________________________
*/
.pageTtl {background-position: center center; background-repeat: no-repeat; background-size:cover;}
.pageTtl h1 {text-align: center;color:#FFF;}

			.contBox {border: 3px solid #dddddd; margin-bottom: 24px;}
p.contBox_ttl {background-color: #dddddd; font-size: 120%;margin: 0;padding:8px 16px;}
.contBox_inner {padding: 24px;}
.main_cont .contBox h3 {
	color: #ae2039;
	border:none;
	font-weight: normal;
	margin: 0;
	padding: 0;
}