 @charset "utf-8"; 
 
  
/* VISUAL    ================================================================================== */
.main_visual							{position:relative; overflow: hidden;}
.main_visual li							{position:relative; height:640px; }	
.main_visual .visual_item				{content:''; animation:imgScale 3s both;}
.main_visual li:first-child .visual_acc	{display:none;}

.visual_acc								{position:absolute; width:100%; top:23%; z-index:100; text-align:left; color:#fff; }
.visual_acc dt							{font-size:3.2em; font-weight:700; letter-spacing:-4px; line-height:160%; text-shadow: 3px 3px 5px rgba(0,0,0,0.2);}	
.visual_acc dt span						{display:block; font-size:30px; font-weight:100; letter-spacing:-2px; line-height:100%; }
.visual_acc dd							{font-sizE:1.25em; line-height:160%; letter-spacing:-1px; margin:30px 0 0 0;}	

@keyframes imgScale {
	0% {transform:scale(1.2)}
	100% {transform:scale(1)}
}



/* NOTICE   ================================================================================== */
.cont01									{position:relative; padding:80px 0;}
.cont01:after							{content:''; display:block; clear:both;}

.main_notice							{position:relative; float:left; width:calc(100% - 540px); border:1px solid #ddd; height:430px;}
.main_news_tab_title					{position:relative; border-bottom:1px solid #e3e3e3; margin:40px; margin-bottom:0;} 
.main_news_tab_title p					{position:relative; display:inline-block; margin-right:25px;}
.main_news_tab_title p:after			{content:''; position:absolute; top:12px; left:-15px; width:4px; height:4px; border-radius:100%; background:#ddd;}
.main_news_tab_title p:last-child		{margin:0;}
.main_news_tab_title p:first-child:after	{display:none;}
.main_news_tab_title p a				{display:block; font-size:1.4em; color:#999; letter-spacing:-1px; padding:0 5px 20px 5px; }
.main_news_tab_title p a.on				{color:#be222f; border-bottom:3px solid #be222f; font-weight:700;}
.main_news_tab_title .more				{display:block; position:absolute; right:0; top:-5px; width:30px; height:30px; cursor:pointer;}
.main_news_tab_title .more:after		{position:absolute; content:''; width:23px; height:1px; background:#222; left:4px; top:15px;}
.main_news_tab_title .more:before		{position:absolute; content:''; width:1px; height:23px; background:#222; top:4px; left:15px;}

.main_notice .wrap						{padding:40px; padding-top:0;}
.main_notice dl							{overflow:hidden; padding:25px 0; }
.main_notice .date						{float:left; width:75px; height:75px; border:1px solid #ddd; text-align:center; }
.main_notice .date p					{margin-top:15px; color:#333; font-size:1.6em; font-weight:bold; letter-spacing:-1.0px; }
.main_notice .date em					{font-style:normal; font-weight:400; margin-top:3px; color:#999; font-family:'Roboto', sans-serif; font-size:0.8em;}
.main_notice .txt						{padding:0 0 0 95px;}
.main_notice dl dt						{font-size:1.1em; font-weight:500; color:#414141; margin-bottom:8px; overflow:hidden; text-overflow:ellipsis; -o-text-overflow:ellipsis; white-space:nowrap; }
.main_notice dl dd						{color:#797979; height:40px;line-height:20px; font-size:0.95em; letter-spacing:0; overflow:hidden; text-overflow: ellipsis;-o-text-overflow: ellipsis; display:-webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical; word-wrap: break-word; }
.main_notice ul							{overflow:hidden; border-top:1px solid #ddd; padding:25px 0 0 0; }
.main_notice ul li						{position:relative; float:left; width:calc(100% - 70px);  padding:0 0 0 12px; margin-bottom:7px; overflow: hidden; text-overflow:ellipsis; -o-text-overflow:ellipsis; white-space:nowrap;} 
.main_notice ul li:last-child			{margin-bottom:0; }
.main_notice ul li:after				{position:absolute; content:''; display:block; left:0; top:10px; width:3px; height:3px; border-radius:100%; background:#a4a6ad;}
.main_notice ul li a					{color:#555; letter-spacing:-1px; }	
.main_notice ul em						{font-style:normal; float:right; color:#a2a2a2; font-size:0.9em; }
.main_notice .nolist					{padding:38px 0; text-align:center; font-weight:normal !important; color:#666 !important; }

.main_bn								{position:relative; float:right; width:500px; height:430px;}
.main_bn .txt							{overflow:hidden; padding:0 0 0 10px;}
.main_bn .txt dt						{float:left; font-size:2.2em; line-height:100%; font-weight:700; padding:5px 0 0 0; color:#5a84e3; letter-spacing:-1px;}
.main_bn .txt dd						{padding:0 0 0 210px; font-size:0.9em; color:#999; line-height:120%; letter-spacing:-1px;}
.main_bn .txt dd span					{display:block; font-size:18px; font-weight:500; color:#414141; margin:5px 0 0 0;}
.main_search							{position:relative; width:100%; box-sizing:border-box; border-radius:50px; overflow:hidden; margin:15px 0 20px 0;}
.main_search .btn_search				{position:absolute; top:0; right:5px; width:40px; height:60px; cursor:pointer;}
.main_search .btn_search img			{width:25px; margin:15px 0 0 0;}
.main_search #search_stx				{background:linear-gradient(45deg, #7e67e5, #02cbdf); width:100%; height:60px; padding:0 60px 0 25px ; border:0; color:#fff; box-sizing:border-box; letter-spacing:-0.5px;}
.main_search input::placeholder			{color:#fff; }
.main_bn ul								{position:relative; display: grid; grid-template-columns: repeat(3, 1fr); gap:5px 5px; }
.main_bn ul:after						{content:''; display:block; clear:both;}
.main_bn ul li							{min-height:145px; background:#edf1f3; border-radius:5px; text-align:center;}
.main_bn ul li:first-child,
.main_bn ul li:nth-child(2),
.main_bn ul li:hover					{background:#0ca9cb;}
.main_bn ul li:nth-child(3n)			{margin-right:0;}
.main_bn ul li img						{display:block; width:62px; margin:0 auto 15px auto;}
.main_bn ul li:first-child img			{width:64px;}
.main_bn ul li a						{padding:25px 0 0 0; display:block; color:#414141; font-weight:500; font-size:1.1em; letter-spacing:-0.75px;}
.main_bn ul li:first-child a,
.main_bn ul li:nth-child(2) a,
.main_bn ul li:hover a					{color:#fff;}
.main_bn ul li:last-child a				{font-size:1em;}

.famsite								{position:absolute; right:-220px; top:80px; z-index:1; text-align:center; width:160px;}
.famsite p								{background:#1d3b66; color:#fff; font-size:0.95em; letter-spacing:-1px; padding:5px 0;}
.famsite ul								{border:1px solid #dfdfdf; margin-top:5px;}
.famsite ul li							{border-bottom:1px solid #dfdfdf; padding:5px 0; background:#fff;}
.famsite ul li:last-child				{border:0;}
.famsite img							{width:85%;}


/* LOUNGE   ================================================================================== */
.cont02									{position:relative; overflow:hidden; padding:80px 0; background:#f1f2f3;}
.cont02 h2								{font-size:2.1em; letter-spacing:-3px; font-weight:300; color:#222; }
.cont02 h2 span							{color:#be222f;}
.cont02 .h2_stxt						{color:#777; margin:25px 0 40px 0; letter-spacing:-0.75px;}

.lounge_list li							{position:relative; float:left; margin:0 15px; overflow:hidden;}
.lounge_list figure						{overflow:hidden; height:200px;} 
.lounge_list figure img					{width:100%; height:100%; object-fit:cover; -webkit-transform:scale(1); -moz-transform:scale(1); -ms-transform:scale(1);  -o-transform:scale(1);  
										transform:scale(1); -webkit-transition:.3s; -moz-transition:.3s; -ms-transition:.3s; -o-transition:.3s; transition:.3s;}
.lounge_list dl							{padding:25px 0; border-bottom:1px dashed #b9bbbc; height:200px;}
.lounge_list dl dt						{font-size:1.2em; font-weight:700; color:#414141; letter-spacing:-1px; margin-bottom:15px; overflow:hidden; text-overflow:ellipsis; -o-text-overflow:ellipsis; white-space:nowrap;}
.lounge_list dl dt span					{display:inline-block; background:#6f6f6f; color:#fff; font-size:14px; line-height:30px; height:32px; padding:0 12px; margin-right:20px;}
.lounge_list dl dd						{line-height:160%; color:#797979; font-size:0.95em; overflow:hidden; text-overflow:ellipsis; -o-text-overflow:ellipsis; white-space:nowrap; letter-spacing:-0.5px; margin:1px 0;}
.lounge_list dl dd span					{display:inline-block; color:#000; width:100px;}
.lounge_list li:hover figure img		{-webkit-transform:scale(1.1); -moz-transform:scale(1.1); -ms-transform:scale(1.1);    -o-transform:scale(1.1); transform:scale(1.1);}

.list_page								{position:absolute; top:30px; right:0;}
.list_page .page_btn					{float:left; margin-right:5px;}
.list_page .page_btn p					{float:left; background: #fff; width:42px; height:42px; border:1px solid #d6d6d6; margin-left:-1px; cursor:pointer;}
.list_page .page_btn .prev				{display:inline-block;zoom:1;*display:inline;margin-top:13px; margin-left:15px; border:solid #000; border-width:0 1px 1px 0;border-radius:1px;  padding:7px; transform:rotate(135deg);  }
.list_page .page_btn .next				{display:inline-block;zoom:1;*display:inline;margin-top:13px; margin-left:9px; border:solid #000; border-width:1px 1px 0 0;border-radius:1px;  padding:7px; transform:rotate(45deg);  }
.list_page .page_btn p:hover			{background:#be222f; border-color:#be222f;}
.list_page .page_btn p:hover span		{border-color:#fff;}
.list_page .page_more					{float:right; height:42px; line-height:40px; border:1px solid #d6d6d6; background:#fff;  font-size:0.9em;}
.list_page .page_more a					{display:block; color:#909090; padding:0 20px; font-weight:500;}
.list_page .page_more:hover				{background:#be222f; border-color:#be222f;}
.list_page .page_more:hover a			{color:#fff;}

.page_btn2								{display:none;}


/* GALLERY   ================================================================================== */
.cont03									{position:relative; overflow:hidden; padding:80px 0; background:#fff;}
.cont03:after							{display:none; position:absolute; bottom:0; left:0; content:'';  width:100%; height:100px; background:#03a1ac;}
.main_phlist							{position:relative; overflow:hidden; z-index:1;}
.main_phlist li							{position:relative; float:left; margin:0 10px; }
.main_phlist figure						{overflow:hidden; height:200px; border:1px solid #eaeaea;} 
.main_phlist figure img					{width:100%; height:100%; object-fit:cover; transition: all 0.5s ease;}
.main_phlist dl							{margin-top:25px;}
.main_phlist dl dt						{font-size:1.1em; font-weight:700; letter-spacing:-1.5px; color:#333; letter-spacing:-1px; overflow: hidden; text-overflow:ellipsis; -o-text-overflow:ellipsis; white-space:nowrap; }
.main_phlist dl p						{color:#797979; margin:10px 0 20px 0; height:75px; letter-spacing:-0.75px; line-height:1.6; overflow:hidden; text-overflow: ellipsis;-o-text-overflow: ellipsis; display:-webkit-box;-webkit-line-clamp: 3;-webkit-box-orient: vertical; word-wrap: break-word; }
.main_phlist dl em						{font-style:normal; color:#a2a2a2; font-size:0.9em;}
.main_phlist .nolist					{float:none; width:100%; padding:60px 0; text-align:center; color:#666 !important; }
.main_phlist li:hover figure img		{transform: scale(1.03);}
	

/* FOOT BANNER    ================================================================================== */
.ft_banner								{position:relative; text-align:center; line-height:120px; overflow:hidden; border-top:1px solid #dfdfdf;}
.ft_banner li							{display:inline-block; width:14%;}
.ft_banner .arrow p						{position: absolute; content: ''; display: block; top: 45%; cursor:pointer;  width: 12px; height: 12px; -webkit-transform: rotate(45deg); transform: rotate(45deg);}
.ft_banner .prev						{left:0;  border-left: 3px solid #d1d1d1; border-bottom: 3px solid #d1d1d1; }                    
.ft_banner .next						{right:0; border-top: 3px solid #d1d1d1; border-right: 3px solid #d1d1d1;}
.ft_banner .arrow p:hover				{border-color:#be222f;}



@media screen and (max-width:1680px) {

	.famsite						{position:fixed; top:20%; right:0; z-index:999;}

}


/* screen 1200*/
@media screen and (max-width:1200px) {

	.visual_acc						{text-align:center;}
	.cont01, .cont02				{padding:80px 15px;}

}

/* screen 1024 */
@media screen and (max-width:1024px) {

	.main_visual li					{height:480px;}
	.visual_acc						{padding:0 20px; top:30%;}
	.visual_acc dt span				{font-size:23px;}
	.visual_acc dt					{font-size:2.6em;}
	.visual_acc dd					{font-size:1.05em; margin:10px 0 0 0;}

	.cont01, .cont02				{padding:30px 15px;}
	.main_notice					{float:none; width:100%; height:370px; margin:20px 0 0 0; }
	.main_notice .wrap				{padding:20px; padding-top:0;}
	.main_notice dl					{padding:20px 0;}
	.main_notice ul					{padding:20px 0 0 0;}
	.main_news_tab_title			{margin:20px; margin-bottom:0;}
	.main_news_tab_title p a		{font-size:1.1em; padding:0 5px 10px 5px;}

	.main_bn						{float:none; width:100%; overflow:hidden; height:100%;}
	.main_bn .txt dt				{font-size:2em;}
	.main_bn .txt dd				{padding:0 0 0 190px;}
	.main_search #search_stx		{height:54px;}
	.main_search .btn_search		{height:54px;}

	.cont02 h2						{font-size:1.6em;}
	.cont02 .h2_stxt				{margin:15px 0 25px 0; font-size:0.9em;}

	.list_page						{top:20px;}
	.list_page .page_btn p			{width:38px; height:38px;}
	.list_page .page_btn .prev, .list_page .page_btn .next		{padding:5px;}
	.list_page .page_more			{height:38px; line-height:36px;}
	.list_page .page_more a			{padding:0 15px; font-size:0.8em; }

	.lounge_list li					{margin:0 20px 0 0;}
	.lounge_list figure				{float:none; width:100%;}
	.lounge_list dl					{padding:20px 0; float:none; width:100%; height:100%; border-top:0;}
	.lounge_list dl dt				{font-size:1.1em; margin-bottom:10px;}
	.lounge_list dl dt span			{font-size:13px; padding:0 10px; margin-right:15px; height:30px;}
	.lounge_list dl dd				{font-size:0.9em; margin:0;}
	.lounge_list dl dd span			{width:90px;}

	.cont03:after					{height:155px;}
	.main_phlist dl					{margin-top:20px;}
	.main_phlist dl p				{height:45px; -webkit-line-clamp:2; margin:10px 0;}

	.ft_banner						{height:100px; line-height:100px;}
	.ft_banner img					{width:80%;}

	.famsite						{display:none;}

	.page_btn2						{display:block;}
}


/* screen 768 */
@media screen and (max-width:768px) {

	.main_visual li					{height:380px;}
	.main_visual .bx-controls-direction	{display:none;}
	.visual_acc dt span				{font-size:20px;}
	.visual_acc dt					{font-size:2em;}
	.visual_acc dd					{font-size:0.9em; line-height:140%;}

	.main_bn ul li					{min-height:100%; }
	.main_bn ul li img				{margin:0 auto 5px auto;}
	.main_bn ul li a				{font-size:0.95em; padding:20px 0;}

	.list_page						{top:-5px;}
	.ft_banner						{height:80px; line-height:80px;}

}



/* screen 580 */
@media screen and (max-width:580px) {

	.main_visual li					{height:320px;}
	.visual_acc						{top:22%;}

	.main_bn ul						{grid-template-columns: repeat(2, 1fr);}
	.main_bn .txt dt				{float:none; padding:0 0 10px 0; font-size:1.6em;}
	.main_bn .txt dd				{padding:0;}
}
