@charset "utf-8";

/*--------------------------------------------

メインビジュアル

---------------------------------------------*/
.slider {
    width:100%;
    margin:0 auto;
}
.slider img {
    width:100%;
    height:auto;
}

.slick-prev, 
.slick-next {
    display:none!important;
}

.slick-prev {
    display:none;
}

.slick-next {
display:none;
}

.slick-dots {
    text-align:center;
	margin:20px 0 0 0;
}
.slick-dots li {
	display:inline-block;
	margin:0 5px;
	position:relative;
}
.slider-copy_text{
	color:#fff;
	position:absolute;
	bottom:10px;
	right:10px;
	font-size:.8rem;
  text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.9)
}
.slick-dots button {
    color: transparent;
    outline: none;
    width:12px;
    height:12px;
    display:block;
    border-radius:50%;
    background:#ccc;
    border:none;
}
.slick-dots .slick-active button{
	background:#333;
}
.slick-slider div { transition: none; }
/*--------------------------------------------

姫路大津のコピー

---------------------------------------------*/
.fg-copy_body sup{
	font-size:.7rem;
}
.fg-copy_body{
	max-width:1280px;
	margin: 0 auto;
	padding:3rem 0rem;
	gap:1rem;
	display:grid;
	grid-template-columns:1fr 1fr ;
	text-align:center;
	font-size:1.5rem;
	letter-spacing:var(--spacing);
	line-height:1.3;
	color:#30385F;

}
@media (max-width: 1230px) {
.fg-copy_body{
	max-width:90%;
	grid-template-columns:1fr 1fr ;
	font-size:1.1rem;

	}
}

@media (max-width: 768px) {
.fg-copy_body{
	max-width:90%;
	padding:2rem 0rem 2rem;
	gap:.5rem 0;
	grid-template-columns:1fr;
	font-size:1.2rem;
	}
.fg-copy_body ul li{
	font-size:1.3rem;
	}
}

.fg-copy_body div{
	padding:1rem 0rem;
	border-bottom:1px solid #30385F;
}
.fg-copy_body div.lbl01{
	border-top:1px solid #30385F;
}
.fg-copy_body div.lbl02{
	border-top:1px solid #30385F;
}
.large-text{
	font-size:2rem;
}
@media (max-width: 768px) {
.fg-copy_body div{
	padding:1rem 0rem;
}
.fg-copy_body div.lbl01{
	border-top:1px solid #30385F;
}
.fg-copy_body div.lbl02{
	border-top:none;
}
.large-text{
	font-size:1.7rem;
	}
}

.middle-text{
	font-size:1.1rem;
	margin:0px 0 5px;
}
@media (max-width: 768px) {
.middle-text{
	font-size:.95rem;
	}
}

.for_block{
	display:block;
}

/*--------------------------------------------

Information新着情報

---------------------------------------------*/
.news_main{
	padding:5rem 0 ;
}
@media (max-width: 768px) {
.news_main{
	padding:1rem 0 0;
	}
}
.news_body{
	max-width:1280px;
	margin: 0 auto;
	border:1px solid #222;
	box-sizing:border-box;
	padding:3rem 0;
}
@media (max-width: 1280px) {
.news_body{
	max-width:90%;
	}
}
@media (max-width: 768px) {
.news_body{
	max-width:90%;
	padding:1rem 0 2rem;
	}
}

.info-title{
	text-align:center;
	font-size:2.3rem;
	position:relative;
	font-weight:400;

}
.info-title::before{
	content:"";
	position:absolute;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	bottom:47px;
	width:30px;
	height:1px;
	background:#666;
}
.info-title span{
	font-size:1.3rem;
	display:block;
	letter-spacing:2px;
	margin:10px 0 0;
}

.info-scroll{
	max-width:850px;
	margin: 50px auto 0;
	background:#fff;
	padding:2rem;
	font-size:1.15rem;
	box-shadow: rgba(0, 0, 0, 0.04) 0px 3px 5px;
	box-sizing:border-box;
	overflow-y:scroll;
	height:230px;
}
@media (max-width: 768px) {
.info-scroll{
	max-width:90%;
	margin: 50px auto 0;
	padding:1rem 2rem;
	font-size:1.05rem;
	}
}

.info-scroll dl{
	margin:0 0 20px;
	padding:15px 0;
	border-bottom:1px solid #333;
}

.info-scroll dl dt{
	margin:0 0 10px;
	font-size:1rem;
	display:flex;
	align-items:center;
}

.info-scroll dl dt .flgIcon{
	display:inline-block;
	font-size:.9rem;
	padding:0rem .8rem;
	margin:0 0 0 10px;
}
.info-scroll dl dt .other{
	border:1px solid #666;
}
.info-scroll dl dt .new{
	border:1px solid #880000;
	color:#880000;
}
/*--------------------------------------------

CONTENTS

---------------------------------------------*/


.contents_main{
	padding:5rem 0 0;
	max-width:2000px;
	margin: 0 auto;
}
.contents_main img{
	vertical-align: bottom;
	width: 100%;
	height: 473px;
	object-fit: cover;
}
@media (max-width: 1280px) {
.contents_main img{
	vertical-align: bottom;
 	width: 100%;
  height: auto;
  object-fit: cover;
	}
}

.contents_body{
	max-width:1280px;
	margin: 0 auto;
}
@media (max-width: 768px) {
.contents_body{
	max-width:100%;
	}
}
.contents-title{
	color:#8D932E;
	background:url(../images/icon01.png) no-repeat 30px 0%,
	url(../images/icon02.png) no-repeat 90% 80%;
	background-size:30px , 20px;
	max-width:350px;
	margin: 0 auto;
}
@media (max-width: 768px) {
.contents-title{
	background:url(../images/icon01.png) no-repeat 10% 0%,
	url(../images/icon02.png) no-repeat 90% 80%;
	background-size:30px , 20px;

	}
}

.contents-title:before{
	width:0px;
}

/*---グリッド構成----*/
.contents-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	background:#ECEEE1;
}
.contents-grid div{
	position:relative;
}
.contents-grid .grid-minus{
	margin:-2px 0 -1px;
}
.contents-grid .grid-minus02{
	margin:-2px 0 -1px;
}
@media (max-width: 768px) {
.contents-grid .grid-minus ,
.contents-grid .grid-minus02{
	margin:px 0 0px;
	}
}
@media (max-width: 1280px) {
.contents-grid{
	grid-template-columns:1fr;
	}
}
.cmn-block{
	padding:81px 60px;
}
@media (max-width: 768px) {
.cmn-block{
	padding:0px 0px 0px;
	}
}
.left-block{
	text-align:left;
}
@media (max-width: 768px) {
.left-block,
.right-block{
	padding:0 20px 30px;
	
	}
}
.right-block{
	text-align:right;
	background:#ccc;
}
/*---画像の注釈-----*/
.img-photo_text{
	font-size:.8rem;
	font-weight:300;

}
.contents-grid div .color-type_b{
	color:#222;
	
	text-shadow: 0px 0px 10px rgba(145, 141, 123, 1);
}
.contents-grid div .color-type_w{
	color:#fff;
	text-shadow: 0px 3px 7px rgba(0, 0, 0, 1);
}
.contents-grid div .position-left{
	position:absolute;
	left:10px;
	bottom:5px;

}
.contents-grid div .position-right{
	position:absolute;
	right:10px;
	bottom:5px;
}
.contents-grid div .position-right_access{
	position:absolute;
	right:35%;
	bottom:5px;
}

@media (max-width: 1040px) {
.contents-grid div .position-right_access{
	right:35%;
	}
}
@media (max-width: 768px) {
.contents-grid div .position-left{
	left:25px;
	bottom:18px;
}
.contents-grid div .position-right{
	right:30px;
	bottom:18px;
	}
.contents-grid div .position-right_access{
	right:37%;
	bottom:18px;
	}

}
.contents-grid img{
	vertical-align:top;
}
/*---TOPだけの余白---*/
.grid-first{
	margin:80px 0 0;
}
@media (max-width: 768px) {
.grid-first{
	margin:30px 0 0;
	}
}
/*---タイトル----*/
.contents-page_title{
	font-size:2.8rem;
	color:#8D932E;
}
@media (max-width: 768px) {
.contents-page_title{
	font-size:2.3rem;
	}
}

.contents-page_title .eng-title{
	border-bottom:1px solid #8D932E;
	padding:0 130px 0 0;
}
.contents-page_title .jp-title{
	font-size:1.3rem;
	display:block;
	margin:-0px 0 0;
}
@media (max-width: 768px) {
.contents-page_title .jp-title{
	font-size:1rem;
	}
}
.contents-page_text{
	margin:30px 0 50px;
	font-size:1.2rem;
}
@media (max-width: 768px) {
.contents-page_text{
	margin:10px 0 30px;
	font-size:1rem;
	}
}

/*----右寄せ----*/
.contents-page_title_right .eng-title{
	text-align:right;
	padding:0 0px 0 100px;
}
.btn-right_style{
	text-align:right;
}

/*-----背景PC------*/
.pc-right_bg{
	background: linear-gradient(90deg, #ECEEE1 0%, #ECEEE1 90%, #8D932E 90%, #8D932E 100%);
}
.pc-left_bg{
	background: linear-gradient(-90deg, #ECEEE1 0%, #ECEEE1 90%, #8D932E 90%, #8D932E 100%);
}
@media (max-width: 768px) {
.sp-right_bg{
	background: linear-gradient(90deg, #ECEEE1 0%, #ECEEE1 90%, #8D932E 90%, #8D932E 100%);
	}
.sp-left_bg{
	background: linear-gradient(-90deg, #ECEEE1 0%, #ECEEE1 90%, #8D932E 90%, #8D932E 100%);
	}
.sp-photo_style{
	max-width:90%;
	margin: 0 auto 0px;
	padding:20px 0 ;

	}
.pc-right_bg{
	background:#ECEEE1;
	}
.pc-left_bg{
	background:#ECEEE1;
	}
}
/*-----オーダー指定------*/
@media (max-width: 1280px) {
.sp-order_1{
	grid-row:3;
	}
.sp-order_2{
	grid-row:7;
	}
.sp-order_3{
	grid-row:11;
	}
.sp-display{
	height:0px;
	margin:0 0 20px;
	}
}

/*--------------------------------------------

CONTENTS-btnデザイン

---------------------------------------------*/

.more_btn{
	position:relative;
	max-width:170px;
	margin:18px 0 0;
}
.btn-right_style{
	margin: 0 0 0 auto;
}

.cs_btn{
	position:relative;
	max-width:170px;
	border:1px solid #8D932E;
	background:#fff;
	padding: 5px 10px;
	text-align: left;
	font-size:1.2rem;
	border-radius:10px;
	color:#8D932E;
	text-align:center;
	margin:55px 0 0;
}
@media (max-width: 768px) {
.cs_btn{
	text-align: center;
	margin: 0 auto 30px;
	}
}

@media (max-width: 768px) {
.more_btn{
	text-align:center;
	max-width:150px;
	margin: 0 auto 30px;
	}
}
.more_btn::before,
.more_btn::after {
  content: "";
  position: absolute;
 	top: calc(50% - 5px);
  right: 5px;
  width: 6px;
  height: 6px;
  margin: 0 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

.btn{
	position: relative;
	overflow: hidden;
	text-decoration: none;
	display: block;
/*	border: 1px solid #555;*/
	padding: 7px 30px;
	text-align: center;
	outline: none;
	transition: ease .2s;
	background:#8D932E;
	font-size:1.3rem;
	border-radius:10px;
}
.btn span {
	position: relative;
	z-index: 3;
	color:#fff;
}
.btn:hover span{
	color:#fff;
}
.bgskew::before {
	content: '';
	position: absolute;
	top: 0;
	left: -130%;

	background:#333;
	width:120%;
	height: 100%;
	transform: skewX(-25deg);
}

.bgskew:hover::before {
	animation: skewanime .5s forwards;
}

@keyframes skewanime {
	100% {
		left:-10%;
	}
}
/*--------------------------------------------

検討

---------------------------------------------*/
.click_main{
	background:#21357E;
	color:#fff;
	padding:3rem 0 ;
	position:relative;
	margin:30px 0 0;
}
@media (max-width: 768px) {
.click_main{
	padding:2rem 0 ;
	}
}

.click_main dl{
	text-align:center;
	font-size:1.2rem;
}
.click_main dd span{
	margin:0 0 -10px;
}
@media (max-width: 768px) {
.click_main dd span{
	margin:0 0 -10px;
	}
}

.click_main dd {
	font-size:2rem;
}
@media (max-width: 768px) {
.click_main dd {
	font-size:1.4rem;
	}
}
.click_main a{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}
.click_main:hover{
  cursor:pointer;
  background:#222;
}


@keyframes reveal {
from {
	opacity: .3;
	clip-path: inset(45% 20% 45% 20%);
	}
to {
	opacity: 1;
	clip-path: inset(0% 0% 0% 0%);
	}
	}

.revealing-image {
	view-timeline-name: --revealing-image;
	view-timeline-axis: block;
	animation: linear reveal both;
	animation-timeline: --revealing-image;
	animation-range: entry 25% cover 50%;
	margin:0px 0 60px;
}


.photoArea picture::before {
  content: '';
	display: inline-block;
	width: 0;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	background: #640080;
}
.photoArea picture {
  position: relative;
  display: inline-block;
  overflow: hidden;
}
.photoArea.move picture::before {
  animation: barAnime forwards 1.1s 1 ease 0.1s normal;
}
.photoArea picture img {
  opacity: 0;
  transform: scale(1.1);
}
.photoArea.move picture img {
  animation: photoAnime forwards 1.1s 1 ease 0.5s normal;
}
@keyframes barAnime{
	0% {
		left: 0;
		width: 0;
	}
	50% {
		left: 0;
		width: 100%;
	}
	51% {
		left: 0;
		width: 100%;
	}
	68% {
		left: 0;
		width: 100%;
	}
	100% {
		left: 100%;
		width: 0;
	}
}
@keyframes photoAnime{
	0% {
    opacity: 0;
    transform: scale(1.1);
  }
	50% {
    opacity: 0;
    transform: scale(1.1);
  }
	100% {
    opacity: 1;
    transform: scale(1);
  }
}

/*--------------------------------------------

注意事項

---------------------------------------------*/
.notice-body{
	position:relative;
	text-align: justify;
}
.notice-body ul{
	font-size:.85rem;
	max-width:1040px;
	margin: 60px auto ;
}
@media (max-width: 1040px) {
.notice-body ul{
	max-width:90%;
	margin: 0px auto 30px;
	}
}
@media (max-width: 768px) {
.notice-body ul{
	max-width:90%;
	margin: 30px auto ;
	}
}

.notice-body ul li{
	margin:4px 0;
	letter-spacing:var(--spacing);
	max-width:100%;
	line-height:1.2;
}
@media (max-width: 768px) {
.notice-body ul li{
	padding-left:1em;
	text-indent:-1em;
	font-size:.8rem;
	}
}
.notice-body ul li:before{
	content:"※";
}