/*common_css*/
@charset "utf-8";
/* CSS Document */


/**================================================================================
ヘッダー
================================================================================**/
header{
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	background: #fff;
}
header h1{
	margin-bottom: 4px;
	font-size: 12px;
	color: var(--brown);
}
header .inner{
}
header .inner .logo{
	width: 370px;
    margin: 0;
	padding: 6px 0 0;
}
header .inner .logo img{
	width: 280px;
}

/*nav*/
header nav ul.menu1{
	--menu1-height: 16px;
	margin-left: calc( ( 100% - 100vw ) / 2 );
	margin-right: calc( ( 100% - 100vw ) / 2 );
    padding-left: calc( ( 100vw - 980px ) / 2 );
    padding-right: calc( ( 100vw - 980px ) / 2 );
	display: flex;
	justify-content: flex-end;
}
header nav ul.menu1 li{
	flex: auto;
    position:relative;
}
header nav ul.menu1 li::after{
    content: "";
    display: block;
    width: 1px;
    height: var(--menu1-height);
    background:#2f2f2f;
    position: absolute;
    right: 0;
    top: 20px;
}
header nav ul.menu1 li:first-child::before{
    content: "";
    display: block;
    width: 1px;
    height: var(--menu1-height);
    background:#2f2f2f;
    position: absolute;
    left: 0;
    top: 20px;
}
header nav ul li a{
	display: block;
	padding: 20px;
	font-size: 0.95em;
	line-height: 1.0;
	text-align: center;
	position: relative;
}header nav ul li a:hover{
	color: var(--grn);
}
header nav ul li a::after{
	content: "";
	display: block;
	width: 0%;
	height: 2px;
	background: rgb(251,240,0);
background: linear-gradient(90deg, rgba(251,240,0,1) 0%, rgba(0,164,60,1) 50%, rgba(251,240,0,1) 96%);
	position: absolute;
	left: 10%;
	bottom: 0;
	-webkit-transition: ease .3s;
	transition: ease .3s;
}header nav ul li a:hover::after{
	width: 80%;
}

/*menu2*/
header nav .menu2{
	width: 460px;
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	position: absolute;
	right: 0;
	top: 0;
}
header nav .menu2 p{
    display: flex;
    flex-flow: column;
	margin: 4px auto 0 0;
	font-size: 0.75em;
    line-height: 1.3;
}
header nav .menu2 p span::before{
	content: "▶";
	color: var(--grn);
}
header nav .menu2 a[href^="tel"]+a[href^="tel"]{
	margin-bottom: 4px;
}
header nav .menu2 a[href^="tel"] img{
	width: 15px;
}
header nav .menu2 a.h-btn-wrapper{
	display: flex;
	flex-flow: column;
}
header nav .menu2 a.h-btn{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 170px;
	height: 36px;
	margin: 6px 0 0;
	border-radius: 20px;
}
header nav .menu2 a.h-btn.h-toi {
	background: var(--ylw);
	border: 2px solid var(--ylw);
	margin-top: 20px;
}header nav .menu2 a.h-btn.h-toi:hover {
	background: #fff;
}
header nav .menu2 a.h-btn.h-acs {
	color: #fff;
	background: var(--grn);
	border: 2px solid var(--grn);
}header nav .menu2 a.h-btn.h-acs:hover {
	color: var(--grn);
	background: #fff;
}

@media screen and (max-width: 979px){
	header nav ul.menu1{
		margin-left: calc( ( 100% - 100vw ) / 2 * -1);
		margin-right: calc( ( 100% - 100vw ) / 2 * -1);
	}
}
@media screen and (max-width: 768px){
	header h1{
		display: none;
	}
	header .inner .logo{
		width: calc(100% - 50px);
		padding: 5px 0 0 5%;
        height: 50px;
	}
	header .inner .logo img{
		width: 136px;
	}

	#menu{
		position: fixed;
		top: 0;
		right: 0;
		z-index: 1500;
		width: 50px;
		height: 50px;
		background: var(--grn);
		text-align: center;
		line-height: 1.0;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	#menu:before{
        color: #fff;
		content: "\e3c7";
		font-size: 30px;
		font-family: 'Material Icons';
        line-height: 36px;
	}
	.on #menu:before{
		content: "\e5cd";
	}
	#menu:after{
		display: block;
		margin: -5px auto;
        color: #fff;
		content: "MENU";
		font-size: 10px;
		font-weight: bold;
	}.on #menu:after{
		content: "CLOSE";
	}
	/*nav*/
	header nav{
		display: none;
        width: 100% !important;
		height: calc(100vh - 50px);
		overflow-y: scroll;
	}
	header nav ul.menu1{
		display: block;
		margin: 20px 0;
		padding: 20px 0;
		font-size: 15px;
		background: url(/common/images/bg-ptn-grn.png) no-repeat center top / cover;
	}
    header nav ul.menu1 li{
    }
	header nav ul.menu1 li::after{
		display: none;
	}
	header nav ul.menu1 li:first-child::before{
		display: none;
	}
	header nav ul.menu1 li a{
		padding: 14px 10%;
		line-height: 1.2;
	}

	/*menu2*/
	header nav .menu2{
		width: 100%;
		flex-flow: column;
		justify-content: center;
		align-items: center;
		position: static;
	}
	header nav .menu2 p{
		margin: 10px auto;
		text-align: center;
	}
	header nav .menu2 p span{
		padding-bottom: 8px;
	}
	header nav .menu2 a[href^="tel"]{
		font-size: 1.2rem;
	}
	header nav .menu2 a[href^="tel"]+a[href^="tel"]{
		margin-bottom: 10px;
	}
	header nav .menu2 a[href^="tel"] img{
		width: 15px;
	}
	header nav .menu2 a.h-btn-wrapper{
		display: flex;
		flex-flow: column;
	}
	header nav .menu2 a.h-btn{
		width: 60vw;
		margin: 10px 0 0;
		height: 40px;
	}
}


/**================================================================================
お問い合わせ aside
================================================================================**/
.asd-contact.bg-photo::before{
	background: rgb(255,255,255);
	background: linear-gradient(90deg, rgba(255,255,255,0) 35%, rgba(255,255,255,0.4) 50%, rgba(255,255,255,0.95) 90%);
}
.asd-contact .asd-main{
	margin-left: 58%;
	text-align: center;
}
.asd-contact .asd-main a[href^="tel"]{
	text-align: left;
}
.asd-contact .asd-main a[href^="tel"] i img{
	width: 20px;
}
.asd-contact .asd-main .btn{
	border:2px solid #fff;
}

/* 施設別 */
.asd-contact.asd-fac .asd-main .logo{
	display: block;
	margin-bottom: 10px;
	text-align: center;
}
.asd-contact.asd-fac .asd-main .logo img{
	height: 60px;
}
.asd-contact.asd-fac .asd-main a[href^="tel"]{
	justify-content: center;
	text-align: center;
}
.asd-contact.asd-fac .asd-main a[href^="tel"] i img{
	width: min(30px , 3vw);
}

@media screen and (max-width: 768px) {
	.asd-contact.bg-photo::before{
		background: rgb(255,255,255);
		background: linear-gradient(90deg, rgba(255,255,255,0) 35%, rgba(255,255,255,0.4) 50%, rgba(255,255,255,0.95) 90%);
	}
	.asd-contact .asd-main{
		width: 50%;
		margin-left: 48%;
	}
	.asd-contact .asd-main a[href^="tel"]{
		text-align: center;
	}
}

@media screen and (max-width: 480px) {
	.asd-contact h3+p{
		margin-top:10px;
		font-size: 0.9em;;
	}
	.asd-contact.bg-photo::before{
		background: rgba(255,255,255,.7);
	}
	.asd-contact .asd-main{
		width: 90%;
		margin-left: auto;
	}

	/* 施設別 */
	.asd-contact.asd-fac .asd-main .logo{
		margin-bottom: 10px;
	}
	.asd-contact.asd-fac .asd-main .logo img{
		height: 50px;
	}
	.asd-contact.asd-fac .asd-main a[href^="tel"] i img{
		width: 20px;
	}
}


/**================================================================================
フッター
================================================================================**/
footer{
	background: rgb(255,180,83);
	background: linear-gradient(170deg, rgba(255,180,83,1) 0%, rgba(255,220,127,1) 10%, rgba(255,255,167,1) 30%, rgba(201,242,133,1) 70%, rgba(145,228,98,1) 100%);
}
footer .inner,
footer .f-bnr-wrapper{
	padding-left: calc((100vw - 980px) / 2);
	padding-right: calc((100vw - 980px) / 2);
}
footer .inner{
	justify-content: space-between;
}
footer .inner .inner_L{
	width: 41%;
}
/*nav*/
footer nav{
}
footer nav ul{
	-webkit-column-count: 2;
	column-count: 2;/*列数*/
	-webkit-column-gap: 50px;
	column-gap: 50px;/*ブロック要素同士の間隔*/
	border-right: 1px solid var(--gray);
}
footer nav ul li{
	break-inside: avoid;
}
footer nav a{
	display: block;
	padding: 10px ;
    border-left: 1px solid var(--gray);
}
footer nav a:hover{
	color: var(--grn);
}

footer .inner .inner_R{
	width: 53%;
	justify-content: space-between;
}
footer .inner .inner_R li figure{
	border: 2px solid #fff;
}
footer .inner .inner_R li{
	width: 49%;
}
footer .inner .inner_R li a[href^="tel"] {
	margin-top: 5px;
}
footer .inner .inner_R li a[href^="tel"] img{
	width: 20px;
}

/** コピーライト **/
.copyright small{
    display: block;
    width:100%;
    padding: 18px;
    font-size:12px;
    text-align: center;
    line-height: 1.0;
}


@media screen and (max-width: 768px){
	footer .inner,
	footer .f-bnr-wrapper{
		padding-left: 5%;
		padding-right: 5%;
	}

	/** コピーライト **/
	.copyright small{
		margin-bottom: 56px;
		padding: 14px;
	}
}

@media screen and (max-width: 480px) {
	footer .inner{
		flex-flow: column;
	}
	footer .inner .inner_L{
		width: 100%;
	}
	footer .inner .inner_L .logo {
		margin-bottom: 10px;
	}
	footer .inner .inner_L .logo img{
		width: 180px;
	}
	/*nav*/
	footer nav ul{
		border-right: none;
	}
	footer nav a{
		padding: 8px 10px;
		font-size: 0.85rem;
	}
	footer .inner .inner_R{
		width: 100%;
		margin-top: 20px;
	}
	footer .inner .inner_R li{
		width: 47%;
	}
	footer .inner .inner_R p{
		font-size: 0.8rem;
	}
	footer .inner .inner_R li a[href^="tel"] img{
		width: 16px;
	}
	footer .inner .inner_R p a{
		display: block;
	}
}



/**================================================================================
スマホ固定
================================================================================**/
@media screen and (max-width: 768px) {
	/*sp-fix*/
    .sp-fix{
        width: 100vw;
		display: flex;
        position: fixed;
        left: 0;
        bottom: 0;
        box-shadow: 0 -1px 5px rgba(0,0,0,.3);
        z-index: 900;
    }
    .sp-fix a{
        display: flex;
		flex-flow: column;
		justify-content: center;
		flex-grow: 1;
		margin: 0;
		padding: 0 4px;
		height: 56px;
        font-size: 10px;
        text-align: center;
		line-height: 1.2;
    }
	.sp-fix a[href^="tel"] {
		color: #fff;
		background: var(--grn);
	}
	.sp-fix a[href^="tel"]:first-child{
		border-right: 1px solid #fff;
	}
	.sp-fix a[href^="tel"] p{
		margin-bottom: 2px;
	}
	.sp-fix a[href^="tel"] span{
		font-size: 1.4em;
		font-weight: var(--fw-b);
	}
	.sp-fix a[href^="tel"] img{
		width: 14px;
	}
    .sp-fix a.fix-acs{
		flex-shrink: 2;
        background: var(--ylw);
		font-size: 0.8rem;
		font-weight: var(--fw-b);
    }
    .sp-fix a.fix-acs img{
		width: 16px;
		padding-bottom: 4px;
    }

	/* 採用情報 */
	.rec-sp-fix .sp-fix {
		z-index: 999;
	}
	.rec-sp-fix .sp-fix a.fix-acs{
		padding: 0 8px;
    }
}



/**================================================================================
HERO
================================================================================**/
.hero{
	width: 100vw;
	height: 720px;
	display: flex;
	flex-flow: column;
	align-items: center;
	padding-top: 100px;
	font-family: var(--webf);
	text-align: center;
	line-height: 1.3;
	background-image: url(/common/images/hero-img.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	position: relative;
}
.hero p{
	width: 100%;
	margin-top: 20px;
	padding: 10px ;
	position: relative;
}
.hero p::before{
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0,164,60,.7);
	background: linear-gradient(90deg, rgba(251,240,0,.7) 0%, rgba(0,164,60,.7) 50%, rgba(251,240,0,.7) 96%);
	mix-blend-mode:multiply;
	position: absolute;
	left: 0;
	top: 0;
}
.hero p span{
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}

@media screen and (max-width: 768px) {
	.hero{
		height: 70vw;
		padding-top: 70px;
	}
}

@media screen and (max-width: 480px) {
	.hero{
		height: 60vh;
		padding-top: 70px;
		background-image: url(/common/images/hero-img_sp.jpg);
	}
	.hero .fs46{
		font-size: 6vw;
	}
	.hero p{
		width: 100%;
		margin-top: 20px;
		padding: 10px ;
		position: relative;
	}
	.hero p span{
		font-size: 4.5vw;
		line-height: 1.5;
	}
}


/**================================================================================
top-安心快適な暮らしを
================================================================================**/
.top-intro .intro-wrap {
	flex-flow: row-reverse;
	justify-content: space-between;
}
.top-intro .intro-wrap .intro-fig{
	width: 60%;
	margin-right: -10%;
}
.top-intro .intro-wrap .intro-fig figure{
	filter: drop-shadow(5px 5px 5px rgba(0,0,0,.3));
}
.top-intro .intro-wrap .intro-fig figure.fig1{
	width: 570px;
}
.top-intro .intro-wrap .intro-fig figure.fig2{
	width: 420px;
	margin: -30px 0 0 16vw;
}
.top-intro .intro-wrap .intro-fig figure.fig3{
	width: 310px;
	margin: -30px 0 0 -2vw;
}
.top-intro .intro-wrap .text{
	width: 40%;
	margin-top: 100px;
}
.top-intro .en-tit{
	line-height: 1.3;
	position: absolute;
    right: -10vw;
    top: -50px;
}

@media screen and (max-width: 768px) {
	.top-intro .intro-wrap .intro-fig{
		width: 60%;
	}
	.top-intro .intro-wrap .intro-fig figure.fig1{
		width: 85%;
	}
	.top-intro .intro-wrap .intro-fig figure.fig2{
		width: 60%;
	}
	.top-intro .intro-wrap .intro-fig figure.fig3{
		width: 50%;
		margin: -30px 0 0 -2vw;
	}
	.top-intro .intro-wrap .text{
		width: 44%;
		margin-top: 80px;
	}
	.top-intro .en-tit{
		right: 0vw;
		top: -30px;
	}
}

@media screen and (max-width: 480px) {
	.top-intro .intro-wrap{
		flex-flow: column;
	}
	.top-intro .intro-wrap .intro-fig{
		display: contents;
	}
	.top-intro .intro-wrap .intro-fig figure.fig1{
		/* width: 88%; */
		margin: -8px auto 0;
		order: 1;
	}
	.top-intro .intro-wrap .intro-fig figure.fig2{
		width: 60%;
		margin:30px 0 0 35%;
		order: 3;
	}
	.top-intro .intro-wrap .intro-fig figure.fig3{
		width: 40%;
		margin: -60px 0 0 2vw;
		order:4;
	}
	.top-intro .intro-wrap .text{
		width: 100%;
		margin-top: 30px;
		order: 2;
	}
	.top-intro .en-tit{
		left: -4vw;
		line-height: 1.2;
	}
}


/**================================================================================
top-施設のご紹介
================================================================================**/
.top-fac-content{
	display: flex;
	justify-content: space-between;
}
.top-fac-content .text{
	width: 40%;
}
.top-fac-content .text h4,
.top-fac-content .text h4 img{
	height: 70px;
}
.top-fac-content .text a[href^="tel:"] i img{
	width: 18px;
}
/* 施設スライド */
.fac-slide {
	--fac-slide-width:53%;
	--fac-slide-height:calc(var(--fac-slide-width) / 1.5);
	width: var(--fac-slide-width);
	padding-top: var(--fac-slide-height); /* 画像の高さ */
	position: relative;
	font-size: 0;
}
.fac-slide > img {
	aspect-ratio: 1.5 / 1;
	width: 100%;
	object-fit: cover;
	position: absolute;
	left: 0;
	top: 0;
	transition: all 0.5s;
}
.fac-slide input {
	display: none;
}
/* サムネイル */
.fac-slide label {
	width: 20%;
	margin: 10px 0 0;
	display: inline-block;
	cursor: pointer;
	transition: all 0.5s ease;
	opacity: 0.6;
}
.fac-slide label:hover {
	opacity: 0.9;
}
.fac-slide label img {
	display: block;
	width: 100%;
}
.fac-slide input:checked + label {
	opacity: 1;
}
.fac-slide input ~ img {
	opacity: 0;
}
.fac-slide input:checked + label + img {
	opacity: 1;
}

@media screen and (max-width: 768px) {
	.top-fac-content .text h4,
	.top-fac-content .text h4 img{
		height: 50px;
	}
}

@media screen and (max-width: 480px) {
	.top-fac-content{
		flex-flow: column;
		justify-content: center;
	}
	.top-fac-content .text{
		width: 100%;
		margin-bottom: 30px;

	}
	.top-fac-content .text h4,
	.top-fac-content .text h4 img{
		text-align: center;
		height: 50px;
	}
	.top-fac-content .text a[href^="tel:"] i img{
		width: 18px;
	}
	/* 施設スライド */
	.fac-slide {
		--fac-slide-width:100%;
	}
}


/**================================================================================
top-新着情報 & ブログ
================================================================================**/
.top-news a.more{
	position: absolute;
	left: 0;
	top:120px;
}
/* news-slide */
.news-slide-wrapper{
	width: 860px;
	margin: -120px 0 0 400px;
	overflow: hidden;
}
ul.news-slide li a{
	display: block;
	height: 100%;
}
ul.news-slide li a h5{
	line-height: 1.6;
}
ul.news-slide li a .time-wrap{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 14px;
	padding: 14px 4px 0;
	border-top: 1px solid var(--gray);
}
ul.news-slide li a .time-wrap time{
	color: var(--gray);
}
ul.news-slide li a .time-wrap .branch{
	display: inline-block;
	min-width: 7em;
	padding: 4px 1em;
	text-align: center;
	line-height: 1.0;
	border: 1px solid var(--gray);
	border-radius: 20px;
}

@media screen and (max-width: 768px) {
	.top-news a.more{
		top:0;
		left: auto;
		right: 0;
	}
	/* news-slide */
	.news-slide-wrapper{
		width: 100%;
		margin: 0px auto;
	}
}

@media screen and (max-width: 480px) {
	.top-news a.more{
		position: static;
	}
}

/* 共通スライドパーツ */
.news-slide-parts {
	display: flex;
	justify-content: center;
	margin-left: 20%;
}
.news-slide-parts .swiper-button-prev::after,
.news-slide-parts .swiper-button-next::after{
	display: none;
}
.news-slide-parts .swiper-button-prev,
.news-slide-parts .swiper-button-next{
	margin:8px;
	position: static;
	opacity: .7;
}
.news-slide-parts .swiper-button-prev:hover,
.news-slide-parts .swiper-button-next:hover{
	opacity: .5;
}
.news-slide-parts div i{
	padding: 4px;
	font-family: 'Material Icons';
	color: var(--main-color);
	line-height: 1.0;
	border: 1px solid var(--main-color);
	border-radius: 50%;
}
/* 条件分岐 */
.news-slide-parts .swiper-button-prev.none,
.news-slide-parts .swiper-button-next.none{
	display: none;
}

@media screen and (max-width: 768px) {
	.news-slide-parts {
		margin: 0 0 20px 0;
	}
}


/**================================================================================
top-スタッフ募集
================================================================================**/
.top-sec-rec::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: url(/common/images/deco-logo.png) no-repeat right -5vw bottom -4vw / auto;
	position: absolute;
	left: 0;
	top:0;
	pointer-events: none;
}
.top-sec-rec .en-tit{
	position: absolute;
	right: -50px;
	top: -50px;
}
.top-rec .text{
	margin-top: 80px;
}
.top-rec figure{
	width: 50%;
}

@media screen and (max-width: 768px) {
	.top-sec-rec::after{
		background-position: right 20px bottom -50px;
		background-size: 40% auto;
	}
	.top-sec-rec .en-tit{
		right: 0;
		top: -40px;
		left: 0;
	}
	.top-rec .text{
		margin-top: 20px;
	}
	.top-rec figure{
		width: 40%;
	}
}

@media screen and (max-width: 480px) {
	.top-sec-rec {
		padding-bottom: 30px;
	}
	.top-sec-rec::after{
		background-position: right -20px bottom -50px;
		background-size: 70% auto;
	}
	.top-sec-rec .en-tit{
		font-size: 10vw;
		top: -30px;
	}
	.top-rec .text{
		margin-top: 0;
	}
	.top-rec.h-text-img figure{
		width: 100vw;
		margin-left: -5vw;
	}
}


/**================================================================================
top-代表からのメッセージ
================================================================================**/
.omoi figure{
	width: 38%;
}
.omoi figure figcaption{
	text-align: center;
}
.omoi figure figcaption em{
	font-size: 0.85em;
}

@media screen and (max-width: 768px) {
	.top-omoi.mt150{
		margin-top: 40px;
	}
	.omoi figure{
		width: 60%;
		max-width: 280px;
	}
	.omoi figure figcaption{
		text-align: center;
	}
	.omoi figure figcaption em{
		font-size: 0.85em;
	}
}


/**================================================================================
top-インスタグラム
================================================================================**/
.top-insta .flx{
	justify-content: space-between;
	align-items: center;
}
.top-insta .ttlA-L::after{
	content: "";
	display: block;
	width: 42px;
	height: 42px;
	background: url(/common/images/ico-insta.svg) no-repeat center / contain;
	position: absolute;
	left: 7.5em;
	top:8px;
}

@media screen and (max-width: 480px) {
	.top-insta >div{
		display: flex;
		flex-flow: column;
	}
	.top-insta .insta-ttl{
		display:contents;
	}
	.top-insta h3{
		order: 1;
	}
	.top-insta a.more{
		margin-top: 16px;
		order: 3;
	}
	.top-insta .ttlA-L::after{
		width: 30px;
		height: 30px;
		left: 7.5em;
		top:6px;
	}
	.top-insta .insta-wrap{
		order: 2;
	}
}


/**================================================================================
高師浜-施設紹介
================================================================================**/
.sec-taka-intro .text{
	width: 48%;
}
.sec-taka-intro figure{
	width: 62%;
	margin-right: -20%;
}

@media screen and (max-width: 768px) {
	.sec-taka-intro .text{
		width: 100%;
	}
	.sec-taka-intro figure{
		width: 100%;
		margin-right: auto;
	}
}

/**================================================================================
高師浜-選ばれる5つの理由
================================================================================**/
.sec-taka-reason .titE{
	width: 47% ;
	padding: 50px 0;
	position: absolute;
	left: 0;
	top: 44px;
    border-top: 1px solid var(--grn);
    border-bottom: 1px solid var(--grn);
}
.sec-taka-reason .titE span{
	margin-top: 16px;
	padding:0 10px;
}

/* -------------------------------------
reason-list
-------------------------------------*/
.reason-list li{
	margin-bottom: 60px;
}
.reason-list li h4{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 140px;
	padding: 10px 20px;
}
.reason-list li p{
	padding:20px 0 0;
}
.reason-list::before{
	content: "";
	display: block;
	width: 47%;
}
.reason-list::after{
	display: none;
}

@media screen and (max-width: 768px) {
	.sec-taka-reason div{
		margin-top: 10px;
	}
	.sec-taka-reason .titE{
		width: 40%;
		padding: 30px 0;
		top: 40px;
		left: 50px;
	}
	.sec-taka-reason .titE i img{
		width: 60%;
	}
	.sec-taka-reason .titE span{
		margin-top: 20px;
		padding: 10px 10px 0;
	}
	/* -------------------------------------
	reason-list
	-------------------------------------*/
	.reason-list li{
		width: 48%;
		margin-bottom: 30px;
		border-width: 2px;
	}
	.reason-list li h4{
		min-height: 100px;
		padding: 10px;
	}
	.reason-list li p{
		padding:8px 8px 0;
	}
	.reason-list::before{
		width: 48%;
	}
}

@media screen and (max-width: 480px) {
	.sec-taka-reason .titE{
		width: 70%;
		margin: 0 auto ;
		padding: 20px 0;
		position: static;
		border: none;
	}
	.sec-taka-reason .titE i img{
		width: 40%;
	}
	.sec-taka-reason .titE span{
		margin-top: 0;
	}
	/* -------------------------------------
	reason-list
	-------------------------------------*/
	.reason-list li{
		margin-bottom: 30px;
		border-width: 2px;
	}
	.reason-list li h4{
		min-height: 70px;
	}
	.reason-list::before{
		display: none;
	}
}


/**================================================================================
高師浜-施設のスライド
================================================================================**/
/* taka-slide */
.taka-slide-wrapper{
	width: calc( ( 100% - 100vw ) / -2 + 980px);
	margin: -120px 0 0;
	overflow: hidden;
}
.taka-slide li {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.taka-slide li .text{
	width: 450px;
	height: 270px;
	margin: 0 -60px -50px 0;
	padding: 30px 90px 30px 40px;
	background: var(--grn_ll);
}
.taka-slide li figure{
	width:  calc( ( 100% - 100vw ) / -2 + 750px);
}

@media screen and (max-width: 768px) {
	/* taka-slide */
	.taka-slide-wrapper{
		width: 100%;
		margin: 0px auto;
	}
}

@media screen and (max-width: 480px) {
	/* taka-slide */
	.taka-slide-wrapper{
		width: 100%;
		margin: 0px auto;
	}
	.taka-slide li {
		flex-flow: column-reverse;
	}
	.taka-slide li .text{
		width: 100%;
		height: 200px;
		margin: 0 ;
		padding: 20px 30px ;
	}
	.taka-slide li figure{
		width:  100%;
	}
}

/* 共通スライドパーツ */
.taka-slide-parts {
	display: flex;
	justify-content: center;
	margin-left: 20%;
	position: relative;
}
.taka-slide-parts .swiper-button-prev::after,
.taka-slide-parts .swiper-button-next::after{
	display: none;
}
.taka-slide-parts .swiper-button-prev,
.taka-slide-parts .swiper-button-next{
	margin:8px;
	position: static;
	opacity: .7;
}
.taka-slide-parts .swiper-button-prev{
	margin-left: 80%;
}
.taka-slide-parts .swiper-button-prev:hover,
.taka-slide-parts .swiper-button-next:hover{
	opacity: .5;
}
.taka-slide-parts div i{
	padding: 4px;
	font-family: 'Material Icons';
	color: var(--grn);
	line-height: 1.0;
	border: 1px solid var(--grn);
	border-radius: 50%;
}
/* 条件分岐 */
.taka-slide-parts .swiper-button-prev.none,
.taka-slide-parts .swiper-button-next.none{
	display: none;
}

.taka-slide-parts .swiper-pagination{
	width: auto;
	margin-left: 78%;
	font-size: 1.4em;
	font-family: var(--webf);
	color: var(--gray);
}

@media screen and (max-width: 768px) {
	.taka-slide-parts {
		margin: 0;
	}
	.taka-slide-parts .swiper-button-prev{
		margin-left: 90%;
	}
}

@media screen and (max-width: 480px) {
	.taka-slide-parts .swiper-button-prev{
		margin-left: 77%;
	}
	.taka-slide-parts .swiper-pagination{
		margin-left: 60%;
		font-size: 1em;
		transform: translateY(-8px);
	}
}


/**================================================================================
高師浜-オンライン見学
================================================================================**/
.vr{
	position: relative;
    padding-bottom: 640px;
    height: 0;
    overflow: hidden;
    margin-left: -100px;
    margin-right: -100px;
}
.vr iframe,
.vr object,
.vr embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 768px) {
	.vr{
		padding-bottom: 36vh;
		margin-left: auto;
		margin-right: auto;
	}
}

@media screen and (max-width: 480px) {
	.vr{
		padding-bottom: 35vh;
	}
}


/**================================================================================
高師浜-各階のご紹介
================================================================================**/
@media screen and (max-width: 768px) {
	.sec-madori{
		margin-top: 10px;
	}
}


/**================================================================================
高師浜-ギャラリー
================================================================================**/
.gallary_slide{
	padding: 0;
}
.gallary_slide img{
	width: 480px;
}

@media screen and (max-width: 768px) {
	.gallary_slide img{
		width: 200px;
	}
}


/**================================================================================
高師浜-ご用意いただくもの
================================================================================**/
.sec-need .content-box{
	max-width: 600px;
	padding: 50px 40px;
	background: var(--ylw_l);
}
.sec-need .content-box figure{
	width:  calc( ( 100% - 100vw ) / -2 + 490px);
	position: absolute;
	right: calc( ( 100% - 100vw ) / 2 );
	top: 0;
}

@media screen and (max-width: 768px) {
	.sec-need .content-box{
		max-width: 600px;
		padding: 50px 34px;
	}
	.sec-need .content-box figure{
		width: 340px;
	}
}

@media screen and (max-width: 480px) {
	.sec-need .content-box{
		max-width: 600px;
		padding: 30px 34px;
	}
	.sec-need .content-box figure{
		display: none;
	}
}


/**================================================================================
高師浜-ご入居のながれ
================================================================================**/
/**-------------------------------------
flow-list
-------------------------------------**/
.flow-list li{
    display: flex;
	flex-flow: row-reverse;
	padding-bottom: 20px;
	border-bottom: 2px solid var(--ylw);
    position: relative;
}
.flow-list li+li{
	margin-top: 40px;
}
.flow-list li .inner::before{
	content: counter(li, decimal-leading-zero);
    color: var(--ylw);
	font-family: var(--en);
	font-size: 46px;
	line-height: 1.0;
}
.flow-list li::after{
	content: "";
	display: block;
	width: 100%;
	height: 18px;
	background: url(/common/images/balloon_b_ylw.png) no-repeat center top / contain;
	position: absolute;
	left: 0;
	top: 100%;
}
.flow-list li:last-child:after{
	display: none;
}
.flow-list li .inner{
	flex:1;
	padding: 10px 5% 0;
}
.flow-list li figure{
	width: 26%;
}

@media screen and (max-width: 768px) {
	.flow-list li .inner::before{
		font-size: 34px;
	}
	.flow-list li .inner{
		padding: 0 5% 0;
	}
	.flow-list li figure{
		width: 34%;
	}
}

@media screen and (max-width: 480px) {
	.flow-list li{
		flex-flow: column-reverse;
		padding-bottom: 10px;
	}
	.flow-list li+li{
		margin-top: 40px;
	}
	.flow-list li .inner::before{
		display: block;
		margin-top: -2px;
		font-size: 40px;
	}
	.flow-list li .inner{
		padding: 10px 0 0;
	}
	.flow-list li figure{
		width: 170px;
		margin: 0 auto -30px;
		overflow: hidden;
	}
}

/**================================================================================
高師浜-入居費用について
================================================================================**/
.sec-expense .tableB.tb2 th{
	width: 30%;
}
.sec-expense .tableB.tb-kaigo th{
	width: 25%;
	min-width: auto;
}
.tableB.tb-kaigo tr>*+*{
	border-left: 1px dotted #646464;
}
.tableB.tb-kaigo td{
	text-align: center;
}
.ex-service >*{
	width: 48%;
}
.ex-service dl dt{
	display: grid;
	place-items: center;
	min-height: 5em;
	padding: 20px;
}
.ex-service dl dt strong{
	font-size: 1.2em;
}


@media screen and (max-width: 768px) {
	.sec-expense .w800>*{
		width: 100%;
	}
	.sec-expense .tableB.tb2 th{
		width: 30%;
	}
	.sec-expense .tableB.tb-kaigo th{
		width: 25%;
		min-width: auto;
	}
	.ex-service >*{
		width: 47%;
	}
	.ex-service dl dt{
		padding: 10px 10px;
	}
	.ex-service dl dt{
		font-size: 0.8rem;
	}
	.ex-service dl dt strong{
		font-size: 1.1em;
	}

}


/**================================================================================
高師浜-周辺環境・アクセス
================================================================================**/
.map-wrap figure{
	width: 40%;
}
.map-wrap .gmap{
	width: 57%;
}
/* -------------------------------------
env-list
-------------------------------------*/
.env-list li{
	margin-bottom: 20px;
}
.env-list li figcaption{
	padding: 10px;
}

@media screen and (max-width: 480px) {
	.map-wrap .gmap{
		margin-top: 10px;
	}
	.access.t_C{
		text-align: left;
	}

	.env-list li figcaption{
		font-size: 0.7em;
	}
}

/**================================================================================
浜寺昭和町-イントロ
================================================================================**/
.hama-support dl{
	margin-bottom: 30px;
}

/**================================================================================
浜寺昭和町-対応可能な看護・医療体制
================================================================================**/
.guide-handle .content-box.w800{
	margin-top: -80px;
	background: var(--ylw_l);
	position: relative;
}
/*handle-list*/
.handle-list li{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
	padding: 10px;
	line-height: 1.2;
	background: #fff;
	position: relative;
}

@media screen and (max-width: 768px) {
	.guide-handle .content-box.w800{
		width: 90%;
		padding: 20px 10px;
	}
}

@media screen and (max-width: 480px) {
	.guide-handle .content-box.w800{
		margin-top: -50px;
	}
	/*handle-list*/
	.handle-list li{
		margin-bottom: 10px;
		font-size: 0.85em;
	}
	.handle-list li::after{
		width: 30px;

	}
	.handle-list li span{
		padding: 6px;
	}
	.handle-list li em{
		width: 30px;
		font-size: 16px;
	}
}


/**================================================================================
よくあるご質問
================================================================================**/
/*faq-list*/
.faq-list >*{
	padding: 12px 20px;
	background: #fff;
	border: 4px solid var(--grn_ll);
}
.faq-list dt{
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background: var(--grn_ll);
	border-bottom: none;
}
.faq-list dd{
	display: flex;
	margin: 0 0 14px;
	justify-content: flex-start;
	border-top: none;
}
.faq-list dt:before,
.faq-list dd:before{
	margin: 0 15px 0 0;
	width: 40px;
	height: 40px;
	background: rgb(0,165,60);
	background: linear-gradient(150deg, rgba(0,165,60,1) 0%, rgba(96,210,85,1) 70%, rgba(191,255,110,1) 100%);
	color: #fff;
	content: "Q";
	font-family: var(--en);
	text-align: center;
	font-size: 20px;
	font-weight: 300;
	line-height: 40px;
	flex:none;
}
.faq-list dd:before{
	background: var(--ylw);
	content: "A";
}

@media screen and (max-width: 768px) {
	.faq-list{
		min-width: 100%;
	}
	.faq-list >*{
		padding: 14px;
	}
	.faq-list dt{
		font-size: 15px;
	}
	.faq-list dt:before,
	.faq-list dd:before{
		width: 30px;
		height: 30px;
		line-height: 30px;
		font-size: 18px;
		margin: 0 10px 0 0;
	}
}


/**================================================================================
新着情報・スタッフブログ
================================================================================**/
/* news-list */
.news-list li{
	padding: 20px 0;
	border-bottom: 1px solid var(--gray);
}
.news-list a{
	display: block;
}
.news-list .boxLR{
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	margin:0 0 14px;
}
.news-list figure{
	margin-right: 15px;
	width: 130px;
	float: left;
	overflow: hidden;
}
.news-list .text{
	min-height: 120px;
}
.news-list em{
	display: inline-block;
	min-width: 130px;
	max-width: 200px;
	margin-right: 15px;
	padding: 4px 8px;
	color: #fff;
	font-size: 0.9em;
	text-align: center;
	line-height: 1.2;
	background: var(--grn);
}
.news-list time{
	font-size: 0.9em;
	color: var(--grn);
}
.news-list h4{
	margin-bottom: 4px;
	font-size: 1.1em;
}
.news-list p{
	font-size: 0.9em;
}
.news-list .branch{
	display: inline-block;
	min-width: 7em;
	margin-top: 10px;
	padding: 4px 1em;
	font-size: 0.8em;
	text-align: center;
	line-height: 1.0;
	border: 1px solid var(--gray);
	border-radius: 20px;
}
.news-list .boxLR .branch{
	margin: 0 10px 0 0;
}

@media screen and (max-width: 768px) {
	.nb-wrap .inner{
		width: 100%;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-flow: column;
		flex-flow: column;
		padding: 34px;
		box-shadow:3px 3px 10px rgba(0,0,0,0.2);
	}
	.nb-wrap .inner + .inner{
		margin-top: 30px;
	}
	.nb-wrap .btn{
		width: 100%;
	}

	/* news-list */
	.news-list li{
		padding: 15px 0;
	}
	.news-list li em{
		font-size: 13px;
	}
	.news-list figure{
		width: 90px;
	}
	.news-list .text{
		min-height: 84px;
	}
	.news-list h4{
		font-size: 1rem;
	}
}


/**================================================================================
お問い合わせ
================================================================================**/
/* -------------------------------------
cntct-tel
-------------------------------------*/
.cntct-tel{
	padding: 30px;
	line-height: 1.5;
	border:14px solid var(--grn_ll);
}
.cntct-tel a{
	display: block;
}
.sec-cntct-tel .cntct-tel a em{
	width: 10em;
}
.sec-cntct-tel .cntct-tel a[href^="tel"] img{
	width: 20px;
}

@media screen and (max-width: 480px) {
	.cntct-tel{
		padding: 20px 10px;
		border-width:6px;
	}
	.cntct-tel a{
		font-size: 4.7vw;
	}
}