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

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

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

@media all and (max-width: 1299px) {
	/*.container{ max-width: 1031px; }*/

	.more_cases_wrap{ margin: 18% 0 0 0;}
	.more_cases_wrap p{ font-size: 1em; }
	.more_cases_wrap span{ width: 40px; }
}

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

	footer .f_item:nth-child(1){ width: calc(100% - 400px); }

	footer .f_item{ width: calc(100% / 2); }
	footer .f_item:nth-child(3) { display: none; }
	footer .f_btm_l{ float: none; text-align: center; }
	footer .f_btm_l span{ margin: 10px 15px 0 15px; }
	footer .f_btm_r{ float: none; margin-top: 30px; text-align: center; }
	footer .f_btm_r span{ float: none; margin: 10px 7px 0 7px;}

	.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) {
}

@media all and (max-width: 991px) {
	header{ height: 70px; padding: 10px 10px; }

	.logo a{ width: 145px; height: 50px; }
	.menu{ display: none; }
	.dropdown{ display: inline-block; }

	#index_01{ background: url('../../img/bg-index_pic01.png') right top no-repeat; background-size: 300px auto; }
	#index_01 .box_txt{ height: 92px; }
	#bg-line01{ top: 5%;}
	#bg-line02{ bottom: -45%;}
	#bg-line03{ bottom: -50%;}
	#bg-line04{ top: -40%;}

	#index_03 .row_flex .col_flex:first-child{ display: none; }

	.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 .news_txt h3 span.date{ float: none; position: absolute; top: -49px; left: 75px; }

	.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 .f_wrap{ flex-wrap: wrap; }
	footer .f_item{ width: calc(100% / 1); }
	footer .f_item:nth-child(1){ width: 100%; margin-bottom: 40px; text-align: center; }
	footer .f_item:nth-child(1) img{ max-width: 200px !important; }
}

@media all and (max-width: 990px) {
	#index_01 .box_txt{ height: 116px; }
}

@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; 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;}

	#index_01 .collist .box_wrap{ margin-bottom: 20px; }
	#index_01.collist:last-child .box_wrap{ margin-bottom: 0px; }
	#index_01 .box_txt{ height: auto; }
	#bg-line01{ top: 67%; left: -20%;}
	#bg-line02{ bottom: -15%; right: -25%;}

	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;}

	.more_cases_wrap{ margin: 40px 0; flex-wrap: wrap; }
	.more_cases_wrap p{ width: 100%; margin-bottom: 5px; }
	.more_cases_wrap span{ margin: 0 10px 0 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, .btn_float_form a:hover, .btn_float_form a:focus{ width: 100%; height: auto; padding: 7px 20px 9px 20px; color: #fff; background: var(-color-01); border: 0; border-radius: 0; right: 0px; bottom: 0; text-align: center; }
	.btn_float_form i{ display: inline-block; }

	section{ padding: 40px 0; }
	section h2{ margin-bottom: 28px; margin-left: 5px; letter-spacing: 5px;}

	#index_01{ background: url('../../img/bg-index_pic01.png') right top no-repeat; background-size: 200px auto; }
	#index_01 p.cap{ font-size: 2em; letter-spacing: 10px; }
	#bg-line01{ top: 62%; left: -25%;}
	#bg-line02{ bottom: -18%; right: -30%;}

	.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{ padding: 30px 0 60px 0;}
	footer .f_wrap{ font-size: 1em; }
	footer .f_btm{ margin: 30px 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(3) .f_cont span{ width: 40px;}

	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 .ico_txt p{ font-size: 1em;}

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

	footer .f_wrap{ flex-wrap: wrap; }
	footer .f_item{ width: calc(100% / 1); }
	footer .f_item:nth-child(2){ margin-bottom: 20px; }

	.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 .ico_wrap{ margin: 20px 10px; }
	#index_01 .ico_txt p{ font-size: 1em;}

	.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; }

	.more_cases_wrap p{ font-size: 1em; }
}
