@charset "utf-8";

/********************************
					PC
********************************/
@media screen and (max-width: 1020px) {

	#header_container,
	#global-nav ul,
	#main #main_in,
	.contents,
	.copyright p,
	.titlecontents,
	.titlecontents p,
	.pannavi p {
		width: 100%;
	}
}

/********************************
					タブレット
********************************/
@media screen and (max-width: 780px) {
	#logo {
		width: 120px;
	}
}

/********************************
					スマートフォン
********************************/
@media screen and (max-width: 640px) {
	.pagelink {
		margin-top: -60px;
		padding-top: 60px;
	}
	/********************************
							共通
	********************************/
	.pc {
		display: none !important;
	}

	.sp {
		display: block;
	}

	.spmt0em {
		margin-top: 0 !important;
	}

	.contents {
		padding: 0 20px;
	}

	.next_contents {
		padding: 0 20px;
	}

	.bg_green {
		padding: 10px 0;
	}

	.white_contents {
		padding: 10px;
	}

	.linkbtn a {
		width: 90%;
		font-size: 14px;
		padding: 20px 0;
	}

	#nexttitle {
		margin-top: 60px;
	}

	/********************************
							ヘッダー
	********************************/
	#logo img {
		height: 60px;
	}

	header {
		padding: 0;
	}

	#rightheader {
		display: none;
	}

	#global-nav ul {
		display: block;
		margin: 0;
	}

	#global-nav ul li {
		width: 100%;
		border-bottom: 1px solid #00496d;
	}

	#global-nav ul li:first-child {
		border-top: 1px solid #00496d;
	}

	#global-nav ul li a {
		padding: 15px;
		text-align: left;
		position: relative;
	}

	#global-nav ul li:first-child:before,
	#global-nav ul li:after {
		content: '';
	}

	#global-nav ul li a:after {
		content: url(images/common/arw_right.svg);
		position: absolute;
		right: 20px;
		top: 13px;
	}

	#global-nav .sp_headermenu {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		margin-top: 20px;
	}

	#global-nav .sp_headermenu p {
		margin: 0 5px;
		width: 45%;
	}

	#global-nav .sp_headermenu p a {
		display: block;
		padding: 10px 5px;
		font-size: 14px;
		color: #FFFFFF;
	}

	#global-nav .sp_headermenu .ic_access a {
		background-color: #6BB72D;
	}

	#global-nav .sp_headermenu .ic_mail a {
		background-color: #6BB72D;
	}

	#global-nav .sp_headermenu .ic_remote a {
		background-color: #2279BA;
	}

	#global-nav .sp_headermenu .ic_access a:before {
		content: url('../images/common/ic_access.svg');
		padding-right: 10px;
		vertical-align: middle;
	}

	#global-nav .sp_headermenu .ic_mail a:before {
		content: url('../images/common/ic_mail.svg');
		padding-right: 10px;
		vertical-align: middle;
	}

	#global-nav .sp_headermenu .ic_remote a:before {
		content: url('../images/common/ic_remote.svg');
		padding-right: 10px;
		vertical-align: middle;
	}

	#global-nav .sp_info {
		margin-top: 20px;
	}

	#global-nav .sp_info .tel {
		font-size: 22px;
		color: #1D41A3;
		padding: 0;
		margin: 5px 20px 5px 0;
	}

	#global-nav .sp_info .fax {
		font-size: 22px;
		color: #407210;
		padding: 0;
		margin: 5px 0;
	}

	#global-nav .sp_info .tel span,
	#global-nav .sp_info .fax span {
		font-size: 16px;
	}

	/* Togleボタン
	***************************************/
	#global-nav .toggle_btn {
		position: absolute;
		top: 50%;
		right: 20px;
		transform: translateY(-50%);
		display: block;
		width: 24px;
		height: 24px;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		border-radius: 50%;
	}

	#global-nav .toggle_btn:before,
	#global-nav .toggle_btn:after {
		display: block;
		content: '';
		background-color: #2279BA;
		position: absolute;
		width: 20px;
		height: 3px;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	#global-nav .toggle_btn:before {
		width: 3px;
		height: 20px;
	}

	#global-nav nav>ul>li>a.selected .toggle_btn:before {
		content: normal;
	}

	#global-nav .page_list {
		width: 100%;
	}
	#global-nav .page_list ul {
		flex-wrap: wrap;
	}
	#global-nav .page_list ul li {
		margin: 0;
		border-bottom: 2px solid #ffffff;
	}
	.megamenu_ct {
		display: block;
		padding: 0;
	}
	#global-nav > ul li .page_list ul li {
		width: 100%;
		margin:0;
	}


	#global-nav > ul li .page_list ul li a{
		border-radius:0;
		background:#DCF2CA !important;
	}
	#global-nav > ul li .page_list ul li a::after {
		content: url(/images/common/page_list_arw.svg);
		position: absolute;
		right: 10px;
		top: 15px;
	}
	#global-nav .megamenu_ct {
		width: 100%;
		padding:0;
	}

	#global-nav .menu_contents {
		position: initial;
	}

	/********************************
							トップページ
	********************************/
	#main {
		margin-top: 50px;
	}

	.officelist li {
		width: 48%;
		font-size: 11px;
	}

	.policy .contents {
		padding-top: 20px;
		background-size: contain;
		min-height: 370px;
	}

	.policy .contents ul {
		padding: 10px 10px 0;
		font-size: 14px;
	}

	.policy .contents ul li {
		text-indent: -1em;
	}

	.newslist dl {
		width: 100%;
	}

	#instagram {
		margin-top: 20px;
		min-height: auto;
	}

	.instagramlist {
		position: static;
		/* top: -50px; */
		padding: 0;
	}

	.instagramlist p {
		width: 23%;
	}

	#instagram ul {
		flex-wrap: wrap;
	}


	#instagram ul li {
		width: 48%;
		margin-right: 3%;
		margin-bottom: 20px;
	}

	#instagram ul li:nth-child(even) {
		margin-right: 0;
	}

	#instagram ul li img {
		height: 230px;
	}

	.heading {
		font-size: 18px;
	}

	/********************************
							次ページ
	********************************/
	.titlecontents p {
		min-height: 50px;
		line-height: 50px;
		font-size: 18px;
	}

	.pannavi {
		padding: 5px 10px;
	}

	.pannavi p {
		font-size: 14px;
		width: 100%;
	}

	/********************************
							法人概要
	********************************/
	.president_contents {
		display: block;
	}

	.president_photo {
		width: 100%;
		text-align: center;
		margin-bottom: 30px;
	}

	.president_msg {
		width: 100%;
	}

	.outline {
		display: block;
	}

	.outline_contents {
		width: 100%;
	}

	.tbl_history th,
	.tbl_history td {
		display: block;
		width: 100%;
		text-align: left;
	}

	.tbl_history th {
		background-color: #F0F0F0;
	}

	.tbl_history th.years {
		text-align: center;
		background-color: #FFFFDB;
	}

	.lbl_philosophy{
		font-size:150%;
	}
	.philosophy{
		font-size:150%;
	}

	/********************************
							アクセスマップ
	********************************/
	.accessmap,
	.access_info {
		display: flex;
		justify-content: unset;
	}

	.accessmap .map {
		width: 100%;
		margin-bottom: 20px;
	}

	.accessmap .photo {
		width: 100%;
	}

	.access_office p,
	.access_address p {
		font-size: 16px;
	}

	.access_address {
		margin-top: 10px;
	}

	/********************************
							フッター
	********************************/
	#banner .contents {
		padding: 0 20px;
	}

	#banner .contents p {
		width: 48%;
		margin: 10px 0;
	}

	.footer_logo img {
		width: 70px;
	}

	.footer_office .officelbl {
		font-size: 16px;
	}

	.footer_office ul li {
		font-size: 11px;
	}

	.footer_address {
		margin: 15px;
	}

	.footer_address p {
		font-size: 14px;
	}

	.footer_menu {
		display: none;
	}

	.copyright p {
		font-size: 14px;
	}

	/********************************
							施設紹介
	********************************/
	.institution_col {
		width: 100%;
		margin-right: 0;
		margin-bottom: 40px;
	}
	.enquete{
		display: block;
	}
	ul.link {
		width: 100%;
		margin-bottom:10px;
	}

	/********************************
							採用情報
	********************************/
	table.recruit_table th {
		width: 30%;
		padding: 15px;
		font-size: 16px;
	}

	table.recruit_table td {
		width: 70%;
		padding: 15px;
		font-size: 16px;
	}

}

@media screen and (min-width: 640px) {
	header button {
		display: none !important;
	}
}