@charset "UTF-8";

/* widthが1024px以下の時読み込まれる */
@media screen and (max-width: 1024px) {
	.header_grid {
		grid-template-columns: 250px 2fr 1fr;
	}
	.header_menu {
		grid-template-columns: repeat(3,auto);
	}

	.pc_only {
		display: none;
	}

	.sp_only {
		display: block;
	}

	.contents {
		padding-top: 82px;
	}

	
	/* お問い合わせ */
	.btn_border {
		width: 90%;
	}
	.contact_us_btn {
		font-size: 1.2rem;
		padding: 15px 0px;
	}
	.contact_us_btn_text {
		margin-left: 10px;
	}
	.contact_us_texts {
		-webkit-box-pack: center;
	}
	.contact_us_grid {
		display: block;
		padding: 10px;
		text-align: center;
	}
	.left_border {
		border: none;
	}
	.contact_us_no svg {
		padding: 0;
	}
	.contact_us_no {
		margin-top: 10px;
		-webkit-box-pack: center;
		font-size: 1.8rem;
	}

	/*-----------------------------------------
	　サブページ共有CSS
	-----------------------------------------*/
	.sub_page_sub_title_grid {
		grid-template-columns: 1fr;
	}
	.sub_page_sub_title_grid > div {
		height: 70px;
		padding-left: 30px!important;
	}

	.sub_page_sub_title_left {
		font-size: 1.5rem;
		-webkit-box-pack: center;
	}
	.sub_page_sub_title_left:after {
		display: none;
		top: -2px;
	}
	.sub_page_sub_title_right {
		border-top: none;
		font-size: 1.1rem;
		-webkit-box-pack: center;
	}
	.sub_page_main_title {
		font-size: 1.7rem;
	}
	.sub_page_main_titles {
		/*margin: auto 20px;*/
	}

	/*-----------------------------------------
	　header
	-----------------------------------------*/
	header {
		padding: 10px 0px;
	}
	.header_grid {
		display: grid;
		grid-template-columns: 1fr 100px;
		margin: 0 auto;
	}
	.header_logo_1 img {
		margin-left: 20px;
		height: 80px;
		width: auto;
	}

	/*-----------------------------------------
	　ハンバーガーメニュー設定
	-----------------------------------------*/
	.hamburger-menu {
		cursor: pointer;
		position: relative;
		width: 35px;
		height: 30px;
		z-index: 2;
	}

	.hamburger-menu-line {
	  position: absolute;
	  transition: var(--hamburger-menu-transition);
	  width: calc(100% - var(--hamburger-menu-padding) * 2);
	  height: var(--hamburger-menu-border-px);
	  background-color: var(--hamburger-menu-border-color);
	}

	.line-top {
	  top: 0;
	  left: 0;

	  border-top: 4px solid #005BAC;
	  border-top-left-radius: 100px;
	  border-top-right-radius: 100px;
	  border-bottom-left-radius: 100px;
	  border-bottom-right-radius: 100px;
	  width: 100%;
   	  transition: 0.3s; /* アニメーション秒数 */
	}

	.line-middle {
	  top: 10px;
	  left: 0;

	  width: 100%;
	  border-top: 4px solid #005BAC;
	  border-top-left-radius: 100px;
	  border-top-right-radius: 100px;
	  border-bottom-left-radius: 100px;
	  border-bottom-right-radius: 100px;
   	  transition: 0.3s; /* アニメーション秒数 */
	}

	.line-bottom {
	  bottom: 6px;
	  left: 0;

	  width: 100%;
	  border-top: 4px solid #005BAC;
	  border-top-left-radius: 100px;
	  border-top-right-radius: 100px;
	  border-bottom-left-radius: 100px;
	  border-bottom-right-radius: 100px;
   	  transition: 0.3s; /* アニメーション秒数 */
	}

	/* ハンバーガーメニュー押下時 */
	.hamburger-menu.active > .line-top {
	  top: 12px;
	  transform: rotate(45deg);
	}

	.hamburger-menu.active > .line-middle {
	  width: 0;
	  height: 0;
	  left: 14px;
	}

	.hamburger-menu.active > .line-bottom {
	  bottom: 14px;
	  transform: rotate(-45deg);
	}

	/* ハンバーガメニューの中身 */
	/* 開く前のハンバーガーメニュー位置 */
	.hamburger_menus {
		padding: 40px;
		position: fixed;
	    z-index: 2;
	    top: 82px;
	    left: 0;
	    background: #FFFFFF;;
	    color: #4B0F0C;
	    transform: translateY(-150%);
	    transition: all 0.6s;
	    opacity: 0.97;
	    width: 100%;
	    height: 60%;
	    overflow: auto;
	    -webkit-overflow-scrolling: touch;
	}

	/* 開いた後のハンバーガーメニュー位置 */
	.hamburger_menus.active {
		transform: translateY(0%);
	}
	.hamburger_menus a {
		text-decoration: none;
		color: #005BAC;
		font-size: 1.4rem;
	}

	.hamburger_menus a:hover {
		color: #ddd;
  		transition: all 0.3s;

	}

	.hamburger_menus > div {
		margin-bottom: 30px;

	}
	
	/*-----------------------------------------
	　footer
	-----------------------------------------*/
	footer {
		padding: 30px 0px;
	}
	.footer_grid {
		display: block;
		text-align: center;
		width: 100%;
	}
	.copyright {
		margin-top: 30px;
		text-align: center;
		font-size: 12px;
	}

}


/* widthが799以下の時読み込まれる */
@media screen and (max-width: 799px) {
	.header_logo_1 img {
		height: auto;
		width: 100%;
	}

/*-----------------------------------------
　プライバシーポリシー/利用規約
-----------------------------------------*/

.privacyPolicy {
    padding-bottom: 50px;
	width: 85% !important;
}

.privacyPolicy h2{
	font-size: 24px;
}

.privacyPolicy p {
    padding: initial;
}

.privacyPolicy ol {
    width: 85%;
}

.user_policycontents h4 {
    margin-bottom: 20px;
    font-size: 22px;
}


}