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

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

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

	/* header */

	header {
		display: block;
		padding: 0;
	}
	header .logo {
		margin: 0 0 2em 0;
		font-size: inherit;
	}
	header .logo img {
		width: auto;
	}

	/* nav */

	header nav {
		text-align: left;
	}
	header nav ul {
		font-size: inherit;
	}
	header nav ul li {
		font-size: inherit;
		display: block;
		margin-bottom: 1em;
	}
	header nav ul li a {
		padding: 0;
	}

	/* aside */

	aside {
		background-position: 50% 35%;
	}

	/* footer */

	footer .top {
		background-attachment: scroll;
	}
	footer .top .inner {
		padding: 5em 5em 5em 2.5em;
	}
	footer .bottom {
		display: block;
	}
	footer .bottom ul, footer .bottom small {
		margin: 0 auto;
	}

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

	/* hgroup */

	article > #hgroup .logo {
		display: block;
		padding: 1.5em 2em;
		position: absolute;
		top: 0;
		left: 0;
	}
	article > #hgroup .logo img {
		width: 360px;
	}

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

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

	/* drawer */

	.drawer-hamburger {
		display: block;
		width: 2.5em;
		padding: 1.5em 1.75em 3.5em 1.75em;
		z-index: 1002;
		background-color: #3C3F53;
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		border-radius: 50%;
	}
	.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-family: "BIZ UDPGothic", sans-serif;
		font-weight: 700;
		letter-spacing: .1em;
		color: #fff;
	}
	.drawer-open .drawer-hamburger, .drawer-close .drawer-hamburger {
		background-color: #3C3F53;
	}
	.drawer-open .drawer-hamburger:after {
		content: '閉じる';
	}
	.drawer--right .drawer-hamburger {
		right: 1em;
		top: 1em;
		background-color: #3C3F53;
	}
	.drawer--right.drawer-open .drawer-hamburger {
		right: 1em;
	}
	.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
		height: 3px;
		background: #fff;
	}
	.drawer-nav {
		top: 0 !important;
		width: calc(50% - 4em);
		height: calc(100% - 12.5em);
		padding: 7.5em 2em 5em 2em;
		background-color: rgba(255,255,255,0.75);
		-webkit-backdrop-filter: blur(0.5em);
		backdrop-filter: blur(0.5em);
	}
	.drawer--right .drawer-nav {
		right: -50%;
	}

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

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

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

	/* sign */

	.entry #sign {
		background-attachment: scroll;
	}
	.entry #sign .inner .block {
		padding: 3em 2em;
	}
	.entry #sign .inner .block h1 br {
		display: none;
	}

	/* service_c */

	.entry .service_c {
		padding: 2em;
	}
	.entry .service_c h4 {
		margin-right: -1em;
		margin-left: -1em;
	}
	.entry .service_c figure img {
		max-width: 360px;
	}

	/* home_b */

	.entry .home_b {
		background-size: auto, cover;
	}
	.entry .home_b.right .inner {
		margin-left: 2em;
		padding: 4em 2em;
	}
	.entry .home_b.left .inner {
		margin-right: 2em;
		padding: 4em 2em;
	}
	.entry .home_b .inner iframe {
		height: 20em;
	}
	.entry .home_b.right .inner iframe {
		height: 15em;
	}

	/* service_b */

	.entry .service_b iframe {
		height: 20em;
	}

	/* recruit_a */

	.entry .recruit_a {
		padding: 3em 2em;
	}

	/* company_c */

	.entry figure.company_c {
		overflow-x: scroll;
	}
	.entry figure.company_c table {
		width: auto;
		min-width: 100%;
	}
	.entry figure.company_c table th, .entry figure.company_c table td {
		white-space: nowrap;
	}

	/* company_b */

	.entry .company_b {
		padding: 3em 2em;
	}

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

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

	/* link */

	.widget.entry.link {
		display: block;
	}
	.widget.entry.link .block {
		width: auto;
	}
	.widget.entry.link .block:not(:last-child) {
		border-right: none;
		border-bottom: 1px solid rgba(255,255,255,0.25);
	}


}