@charset "utf-8";
/* CSS Document */

@media all and (max-width: 1599px) {
	header{ height: 70px; }
	.logo a{ width: 201px; height: 30px; }
	.menu{ display: none; }

	.btn_toggle{ width: 50px; height: 50px; color: #fff; background: none; border: 0; display: block; cursor: pointer; position: absolute; top: 8px; right: 5px; z-index: 1000; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }
	.btn_toggle.active{ position: fixed !important; top: 8px; }
}

@media all and (max-width: 1399px) {
	#index_01 .box_wrap{ margin: 0 0px; }
}

@media all and (max-width: 1280px) {
/*	.container{ max-width: 1031px; }*/
footer .f_item:nth-child(2){ flex-basis: calc(100% - 700px);}
}

@media all and (max-width: 1199px) {
	#index_01 .ico_txt p{ font-size: 1.325em;}

	.box_txt_wrap b{ margin: 0 0 20px 2px; font-size: 1.5em; letter-spacing: 2px; display: block; }
	.box_txt_wrap{ padding: 20px;}

	#bg-line01{ top: 15%;}

	footer .f_item:nth-child(2){ flex-basis: 100%; }
	footer .f_item:nth-child(2) a{ flex-basis: calc(100% / 2); }
	footer .f_btm_l{ float: none; text-align: center; }
	footer .f_btm_l span{ margin: 10px 15px 0 15px; }
	footer .f_ptop, footer .f_social{ display: none; }

	.equip_sort{ margin: 0 20px;}
	.equip_sort_scroll{ max-width: 716px;}

	.pinfo_wrap .pinfo_box:first-child{ flex-basis: calc(100% - 400px); }
	.pinfo_wrap .pinfo_box:last-child{ flex-basis: 400px;}
}

@media all and (max-width: 1024px) {
	#bg-line01{ top: -10%;}
	#bg-line02{ bottom: -65%;}
	#bg-line03{ bottom: -80%;}
	#bg-line04{ top: -75%;}

	.pinfo_wrap .pinfo_box:first-child{ flex-basis: calc(100% - 300px); }
	.pinfo_wrap .pinfo_box:last-child{ flex-basis: 300px;}
}

@media all and (max-width: 991px) {

	.btn_float_form a, .btn_float_form a:hover, .btn_float_form a:focus{ width: 100%; height: auto; padding: 7px 20px 9px 20px; color: #fff; background: #1e94d4; border: 0; border-radius: 0; box-shadow: none; right: 0px; bottom: 0; text-align: center; }

	.news_img_wrap{ flex-basis: 200px; }
	.news_img{ height: 100%; }
	.news_txt_wrap{ flex-basis: calc(100% - 200px); }
	.news_txt_wrap .news_txt h3{ position: relative; overflow: visible; }
	.news_txt_wrap .news_txt h3 p{ float: none; width: 100%; height: 78px; padding-right: 0px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
	.news_txt_wrap span.date{ font-size: 1em; position: absolute; top: 13px; right: 0; bottom: auto; }

	.einfo_wrap{ margin: 0 0 20px 0; padding: 20px;}
	.einfo_img_wrap{ flex-basis: 200px; }
	.einfo_img{ height: 100%; }
	.einfo_txt_wrap{ flex-basis: calc(100% - 200px); }
	.einfo_txt_wrap .einfo_txt h3 p{ height: 78px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }

	.nav-tabs .nav-item .nav-link p{ padding: 23px 50px 25px 50px; font-size: 1.25em; }

	.tab_item_wrap .tab_item_box{ width: 160px; margin: 0; padding: 80px 0 0 0 !important; background-size: 56px auto !important;}

	footer{ padding: 30px 0 50px 0;}
}

@media all and (max-width: 990px) {

/* 	footer .f_item:nth-child(2){ display: none; } */
/*	footer .f_wrap{ flex-wrap: wrap; }
	footer .f_item:nth-child(2){ margin-bottom: 30px; flex-basis: 100%; }
	footer .f_item:nth-child(2) a{ margin: 5px 0; flex-basis: calc(100% / 6); }
	footer .f_item:nth-child(3){ flex-basis: 100%; padding: 0; }*/
}

@media all and (max-width: 768px) {
	#bg-line01{ top: 4%; left: -25%;}
	#bg-line02{ right: -30%; bottom: -40%;}

	.pagination{ display: none; }
	.pagination_jump{ float: none; margin-top: 40px !important; text-align: center; display: block; }
	.pagination_jump li{ display: inline-block; }

/* 	nav[aria-label="breadcrumb"]{ display: none; } */

	.pinfo_wrap{ flex-wrap: wrap; }
	.pinfo_wrap .pinfo_box:first-child{ padding: 0; flex-basis: 100%; }
	.pinfo_wrap .pinfo_box:last-child{ margin-top: -10px; padding: 0; flex-basis: 100%; background: none;}
}

@media all and (max-width: 767px) {
	section{ padding: 50px 0; }
	section h2{ margin-bottom: 38px;}
	section .h2_wrap{ margin-bottom: 0px;}

	#index_01 .ico_txt p{ font-size: 1.125em;}

	footer .f_item:nth-child(2) a{ flex-basis: calc(100% / 3); }

	footer .f_btm{ font-size: 1em;}
	footer .f_btm_l span{ margin: 10px 5px 0 5px; }
	footer .f_btm_l span img{ height: 30px !important; }

	.events_txt h5{ text-overflow: clip; display: block; }

	.equip_sort_wrap{ max-width: 535px; margin: 0 auto 20px auto; display: flex; flex-wrap: wrap; align-items: center; }
	.equip_sort{ margin: 0 10px;}
	.equip_sort_scroll{ flex-basis: calc(100% - 60px); }
	.btn_scroll{ padding: 50px 0; font-size: 1.5em; flex-basis: 30px; display: block; }
	.btn_scroll i{ display: block; }

	.nav-tabs .nav-item .nav-link p{ padding: 20px 20px 22px 20px; font-size: 1.125em; }

	.btn_rent_term_wrap{ margin: 40px 0; text-align: center; }

	#case{ background: url('../../img/bg-line02.png') right -300px top 1600px no-repeat; background-size: 20% auto; }
	#term{ background: url('../../img/bg-line04.png') left -200px top 50px no-repeat, url('../../img/bg-line02.png') right -200px top 600px no-repeat, url('../../img/bg-line07.png') left -100px bottom -50px no-repeat; background-size: 15% auto,  15% auto,  70% auto; }

	#about .txt{ text-align: left; }
	#about p{ font-size: 1em; }
	#about p br{ display: none; }

	#lcl .nav-tabs{ width: 100%; max-width: 100%; display: block;}
	#lcl .nav-tabs .nav-item{ width: 90px !important; margin: 5px 5px;}
	#lcl .nav-tabs .nav-item .nav-link { height: 80px;}
	#lcl .nav-tabs .nav-item .nav-link i{ margin-bottom: 5px; color: #333; font-size: 1.75em; }
	#lcl .nav-tabs .nav-item .nav-link p{ padding: 0; color: #333;  font-size: 1em;}

	#lcl .tab-content .tab_item{ flex-wrap: wrap;}
	#lcl .tab-content .tab_item .tab_item_img{ width: 100%; margin-bottom: 20px;}
	#lcl .tab-content .tab_item .tab_item_box{ width: 100%; padding: 0;}
}

@media all and (max-width: 575px) {
	h2{ font-size: 1.625em; }
	h3{ font-size: 1.375em; }
	h4{ font-size: 1.25em; }
	h5{ font-size: 1.125em; }
	h6{ font-size: 1em; }
	p{ font-size: 1em; }

/* 	.btn_float_form a{ width: 80px ; height: 80px; padding: 18px 18px 18px 18px; color: #fff; background: #a31d1f; border: 1px solid #a31d1f; border-radius: 50%; position: fixed; right: 10px; bottom: 10px; z-index: 99; text-align: center; } */
/* .btn_float_form a:hover{ color: #a31d1f; background: #fff; } */
.btn_float_form i{ display: inline-block; }

	section{ padding: 40px 0; }
	section .h2_wrap h2{ font-size: 2em;}
	section h2{ margin-bottom: 28px; margin-left: 5px; letter-spacing: 5px;}

	#index_01 .ico_wrap .ico_img_wrap .ico_img img{ width: 150px; }
	#index_01 .ico_txt p{ font-size: 1.5em;}

	.inner article{ margin-bottom: 40px; }

	.box_wrap{ margin: 0; }

	.btn_price{ max-width: 280px; margin: 50px auto; padding: 0 20px; font-size: 1.5em; text-align: center; }
	.btn_price a{ height: 80px; line-height: 62px; position: relative; display: block; }
	.btn_price a span{ padding-bottom: 5px; border-bottom: 2px solid #352f2d;}

	footer .f_wrap{ font-size: 1em; flex-wrap: wrap; }
	footer .f_btm{ margin: 0px 0 0 0; font-size: .875em;}
	footer .f_btm_l span{ width: 100%; margin: 20px 5px 0 5px; text-align: center; }
	footer .f_btm_l span img{ height: 40px !important; }
	footer .f_btm_r span img{ height: 40px !important; }
	footer .f_item:nth-child(1){ flex-basis: 100%; text-align: center; border: 0; }
	footer .f_item h5{ margin: 0px 0 10px 0;}

	h5..quote_2{ height: 48px; }

	.equip_img_wrap{ flex-basis: 40%; }
	.equip_txt_wrap{ height: 150px; flex-basis: calc(100% - 40%); padding: 20px; }
	.equip_txt_wrap .equip_txt_ico{ width: 40px; height: 40px; }

	.news_wrap{ display: block; }
	.news_img img{ width: 100%; height: auto; }
	.news_img_wrap{ flex-basis: 100%; margin-bottom: 10px; }
	.news_txt_wrap{ flex-basis: 100%; padding: 0; }
	.news_txt_wrap .news_txt h3 p{ height: auto; text-overflow: clip; display: block; }

	.einfo_wrap{ display: block; }
	.einfo_img img{ width: 100%; height: auto; }
	.einfo_img_wrap{ flex-basis: 100%; margin-bottom: 10px; }
	.einfo_txt_wrap{ flex-basis: 100%; padding: 0; }
	.einfo_txt_wrap .einfo_txt h3 p{ height: auto; text-overflow: clip; display: block; }

	.events_txt h5{ height: auto; line-height: 1.325em; text-overflow: clip; display: block; }

	.events_cap_wrap{ margin: 0; display: flex; align-items: stretch; }
	.events_cap_item:nth-child(1){ flex-basis: 30px; }
	.events_cap_item:nth-child(2){ flex-basis: 130px; padding: 0 20px; color: #a31d1f; font-size: 1.25em; line-height: 1em; justify-content: center; }
	.events_cap_item:nth-child(3){ flex-basis: calc(100% - 160px); }
	.events_cap_item{ display: flex; align-items: center; }
	.events_cap_item div{ width: 100%; height: 2px; background: #a31d1f; }

	#equiplist .accordion-button{ padding: 10px 20px;}
	#equiplist .accordion-body{ padding: 10px; }
	#equiplist .equip_table_warp .equip_table_item{ padding: 10px; }
	#equiplist .equip_table_warp .equip_table_item:first-child{ flex-basis: calc(100% - 100px); }
	#equiplist .equip_table_warp .equip_table_item:last-child{ flex-basis: 100px; }

	.period_wrap{ padding: 20px 50px;}
	.period_wrap .period_box h4{ padding-bottom: 10px; font-size: 1.25em; background: url('../../img/bg-stroke_01.png') center bottom no-repeat; background-size: 80px auto; }
	.period_wrap .period_box span{ margin: 10px 0; font-size: 1em; }
	.period_wrap .period_box span span{ display: block; }
	.period_wrap .period_box span span:nth-child(2){ display: none; }
	.period_wrap .period_box span span:nth-child(3){ display: block; }
	.period_wrap .period_box p{ font-size: 1.5em; }

	.period_wrap.t1 .period_box h4{ font-weight: 700; background: url('../../img/bg-stroke_02.png') center bottom no-repeat; background-size: 80px auto; }

	.pinfo_wrap .pinfo_txt span{ width: 90px; }
	.pinfo_wrap .pinfo_txt p{ width: calc(100% - 110px); }

	.nav-tabs .nav-item{ width: 100%; margin-bottom: 5px; }
	.nav-tabs .nav-item .nav-link{ border: 1px solid #333 !important; border-top-right-radius: 50px; border-bottom-right-radius: 50px; border-top-left-radius: 50px; border-bottom-left-radius: 50px; }
	.nav-tabs .nav-item .nav-link p{ border: 0 !important; }

	.tab-content{ margin-top: 10px; }
	.tab-content .tab-pane{ padding: 20px;}
	.tab-content .tab-pane h4{ padding: 0 0 1px 10px; font-size: 1.125em; }
	.tab-content .tab-pane .tab_item a{ padding: 10px 10px; }
	.tab-content .tab-pane .tab_item .tab_item_box{ height: 25px; padding-left: 35px; background-size: 25px auto !important; }
	.tab-content .tab-pane .tab_item .tab_item_box p{ font-size: .875em; line-height: 1.45em; }

	.tab-content .tab-pane .tab_item_wrap .tab_item .tab_item_box{ width: 140px; margin: 0; padding: 80px 0 0 0 !important; background-size: 56px auto !important;}
}

@media all and (max-width: 480px) {

	#index_01 p.cap{ font-size: 1.625em; letter-spacing: 7px; }
	#bg-line01{ top: 55%; left: -25%;}
	#bg-line02{ bottom: -20%; right: -28%;}


	.btn_form_submit_wrap{ float: none; padding: 68px 0 0 0; }
	.btn_form_submit_wrap a{ display: block; }

/* 	footer .f_item:nth-child(2) a{ margin: 5px 0; flex-basis: calc(100% / 3); } */
	footer .f_item:nth-child(3) .f_cont{ margin: 20px 0 0 0; flex-basis: 100%; }
	footer .f_item:nth-child(3) .f_cont:first-child{ margin: 0; }

	.period_wrap{ padding: 20px 30px;}

	.tab-content .tab-pane .tab_item_wrap .tab_item .tab_item_box{ width: 110px; margin: 10px 0; padding: 60px 0 0 0 !important; background-size: 40px auto !important;}
/* 	.tab-content .tab-pane .tab_item_wrap .tab_item:last-child .tab_item_box{ margin: 0; } */
}

@media all and (max-width: 375px) {
	#bg-line01{ top: 53%; left: -25%;}
	#bg-line02{ bottom: -22%; right: -28%;}

	.period_wrap{ padding: 20px 20px;}
	.period_wrap .period_box h4{ padding-bottom: 10px; font-size: 1.125em; background: url('../../img/bg-stroke_01.png') center bottom no-repeat; background-size: 70px auto; }
	.period_wrap .period_box span{ margin: 10px 0; font-size: .875em; }
	.period_wrap .period_box p{ font-size: 1.25em; }
	.period_wrap.t1 .period_box h4{ background: url('../../img/bg-stroke_02.png') center bottom no-repeat; background-size: 70px auto; }
}

@media all and (max-width: 374px) {
	section h2{ margin-left: 3px; letter-spacing: 3px;}

	#index_01 p.cap{ font-size: 1.5em; letter-spacing: 3px; }
	#index_01 h2{ margin-left: 5px; letter-spacing: 5px; }
	#bg-line01{ top: 50%; left: -25%;}
	#bg-line02{ bottom: -23%; right: -28%;}

	.subcap{ margin: 0 0 0 3px; font-size: 1.325em; letter-spacing: 3px; }

	.func_wrap > li:first-child{ float: none; }
	.func_wrap > li:last-child{ float: none; }
	.share_wrap{ float: none;}
	.share_wrap li{ margin: 0 10px 0 0; }

	.period_wrap{ padding: 15px;}

	.tab-content .tab-pane h4{ padding: 0 0 1px 5px; font-size: 1.063em; border-left: 5px solid #333;}
	.tab-content .tab-pane h4 span{ margin-left: 5px; font-size: .5em; }
}