@charset "utf-8";
/*==================================================
	パソコンのみ適応
==================================================*/
@media print, screen and (min-width:769px){
	.dsp_tbs, .dsp_smt { display: none; }
	.cen_pc { text-align: center; }

	.fl { float: left; }	/* 左寄せ（float） */
	.fr { float: right; }	/* 右寄せ（float） */

	/* ヘッダ */
	#header {
		position: relative;
		display: flex;
		justify-content: flex-end;
		align-items: center;
		box-sizing: border-box;
		height: 100px;
		padding-right: 300px;
	}
	#header .box_flex_sp {
		justify-content: flex-end;
	}
	#header h1.title {
		position: absolute;
		top: 0;
		left: 0;
	}
	#header h1.title.dsp_tbs {
		display: none;
	}
	#header h1.title .img {
		width: calc(30vw - 115px);
		display: flex;
		justify-content: center;
		align-items: center;
		display: none;
	}
	#header h1.title::before {
		content: "";
		background: url("../img/title-bg.png") no-repeat top left/100%;
		width: 35vw;
		height: 50vw;
		position: absolute;
		top: -100px;
		left: -50px;
	}
	#header h1.title img {
		position: relative;
		top: 150px;
		z-index: 1;
	}
	#header .contact a img {
		width: 25px;
		margin-right: 8px;
	}
	#header .contact .tel img {
		position: relative;
		top: -2px;
	}
	#header #menu .dsp_side {
		display: none;
	}
	#header #menu ul {
		display: flex;
		margin-left: auto;
	}
	#header #menu li {
		padding: 0 30px;
	}
	#header #menu li a {
		font-size : 14px;
		color : #494291;
		font-weight: 600;
	}
	/* メニュー */
	#menuOverlay {
		background: none;
	}
	#switchBtnArea {
		position: fixed;
		top: 0;
		left: 0;
		width: 100px;
		height: 100%;
		background: #534741;
		z-index: 1;
		opacity: 0;
		transition: .7s;
		pointer-events: none;
	}
	#switchBtnArea.show {
		opacity: 1;
		pointer-events: auto;
	}
	#switchBtnArea #switchBtn {
		width: 25px;
		height: 40px;
		top: 85px;
		left: calc(50% - 15px);
	}
	#switchBtnArea #switchBtn:after {
		top: auto;
		bottom: -25px;
		color: #c7b299;
		font-size : 18px;
		line-height : 17.33px;
	}
	#switchBtnArea #switchBtn span {
		width: 25px;
		height: 1px;
		background: #c7b299;
		left: calc(50% - 13px);
		right: 0;
	}
	#switchBtnArea #switchBtn span:nth-of-type(1) {
		top: 10px;
	}
	#switchBtnArea #switchBtn span:nth-of-type(2) {
		top: 20px;
	}
	#switchBtnArea #switchBtn span:nth-of-type(3) {
		bottom: auto;
		top: 30px;
	}
	#switchBtnArea #switchBtn.btnClose span:nth-of-type(1) {
		top: 20px;
	}
	#switchBtnArea #switchBtn.btnClose span:nth-of-type(3) {
		top: 21px;
	}
	#switchBtnArea .box {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		margin-top: 30px;
	}
	#switchBtnArea .box .img img {
		width: 57px;
	}
	#switchBtnArea .box .sns {
		position: absolute;
		top: 250px;
	}
	#switchBtnArea .box .sns img {
		width: 25px;
	}
	#rwdMenuWrap {
		opacity: 0;
		transition: .7s;
		left: 100px;
		width: calc(100% - 100px);
		z-index: -1;
		background: #998675;
		padding: 8rem;
		box-sizing: border-box;
	}
	#rwdMenuWrap.show {
		opacity: 1;
		z-index: 9999;
	}
	#rwdMenuWrap ul {
		display: flex;
		flex-wrap: wrap;
	}
	#rwdMenuWrap ul.dsp_top {
		display: none;
	}
	#rwdMenuWrap ul li {
		width: 32%;
		min-width: 300px;
		border: none;
		display: block;
		margin-bottom: 100px;
		text-align: left;
	}
	#rwdMenuWrap ul li a {
		background: #998675;
		padding: 0;
		font-size: 30px;
		color: #fff;
		position: relative;
		display: inline-block;
	}
	#rwdMenuWrap ul li a:hover {
		opacity: 1;
	}
	#rwdMenuWrap ul li a::before {
		background: #fff;
		bottom: -6px;
		content: "";
		height: 2px;
		left: 0;
		position: absolute;
		transform: scale(0, 1);
		transform-origin: right top;
		transition: transform .3s;
		width: 100%;
	}
	#rwdMenuWrap ul li a:hover::before {
		transform-origin: left top;
		transform: scale(1, 1);
	}
	#rwdMenuWrap ul li a span {
		display: block;
		font-size: 18px;
		margin: 20px 0 10px;
	}
	#rwdMenuWrap ul li a:after {
		display: none;
	}
	#rwdMenuWrap .dsp_side_contact a {
		width: 150px;
		height: 150px;
		background: #303560;
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		font-size : 14px;
		color : #C7B299;
		font-weight: 600;
		box-shadow: 0 0 40px #fff;
		position: absolute;
		bottom: 100px;
		right: 100px;
	}
	#rwdMenuWrap .dsp_side_contact a img {
		width: 28px;
		margin-bottom: 20px;
	}
	/* コンテナ */
	#wrap, #footer {
		min-width: 1150px;
	}
	#container {
		padding-bottom: 368px;
	}
	.main {
		width: 1100px;
		margin-left: auto;
		margin-right: auto;
	}
	.main_s {
		width: 1000px;
		margin-left: auto;
		margin-right: auto;
		padding-left: 100px;
	}
	/* フッター */
	#footer {
		position: relative;
		min-height: 368px;
		margin-top: -368px;
	}
	#footer .box {
		height: 368px;
		box-sizing: border-box;
		/* 縦方向中央揃え */
		display: flex;
		align-items: center;
		justify-content: flex-start;
		padding: 30px;
	}
	#footer .box ul {
		margin-left: 50px;
	}
	/* サブページ */
	#wrap.sub #header {
		height: 0;
		padding: 0;
	}
	#wrap.sub #header h1.title, #wrap.sub #header #menu {
		display: none;
	}
	#wrap.sub #header::before {
		display: none;
	}
	#wrap.sub #container {
		padding-left: 100px;
	}
	/*--------------------------------------------------
		トップページ
	--------------------------------------------------*/
	/* お知らせ */
	#top_info dl {
		display: flex;
	}
	#top_info dt {
		width: 100px;
	}
	#top_info dd {
		width: calc(100% - 100px);
	}
	/**/
	#top_link .box h2 {
		font-size: 80px;
	}
	#top_link .box a {
		position: relative;
	}
	/*------------------------------------------------*/
	/* 背景固定 */
	html, body, #wrap {
		height: 100%;
	}
	body > #wrap {
		height: auto;
		min-height: 100%;
	}
	/* Hides from IE-mac \*/
	* html .cf {
		height: 1%;
	}
	.cf {
		display: block;
	}
	/* End hide from IE-mac */ 
/*------------------------------------------------*/
}