/******************************************************************************/
/*テーマデザイン*/
/******************************************************************************/
body{
	min-height:100vh;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
}

header{
	margin:0;
	padding:2rem;
	background:#fff3f5;
}

.header__column--flex{
	margin:0 auto 0 auto;
	padding:0;
	width:100%;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	flex-wrap: wrap;
	justify-content: space-between;
	align-items:center;
	gap:1rem;
}


.top__logo--small{
	margin:0;
	padding:0;
	width:260px;
}

.top__logo--small img{
	margin:0;
	padding:0;
}

/******************************************************************************/
/*段組み*/

/*Frontページ*/
.home__column{
	margin:0;
	padding:0;
	width:100%;
	min-height:calc(100vh - 160px);
  	display:flex;
  	flex-direction: column;
}

.home__column main{
	width:100%;
	min-height:100vh;
}

.home__column section{
	width:100%;
	height:100vh;
}

.home__column aside{
	width:100%;
	min-height:100vh;
}

/*2段組み*/
.main__column{
	margin:0 auto 0 auto;
	padding:2rem;
	width:100%;
	min-height:calc(100vh - 160px);
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	
	gap:2rem;
	
 	-webkit-box-orient: horizontal;
  	-webkit-box-direction: reverse;
  	-ms-flex-direction: row-reverse;
  	flex-direction: row-reverse;
  	
}

/*段組み＜コンテンツ＞*/
.main__column main{
	margin:0;
	padding:1rem;
	flex:1 1 calc(100% - 280px - 2rem);
	min-width:280px;
	background:;
}

.site__summary{
	font-size:0.6rem;
	margin:0;
	padding:0;
}

.site__summary strong{
	font-weight:100;
}


/*段組み＜サイドバー＞*/
.main__column aside{
	margin:0;
	padding:1rem;
	flex:1 1 280px;
	background:var(--back-color_bright);
}


/******************************************************************************/
/*FOOTER*/

footer{
	margin:auto 0 0 0;
	padding:2rem;
	width:100%;
	min-height:100vh;
	background:#fff3f5;
}

footer h4{
	margin:0 0 0 0;
	padding:0 0 0 0;
}

footer h5{
	margin:0 0 1em 0;
	padding:0 0 0 0;
}

footer h6{
	margin:0 0 1em 0;
	padding:0 0 0 0;
}

div.ft__3col--fullwidth *{
	font-size:0.75rem;
}

div.ft__3col--fullwidth{
	margin:0;
	padding:0;
	width:auto;
	height:auto;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

/*連絡先表示*/
div.footer__addr--left{
	margin:0 0 1.5em 0;
	padding:0;
	width:100%;
	height:auto;
	max-width:400px;
}@media screen and (max-width:768px){
	div.footer__addr--left{
		max-width:100%;
	}
}

div.footer__addr--left h4{
	width:100%;
	height:auto;
	margin:0;
	padding:0;
}

div.footer__addr--left h4 a{
	display:block;
	margin:0;
	padding:0;
	width:100%;
	height:auto;
}

div.footer__addr--left h4 a img{
	display:block;
	margin:0;
	padding:0;
}@media screen and (max-width:768px){
	div.footer__addr--left h4 a img{
		margin:0 auto 0 auto;
	}
}

div.footer__addr--left address dl{
	margin:0;
	padding:0;
}

div.footer__addr--left address dl em{
	display:inline-block;
	font-style:normal;
	margin-right:0.5em;
}

div.footer__addr--left address dl strong{
	font-weight:normal;
}

div.footer__addr--left address dl span{
	display:inline-block;
	margin-right:0.5em;
	margin-left:0.5em;
}

div.footer__addr--left address dt{
	margin:0;
	padding:0;
	font-weight:800;
}

div.footer__addr--left address dd{
	margin:0;
	padding:0;
}

/*Footer 右側*/

div.footer__contact--right{
	margin:0;
	padding:0;
	width:calc(100% - 400px - 2em);
	height:auto;
}@media screen and (max-width:768px){
	div.footer__contact--right{
		width:100%;
	}
}

/*SNS*/

div.footer__sns--left{
	width:400px;
}

ul.sns__icon--ft{
	margin:0.5em 0 0.5em 0;
	padding:0;
	width:100%;
	height:auto;
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

ul.sns__icon--ft li{
	flex:1 1 40px;
	margin:0 5px 0 5px;
	padding:0;
	background:#FFF;
}

ul.sns__icon--ft li:first-child{
	margin-left:0;
}

ul.sns__icon--ft li:last-child{
	margin-right:0;
}

ul.sns__icon--ft a{
	margin:0;
	padding:10px;
	display:block;
}

ul.sns__icon--ft img{
	margin:0;
	padding:0;
	display:block;
	width:100%;
	height:auto;
}

/*お問合せボタン*/

p.ask__btn--ft{
	margin:0;
	padding:0;
	width:100%;
	height:73px;
}@media screen and (max-width:768px){
	p.ask__btn--ft{
		height:auto;
	}
}

p.ask__btn--ft i{
		display:inline-block;
		font-size:1.4em;
		font-weight:600;
		margin-right:0.25em;
		vertical-align:middle;
		color:var(--text-color_bright);
	}

p.ask__btn--ft a{
	margin:0;
	padding:1em;
	display:block;
	width:100%;
	height:100%;
	font-size:1.4em;
	font-weight:800;
	text-align:center;
	background-color:var(--back-color_dark);
	color:#FFF;
	overflow:hidden;
}

p.ask__btn--ft a:hover{
	background-color:var(--back-color_hover-dark);
	text-decoration:none;
}

/*コピーライト*/
p.p_copyright--bottom{
	text-align:center;
}

/*ページトップボタン*/
p.up__btn--bottom{
	margin:0;
	padding:0;
	position:fixed;
	bottom:0;
	right:0;
	background:var(--back-color_dark);
}

p.up__btn--bottom a{
	margin:0;
	padding:0;
	width:40px;
	height:40px;
	line-height:42px;
	display:block;
	
	color:#FFF;
	text-align:center;
	overflow:hidden;
}

p.up__btn--bottom a *{
	color:#FFF;
	cursor:pointer;
}
