@charset "UTF-8";

@media screen and (max-width : 750px) {

	/* =======================================================================================
	レイアウト構造
	======================================================================================= */
	html {
		scroll-padding-top: 0;
	}

	#main_wrapper {
		width: 100%;
		min-width: 360px;
		min-height: inherit;
		padding: 0;
	}

	header {
		position: absolute;
		width: calc(100% - 20px);
		height: 60px;
		top: 0;
		left: 0;
		padding-right: 20px;
		min-width: calc(360px - 20px);
	}

	main {
		width: calc(100% - 20px);
		margin: 0 0 0 0;
		padding: 60px 10px 20px;
		/* min-height: 0px; */
	}

	footer,
	#footer_push {
		display: none;
	}

	/* =======================================================================================
	フォント
	======================================================================================= */
	body {
		font-size: 14px;
		color: hsla(0, 0%, 20%, 1);
	}

	.small,
	small {
		font-size: 12px;
	}

	figcaption {
		font-size: 12px;
	}

	/* =======================================================================================
	見出し
	======================================================================================= */
	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		margin: 0 0 10px;
		font-family: inherit;
		font-weight: bold;
		line-height: 20px;
		color: inherit;
		text-rendering: optimizelegibility;
	}

	h1 small,
	h2 small,
	h3 small,
	h4 small,
	h5 small,
	h6 small {
		font-weight: normal;
		position: relative;
		top: -1px;
		line-height: 0;
	}

	h1 {
		font-size: 22px;
	}

	h2 {
		font-size: 20px;
	}

	h3 {
		font-size: 18px;
	}

	h4 {
		font-size: 16px;
	}

	h5 {
		font-size: 15px;
	}

	h6 {
		font-size: 14px;
	}

	h1 small {
		font-size: 18px;
	}

	h2 small {
		font-size: 16px;
	}

	h3 small {
		font-size: 14px;
	}

	h4 small {
		font-size: 12px;
	}

	h5 small {
		font-size: 11px;
	}

	h6 small {
		font-size: 10px;
	}

	h3.heading_1 {
		width: calc(100% + 20px);
		font-size: 16px;
		padding: 5px 10px 5px 15px;
		margin: 50px 0px 10px -10px;
		border-right-style: none;
		text-align: left;
	}

	h4.heading_2 {
		width: calc(100% - 4px);
		font-size: 14px;
		padding: 5px 12px 5px;
		margin: 50px 0px 10px -10px;
		text-align: left;
	}

	h5.heading_3 {
		font-size: 14px;
	}

	/* =======================================================================================
	ボタン
	======================================================================================= */
	.button_green,
	.button_red {
		font-size: 16px;
		padding: 10px 40px;
	}

	.inline_button {
		font-size: 10px;
		line-height: 10px;
		margin: 0 3px;
		position: relative;
		top: -3px;
	}

	/* =======================================================================================
	その他
	======================================================================================= */
	header {
		line-height: 60px;
		color: white;
		font-size: 30px;
		text-align: right;
		background-size: 847px 60px;
		border-radius: 0;
	}

	#header_top_logo_link {
		height: 60px;
		width: 290px;
	}

	#page_title {
		width: calc(100% - 13px);
		text-align: left;
		padding: 10px 10px 8px 23px;
		/* ページに左10pxのパディングがあるから-10px移動 */
		margin: 0 10px 20px -10px;
		line-height: 27px;
		background-position: -15px 0%;
		border-radius: 0;
	}

	.list_box {
		margin: 0;
	}

	.banner_h {
		margin: 0 auto 10px;
		float: none;
	}

	#top_button {
		width: 0;
		height: 0;
		display: none;
		left: -999px;
	}

	.header_fixed {
		position: fixed;
	}

	blockquote {
		width: 100%;
	}

	/* =======================================================================================
	ハンバーガーメニュー
	======================================================================================= */
	.ham_menu_button {
		display: inline;
	}

	#main_menu {
		/* ↓ヘッダの高さ分 */
		margin-top: 60px;
		position: absolute;
		/* ↓ヘッダーの高さ+メインメニューの高さ */
		top: calc(-60px - 707px);
		z-index: 997;
		width: 100%;
		min-width: 360px;
		height: inherit;
		line-height: 36px;
		transition: transform 0.2s 0s ease;
		display: flex;
		flex-wrap: wrap;
		border-radius: 0;
		font-size: 15px;
	}

	/* メニュー内構造 */
	#main_menu div {
		width: calc(100% / 2 - 1px);
		padding: 20px 0;
	}

	/* メニュー内点線 */
	#main_menu div:nth-child(odd) {
		border-right-style: dashed;
	}

	/* メニュー内点線 */
	#main_menu div:nth-child(n+5) {
		border-bottom-style: none;
	}

	/* メニュー展開時の半透明背景 */
	#ham_menu_back {
		display: none;
		position: fixed;
		right: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 1;
		background-color: hsla(0, 0%, 0%, 0.50);
		transition: all 0.2s 0s ease;
	}

	/* ボタンクリック時にメニュー展開 */
	#main_menu.menu_open {
		transform: translate(0px, 767px);
	}

	/* メニュー展開時の半透明背景 */
	#ham_menu_back.menu_open {
		display: block;
	}

	/* モバイル版はハンバーガーメニューの中にプライバシーポリシーを表示する */
	#main_menu .privacy {
		display: initial;
	}

	/* =======================================================================================
	ボックス
	======================================================================================= */
	.white_box,
	.gray_box,
	.black_box {
		margin: 0 auto 10px;
		padding: 15px;
		border-radius: 8px;
	}

	/* =======================================================================================
	レスポンシブ時に横並びを → 縦並びに
	======================================================================================= */
	.responsive_v_direction {
		flex-flow: column;
		/* justify-content: center; */
		align-items: center;
	}

	/* =======================================================================================
	セレクトメニュー
	======================================================================================= */
	.select_menu {
		font-size: 16px;
		padding: 15px 20px;
	}

}