@charset "utf-8";

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}

:focus {
	outline: 0;
}

ol,
ul {
	list-style: none;
}

table {
	border-collapse: separate;
	border-spacing: 0;
}

caption,
th,
td {
	font-weight: normal;
	text-align: left;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

blockquote,
q {
	quotes: "" "";
}

a img {
	border: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

/* リンク設定
------------------------------------------------------------*/
a {
	margin: 0;
	padding: 0;
	text-decoration: none;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
	font-size: 100%;
	/*color:#313131;*/
}

a:hover,
a:active {
	outline: none;
	color: #6f6f6f;
}

.pc_only {
	display: block;
}

.sp_only {
	display: none;
}

/**** Clearfix ****/
nav .panel:after,
nav#Globalnavi:after,
.newsTitle:after,
.bg:after,
.post:after,
ul.post li:after,
nav#Globalnavi .inner:after {
	content: "";
	display: table;
	clear: both;
}

nav .panel,
nav#Globalnavi,
.newsTitle,
.bg,
.post,
ul.post li,
nav#Globalnavi .inner {
	zoom: 1;
}

/* 調整用 */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clearfix {
	display: inline-block;
	min-height: 1%;
}

/*\*/
* html .clearfix {
	height: 1%;
}

.clearfix {
	display: block;
}


/* カラー
------------------------------------------------------------*/
.msg {
	color: #ff0000;
}

.red {
	color: #ff0000;
	font-weight: normal;
}

.bold {
	font-weight: bold;
}

/* レイアウト
------------------------------------------------------------*/
#wrapper,
.inner {
	margin: 0 auto;
	width: 880px;
}

#header {
	overflow: hidden;
}

#content {
	width: 100%;
	padding: 22px 0 80px;
}

#sidebar {
	float: left;
	width: 233px;
	padding: 22px 0 50px;
}

#footer {
	width: 100%;
	max-width: 100%;
	position: fixed;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}

/* ヘッダー
*****************************************************/

/* サイト説明文
----------------------------------*/
#header h1 {
	padding: 10px 0 0;
	font-size: 80%;
	font-weight: normal;
	text-align: center;
}

#header h1 img {
	max-height: 120px;
	max-width: 90%;
}


/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2 {
	clear: both;
	padding: 5px 0 10px;
	font-size: 150%;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
}

#header h2 a {
	text-decoration: none;
	color: #936F30;
}

#header h2 a:hover {
	text-decoration: underline;
	color: #ff0000;
}



/* トップページ　メイン画像
----------------------------------*/
#mainImg {
	clear: both;
	margin-top: 20px;
	line-height: 0;
	text-align: center;
	z-index: 0;
}

.post {
	margin: 0 0 20px 0;
	padding: 20px 10px 20px 20px;
	border: 1px solid #d5d5d5;
	background-color: rgba(255,255,255,.7);
	color: #000;
}

.toppage h4 {
	margin: 0 0 10px;
	font-size: 16px;
	font-weight: normal;
	color: #333;
}

.toppage {
	padding: 10px 10px 20px 20px;
}


/* 記事
*****************************************************/
.list {
	padding: 10px 0;
	border-bottom: 1px dashed #dcdcdc;
}

.list:last-child {
	border: 0;
}

.post .list p {
	padding: 0;
}

.list span {
	padding-left: 10px;
}


/* タイポグラフィ
*****************************************************/
h2.title {
	clear: both;
	margin: 0;
	padding: 10px 20px;
	font-size: 26px;
	font-weight: bold;
	color: #000;
	border: 1px solid #d5d5d5;
	border-bottom: 0;
	background-color: rgba(255,255,255,.7);
}

.dateLabel {
	text-align: right;
	font-weight: bold;
	color: #858585;
}

.post p {
	padding-bottom: 15px;
}

.post p.notice {
	padding-bottom: 0px;
	color: #ff0000;
}

.post p.err_notice {
	padding: 3px;
	color: #8D0000;
	background: #FFCCFF;
}

.post ul {
	margin: 0 0 10px 10px;
}

.post ul li {
	margin-bottom: 5px;
	padding-left: 15px;
	background: url(./../img/bullet.png) no-repeat 0 8px;
}

/*terms用*/
.terms ul li {
	font-weight: bold;
	margin-bottom: 5px;
	padding-left: 0px;
	background: none;
}

.terms ul li ol li {
	font-weight: normal;
}

.post ol {
	margin: 0 0 10px 30px;
}

.post ol li {
	list-style: decimal;
}

.post h1 {
	margin: 20px 0;
	padding: 5px 0;
	font-size: 150%;
	color: #000;
	border-bottom: 3px solid #000;
}

.post h2 {
	margin: 10px 0;
	padding-bottom: 2px;
	font-size: 130%;
	font-weight: normal;
	color: #333;
	border-bottom: 2px solid #515151;
}

.post h3 {
	margin: 10px 0;
	font-size: 100%;
	font-weight: normal;
	color: #2e2c2c;
	border-bottom: 1px solid #515151;
}

/*terms用*/
.terms h3 {
	font-weight: bold;
	font-size: 20px;
}

.terms h4 {
	font-weight: bold;
	font-size: 18px;
}

.terms h5 {
	font-weight: bold;
	font-size: 16px;
	padding-left: 8px;
}

.terms p {
	padding-left: 10px;
}

.post blockquote {
	clear: both;
	padding: 10px 0 10px 15px;
	margin: 10px 0 25px 30px;
	border-left: 5px solid #ccc;
}

.post blockquote p {
	padding: 5px 0;
}

.post table {
	border: 1px #ccc solid;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 10px 0 20px;
}

.post table th {
	padding: 10px;
	border: #ccc solid;
	border-width: 0 0 1px 1px;
	background: #f2f2f2;
}

.post table td {
	padding: 5px;
	border: 1px #ccc solid;
	border-width: 0 0 1px 1px;
	background: #fff;
}

.post table td label {
	cursor: pointer;
	padding: 5px;
	display: block;
}

.post table td label:hover {
	background: #CD3535;
	color: #FFFFFF;
}

.post table td.err_bg {
	background: #FFCCFF;
}

.submit_btn {
	text-align: center;
}

.esg {
	color: #ff0000;
}


.post dt {
	font-weight: bold;
}

.post dd {
	padding-bottom: 10px;
}

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

img.aligncenter {
	display: block;
	margin: 5px auto;
}

img.alignright,
img.alignleft {
	margin: 10px 10px 15px 15px;
	display: inline;
}

img.alignleft {
	margin: 10px 15px 15px 10px;
}

.alignright {
	float: right;
}

.alignleft {
	float: left;
}

#gallery-1 img {
	border: 1px solid #eaeaea !important;
	padding: 5px;
	background: #fff;
}

#gallery-1 img:hover {
	background: #fffaef;
}

.ok_cmt {
	color: #0000ff;
}

.ng_cmt {
	color: #ff0000;
}

.attention {
	color: #CB0800;
}

select {
	outline: none;
	text-indent: 0.01px;
	text-overflow: '';
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	/*
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	*/
	border: 1px solid #999999;
	padding: 8px;
	margin-bottom: 5px;
}

select option {
	background-color: #fff;
	color: #333;
}

select::-ms-expand {}

select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #828c9a;
}

input[type="radio"] {
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
	margin-right: 0.5em;
	margin-left: 5px;
}

/* from
---------------------------------------------- */
.btn {
	display: inline-block;
	padding: 6px 12px;
	margin-bottom: 0;
	font-size: 14px;
	font-weight: 500;
	line-height: 20px;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	cursor: pointer;
	border: 1px solid #a7a9aa;
	-webkit-border-radius: 0px !important;
	border-radius: 0px !important;
}

.btn_s {
	display: inline-block;
	padding: 2px 3px;
	margin-bottom: 0;
	font-size: 12px;
	font-weight: 500;
	line-height: 16px;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	cursor: pointer;
	border: 1px solid #a7a9aa;
	-webkit-border-radius: 0px !important;
	border-radius: 0px !important;
}

/*aタグをボタン風にした場合の調整*/
a.btn {
	text-decoration: none;
}

.btn-green,
a.btn-green {
	color: #EEEEEE;
	background-color: #00A300;
	border-color: #00A300;
}

.btn-green:hover {
	background-color: #4CAE4C;
	border-color: #4CAE4C;
}

.btn-red {
	color: #EEEEEE;
	background-color: #D95A4D;
	border-color: #880D01;
}

.btn-red:hover {
	background-color: #A6382C;
	border-color: #880D01;
}

.btn-blue {
	color: #EEEEEE;
	background-color: #2D89EF;
	border-color: #2D89EF;
}

.btn-blue:hover {
	background-color: #357EBD;
	border-color: #357EBD;
}

.btn-orange {
	color: #EEEEEE;
	background-color: #F89406;
	border-color: #ECB76D;
}

.btn-orange:hover {
	background-color: #FAB95D;
	border-color: #ECB76D;
}

.l_new_entry {
	float: left;
	padding: 10px 20px;
	margin-bottom: 0;
	font-size: 22px;
	font-weight: 500;
	line-height: 26px;
	color: #EEEEEE;
	background-color: #F89406;
	border-color: #ECB76D;
}

.l_new_entry:hover {
	background-color: #FAB95D;
	border-color: #ECB76D;
}

.l_login {
	float: left;
	padding: 10px 20px;
	margin-bottom: 0;
	margin-left: 10px;
	font-size: 22px;
	font-weight: 500;
	line-height: 26px;
	color: #EEEEEE;
	background-color: #2D89EF;
	border-color: #2D89EF;
}

.l_login:hover {
	background-color: #357EBD;
	border-color: #357EBD;
}


/* サイドバー　ウィジェット
*****************************************************/
section.widget ul,
.widget_search,
#calendar_wrap,
.textwidget {
	margin: 0 0 20px 0;
	padding: 10px 10px 10px 17px;
	border: 1px solid #d5d5d5;
	background: #fff;
	color: #000;
}

section.widget ul ul {
	border: 0;
	margin: 0;
	padding: 0 0 0 10px;
}

section.widget h3 {
	clear: both;
	margin: 0;
	padding: 7px 10px 7px 10px;
	font-size: 110%;
	border: 1px solid #d5d5d5;
	border-bottom: 0;
	color: #000;
	background: #fff url(./../img/headingBg.png) repeat-x 0 100%;
}

section.widget li a {
	display: block;
	padding: 7px 0 7px 12px;
	background: url(./../img/arrow.gif) no-repeat 0 12px;
	border-bottom: 1px dashed #dcdcdc;
}

section.widget li:last-child a {
	border: 0;
}

section.widget .qr {
	text-align: center;
}

section.widget .qr img {
	margin: 10px auto;
	border: 1px solid #a5a5a5;
}

#searchform input[type="text"] {
	line-height: 1.7;
	height: 24px;
	width: 90px;
	vertical-align: bottom;
}

input.check[type=checkbox] {
	display: none;
}


/* お知らせ　
-------------*/
.newsTitle {
	clear: both;
	margin: 0;
	padding: 7px 10px 7px 10px;
	font-size: 110%;
	border: 1px solid #d5d5d5;
	border-bottom: 0;
	color: #000;
	background: #fff url(./../img/headingBg.png) repeat-x 0 100%;
}

.newsTitle h3 {
	float: left;
	font-weight: normal;
}

.newsTitle p {
	float: right;
	padding: 0 0 0 10px;
	font-size: 80%;
	background: url(./../img/arrow.gif) no-repeat 0 5px;
}

.news p {
	clear: both;
	padding-bottom: 2px;
	border-bottom: 1px dashed #dcdcdc;
}

.news p:last-child {
	border: 0;
}

.news p a {
	display: block;
	padding: 5px 0;
	color: #333;
	font-style: italic;
	font: italic 110% "Palatino Linotype", "Book Antiqua", Palatino, serif;
}

.news a span {
	color: #515151;
	font: normal 90% Arial, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
}

.news span {
	padding-left: 10px;
}

.news a:hover span {
	color: #6f6f6f;
}



/* フッター
*****************************************************/

address {
	clear: both;
	padding: 10px 0;
	text-align: center;
	font-size: 10px;
}


/* page navigation
------------------------------------------------------------*/
.pagenav {
	clear: both;
	width: 100%;
	height: 30px;
	margin: 5px 0 20px;
}

.prev {
	float: left
}

.next {
	float: right;
}

#pageLinks {
	clear: both;
	color: #4f4d4d;
	text-align: center;
}

/* progress bar
------------------------------------------------------------*/
#progress_bar {
	/*margin-left:16%;*/
	height: 5em;
}

.bar {
	border-radius: 1em 0 0 1em;
	background: #ccc;
	height: 1em;
	/*width: 20%;*/
	width: 15%;
	margin: 1em;
	border: .5em solid #ccc;
	border-right: 0;
	position: relative;
	float: left;
}

.bar span {
	margin-top: 1.5em;
	text-align: right;
	display: block;
}

.bar+.bar {
	border-radius: 0;
	border-left: 0;
	margin-left: 1.25em;
	z-index: -2;
}

.bar+.active.bar {
	z-index: auto;
}

.bar:after {
	content: '';
	display: block;
	width: 2.5em;
	position: absolute;
	right: -2.9em;
	top: -1.25em;
	height: 2.5em;
	border: .5em solid #ccc;
	background: #ccc;
	border-radius: 50%;
	z-index: -1;
}

.active.bar,
.active.bar:after {
	background: orange;
}

/*ENTRY******************************************************/
#entryBox {}

#entryBox dl {
	padding: 10px;
	background-color: #cccccc;
	overflow: hidden;
}

#entryBox dl:nth-child(2n) {
	background-color: #fff;
}

#entryBox input[type=text] {
	width: 90%;
	padding: 5px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	margin-bottom: 3px;
}

#entryBox input[type=number] {
	width: 100%;
	padding: 5px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	margin-bottom: 3px;
}

#entryBox textarea {
	width: 100%;
	padding: 5px;
	border-radius: 5px;
	border-color: #cccccc;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-moz-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
	box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.2);
}

#entryBox input[type=submit] {
	width: 100%;
	height: 50px;
	padding: 3px;
	font-size: 20px;
	color: #fff;
	background-color: #666666;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	cursor: pointer;
}

/*エラー*/
#entryBox tr.err_bg th {
	background-color: #FF7878;
}

#entryBox tr.err_bg td {
	border-left: 1px solid #FF7878;
	border-right: 1px solid #FF7878;
	border-bottom: 1px solid #FF7878;
	background-color: #FFDAF8;
}

#entryBox tr.err_bg .red {
	color: #fff;
}

#entryBox tr.err_bg td span.esg {
	color: #8D0000;
}

.inp20p {
	width: 20% !important;
}

.inp24p {
	width: 24% !important;
}

.inp30p {
	width: 30% !important;
}

.inp45p {
	width: 45% !important;
}

.inp50p {
	width: 50% !important;
}

.inp75p {
	width: 75% !important;
}

#entryBox .sendButton {
	width: 100%;
	margin-top: 20px;
	margin-bottom: 20px;
	overflow: hidden;
}

.sendButton .left {
	width: 49% !important;
	float: left;
}

.sendButton .right {
	width: 49% !important;
	float: right;
}

#entryBox .check_css:after {
	-webkit-transition: border-color 0.2s linear;
	transition: border-color 0.2s linear;
	position: absolute;
	top: 50%;
	left: 15px;
	display: block;
	margin-top: -10px;
	width: 20px;
	height: 20px;
	border: 2px solid #333333;
	border-radius: 6px;
	content: '';
}

#entryBox table td label {
	cursor: pointer;
	padding: 5px;
	display: inline;
}

#entryBox table td label:hover {
	background: #666666;
	color: #FFFFFF;
}

/*会員証*/
.member_card_box {
	text-align: center;
}

.member_card_box p {
	padding: 5px;
}

.member_card_box img {
	padding: 5px;
	border: 1px solid #333333;
	border-radius: 5px;
}

.member_card_box .data_unit {
	padding: 5px;
}

.member_card_box .data_unit .data {
	padding-top: 10px;
}

.member_card_box .data_unit .data span {
	border-bottom: 1px dotted #333333;
}

/* トップページ 最新記事
------------------------------------------------------------*/
ul.post {
	padding: 0;
}

ul.post li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 10px;
	padding: 20px 0 15px;
	border-bottom: 1px dashed #dcdcdc;
}
ul.post li>a{
	width: 135px;
	height: 92px;
	background-image: linear-gradient(31deg, rgba(211, 211, 211, 1), rgba(255, 255, 255, 1) 47%, rgba(216, 216, 216, 1) 74%, rgba(192, 192, 192, 1));
	box-shadow: 3px 3px 0px 0px rgba(219, 219, 219, 1);
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin-right: 20px;
}

ul.post li>a h3 {
	color: #333;
	border: 0;
	line-height: 1.3;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	text-shadow:1px 1px 3px #949494;
	margin: 0;
	padding: 0;
}
ul.post li>p{
	flex: 1;
	margin: 0!important;
}
ul.post li:last-child {
	border: 0;
}

ul.post img {
	float: left;
	margin: 0 15px 5px 10px;
}

/* btm_navi1
------------------------------------------------------------*/
#btm_navi1 {
	width: 100%;
	margin: 0 auto;
}

#btm_navi1 ul {
	width: 880px;
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
	margin: 0 auto;
}

#btm_navi1 ul li {
	text-align: center;
	padding: 8px 0 2px;
}

#btm_navi1 ul li a {
	color: #fff;
}

#btm_navi1 ul li a i {
	font-size: 30px;
}
/* btm_navi2
------------------------------------------------------------*/
#btm_navi2 {
	width: 100%;
	margin: 0 auto;
}

#btm_navi2 ul {
	max-width: 880px;
	display: flex;
	flex-direction: row;
	justify-content: space-evenly;
	margin: 0 auto;
}

#btm_navi2 ul li {
	text-align: center;
	padding: 8px 0 2px;
}

#btm_navi2 ul li:nth-child(2) {
	margin-right: 50px;
}

#btm_navi2 ul li:nth-child(4) {
	margin-left: 50px;
}

#btm_navi2 ul li a {
	color: #fff;
}

#btm_navi2 ul li a i {
	font-size: 30px;
}
/*------------------------------------------------------------*/
.member_card {
	width: 73px;
	height: 63px;
	border-radius: 50px;
	position: absolute;
	bottom: 40px;
	padding: 20px 5px 0 5px !important;
}

/*------------------------------------------------------------*/
.btns {
	display: grid;
	justify-content: space-evenly;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 40px;
	padding: 0 40px 40px 40px;
}

.btns a {
	font-size: 40px;
	text-align: center;
	border-radius: 6px;
	padding: 30px;
}

.statsDay {
	width: 100%;
}

/**********************************************************************************************************************************/
/**********************************************************************************************************************************/
/* メインメニュー　PC用
/**********************************************************************************************************************************/
/**********************************************************************************************************************************/
@media only screen and (min-width: 1025px) {
	.pc_hide {
		display: none;
	}

	nav#Globalnavi {
		clear: both;
		position: relative;
		z-index: 200;
		width: 100%;
	}

	nav#Globalnavi .inner {
		padding-left: 1px;
		background: url(./../img/mainNavSep.png) no-repeat 0 5px;
	}

	nav#Globalnavi ul li {
		float: left;
		position: relative;
		background: url(./../img/mainNavSep.png) no-repeat 100% 5px;
	}

	nav#Globalnavi ul li a {
		display: block;
		text-align: center;
		float: left;
		color: #000000;
		height: 35px;
		line-height: 45px;
		font-size: 110%;
		margin-right: 1px;
		padding: 10px 38px 0;
		text-decoration: none;
	}

	nav#Globalnavi ul li.active a,
	nav#Globalnavi ul li a:hover {
		color: #CD3535;
	}

	nav#Globalnavi ul li a span,
	nav#Globalnavi ul li a strong {
		display: block;
		font-size: 90%;
		line-height: 1.4;
	}

	nav#Globalnavi ul li a span {
		font-size: 70%;
		color: #888;
		font-weight: normal;
		font-family: "Times New Roman", Times, serif;
	}

	nav div.panel {
		display: block !important;
	}

	a#menu {
		display: none;
	}

	nav#Globalnavi ul li.current-menu-item a,
	nav#Globalnavi ul li a:hover span,
	nav#Globalnavi ul li a:hover,
	nav#Globalnavi ul li.current-menu-parent a {
		color: #4c4c4c;
	}

	nav#Globalnavi ul ul {
		width: 160px;
		border: 1px solid #e0e0e0;
		border-top: 0;
	}

	nav#Globalnavi ul li ul {
		display: none;
	}

	nav#Globalnavi ul li:hover ul {
		display: block;
		position: absolute;
		top: 42px;
		left: -1px;
		z-index: 500;
	}

	nav#Globalnavi ul li li {
		margin: 0;
		float: none;
		height: 40px;
		line-height: 40px;
		width: 160px;
		background: #fff;
		border-bottom: 1px dotted #e0e0e0;
	}

	nav#Globalnavi ul li li:last-child {
		border: 0;
	}

	nav#Globalnavi ul li li a {
		width: 100%;
		height: 40px;
		padding: 0 0 0 10px;
		line-height: 40px;
		font-size: 95%;
		text-align: left;
	}

	nav#Globalnavi ul li li.current-menu-item a,
	nav#Globalnavi ul li li a:hover {
		color: #6f6f6f
	}

}

/**********************************************************************************************************************************/
/**********************************************************************************************************************************/
/* メインメニュー iPadサイズ以下から
/**********************************************************************************************************************************/
/**********************************************************************************************************************************/
@media only screen and (max-width:1024px) {
	nav#Globalnavi {
		clear: both;
		width: 880px;
		margin: 0 auto 10px;
		border: 1px solid #d5d5d5;
	}

	nav#Globalnavi a.menu {
		width: 100%;
		display: block;
		height: 37px;
		line-height: 37px;
		font-weight: bold;
		text-align: left;
		background: url(./../img/menuOpen.png) no-repeat 5px 8px;
	}

	nav#Globalnavi a#menu span {
		padding-left: 35px;
		color: #000;
	}

	nav#Globalnavi a.menuOpen {
		background: url(./../img/menuOpen.png) no-repeat 5px -34px;
	}

	nav#Globalnavi a#menu:hover {
		cursor: pointer;
	}

	nav .panel {
		display: none;
		width: 100%;
		position: relative;
		right: 0;
		top: 0;
		z-index: 1;
	}

	nav#Globalnavi ul {
		margin: 0;
		padding: 0;
	}

	nav#Globalnavi ul li {
		float: none;
		clear: both;
		width: 100%;
		height: auto;
		line-height: 1.2;
	}

	nav#Globalnavi ul li:first-child {
		border-top: 1px solid #d5d5d5;
	}

	nav#Globalnavi ul li li:first-child {
		border-top: 0;
	}

	nav#Globalnavi ul li a,
	nav#Globalnavi ul li.current-menu-item li a {
		display: block;
		padding: 15px 10px;
		text-align: left;
		border-bottom: 1px dashed #ccc;
		background: #fff;
		text-decoration: none;
	}

	nav#Globalnavi ul li:last-child a {
		border: 0;
	}

	nav#Globalnavi ul li li:last-child a {
		border: 0;
	}

	nav#Globalnavi ul li li:last-child a {
		border-bottom: 1px dashed #ccc;
	}

	nav#Globalnavi ul li a span {
		display: none;
	}

	nav#Globalnavi ul li.current-menu-item a,
	nav#Globalnavi ul li a:hover,
	nav#Globalnavi ul li.current-menu-item a,
	nav#Globalnavi ul li a:active,
	nav#Globalnavi ul li li.current-menu-item a,
	nav#Globalnavi ul li.current-menu-item li a:hover,
	nav#Globalnavi ul li.current-menu-item li a:active {
		background: #f6f6f6;
	}

	nav#Globalnavi ul li li {
		float: left;
		border: 0;
	}

	nav#Globalnavi ul li li a,
	nav#Globalnavi ul li.current-menu-item li a,
	nav#Globalnavi ul li li.current-menu-item a {
		padding-left: 40px;
		background: #fff url(./../img/sub1.png) no-repeat 20px 18px;
	}

	nav#Globalnavi ul li li.current-menu-item a,
	nav#Globalnavi ul li li a:hover,
	nav#Globalnavi ul li.current-menu-item li a:hover {
		background: #f6f6f6 url(./../img/sub1.png) no-repeat 20px -62px;
	}

	nav#Globalnavi ul li li:last-child a {
		background: #fff url(./../img/subLast.png) no-repeat 20px 20px;
	}

	nav#Globalnavi ul li li:last-child.current-menu-item a,
	nav#Globalnavi ul li li:last-child a:hover,
	nav#Globalnavi ul li.current-menu-item li:last-child a:hover {
		background: #f6f6f6 url(/student/img/subLast.png) no-repeat 20px -65px;
	}

	nav div.panel {
		float: none;
	}

	#mainImg {
		margin-bottom: 20px;
	}
}

/**********************************************************************************************************************************/
/**********************************************************************************************************************************/
/* 959px以下から 1カラム表示
/**********************************************************************************************************************************/
/**********************************************************************************************************************************/
@media only screen and (max-width: 959px) {

	#wrapper,
	.inner {
		width: 100%;
	}

	#header {
		width: 96%;
		padding: 0 2%;
	}

	.contact {
		padding: 10px 0 10px;
	}

	nav#Globalnavi {
		width: 95%;
	}

	nav#Globalnavi ul {
		margin: 0 auto;
	}

	nav#Globalnavi ul ul {
		padding: 0;
	}

	nav div.panel {
		float: none;
	}

	#mainImg img {
		width: 98%;
		height: auto;
	}

	#content,
	#sidebar {
		clear: both;
		width: 95%;
		float: none;
		margin: 0 auto;
		padding: 10px 0;
	}

	.banner {
		width: 100%;
		margin: 0 auto;
		text-align: center;
	}

	p.banner img {
		width: 100%;
		height: auto;
	}

	section.widget_search {
		text-align: center;
	}

	#calendar_wrap table {
		width: 260px;
	}

	#footer li {
		margin-bottom: 10px;
	}

	.pc_only {
		display: none;
	}

	.sp_only {
		display: block;
	}

	.submit_box--fixed {
		width: 100%;
		background-color: rgba(0, 0, 0, 0.5);
		display: flex;
		justify-content: center;
		align-items: center;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		margin: auto;
		padding: 10px
	}
}


/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px) {
	#content{
		margin-bottom: 120px;
	}
	nav#Globalnavi {
		width: 98%;
	}

	#header {
		text-align: center;
		background-image: none;
	}

	#header h2,
	.contact {
		float: none;
	}

	.contact {
		padding: 0 0 20px;
	}

	.contact p {
		text-align: center;
	}

	#headerInfo {
		width: 250px;
		margin: 0 auto;
	}

	img.alignright,
	img.alignleft {
		display: block;
		margin: 5px auto;
	}

	.alignright,
	.alignleft {
		float: none;
	}

	.s_hide {
		display: none;
	}

	/*ENTRY******************************************************/
	#entryBox {}

	#entryBox dl {
		padding: 5px;
		background-color: #cccccc;
		overflow: hidden;
	}

	#entryBox dl:nth-child(2n) {
		background-color: #fff;
	}

	#entryBox dt {
		width: 100%;
		font-size: 18px;
		font-weight: bold;
		padding: 3px;
		float: none;
	}

	#entryBox dd {
		width: 90%;
		padding: 3px;
		float: none;
	}

	#entryBox input[type=text] {
		width: 90%;
		padding: 5px;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		margin-bottom: 3px;
	}

	#entryBox textarea {
		width: 100%;
		padding: 5px;
		border-radius: 5px;
		border-color: #cccccc;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		-moz-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
		-webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
		box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.2);
	}

	#entryBox input[type=submit] {
		width: 100%;
		height: 50px;
		padding: 3px;
		font-size: 20px;
		color: #fff;
		background-color: #666666;
		border-radius: 3px;
		-moz-border-radius: 3px;
		-webkit-border-radius: 3px;
		cursor: pointer;
	}

	.inp20p {
		width: 20% !important;
	}

	.inp30p {
		width: 30% !important;
	}

	.inp45p {
		width: 45% !important;
	}

	.inp50p {
		width: 50% !important;
	}

	.btns {
		display: grid;
		justify-content: space-evenly;
		grid-template-columns: repeat(1, 1fr);
		grid-gap: 20px;
	}

	.btns a {
		font-size: 30px;
		padding: 20px;
	}
	/* btm_navi1
	------------------------------------------------------------*/
	#btm_navi1 ul{
		width: 100%;
	}
	#btm_navi1 ul li {
		text-align: center;
		padding: 8px 0 2px;
	}
	#btm_navi1 ul li a {
		font-size: 11px;
	}

	#btm_navi1 ul li a i {
		font-size: 28px;
	}
	/* btm_navi
	------------------------------------------------------------*/
	#btm_navi2 ul li {
		text-align: center;
		padding: 8px 0 2px;
	}
	#btm_navi2 ul li:nth-child(2) {
		margin-right: 55px;
	}
	#btm_navi2 ul li:nth-child(4) {
		margin-left: 55px;
	}
	#btm_navi2 ul li a {
		font-size: 11px;
	}

	#btm_navi2 ul li a i {
		font-size: 28px;
	}
	/*------------------------------------------------------------*/
	.member_card {
		width: 70px;
		height: 60px;
		bottom: 25px;
		padding: 20px 5px 0 5px !important;
	}

}





.btn_q_detal {
	padding: 1px 2px;
	border: 1px solid #3B8D00;
	background-color: #C9FB90;
}

.btn_q_detal2 {
	padding: 1px 2px;
	border: 1px solid #ff0066;
	background-color: #ffccff;
}


.p_move {
	text-align: right;
	margin-right: 5px;
}

.q_txt {
	border: 1px solid #CCCCCC;
	margin: 2px;
	padding: 10px;
}

.q_txt img {
	display: block;
}

.ans_lst {}

.ans_box {
	width: 48%;
	border: 1px solid #CCCCCC;
	margin: 2px;
	float: left;
}

.ans_box:hover {
	background-color: #D6E7FC;
}

.ans_min_box {
	float: left;
	width: 30px;
	background-color: #CCCCCC;
	color: #FFFFFF;
	padding: 20px 0;
	margin-right: 10px;
	text-align:
		center;
}

.fm_ttl {
	margin-top: 15px;
	font-size: 16px;
	padding: 3px 5px;
	background-color: #CCCCCC;
	color: #FFFFFF;
}

.ans_box p {
	padding: 10px;
}

#answer_unit {
	clear: both;
}

.answer_box01 {
	font-size: 18px;
	width: 120px;
	margin: 10px auto 5px;
	border: 1px solid #0033CC;
	background-color: #5797CD;
	color: #FFFFFF;
	text-align: center;
}

.answer_box02 {
	font-size: 18px;
	width: 120px;
	margin: 10px auto 5px;
	border: 1px solid #DD1515;
	background-color: #DD5044;
	color: #FFFFFF;
	text-align: center;
}

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


.back_link {
	text-align: right;
	margin-right: 5px;
	font-size: 11px;
}

#msg_ground {
	background-color: #5191C6;
	width: 95%;
	padding: 5px;
}

#new_msg_box {
	width: 95%;
	padding: 5px;
}

#new_msg_box table {
	width: 100%;
	padding: 5px;
}

#new_msg_box table td {}

#new_msg_box table th {
	vertical-align: middle;
}

#new_msg_box table td textarea {
	width: 100%;
}

#new_msg_box table .submit_box {
	text-align: center;
}


.date_box {
	margin: 5px auto;
	width: 100px;
	text-align: center;
	background-color: #ffffff;
	padding: 3px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.msg_box_l {
	text-align: left;
	margin-bottom: 3px;
	padding-left: 4px;
	background-image: url("./../img/msg2_bg.png");
	background-repeat: no-repeat;
	background-position: 32px top;
}

.msg_box_r {
	text-align: right;
	margin-bottom: 3px;
	padding-right: 4px;
	background-image: url("./../img/msg_bg.png");
	background-repeat: no-repeat;
	background-position: right top;
}

.msg_box_l .msg_icon {
	width: 32px;
	float: left;
}

.msg_box_l .msg_date {
	width: 60px;
	float: left;
	margin-top: 10px;
	color: #FFFFFF;
	font-size: 11px;
}

.msg_box_l .msg {
	color: #000000;
	max-width: 50%;
	float: left;
	background-color: #ffffff;
	margin: 5px;
	padding: 3px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.msg_box_r .msg_date {
	width: 60px;
	float: right;
	margin-top: 10px;
	color: #FFFFFF;
	font-size: 11px;
}

.msg_box_r .msg {
	color: #000000;
	max-width: 50%;
	float: right;
	background-color: #7CFC00;
	margin: 5px;
	padding: 3px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.b_info {
	color: #CD3535;
	font-size: 10px;
}

/*calendar_box table*/
#calendar_box {
	width: 100%;
	margin: 10px auto;
}

#calendar_box table th {
	width: 62px;
	text-align: center;
}

#calendar_box table {
	background-color: #eeeeee;
}

#calendar_box table td {
	background-color: #ffffff;
	height: 55px;
	text-align: left;
	vertical-align: top;
	padding: 3px;
	font-size: 11px;
}

#calendar_box table .mon {
	width: 100%;
	height: 18px;
}

#calendar_box .mon div {
	float: left;
	width: 33%;
}

#calendar_box .sun {
	background-color: #FFBCBC;
}

#calendar_box th.sun {
	color: #ff0000;
}

#calendar_box .sat {
	background-color: #A7CCFF;
}

#calendar_box th.sat {
	color: #0000ff;
}

#calendar_box .link {
	background-color: #d4ff55;
}

#calendar_box .sun_link {
	background-color: #d4ff55;
}

#calendar_box .sat_link {
	background-color: #d4ff55;
}

#calendar_box .no {
	background-color: #ffffff;
}

#calendar_box select {
	font-size: 20px;
}

#calendar_box table td.td_center2 {
	text-align: center;
	vertical-align: middle;
}

@media only screen and (max-width: 959px) {
	.post #calendar_box table.tb2 th {
		width: auto;
		padding: 0px;
	}

	.post #calendar_box table.tb2 td {
		height: auto;
		padding: 0px;
	}

}
