@charset "UTF-8";
/*--------------------------------------------------
	基本ルール
--------------------------------------------------*/
/*font-sizeはremで指定しています。15px=1.5rem。*/
html {
	font-size: 62.5%;
}
body {
	font-size: 17px;
	font-size: 1.7rem;
	font-weight: 500;
	font-family: "游ゴシック体","Yu Gothic",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS P Gothic",sans-serif;
	line-height: 1.8;
	color: #1c3858;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
p, h1, h2, h3, h4, h5, h6, ul, li, ol, dl, dt, dd {
	margin: 0;
	padding: 0;
}
ul, li, ol, dl, dt, dd {
	list-style: none;
}
a {
	color: #e35b00;
}
a:hover {
	text-decoration: none;
}
a:visited {
	color: #d0956e;
}
strong {
}
img {
	margin: 0;
	vertical-align: middle;
	border: none;
}
/*--------------------------------------------------
	共通部分のレイアウト
--------------------------------------------------*/
header, .mainimg, footer {
	width: 100%;
}
/*ヘッダー*/
header {
	display: flex;
	flex-flow: wrap;
	padding-bottom: 1%;
	margin-bottom: 2px;
	background: #ff9600 url(../img/col_blue-nav.png) left bottom no-repeat;
	background-size: 100% 3%;
}
header .hdr_bar {
	width: 100%;
}
header .hdr_bar p {
	padding: 1.5%;
}
header .hdr_box {
	position: relative;
	width: 100%;
}
header .hdr_box h1 {
	width: 60%;
	width: calc(100% - 146px);
	min-height: 72px;
}
header .hdr_box h1 a {
	display: block;
	width: 100%;
	min-height: 72px;
	box-sizing: border-box;
	text-indent: -7777px;
	overflow: hidden;
	background: url(../img/logo_wh.png) left 6px top 50% no-repeat;
	background-size: 96% auto;
}
header .contact {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
}
header .contact .tel {
	width: 72px;
	height: 72px;
}
header .contact .tel a {
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -7777px;
	overflow: hidden;
	background: rgba(255,150,0,0.6) url(../img/ico_hdrtel.png) center no-repeat;
	background-size: 50%;
	border-left: 1px solid #fff;
}
header .contact .yt,
header .contact .in,
header .contact .fb,
header .contact .tw,
header .contact .ln,
header .contact .mail {
	display: none;
}
header .contact .navbtn {
	width: 72px;
	height: 72px;
	text-indent: -7777px;
	overflow: hidden;
	background: rgba(255,150,0,0.6) url(../img/ico_navbtn.png) center no-repeat;
	background-size: 50%;
	border-left: 1px solid #fff;
}
header .contact .navbtn.navopen {
	background: rgba(255,150,0,0.6) url(../img/ico_navbtn-close.png) center no-repeat;
	background-size: 50%;
}
@media print, screen and (min-width: 600px) {
	header {
		display: block;
		background: none;
	}
	header .hdr_bar {
		line-height: 1.3;
		min-height: inherit!important;
	}
	header .hdr_bar p {
		width: 1008px;
		padding: 6px 0;
		margin: 0 auto;
		box-sizing: border-box;
	}
	header .hdr_box {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		width: 1008px;
		margin: 0 auto;
	}
	header .hdr_box h1 {
		width: 50%;
		padding: 0;
	}
	header .hdr_box h1 a {
		background: url(../img/logo_or.png) no-repeat;
		background-size: auto 100%;
	}
	header .contact {
		position: relative;
		display: flex;
		flex-flow: nowrap;
		justify-content: flex-end;
		align-items: flex-end;
		width: 50%;
	}
	header .contact li {
		margin-left: 16px;
	}
	header .contact li.yt,
	header .contact li.in,
	header .contact li.fb,
	header .contact li.tw,
	header .contact li.ln {
		display: block;
	}
	header .contact li.yt:hover,
	header .contact li.in:hover,
	header .contact li.fb:hover,
	header .contact li.tw:hover,
	header .contact li.ln:hover {
		opacity: 0.7;
	}
	header .contact li a img {
		height: 22px;
	}
	header .contact li.ln a img {
		height: 96px;
	}
	header .contact .tel,
	header .contact .navbtn {
		display: none;
	}
}
/*一定距離スクロールすると電話・メニューボタンがページ右上に固定されるようにする*/
.fixed .contact {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 999;
}
@media print, screen and (min-width: 600px) {
	.fixed .contact {
		position: relative;
	}
}
/*ナビゲーション*/
nav {
	position: absolute;
	width: 80%;
	height: 90%;
	top: -100%;
	left: 10%;
	overflow: auto;
	z-index: 999;
	transition: 0.4s cubic-bezier(0.38, 0, 0.25, 1);
	background: rgba(255,255,255,0.97);
}
/*メニューアイコンをタップした際のナビの動き*/
nav.navopen {
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	transition: 0.4s cubic-bezier(0.38, 0, 0.25, 1);
}
/*SPナビ・PCサイドナビ共通*/
ul.nav {
	padding: 24px;
	font-size: 0;
}
ul.nav li {
	font-size: 1.5rem;
	background: url(../img/col_blue-nav.png) left top 0.85em no-repeat;
	background-size: 4px 1.4em;
	border-top: 1px solid #e5dfe6;
}
ul.nav li:first-child {
	border: none;
}
ul.nav li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 12px 0 12px 16px;
	box-sizing: border-box;
	color: #1c3858;
	font-weight: bold;
	text-decoration: none;
	background-image: url(../img/arr_blue.png);
	background-repeat: no-repeat;
	background-size: auto 35%;
	background-position: right 5px center;
}
ul.nav li a:visited {
	color: #1c3858;
}
ul.nav ul {
	padding: 0;
	padding-left: 20%;
}
ul.nav li li {
	background-size: 2px 1.4em;
}
ul.nav li li a {
	font-weight: normal;
	background-image: url(../img/arr_blue-l.png);
}
/*SPナビSNSリンク*/
nav ul.sns {
	padding: 24px;
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
}
nav ul.sns li {
	width: calc(50% - 4px);
	margin-bottom: 8px;
}
nav ul.sns li.yt {
	background: #f00;
}
nav ul.sns li.in {
	border: 1px solid #dcd7d8;
}
nav ul.sns li.fb {
	background: #4267b2;
}
nav ul.sns li.tw {
	background: #000;
}
nav ul.sns li.ln {
	background: #06c755;
}
nav ul.sns li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 7px 0 9px;
	box-sizing: border-box;
	text-align: center;
}
nav ul.sns li a img {
	width: 28px;
	height: 28px;
}
nav p.hatenablog,
nav p.mailmagazine {
	padding: 0 24px 24px;
}
nav p.hatenablog img,
nav p.hatemailmagazine {
	width: 100%;
	height: auto;
}
@media print, screen and (min-width: 600px) {
	nav {
		width: 100%;
		position: relative;
		top: auto;
		left: auto;
		margin-bottom: 2px;
		overflow: visible;
		background: #ff9600 url(../img/col_blue-nav.png) bottom no-repeat;
		background-size: 100% 6px;
	}
	nav ul.nav {
		width: 1008px;
		padding: 0;
		padding-right: 10px;
		margin: 0 auto;
		display: flex;
		flex-flow: nowrap;
		justify-content: space-around;
		background: url(../img/line_slash-wh.png) right 0px top -1px no-repeat;
	}
	nav ul.nav li {
		position: relative;
		width: 100%;
		margin: 0;
		box-sizing: border-box;
		border: none;
		background: none;
	}
	nav ul.nav li:hover {
		background-image: url(../img/col_blue-nav2.png);
		background-repeat: no-repeat;
		background-position: left bottom;
		background-size: 100% 6px;
	}
	nav ul.nav li a {
		padding: 1.6em 0 1.6em 12px;
		color: #fff;
		font-size: 1.55rem;
		text-align: center;
		background: url(../img/line_slash-wh.png) -114% -1px no-repeat;
	}
	nav ul.nav li a:visited {
		color: #fff;
	}
	nav ul.nav li a[href*="link"] {
		/* padding-left: 32%; */
		/* text-align: left; */
	}
	nav ul.nav > li:first-child a {
		/* background: none; */
	}
	nav ul.nav ul {
		display: none;
		position: absolute;
		left: 0;
		z-index: 1000;
		width: 100%;
		padding: 0;
	}
	nav ul.nav ul li {
		width: 100%;
		background: rgba(255,150,0,0.85);
		border-top: 1px solid #fff;
	}
	nav ul.nav ul li a {
		padding: 1em 4px 0.85em;
		background: none;
	}
	nav ul.subnav,
	nav ul.sns,
	nav p.hatenablog {
		display: none;
	}
}
/*サイドバーナビゲーション*/
.side .search {
	padding: 16px 0;
	margin-bottom: 16px;
}
.side .sidenav {
	display: none;
}
.side .sidenav .subnav {
	padding-top: 16px;
	margin-top: 16px;
	border-top: 1px solid #cdc8ce;
}
.side ul.ranjolink li {
	margin-bottom: 10px;
}
.side ul.ranjolink li img {
	width: 100%;
	height: auto;
}
@media print, screen and (min-width: 600px) {
	.side .sidenav {
		display: block;
		margin-bottom: 24px;
	}
	.side ul {
		width: 100%;
		box-sizing: border-box;
	}
	.side ul.nav {
		padding: 0;
	}
	.side ul.nav li a {
		padding-top: 8px;
		padding-bottom: 8px;
	}
	.side ul.nav li a:hover {
		background-position: right 3px center;
	}
	.side ul.nav li ul {
		width: 100%;
	}
	.side .search input[type="text"] {
		width: 100%;
		box-sizing: border-box;
	}
}
/*検索結果*/
section .sec_content article.searchresult h3 {
	margin: 24px 0 8px;
	font-size: 1.5rem;
}
/*コンテンツ*/
/*content（main・side含む）を内包するwrapperです。*/
.mainimg {
	margin-bottom: 48px;
	background-image: url(../img/mainimg-other.jpg);
	background-position: center 0;
	background-size: 160% auto;
	background-repeat: no-repeat;
}
#giin .mainimg,
.mainimg.giinimg {
	background-color: #e5e0e7;
	background-image: url(../img/mainimg-giin.jpg?220105);
}
#rakugo .mainimg,
.mainimg.rakugoimg {
	background-color: #685628;
	background-image: url(../img/mainimg-rakugo.jpg);
}
#bunjin .mainimg,
.mainimg.bunjinimg {
	background-color: #fff;
	background-image: url(../img/mainimg-bunjin.jpg);
}
.mainimg .mainimg_box {
	height: 100px;
}
@media print, screen and (min-width: 600px) {
	.mainimg {
		background-size: auto 150px;
		background-color: #fefbe8;
	}
	.mainimg .mainimg_box {
		height: 150px;
	}
}
.wrapper {
	width: 100%;
	box-sizing: border-box;
}
.wrapper main {
	padding: 0 1em 2em;
}
.wrapper.page main {
	background-image: url(../img/bg_content-pen-ot.png);
	background-repeat: no-repeat;
	background-position: right 2% top;
	background-size: 166px 140px;
}
	#giin .wrapper.page main,
	#cat_giin .wrapper.page main,
	#cat_daily .wrapper.page main,
	#cat_harukaze .wrapper.page main,
	#cat_interpellation .wrapper.page main,
	#cat_report .wrapper.page main {
		background-image: url(../img/bg_content-pen-gi.png);
	}
	#rakugo .wrapper.page main,
	#cat_rakugo .wrapper.page main,
	#cat_rakugo_news .wrapper.page main {
		background-image: url(../img/bg_content-pen-ra.png);
	}
	#bunjin .wrapper.page main,
	#cat_bunjin .wrapper.page main,
	#cat_campuslife .wrapper.page main,
	#cat_haiku .wrapper.page main,
	#cat_randoku .wrapper.page main,
	#cat_campuskamoku .wrapper.page main {
		background-image: url(../img/bg_content-pen-bu.png);
	}
	#ranjoarchives .wrapper.page main {
		background-image: url(../img/bg_content-book.png);
	}
.wrapper .side {
	padding: 0 1em 0;
}
@media print, screen and (min-width: 600px) {
	.wrapper {
	}
	.wrapper .content {
		width: 1008px;
		margin: 0 auto;
		display: flex;
		flex-flow: nowrap;
		justify-content: space-between;
	}
	.wrapper main {
		width: 716px;
		padding: 0 24px 40px;
		box-sizing: border-box;
	}
	.wrapper .side {
		order: -1;
		width: 260px;
		padding: 0;
		box-sizing: border-box;
	}
}
/*フッター*/
footer {
	color: #fff;
	background: #252b33;
}
footer .ftr_nav {
	display: none;
}
footer .ftr_box {
	padding: 2%;
	text-align: center;
}
footer .ftr_box .logo {
	padding: 0.6em 0 1em;
}
footer .ftr_box .logo img {
	width: 60%;
	height: auto;
}
footer .ftr_box .copy {
	display: block;
	font-size: 1.3rem;
	font-weight: normal;
}
@media print, screen and (min-width: 600px) {
	footer .ftr_nav {
		display: block;
		padding: 20px 0 24px;
		border-bottom: 1px solid #373d45;
	}
	footer .ftr_nav ul {
		width: 1008px;
		margin: 0 auto;
		box-sizing: border-box;
		display: flex;
		flex-flow: nowrap;
		justify-content: space-between;
	}
	footer .ftr_nav li a {
		padding: 0 16px;
		color: #fff;
		text-align: center;
		font-size: 1.6rem;
		background: url(../img/col_white.png) left center no-repeat;
		background-size: 1px 85%;
	}
	footer .ftr_nav li:first-child a {
		background: none;
	}
	footer .ftr_nav ul.ftr_nav_main {
		margin-bottom: 4px;
	}
	footer .ftr_nav ul.ftr_nav_sub {
		justify-content: flex-start;
	}
	footer .ftr_box {
		width: 1008px;
		padding: 24px 0;
		margin: 0 auto;
	}
	footer .ftr_box .logo {
		width: 44%;
		padding: 0 0 6px;
		margin: 0 auto;
	}
}
/*--------------------------------------------------
	共通の設定
--------------------------------------------------*/
/*floatした子要素を内包する親要素にclass="clear"を
付与することでfloatを解除します。*/
.clear:after {
	content: " ";
	display: block;
	clear: both;
}
.figure {
	margin: 0 auto 1em;
	text-align: center;
}
.figure img {
	width: 60%;
}
/*詳しく見る*/
.more a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 14px 0;
	text-indent: -1.8rem;
	text-align: center;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	tap-highlight-color: rgba(0,0,0,0);
	background-image: url(../img/arr_wh.png);
	background-repeat: no-repeat;
	background-position: 96% 49%;
	background-size: auto 50%;
	z-index: 999;
}
.more a:hover {
	background-position: 96.5% 49%;
}
.mailmagazine img {
	width: 100%;
	height: auto;
	margin-top: 24px;
}
/*共通about枠*/
.aboutme .sns #fb-page-area {
	width: 100%;
	margin-bottom: 16px;
}
.aboutme .sns #fb-page-area .fb-page {
	height: 500px;
}
.aboutme .sns {
	margin-bottom: 20px;
}
.aboutme .sns ul {
	margin-bottom: 16px;
}
.aboutme .sns li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 8px;
	box-sizing: border-box;
	text-decoration: none;
	text-align: center;
	color: #fff;
	font-weight: bold;
}
.aboutme .sns li a img {
	width: 28px;
	height: 28px;
	padding-bottom: 2px;
	margin-right: 8px;
}
.aboutme .sns li.fb {
	margin-bottom: 8px;
	background: #4267b2;
}
.aboutme .sns li.fb:hover {
	background: #5378c5;
}
.aboutme .sns li.tw {
	background: #000;
}
.aboutme .sns li.tw:hover {
	background: #2b2b2b;
}
.aboutme .sns #insta-area {
	margin-bottom: 24px;
}
.aboutme .sns #insta-area h3 img {
	width: 31px;
	height: auto;
	margin-right: 4px;
	vertical-align: top;
}
.aboutme .sns #insta-area h3 span {
	font-size: 1.5rem;
}
.aboutme .sns #insta-area .insta {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 99%;
	background: radial-gradient(circle farthest-corner at 32% 106%, rgb(255, 225, 125) 0%, rgb(255, 205, 105) 10%, rgb(250, 145, 55) 28%, rgb(235, 65, 65) 42%, transparent 82%), linear-gradient(135deg, rgb(35, 75, 215) 12%, rgb(195, 60, 190) 58%);
}
.aboutme .sns #insta-area .insta iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: calc(100% - 2px)!important;
	height: 100%;
	padding: 3px;
	margin: 1px;
	background: #fff;
	box-sizing: border-box;
}
.aboutme .sns #youtube-area iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 0.5625;
}
.aboutme .hatenablog img {
	width: 100%;
	height: auto;
}
.aboutme .about dl {
	display: flex;
	flex-flow: nowrap;
	justify-content: space-between;
	margin-bottom: 16px;
}
.aboutme .about dt {
	width: 160px;
}
.aboutme .about dd {
	width: calc(100% - 160px);
	padding: 0 8px;
	box-sizing: border-box;
}
.aboutme .about dt img,
.aboutme .about dd h4 img {
	width: 100%;
	height: auto;
}
.aboutme .about dd h4 {
	margin-bottom: 16px;
}
.aboutme .about dd li img {
	width: 39px;
	margin-right: 4px;
	vertical-align: -0.1em;
}
.aboutme .about .gmap {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
	overflow: hidden;
}
.aboutme .about .gmap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media print, screen and (min-width: 600px) {
	.aboutme .about dl {
		display: block;
	}
	.aboutme .about dt {
		margin: 0 auto 16px;
		text-align: center;
	}
	.aboutme .about dd {
		width: 100%;
	}
}
.volunteer {
	padding: 16px 24px;
	background: #ffd395;
}
.volunteer h3 {
	margin-bottom: 8px;
	font-size: 2.2rem;
}
/*パンくず*/
.path {
	display: flex;
	flex-flow: wrap;
	justify-content: flex-start;
	padding-left: 12px;
	margin-bottom: 16px;
	background: url(../img/col_black.png) left 0.2em no-repeat;
	background-size: 4px 18px;
}
.path li {
	margin-right: 8px;
}
.path li:first-letter {
	font-feature-settings: "palt";
}
.path li a {
	padding-right: 16px;
	background: url(../img/arr_black.png);
	background-repeat: no-repeat;
	background-size: auto 70%;
	background-position: right center;
}
.path li:last-child a {
	background: none;
}
.breadcrumbs span[property="name"] {
	display: inline-block;
	padding: 0;
	margin-top: -3px;
	vertical-align: middle;
	max-width: 160px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
/*ページャー*/
ul.pagination {
	display: flex;
	margin: 16px 0;
	flex-flow: wrap;
	justify-content: center;
}
ul.pagination .page_num {
	display: block;
	width: 100%;
	text-align: center;
}
ul.pagination li {
	margin: 0 2px;
	font-size: 1.4rem;
	border: 1px solid #1c3858;
}
ul.pagination li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 6px;
	box-sizing: border-box;
	text-decoration: none;
	color: #1c3858;
	background-repeat: no-repeat;
	background-size: auto 30%;
}
ul.pagination li.current {
	padding: 6px;
	color: #fff;
	background: #1c3858;
}
ul.pagination li a.first {
	padding-left: 16px;
	background-image: url(../img/arr_black-double-rev.png);
	background-position: 6% center;
}
ul.pagination li a.last {
	padding-right: 16px;
	background-image: url(../img/arr_black-double.png);
	background-position: 92% center;
}
ul.pagination li a.prev {
	padding-left: 16px;
	background-image: url(../img/arr_black-rev.png);
	background-position: 8% center;
}
ul.pagination li a.next {
	padding-right: 16px;
	background-image: url(../img/arr_black.png);
	background-position: 94% center;
}
ul.pagination li a:visited {
	color: #1c3858;
}
ul.pagination li a:hover {
	background-color: #d2e7ff;
}
/*本文の中で「画像を左寄せ・文を右寄せ」にするなど、
その場限りのfloatに使用して下さい。*/
@media print, screen and (min-width: 600px) {
	.left {
		float: left;
		width: 66%;
	}
	.right {
		float: right;
		width: 66%;
	}
	.left.figure,
	.right.figure {
		width: 32%;
	}
	.left.figure img,
	.right.figure img {
		width: 100%;
		height: auto;
	}
}
/*--------------------------------------------------
	記事の設定
--------------------------------------------------*/
/*記事カラー*/
.maincontent,
.content_title,
.content_title h2 span,
.content_title .leadtext,
.content_body article .article_title h2,
.content_title .article_update {
	border-color: #f0e5d0;
}
	#giin .maincontent,
	#giin .content_title,
	#giin .content_title h2 span,
	#giin .content_title .leadtext,
	#giin .content_body,
	#giin .content_body article .article_title h2,
	#giin .content_title .article_update,
	#cat_giin .maincontent,
	#cat_giin .content_title,
	#cat_giin .content_title h2 span,
	#cat_giin .content_title .leadtext,
	#cat_giin .content_body,
	#cat_giin .content_body article .article_title h2,
	#cat_giin .content_title .article_update,
	#cat_daily .maincontent,
	#cat_daily .content_title,
	#cat_daily .content_title h2 span,
	#cat_daily .content_title .leadtext,
	#cat_daily .content_body,
	#cat_daily .content_body article .article_title h2,
	#cat_daily .content_title .article_update,
	#cat_harukaze .maincontent,
	#cat_harukaze .content_title,
	#cat_harukaze .content_title h2 span,
	#cat_harukaze .content_title .leadtext,
	#cat_harukaze .content_body,
	#cat_harukaze .content_body article .article_title h2,
	#cat_harukaze .content_title .article_update,
	#cat_interpellation .maincontent,
	#cat_interpellation .content_title,
	#cat_interpellation .content_title h2 span,
	#cat_interpellation .content_title .leadtext,
	#cat_interpellation .content_body,
	#cat_interpellation .content_body article .article_title h2,
	#cat_interpellation .content_title .article_update,
	#cat_report .maincontent,
	#cat_report .content_title,
	#cat_report .content_title h2 span,
	#cat_report .content_title .leadtext,
	#cat_report .content_body,
	#cat_report .content_body article .article_title h2,
	#cat_report .content_title .article_update {
		border-color: #e5dfe6;
	}
	#rakugo .maincontent,
	#rakugo .content_title,
	#rakugo .content_title h2 span,
	#rakugo .content_title .leadtext,
	#rakugo .content_body,
	#rakugo .content_body article .article_title h2,
	#rakugo .content_title .article_update,
	#cat_rakugo .maincontent,
	#cat_rakugo .content_title,
	#cat_rakugo .content_title h2 span,
	#cat_rakugo .content_title .leadtext,
	#cat_rakugo .content_body,
	#cat_rakugo .content_body article .article_title h2,
	#cat_rakugo .content_title .article_update,
	#cat_rakugo_news .maincontent,
	#cat_rakugo_news .content_title,
	#cat_rakugo_news .content_title h2 span,
	#cat_rakugo_news .content_title .leadtext,
	#cat_rakugo_news .content_body,
	#cat_rakugo_news .content_body article .article_title h2,
	#cat_rakugo_news .content_title .article_update {
		border-color: #e6e5d2;
	}
	#bunjin .maincontent,
	#bunjin .content_title,
	#bunjin .content_title h2 span,
	#bunjin .content_title .leadtext,
	#bunjin .content_body,
	#bunjin .content_body article .article_title h2,
	#bunjin .content_title .article_update,
	#cat_bunjin .maincontent,
	#cat_bunjin .content_title,
	#cat_bunjin .content_title h2 span,
	#cat_bunjin .content_title .leadtext,
	#cat_bunjin .content_body,
	#cat_bunjin .content_body article .article_title h2,
	#cat_bunjin .content_title .article_update,
	#cat_campuslife .maincontent,
	#cat_campuslife .content_title,
	#cat_campuslife .content_title h2 span,
	#cat_campuslife .content_title .leadtext,
	#cat_campuslife .content_body,
	#cat_campuslife .content_body article .article_title h2,
	#cat_campuslife .content_title .article_update,
	#cat_haiku .maincontent,
	#cat_haiku .content_title,
	#cat_haiku .content_title h2 span,
	#cat_haiku .content_title .leadtext,
	#cat_haiku .content_body,
	#cat_haiku .content_body article .article_title h2,
	#cat_haiku .content_title .article_update,
	#cat_randoku .maincontent,
	#cat_randoku .content_title,
	#cat_randoku .content_title h2 span,
	#cat_randoku .content_title .leadtext,
	#cat_randoku .content_body,
	#cat_randoku .content_body article .article_title h2,
	#cat_randoku .content_title .article_update,
	#cat_campuskamoku .maincontent,
	#cat_campuskamoku .content_title,
	#cat_campuskamoku .content_title h2 span,
	#cat_campuskamoku .content_title .leadtext,
	#cat_campuskamoku .content_body,
	#cat_campuskamoku .content_body article .article_title h2,
	#cat_campuskamoku .content_title .article_update {
		border-color: #d7e5ee;
	}
.content_title h2 {
	background-image: url(../img/ico_corner-ot.png);
}
	#giin .content_title h2,
	#cat_giin .content_title h2,
	#cat_daily .content_title h2,
	#cat_harukaze .content_title h2,
	#cat_interpellation .content_title h2,
	#cat_report .content_title h2 {
		background-image: url(../img/ico_corner-gi.png);
	}
	#rakugo .content_title h2,
	#cat_rakugo .content_title h2,
	#cat_rakugo_news .content_title h2 {
		background-image: url(../img/ico_corner-ra.png);
	}
	#bunjin .content_title h2,
	#cat_bunjin .content_title h2,
	#cat_campuslife .content_title h2,
	#cat_haiku .content_title h2,
	#cat_randoku .content_title h2,
	#cat_campuskamoku .content_title h2 {
		background-image: url(../img/ico_corner-bu.png);
	}
.content_title .tag {
	background: #d5bb88;
}
	#cat_giin .content_title .tag {
		background: #e5dfe6;
	}
	#cat_daily .content_title .tag {
		background: #3279cc;
	}
	#cat_harukaze .content_title .tag {
		background: #d38dbd;
	}
	#cat_interpellation .content_title .tag {
		background: #9ac77b;
	}
	#cat_report .content_title .tag {
		background: #b2b3b7;
	}
	#cat_rakugo .content_title .tag {
		background: #e6e5d2;
	}
	#cat_rakugo_news .content_title .tag {
		background: #cca740;
	}
	#cat_bunjin .content_title .tag {
		background: #d7e5ee;
	}
	#cat_campuslife .content_title .tag {
		background: #ed685e;
	}
	#cat_haiku .content_title .tag {
		background: #d3be76;
	}
	#cat_randoku .content_title .tag {
		background: #7dc9d4;
	}
	#cat_campuskamoku .content_title .tag {
		background: #9570df;
	}
.content_body,
.content_body article .article_title {
	border-color: #f0e5d0;
}
	#cat_giin .content_body,
	#cat_giin .content_body article .article_title {
		border-color: #e5dfe6;
	}
	#cat_daily .content_body,
	#cat_daily .content_body article .article_title {
		border-color: #3279cc;
	}
	#cat_harukaze .content_body,
	#cat_harukaze .content_body article .article_title {
		border-color: #d38dbd;
	}
	#cat_interpellation .content_body,
	#cat_interpellation .content_body article .article_title {
		border-color: #9ac77b;
	}
	#cat_report .content_body,
	#cat_report .content_body article .article_title {
		border-color: #b2b3b7;
	}
	#cat_rakugo .content_body,
	#cat_rakugo .content_body article .article_title {
		border-color: #b2b3b7;
	}
	#cat_rakugo_news .content_body,
	#cat_rakugo_news .content_body article .article_title {
		border-color: #cca740;
	}
	#cat_bunjin .content_body,
	#cat_bunjin .content_body article .article_title {
		border-color: #d7e5ee;
	}
	#cat_campuslife .content_body,
	#cat_campuslife .content_body article .article_title {
		border-color: #ed685e;
	}
	#cat_haiku .content_body,
	#cat_haiku .content_body article .article_title {
		border-color: #d3be76;
	}
	#cat_randoku .content_body,
	#cat_randoku .content_body article .article_title {
		border-color: #7dc9d4;
	}
	#cat_campuskamoku .content_body,
	#cat_campuskamoku .content_body article .article_title {
		border-color: #9570df;
	}
/*記事*/
.maincontent {
	margin-bottom: 32px;
	border-width: 0 0 1px;
	border-style: solid;
}
.content_title {
	position: relative;
	margin-bottom: 8px;
	border-width: 1px 0 0;
	border-style: solid;
}
.content_title h2 {
	padding-bottom: 0px;
}
.content_title h2 span {
	display: block;
	width: 100%;
	padding-right: 24%;
	padding-bottom: 24px;
	box-sizing: border-box;
}
.content_title h2 span {
	display: inline-block;
}
.content_title h2 span:first-letter {
	font-feature-settings: "palt";
}
.content_title .tag {
	position: absolute;
	display: block;
	width: 22%;
	top: -16px;
	right: 0;
	padding: 12px 16px;
	box-sizing: border-box;
	font-size: 1.5rem;
	text-align: center;
	color: #fff;
	border: none;
}
.content_title .leadtext {
	width: 92%;
	padding: 24px 0 0;
	margin: 0 auto 24px;
	border-width: 1px 0 0;
	border-style: solid;
}
.content_title .leadtext p {
	margin: 0 auto 16px;
}
.content_body {
	padding-top: 24px;
	border-width: 0 0 0;
	border-style: solid
}
.content_body.page {
	border-width: 1px 0 0;
}
.content_body article {
	margin-bottom: 32px;
}
.content_body article .article_title {
	padding-left: 16px;
	margin-bottom: 16px;
	border-width: 0 0 0 6px;
	border-style: solid;
}
.content_body article .article_title h2 {
	padding: 8px 8px 8px 0;
	margin-bottom: 8px;
	font-size: 2rem;
	line-height: 1.4;
	background: none;
	border-width: 0 0 1px;
	border-style: solid;
}
.content_body article .article_title h2 span {
	display: inline-block;
}
.content_body article .article_title h2 span:first-letter {
	font-feature-settings: "palt";
}
.article_update {
	box-sizing: border-box;
	color: #969296;
	background-image: url(../img/ico_update.png);
	background-position: left 0.1em;
	background-repeat: no-repeat;
	background-size: auto 18px;
}
.content_body .article_update {
	padding-left: 22px;
}
.content_title .article_update {
	width: 92%;
	padding: 8px 0 0 22px;
	margin: 0 auto;
	border-width: 1px 0 0;
	border-style: solid;
	background-position: left 10px;
}
.content_body .article_body {
	width: 86%;
	padding-bottom: 40px;
	margin: 0 auto;
}
.content_body .article_body img {
	max-width: 100%;
	height: auto;
}
.content_body .article_body.archive {
	padding-bottom: 0;
}
.content_body article .morearticle {
	text-align: right;
}
.content_body article .morearticle span {
	padding-right: 6px
}
.content_body article .morearticle a {
	padding-right: 16px;
	background: url(../img/arr_ora-double.png) right 0.1em no-repeat;
	background-size: auto 14px;
}
.content_body article .morearticle a:visited {
	color: #e35b00;
}
@media print, screen and (min-width: 600px) {
	.maincontent {
		border-width: 1px;
	}
	.content_title {
		border-width: 0;
	}
	.content_title p {
		width: 92%;
	}
	.content_title p:last-of-type {
		margin-bottom: 16px;
	}
	.content_title .tag {
		width: 19%;
		right: -1px;
	}
	.content_body {
		width: 92%;
		margin: 0 auto;
	}
}
/*--------------------------------------------------
	本文の設定
--------------------------------------------------*/
section {
	margin: 0 0 2em;
}
section h2 {
	padding: 24px;
	line-height: 1.3;
	font-size: 2.4rem;
	background-image: url(../img/ico_corner-ye.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: auto 70px;
}
section .sec_content:after {
	content: " ";
	display: block;
	clear: both;
}
section .sec_content article {
	word-wrap: break-word;
	overflow-wrap: break-word;
}
section .sec_content article:after {
	content: " ";
	display: block;
	clear: both;
}
section .sec_content article section {
	padding-bottom: 32px;
	margin-bottom: 48px;
	border-bottom: 1px solid #dddadd;
}
section .sec_content article section:last-child {
	margin-bottom: 0;
	border-bottom: 0;
}
section .sec_content article h3 {
	padding-left: 16px;
	margin: 32px 0 15px;
	line-height: 1.4;
	font-size: 2.2rem;
	background: url(../img/col_black.png) left 0.1em no-repeat;
	background-size: 6px 22px;
}
section .sec_content article h4 {
	margin: 32px auto 16px;
	font-size: 1.7rem;
}
section .sec_content article h5 {
	margin-bottom: 10px;
	font-size: 1.5rem;
}
section .sec_content p {
	margin: 0 0 15px;
}
section .sec_content article ul,
section .sec_content article ol {
	margin-left: 16px;
	margin-bottom: 16px;
}
section .sec_content article ul li {
	list-style: disc outside;
}
section .sec_content article ol li {
	list-style: decimal outside;
}
section .sec_content article ol.list-suji2 li {/*漢数字を使いたい場合*/
	list-style: cjk-ideographic;
}
section .sec_content article ol.list-nashi li {/*マークをなくしたい場合*/
	list-style: none;
}
section .sec_content article blockquote,
.content_title .leadtext blockquote {
	width: 94%;
	padding: 1% 3% 1% 9%;
	margin: 0 auto 16px;
	box-sizing: border-box;
	border-left: 1px solid #dddadd;
	border-right: 1px solid #dddadd;
	background: url(../img/ico_quote1-1.png) 1% top no-repeat;
	background-size: 36px 30px;
}
section .sec_content article blockquote p,
.content_title .leadtext blockquote p {
	font-weight: bold;
}
section .sec_content article blockquote cite,
.content_title .leadtext blockquote cite {
	display: block;
	padding: 0 9% 0 10%;
	font-size: 1.4rem;
	text-align: right;
	background: url(../img/ico_quote1-2.png) 99% bottom no-repeat;
	background-size: 36px 30px;
}
section .sec_content table {
	width: 100%;
	margin: 0 0 15px;
	border: 1px solid #dddadd;
}
section .sec_content table caption {
	padding: 10px 14px;
	font-weight: bold;
}
section .sec_content table th,
section .sec_content table td {
	padding: 10px 14px;
	border: 1px solid #ebe8eb;
}
.content_body .article_body hr {
	margin-top: 2.5em;
	margin-bottom: 2.5em;
	border: 0;
	border-top: 1px solid #dddadd;
}
section .sec_content article h3:first-letter,
section .sec_content article h4:first-letter,
section .sec_content article h5:first-letter,
section .sec_content article h6:first-letter {
	font-feature-settings: "palt";
}
section .sec_content article figure.alignleft {
	margin-top: 0;
}
section .sec_content article .youtube {
	clear: both;
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
section .sec_content article .youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media print, screen and (min-width: 600px) {
	section .sec_content {
		padding: 0;
	}
}
/*--------------------------------------------------
	ページごとの設定
--------------------------------------------------*/
/*-------------------------------------------index*/
/*メインイメージ*/
#home .mainimg {
	width: 100%;
	margin-bottom: 18px;
	background: url(../img/index/mainimage.jpg?220118) center 50% no-repeat;
	background-size: cover;
}
#home .mainimg .mainimg_box {
	position: relative;
	overflow: hidden;
	height: inherit;
}
#home .mainimg .mainimg_box img {
	width: 100%;
	height: auto;
}
#home .mainimg .mainimg_box a {
	display: block;
	position: absolute;
	z-index: 900;
	top: -8%;
	height: 342px;
	transform: rotate(7.5deg);
}
#home .mainimg .mainimg_box a.mainimg1 {
	left: -4.5%;
	width: 38%;
}
#home .mainimg .mainimg_box a.mainimg2 {
	left: 32%;
	width: 35%;
}
#home .mainimg .mainimg_box a.mainimg3 {
	left: 65.3%;
	width: 38%;
}
#home .catch {
	margin-bottom: 18px;
	line-height: 1.2;
	font-size: 3rem;
	font-weight: bold;
	color: #ff9600;
	text-shadow: 3px 3px 0px rgba(136,140,181,0.3);
}
#home .aboutme .sns {
	margin-bottom: 2em;
}
#home .aboutme .sns #insta-area {
	margin-bottom: 24px;
}
#home .aboutme .sns #insta-area .insta {
	padding-top: 50.3%;
}
#home .aboutme .sns #youtube-area {
	margin-bottom: 24px;
}
#home .aboutme .sns #youtube-area iframe{
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 0.5625;
}
@media print, screen and (min-width: 600px) {
	#home .mainimg {
		margin: 0;
	}
	#home .mainimg .mainimg_box {
		width: 100%;
		margin: 0 auto;
	}
	#home .mainimg .mainimg_box a {
		display: block;
		position: absolute;
		z-index: 900;
		top: -8%;
		height: 1000px;
		transform: rotate(7.5deg);
	}
	#home main {
		width: 100%;
		padding: 24px 0;
	}
	#home .catch {
		width: 100%;
		margin-bottom: 32px;
		font-size: 4.4rem;
		text-align: center;
	}
	#home .column1,
	#home .aboutme {
		width: 48%;
		width: calc(50% - 8px);
	}
	#home .column1 {
		float: right;
	}
	#home .aboutme {
		float: left;
	}
	#home .aboutme .about dl {
		display: flex;
	}
	#home .aboutme .about dt {
		width: 230px;
	}
	#home .volunteer {
		display: flex;
		justify-content: space-between;
		width: 1008px;
		padding: 24px;
		margin: 0 auto 56px;
		box-sizing: border-box;
	}
	#home .volunteer h3 {
		width: 30%;
		padding-top: 18px;
		text-align: center;
	}
	#home .volunteer p {
		width: 68%;
		padding-left: 2%;
		border-left: 1px solid #fff;
		box-sizing: border-box;
	}
}
/**/
#home .s1 .sec_content table {
	width: 100%;
}
#home .s1 .sec_content th {
	width: 25%;
	background: #e8e6e8;
}
#home .s1 .sec_content td {
}
#home .s1 .sec_content th,
#home .s1 .sec_content td {
	border: 1px solid #dddadd;
}
#home .s1 .sec_content td span.news_cat {
	font-weight: bold;
	margin-right: 8px;
}
#home .s2 .lead {
	margin: 0 0 8px;
	line-height: 1.3;
	font-size: 2.5rem;
	color: #ff9600;
}
#home .s2 .sec_content img {
	width: 100%;
	height: auto;
	margin-bottom: 16px;
}
#home .s2 .sec_content h3 {
	font-size: 2.2rem;
}
#home .more a {
	background-color: #1c3858;
}
#home .more a:hover {
	background-color: #264568;
}
/*-----------------------------------------aboutus*/
@media print, screen and (min-width: 600px) {
	#archive main {
			width: 752px;
	}
}
/*-----------------------------------------profile*/
/*border*/
#profile article table {
	border-color: #d6ccba;
}
#profile article tr:first-child th,
#profile article tr:first-child td {
	border-top: 0;
}
#profile article table th,
#profile article table td {
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #d6ccba;
}
#profile article table td:last-child {
	border-width: 1px 0 0 0;
}
/*layout*/
#profile article table th {
	width: 15%;
}
#profile article .s2 table td {
	width: 15%;
	text-align: center;
}
#profile article .s2 table td:last-child {
	width: auto;
	text-align: left;
}
#profile article .s2 table strong.marker {
	background: #ffd1a0;
}

#profile article .s2 table img {
	max-width: 100%;
	height: auto;
}
/*------------------------------------------policy*/
#policy article .s1 {

}
#policy article .s1 .youtubelist {
	position: relative;
	padding: 32px 24px 24px;
	box-sizing: border-box;
	border: 1px solid #cbba99;
}
#policy article .s1 .youtubelist h3 {
	font-size: 4vw;
	line-height: 1.4;
	margin-top: 0;
	margin-bottom: 1em;
}
#policy article .s1 .youtubelist ul {
	margin: 0;
}
#policy article .s1 .youtubelist ul li {
	list-style-type: none;
}
#policy article .s1 .youtubelist ul li p {
	margin-bottom: 8px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.3;
}
#policy article .s1 .youtubelist ul li div {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin-bottom: 16px;
}
#policy article .s1 .youtubelist ul li div iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
@media print, screen and (min-width: 600px) {
	#policy article .s1 .youtubelist {
		padding: 32px 32px 24px;
		margin-top: 24px;
	}
	#policy article .s1 .youtubelist h3 {
		font-size: 2.2rem;
	}
	#policy article .s1 .youtubelist ul {
		display: flex;
		flex-flow: wrap;
		justify-content: space-between;
	}
	#policy article .s1 .youtubelist ul li {
		width: 49%;
	}
}
#policy article .s2 h4,
#policy article .s2 li {
	font-weight: bold;
	font-family: "Times New Roman","游明朝","Yu Mincho","游明朝体","YuMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HiraMinProN-W3",serif;
}
#policy article .s2 h4 {
	padding: 8px 8px 8px 32px;
	margin-bottom: 16px;
	font-size: 3.4rem;
	background-size: 108% 100%;
	background-repeat: no-repeat;
	background-position: -16px center;
}
#policy article .s2 h4 span {
	font-size: 2.6rem;
}
	#policy article .s2-1 h4 {
		background-image: url(../img/page/bg_hdl-policy01.png);
	}
	#policy article .s2-2 h4 {
		background-image: url(../img/page/bg_hdl-policy02.png);
	}
	#policy article .s2-3 h4 {
		background-image: url(../img/page/bg_hdl-policy03.png);
	}
	#policy article .s2-4 h4 {
		background-image: url(../img/page/bg_hdl-policy04.png);
	}
#policy article .s2 h5 {
	font-size: 1.8rem;
}
#policy article .s2 h5,
#policy article .s2 p {
	padding: 0 6%;
}
#policy article .s2 ul {
	width: 94%;
	margin: 0 auto 32px;
}
#policy article .s2 li {
	padding-left: 28px;
	margin-bottom: 2px;
	font-size: 2.6rem;
	list-style: none;
	background-repeat: no-repeat;
	background-position: left 0.3em;
}
	#policy article .s2-1 li {
		background-image: url(../img/page/list_policy01.png);
	}
	#policy article .s2-2 li {
		background-image: url(../img/page/list_policy02.png);
	}
	#policy article .s2-3 li {
		background-image: url(../img/page/list_policy03.png);
	}
	#policy article .s2-4 li {
		background-image: url(../img/page/list_policy04.png);
	}
#policy article .s3 .jissekiimg {
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
	width: 90%;
	margin: 0 auto 16px;
}
#policy article .s3 .jissekiimg li {
	width: 48%;
	list-style: none;
	text-align: center;
	font-size: 1.3rem;
	line-height: 1.5;
}
#policy article .s3 .jissekiimg li img {
	width: 100%;
	height: auto;
	margin-bottom: 8px;
}
/*------------------------------giin,rakugo,bunjin*/
.s1.g-r-b {
}
article .s1 figure.contentimage {
	float: left;
	width: 40%;
	margin: 0 16px 16px 0;
	text-align: center;
}
article .s1 figure.contentimage img {
	width: 100%;
	height: auto;
}
.s1.g-r-b p {
}
.s2.g-r-b h2 {
	padding-top: 16px;
	line-height: 1.2;
}
#giin .g-r-b h2 {
	background-image: url(../img/ico_corner-gi.png);
}
#rakugo .g-r-b h2 {
	background-image: url(../img/ico_corner-ra.png);
}
#bunjin .g-r-b h2 {
	background-image: url(../img/ico_corner-bu.png);
}
.s2.g-r-b h2 span {
	display: block;
	font-size: 1.6rem;
	font-weight: normal;
	color: #ff9600;
}
.s2.g-r-b dl {
	padding: 16px;
	margin-bottom: 16px;
	border: 1px solid #dddadd;
}
.s2.g-r-b dl:after {
	content: " ";
	display: block;
	clear: both;
}
.s2.g-r-b dl p {
	position: relative;
	float: left;
	width: 22%;
	height: 3em;
	box-sizing: border-box;
}
.s2.g-r-b dl p.daily {background: #3279cc;}
.s2.g-r-b dl p.harukaze {background: #d38dbd;}
.s2.g-r-b dl p.interpellation {background: #9ac77b;}
.s2.g-r-b dl p.report {background: #b2b3b7;}
.s2.g-r-b dl p.rakugo_news {background: #cca740;}
.s2.g-r-b dl p.campuslife {background: #ed685e;}
.s2.g-r-b dl p.haiku {background: #d3be76;}
.s2.g-r-b dl p.randoku {background: #7dc9d4;}
.s2.g-r-b dl p.campuskamoku {background: #9570df;}
.s2.g-r-b dl p span {
	position: absolute;
	width: 96%;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 1.3rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
	color: #fff;
}
.s2.g-r-b dl dt,
.s2.g-r-b dl dd {
	width: 75%;
	padding-left: 25%;
	font-size: 1.4rem;
}
.s2.g-r-b dl dt,
.s3.g-r-b dl dt {
	padding-top: 4px;
	font-weight: bold;
	line-height: 1.2;
}
.s2.g-r-b dl dd,
.s3.g-r-b dl dd {
	padding-bottom: 16px;
	margin-bottom: 12px;
	background: url(../img/line_dashed-gray2.png) bottom left repeat-x;
	background-size: 10px 1px;
}
.s3.g-r-b .newentry {
	margin-bottom: 48px;
}
.s3.g-r-b .newentry:last-child {
	margin-bottom: 0;
}
.s3.g-r-b .newentry dl {
	padding: 12px;
	margin-bottom: 16px;
	border: 1px solid #dddadd;
}
.s3.g-r-b .newentry dd {
	padding-bottom: 8px;
}
.s3.g-r-b .newentry dt,
.s3.g-r-b .newentry dd {
	padding-left: 8px;
	font-size: 1.4rem;
	border-left: 6px solid #3279cc;
}
.s3.g-r-b .newentry.daily dt,
.s3.g-r-b .newentry.daily dd {
	border-color: #3279cc;
}
.s3.g-r-b .newentry.harukaze dt,
.s3.g-r-b .newentry.harukaze dd {
	border-color: #d38dbd;
}
.s3.g-r-b .newentry.interpellation dt,
.s3.g-r-b .newentry.interpellation dd {
	border-color: #9ac77b;
}
.s3.g-r-b .newentry.report dt,
.s3.g-r-b .newentry.report dd {
	border-color: #b2b3b7;
}
.s3.g-r-b .newentry.rakugo_news dt,
.s3.g-r-b .newentry.rakugo_news dd {
	border-color: #cca740;
}
.s3.g-r-b .newentry.campuslife dt,
.s3.g-r-b .newentry.campuslife dd {
	border-color: #ed685e;
}
.s3.g-r-b .newentry.haiku dt,
.s3.g-r-b .newentry.haiku dd {
	border-color: #d3be76;
}
.s3.g-r-b .newentry.randoku dt,
.s3.g-r-b .newentry.randoku dd {
	border-color: #7dc9d4;
}
.s3.g-r-b .newentry.campuskamoku dt,
.s3.g-r-b .newentry.campuskamoku dd {
	border-color: #9570df;
}
.s3.g-r-b .newentry p a,
#rakugo .s2.g-r-b p a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 10px 0;
	text-align: center;
	font-weight: bold;
	color: #fff;
	background: url(../img/arr_wh.png) 96% center no-repeat;
	background-size: auto 60%;
}
.s3.g-r-b .newentry.daily p a {
	background-color: #3279cc;
}
.s3.g-r-b .newentry.harukaze p a {
	background-color: #d38dbd;
}
.s3.g-r-b .newentry.interpellation p a {
	background-color: #9ac77b;
}
.s3.g-r-b .newentry.report p a {
	background-color: #b2b3b7;
}
.s3.g-r-b .newentry.rakugo_news p a,
#rakugo .s2.g-r-b p a {
	background-color: #cca740;
}
.s3.g-r-b .newentry.campuslife p a {
	background-color: #ed685e;
}
.s3.g-r-b .newentry.haiku p a {
	background-color: #d3be76;
}
.s3.g-r-b .newentry.randoku p a {
	background-color: #7dc9d4;
}
.s3.g-r-b .newentry.campuskamoku p a {
	background-color: #9570df;
}
.s3.g-r-b .newentry p a:hover {
	color: #fff;
}
@media print, screen and (min-width: 600px) {
	.s2.g-r-b dl,
	.s3.g-r-b dl {
		max-height: 350px;
		overflow: auto;
		}
	.s3.g-r-b {
		display: flex;
		flex-flow: wrap;
		justify-content: space-between;
	}
	.s3.g-r-b .newentry {
		width: 48.8%;
		width: calc(50% - 8px);
	}
	.s3.g-r-b .newentry:nth-last-child(-n+2) {
		margin-bottom: 0;
	}
}
/*--------------------------------------------giin*/
#giin .s1 blockquote {
	float: right;
	width: 55%;
}
#giin .s1 blockquote cite {
	padding-left: 5%
}
/*------------------------------------------rakugo*/
#rakugo .s3 .yose {
	margin-bottom: 24px;
	background: #e8dab4 url(../img/page/bg_rakugo-page-2-1.png) top right no-repeat;
	background-size: 248px auto;
}
#rakugo .s3 .yose h2 {
	width: 80%;
	padding-bottom: 16px;
	margin: 0 auto 16px;
	font-size: 1.8rem;
	text-align: center;
	background: none;
	border-bottom: 1px solid #fff;
}
#rakugo .s3 .yose div {
	background: url(../img/page/bg_rakugo-page-2-2.png) bottom left no-repeat;
	background-size: 248px auto;
}
#rakugo .s3 .yose div p {
	width: 80%;
	margin: 0 auto 16px;
}
#rakugo .s3 .yose div p:last-child {
	padding-bottom: 24px;
	margin-bottom: 0
}
article .contactlink {
	clear: both;
	width: 100%;
	margin-bottom: 0;
	background: linear-gradient(to bottom, rgba(255,150,0,1) 0%,rgba(232,128,0,1) 100%);
}
article .contactlink:hover {
	background: linear-gradient(to bottom, rgba(255,166,0,1) 0%,rgba(255,143,0,1) 100%);
}
article .contactlink a {
	display: block;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	padding: 16px 0;
	text-align: center;
	font-size: 2.3rem;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	text-shadow: -1px -1px 0px #d67d09;
	background: url(../img/tex-stripes.png) top left;
	background-size: 33px 33px;
}
/*-----------------------------------------contact*/
#contact form {
	padding: 24px;
	border: 1px solid #efeae0;
}
#contact form dl {
	margin-bottom: 16px;
}
#contact form dt {
	margin-bottom: 4px;
	font-weight: bold;
	line-height: 1.3;
}
#contact form dt .required {
	color: #f00;
}
#contact form dd {
	margin-bottom: 20px;
}
#contact form dd .wpcf7-list-item {
	padding: 8px 0 4px;
	margin-left: 0;
	margin-right: 1em;
}
#contact form input[type="text"],
#contact form input[type="email"],
textarea {
	width: 100%;
	padding: 4px 6px;
	box-sizing: border-box;
	line-height: 1.5;
	border: 1px solid #b9b5ba;
}
#contact form input[type="submit"] {
	display: block;
	width: 100%;
	padding: 16px 0;
	text-align: center;
	font-size: 1.5rem;
	border: none;
	color: #fff;
	background: #1c3858;
}
#contact form a.koenjisseki {
	font-size: 2.2rem;
	font-weight: bold;
}
@media print, screen and (min-width: 600px) {
	#contact form dl {
		display: flex;
		flex-flow: wrap;
		justify-content: space-between;
	}
	#contact form dt {
		width: 25%;
	}
	#contact form dd {
		width: 73%;
	}
	#contact form dd .wpcf7-list-item {
		padding: 0;
	}
}
/*--------------------------------------------link*/
#link .s1 h4 {
	font-size: 1.6rem;
	font-weight: bold;
}
#link .s1 p {
	padding-bottom: 24px;
	margin-bottom: 24px;
	background: url(../img/line_dashed-gray2.png) bottom left repeat-x;
	background-size: 10px 1px;
}
#link .s1 p:last-child {
	margin-bottom: 0;
	background: none;
}
#link .s1 p:after {
	content: " ";
	display: block;
	clear: both;
}
#link .s1 figure {
	float: right;
	width: 35%;
	margin: 0 0 0 16px;
}
#link .s1 figure img {
	width: 100%;
	height: auto;
}
/*-----------------------------------privacypolicy*/
#privacypolicy dt {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 8px;
}
#privacypolicy dd {
	margin-bottom: 24px;
}
#privacypolicy dd address {
	padding: 8px 0;
	font-style: normal;
}
#privacypolicy dd li {
	list-style: none;
}
/*-------------------------------------koenjisseki*/
#koenjisseki .s2 ul {
	max-height: 600px;
	padding: 8px;
	margin-right: 16px;
	margin-bottom: 24px;
	overflow: auto;
	border: 1px solid #dddadd;
}
#koenjisseki .s2 ul:last-child {
	margin-bottom: 0;
}
#koenjisseki .s2 li,
#koenjisseki .s3 li {
	text-indent: -15px;
	margin-left: 15px;
	list-style: none;
	line-height: 1.5;
}
#koenjisseki article section li {
	margin-bottom: 24px;
}
/*----------------------------------------archives*/
#ranjoarchives .s2 .archivesbox {
	padding: 0 0 12px;
	margin-bottom: 12px;
}
#ranjoarchives .s2 .archivesbox:last-of-type {
	padding-bottom: 24px;
	background: url(../img/line_double-brown.png) left bottom repeat-x;
	background-size: 5px 5px;
}
#ranjoarchives .s2 .archivesbox:after {
	content: " ";
	display: block;
	clear: both;
}
#ranjoarchives .s2 .archivesbox h3 {
	padding: 24px 0 0;
	margin: 0 0 16px;
	background: url(../img/line_double-brown.png) left top repeat-x;
	background-size: 5px 5px;
}
#ranjoarchives .s2 .archivesbox img {
	display: block;
	float: left;
	width: 130px;
	height: auto;
	border: 1px solid #d5c099;
}
#ranjoarchives .s2 .archivesbox p {
	margin-left: 146px;
}
/*---------------------------------------cat_haiku*/
#cat_haiku .article_body {
	display: flex;
	flex-flow: wrap;
	align-items: center;
	width: 100%;
	margin-bottom: 24px;
	background-position: bottom right;
	background-repeat: no-repeat;
	background-size: 210px 170px;
	background-image: url(../img/page/bg_haiku1.png);
}
#cat_haiku article:nth-of-type(odd) .article_body {
	background-image: url(../img/page/bg_haiku1.png);
}
#cat_haiku article:nth-of-type(even) .article_body {
	background-position: bottom left;
	background-image: url(../img/page/bg_haiku2.png);
}
#cat_haiku .article_body p {
	padding: 0 7%;
}
#cat_haiku .article_body p.haikubody {
	padding-top: 24px;
	padding-bottom: 24px;
	margin: 0 auto 15px;
	overflow: auto;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
	font-size: 1.8rem;
	line-height: 2.4;
	font-family: "Times New Roman","游明朝","Yu Mincho","游明朝体","YuMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","HiraMinProN-W3",serif;
}
#cat_haiku .article_body p.haikutext100 {
	width: 100%;
	box-sizing: border-box;
}
@-moz-document url-prefix() {
	#cat_haiku .article_body {
		display: block;
	}
	#cat_haiku .article_body p.haikubody {
		position: relative;
		left: 0;
	}
}
/*-------------------------------------cat_randoku*/
#cat_randoku .content_title .booklist {
	width: 94%;
	max-height: 500px;
	overflow: auto;
	padding: 16px;
	margin: 0 auto;
	box-sizing: border-box;
	background: #f3f3f3;
}
#cat_randoku .content_title .booklist p {
	font-weight: bold;
}
#cat_randoku .content_title .booklist ul {
	display: flex;
	flex-flow: wrap;
	justify-content: space-between;
	margin-bottom: 16px;
}
#cat_randoku .content_title .booklist li {
	width: 50%;
	padding: 2px 8px;
	box-sizing: border-box;
	line-height: 1.6;
	border-bottom: 1px solid #DDDADD;
}
#cat_randoku .content_title .booklist li:nth-of-type(odd) {
	padding-right: 2%;
	border-right: 1px solid #DDDADD;
}
/*--------------------------ranjoarchives---cat_tv*/
#cat_tv .content_title .leadtext .ranjotvimg {
	text-align: center;
}