
@media screen and (max-width: 980px){

* {
	font-style:normal;
	font-weight:normal;
	box-sizing:border-box; -webkit-box-sizing:border-box; -moz-box-sizing:border-box;
	}

html {
  font-size: 62.5%; /*font-size:10px;*/
  -webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
  }

body {
	color: #111;
	margin: 0;
	padding: 0;
	font-size:1.4rem;
	font-family: 'Noto Sans JP', sans-serif, '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	}

img { max-width:100%; height:auto; }

button { border:0; padding:0; background:none; cursor:pointer; }
	
.left { float:left; }
.right { float:right; }
.center { text-align:left; }
	.center br { display: none; }
.tright { text-align:right; }
.tleft { text-align:left; }

.fs10 { font-size:0.8rem; }
.fs12 { font-size:0.8rem; }
.fs13 { font-size:0.9rem; }
.fs14 { font-size:1.0rem; }
.fs16 { font-size:1.0rem; }
.fs18 { font-size:1.2rem; }
.fs20 { font-size:2.4rem; }
.fs22 { font-size:2.6rem; }
.fs28 { font-size:2.8rem; }
.fs30 { font-size:3.0rem; }
.fs40 { font-size:3.4rem; }

.f_bold { font-weight:bold; }
.tline { border-bottom-width:1px; border-bottom-style:solid; padding-bottom:2px; }
.bdr { border: 2px solid #aaa; padding-right: 15px !important; padding-left: 15px !important; margin: 20px 0; }
.bdr2 { border: 4px solid #ddd; padding-right: 15px !important; padding-left: 15px !important; margin: 20px 0; }
.bgcgray { background-color: #f2f2f2; padding: 15px; }

.lh180 { line-height:160%; }
.lh40px { line-height:40px; }

.red { color:#e23743; }
.green { color:#00523a; }
.gray { color:#aaa; }

.mt30 { margin-top:30px; }
.mt50 { margin-top:50px; }
.ml10 { margin-left:10px; }
.mr135 { margin-right:135px; }
.ptb50 { padding-top:35px; padding-bottom:35px; }
.plr80 { padding-left: 3%; padding-right: 3%; }


pre { white-space: pre-wrap; word-wrap: break-word; overflow: visible;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic Medium", YuGothic Medium, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	}

table, caption, tbody, tfoot, thead, tr, th, td { vertical-align:middle; }

/* ------------------------------------------------------ */

#wrapper {
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	}

footer {
	margin:50px auto;
	padding:0;
	width: 100%; 
	}
	footer p { font-size: 1.2rem; line-height: 150%; }
	footer p img { display: block; margin-bottom: 8px; }
	footer p.copyr { font-size: 1.0rem; font-family: 'Ramabhadra', sans-serif; padding-top:40px !important; }
	
.pc { display:none; }
	
.clr { clear:both; }
	
#contents { width: 100%; }
	#contents h2 { background-color:#f2f2f2; padding: 20px 5px; text-align: center; font-size: 2.0rem; font-weight: bold; }
	#contents .pagetop { width: 98%; margin: auto; text-align: center; font-size: 3.8rem; }
	#contents .pagetop a { color: #a50012; }
	#contents .pagetop a:hover { color: #aaa; }

.contents { width: 96%; margin: 30px auto; }



/* --------------------------------------------------------------
  clearfix
-------------------------------------------------------------- */
header:after,
#toppage .application td a:after,
#toppage .application td:after,
.footbtn td a:after,
.footbtn td:after,
dl.voice dt:after,
div.interview:after {
  height: 0;
  visibility: hidden;
  content: ".";
  display: block;
  clear: both;
  }

/* --------------------------------------------------------------
  基本
-------------------------------------------------------------- */
a.btn { display: block; background-image: url("/images/btn_bg.png"); width: 246px; height: 53px; text-align: center; margin: 20px auto; 	
	line-height: 120%; font-family: 'Ramabhadra', 'Noto Sans JP', sans-serif; padding: 18px 0;  color: #111; text-decoration: none; font-size: 1.4rem; font-weight:bolder; }
	a.btn:hover { background-color: #f9f9f9; border-radius: 10px; color: #a50012;}
	a.btn img { vertical-align: middle; margin-right: 8px; }

a.btn2 { display: block; background-image: url("/images/btn_bg.png"); width: 246px; height: 53px; text-align: center; margin: 10px 0; 
	line-height: 120%; font-family: 'Ramabhadra', 'Noto Sans JP', sans-serif; padding: 18px 0;  color: #111; text-decoration: none; font-size: 1.4rem; font-weight:bolder; }
	a.btn2:hover { background-color: #f9f9f9; border-radius: 10px; color: #a50012;}
	a.btn2 img { vertical-align: middle; margin-right: 8px; }

p { padding: 15px 0; line-height: 150%; }

ul.tworows { width: 100%; margin: 20px 0; }
	ul.tworows li { display: block; width: 100%; vertical-align: top; margin-bottom: 15px; }
	ul.tworows li:nth-child(1) img { width: 100%; height: auto; }

ul.threerows { width: 100%; margin: 20px 0; }
	ul.threerows li { display: block; width: 100%; vertical-align: top; margin-bottom: 15px; }

div.navi, div.navi-2 { display: none; }

div.subnavi { display: none; }

div.worldheritage { width: 100%; padding: 10px; background-color: #fdeff5; text-align: center; position: relative; }
div.worldheritage:after{  content: ""; position: absolute; right: 0; bottom: -45px; left: 0; width: 0px; height: 0px;
	margin: auto; border-style: solid; border-color: #fdeff5 transparent transparent transparent; border-width: 45px 45px 0 45px; }

div.museum { width: 100%; padding: 10px; background-color: #eaf6fd; text-align: center; position: relative; }
div.museum:after{  content: ""; position: absolute; right: 0; bottom: -45px; left: 0; width: 0px; height: 0px;
	margin: auto; border-style: solid; border-color: #eaf6fd transparent transparent transparent; border-width: 45px 45px 0 45px; }

div.culturalheritage { width: 100%; padding: 10px; background-color: #f7efcf; text-align: center; position: relative; }
div.culturalheritage:after{  content: ""; position: absolute; right: 0; bottom: -45px; left: 0; width: 0px; height: 0px;
	margin: auto; border-style: solid; border-color: #f7efcf transparent transparent transparent; border-width: 45px 45px 0 45px; }

div.english { width: 100%; padding: 10px; background-color: #fffaef; text-align: center; position: relative; }
div.english:after{  content: ""; position: absolute; right: 0; bottom: -45px; left: 0; width: 0px; height: 0px;
	margin: auto; border-style: solid; border-color: #fffaef transparent transparent transparent; border-width: 45px 45px 0 45px; }

div.pagetit { width: 100%; padding: 20px 0; text-align: center; background-color: #f2f2f2; font-size: 2.2rem; }

.table-wrap { overflow-x: scroll; }

/* --------------------------------------------------------------
  トップページ
-------------------------------------------------------------- */
#mainimg { width:100%; }
#mainimg img { width:100%; }

#toppage { margin: 0; padding: 0; position: relative; width: 100%; }

#toppage h2 { font-size: 2.5rem; position: relative; padding:15px 0 5px 0; text-align: center; line-height: 150%; font-family: 'Ramabhadra', sans-serif;}
#toppage h2:before { position:absolute; bottom:0; left:calc(50% - 15px); width:30px; height:3px; content: ''; background: #a50012; }
	
#toppage .scroll { display: none; }
#toppage .news { width: 96%; margin:auto; padding: 30px 0 10px 0; }
	#toppage .news dl { display: inline-block; width:48%; margin-right: 2.5%; margin-top: 50px; }
	#toppage .news dl:nth-of-type(2n) { margin-right: 0; }
	#toppage .news dt { float: left; writing-mode: vertical-rl; font-size:1.2rem; letter-spacing: 0.05em; font-family: 'Ramabhadra', sans-serif; }
	#toppage .news dd { margin-left: 20px; font-size: 1.2rem; line-height: 140%; }
	#toppage .news dd img { width: 100%; }
	#toppage .news dd h3 { padding: 5px 0; font-weight: bold; }
	#toppage .news dd p { padding: 0; }
	#toppage .news dd a { color: #111; text-decoration: none; }
	
#toppage .bnr { width: 96%; padding: 30px 0 10px 0; margin: auto;}
	#toppage .bnr ul { margin: 30px auto 10px auto !important; }

#toppage #concept { padding-top: 50px; }
#toppage .concept { width: 90%; background-color: #f2f2f2; margin: 20px auto; padding: 30px 8%; position: relative; }
	#toppage .concept h3 { line-height:160%; font-size: 1.5rem; font-weight: bold; padding-top: 20px !important; }
	#toppage .concept p { line-height: 180%; }
	#toppage .concept p.fs13 { padding-top: 0 !important; }
	#toppage .concept p.center { padding-top: 20px !important; }
	#toppage .concept img.kadot { position:absolute; top: -15px; right: -15px; width: 60px;  }
	#toppage .concept img.kadob { position:absolute; bottom: -15px; left: -15px; width: 60px }

.course { width: 96%; margin: 60px auto; }
	.course ul { margin:50px auto; width: 100%; max-width: 1000px; font-size: 1.2rem;  }
	.course li { display: inline-block; width:50%; height: 197px; position: relative; vertical-align: top;
		background-image: url("/images/course_bg2.png"); background-position: bottom right; background-repeat: no-repeat; }
	.course li:nth-child(2n+1) { border-left: 1px solid #d8d8d8; }
	.course li:nth-child(1),.course li:nth-child(2) { height: 198px; }
	.course li::before { content: ""; top: -1px; left: -1px; position: absolute; z-index: 2;
		border-bottom:20px solid transparent; border-left:20px solid #fff; }
	.course li::after { content: ""; bottom:0; left:-1px; position: absolute; z-index: 2;
		border-bottom:20px solid #fff; border-right:20px solid transparent; }
	.course li a { display: block; padding:15px 5px 0 8px; text-align: center; width: 100%; text-decoration: none; 
		position: relative; color: #111; }
	.course li a:hover { color: #a50012; }
	.course li a span { color: #d8d8d8; font-size: 2.2rem; font-family: 'Ramabhadra', sans-serif; 
		position: absolute; top:20px; left:20px; }
	.course li a img { margin-bottom:8px; }
	.course li a p { font-size:1.1rem; line-height:150%; }

#toppage .application { width: 100%; padding: 20px 0; background-color: #a50012; color: #fff; }
	#toppage .application h2 { color: #fff; }
	#toppage .application h2:before { background: #fff; }
	#toppage .application table { width: 90%; margin: 30px auto; }
	#toppage .application td { display: block; width: 100%; }
	#toppage .application td:nth-child(1) h3 { font-size: 1.6rem; line-height: 150%; }
	#toppage .application td:nth-child(1) h3 span { font-size: 1.1rem; }
	#toppage .application td:nth-child(1) p { font-size: 1.3rem; line-height: 150%;  }
	#toppage .application td:nth-child(2) { font-size: 1.3rem; }
	#toppage .application td:nth-child(2) h3 { font-size: 1.6rem; line-height: 100%; }
	#toppage .application td:nth-child(2) h3 span { font-size: 1.5rem; }
	#toppage .application td a { display: block; background-color: #fff; color: #a50012; padding:30px 15px; text-decoration: none; 
	background-image: url("/images/arw_red.png"); background-position:right 20px bottom 20px; background-repeat: no-repeat; }
	#toppage .application td a img { float: left; margin-right: 20px; }
	

/* --------------------------------------------------------------
  固定ページ
-------------------------------------------------------------- */

#title { width: 100%; margin: 0 auto; height: 100px; background: url("/images/title_bg.png") repeat-x left; position: relative;}
	#title img { position: absolute; bottom:30px; right: 0; width: 55%; height: auto;}
	#title h2 { padding-left: 1%; padding-top: 15px; font-size: 1.5rem; font-weight: bold; }
	#title h3 { padding-left: 1%; padding-top: 10px; font-family: 'Ramabhadra', sans-serif; font-size: 1.6rem;  }
	#title ul.pankuzu { color: #fff; position: absolute; bottom:10px; left: 0; display: block; font-size: 1.0rem; }
	#title ul.pankuzu li { display: inline; padding: 0 0 0 5px; }
	#title ul.pankuzu li:after { content: '〉'; padding-left: 5px; }
	#title ul.pankuzu li:last-child:after { content: none; }
	#title ul.pankuzu li a { color: #fff; text-decoration: none; }
	#title ul.pankuzu li a:hover { border-bottom-width:1px; border-bottom-style:solid; padding-bottom:2px; }
	
.contents h3 { font-size: 1.8rem; position: relative; padding:15px 0 5px 0; text-align: center; line-height: 150%; }
.contents h3:before { position:absolute; bottom:0; left:calc(50% - 25px); width:50px; height:3px; content: ''; background: #a50012; }
	.contents h3.tit { font-size: 2.5rem; font-family: 'Ramabhadra', 'Noto Sans JP', sans-serif; }

.contents h4 { font-size: 1.7rem; padding: 15px 0; line-height: 110%; }
	.contents h4 img { vertical-align: middle; margin-right: 18px; width: auto; height: 60px; }

.contents h5 { font-size: 1.5rem; padding:15px; text-align: center; line-height: 300%; }
	.contents h5:before {content: url("/images/bdr_dia-l.png"); vertical-align:top; padding-right:20px;  }
	.contents h5:after { content: url("/images/bdr_dia-r.png"); vertical-align:top; padding-left:20px;  }

.contents h6 { font-size: 1.5rem; padding:15px; text-align: center; line-height: 110%;
	background-color: #f9d3e3; color: #aa0000; margin:20px 0 10px 0; }

.footbtn { width: 100%; padding: 20px 0; background-color: #a50012; color: #fff; margin-top: 80px; }
	.footbtn h2 { color: #fff; }
	.footbtn h2:before { background: #fff; }
	.footbtn table { width: 90%; margin: 0 auto; }
	.footbtn td { display: block; width: 100%; }
	.footbtn td:nth-child(1) { padding-bottom:10px; }
	.footbtn td:nth-child(1) h3 { font-size: 1.5rem; line-height: 180%; }
	.footbtn td:nth-child(1) h3 span { font-size: 2.5rem; font-family: 'Ramabhadra', sans-serif; }
	.footbtn td:nth-child(1) p { width: 90%; max-width: 450px; float: right; margin-right: 50px;  line-height: 150%; }
	.footbtn td:nth-child(2) { font-size: 1.3rem; line-height: 150%; }
	.footbtn td:nth-child(2) h3 { font-size: 2.0rem; line-height: 100%; }
	.footbtn td:nth-child(2) h3 span { font-size: 1.5rem; }
	.footbtn td a { display: block; background-color: #fff; color: #a50012; padding:30px 15px; text-decoration: none; 
	background-image: url("/images/arw_red.png"); background-position:right 20px bottom 20px; background-repeat: no-repeat; }
	.footbtn td a img { float: left; margin-right: 20px; }

div.bdrblock { width: 100%; border: 1px solid #d8d8d8; padding: 20px 10px 10px 10px; margin: 50px 0;  }

dl.redwaku { width: 100%; }
	dl.redwaku dt { color: #fff; background-color: #a50012; font-size: 1.6rem; text-align: center; padding: 20px; }
	dl.redwaku dd { padding: 20px; border: 2px solid #a50012; line-height: 180%; }
	
table.list { width: 100%; margin: 50px 0; font-size: 1.3rem; }
	table.list th { padding: 10px; background-color: #efefef; text-align: center; border: 1px solid #ddd; }
	table.list td { padding: 10px; border: 1px solid #ddd; line-height: 135%; }
	table.list th:nth-child(1), table.list th:nth-child(3), table.list th:nth-child(4), table.list td:nth-child(1), table.list td:nth-child(3) { white-space: nowrap; }
	table.list td:nth-child(2) { min-width: 300px; }
	table.list td:nth-child(1), table.list td:nth-child(4) { text-align: center; padding:5px !important; }
	table.list td:nth-child(4) img { width: auto; height: 25px; }
	table.list td a { color: #111; text-decoration: none; }
	table.list td a:hover { border-bottom-width:1px; border-bottom-style:solid; padding-bottom:1px; }
	table.list td a i { margin-left: 5px; }

table.list2 { width: 100%; margin: 50px 0; }
	table.list2 th { padding: 10px; background-color: #efefef; text-align: center; border: 1px solid #ddd; }
	table.list2 td { padding: 10px; border: 1px solid #ddd; line-height: 120%; }
	table.list2 td:nth-child(1), table.list2 th:nth-child(2), table.list2 td:nth-child(4) { white-space: nowrap; }
	table.list2 td:nth-child(2) { text-align: center; }
	table.list2 td:nth-child(3) { min-width: 300px; }
	table.list2 td a { color: #111; text-decoration: none; }
	table.list2 td a:hover { border-bottom-width:1px; border-bottom-style:solid; padding-bottom:1px; }
	table.list2 td a i { margin-left: 5px; }

p.aboutxt { margin: 30px 0; line-height: 160%; }

dl.aboutpbl { background-color: #f2f2f2; padding: 15px; margin: 30px 0; line-height: 160%; }
	dl.aboutpbl dt { font-weight: bold; }
	dl.aboutpbl dd { font-size: 1.2rem; }
	
table.image3 { margin: auto; }
	table.image3 td { text-align: center; vertical-align: bottom; padding: 0 5px; }
	
ul.courses { width: 100%; margin: 40px auto; }
	ul.courses li { display: inline-block; width: 48%; margin-right: 4%; margin-bottom: 40px; }
	ul.courses li:nth-child(2n) { margin-right: 0; }
	ul.courses li p { font-size: 1.1rem; height: 100px; }
	ul.courses li a { display: block; color: #111; text-decoration: none; border-bottom: 1px solid #d8d8d8; position: relative;}
	ul.courses li a:after { content: ""; bottom:0; right:0; position: absolute; z-index: 2;
		border-bottom:12px solid #000; border-left:12px solid transparent; }
	ul.courses li a:hover:after { border-bottom:12px solid #a50012; border-left:12px solid transparent; }

table.class-image { width: 100%; margin: 40px auto; }
	.class-image th { letter-spacing: 0.05em; padding: 5px; border: 1px solid #d8d8d8; text-align: left; white-space: nowrap; }
	.class-image th.tit1 { background-color: #999; color: #fff; }
	.class-image th.tit2 { background-color: #000; color: #fff; }
	.class-image th.tit3 { background-color: #a50012; color: #fff; }
	.class-image td { padding: 10px; border: 1px solid #d8d8d8; line-height: 125%; }
	.class-image td.tit1 { background-color: #f2f2f2; color: #aaa; white-space: nowrap; }
	.class-image td.tit2 { background-color: #f2f2f2; color: #111; white-space: nowrap; }
	.class-image td.tit3 { background-color: #f2f2f2; color: #a50012; white-space: nowrap; }

ul.join { width: 100%; margin: 40px auto; }
	ul.join li { display: inline-block; width: 49%; margin-right: 2%; background-color: #eaf6fd; vertical-align: top; text-align: center; border-top:4px solid #002f7c; margin-bottom: 15px; }
	ul.join li:nth-child(2n) { margin-right: 0; }
	ul.join li h4 { font-size: 1.4rem; font-weight: bold; color: #002f7c; }
	ul.join li div { background-color: #f2f2f2; margin-top: 20px; text-align: left; }
	ul.join li p { padding: 10px; }
	ul.join li p.tit { text-align: center; font-size: 1.3rem; padding: 10px 5px; }

.whimage { background-color: #fceef4; padding: 10px 5px; margin: 20px auto; text-align: right; }
.chimage { background-color: #f7efcf; padding: 10px 5px; margin: 20px auto; text-align: right; }
.msimage { background-color: #eaf5fc; padding: 10px 5px; margin: 20px auto; text-align: right; }

dl.howto { padding: 40px 0 0; }
	dl.howto dt { float: left; margin: 3px 0 0; }
	dl.howto dt span { background-color: #ffe100; padding: 3px 5px; color: #c30d23; font-size: 1.5rem; font-weight: bold; }
	dl.howto dd { margin: 0 0 0 85px; line-height: 150%; font-weight: bold; }

dl.voice { padding: 20px 0; border-bottom: 1px solid #999; }
	dl.voice dt { }
	dl.voice dt img { width: 35%; float: right; margin-left: 1%; margin-right: 3px; }
	dl.voice dt h4 { width: 62%; color: #a50012; font-size: 1.3rem; font-weight:bold; line-height: 140%; padding-top: 0 !important; }
	dl.voice dt span.name { display: block; width: 60%; text-align: center; padding: 7px 0; background-color: #a50012; color: #fff; margin-left: 5px; line-height: 120%; }
	dl.voice dt p { color: #a50012; font-size: 1.1rem; margin-left: 5px; }
	dl.voice dd { line-height: 160%; padding: 10px 2px 10px 5px; font-size: 1.3rem; }

div.interview { border: 1px solid #a50012; padding: 10px; color: #a50012; font-size: 1.6rem; line-height: 180%; margin:20px 0 10px 0; }
	div.interview img { width: 35%; float: right; margin-left: 5%; }
dl.interview { padding: 15px 0; border-bottom: 1px solid #999; }
    dl.interview:last-of-type { border-bottom:none; }
	dl.interview dt { color: #a50012; padding: 0 5px; line-height: 130%; }
	dl.interview dd { padding: 10px 2px 10px 5px; line-height: 160%; font-size: 1.3rem; }

span.icon { float: right; text-align: right; padding-top: 3px; }
	span.icon img { width: auto; height: 25px; }
	span.icon a:hover { border-bottom-width:0 !important; border-bottom-style:solid !important; padding-bottom:0 !important; }

img.classicon { width: auto; height: 35px; margin-right: 5px; vertical-align: middle; padding-bottom: 8px; padding-top: 4px; }

ul.worldbtn { margin: 20px auto; width: 100%; font-size: 1.3rem; }
	ul.worldbtn li { display: inline-block; width: 49%; margin-right: 2%; text-align: center; vertical-align: middle; margin-bottom: 10px; }
	ul.worldbtn li:nth-child(2n) { margin-right: 0; }
	ul.worldbtn li a { display:block; background-color: #fdeef5; border: 1px solid #c30d26; border-radius: 50px; height: 40px; vertical-align: middle; text-decoration: none; color: #c30d26; padding-top: 11px; box-shadow: 0 2px 3px #aaa; line-height: 110%; }
	ul.worldbtn li a.line2 { padding-top: 4px; }

ul.culturebtn { margin: 20px auto; width: 100%; font-size: 1.3rem; }
	ul.culturebtn li { display: inline-block; width: 49%; margin-right: 2%; text-align: center; vertical-align: middle; margin-bottom: 10px; }
	ul.culturebtn li:nth-child(2n) { margin-right: 0; }
	ul.culturebtn li a { display:block; background-color:#f7efcf; border:1px solid #e8d27b; border-radius: 50px; height: 40px; vertical-align: middle; text-decoration: none; color: #c30d26; padding-top: 11px; box-shadow: 0 2px 3px #aaa; line-height: 110%; }
	ul.culturebtn li a.line2 { padding-top: 4px; }

ul.museumbtn { margin: 30px auto; width: 100%; font-size: 1.3rem; text-align: center; }
	ul.museumbtn li { display: inline-block; width: 49%; margin-right: 2%; text-align: center; vertical-align: middle; margin-bottom: 10px; }
	ul.museumbtn li:nth-child(2n) { margin-right: 0; }
	ul.museumbtn li a { display:block; background-color: #ebf5fe; border: 1px solid #00307a; border-radius: 50px; height: 40px; vertical-align: middle; text-decoration: none; color: #00307a; padding-top: 11px; box-shadow: 0 2px 3px #aaa; line-height: 110%; }
	ul.museumbtn li a.line2 { padding-top: 4px; }

ul.report { margin: 30px auto; width: 100%; }
	ul.report li { display: inline-block; width:49%; margin-right: 2%; vertical-align: top; margin-bottom: 30px; }
	ul.report li:nth-child(2n) { margin-right: 0; }
	ul.report li ul { margin: 5px auto; font-size: 1.2rem; }
	ul.report li ul li { width: 49%; margin: 0; text-align: center; line-height: 130%; margin-bottom: 5px; }
	ul.report li ul li a { text-decoration: none; color: #111; }
	ul.report li ul li a:hover { color:#c30d26; }

.pbl_tit { position:relative; margin: 30px auto; padding: 20px 0; }
	.pbl_tit p { position: absolute; background:rgba(255,255,255,0.5); text-align: center; padding: 10px 5px; 
		top:40%; left: 0; transform:translate(0,0); width: 100%; font-size:1.6rem; font-weight: bold; color: #c30d23; }

img.rimg { float: right; margin-left:3%; margin-bottom: 10px; width: 50%; }

ul.stu { margin: 30px auto; }
	ul.stu li { margin: 10px; padding: 10px 10px 10px 40px; line-height: 150%;
		background-image: url("/images/i_stu.png"); background-repeat: no-repeat; background-position: left; }
	
table.classinfo { width: 100%; margin: 30px 0 50px 0; font-size: 1.3rem; }
	table.classinfo th { padding: 10px; border:1px solid #888; white-space: nowrap; }
	table.classinfo td { padding: 10px; border:1px solid #888; }
	table.classinfo tr:nth-child(2n) { background-color: #ddd; }
	table.classinfo td.teacher { border:none; padding-right:8px; width:25%; max-width: 160px; vertical-align: top; padding-top: 0 !important; }

.student_voice { padding: 0; }
	.student_voice:nth-of-type(1) { border-top:1px solid #ccc; margin-top: 30px; }
	.student_voice table { width: 100%; }
	.student_voice td { vertical-align: middle; padding: 10px 5px; display: block; width: 100%;
		border-bottom: 1px solid #ccc;  }
	.student_voice td a { background-repeat: no-repeat; background-position: left; background-size: 100px;
		display: block; padding: 3px 0 0 120px; min-height: 100px; text-decoration: none; }
	.student_voice td a span { display: block; margin: 6px 0; line-height: 125%; }
	.student_voice td a span.name { font-size: 1.6rem; color: #a50012; }
	.student_voice td a span.univ { background-color: #a50012; color: #fff; padding: 7px 5px 7px 10px;
		font-size: 1.2rem; width: 200px; }
	.student_voice td a span.subj { font-size: 1.4rem; color: #a50012; }

.teacher_voice { padding: 0; border-bottom:1px solid #ccc; }
	.teacher_voice:nth-of-type(1) { border-top:1px solid #ccc; margin-top: 30px; }
	.teacher_voice h4 { font-size: 1.6rem; text-align: center; padding-bottom: 25px;}
	.teacher_voice table { width: 100%; }
	.teacher_voice td { vertical-align: middle; padding: 10px 5px; display: block; width: 100%; }
	.teacher_voice td:nth-child(1) { border-bottom: 1px dashed #ccc; }
	.teacher_voice td a { background-repeat: no-repeat; background-position: left; background-size: 100px;
		display: block; padding: 3px 0 0 120px; min-height: 100px; text-decoration: none; }
	.teacher_voice td a span { display: block; margin: 10px 0; line-height: 135%; }
	.teacher_voice td a span.name { font-size: 1.6rem; color: #a50012; }
	.teacher_voice td a span.univ { font-size: 1.4rem; color: #a50012; }

}