@charset "UTF-8";
:root{
	--body : #333;
	--link : #333;
	--title : #333;
	--main : #333;
	--base : #333;
	--mainBold : #333;
	--sub : #333;
	--white : #333;
	--bg : #333;
}

@media ( prefers-reduced-motion : no-preference ){
	html{
		/* scroll-behavior : smooth; */
	}
}

@media screen and (max-width: 768px){
	html{
		scroll-padding-top:calc( 120 * 100vw / 768 );
	}
}

@media screen and (min-width: 769px) and (max-width:1439px){
	body{
		-webkit-text-size-adjust : 100%;
		   -moz-text-size-adjust : 100%;
		    -ms-text-size-adjust : 100%;
		        text-size-adjust : 100%;
	}
}
@media screen and (min-width: 769px) and (max-width:1439px){
	body[data-view="pc"] #contents .scroll{
		overflow-x : auto;
		width : 100%;
	}
	body[data-view="pc"] #contents .scroll > #footer , body[data-view="pc"] #contents .scroll > #contentHeader , body[data-view="pc"] #contents .scroll > section{
		min-width : 824px;
	}
}

@media print, screen and (min-width: 769px){
	#sidebar{
		padding-top : 5px;
		padding-left : 5px;
		padding-right : 5px;
		position : fixed;
		top : 0;
		left : 0;
		background-color : #fff;
		z-index : 1;
	}
}
@media screen and (min-width: 769px) and (max-width:1439px){
	#sidebar{
		width : 200px;
		min-height : 100vh;
	}
}
@media print, screen and (min-width: 1440px){
	#sidebar{
		width : 300px;
		min-height : 100vh;
	}
}
@media screen and (max-width: 768px){
	#contents{
		padding-top : calc( 120 * 100vw / 768 );
	}
	#contents .wrap{
		padding-left : calc( 16 * 100% / 768 );
		padding-right : calc( 16 * 100% / 768 );
	}
}
@media screen and (min-width: 769px) and (max-width:1439px){
	#contents{
		padding-left : 200px;
		width : 100%;
	}
}
@media print, screen and (min-width: 1440px){
	#contents{
		padding-left : 300px;
	}
}
/*--------------------------------------------
#header
---------------------------------------------*/
#header .wrap{
	background-color : #dcdddd;
	background-repeat : no-repeat;
	background-image : url("../images/header/bg.svg");
}
#header h1 a{
	display : block;
}
#header p a{
	display : block;
}
@media screen and (max-width: 768px){
	#header{
		position : fixed;
		top : 0;
		left : 0;
		width : 100%;
		z-index : 10;
	}
	#header .wrap{
		height : calc( 120 * 100vw / 768 );
		padding-top : calc( 15 * 100vw / 768 );
		background-position : calc( -5 * 100% / 768 ) calc( 8 * 100vw / 640 );
		background-size : auto calc( 197 * 100vw / 768 );
		padding-left : calc( 14 * 100% / 768 );
		padding-right : calc( 14 * 100% / 768 );
	}
	#header h1{
		width : calc( 189 * 100% / 740 );
		margin-top : calc( 10 * 100vw / 768 );
	}
	#header p{
		width : calc( 591 * 100% / 740 );
		margin-top : calc( 10 * 100vw / 768 );
	}
}
@media print, screen and (min-width: 769px){
	#header p:nth-of-type(2){
		width : 100%;
		color : #fff;
		font-weight : 900;
		display : -webkit-box;
		display : -ms-flexbox;
		display : flex;
		-webkit-box-align : center;
		-ms-flex-align : center;
		align-items : center;
		background-color : #00C5CD;
	}
	#header p:nth-of-type(3){
		color : #000;
		text-align : center;
	}
	#header p:nth-of-type(3) span{
		display : block;
	}
	#header h1 a img{
		height: 30px;
		width: auto;
	}

}
@media screen and (min-width: 769px) and (max-width:1439px){
	#header .wrap{
		padding-top : 6px;
		height : 124px;
		background-position : 4px 17px;
		background-size : auto 129px;
	}
	#header h1{
		margin-left : auto;
	}
	#header h1 a{
		padding-right : 9px;
		text-align : right;
	}
	#header h1 a img{
		width : 84px;
	}
	#header p:nth-of-type(1){
		margin-top : 14px;
		margin-left : 5px;
	}
	#header p:nth-of-type(1) img{
		width : 177px;
	}
	#header p:nth-of-type(2){
		height : 12px;
		padding-left : 6px;
		margin-top : 9px;
	}
	#header p:nth-of-type(2) span{
		font-size : 13.66px;
		white-space : nowrap;
		letter-spacing : .22em;
		-webkit-transform-origin : left center;
		        transform-origin : left center;
		-webkit-transform : scale(.5);
		        transform : scale(.5);
	}
	#header p:nth-of-type(3){
		margin-top : 5px;
		margin-left : 14px;
	}
	#header p:nth-of-type(3) span{
		font-size : 17px;
		white-space : nowrap;
		-webkit-transform-origin : left top;
		        transform-origin : left top;
		-webkit-transform : scale(.5);
		        transform : scale(.5);
		width : 100%;
		display : block;
		position : relative;
	}
}
@media print, screen and (min-width: 1440px){
	#header .wrap{
		padding-top : 10px;
		height : 189px;
		background-position : 5px 25px;
		background-size : auto 197px;
	}
	#header h1{
		margin-left : auto;
	}
	#header h1 a{
		padding-right : 9px;
		text-align : right;
	}
	#header p:nth-of-type(1){
		margin-top : 18px;
		margin-left : 7px;
	}
	#header p:nth-of-type(2){
		height : 17px;
		padding-left : 9px;
		margin-top : 15px;
	}
	#header p:nth-of-type(2) span{
		letter-spacing : .1em;
		font-size : 14px;
	}
	#header p:nth-of-type(3){
		margin-top : 9px;
	}
	#header p:nth-of-type(3) span{
		font-size : 13px;
	}
}
/*--------------------------------------------
MENU BUTTON
---------------------------------------------*/
body.is-open{
	overflow : hidden;
}
@media screen and (max-width: 768px){
	body.is-open #menu{
		max-height : 100vh;
	}
}
body.is-open #header #menuBtn span:nth-of-type(1){
	-webkit-transform : translateY( calc( 10 * 100vw / 768 ) ) scale(0);
	        transform : translateY( calc( 10 * 100vw / 768 ) ) scale(0);
}
body.is-open #header #menuBtn span:nth-of-type(2){
	-webkit-transform : rotate(-45deg);
	        transform : rotate(-45deg);
}
body.is-open #header #menuBtn span:nth-of-type(3){
	-webkit-transform : rotate(45deg);
	        transform : rotate(45deg);
}
body.is-open #header #menuBtn span:nth-of-type(4){
	-webkit-transform : translateY( calc( -10 * 100vw / 768 ) ) scale(0);
	        transform : translateY( calc( -10 * 100vw / 768 ) ) scale(0);
}
@media screen and (max-width: 768px){
	#menuBtn{
		position : absolute;
		top : calc( 40 * 100vw / 768 );
		right : calc( 24 * 100% / 768 );
		width : calc( 80 * 100% / 768 );
		height : calc( 48 * 100vw / 768 );
	}
	#menuBtn > div{
		width : 100%;
		height : 100%;
		position : relative;
	}
	#menuBtn span{
		width : 100%;
		height : calc( 8 * 100vw / 768 );
		background-color : #00C5CD;
		display : block;
		position : absolute;
		left : 0;
		-webkit-transition : all .4s;
		        transition : all .4s;
	}
	#menuBtn span:nth-of-type(1){
		top : 0;
	}
	#menuBtn span:nth-of-type(2){
		top : calc( 20 * 100vw / 768 );
	}
	#menuBtn span:nth-of-type(3){
		top : calc( 20 * 100vw / 768 );
	}
	#menuBtn span:nth-of-type(4){
		bottom : 0;
	}
}
/*--------------------------------------------
MENU
---------------------------------------------*/
@media screen and (max-width: 768px){
	#menu{
		position : fixed;
		left : 0;
		width : 100%;
		z-index : 10;
		-webkit-transition : max-height .5s ease-in;
		        transition : max-height .5s ease-in;
		max-height : 0;
		overflow : hidden;
		overflow-y : scroll;
		top : calc( 120 * 100vw / 768 );
		height : calc( 100vh - 120 * 100vw / 768 );
		background-color : rgba(102,102,102,.95);
		padding-left : calc( 34 * 100% / 768 );
		padding-right : calc( 34 * 100% / 768 );
	}
}
/*--------------------------------------------
NAVI
---------------------------------------------*/
#nav a , #nav p{
	letter-spacing : .1em;
	font-weight : 500;
}
#nav a{
	display : block;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
}
#nav li li a{
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
}
#nav li li a:before{
	content : "»";
	margin-right : .25em;
}
@media screen and (max-width: 768px){
	#nav a , #nav p{
		color : #fff;
		font-size : calc( 26 * 100vw / 768 );
	}
	#nav > ul{
		padding-bottom : calc( 50 * 100vw / 768 );
	}
	#nav > ul > li:nth-last-child(n + 3){
		border-bottom : calc( 3 * 100vw / 768 ) solid #e6e6e6;
	}
	#nav > ul > li:not(:last-child) > a , #nav > ul > li:not(:last-child) p{
		padding-left : calc( 19 * 100% / 700 );
		padding-bottom : calc( 42 * 100vw / 768 );
		padding-top : calc( 42 * 100vw / 768 );
	}
	#nav li li a{
		padding-top : calc( 42 * 100vw / 768 );
		padding-bottom : calc( 42 * 100vw / 768 );
		padding-left : 3em;
	}
	#nav > ul > li:last-child , #nav > ul > li.li_02{
		margin-top : calc( 17 * 100vw / 768 );
	}
	#nav > ul > li:last-child a , #nav > ul > li.li02 a{
		border : calc( 6 * 100vw / 768 ) solid #ccc;
		width : 100%;
		height : calc( 100 * 100vw / 768 );
		-webkit-box-pack : center;
		-ms-flex-pack : center;
		justify-content : center;
	}
}
@media print, screen and (min-width: 769px){
	#nav{
		position : relative;
		overflow : hidden;
	}
	#nav > ul > li:last-child a{
		border : 2px solid #ccc;
		width : 100%;
		height : 60px;
		line-height : 1.2;
		background-repeat : no-repeat;
		background-image : url("../images/nav/bg.png");
	}
	#nav > ul > li.li02 {
        margin-top: 20px;
	}
	#nav > ul > li.li02 a{
		border : 2px solid #ccc;
		width : 100%;
		height : 60px;
		line-height : 1.2;
		background-repeat : no-repeat;
		background-image : url("../images/nav/bg.png");
	}
	#nav > .ps__scrollbar-y-rail:hover > .ps__scrollbar-y , #nav > .ps__scrollbar-y-rail:active > .ps__scrollbar-y{
		width : 6px;
	}
	#nav > .ps__scrollbar-y-rail{
		opacity : 1;
		width : 6px;
		background-color : #dcdddd;
	}
	#nav > .ps__scrollbar-y-rail > .ps__scrollbar-y{
		background-color : #666;
		right : 0;
		border-radius : 0;
	}
}
@media screen and (min-width: 769px) and (max-width:1439px){
	#nav{
		padding-left : 6px;
		padding-right : 6px;
		height : calc( 100vh - 5px - 124px - 149px );
	}
	#nav > ul{
		padding-bottom : 25px;
	}
	#nav > ul > li:not(:last-child){
		border-bottom : 1px solid #e6e6e6;
	}
	#nav > ul > li:not(:last-child) > a , #nav > ul > li:not(:last-child) p{
		font-size : 13px;
		padding-left : 3px;
		padding-bottom : 16px;
		padding-top : 16px;
	}
	#nav li li a{
		padding-top : 16px;
		padding-bottom : 16px;
		padding-left : 1em;
		font-size : 13px;
	}
	#nav > ul > li:last-child{
		margin-top : 10px;
	}
	#nav > ul > li:last-child a , #nav > ul > li.li02 a{
		font-size : 12px;
		padding-left : 5px;
		background-position : 148px center;
		background-size : auto 26px;
	}
}
@media print, screen and (min-width: 1440px){
	#nav{
		margin-top : 10px;
		height : calc( 100vh - 5px - 189px - 10px - 153px );
	}
	#nav > ul{
		padding-bottom : 33px;
		padding-left : 15px;
		padding-right : 15px;
	}
	#nav > ul > li:not(:last-child){
		border-bottom : 1px solid #e6e6e6;
	}
	#nav > ul > li:not(:last-child) > a , #nav > ul > li:not(:last-child) p{
		font-size : 14px;
		padding-left : 1em;
		padding-bottom : 15px;
		padding-top : 15px;
	}
	#nav li li a{
		padding-top : 15px;
		padding-bottom : 15px;
		padding-left : 2.5em;
		font-size : 14px;
	}
	#nav > ul > li:last-child{
		margin-top : 34px;
	}
	#nav > ul > li:last-child a{
		font-size : 14px;
		padding-left : 19px;
		background-position : 216px center;
	}
	#nav > ul > li.li02{
		margin-top : 10px;
        border: none;
	}
	#nav > ul > li.li02:first-of-type{
		margin-top : 20px;
	}
	#nav > ul > li.li02 a{
		font-size : 14px;
		padding-left : 19px;
		background-position : 216px center;
        border: 2px solid #e6e6e6;
	}
}
/*--------------------------------------------
MENU
---------------------------------------------*/
@media screen and (max-width: 768px){
	#menu .scroll{
		padding-bottom : calc( 183 * 100vw / 768 );
	}
}
/*--------------------------------------------
ADDRESS
---------------------------------------------*/
#address h2 a{
	display : block;
	font-weight : 700;
	letter-spacing : .15em;
}
#address p{
	letter-spacing : .15em;
}
#address li:nth-child(1) a{
	display : block;
}
#address li:nth-child(2) a{
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	-webkit-box-pack : center;
	-ms-flex-pack : center;
	justify-content : center;
	text-align : center;
	font-weight : 700;
}
@media screen and (max-width: 768px){
	#address{
		color : #fff;
	}
	#address a{
		color : #fff;
	}
	#address h2 a{
		font-size : calc( 26 * 100vw / 768 );
	}
	#address p{
		font-size : calc( 26 * 100vw / 768 );
		line-height : calc( 40 * 100vw / 768 );
		margin-top : calc( 7 * 100vw / 768 );
	}
	#address ul{
		margin-top : calc( ( 35 - 7 ) * 100vw / 768 );
		width : 100%;
	}
	#address li:nth-child(1) a{
		font-size : calc( 52 * 100vw / 768 );
		letter-spacing : .025em;
		color : #fff;
	}
	#address li:nth-child(2){
		display: flex;
		margin-top: calc( 20 * 100vw / 768 );
		column-gap: 5px;

	}
		#address li:nth-child(2) a.mail{
			font-size : calc( 26 * 100vw / 768 );
			width : 100%;
			height : calc( 80 * 100vw / 768 );
			background-color : #fff;
			color : #333;
		}
		#address li:nth-child(2) a.line{
		}
			#address li:nth-child(2) a.line img{
				height : calc( 80 * 100vw / 768 );
			}
}
@media print, screen and (min-width: 769px){
	#address.is-fixed{
		position : fixed;
		bottom : 0;
		left : 5px;
	}
	#address li:nth-child(1) {
		margin-bottom: 10px;
	}
	#address li:nth-child(2) {
		display: flex;
		align-items: flex-start;
		column-gap: 10px;
		padding-bottom: 10px;
	}
		#address li:nth-child(2) a.mail{
			color : #fff;
			background-color : #00C5CD;
			letter-spacing : .15em;
		}
}
@media screen and (min-width: 769px) and (max-width:1439px){
	#address{
		width : 190px;
	}
	#address h2 a{
		font-size : 13px;
	}
	#address p{
		font-size : 13px;
		line-height : 15px;
		margin-top : 3px;
	}
	#address li:nth-child(1) a{
		margin-top : calc( 10px - 1px );
		font-size : 25px;
	}
	#address li:nth-child(2) {
		column-gap: 5px;
	}
		#address li:nth-child(2) a.mail{
			width : calc(100% - 45px);
			height : 40px;
			font-size : 13px;
		}
		#address li:nth-child(2) a.line{
		}
			#address li:nth-child(2) a.line img{
				height: auto;
				width: 40px;
			}
}
@media print, screen and (min-width: 1440px){
	#address{
		width : 290px;
		padding-left : 15px;
		padding-right : 15px;
		/*padding-bottom: 20px;*/
	}
	#address h2 a{
		font-size : 14px;
	}
	#address p{
		font-size : 14px;
		line-height : 18px;
		margin-top : 8px;
	}
	#address li:nth-child(1) a{
		margin-top : calc( 15px - 2px );
		font-size : 30px;
		letter-spacing : .025em;
	}

		#address li:nth-child(2) a.mail{
			width : calc(100% - 40px);
			height : 40px;
			font-size : 14px;
		}
		#address li:nth-child(2) a.line{
		}
			#address li:nth-child(2) a.line img{
				width: 40px;
			}
}
/*--------------------------------------------
CLOSE BUTTON
---------------------------------------------*/
@media screen and (max-width: 768px){
	#closeBtn{
		margin-left : auto;
		margin-right : auto;
		width : calc( 82 * 100% / 700 );
		display : block;
		margin-top : calc( 66 * 100vw / 768 );
	}
}
/*--------------------------------------------
CONTENT HEADER
---------------------------------------------*/
#contentHeader .box{
	letter-spacing : .1em;
}
@media print, screen and (min-width: 769px){
	#contentHeader .box{
		color : #fff;
	}
}
@media print, screen and (min-width: 1440px){
	#contentHeader .box{
	}
}
/*--------------------------------------------
FOOTER
---------------------------------------------*/
#footer{
	background-color : #edecec;
}
@media screen and (max-width: 768px){
	#footer .copyright{
		display : -webkit-box;
		display : -ms-flexbox;
		display : flex;
		-webkit-box-align : center;
		-ms-flex-align : center;
		align-items : center;
		-webkit-box-pack : center;
		-ms-flex-pack : center;
		justify-content : center;
		text-align : center;
		height : calc( 180 * 100vw / 768 );
	}
	#footer p{
		width : calc( 167 * 100% / 736 );
	}
}
@media print, screen and (min-width: 769px){
	#footer .about .box{
		display : -webkit-box;
		display : -ms-flexbox;
		display : flex;
		-webkit-box-align : start;
		-ms-flex-align : start;
		align-items : flex-start;
	}
	#footer .about h2 a{
		display : block;
	}
	#footer .about p{
		letter-spacing : .15em;
		font-size : 16px;
		line-height : 24px;
		margin-left : 24px;
	}
	#footer .about dl{
		margin-top : 20px;
	}
	#footer .about dt:after{
		content : "｜";
		margin-left : 1.5em;
		margin-right : 1.5em;
	}
	#footer .about dt , #footer .about dd{
		letter-spacing : .15em;
		font-size : 14px;
	}
	#footer .about li{
		font-size : 12px;
		line-height : 20px;
		letter-spacing : .15em;
	}
	#footer .contact{
		display : -webkit-box;
		display : -ms-flexbox;
		display : flex;
		-webkit-box-orient : vertical;
		-webkit-box-direction : normal;
		-ms-flex-direction : column;
		    flex-direction : column;
		-webkit-box-align : end;
		-ms-flex-align : end;
		align-items : flex-end;
	}
	#footer .contact p{
		font-weight : 500;
		font-size : 13px;
	}
	#footer .contact li:nth-child(1) a{
		font-size : 32px;
	}
	#footer .contact li:nth-child(2){
		margin-top : 14px;
		display: flex;
		column-gap: 10px;
	}
	#footer .contact li:nth-child(2) a.mail{
		margin-left : auto;
		width : 205px;
		height : 39px;
		display : -webkit-box;
		display : -ms-flexbox;
		display : flex;
		-webkit-box-align : center;
		-ms-flex-align : center;
		align-items : center;
		-webkit-box-pack : center;
		-ms-flex-pack : center;
		justify-content : center;
		text-align : center;
		letter-spacing : .15em;
		color : #fff;
		background-color : #00C5CD;
		font-size : 14px;
	}
	#footer .contact li:nth-child(2) a.line{
	}
		#footer .contact li:nth-child(2) a.line img{
			height : 39px;
			width: auto;
		}
}
@media screen and (min-width: 769px) and (max-width:1439px){
	#footer .wrap{
		padding-top : 48px;
		padding-left : 16px;
		padding-right : 16px;
		padding-bottom : 120px;
		position : relative;
	}
		.manshon_life #footer .wrap{
			padding-bottom : 560px;
		}
	#footer .about h2 a{
		width : 371px;
	}
	#footer .about p{
		margin-top : calc( 6px - 4px );
	}
	#footer .about dl{
	}
	#footer .about dt:after{
		content : "｜";
		margin-left : 1.5em;
		margin-right : 1.5em;
	}
	#footer .about dd{
		margin-top : 12px;
	}
	#footer .about ul{
		margin-top : calc( 15px - 4px );
	}
	#footer .contact{
		position : absolute;
		right : 8px;
		top : 87px;
	}
	#footer .contact ul{
		margin-top : 15px;
	}
	#footer .contact li:nth-child(1) a{
		letter-spacing : .05em;
	}
}
@media print, screen and (min-width: 1440px){
	#footer .wrap{
		padding-top : 64px;
		padding-left : 24px;
		padding-right : 24px;
		padding-bottom : 120px;
		display : -webkit-box;
		display : -ms-flexbox;
		display : flex;
		-webkit-box-pack : justify;
		-ms-flex-pack : justify;
		justify-content : space-between;
	}
		.manshon_life #footer .wrap{
			padding-bottom : 560px;
		}
	#footer .about h2 a{
		width : 371px;
	}
	#footer .about p{
		margin-top : calc( 5px - 4px );
	}
	#footer .about dl{
		display : -webkit-box;
		display : -ms-flexbox;
		display : flex;
		-webkit-box-align : center;
		-ms-flex-align : center;
		align-items : center;
	}
	#footer .about ul{
		margin-top : calc( 20px - 4px );
	}
	#footer .contact p{
		letter-spacing : .15em;
	}
	#footer .contact ul{
		margin-top : 14px;
	}
	#footer .contact li:nth-child(1) a{
		letter-spacing : .15em;
	}
}
/*# sourceMappingURL=../maps/layout.css.map */
