@charset "UTF-8";
@media screen and (min-width: 1500px) {
}/* 1500px */

@media screen and (max-width: 1000px) {
	.top_about_img.no2 {top: 34%;}
	.top_about_img.no3 {bottom: 0%;}
	h3.ray {bottom: 0; text-align: center;}
	h3.ray span {font-size: 9rem;}
	.top_gallery .gallery-item {width: calc(100vw / 3);}
	.top_plan_area {margin: 0 0 0 25px;}
	.plan_right h3 {font-size: 3.5rem;}
	.plan_left {width: 42%;}
	.plan_right {width: 52%;}
}/* 1000px */

@media screen and (max-width: 850px) {
	.pd_top {padding-top: 100px;}
	.pd_tb {padding-top: 100px; padding-bottom: 100px;}
	.pd_bottom {padding-bottom: 100px;}
	.pc_br{display: none;}
	.drawer {width: 50%;}
	.top_gallery .gallery-item {width: calc(100vw / 2);}
	.header_inner {padding: 20px 15px;}
	.fv_top_copy {left: 15px; bottom: 15px;}
	.after_load .fv_top_copy span {font-size: 2rem; line-height: 30px;}
	.top_about_img.no2 {top: 33%; right: 12%; width: 30%;}
	.top_about_img.no3 {bottom: 12%; width: 33%;}
	.top_plan_txt_box {width: 100%;}
	h2.sec_title {margin-bottom: 30px;}
	.btn_area {margin-top: 30px;}
	.plan_slide_box {width: 100%; margin-top: 60px;}
	.flow-inner {grid-template-columns: inherit;}
	.flow-content{margin-left: 0; margin-top: -150px; display: grid; justify-content: center;}
	.flow-inner {margin: 0 25px;}
	.flow-image {width: 100%; margin-left: 0;}
	h3.ray span {font-size: 7rem; }
	.footer_contact {display: block;}
	.contact_img {height: 400px; width: 100%; overflow: hidden;}
	.contact_img img {width: 100%; height: 100%; object-fit: cover; object-position: center center;}
	.contact_txt {width: 100%;}
	.footer_box {display: block;}
	.footer_menu_box {margin-top: 60px;}
	.footer_icon {justify-content: flex-end;}
	.footer_box {margin-bottom: 30px;}
	.low_header h1 strong {font-size: 5.5rem; margin-bottom: 15px;}
	.low_header h1 small {font-size: 1.8rem;}
	.about_miray {height: 180vh;}
	.about_miray_img.no2 {top: 13%; left: 35%; width: 25%;}
	.about_miray_txt.no2 {left: 50%; transform: translateX(-50%);}
	.about_miray_txt.no2 p {text-align: center;}
	.about_miray_txt.no1 {left: 12%;}
	.about_miray_txt.no1 p {font-size: 2.2rem;}
	.about_miray_img.no4 {bottom: 5%;}
	.profile_txt h3 {font-size: 1.6rem;}
	.profile_txt {width: 100%;}
	.profile_img {width: 100%; margin-bottom: 30px;}
	.profile_box {margin: 0; padding: 0 25px; flex-direction: column-reverse;}
	.plan_left {width: 100%; margin-bottom: 20px;}
	.plan_right {width: 100%;}
}/* 850px */

@media screen and (max-width: 600px) {
	body {font-size: 1.4rem;}
	.header_inner {padding: 15px 15px;}
	.btn_area {margin-top: 30px;}
	.fv_top_movie .pc_block{display: none;}
	.fv_top_movie .sp_block{display: block;}
	.drawer {width: 100%;}
	.after_load .fv_top_copy span {font-size: 1.8rem;}
	.top_about_img.no1 {display: none;}
	.top_about_txt_box .subheading p {font-size: 1.6rem;}
	h2.sec_title strong {font-size: 4.5rem;}
	h2.sec_title small {width: 30px; margin: 0 0 10px 15px;}
	h2.sec_title {margin-bottom: 30px;}
	.top_about_img.no2 {top: 43%; right: 0; width: 35%;}
	.top_about_img.no3 {bottom: 16%; width: 45%;}
	h3.ray {bottom: 0; right: inherit;}
	ul.footer_menu li {width: 100%;}
	.flow-image {min-height: 500px;}
	.top_plan_txt_box {padding-right: 25px;}
	.plan-controls {gap: 10px;}
	.plan-fraction {font-size: 1.6rem;}
	.plan-progress { width: 120px !important;}
	.plan-nav {gap: 15px;}
	h3.ray {right: 50%; bottom: 5%; transform: translateX(50%); text-align: center; white-space: nowrap;}
	h3.ray span {font-size: 6.5rem;}
	.contact_img {height: 300px;}
	.low_header {height: 28vh;}
	.low_header h1 strong {font-size: 4.5rem; margin-bottom: 10px;}
	.about_miray_txt.no1 {right: inherit; left: 10%; top: 20%;}
	.about_miray_img.no2 {left: 40%; width: 35%;}
	.about_miray_txt.no2 p {font-size: 1.8rem;}
	.about_miray_img.no4 {bottom: 6%;}
	.about_miray_logo {width: 40%;}
	.location_filter_box {padding: 20px;}
	.gallery_grid {grid-template-columns: repeat(2, 1fr); gap: 10px; margin-bottom: 10px;}
	.gallery_movie_grid {gap: 10px;}
	.modal_content {width: 80%;}
	.modal_close {top: 15px; right: 15px;}
	.option_box td {width: 100%; display: block; border-bottom: none; padding: 20px 15px 5px 15px}
	.option_box th {width: 100%; display: block; padding: 0 15px 20px 15px}
	.option_box tr:first-child td {padding: 0 15px 5px 15px;}
	.option_box tr:first-child th {padding: 0 15px 20px 15px;}
	.option_box h3 {margin-bottom: 30px;}
	.plan_right h3 {font-size: 3rem;}
	.policy_txt h3 {font-size: 1.6rem; padding: 0 15px 15px 15px; margin-bottom: 15px;}
	.policy_txt {margin-bottom: 30px;}
	.faq_q {font-size: 1.6rem;}
	.faq_label {font-size: 2.4rem; margin-right: 5px;}
	.faq_inner {padding: 0 15px 15px 45px;}
	.faq_q {padding: 15px;}
	.active .faq_q {padding: 15px 15px 10px 15px;}
	.top_gallery_txt_box p .br_sp {display: block;}
	.policy_txt p {font-size: 1.4rem; padding: 0 15px;}
	.gallery .modal_content {width: 70%;}
	.gallery .modal_close {top: 15px; right: 15px;}
	ul.g-tag li small {font-size: 1.4rem;}
}
/* 600px */

@media screen and (max-width: 450px) {
	h3.ray span {font-size: 5.5rem;}
	.pd_top {padding-top: 80px;}
	.pd_tb {padding-top: 80px; padding-bottom: 80px;}
	.header_logo a {width: 110px;}
	.hamburger {width: 30px;}
	.top_gallery .gallery-item {width: calc(100vw / 1.5);}
	h2.sec_title strong {font-size: 4rem;}
	.top_about {height: 130vh;}
	.top_about_img.no4 {height: 129vh;}
	h3.ray {bottom: 2%;}
	h3.ray span {font-size: 5.5rem;}
	.top_about_img.no2 {width: 46%; top: 52%;}
	.top_about_img.no3 {width: 48%; bottom: 11%;}
	.plan-nav {gap: 10px;}
	.flow-list h3 {font-size: 2.6rem;}
	.top_gallery .gallery_slide {margin-top: 30px;}
	.low_header {height: 25vh;}
	.breadcrumb {padding: 15px 25px;}
	.breadcrumb li {font-size: 1.4rem;}
	.low_header h1 strong {font-size: 3.3rem;}
	.low_header h1 small {font-size: 1.6rem;}
	.about_miray_img.no1 {width: 60%;}
	.about_miray_img.no4 {width: 36%;}
	.about_miray_img.no5 {width: 45%;}
	.about_miray_txt.no1 p {font-size: 1.6rem;}
	.about_miray_txt.no2 p {font-size: 1.4rem;}
	.about_miray_logo {width: 53%;}
	.profile_img small {font-size: 1.8rem;}
	.tab_btn {font-size: 1.8rem;}
	.location_filter {gap: 5px;}
	.loc_btn {font-size: 1.4rem;}
	.gallery_tabs {margin-bottom: 20px;}
	.location_filter_box {margin-bottom: 20px;}
	.gallery .modal_content {width: 90%;}
	.plan_right .pl_txt {line-height: 1.6;}
}/* 450px */

@media screen and (max-width: 400px) {
	h3.ray span {font-size: 4.5rem;}
	.top_about_img.no2 {width: 43%; top: 53%;}
	.top_about_img.no3 {width: 48%; bottom: 8%;}
	.flow-image {min-height: 400px;}
	.flow-list h3 {font-size: 2.2rem;}
	.flow-list .flow-number {font-size: 5rem;}
	.footer_logo a {width: 150px;}
	.flow-list li {margin-bottom: 30px;}
	.after_load .fv_top_copy span {font-size: 1.7rem;}
	.he_btn a.he_insta::before {width: 25px; height: 25px;}
	.he_btn a.he_line::before {width: 25px; height: 25px;}
	.contact_txt .con_btn a.con_insta::before {width: 25px; height: 25px;}
	.contact_txt .con_btn a.con_line::before {width: 25px; height: 25px;}
	.plan_right h3 {font-size: 2.6rem;}
	.plan_right .pl_price strong {font-size: 2.2rem;}
	.plan_right .pl_price span {font-size: 1.8rem;}
}/* 400px */

@media screen and (max-width: 350px) {
	.top_about_img.no2 {top: 53%;}
	.contact_txt .con_btn a {font-size: 1.3rem;}
}/* 350px */