@charset "UTF-8";

*{
	box-sizeing:border-box;
	margin:0;
	padding:0;
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: <weight>;
	font-style: normal;
}
ul{
	list-style:none;
}

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


/*―――― ヘッダー ――――*/
header{
	background: rgb(255,255,255);
	background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(128,234,255,1) 100%);	width:100%;
	width:100%;
	padding:0 0 10px;
	position:fixed;
	top:0;
	left:0;
	border-bottom:2px solid #777;
	z-index:90;
}

/*
横幅を決めて左右にできる余白を均等に配分する
これがmargin:0 auto;で要素を左右中心に配置する仕組みです
*/
#head-box{
	display: flex;
	width:1200px;
	margin:0 auto;
}

#header-left{
	display: flex;
	width:1000px;
	justify-content:space-between;
}

.for-img{
	display:block;
	width:250px;
}

.for-img img{
	width:100%;
}

.line{
text-align:right;
}

nav{
	width:600px;
}

nav li{
	border-bottom:3px dotted #274a78;

}

.menu{
	width:600px;
	display:flex;
	justify-content:space-between;
}

.menu__link{
	display: block;
	padding: 8px 20px;
}

.menu__link:hover{
	background-color: #ebebeb;
	color: #666;
}

.drop-menu {
	position: absolute;
	transition: all .3s;
}

.drop-menu__link {
	display: none; 
	background-color: lavender;
	padding: 5px 20px;
}

.drop-menu__link:hover {
	background-color: thistle;
}

/* ドロップダウン出現後のスタイル */
.drop-menu__link.is-active {
	display: block;
}

/* フリーダイヤル */

.tel-box{
	width:200px;
	background: rgb(132,162,212);
	background: linear-gradient(90deg, rgba(132,162,212,1) 0%, rgba(132,162,212,0.7223681709011729) 0%);
	color:#fff;
	text-align:center;
	display:flex;
	flex-direction:column;
	justify-content:center;
}

.tel-box dt{
	font-size:0.7rem;
}

.call-link {
	text-decoration: underline;
	font-size:1.3rem;
}

.call-link:hover {
	color: darkblue;
	cursor:pointer;
}

.tel-box img{
	width:25px;
	position:relative;
	top:1px;
	padding-right:5px;
}
/*―――――レスポンシブ――――――*/

@media screen and (max-width: 1200px) {

	.line{
		position:fixed;
		bottom:10px;
		right:10px;
	}

	.tel-box{
		padding:10px;
		position:fixed;
		bottom:10px;
		left:10px;
		background: rgb(132,162,212);
		background: linear-gradient(90deg, rgba(132,162,212,1) 0%, rgba(132,162,212,0.7223681709011729) 0%);
	}

/* ボタンの基本スタイル */
	#nav-btn{
		position:fixed;
		top:20px;
		right:10px;
		width:75px;
		height:40px;
		border-radius:5px;
		background:#2d596c;
		color:#fff;
		text-align:center;
		line-height:40px;
		font-size:0.8rem;
		cursor:pointer;
	}

/* 疑似要素で「メニュー」文字表示 */
	#nav-btn::before{
		content:'MENU';
	}

/* クラスclose-btnがついたら「閉じる」に上書き */
	#nav-btn.close-btn::before{
		content:'CLOSE';
	}

/* メニューリストの基本スタイルとボタンを押す前の位置 */
	.menu{
		display:block;
		height:100vh;
		position:fixed;
		z-index:90;
		top:92px;
		right:-110vw;
		width:100vw;
		background: rgb(187,200,230);
		background: linear-gradient(90deg, rgba(187,200,230,1) 0%, rgba(187,200,230,0.898838759136467) 0%);		transition:right 1s;
	}

/* ボタンを押した時に上書きされる位置 */
	.menu.btn-active{
		right:0;
	}

/* マウスホバードロップダウンを解除 */
	.drop-menu{
		position: static;
	}

	.drop-menu__link{
		display:block; 
		background: rgb(230,230,250);
		background: linear-gradient(90deg, rgba(230,230,250,1) 0%, rgba(230,230,250,0.9044410000328256) 0%);		padding: 5px 40px;
	}

}

/* -------------ページ全体の背景---------------- */

body{
background:url(../images/111634.jpg);
}

/* ――――メイン画像―――― */

.image-container {
	display: flex;
	justify-content: center;
	align-items: center;
}

.image-container img {
	width: 100%;
	height: auto;
}


/*――――――――葬儀までの流れ――――――――*/

#intro{
	text-align:center;
	line-height:2;
	padding:80px 0;
}
#flow{
	padding:10px 10px 30px 10px;
	text-align:center;
	border-top:2px solid #274a78;

}
#flow h2{
	background:#274a78/*青藍*/;
	color:#fff;
	text-align:center;
	font-size:1.4rem;
	width:90%;
	font-weight:bold;
	border:4px solid #274a78/*青藍*/;
	border-radius:5px;
	padding:10px 0;
	margin:0 auto 30px;
	position:relative;
	top:-40px;
}

#flow ul{
	width:1000px;
	margin:100px auto 50px;
}

.flow-txt{
	width:100%;
	opacity:0;
	transition: all 1.5s;
}

#flow p{
	display:block;
	padding:50px 50px;
	border-radius:5px;
	position:relative;
	margin:50px;
	text-align:left;
	background-color:#fff;

}

#flow span{
	font-size:17px;
	display:block;
	color:#fff;
	width:270px;
	height:46px;
	line-height:46px;
	margin:0 auto;
	padding:5px 10px;
	border-radius:5px;
	position:absolute;
	top:-23px;
	left:20%;
	text-align:center;
	transform:translate(-50%,0);
	background-color:#88b5d3;

}

.fadeIn {
	opacity:1;
}

.flow-txt img{
	width:20px;
	position:relative;
	top:1px;
	padding-right:5px;
}



/*―――――レスポンシブ――――――*/

@media screen and (max-width: 1000px) {
  #flow ul {
    width: 100%;
    flex-direction: column; /* リスト要素を縦に並べる */
  }

  .flow-txt {
    width: 100%;
		margin:20px;

  }

  #flow p {
    padding: 50px;
    margin: 20px;
		margin-top:20px;

  }

  #flow span {
    width: auto;
    height: 40px;
    line-height: 40px;
  }

  .flow-txt img {
    width: 18px;
  }
}

@media screen and (max-width: 700px) {
  #flow h2 {
    font-size: 1.2rem;
  }

  #flow p {
    font-size: 0.9rem;
  }

  #flow span {
    font-size: 14px;
  }
}
footer{
	background-color:#274a78/*青藍*/;
	color:#fff;
	text-align:center;
}
