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

/*-- font 

font-family: source-han-sans-japanese, sans-serif;
font-weight: 700 or 500 or 400 or 300;

--*/

html {
	scroll-behavior: smooth; }

body {
	margin:0;
	padding:0;
	font-family: 'Yu Gothic','YuGothic',source-han-sans-japanese, sans-serif;
	font-weight:500;
	color:#231815;
	letter-spacing: 2px;
	line-height:2;
	font-size:13px; }

::selection {
	background-color:#f3f1ea;
	color:#221815; }

.hamburger { display: none!important; }

br.pc_none {display: none;}
br.br1600on {display: none;}
br.br1600no {display: block;}

@media screen and (max-width:1600px) {
	br.br1600on {display: block;}
	br.br1600no {display: none;}
}

#sp_only_footer {display: none;}

ul {
	margin:0;
	padding:0; }

li {
	list-style: none; }

a {
	color:#231815;
	text-decoration: none; }

h2 {
	font-family: source-han-sans-japanese, sans-serif;
	font-size:25px;
	font-weight:400; }

h3 {
	font-family: 'Yu Gothic','YuGothic',source-han-sans-japanese, sans-serif;
	font-size:18px;
	font-weight:bold; }

@media screen and (max-width:1400px) {
	h2 {font-size:21px}
}

/* page-animate */

#page-animate::before {
	content: '';
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 9999;
	pointer-events: none;
	right: 100%;
	-webkit-transition: right 0.8s cubic-bezier(0.4, 0, 0.2, 1);
	transition: right 0.8s cubic-bezier(0.4, 0, 0.2, 1); }

#page-animate::after {
	content: '';
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 9999;
	pointer-events: none;
	left: 100%;
	-webkit-transition: left 0.8s cubic-bezier(0.4, 0, 0.2, 1);
	transition: left 0.8s cubic-bezier(0.4, 0, 0.2, 1); }

#page-animate.is-slide-in::before {
	right: 0; }

#page-animate.is-slide::after {
	left: 0; }

/* all_wrapper */

#all_wrapper {
	width:100%;
	display: flex;
	align-items: flex-start;
	justify-content: center; }

#left_nav {
	position: sticky;
	top:0;
	width:20%;
	height:100vh; }

#left_nav_wrapper {
	width:55%;
	max-width:160px;
	margin:5vmax auto 0 auto; }

#left_nav .main_logo {
	display: block;
	margin-bottom:1vmax;
	transition: .5s;
	width:100%; }

#left_nav .main_logo:hover {
	opacity: .8;
	transition: .5s; }

#left_nav .main_logo img {
	display: block;
	width:100%; }

#left_nav ul {
	margin:0 auto;
	width:95%; }

#left_nav ul li {
	margin:0; }

#left_nav ul a {
	font-weight:500;
	font-size:1vmax;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	transition: .2s; }

#left_nav ul a:hover {
	opacity: .6; }

#left_nav ul a img.text {
	margin:0.8vmax 0;
	width:90%; }

#left_nav ul a img.text_last {
	margin:0.8vmax 0 1.5vmax 0; }
/*
#left_nav ul a.plan {
	font-weight:bold;
	font-size:max(0.6vmax,11px);
	position: relative;
	display: inline-block;
	text-decoration: none; }*/

#left_nav ul a.plan {
	width:90%;
	margin:0.6vmax 0;
	height: auto;
	display: block; }


#left_nav ul a.plan img {
	display: block;
	height: auto;
	width:100%; }

/*
#left_nav ul a.plan::after {
	position: absolute;
	bottom: 1px;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background: #231815;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s; }

#left_nav ul a.plan:hover::after {
	transform-origin: left top;
	transform: scale(1, 1); }*/
/*
#left_nav ul a.plan img {
	display: inline-block;
	width:0.8vmax;
	min-width:15px;
	transform: translateY(0.1vmax);
	margin-left:0.1vmax; }

@media screen and (max-width:1360px) {
	#left_nav ul a.plan {text-decoration: underline;letter-spacing: 0;}
	#left_nav ul a.plan:hover::after {transform: scale(0, 0);}
}

#left_nav ul a.contact {
	margin-top:1.3vmax;
	color: #fff;
	background:#231815;
	width:100%;
	padding: 0.3vmax 0.6vmax 0.2vmax 0.6vmax;
	font-weight:bold;
	font-size:0.7vmax;
	box-sizing: border-box;
	display: block;
	position: relative;
	z-index: 1;
	transition: .3s; }*/

#left_nav ul a.contact {
	margin-top:1.9vmax;
	background:#231815;
	width:100%;
	padding: 0.5vmax;
	box-sizing: border-box;
	display: block;
	position: relative;
	z-index: 1;
	transition: .3s; }

#left_nav ul a.contact>img {
	display: block;
	height:0.6vmax; }

#left_nav ul a.contact::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	background: #444;
	transform-origin: 100% 50%;
	transform: scaleX(0);
	transition: transform ease .3s; }

#left_nav ul a.contact:hover {
	color: #fff; }

#left_nav ul a.contact:hover::before {
	transform-origin: 0% 50%;
	transform: scaleX(1); }

main {
	border-left:1px solid rgba(0,0,0,.1);
	border-right:1px solid rgba(0,0,0,.1);
	width:70%;
	overflow-y: scroll;
	-ms-overflow-style: none;
    scrollbar-width: none; }

main::-webkit-scrollbar {
	display:none; }

#sns {
	width:10%;
	height:100vh;
	position: sticky;
	top:0; }

#sns a {
	width:25px;
	display: block;
	margin:20px 0; }

#sns a img {
	display: block;
	width:100%; }

#sns_wrapper {
	height:115px;
	width:25px;
	position: absolute;
	top:0;
	bottom:0;
	left:20%;
	margin:auto; }

#main1 {
	width:100%;
	background-color:#fff; }

#main1_inner {
	width:85%;
	margin:100px auto 140px auto;
	text-align: center; }

#main1 img {
	width:50%; }

#main1 h2 {
	font-weight:bold;
	letter-spacing: 3px;
	font-size:22px;
	margin-bottom:25px; }

#main1 br.ipad {display: none;}

.swiper-container {
	width:100%;
	min-height:600px;
	height:100vh; }

.swiper-container .swiper-slide {
	width:100%;
	height:100%;
	background-size: cover;
	background-position: center; }

.swiper-container .swiper-slide1 {
	background-image: url("../images/main.jpg"); }
.swiper-container .swiper-slide2 {
	background-image: url("../images/main_3.jpg"); }
.swiper-container .swiper-slide3 {
	background-image: url("../images/studio_back2.jpg"); }
.swiper-container .swiper-slide4 {
	background-image: url("../images/soho_back2.jpg"); }
.swiper-container .swiper-slide5 {
	background-image: url("../images/fit_back2.jpg"); }

.swiper-container .swiper-slide img {
	display: block;
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto; }

.swiper-container .swiper-slide1 img {
	width:20%;
	max-width:200px; }

.swiper-container .swiper-slide2 img {
	width:35%;
	animation-delay: 1s;
	max-width:340px; }

.swiper-container .swiper-slide3 img,.swiper-container .swiper-slide4 img,.swiper-container .swiper-slide5 img {
	width:26%;
	max-width:230px; }

.swiper-container .swiper-slide-active img {
	opacity: 0;
	animation: fadeInUp 2s;
	animation-delay: 1s;
	animation-fill-mode: forwards; }

@keyframes fadeInUp {
	from {transform: translateY(5px)}
	to {transform: translateY(0);opacity: 1;}
}

#top_studio {
	width:100%;
	/*height:100vh;*/
	height: 45vmax;
	filter: grayscale(100%);
	transition: 1s;
	background-image: url("../images/studio_back.jpg");
	/*border:1px solid rgba(0,0,0,0);*/
	background-size: cover;
	background-position: center;
	/*background-attachment: fixed;*/ }

#subpage_header {
	width:100%;
	/*height:100vh;*/
	height: 45vmax;
	position: relative;
	filter: grayscale(100%);
	animation: color 5s;
	animation-fill-mode: forwards;
	transition: 1s;
	/*border:1px solid rgba(0,0,0,0);*/
	background-size: cover;
	background-position: center;
	/*background-attachment: fixed;*/ }

#subpage_header img {
	display: block;
	max-width:270px;
	width:50%;
	max-height: 50%;
	position: absolute;
	top:0;
	right:0;
	left:0;
	bottom:0;
	margin:auto; }

#subpage_header .scrolldown1 {display: none;}

.top_studio_page {
	background-image: url("../images/studio_back.jpg"); }

.top_soho_page {
	background-image: url("../images/soho_back.jpg"); }

.top_fit_page {
	background-image: url("../images/fit_back.jpg"); }

#top_soho {
	width:100%;
	/*height:100vh;*/
	height: 45vmax;
	filter: grayscale(100%);
	transition: 1s;
	background-image: url("../images/soho_back.jpg");
	/*border:1px solid rgba(0,0,0,0);*/
	background-size: cover;
	background-position: center;
	/*background-attachment: fixed;*/ }

#top_fit {
	width:100%;
	/*height:100vh;*/
	height: 45vmax;
	filter: grayscale(100%);
	transition: 1s;
	background-image: url("../images/fit_back.jpg");
	/*border:1px solid rgba(0,0,0,0);*/
	background-size: cover;
	background-position: center;
	/*background-attachment: fixed;*/ }

@keyframes color {
	to {filter: grayscale(0%)}
}

#top_studio a,#top_soho a,#top_fit a {
	position: relative;
	display: block;
	width:100%;
	height:100%; }

#top_studio a svg,#top_soho a svg,#top_fit a svg {
	display: block;
	max-width:240px;
	width:50%;
	position: absolute;
	top:0;
	right:0;
	left:0;
	bottom:0;
	margin:auto; }

#top_studio:hover,#top_soho:hover,#top_fit:hover {
	filter: grayscale(0%);
	transition: 1s; }

#back {
	display: block;
	padding:50px 0;
	text-align: center;
	color:#666; }

#back img {
	transition: .5s;
	transform: rotate(270deg);
	width:30px;
	display: block;
	margin:0 auto; }

#back:hover img {
	transform: rotate(270deg) translateX(5px);
	transition: .5s; }

.contents,.contents2 {
	position: relative;
	width:85%;
	margin:80px auto; }

.contents h3,.contents2 h3 {margin:0 0 25px 0;font-size:15px;letter-spacing: 2.5px;}
.contents p,.contents2 p {margin:0;}

.contents .layout {
	position: absolute;
	right:0;bottom:0;
	width:120px; }

.contents .layout>img {
	display: block;
	width:100%; }

@media screen and (max-width:1250px) {
	.contents .layout {position: static;display: flex;justify-content: flex-end;margin:30px 0 -40px 0;width:100%;}
	.contents .layout>img {width:120px;}
}

.visual {
	width:85%;
	margin:250px auto 0 auto;
	padding-top:75%;
	position: relative; }

.visual img.background {
	width:100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top:0;
	left:0; }

.visual img.logo {
	display: block;
	width:15%;
	position: absolute;
	top:40px;
	left:30px; }
/*
.type {
	width:85%;
	margin:30px auto 0 auto;
	display: flex;
	justify-content: flex-end; }

.type p {
	margin:0;
	font-size:16px;
	font-family: source-han-sans-japanese, sans-serif;
	font-weight:500;
	padding: 0 13px;
	letter-spacing: 0.08em;
	display: inline-block;
	text-align: center;
	border:1px solid #231815; }

.type>img {
	display: block;
	width:90%;
	max-width:250px; }*/

.map {
	width:85%;
	position: relative;
	margin: 80px auto 100px auto; }

img.map_background {
	display: block;
	width:100%;
	height: auto }

svg.map_link {
	position: absolute;
	top:0;left:0;
	display: block;
	width:100%;
	height: auto; }

.st0-map,.st2-map,.st1-map {
	transition: .2s }

.map_link_hover-g:hover .st0-map {
	fill:#231815}

.map_link_hover-g:hover .st1-map {
	stroke:#fff }

.map_link_hover-g:hover .st2-map {
	fill:#fff }

.map_vr {
	display: flex;
	justify-content: flex-start;
	align-items: center; }

.map_vr img {
	display: block;
	width:45px;
	margin-right:10px;
	height: auto; }

.map_vr p {
	color:#555555;
	font-weight: bold; }

@media screen and (max-width:540px) {
	.map_vr {margin-top:15px;}
	.map_vr img {width:25px;margin-right:5px}
	.map_vr p {font-size: 10px;line-height: 1;font-weight: normal;letter-spacing: 0;}
}

.example {
	padding-top:15px;
	margin-top:10px;
	/*border-top:1px solid #231815;*/
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center }

.example span {
	display: inline-block;
	/*width:105px;*/
	width:90px;
	text-align: center;
	background-color:#231815;
	color:#fff;
	padding:0;
	font-family: source-han-sans-japanese, sans-serif;
	font-weight:400;
	/*margin-bottom:5px;*/
	margin-right:10px;
	font-size:12px; }

.example span>img {
	display: block;
	width:80%;
	padding:6px 0 4px 0;
	margin:0 auto; }

.example c {
	display: inline-block;
	font-size:12px;
	padding-top:2px;
	font-weight: bold; }

@media screen and (max-width:1300px) {
	.example c {display: block;margin-top:10px;}
}

.contents2 {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width:85%;
	margin:100px auto}

.contents2_box {
	width:48%; }

.family-image {
	display: block;
	width:25%;
	margin-bottom:20px;
	height: auto; }

.contents2_image {
	display: block;
	width:48%; }

#top_fit2 {
	width:85%;
	margin:0 auto; }

#top_fit2 img {
	display: block;
	width:100%; }

#plan {
	width:100%;
	height:100vh;
	background-color:#f3f1ea;
	position: relative; }

#plan img,#plan svg {
	display: block;
	max-width:300px;
	width:30%;
	position: absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	margin:auto; }

#plan_title {
	position: relative;
	height:800px;
	width:85%;
	margin:100px auto; }

#plan_title img.title {
	display: block;
	width:100%;
	max-width:250px; }

#plan_title p {
	font-weight:500;
	margin-top:30px; }

#plan_title img.image {
	position: absolute;
	bottom:0;
	left:0;
	width:80%; }

#plan_title_wrapper {
	position: absolute;
	top:0;
	left:0;
	z-index: 2;
	width:350px;
	height:100%;
	background-color:#fff; }

.slide-paused {
	height:100%;
	width:100%; }

.content {
	width:12vmax;
	min-width:250px;
	height: 100%; }

.content img {
	display: block;
	width:100%;
	height:90%;
	object-fit: contain; }

.wrap {
	overflow: hidden;
	display: flex;
	align-items: center;
	height: 99%; }

.slideshow {
	display: flex;
	-webkit-animation: loop-slide 30s infinite linear 1s both;
	animation: loop-slide 30s infinite linear 1s both; }

.slideshow a {
	display: block; }

@-webkit-keyframes loop-slide {
	from { transform: translateX(0); }
	to { transform: translateX(-100%); }
}
@keyframes loop-slide {
	from { transform: translateX(0); }
	to { transform: translateX(-100%); }
}

.slide-paused:hover .slideshow {
	-webkit-animation-play-state: paused;
	animation-play-state: paused; }

.content-hover {
	transition: all 0.2s;
	margin-right: 20px; }

.content-hover:hover {
	transform: translateY(-5px);
	cursor: pointer; }

#plan_view {
	border-top:1px solid rgba(0,0,0,.1); }

#plan_view a.js-modal-open {
	transition: 1s;
	display: block;
	width:100%;
	border-bottom:1px solid rgba(0,0,0,.1);
	padding:80px 0; }

#plan_view .inner {
	width:85%;
	margin:0 auto; }

#plan_view a.js-modal-open img {
	display: block;
	margin-bottom:20px;
	height:110px; }

#plan_view a.js-modal-open p {
	margin: 0; }

#plan_view a.js-modal-open:hover {
	transition: 1s;
	background-color:#f0f0f0; }

.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
	left:0;
	z-index: 10;
    width: 100%; }

.modal__bg{
    background: rgba(0,0,0,0.8);
    height: 100vh;
    position: absolute;
	left:0;
	top:0;
    width: 100%; }

.modal__content{
	overflow-y: scroll;
    background: #f9f9f9;
    right:0;
    position: absolute;
	z-index: 11;
    top: 0;
    width: 60%;
	min-width:700px;
	height:100%; }

.modal__content::-webkit-scrollbar {
	width: 5px;
	height: 10px; }
 
.modal__content::-webkit-scrollbar-thumb {
	background: #000;
	border-radius: 10px; }

a.js-modal-close {
	transition: .5s;
	display: block;
	width:30px;
	max-width:40px;
	position: absolute;
	top:57px;
	right:30px; }

@media screen and (max-width:1600px) {
	a.js-modal-close {
		right:20px;
	}
}

a.js-modal-close img {
	display: block;
	width:100%; }

a.js-modal-close:hover {
	opacity: .5; }

.tab-wrap {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	overflow: hidden;
	width:85%;
	margin:50px auto 0 auto; }

.tab-label {
	cursor: pointer;
	flex: 1;
	order: -1;
	padding: 10px;
	position: relative;
	text-align: center;
	transition: cubic-bezier(0.4, 0, 0.2, 1) .2s;
	background-color:#eee;
	-webkit-tap-highlight-color: transparent;
	border-right:1px solid rgba(0,0,0,.1); }

.tab-label-last {
	border:none; }

.tab-label:hover {
	background-color:#231815;
	color:#fff; }

.tab-switch:checked + .tab-label {
	background-color:#231815;
	color:#fff; }

.tab-content {
	height:0;	
	opacity:0;
	pointer-events:none;
	transform: translateX(-30%);
	transition: transform .3s 80ms, opacity .3s 80ms;
	width: 100%; }

.tab-content img {
	display: block;
	width:85%;
	height: 60vh;
	object-fit: contain;
	max-width:300px;
	margin:10vh auto; }

.tab-switch:checked ~ .tab-content {
	transform: translateX(30%); }

.tab-switch:checked + .tab-label + .tab-content {
	height: auto;
	opacity: 1;
	order: 1;
	pointer-events:auto;
	transform: translateX(0); }

.tab-switch {
	display: none; }

.gaiyo {
	position: absolute; 
	bottom:5%;
	right:10%;
	text-align: right;
	line-height:1.6;
	font-size:12px;
	margin:0; }

.fadein_animated{
	opacity: 0; }

.fadeIn {
	animation: fadeIn 3s;
	animation-fill-mode: forwards; }

@keyframes fadeIn {
	to {opacity: 1;}
}

.svg__anime {
	display: none; }

.on .svg__anime {
	display: block; }


/* scrolldown */

.scrolldown1{
	animation-delay: 3s;
	position:absolute;
	z-index: 5;
	left:50%;
	bottom:20px;
	height:50px; }

.scrolldown1 span{
	position: absolute;
	left:-15px;
	top: -25px;
	color: #fff;
	font-size: 0.7rem;
	letter-spacing: 0.05em; }

.scrolldown1::after{
	content: "";
	position: absolute;
	top: 0;
	width: 1px;
	height: 30px;
	background: #fff;
	animation: pathmove 1.4s ease-in-out infinite;
	opacity:0; }

.scrolldown2{
	animation-delay: 3s;
	position:absolute;
	z-index: 5;
	left:50%;
	bottom:20px;
	height:50px; }

.scrolldown2 span{
	position: absolute;
	left:-15px;
	top: -25px;
	color: #231815;
	font-size: 0.7rem;
	letter-spacing: 0.05em; }

.scrolldown2::after{
	content: "";
	position: absolute;
	top: 0;
	width: 1px;
	height: 30px;
	background: #231815;
	animation: pathmove 1.4s ease-in-out infinite;
	opacity:0; }

@keyframes pathmove{
	0%{	height:0;top:0;opacity: 0; }
	30%{ height:30px;opacity: 1; }
	100%{ height:0;top:50px;opacity: 0; }
}

#copyright {
	text-align: center;
	font-size:10px;
	color:rgba(0,0,0,.5);
	border-top:1px solid rgba(0,0,0,.1);
	letter-spacing: 1px;
	padding:10px 0; }

.autoplay-slider {
	display: flex;
	min-width: 100%;
	width: min-content;
	overflow: hidden;
	animation: 200s linear infinite sliderAnimation; }

.slide {width: 18vw;min-width:250px;}
.slide img {display: block;width:100%;}

@keyframes sliderAnimation {
	100% {transform: translateX(-50%);}
}

/* standard */

.standard_wrap {
	width:100%;
	margin:0 auto;
	border-bottom:1px solid rgba(0,0,0,.1);
	padding:50px 0; }

.standard_wrap img {
	display: block;
	width:95%;
	max-width:1300px;
	margin:30px auto; }

/* 流れ続けるスライド　コントロール可 */

/*.wrapper .swiper-container-loop .swiper-wrapper {
    transition-timing-function: linear !important; }*/

.wrapper .swiper-container-loop .swiper-slide {
	width:255px;
	padding:0 10px;
	height: 100%; }

.wrapper .swiper-container-loop .swiper-slide a {
	display: block;
	transition: .2s; }

.wrapper .swiper-container-loop .swiper-slide a:hover {
	opacity: .7; }

.wrapper .swiper-container-loop .swiper-slide img {
	display: block;
	width:100%;
	height:auto;
	object-fit: contain!important; }

#plan_title .wrapper {
	position: relative;
	width : calc(100% - 350px);
	float: right; }

.wrapper .swiper-container-loop {
	overflow: hidden;
	display: flex;
	position: relative;
	width:100%;
	align-items: center;
	height:800px; }

/* どこのページにいるか分かるように */

#left_nav .planselect {
	position: relative;
	padding-left:0.5vmax; }

#left_nav .planselect:before {
	position: absolute;
	content:'';
	left:0;top:0;bottom:0;
	width:0.1vmax;
	height:100%;
	background-color:#000; }

#left_nav .planselect img {
	opacity: .4; }

/* スマホも同様 */

.sp-header,.sp-pan {display: none;}


/* plan menu */

#plan_menu {
	width:100%;
	border-top:1px solid rgba(0,0,0,.1);
	padding:80px 0;
	margin:0 auto; }

.plan_menu_ul {
	width:85%;
	margin: 0 auto;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start; }

.plan_menu_ul li {
	width:auto;
	height: 35px;
	margin-right:20px; }

.plan_menu_ul li a {
	display: block;
	transition: .2s;
	width:auto;
	height: 100%; }

.plan_menu_ul li a:hover {
	opacity: .7 }

.plan_menu_ul li a img {
	display: block;
	width:auto;
	height: 100%; }

@media screen and (max-width:540px) {
	.plan_menu_ul {justify-content: space-between;}
	#plan_menu {padding:40px 0;}
	.plan_menu_ul li {height: 25px;margin-right:0;}
}

/* footer_contact_btn */

.footer_contact_btn {
	display: block;
	padding:80px 0;
	background:#3b3b41;
	color:#ffffff;
	text-align: center; }

.footer_contact_btn_logo {
	display: block;
	width:130px;
	height: auto;
	margin:0 auto; }

.footer_contact_btn_p {
	font-weight: bold; }

.footer_contact_btn_strong {
	display: block;
	margin: 20px auto 0 auto;
	font-size: 20px;
	line-height: 2;
	border:2px solid #ffffff;
	background:#3b3b41;
	color:#ffffff;
	transition: .5s;
	width:340px; }

.footer_contact_btn:hover .footer_contact_btn_strong {
	background:#ffffff;
	color:#3b3b41; }

@media screen and (max-width:820px) {
	.footer_contact_btn_strong {background:#ffffff;color:#3b3b41; }
}

@media screen and (max-width:540px) {
	.footer_contact_btn {padding:50px 0;}
	.footer_contact_btn_logo {width:23%}
	.footer_contact_btn_p {
		font-weight: normal;
		font-size: 11px;
		letter-spacing: 0; }
	.footer_contact_btn_strong {
		display: block;
		margin: 20px auto 0 auto;
		font-size: 16px;
		width:245px;
		max-width:70%; }
}

@media screen and (max-width:1350px) {
	#main1 br.ipad {display: block;}
}

@media screen and (max-width:1200px) {
	#sns {display: none; }
	main {width:80%;}
}

@media screen and (max-width:1024px) {
	h2 { font-size:20px; }
	#left_nav {display: none;}
	main {width:100%;}
	.hamburger { display: block!important; }
	#main1 h2 {	margin-bottom:20px; }	
	#top_studio a img,#top_soho a img,#top_fit a img {width:250px;}
	.visual img.logo {width:13%;top:25px;left:15px;}
	.contents2 {margin:0 auto;flex-wrap: wrap;}
	.contents2_box {width:100%;}
	.contents2_image {margin:50px auto;width:85%;}
	#plan_view .inner {position: relative;}
	#plan_view .inner:after {content:'';width:20px;height:20px;background-image: url("../images/right.svg");background-size: contain;
	background-repeat: no-repeat;background-position: center;position: absolute;
	right:0;top:0;bottom:0;margin:auto;}
	#top_soho,#top_fit,#top_studio {height: 60vmax; }
	.swiper-container {margin-top:75px;height:60vmax;}
	#subpage_header {margin-top:96px;height:60vmax;}
	/*現在どこのページにいるか分かりやすく*/
	.sp-header {
		display: block;
		background-color:#fff;
		position: fixed;
		top:0;
		left:0;
		padding-left:30px;
		width:100%;
		z-index: 3; }

	.sp-header ul {
		width:100%;
		padding:28px 0;
		display: flex;
		justify-content: flex-start;
		align-items: center; }

	.sp-header ul li {
		height:20px; }
	
	.sp-header ul li a {
		display: block;
		width:auto;
		height:100%; }

	.sp-header ul li img {
		display: block;
		height:100%;
		width:auto; }
	
	.sp-pan {
		display: block;
		position: fixed;
		top:70px;
		left:0;
		width:100%;
		background-color:#e6e6e6;
		z-index: 3;
		padding:4px 30px;
		font-size:10px;
		letter-spacing: 0;
		box-sizing: border-box; }
	
	.sp-pan a {font-weight: bold;}
}

@media screen and (max-width:820px) {
	.swiper-container {min-height:0;}
	h3 {font-size:16px;}
	#main1_inner {margin:80px auto 100px auto;}
	#main1 br.ipad {display: block;}
	#main1 img {width:85%; }
	#main1 h2 {font-size:20px;margin-bottom:30px;}
	#top_studio a svg,#top_soho a svg,#top_fit a svg {width:30%;max-width:190px;}
	#top_studio,#top_fit,#top_soho {filter: grayscale(0%);}
	main {width:100%;}
	#sp_only_footer {display: block;}
	#back {	border-top:1px solid rgba(0,0,0,.1);padding:30px 0;	}
	#back img {	width:20px; }
	#top_studio,#top_soho,#top_fit { max-height:60vmax; }
	#plan_title img.title {width:65%;}
	#plan_title p {width:80%;text-align: justify;}
	#plan_view a.js-modal-open {padding:50px 0;}
	#plan_view a.js-modal-open img {height:120px;}
	.contents {margin:60px auto;}
	.example span {width:90px;font-size:11px;}
	.example c {font-size:13px;}
	.contents .layout {margin:40px 0 -20px 0;}
	.contents .layout>img {width:100px;}
	a.js-modal-close {width:20px;top:64px;right:15px;}
	#subpage_header img {max-width:190px;}
	.standard_wrap {border-bottom:none;padding-bottom:10px;}
	.visual { margin:150px auto 0 auto }
	.wrapper .swiper-container-loop {height:450px;}
	#plan_title {height:450px; }
	.wrapper .swiper-container-loop .swiper-slide {width:143px;}
	#plan_title img.image {	display: none; }
}

@media screen and (max-width:540px) {
	br.sp_none {display: none;}
	br.pc_none {display: block;}
	body { line-height:1.8;font-size:12px;letter-spacing: 1.8px;font-weight:400;}
	h2 {font-size:18px;}
	h3 {font-size:15px;}
	.swiper-slide1 img {width:40%;}
	.swiper-slide2 img {width:70%;}
	.swiper-slide3 img,.swiper-slide4 img,.swiper-slide5 img { width:50%; }
	#main1_inner { margin:50px auto 70px auto;text-align: left; }
	#main1 img { width:100%; }
	#main1 h2 {font-size:16px;letter-spacing: 2px;}
	#main1 br.ipad {display: none;}
	#top_studio,#top_soho,#top_fit { height: 38vmax; }
	#top_studio a svg,#top_soho a svg,#top_fit a svg,#top_studio_page div img,#top_soho_page div img,#top_fit_page div img {width:50%;max-width:130px;}
	.contents h2,.contents2 h2 {margin-bottom:20px;}
	.contents h3,.contents2 h3 {font-size:14px;}
	.contents p,.contents2 p {text-align: justify;}
	/*.map {width:70%;margin: 50px auto 60px auto;}*/
	/*.type>img {width:50%;max-width:180px}*/
	.example {display: block;}
	.example c { font-size:11px;display: block; }
	.example span {	padding:0;font-size:10px;display: block;margin-bottom:5px;}
	#plan img,#plan svg { width:60%; }	
	#plan:before { bottom:30px;font-size:10px; }
	#plan:after { height:30px;bottom:60px; }	
	#plan_title { height:auto;overflow: hidden;margin:50px auto 40px auto; }
	#plan_title .wrapper {display: none;}
	#plan_title p {width:100%;text-align: justify;font-weight:400;font-size: 11px;}
	#plan_title img.title { width:60%;margin-bottom:35px;}
	#plan_title_wrapper { position: static;width:95%; }
	.slide-paused { display: none; }
	#plan_view a.js-modal-open { padding:50px 0 45px 0;}
	#plan_view .inner p { width:85%;text-align: justify;font-size: 11px;letter-spacing: 0 }
	#plan_view a.js-modal-open img { width:auto;max-width:100%;height: 80px;}
	.modal__content{ width: 100%;min-width:100%; }	
/*	a.js-modal-close {width:30px;top:auto;left:0;right:0;bottom:3%;margin:auto;}*/
	a.js-modal-close {position: static;width:30px;margin:60px auto;}
	/*.gaiyo {bottom:18%;text-align: center;left:0;right:0;margin:auto;}*/
	.gaiyo {position: static;text-align: center;margin: 0 auto;}
	/*.tab-content img {width:90%;height: 80%;max-width:200px;margin:13vmax auto 0 auto;}*/
	.tab-content img {width:90%;height: auto;max-width:200px;height: 300px;object-fit: contain; margin:50px auto 30px auto;}
	/*.type {margin:20px auto 0 auto;}*/
	/*.type p {font-size:12px;padding: 0 8px;}*/
	.contents .layout>img {width:80px;}
	.slide {min-width:150px;}
	.standard_wrap {padding:80px 0 5px 0;}
	.standard_wrap img { margin:15px auto; }
	.visual { margin:100px auto 0 auto }
	.scrolldown1{display: none;}
	.sp-header {padding-left:20px;}
	.sp-header ul {padding:17px 0;}
	.swiper-container {height:50vmax;}
	.swiper-container .swiper-slide1 img {max-width:60%;width:100px;}
	.swiper-container .swiper-slide2 img {max-width:60%;width:170px;}
	.swiper-container .swiper-slide3 img,.swiper-container .swiper-slide4 img,.swiper-container .swiper-slide5 img {max-width:60%;width:110px;}
	.swiper-container {margin-top:55px;}
	#subpage_header {margin-top:76px;}
	.sp-pan {top:54px;padding:2px 20px;}
}


