@charset "utf-8";
@media only screen and (max-width: 960px) {

	/*-----------------------------------------------------
		base
	------------------------------------------------------*/

	/*-----------------------------------------------------
		layout
	------------------------------------------------------*/

	/* nav */

	body > nav .inner .logo {
		padding: 4em 1em;
	}
	body > nav .inner .logo img {
		max-width: 300px;
	}
	body > nav .inner .menu a {
		color: #0075c2;
	}
	body > nav .inner .menu a:hover {
		background: transparent;
	}
	body > nav .inner .sub-menu {
		display: block;
		position: static;
		background: transparent;
		font-weight: normal;
		height: auto;
		padding: 0;
		width: auto;
	}
	body > nav .inner .sub-menu a {
		margin: 0;
		padding: 0.5em 1em 0.5em 2em;
		font-weight: normal;
	}
	body > nav .inner .sub-menu a:hover {
		background: inherit;
		color: #0075c2;
	}
	body > nav .inner .menu li .sub-menu li .sub-menu {
		background: transparent;
	}
	body > nav .inner .menu li .sub-menu li .sub-menu a {
		padding: 0.5em 1em 0.5em 3em;
	}
	body > nav .inner .menu li.contact a {
		border: 1px solid #0075c2;
	}
	body > nav .inner .sub-menu h2, body > nav .inner .sub-menu dt {
		display: none;
	}
	body > nav .inner .sub-menu input[type="checkbox"] {
		display: none;
	}
	body > nav .inner .sub-menu label {
		display: block;
		padding: 0.5em 1em 0.5em 2em;
		font-weight: normal;
		color: #222;
	}
	body > nav .inner .menu :hover > .sub-menu label {
		padding: 0.5em 1em 0.5em 2em;
		cursor: auto;
		margin: 0;
		font-weight: normal;
		color: #222;
	}
	body > nav .inner .menu :hover > .sub-menu label, body > nav .inner .menu :hover > .sub-menu ul {
		-webkit-backface-visibility: visible;
		backface-visibility: visible;
		transform: none;
		transition: none;
	}
	body > nav .inner .menu :hover > .sub-menu label::before {
		content: none;
	}
	body > nav .inner .menu :hover > .sub-menu label, body > nav .inner .menu :hover > .sub-menu ul {
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		transform: translateZ(0);
		transition: all 0.3s;
	}
	body > nav .inner .menu :hover > .sub-menu ul {
		height: auto;
		overflow: visible;
	}
	body > nav .inner .menu :hover > .sub-menu ul a {
		padding: 0.5em 1em 0.5em 2em;
		text-decoration: inherit;
	}
	body > nav .inner .menu :hover > .sub-menu label:hover, body > nav .inner .menu :hover > .sub-menu input[type="checkbox"]:checked + label {
		background: transparent;
	}
	body > nav .inner .menu :hover > .sub-menu input[type="checkbox"]:checked + label + ul {
		padding: 0;
	}
	body > nav .inner .menu :hover > .sub-menu input[type="checkbox"]:checked + label::before {
		content: none;
	}

	/* main */

	main {
		margin-left: 0;
	}

	/* header */

	main > header {
		display: block;
		border-bottom: 1px solid #ccc;
		padding: 2em;
	}
	main > header .logo img {
		width: 300px;
	}

	/*-----------------------------------------------------
		module
	------------------------------------------------------*/

	/*-----------------------------------------------------
		archives
	------------------------------------------------------*/

	article > .archives form.wp-block-vk-filter-search-pro-filter-search-pro.vkfs {
		padding: 2em;
	}

	/* schedule */

	article > .archives .schedule {
		width: 48.5%;
		margin-right: 3%;
	}
	article > .archives .schedule:nth-of-type(3n+1) {
		clear: none;
	}
	article > .archives .schedule:nth-of-type(3n) {
		margin-right: 3%;
	}
	article > .archives .schedule:nth-of-type(even) {
		margin-right: 0;
	}
	article > .archives .schedule:nth-of-type(odd) {
		clear: left;
	}

	/* member */

	article > .archives .member {
		float: none;
		width: auto;
		margin: 0 0 2em 0;
	}

	/*-----------------------------------------------------
		default
	------------------------------------------------------*/

	/* drawer */

	.drawer-hamburger {
		display: block;
		width: 2.5em;
		padding: 1.25em 1.5em 3.5em 1.5em;
		z-index: 1002;
		background-color: #0075c2;
		z-index: 501;
	}
	.drawer-hamburger:after {
		content: 'メニュー';
		display: block;
		position: absolute;
		font-size: 1rem;
		line-height: 1;
		height: 1em;
		margin: auto;
		right: 0;
		left: 0;
		bottom: 1.75em;
		font-weight: bold;
		color: #fff;
	}
	.drawer-open .drawer-hamburger:after {
		color: #0075c2;
	}
	.drawer-open .drawer-hamburger {
		background-color: transparent;
	}
	.drawer-close .drawer-hamburger {
		background-color: #0075c2;
	}
	.drawer-open .drawer-hamburger:after {
		content: '閉じる';
	}
	.drawer--left.drawer-open .drawer-hamburger {
		left: 0;
	}
	.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
		height: 3px;
		background: #fff;
	}
	.drawer-open .drawer-hamburger-icon:after, .drawer-open .drawer-hamburger-icon:before {
		background: #0075c2;
	}
	.drawer-nav {
		top: 0 !important;
		width: 50%;
        z-index: 500;
	}
	.drawer--left .drawer-nav {
		left: -50%;
	}

	/*-----------------------------------------------------
		entry
	------------------------------------------------------*/

	/*-----------------------------------------------------
		class
	------------------------------------------------------*/

	/*-----------------------------------------------------
		custom
	------------------------------------------------------*/

	/* successor_b */

	.entry figure.successor_b:before {
		content: '＊横スクロールで全て閲覧できます。';
		display: block;
		margin-bottom: 0.5em;
	}

	/*-----------------------------------------------------
		section
	------------------------------------------------------*/

	/* schedule */

	#schedule.entry #tabs.block > ul {
		overflow-x: scroll;
		white-space: nowrap;
		width: 100%;
		right: 0;
		left: 0;
		overflow-y: hidden;
		-ms-overflow-style: none;
	}
	#schedule.entry #tabs.block > ul::-webkit-scrollbar {
		display: none;
	}

	/* member */

	#member.entry > h3 + p {
		margin-left: 2em;
		margin-right: 2em;
		text-align: left;
	}
	#member.entry .block .member {
		float: none;
		width: auto;
		margin-right: 0;
	}

	/*-----------------------------------------------------
		widget
	------------------------------------------------------*/

	/* about_a */

	.entry .about_a.is-layout-grid {
		gap: 1em 1em;
	}
	.entry .about_a.is-layout-grid .wp-block-group figure {
		height: 8em;
	}

	/* association_a */

	.entry .association_a.is-layout-flex .wp-block-column:last-child {
		max-width: 180px;
	}

	/* course_a */

	.entry .course_a.is-layout-grid {
		display: block;
	}

	/* join_c */

	.entry .wp-block-columns.join_c .wp-block-column:last-child {
		padding-right: 2em;
	}

	/* home_e */

	.entry .is-layout-grid.home_e {
		gap: 1em;
	}


}