@charset "utf-8";
@media screen and (min-width:641px){

/*--- Default Styling---*/
	.hidden-content {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s, transform 0.5s;
}
	
	.sp{
		display: none;
	}
	
	*{
		font-family: "游明朝体", "Yu Mincho", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	}
	h2{
		color: #325355;
		font-size: 50px;
		margin-top:80px;
		margin-left: 100px
	
		
    }

	h3{
		color: #325355;
		font-size: 26px;
		text-shadow: 1px 2px 3px #EAE9E6;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		padding-bottom: 20px
}

	a{
		color: #325355;
		text-decoration: none;
		cursor: pointer;
		background-repeat: no-repeat;

}
	
	a:hover{
		color:#666;
		text-decoration:underline;
	}

	}
	
/* Reusable Classes */

/* Header */

	header{
		overflow: hidden;
		background-color: #fff;
		width: 90%;
		margin: auto;
}

/* ヘッダーロゴ */

	#header_logo{
		float: left;
		margin: 55px 0px 30px 0;
}

/* ヘッダーナビゲーション */

	#header_nav{
		float: right;
		margin: 85px 0 30px 0;
		color: #325355;
		font-size: 20px
}

	#global_nav{
		display: flex;
		justify-content: space-between;
		width: 600px;
		color:#325355;
		list-style: none;
}

	#global_nav li a{
		display: block;
		padding:10px 30px;
		text-decoration: none;
		position: relative;
		color: #325355;
}

	#global_nav li{
		margin-bottom:20px;
}

	#global_nav li a:hover{
		color:#325355;
}

	#global_nav li a::after {
    content: '';
    /*絶対配置で線の位置を決める*/
    position: absolute;
    bottom: 0;
    left: 10%;
    /*線の形状*/
    width: 80%;
    height: 2px;
    background:#325355;
    /*アニメーションの指定*/
    transition: all .3s;
    transform: scale(0, 1);/*X方向0、Y方向1*/
    transform-origin: center top;/*上部中央基点*/
}

/*現在地とhoverの設定*/
#global_nav li a:hover::after {
    transform: scale(1, 1);/*X方向にスケール拡大*/
}

/* Main - Hero */



/* Loading背景画面設定　*/
	#splash {
/*fixedで全面に固定*/
		position: fixed;
		width: 100%;
		height: 100%;
		z-index: 999;
		background:#F5EEDE;
		text-align:center;
		color:#fff;
	}

/* Loading画像中央配置　*/
	#splash_logo {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}

/* Loading アイコンの大きさ設定　*/
	#splash_logo img {
		width:260px;
	}


	main{
		width: 100%;
		overflow: hidden
}

	#main_hero_img{
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	#main_hero_img img{
    	width: 100%;
}


	#main_hero_highlight {
		margin-top: 80px;
		margin-bottom: 80px;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		letter-spacing: 4px;
		line-height: 3em; 
}



   
	#main_hero_text_pc{
		margin-top: 10px;
	}

/* Main - Menu */

	#container_menu{
		clear: both;
}

	#Menu{
		margin-top:100px;
		transition: 2s;
		opacity: 0;
}

#Menu.active{
	opacity: 1;
}

.active {
    animation-name: fadeUpAnime;
    animation-duration:2s;
    animation-fill-mode:forwards;
    opacity: 0;
}
@keyframes fadeUpAnime{
from {
    opacity: 0;
    transform: translateY(50px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}


	#hand{
		font-size: 40px;
		letter-spacing: 3px;
		line-height: 2em; 
		padding-bottom:30px;
		width: 1280px;
		margin: auto;
		text-align: end;
		transition: 2s;
		opacity: 0;
}

#hand.active{
	opacity: 1;
}

	.main_menu{
		background-color:#F5EEDE;
		padding-top:50px;
		padding-bottom:100px;
	}

	#menu_all{
		width:1200px;
		gap:30px;
		margin-left: auto;
		margin-right: auto;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		transition: 2s;
		opacity: 0;
	
}

	#menu_all.active{
		opacity: 1;
}

	.menu_contents{
		padding-top: 20px;
		padding-bottom:20px;
		text-align: center;
		letter-spacing: 4px;
		background-color: #fff;
}

	#menu_all li:hover {
		opacity:0.5;
		transition:0.3s ease;
	}

	#menu_all li:active {
		transform: translate(5px,5px);
		border-bottom:none;
	}

	.menu_contents p{
    	line-height: 2em; 
		
	}


	.arrow img{
		margin-left: auto;
		text-align: right;
		width:100%;
		padding-right: 10px;
	}
	
	.arrow figure{
		width:10%;
		float:right;
		margin-right:10px;
	}

/* Main - About */
	#main_about{
		background-color:#FFF;
		padding-bottom:30px;
}
#About{
		transition: 2s;
		opacity: 0;
}

#About.active{
	opacity: 1;
}

	#profile{
		width:1200px;
		margin-left: auto;
		margin-right: auto;
		display: flex;
		justify-content: space-between;
		transition: 2s;
		opacity: 0;
}

#profile.active{
	opacity: 1;
}


	#profile li{
		margin:10px;
}

	#name_pc{
		font-size:18px;
		font-weight:bold;
	}

	#profile p{
		padding-top:30px;
		padding-right:80px;
		line-height: 1em; 
		
}	

	#qualification_pc{
		padding-top:20px;
		padding-right:80px;
		padding-bottom: 20px;
}

	#thought_title{
		font-size: 40px;
		text-shadow: 1px 2px 3px #EAE9E6;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		padding-top: 80px;
		padding-bottom: 80px;
		transition: 2s;
		opacity: 0;
}

#thought_title.active{
	opacity: 1;

}

	#thought_all{
		background-color:#F5EEDE;
		padding-top: 3px;
		padding-bottom: 150px;
}

	#thought{
		width:1100px;
		margin-left: auto;
		margin-right: auto;
		display: flex;
		justify-content: space-between;
		transition: 2s;
		opacity: 0;
}

#thought.active{
	opacity: 1;

}

	#main_about_img_benzu{
		margin-left:100px;
}


	#thought p{
		line-height: 3em; 
		margin-right:100px;
}

	#thought1_pc{
		margin-bottom: 20px;
}

	#thought2_pc{
		margin-top:10px;
}


/* Main - Blog */
#Blog{
			transition: 2s;
		opacity: 0;
}

#Blog.active{
	opacity: 1;
}


	.main_blog{
		background-color:#ffffff;
		padding-top: 3px;
		padding-bottom: 100px;
}

	#blog_contents{
		width:1200px;
		margin-left: auto;
		margin-right: auto;
		display: flex;
		justify-content: space-between;
		transition: 2s;
		opacity: 0;
}

#blog_contents.active{
	opacity: 1;
}


#blog_contents li{
	transition:0.2s ease;
}

	#blog_contents li:hover {
		opacity:0.5;
	}

	#blog_contents li:active {
		transform: translate(5px,5px);
		border-bottom:none;
	}

	.main_blog_img{
		padding-top:60px;
}

	.time{
		padding-top: 20px
}

	time{
		font-size: 18px;
	
}
	.blog_title{
		font-size: 24px;

		padding-top: 20px;
		padding-bottom: 15px;
}

	.blog_text_all p{
		line-height: 2em; 
	
	
}

	#read_more{
		text-align:right;
		/* margin-right: 200px; */
		width: 1200px;/*追記*/
		margin: auto;/*追記*/
		text-decoration: none;
		/* cursor: pointer; */
}
	
	/* #read_more:hover{
		color:#666;
		text-decoration:underline;
}	 */
	#read_more a:hover{/*追記*/
		color:#666;
		text-decoration:underline;
	}

	#read_more:active {
		transform: translate(2px,2px);
		border-bottom:none;
}


/* Main - Reserve */
#Reserve{
			transition: 2s;
		opacity: 0;
}

#Reserve.active{
	opacity: 1;
}

#reserve_container{
		transition: 2s;
		opacity: 0;
}

#reserve_container.active{
	opacity: 1;
}



	.main_reserve{
		background-color:#F5EEDE;
		padding-top: 3px;
		padding-bottom: 150px;
}

	#reserve_info{
		line-height: 3em; 
		width: fit-content;
		margin: auto;
}

	hr{
		border-width: 1px 0px 0px 0px;
		border-style: solid;
		border-color: #325355;
		width:85%;
		margin-top:10px;
		margin-bottom:10px;
}

	#yoyaku{
		font-size: 20px;
		padding-top:20px;
		text-align: center;
	
}

	table{
		line-height: 7em;
		width: fit-content;
		margin: auto;

}

	table th{
		font-size: 18px;
}

	table td{
		font-size: 18px;
		padding-left:100px;
}

	table input,select{
		width:100%;
		height:50px;
		padding:5px 10px;
}

	table textarea{
		margin-top:20px;
		width:100%;
		height:100px;
		padding:10px 10px;
		
	
}

#textcount{
		line-height: 0em;
		display: flex;
		margin-left:auto;
		margin-right:auto;
		justify-content: space-between;
	
}

	#textcount p{
		font-size: 14px;
	}
	

	#submit_button{
		width: fit-content;
		margin: auto;
		margin-top:60px;
		position: relative;
		transition: all 0.2s ease;

  }

	#submit_button:hover {
		opacity:0.8;
	}

	#submit_button:active {
		transform: translate(2px,2px);
		border-bottom:none;
	}

	#button{
		background:#325355;
		color:#FFFFFF;
		border: none;
		padding: 15px 30px;
		cursor: pointer;
}

/* Main - Access */

#Access{
		transition: 2s;
		opacity: 0;
}

#Access.active{
	opacity: 1;
}


	.main_access{
		padding-bottom:50px;
}

	#map{
		width: 100%;
		margin-top: 30px;
		margin-left: auto;
		margin-right: auto;
		transition: 2s;
		opacity: 0;
}

#map.active{
	opacity: 1;
}


	#access-info{
		width:90%;
		margin-left: auto;
		margin-right: auto;
		display: flex;
		justify-content: space-between;
		transition: 2s;
		opacity: 0;
}

#access-info.active{
	opacity: 1;
}


	#addess{
		margin-top:20px;
		line-height: 1.5em;
}

	#visitor_info{
		margin-top:20px;
		line-height: 1.5em;
		font-weight:bold;
}

	#bussiness_hours{
		margin-top:20px;
		margin-right:600px;
		line-height: 1.5em;

}
/* Footer */
	#footer_container{
		background-color:#F5EEDE;
		padding:50px;

}


	#footer_logo{
		float: left;
	
	}
	#footer_nav{
		float: right;
		color: #325355;
		margin-top:5px;
		margin-right: 30px;
		font-size: 18px;
	}

	#footer_globalnav{
		display: flex;
		justify-content: space-between;
		width: 500px;	
	}

#footer_globalnav li a{
		display: block;
		padding:10px 30px;
		text-decoration: none;
		color: #333;
		position: relative;
	}

#footer_globalnav li a{
		margin-bottom:20px;
		color: #325355;
}

#footer_globalnav li a:hover{
		color:#325355;
}

#footer_globalnav li a::after {
    content: '';
    /*絶対配置で線の位置を決める*/
    position: absolute;
    bottom: 0;
    left: 10%;
    /*線の形状*/
    width: 80%;
    height: 1.5px;
    background:#325355;
    /*アニメーションの指定*/
    transition: all .3s;
    transform: scale(0, 1);/*X方向0、Y方向1*/
    transform-origin: center top;/*上部中央基点*/
}

/*現在地とhoverの設定*/
#footer_globalnav li a:hover::after {
    transform: scale(1, 1);/*X方向にスケール拡大*/
}

	#copyright{
		background-color: #325355;
}

	#copyright_text{
		margin-left:auto;
		margin-right:auto;
		display: block;
		width: fit-content;
		color:#fff;
		font-size: 14px;
}
	
