@charset "UTF-8";

.sp {
  display: none;
}

.pc {
  display: block;
}
@media all and (max-width: 1119px) {
.sp {
  display: block;
}

.pc {
  display: none;
}

body {
	font-size:14px;
}

.scroll{
margin: 0 0 20px;
overflow: auto;
white-space: nowrap;
}
.scroll::-webkit-scrollbar{
 height: 5px;
}
.scroll::-webkit-scrollbar-track{
 background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb {
 background: #BCBCBC;
}

.scroll table {
margin-bottom: 5px !important;
}



/*----------------------------------------------------------------------
  header
----------------------------------------------------------------------*/
header {
	box-shadow:none;
}

header .container {
	height:55px;
	overflow:inherit;
}

header .logo {
	left:10px;
	top:50%;
	transform:translateY(-50%);
}

header .logo img {
	max-width:80%;
}

header .container .h_content {
	display:none;
	position:absolute;
	left:0;
	top:56px;
	width:100%;
	z-index:1;
}

header .container .cls {
	position:relative;
	width:100%;
	background:#FFF;
	padding:10px 0;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	border-bottom:none;
}

header .container .cls a {
	margin:10px;
}

header .container .cls form {
	clear:both;
	margin:10px 0 0;
}

header ul {
	position:relative;
	width:100%;
	background:#FFF;
	margin:0;
	font-size:14px;
}

header li {
	float:none;
	border-left:none;
	border-top:solid 1px #CCC;
}

header li:last-child {
	border-right:none;
	border-bottom:solid 1px #CCC;
}

header li a {
	padding:10px;
}

.menubtn {
	position:absolute;
	right:10px;
	top:50%;
	transform:translateY(-50%);
	z-index:10;
	width:40px;
	height:40px;
	background:#A15D98;
	padding:5px;
	cursor:pointer;
}

.menubtn span {
	position:absolute;
	width:30px;
	height:3px;
	background:#FFF;
	transition:0.3s;
	-webkit-transition:0.3s;
	-moz-transition:0.3s;
}

.menubtn span.top {
	top:5px;
}

.menubtn span.middle {
	top:13px;
}

.menubtn span.bottom {
	top:21px;
}

.menubtn span.menuclick1 {
	transform:rotate(-315deg);
	top:13px;
}

.menubtn span.menuclick2 {
	background-color:transparent;
}

.menubtn span.menuclick3 {
	transform:rotate(315deg);
	top:13px;
}

.menubtn p {
	font-size:10px;
	color:#FFF;
	position:absolute;
	bottom:3px;
	left:50%;
	transform:translateX(-50%);
	line-height:1em;
}


/*----------------------------------------------------------------------
  common
----------------------------------------------------------------------*/
.container {
	width:100%;
	padding:0 10px;
}

.main .bread ul {
	width:100%;
}

.sidebar {
	float:none;
	margin:60px 0 0;
	width:auto;
}

.content {
	float:none;
	margin-left:0;
	width:auto;
}

a {
	word-break:break-word;
}

@media all and (max-width: 530px) {
	.content ul.tobira li {
		float:none;
		width:100%;
		max-width:390px;
	}
}

@media all and (max-width: 425px) {
	.main h1 {
		font-size:22px;
		width:100%;
		text-align:center;
	}
	
	.content h2 {
		font-size:18px;
		display:block;
	}
	
	.content h2 span.br {
		display:block;
	}
	
	.content h3 {
		font-size:16px;
	}
	
	.pager_wrap ul.pager li {
		margin:2px 5px;
	}
	
	.pager_wrap ul.pager li.nobtn {
		width:66px;
	}
	
	.pager_wrap ul.pager li a {
		width:auto;
		padding:10px;
	}
}


/*----------------------------------------------------------------------
  index
----------------------------------------------------------------------*/
#index .top {
	display:block;
	padding:0;
	margin-bottom:0;
}

#index .top .slide {
	width:100%;
	border:none;
	margin-bottom:25px;
}

#index .top .slide img {
	width:100%;
}

#index .top .slide p {
	font-size:15px !important;
}

#index .top .slide .slick-dots {
	display:block!important;
	bottom:-20px;
}

#index .top .slide .slick-prev,
#index .top .slide .slick-next {
	display:none!important;
}

#index .top .slide .slick-dots li {
	width:10px;
	height:10px;
	background:#BBB;
	border-radius:100%;
}

#index .top .slide .slick-dots li.slick-active {
	background:#A15D98;
}

#index .top .slide .slick-dots button {
	width:10px;
	height:10px;
}

#index .top .slide .slick-dots button::before {
	display:none;
}

#index .top .about {
	display:none;
}

#index .menu {
	padding:0 0 10px;
}

#index .menu svg {
	display:none;
}

#index .menu .container {
	margin-bottom:0;
}

#index .menu a {
	width:calc(50% - 5px);
	height:auto;
	margin:10px 10px 0 0;
	padding:10px 0 0;
	text-decoration:none;
}

#index .menu a:nth-child(2n) {
	margin-right:0;
}

#index .menu a:hover {
	background:#FFF;
	color:inherit;
}

#index .menu a img {
	height:30px;
	position:static;
	transform:none;
	margin:0 auto;
	display:block;
}

#index .menu a img:first-child {
	display:none;
}

#index .menu a:hover img:last-of-type {
	opacity:1;
}

#index .menu a p {
	position:static;
	font-size:14px;
	margin-top:5px;
}

#index .news {
	padding:20px 10px 30px;
	margin-bottom:0;
}

#index .news div {
	float:none;
	margin-left:0;
}

#index .news h3 {
	font-size:16px;
	position:relative;
}

#index .news h3::after {
	position:absolute;
	top:50%;
	right:0;
	transform:translateY(-50%);
	width:calc(100% - 6.5em);
}

#index .news ul {
	width:100%;
	float:none;
	margin:14px 0 0;
}

#index .news li {
	background:#EEE;
	margin-bottom:5px;
	border:none;
	position:relative;
}

#index .news li a {
	padding:5px 40px 5px 5px!important;
}

#index .news li::after {
	content:'▶';
	position:absolute;
	right:5px;
	top:50%;
	transform:translateY(-50%);
	color:#4C4D9C;
}

#index .news li span {
	display:block;
	margin:0;
}

#index .news a.arrow {
	width:160px;
	height:30px;
	line-height:30px;
	background:#A15D98;
	color:#FFF;
	margin:20px auto 0;
	text-align:center;
	position:relative;
	text-decoration:none;
}

#index .news a.arrow::before {
	color:#FFF;
	position:absolute;
	left:12px;
}

#index .fb_tw {
	padding:0;
	margin-bottom:2px;
}

#index .fb_tw a {
	width:50%;
	color:#FFF;
	padding:5px 10px;
	font-size:12px;
	font-weight:500;
	line-height:1.3;
	text-decoration:none;
}

#index .fb_tw a:first-of-type {
	background:#3B579D;
}

#index .fb_tw a:last-of-type {
	background:#1DA1F2;
}

#index .fb_tw a img {
	float:left;
	margin-right:5px;
}

/*----------------------------------------------------------------------
  about
----------------------------------------------------------------------*/
@media all and (max-width: 320px) {
	.prizeAll {
		width:100%;
	}
}

@media all and (max-width: 375px) {
	.content .rekidai li {
		padding-left:1em;
	}
	
	.rekidaiDate {
		width:170px;
	}
	
	.rekidaiText {
		padding-left:0;
	}
	
	.rekidaiText:before {
		left:179px;
	}
	
	.rekidaiText p {
		padding-left:1em;
	}
	
	.officer table td ul li {
		width:48%!important;
		margin-right:2%!important;
	}

	.intro table.member th {
		width:110px;
	}
	
	.intro table.member td {
		width:190px;
	}
	
	.intro table.member th span.br {
		display:block;
	}
	
}

@media all and (max-width: 425px) {
	.intro ul.introList li {
		width:48%;
	}
	
	.intro ul.introList li:nth-child(n+11) {
		margin-bottom:16px;
	}
	
	.intro ul.introList li:last-child {
		margin-bottom:0;
	}
	
	.introList + p img.alignright {
		float:none;
		display:block;
		margin:0 auto 30px;
		max-width:100%;
	}
	
	.intro p img.constitution-pc {
		display:none;
	}
	
	.intro p img.constitution-sp {
		display:block;
		max-width:100%;
	}
	
	.intro table.active td {
		display:block;
		width:auto!important;
	}
	
	.intro table.active tr td:first-child {
		background:none;
		padding-bottom:0;
	}
	
	.intro table.active td .btn {
		width:210px;
	}
	
	.officer table {
		width:100%!important;
	}
	
	.officer table th,
	.officer table td {
		display:block!important;
	}
	
	.officer table th {
		width:100%!important;
	}
	
	.content .honoraryList tbody th {
		width:100px;
	}
	
	.content ul.supportList {
		margin:0 auto 40px;
	}
	
	.content ul.tobira li a span.br {
		display:block;
	}
	
	.content ul.tobira li a span.space {
		display:inline-block;
		margin-left:52px;
	}
	
	.bookBox dl dd ol li {
		margin:1em 0;
	}
	
	.content table.mokuji {
		margin:0 auto 40px;
	}
	
	.content table.mokuji tr {
		display:flex;
		flex-wrap:wrap;
	}
	
	.content table.mokuji td:first-child {
		width:100%;
	}
	
	.content table.mokuji td:not(:last-child):not(:nth-last-child(2)) {
		background:none;
	}
	
	.content table.mokuji td:nth-child(2) {
		flex-grow:1;
	}
	
	.content table.mokuji .sec td:nth-child(2) {
		padding-left:24px;
	}
	
	.content table.seigo-pc {
		display:none;
	}
	
	.content table.seigo-sp {
		display:table;
		width:100%;
		text-align:center;
	}
	
	.prizeList.prizeList-pc {
		display:none;
	}
	
	.prizeList.prizeList-sp {
		display:table;
	}
	
	.prizeList.prizeList-sp .thead th {
		background:#e3cee0;
	}
	
	.prizeList.prizeList-sp th {
		background-color:#ECDFEA;
		white-space:nowrap;
	}
}

@media all and (max-width: 768px) {
	.intro ol.mokuteki {
		width:auto;
		font-size:inherit;
	}
	
	.intro ol.mokuteki li {
		padding:16px 30px 0 30px;
	}
	
	.bookBox {
		width:auto;
	}
	
	.mokuji_wrap,
	.mokuji_wrap ul.pager {
		position:static;
	}
	
	.mokuji_wrap ul.pager li {
		float:none;
		display:list-item;
		position:static;
	}
}

/*----------------------------------------------------------------------
  journals
----------------------------------------------------------------------*/
@media all and (max-width: 425px) {
	.j_img {
		float:none;
		display:block;
		margin:30px auto;
	}
	
	.j_img + ul {
		float:none;
		margin:0;
	}
	
	.template_j ul {
		margin:0 0 40px 10px;
	}
}

/*----------------------------------------------------------------------
  event
----------------------------------------------------------------------*/
@media all and (max-width: 425px) {
	.sympoList2 li {
		float:none;
		width:auto;
	}
	
	.content table.sympoDetail tr {
		display:block;
		margin-bottom:16px;
	}

	.content table.sympoDetail th,
	.content table.sympoDetail td {
		display:block;
		width:100%;
		border-bottom:none;
	}
	
	.content table.kyosanList tbody th {
		width:auto;
	}
	
	.ev-history.history-pc {
		display:none;
	}
	
	.ev-history.history-sp {
		display:table;
	}
	
	.ev-history.history-sp tr.thead th {
		background:#e3cee0;
	}
	
	
}

/*----------------------------------------------------------------------
  member
----------------------------------------------------------------------*/
@media all and (max-width: 425px) {
	.mlmihon {
		margin:0;
	}
	
	.mlmihon p {
		word-break:break-word;
	}
}


/*----------------------------------------------------------------------
  What's new
----------------------------------------------------------------------*/
@media all and (max-width: 425px) {
	.content ul.wnList {
		margin:0 auto 40px;
	}
	
	.content ul.wnList li span {
		display:block;
	}
	
	.wnDetail img {
		display:block;
		margin:0 auto 30px;
		float:none;
		max-width:100%;
		height:auto;
	}
}

/*----------------------------------------------------------------------
  invitation
----------------------------------------------------------------------*/
.inviText {
	width:calc(100% - 240px);
}

@media all and (max-width: 425px) {
	.inviText {
		width:100%;
		float:none;
	}
	
	.inviPaper {
		float:none;
		width:auto;
		overflow:hidden;
		margin-bottom:40px;
	}
	
	.inviPaper dt {
		margin-bottom:10px;
	}
	
	.inviPaper dt br:not(:last-of-type) {
		display:none;
	}
	
	.inviPaper dd {
		float:left;
		margin-right:1em;
	}
	
	.inviTokuten {
		margin:-20px 10px 40px;
		padding:40px 10px 0;
	}
	
	#invitation .addPaper {
		margin:0 10px 40px;
	}
	
	#invitation .addPaper dl dd ul {
		margin:0;
	}
}

/*----------------------------------------------------------------------
  prrequest
----------------------------------------------------------------------*/
@media all and (max-width: 425px) {
	.content table.prrequestTable th,
	.content table.prrequestTable td {
		display:block;
	}
	
	.content table.prrequestTable th {
		width:100%;
	}

	.content table.prrequestTable td {
		border-bottom:none;
		margin-bottom:1em;
	}
	
	.prrequestSendBox {
		padding:20px;
	}
}




/*----------------------------------------------------------------------
  sitemap
----------------------------------------------------------------------*/
@media all and (max-width: 425px) {
	.sitemap .wrapper {
		display:block;
	}
	
	.sitemap .wrapper > ul {
		width:100%;
	}
}


/*----------------------------------------------------------------------
  footer
----------------------------------------------------------------------*/
footer {
	margin-top:1px;
}

footer .line {
	height:4px;
}

footer .line span {
	width:140px;
	left:20px;
}

footer .line span::before,
footer .line span::after {
	border-top-width:2px;
	border-left-width:3px;
	border-bottom-width:2px;
	border-right-width:3px;
}

footer .container {
	padding:0;
	margin-bottom:0;
}

footer .top {
	padding:0 10px;
	margin:14px 0;
}

footer .top .left {
	float:none;
}

footer .top .left p {
	font-size:16px;
}

footer .top .left a {
	display:none;
}

footer .top .right {
	display:flex;
	float:none;
	justify-content:center;
}

footer .top .right a.arrow {
	margin:5px 5px 0!important;
	border-color:#A15D98;
	font-size:14px;
	padding:3px 0;
}

footer .top .right a.arrow::before {
	color:#A15D98;
	left:12px;
}

footer .bottom {
	padding:0;
	margin-bottom:0;
}

footer .bottom .fmenu {
	width:50%;
}

footer .bottom .clear .fmenu:nth-child(5) {
	width:100%;
}

footer .bottom .fmenu ul {
	width:100%;
}

footer .bottom .clear .fmenu:nth-child(5) ul {
	width:50%;
	float:left;
	margin-top:0;
}

@media all and (max-width: 360px) {
	footer .bottom .fmenu ul li {
		font-size:13px;
	}
}

footer .bottom .fmenu ul.one li {
	border-bottom:none;
	padding-bottom:0;
}

footer .bottom .fmenu ul li a {
	padding:10px;
	background:#FFF;
	border-top:solid 1px #BBB;
}

footer .bottom .clear .fmenu:nth-last-child(-n+2) ul li a {
	border-bottom:solid 1px #BBB;
}

footer .bottom .fmenu ul li a::before {
	content:'';
	width:10px;
	height:10px;
	border-radius:50%;
	background:#9999CE;
	margin-right:5px;
	display:inline-block;
}

footer .bottom .clear .fmenu:nth-child(2n),
footer .bottom .clear .fmenu:nth-child(5) ul:nth-child(2n),
footer .bottom .clear .fmenu:last-child {
	border-left:solid 1px #AAA;
}

footer .bottom .clear .fmenu:nth-last-child(2) {
	border-left:none;
}

footer .bottom .fmenu ul li ul {
	display:none;
}

footer .copy {
	height:28px;
	line-height:28px;
}

footer .copy p {
	font-size:10px;
	font-weight:normal;
}

}