/* CSS Document */
@media only screen and (max-width: 768px) { .blurFixSP { image-rendering: optimizeSpeed; /* STOP SMOOTHING, GIVE ME SPEED  */ image-rendering: -moz-crisp-edges; /* Firefox                        */ image-rendering: -o-crisp-edges; /* Opera                          */ image-rendering: -webkit-optimize-contrast; /* Chrome (and eventually Safari) */ image-rendering: pixelated; /* Chrome */ image-rendering: optimize-contrast; /* CSS3 Proposed                  */ -ms-interpolation-mode: nearest-neighbor; /* IE8+                           */ } }

/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/********************************
Menu Toogle
********************************/
.menu_toggle { background-color: #224b8f; position: fixed; top: 60px; bottom: 0px; left: 0px; height: calc(100vh - 60px); width: 100%; padding: 0px 0px 0px; overflow: hidden; opacity: 0; visibility: hidden; transition: all 0.3s linear; }

.menu_toggle.active { opacity: 1; visibility: visible; }

.menu_toggle ul li { position: relative; overflow: hidden; }

.menu_toggle p { margin-bottom: 0; }

.menu_toggle .inside .content { max-width: 1280px; margin: auto; }

.menu_toggle .inside { -webkit-overflow-scrolling: touch; /* Lets it scroll lazy */ transition: all 0.5s ease; height: 100%; overflow: auto; display: flex; align-items: center; }

.menu_toggle .inside .content { padding: 40px 10px 50px; }

.menu_toggle .inside .content .ft_link { padding: 0; }

.menu_toggle .inside .content > ul { margin-bottom: 20px; width: 100%; }

.menu_toggle .inside .content > ul > li { background: url(../images/shared_bullet01.png) left 12px top 21px no-repeat; background-size: 4px auto; }

.menu_toggle .inside .content > ul > li:first-child > a::before, .menu_toggle .inside .content > ul > li:first-child > a::after, .menu_toggle .inside .content > ul > li:first-child > p::before, .menu_toggle .inside .content > ul > li:first-child > p::after { display: none; }

.menu_toggle .inside .content > ul > li.ttl { margin-bottom: 15px; background: none; }

.menu_toggle .inside .content > ul > li.ttl a { font-size: 20px; padding-left: 0; text-transform: uppercase; border-bottom: 1px solid #fefefe; }

.menu_toggle .inside .content > ul > li > a, .menu_toggle .inside .content > ul > li > p.title { cursor: pointer; padding: 12px 20px 12px 30px; display: block; position: relative; font-size: 15px; font-weight: 700; color: #fff; text-decoration: none; }

.menu_toggle .inside .content > ul > li > a .eng, .menu_toggle .inside .content > ul > li > p.title .eng { display: block; font-size: 80%; padding-top: 0px; font-weight: 400; color: #fff; letter-spacing: 0.1em; font-family: "Lora", serif; text-transform: uppercase; }

.menu_toggle .inside .content > ul > li > a::before { position: absolute; top: 50%; left: 8px; border: 4px solid #ffffff; border-bottom-color: transparent; border-right-color: transparent; border-top-color: transparent; transform: translateY(-50%) scaleX(1.4); }

.menu_toggle .inside .content > ul > li > p.title::before, .menu_toggle .inside .content > ul > li > p.title::after { content: ""; background-color: #fff; display: block; position: absolute; top: 50%; right: 10px; width: 10px; height: 2px; transition: all 0.5s ease; opacity: 1; }

.menu_toggle .inside .content > ul > li > p.title::before { transform: translate(-50%, -50%); }

.menu_toggle .inside .content > ul > li > p.title::after { transform: translate(-50%, -50%) rotate(90deg); }

.menu_toggle .inside .content > ul > li > p.title.rotate::before { transform: translate(-50%, -50%); }

.menu_toggle .inside .content > ul > li > p.title.rotate::after { transform: translate(-50%, -50%); }

.menu_toggle .lv2 ul { background-color: rgba(255, 255, 255, 0.1); }

.menu_toggle .lv2 li { padding: 0 10px; }

.menu_toggle .lv2 li a, .menu_toggle .lv2 li p.title { display: block; position: relative; color: #fff; font-size: 13px; padding: 10px 10px 10px 25px; border-bottom: 1px dotted rgba(255, 255, 255, 0.7); text-decoration: none; }

.menu_toggle .lv2 li a::after { content: "\203A"; display: block; position: absolute; top: 47%; left: 10px; transform: translateY(-50%); font-size: 12px; font-weight: normal; }

#nav-icon { width: 32px; height: 27px; position: relative; margin: 0 auto 0px; cursor: pointer; transition: .5s ease-in-out; }

#nav-icon span { background-color: #fff; display: block; position: absolute; height: 2px; width: 100%; opacity: 1; left: 0; transform: rotate(0deg); transition: .25s ease-in-out; }

#nav-icon span:nth-child(1) { top: 3px; }

#nav-icon span:nth-child(2), #nav-icon span:nth-child(3) { top: 11px; }

#nav-icon span:nth-child(4) { top: 19px; }

#nav-icon.open span:nth-child(1) { top: 11px; width: 0%; left: 50%; }

#nav-icon.open span:nth-child(2) { transform: rotate(45deg); }

#nav-icon.open span:nth-child(3) { transform: rotate(-45deg); }

#nav-icon.open span:nth-child(4) { top: 11px; width: 0%; left: 50%; }

.hamburger-btn { background-color: #333333; width: 60px; height: 60px; padding: 10px 0px 0; position: fixed; top: 0; right: 0; z-index: 10; cursor: pointer; }

.hamburger-btn .button-toggle { position: relative; width: 100%; margin: 0 auto; text-align: center; color: inherit; }

.hamburger-btn .button-toggle #menu_btn { color: #fff; font-size: 13px; text-align: center; line-height: 1; letter-spacing: 0.1em; font-family: 'Oswald', sans-serif; }

@media only screen and (max-width: 768px) { .menu_toggle .inside .content .ft_link { padding-top: 10px; padding-bottom: 50px; }
  .menu_toggle .inside .content .ft_link .link_list > div { width: 100%; max-width: 600px; margin: auto; }
  .menu_toggle .inside .content .ft_link .link_list > div.menu01 { margin-bottom: 50px; }
  .menu_toggle .inside .content .ft_link .link_list > div li.ttl { font-size: 26px; width: 100% !important; }
  .menu_toggle .inside .content .ft_link .link_list > div li:not(.ttl) { padding-left: 13px; padding-right: 3%; background-position: left 0 top 10px; }
  .menu_toggle .inside .content .ft_link .link_list > div li:not(.ttl) a { font-size: 14px; letter-spacing: 0.1em; text-decoration: none; } }

.sp_560 { display: none; }

@media only screen and (max-width: 560px) { .sp_560 { display: block; }
  .menu_toggle .inside .content .ft_link .link_list > div ul > li { width: 50%; }
  .menu_toggle .inside .content .ft_link .link_list > div ul > li:nth-child(2n) { width: 50%; }
  .menu_toggle .inside .content .ft_link .link_list > div li.ttl { font-size: 24px; }
  .menu_toggle .inside .content .ft_link .link_list > div li:not(.ttl) { padding-left: 13px; padding-right: 2%; background-position: left 0 top 9px; }
  .menu_toggle .inside .content .ft_link .link_list > div li:not(.ttl) a { font-size: 14px; letter-spacing: 0.1em; } }

@media only screen and (max-width: 425px) { .menu_toggle .inside .content .ft_link .link_list > div li.ttl { font-size: 6vw; }
  .menu_toggle .inside .content .ft_link .link_list > div li:not(.ttl) a { font-size: 3.1vw; } }

/* END Menu
********************************/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/********************************
General
********************************/
@media only screen and (max-width: 768px) { body { font-size: 87.5%; }
  figure { text-align: center; }
  img { max-width: 100%; }
  .TabContainer .TabPager li { width: 33%; }
  .totop { bottom: 55px; right: 5px; }
  .totop .icon { width: 50px; height: 50px; }
  .fblock { display: block; }
  .fblock.true { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
  .under .topic_path { padding-bottom: 10px; }
  .txt_l, .txt_r { float: none; width: auto; }
  .image_l, .image_r { float: none; width: auto; margin: 0 0 20px; text-align: center; max-width: none; }
  .btn-group .btn.style01, .btn-group .btn.style02 { max-width: 250px; }
  .btn-group .btn.style01.md, .btn-group .btn.style02.md { font-size: 13px; }
  .btn-group .btn.style01.md a, .btn-group .btn.style02.md a { font-size: 14px; padding: 15px 35px; }
  .btn-group .btn.style01.md::after, .btn-group .btn.style02.md::after { right: 8px; }
  .btn-group .btn.style01 a, .btn-group .btn.style02 a { padding: 15px 35px; font-size: 14px; }
  .btn-group .btn.style01 a::after, .btn-group .btn.style02 a::after { right: 8px; }
  p { margin-bottom: 13px; line-height: 1.8; }
  a .tel_click:hover { opacity: 1; color: inherit; }
  .slick-prev { left: 0px; }
  .slick-next { right: 0px; }
  .slick-arrow { z-index: 1; top: 15vw; }
  .bnr_corona { width: 250px; height: 120px; }
  .bnr_corona .close { width: 32px; height: 32px; }
  .bnr_corona .tt { margin-bottom: 10px; font-size: 18px; }
  .bnr_corona .btn-group { max-width: 190px; }
  .bnr_corona .btn-group .btn.style01 a, .bnr_corona .btn-group .btn.style01 span { padding: 9px 10px 8px; }
  .bnr_corona.active { right: 60px; bottom: 55px; } }

/* END General
********************************/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/********************************
Header & Footer
********************************/
@media only screen and (max-width: 768px) { .wrapper { min-width: inherit; }
  .inner, .inner_sm { max-width: none; padding-left: 10px; padding-right: 10px; }
  body.ovh header .logo { padding-top: 0; }
  body.ovh header .header_top { background-color: #fff; padding-top: 5px; padding-bottom: 5px; }
  header { height: 60px; }
  header.active .header_top { padding-top: 5px; padding-bottom: 5px; background-color: #fff; }
  header.active .header_top .logo { padding-top: 0; }
  .header_top { width: 100%; padding: 5px 0; position: fixed; top: 0; left: 0; z-index: 10; height: 60px; }
  .header_top::before { display: none; }
  .header_top.active { transform: translateY(-100%); }
  .header_top p { margin-bottom: 0; }
  .header_top .logo { max-width: 220px; width: auto; margin-left: 10px; position: static; left: 0; top: 0; transform: none; padding-top: 10px; }
  .header_top .logo img { max-height: 50px; }
  .header_top .inner { height: auto; display: block; }
  footer { background-size: auto; padding: 0px 0 50px; }
  footer .ft_row1 { padding-bottom: 0; }
  footer .ft_row1 .inner_big { display: block; margin-bottom: 0; }
  footer .ft_row1 .ft_info { width: 100%; margin: 0 auto; }
	footer .ft_row1 .ft_info:first-child {margin-bottom: 10px;}
  footer .ft_row1 .ft_info .ft_logo { max-width: 280px; }
  footer .ft_row1 .idx_time { width: 100%; margin: 40px auto 0; }
  footer .ft_link { width: auto; }
  footer .ft_link .link_list > div { width: 100%; }
  footer .copyright p { margin-top: 0; padding: 20px 50px; word-break: break-word; font-size: 10px; }
  .fixed_banner { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-wrap: wrap; position: fixed; top: auto; bottom: 0; left: 0; right: auto; width: 100%; height: 50px; transform: translateY(100%); transition: transform 0.3s ease-in-out; }
  .fixed_banner.active { transform: translateY(0%); }
  .fixed_banner::before { display: none; }
  .fixed_banner p { font-weight: normal; }
  .fixed_banner p::before { margin-bottom: 5px; }
  .fixed_banner .tel, .fixed_banner .web, .fixed_banner .mail { height: auto; }
  .fixed_banner .tel p, .fixed_banner .web p, .fixed_banner .mail p { padding: 0px 0px; font-size: 14px; line-height: 1; }
  .fixed_banner .tel p::before, .fixed_banner .web p::before, .fixed_banner .mail p::before { height: 22px; }
  .fixed_banner .tel { width: 33.33%; padding: 3px 3px; }
  .fixed_banner .tel p::before { background-size: auto 100%; }
  .fixed_banner .tel p span { writing-mode: lr-tb; }
  .fixed_banner .web { width: 33.33%; }
  .fixed_banner .web p::before { background-size: auto 100%; }
  .fixed_banner .mail { width: 33.33%; }
  .fixed_banner .mail a { position: absolute; width: 100%; height: 100%; left: 0; top: 0; inset: 0; z-index: 1; } }

@media only screen and (max-width: 639px) { footer .ft_row1 .flex { flex-direction: column; align-items: center; }
  footer .ft_row1 .flex > div { width: 100%; }
  footer .ft_row1 .flex .bnr_fax, footer .ft_row1 .flex .bnr_mail { margin: 30px auto 0; } 

	.ft_bnr {
		padding-top: 30px;
	}
	
	.ft_bnr_list {
		max-width: 520px;
		margin: 0 auto;
		padding-bottom: 10px;
	}
	
	.ft_bnr_list li {
		width: calc(50% - 10px);
		margin: 5px;
	}
	
	.ft_bnr_cen {
		margin-bottom: 10px
	}


}

/* End Header & Footer
********************************/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/********************************
Index
********************************/
@media only screen and (max-width: 768px) { .home_page .key { margin-top: 0; height: 100vh; }
  .home_page .key .arrows a { font-size: 9px; bottom: 10px; height: 72px; left: calc(50% - 9px); }
  .home_page .key .arrows a:hover { opacity: 1; }
  .home_page .key .key_text { max-width: none; max-height: none; width: auto; position: static; transform: none; }
  .home_page .key .key_text .box::before { left: 6px; top: 6px; right: 6px; bottom: 6px; background-size: auto 2px, auto 2px, 2px auto, 2px auto; }
  .home_page .key .key_text .item { padding: 60px 10px; height: 100vh; background-position: center; align-items: flex-end; padding-bottom: 100px; text-shadow: #fff 1px 0px 0px, #fff 0.540302px 0.841471px 0px, #fff -0.416147px 0.909297px 0px, #fff -0.989992px 0.14112px 0px, #fff -0.653644px -0.756802px 0px, #fff 0.283662px -0.958924px 0px, #fff 0.96017px -0.279415px 0px; }
  .home_page .key .key_text .item.s1 .slider_detail span { background-image: url(../images/idx_mv01sp.jpg); background-position: left 20% center; }
  .home_page .key .key_text .item.s2 .slider_detail span { background-image: url(../images/idx_mv02sp.jpg); background-position: left 17% center; }
  .home_page .key .key_text .item.s3 .slider_detail span { background-image: url(../images/idx_mv03sp.jpg); background-position: left 20% center; }
  .home_page .key .key_text h2 { font-size: 30px; line-height: 1.42; }
  .home_page .key .key_text h2::before { background-size: auto 100%; height: 0.25em; width: 2.5em; left: calc(50% - 1.25em); background-position: left center; }
  .home_page .key .key_text p { font-size: 18px; } }

@media only screen and (max-width: 640px) { .home_page .key .key_text .item { padding-left: 10px; padding-right: 10px; }
  .home_page .key .key_text .item .box { min-width: 80vmin; }
  .home_page .key .key_text h2 { padding-bottom: 0.8em; margin-bottom: 0.9em; font-size: 4.6vmin; }
  .home_page .key .key_text p { font-size: 3vmin; } }

@media only screen and (max-width: 768px) and (orientation: landscape) { .home_page .key .key_text h2 { font-size: 4.6vmin; }
  .home_page .key .key_text p { font-size: 3vmin; }
  .home_page .key .key_text .item.s1 .slider_detail span { background-image: url(../images/idx_mv01.jpg); }
  .home_page .key .key_text .item.s2 .slider_detail span { background-image: url(../images/idx_mv02.jpg); }
  .home_page .key .key_text .item.s3 .slider_detail span { background-image: url(../images/idx_mv03.jpg); } }

@media only screen and (max-width: 768px) { .home_page h3 { font-size: 18px; }
  .home_page h3.st4 .en { padding: 0.15em 1.6em; }
  .home_page h3.st4::after { width: 60px; height: 3px; }
  .home_page h3.st6::after { width: 60px; height: 3px; } }

@media only screen and (max-width: 480px) { .home_page h3 { font-size: 16px; } }

@media only screen and (max-width: 768px) { .idx_gallery { padding: 0 0 30px 0; }
  .idx_gallery ul li .img { width: 225px; height: 156px; } }

@media only screen and (max-width: 768px) { .index01 { padding: 60px 0 40px; }
  .index01 .txt_ver { padding: 0; }
  .index01 .txt { max-width: 560px; margin: auto; text-align: center; font-size: 14px; line-height: 2; }
  .index01 .btn-group { margin: 30px auto 0; }
  .index01 .btn-group .btn { margin-bottom: 20px; margin-left: 10px; margin-right: 10px; } }

@media only screen and (max-width: 620px) { .index01 .pic { left: -8%; top: -5vw; width: 26%; max-width: 280px; }
  .index01 .box_text { padding-top: 6vw; } }

@media only screen and (max-width: 375px) { .index01 .list li { padding-left: 33px; font-size: 15px; background-position: top 15px left; background-size: 20px auto; } }

@media only screen and (max-width: 768px) { .min_992 { display: none; }
  .index02 { padding: 60px 0 60px; background-position: left 0% center; }
  .index02 .idx02_box { justify-content: center; }
  .index02 .idx02_box .box { width: 100%; min-height: 200px; max-height: 400px; }
  .index02 .idx02_box .box .txt { min-height: 6.95em; } }

@media only screen and (max-width: 639px) { .index02 .idx02_box .box { margin-bottom: 5.8vw; padding-top: 6.8vw; padding-bottom: 8.2vw; min-height: 200px; }
  .index02 .idx02_box .box .en { width: 12.4vw; height: 12.4vw; font-size: 2.5vw; }
  .index02 .idx02_box .box .tt { margin-bottom: 2.4vw; font-size: 3.7vw; }
  .index02 .idx02_box .box .tt::after { margin-top: 2.1vw; }
  .index02 .idx02_box .box .txt { font-size: 2.8vw; } }

@media only screen and (max-width: 768px) { .index03 { padding: 0 0 60px 0; }
  .index03 .box_head { width: 100%; max-width: 400px; padding: 60px 10px; }
  .index03 .box_head::before { left: 5px; width: 51px; }
  .index03 .box_head::after { right: 5px; width: 81.5px; }
  .index03 .idx3_wp .dot a { visibility: hidden; }
  .index03 .idx3_wp .dot a.active { visibility: visible; }
  .index03 .idx3_wp .point_btn { width: 100%; max-width: 560px; margin: auto; }
  .index03 .idx3_wp .point_btn a { height: auto; overflow: hidden; font-size: 16px; }
  .index03 .idx3_wp .point_btn a > span { padding: 1.4em 1.5em; }
  .index03 .idx3_wp .point_btn a:hover { opacity: 1; }
  .index03 .idx3_wp .point_btn a::after, .index03 .idx3_wp .point_btn a .ov { display: none; visibility: hidden; } }

@media only screen and (max-width: 520px) { .index03 .idx03_box { padding-top: 120%; padding-left: 22%; padding-right: 23%; }
  .index03 .idx03_box .point { padding-left: 4%; padding-right: 1%; height: 18%; width: 49%; }
  .index03 .idx03_box .point .tt { font-size: 2.9vw; }
  .index03 .idx03_box .point ul li { font-size: 2.3vw; line-height: 1.6; padding-bottom: 0.4em; }
  .index03 .idx03_box .point ul li:last-child { padding-bottom: 0; }
  .index03 .idx03_box .p1, .index03 .idx03_box .p7 { bottom: 25%; }
  .index03 .idx03_box .p2, .index03 .idx03_box .p6 { bottom: 44%; }
  .index03 .idx03_box .p3, .index03 .idx03_box .p5 { bottom: 63%; } }

@media only screen and (max-width: 768px) { .index04 { padding: 60px 0; }
  .index04 .big { font-size: 20px; }
  .index04 .idx04_row { justify-content: center; margin-left: -0.5vw; margin-right: -0.5vw; }
  .index04 .idx04_row .box { margin: 0.5vw; max-width: 305px; max-height: 160px; width: calc(50% - 1vw); height: calc(25.2vw); padding-left: 22%; }
  .index04 .idx04_row .box:nth-child(7) { padding-left: 21%; } }

@media only screen and (max-width: 640px) { .index04 .idx04_row .box .tt { font-size: 3.7vw; }
  .index04 .idx04_row .box .en { font-size: 18.7vw; } }

.sp_425 { display: none; }

@media only screen and (max-width: 425px) { .sp_425 { display: block; }
  .index04 .box .sub { padding: 25px 7%; font-size: 13px; } }

@media only screen and (max-width: 375px) { .index04 .box .sub { font-size: 12px; } }

@media only screen and (max-width: 768px) { .index05 { padding: 60px 0; }
  .index05 .flex { max-width: 400px; margin: auto; }
  .index05 .flex .box .content { padding: 3% 15%; justify-content: center; }
  .index05 .flex .box .tt .jp { font-size: 16px; }
  .index05 .flex .box .tt .en { font-size: 32px; }
  .index05 .flex .box .txt { font-size: 16px; } }

@media only screen and (max-width: 425px) { .index05 .flex .box .tt .jp, .index05 .flex .box .txt { font-size: 14px; } }

@media only screen and (max-width: 768px) { .index06 { padding: 60px 0 40px; }
  .index06 h3.st2 { background-size: 40px auto, 40px auto; padding: 0px 45px; }
  .index06 .idx06_row { max-width: 560px; margin: auto; }
  .index06 .idx06_row .box { margin-bottom: 20px; }
  .index06 .idx06_row .box .tt { font-size: 22px; }
  .index06 .idx06_row .box .txt { font-size: 14px; margin-bottom: 1.8em; } }

@media only screen and (max-width: 520px) { .index06 .idx06_row .box { margin-bottom: 20px; }
  .index06 .idx06_row .box .content { left: 2.3%; top: 4%; width: 95.4%; height: 92%; }
  .index06 .idx06_row .box .tt { font-size: 4.6vw; margin-bottom: 10px; }
  .index06 .idx06_row .box .tt::after { margin-top: 5px; }
  .index06 .idx06_row .box .txt { font-size: 2.7vw; margin-bottom: 1.5em; }
  .index06 .idx06_row .btn-group .btn.style01.md { min-width: 180px; }
  .index06 .idx06_row .btn-group .btn.style01.md a { font-size: 2.7vw; padding-top: 1em; padding-bottom: 1em; padding-left: 2em; padding-right: 2em; } }

@media only screen and (max-width: 375px) { .index06 .box_news li .date { width: 100%; }
  .index06 .box_news li .tt { margin-top: 5px; width: 100%; }
  .idx_map, .under .ud_map { height: 300px; } }

@media only screen and (max-width: 768px) { .index07 { padding-top: 70vw; background-image: url(../images/idx07_bg_sp.jpg), url(../images/idx07_bg_sp2.jpg); background-repeat: no-repeat, repeat; background-position: top center, bottom; background-size: 100% auto, auto; padding-bottom: 40px; }
  .index07 .box_text { width: 100%; margin: auto; max-width: 595px; }
  .index07 .btn-group { margin: auto; justify-content: center; }
  .index07 .btn-group .btn { margin: 10px; }
  .index07 .box { right: 10px; bottom: auto; height: auto; top: 50vw; padding: 2vw 3vw; }
  .index07 .box .sub { font-size: 2.2vw; }
  .index07 .box .big { margin-right: 1.5em; font-size: 4vw; }
  .index07 .box .en { font-size: 2vw; } }

@media only screen and (max-width: 768px) { .index08 { padding: 60px 0; }
  .index08 h3 { margin-bottom: 50px; }
  .index08 h3 .num { font-size: 4em; letter-spacing: 0; }
  .index08 .idx08_row { display: block; }
  .index08 .idx08_row .tt { font-size: 20px; }
  .index08 .idx08_row ul li { padding: 10px 5px; }
  .index08 .idx08_row ul li:first-child { padding: 10px 5px; }
  .index08 .idx08_row ul li .title { width: 50px; }
  .index08 .idx08_row ul li .txt { width: calc(100% - 50px); }
  .index08 .idx08_row .box { width: 100%; margin: 0 auto 20px; padding: 30px 20px; } }

@media only screen and (max-width: 425px) { .index08 h3 .num { font-size: 3em; }
  .index08 .idx08_row .box { padding: 30px 15px; }
  .index08 .idx08_row .box .tt { font-size: 18px; } }

@media only screen and (max-width: 768px) { .index09 { padding-bottom: 40px; }
  .index09 .idx09_row { display: block; }
  .index09 .idx09_row .box_news { width: 100%; margin: 0 auto 20px; padding: 28px 4% 20px; }
  .index09 .idx09_row .box_news:nth-child(2) h4 { background-size: 21px auto; background-position: left 0px top 9px; }
  .index09 .idx09_row .box_news h4 { padding-left: 30px; font-size: 22px; background-size: 23px auto; background-position: left 0px top 10px; }
  .index09 .idx09_row .box_news .btn_link a { height: 28px; width: 95px; font-size: 13px; }
  .index09 .idx09_row .box_news .btn_link a::after { width: 16px; }
  .index09 .idx09_row .box_news li .date { width: 110px; }
  .index09 .idx09_row .box_news li .tt { width: calc(100% - 110px); } }

@media only screen and (max-width: 375px) { .index09 .idx09_row .box_news li .date { width: 100%; }
  .index09 .idx09_row .box_news li .tt { margin-top: 5px; width: 100%; } }

@media only screen and (max-width: 768px) { .idx_time { width: 100%; max-width: 600px; }
  .idx_time th, .idx_time td { font-size: 14px; } }

@media only screen and (max-width: 540px) { footer .ft_row1 .ft_info .idx_time .sub { font-size: 2.5vw; }
  .idx_time th, .idx_time td { font-size: 2.8vw; }
	.idx_time.idx_time1 th, .idx_time.idx_time1 td { font-size: 2vw; }
  .idx_time th:first-child, .idx_time td:first-child { width: 26%; }
  .idx_time th:last-child, .idx_time td:last-child { padding-right: 1em; } }

/* END Index
********************************/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
/********************************
Under
********************************/
@media only screen and (max-width: 768px) { .under .btn-group .btn.style01 { max-width: 300px; }
  .under .btn-group .btn.style01 a { font-size: 14px; padding: 15px 30px 15px; }
  .under #mainContent { padding-bottom: 50px; }
  .under .key { height: 300px; padding-top: 60px; }
  .under .key .key_text h2 { font-size: 24px; }
  .under.page-rehabilitation h3 .en { font-size: 2.2em; }
  .under.page-interview .key { padding-right: 25%; background-position: right 37% center; }
  .under h3 { margin-bottom: 45px; font-size: 24px; padding: 0.5em 0; }
  .under h3::before { height: 0.9em; }
  .under h3 .en { font-size: 2.6em; }
  .under h4 { margin-bottom: 20px; font-size: 20px; }
  .under h4::before { width: 50px; }
  .under h5 { margin-bottom: 15px; font-size: 18px; }
  .under h6 { margin-bottom: 15px; font-size: 16px; background-position: left top 6px; } }

@media only screen and (max-width: 560px) { .under.page-interview .key .key_text { justify-content: flex-start; }
  .under.page-interview .key .key_text h2 { font-size: 4.4vw; } }

@media only screen and (max-width: 425px) { .under.page-interview .key .key_text h2 { font-size: 4.9vw; }
  .under.page-rehabilitation h3 .en { padding-left: 0.1em; font-size: 2.1em; }
  .under .key .key_text h2 { font-size: 22px; }
  .under h3 { margin-bottom: 45px; font-size: 22px; padding: 0.5em 0; }
  .under h3 .en { font-size: 2.3em; }
  .under h4 { margin-bottom: 20px; font-size: 20px; }
  .under h5 { margin-bottom: 15px; font-size: 18px; }
  .under h6 { margin-bottom: 15px; } }

@media only screen and (max-width: 375px) { .under.page-rehabilitation h3 .en { font-size: 12.1vw; } }

@media only screen and (max-width: 768px) { .under section:first-child h3 { margin-top: 35px; }
  .under section { padding-top: 1px; }
  .under section h3 { margin-top: 60px; }
  .under .secH4 { padding-top: 45px; }
  .under .secH5 { padding-top: 30px; }
  .under .imgBox.rowImg .image_l, .under .imgBox.rowImg .image_r { float: none; width: auto; margin: 0 0 20px; text-align: center; max-width: none; }
  .under .imgBox.rowImg .image_l:nth-child(n), .under .imgBox.rowImg .image_r:nth-child(n) { max-width: none; }
  .under .imgBox.rowImg .txt_l, .under .imgBox.rowImg .txt_r { float: none; width: auto; }
  .under .imgBox.rowImg.large .image_l, .under .imgBox.rowImg.large .image_r { max-width: none; }
  .under .imgBox.rowImg.large .txt_l, .under .imgBox.rowImg.large .txt_r { width: auto; }
  .under .imgBox.colImg .item:not(:last-of-type) { margin-bottom: 30px; }
  .under .imgBox.colImg figure { margin-bottom: 15px; }
  .under .imgBox.colImg .text { font-size: 14px; }
  .under .imgBox.colImg2 .item, .under .imgBox.colImg3 .item { width: 100%; }
  .under .imgBox.colImg2 img, .under .imgBox.colImg3 img { max-height: 100%; }
  .under .acf_block h3 { margin-bottom: 0; }
  .under .acf_block .text_h3 { margin: 25px 0 0; }
  .under .acf_block .text_h4 { margin: 20px 0 0; }
  .under .acf_block .text_h5 { margin: 15px 0 0; }
  .under table.rollTable { width: 768px; }
  .under table.resTable { display: block; }
  .under table.resTable tbody, .under table.resTable tr, .under table.resTable th, .under table.resTable td { display: block; }
  .under table.resTable td:not(:last-child) { border-bottom: 0; }
  .under table.resTable.tbl_style01.colHead tr th { border-bottom: none; }
  .under table.resTable.tbl_style01.colHead tr:not(:first-child) th { border-top: none; }
  .under table.resTable.tbl_style02.colHead th { border-bottom: none; }
  .under table.resTable.tbl_style02.colHead tr:not(:last-child) td { border-bottom: none; }
  .under .tbl_note { display: block; }
  .under .secH3 > .tbl_note:not(.t_left) { text-align: left; }
  .under ul.list01 li { font-size: 15px; padding-left: 18px; }
  .under ul.list01 li::before { width: 8px; height: 8px; }
  .under ul.list01.mcol-2 li { width: 100%; padding-bottom: 9px; padding-right: 0; }
  .under .box_qa .ques { padding: 15px 0px 15px 20px; min-height: 50px; }
  .under .box_qa .ques::before { width: 10px; height: 10px; right: 20px; top: calc(50% - 5px); }
  .under .box_qa .ques::after { right: 24px; height: 13px; top: calc(50% - 8px); }
  .under .box_qa .ques .icon { font-size: 28px; min-width: 40px; }
  .under .box_qa .ques .box { padding: 0px 30px 0px 15px; width: calc(100% - 40px); }
  .under .box_qa .ques p { font-size: 18px; }
  .under .box_qa .qa.active .ques::after, .under .box_qa.step .qa.active .ques::after { top: calc(50% - 5px); }
  .under .box_qa .qa.active .ans, .under .box_qa.step .qa.active .ans { padding: 20px 20px; }
  .under .ud_box { border-width: 2px; border-radius: 10px; padding: 25px 15px; }
  .under .ud_box p { font-size: 18px; }
  .under .doctor_box { padding: 0vw; }
  .under .doctor_box .doctor_name { bottom: 5vw; right: 3.5vw; font-size: 4vw; padding: 3vw 2vw; }
  .under .inter_group .sub_catch { margin-bottom: 50px; padding: 50px 15px; }
  .under .inter_group .sub_catch p { font-size: 20px; letter-spacing: 0.05em; }
  .under .inter_group .inter_item { display: block; margin-bottom: 50px; }
  .under .inter_group .img { width: 100%; margin-bottom: 40px; margin-left: auto; margin-right: auto; }
  .under .inter_group .box_txt { width: 100%; }
  .under .inter_group .box_txt h4 { font-size: 20px; }
  .under .inter_group .num { font-size: 14px; } }

@media only screen and (max-width: 375px) { .under .under .ud_box p, .under .inter_group .sub_catch p { font-size: 17px; }
  .under .imgBox.colImg .text { font-size: 13px; }
  .under .imgBox.colImg2 .item, .under .imgBox.colImg3 .item { width: 100%; } }

@media only screen and (max-width: 768px) { .under .clinic_tbl01 th { width: auto; text-align: left; }
  .under .teeth_box .secH4 { width: 100%; } }

@media only screen and (max-width: 425px) { .under .access_box_img01 .block:nth-child(even) .big, .under .access_box_img02 .block:nth-child(even) .big { order: 0; }
  .under .access_box_img01 .block .big, .under .access_box_img01 .block .small, .under .access_box_img02 .block .big, .under .access_box_img02 .block .small { width: 100%; } }
/*sp*/
@media only screen and (max-width:768px) {
  footer .copyright p{padding: 0;margin: 0;}
  footer .copyright{padding: 20px 50px;margin-top: 0;}
  footer .copyright .textwidget p{word-break: break-word;font-size: 10px;}
  footer .copyright p.copy_img{max-width: 125px;}
}
@media only screen and (max-width: 480px) {
  .flex_b{display: block;}
  footer .copyright p.copy_img{padding-right: 0;margin-right: 0;padding-bottom: 10px;margin-bottom: 10px;margin-right: auto;margin-left: auto;display: table;}
  footer .copyright p.copy_img:after{width: 90%;height: 1px;top: auto;left: 0;}
}

/* END Under
********************************/
/*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/

/*# sourceMappingURL=style_sp.css.map */
