/**
 * irohasoft-corp モバイルスタイル
 *
 * @package irohasoft-corp
 */

@media screen and (max-width: 1110px) {
	.hide-mobile {
		display: none !important;
	}

	#header-inner,
	#global_menu,
	#contents,
	#bread_crumb,
	#footer,
	#footer_widget,
	.hero-slider {
		padding-inline: 15px;
	}

	#header {
		height: auto;
	}

	#header-inner {
		height: auto;
		padding: 15px;
	}

	#header-left {
		height: auto;
		float: none;
	}

	.site-logo-text {
		height: auto;
		flex-direction: column;
		align-items: flex-start;
		gap: 5px;
	}

	.site-tagline {
		max-width: 100%;
		font-size: 11px;
	}

	.menu_button {
		display: block;
		position: absolute;
		right: 15px;
		top: 20px;
		width: 40px;
		height: 40px;
		background: var(--iroha-primary);
		border: none;
		border-radius: 3px;
		cursor: pointer;
	}

	.menu_button::before,
	.menu_button::after,
	.menu_button {
		background-image: none;
	}

	.menu_button::before {
		content: "";
		display: block;
		width: 22px;
		height: 2px;
		background: #fff;
		position: absolute;
		top: 12px;
		left: 9px;
		box-shadow: 0 7px 0 #fff, 0 14px 0 #fff;
	}

	#global_menu {
		width: 100%;
		height: auto;
		display: none;
	}

	#global_menu.is-open {
		display: block;
	}

	#global_menu_home {
		display: none;
	}

	#global_menu > ul {
		width: 100%;
		height: auto;
		flex-direction: column;
		float: none;
	}

	#global_menu > ul > li {
		float: none;
		flex: none;
	}

	#global_menu > ul > li > a {
		height: auto;
		line-height: 1.4;
		padding: 12px 15px;
		text-align: left;
		border-right: none;
		border-bottom: 1px solid #aaa;
	}

	#global_menu ul ul {
		position: static;
		display: block;
		box-shadow: none;
	}

	#global_menu ul ul li a {
		padding-left: 30px;
		background: #f5f5f5;
		color: var(--iroha-text);
	}

	#slider-wrapper {
		height: auto;
		margin-bottom: 20px;
	}

	.hero-slider {
		height: auto;
		padding: 0;
	}

	.hero-slider__track {
		height: auto;
	}

	.hero-slider__slide,
	.hero-slider--carousel .hero-slider__slide {
		position: relative;
		inset: auto;
		opacity: 1;
		pointer-events: auto;
		display: none;
	}

	.hero-slider__slide.is-active,
	.hero-slider--carousel .hero-slider__slide.is-active {
		display: block;
	}

	.hero-slider img {
		height: auto;
		min-height: 150px;
	}

	.hero-slider__slide a,
	.hero-slider__slide img {
		height: auto;
	}

	.layout1 #mainColumn,
	.layout1 #sideColumn,
	.layout2 #mainColumn,
	.layout2 #sideColumn {
		width: 100%;
		float: none;
	}

	#sideColumn {
		margin-top: 30px;
	}

	.headline1 h2 {
		float: none;
		width: auto;
	}

	.archive_btn--bottom {
		display: block;
		margin-top: 15px;
	}

	.archive_btn--bottom a {
		display: block;
		width: 100%;
		height: 43px;
		line-height: 43px;
		text-align: center;
		text-decoration: none;
		font-size: 12px;
		color: #000;
		background: linear-gradient(to bottom, #f5f5f5 0%, #e0e0e0 100%);
		border: 1px solid var(--iroha-border);
	}

	.top_list li {
		display: block;
		height: auto;
		padding: 8px 0;
	}

	.top_list .notice-date {
		display: block;
		margin-bottom: 4px;
	}

	a.notice-link {
		display: flex;
		width: auto;
	}

	#footer_description p,
	#footer_description h2 {
		display: block;
		margin: 0;
		padding: 0;
		line-height: 1.4;
	}

	#footer {
		height: auto;
		padding: 15px 0;
	}

	.footer_social {
		float: none;
		margin-top: 10px;
	}

	.footer_widget {
		width: 100%;
		float: none;
		border-right: none;
		border-bottom: 1px solid #ccc;
		padding: 15px 0;
	}

	#top_widget_area .top_widget {
		width: 100%;
		float: none;
		margin-left: 0;
	}

	#return_wrapper {
		bottom: 10px;
		right: 10px;
	}

	/* Contact form */
	.wpcf7 input[type="text"],
	.wpcf7 input[type="email"],
	.wpcf7 input[type="tel"],
	.wpcf7 select,
	.wpcf7 textarea {
		font-size: 16px;
		padding: 12px;
		min-height: 44px;
	}

	.wpcf7 input.wpcf7-submit {
		width: 100%;
		padding: 14px 20px;
		min-height: 0;
	}

	.wpcf7 p.submit-row {
		justify-content: center;
	}
}
