/*----------全体の css----------*/
body {
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
	max-width: 10000px;
	background-color: #f8f8f8;
}

main {
	float: left;
	width: 75%;
	padding: 9px;
	box-sizing: border-box;
	text-align: center;
}

h1, h2, h3 {
	margin: 10px 0;
}

h2.head {
	color:#222;
}

@media screen and (max-width: 714px) {
	h2.head {
		border-bottom: 3px solid #222;
		color:#222;
		width: 60%;
		text-align: center;
		margin: 0 auto;
		padding-top: 40px;
		margin-bottom: 20px;
	}
}

h2.head2 {
	color:#222;
	padding-top: 60px;
}
  
hr {
	width: 90%;
}
.map-image {
	width: 88%;
}

article {
	color: #272727;
	padding: 9px;
}

aside {
	float: right;
	width: 25%;
	padding: 9px;
	box-sizing: border-box;
}

.container {
	overflow: hidden;
}

.container::after {
	content: "";
	clear: both;
	display: block;
}

/* もっと見るの装飾 */
.button {
	margin: 30px;
}
#next {
	color:#222;
	font-size:26px;
	margin: 0 auto;
	text-decoration: none;
	padding-top: 40px;
	padding-bottom: 30px;
}
#next:hover  {
	color:#222;
	font-size:26px;
	margin: 0 auto;
	text-decoration: underline;
	padding-top: 40px;
	padding-bottom: 30px;
	opacity: 0.5;
}

/*全体のボタンcss*/
.readbtn {
	cursor: pointer;
    display: block;
    width: 20%;
    max-width: 300px;
    margin: 15px auto;
	margin-bottom: 50px;
    padding: 5px;
    border: 0;
    border-radius: 30px;
    color: ghostwhite;
    font-size: 20px;
    background: #00afcc;
    box-shadow: 0 4px 0 hsl(200deg 35% 50%), 0 6px 0 rgba(0,0,0,.2);
    transition: color .3s, background .3s, box-shadow .3s, transform 0.3s;
    font-weight: bold;
}


.readbtn:hover {
	color: white;
	background: hsl(200deg 62% 75%);
	box-shadow: 0 3px 0 hsl(200deg 47% 60%), 0 6px 0 rgba(0,0,0,.2);
	transform: translateY(3px);
}
.readbtn:active {
	color: gainsboro;
	background: hsl(200deg 47% 60%);
	box-shadow: 0 0 0 hsl(200deg 37% 50%), 0 0 0 rgba(0,0,0,.2);
	transform: translateY(6px);
	transition-duration: .1s;
	
}


@media screen and (max-width: 960px) {
	/* 959px以下に適用されるCSS（タブレット用）
     */
      body {
        margin-left: auto;
        margin-right: auto;
        margin-top: 0;
        margin-bottom: 0;
        padding: 0;
        max-width: 10000px;
      }
  
      main {
        float: left;
        width: 70%;
        padding: 9px;
        box-sizing: border-box;
        text-align: center;
      }
      h1, h2, h3 {
        margin: 10px 0;
      }
     
      article {
        color: #272727;
        padding: 9px;
      }
      aside {
        float: right;
        width: 30%;
        padding: 9px;
        box-sizing: border-box;
      }
      .container {
        overflow: hidden;
      }
      .container::after {
        content: "";
        clear: both;
        display: block;
      }
    
	  .readbtn {
		width: 25%;
		font-size: 18px;
	}

}
@media screen and (max-width: 751px) {
      body {
        margin-left: auto;
        margin-right: auto;
        margin-top: 0;
        margin-bottom: 0;
        padding: 0;
        max-width: 10000px;
      }
   
      main {
        float: left;
        width: 100%;
        padding: 9px;
        box-sizing: border-box;
        text-align: center;
      }
      h1, h2, h3 {
        margin: 10px 0;
      }
    
      article {
        color: #000;
        padding: 9px;
      }
      aside {
        float: right;
        width: 100%;
        padding: 9px;
        box-sizing: border-box;
        margin: auto;
      }
      .container {
        overflow: hidden;
      }
      .container::after {
        content: "";
        clear: both;
        display: block;
      }
}

@media screen and (max-width: 480px) {
	.readbtn {
		width: 25%;
		font-size: 14px;
	}
}
/*----------slide css----------*/
/* 全体設定 */
.css-carousel-slider4 {
	width: 90%;
	overflow: hidden;
	position: relative;
	margin: 0 auto;
}
.css-carousel-slider4 img {
	width: 100%;
	height: 100%;
	vertical-align: top;
}

/* スライド設定 */
.css-carousel-slider4 .slide-wrap {
	width: 500%;
	position: absolute;
	display: flex;
	top: 0;
	left: 0;
	z-index: 0;
	animation: css-carousel-slider4 20s infinite;
	animation-delay: 2s;
}
.css-carousel-slider4 .slide-wrap-main {
	width: 100%;
	z-index: 1;
	animation: css-carousel-slider-main4 20s infinite;
	animation-delay: 2s;
}
.css-carousel-slider4 .slide {
	width: 100%;
}

/* スライダーアニメーションの設定 */
@keyframes css-carousel-slider4 {
	0% { transform: translateX(0); }

	15% { transform: translateX(calc(1 / 5 * -100%)); }
	20% { transform: translateX(calc(1 / 5 * -100%)); }

	35% { transform: translateX(calc(2 / 5 * -100%)); }
	40% { transform: translateX(calc(2 / 5 * -100%)); }

	55% { transform: translateX(calc(3 / 5 * -100%)); }
	60% { transform: translateX(calc(3 / 5 * -100%)); }

	75% { transform: translateX(calc(4 / 5 * -100%)); }
	80% { transform: translateX(calc(4 / 5 * -100%)); }

	95% { transform: translateX(calc(5 / 5 * -100%)); }
	100% { transform: translateX(calc(5 / 5 * -100%)); }
}

@keyframes css-carousel-slider-main4 {
	0% { transform: translateX(100%); }
	80% { transform: translateX(100%); }
	95% { transform: translateX(0%);}
}

.s-main {
	display: flex;
	margin: 30px;
}

.s-contents1 {
	width: 40%;
}

.s-contents2 {
	width: 60%;
}

@media screen and (max-width: 714px) {
	.s-main{
		margin: 30px;
		display: inline;
	}
	.s-contents1{
		width: 80%;
		margin: 0 auto;
	}
  	.s-contents2{
    	width: 100%;
    }
}
/*----------ここまで----------*/

/*----------pr css----------*/
@media screen and (max-width: 714px) {
.cp_box *, .cp_box *:before, .cp_box *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.cp_box {
	position: relative;
}
.cp_box label {
	position: absolute;
	z-index: 1;
	bottom: 0;
	width: 100%;
	height: 140px; /* グラデーションの高さ */
	cursor: pointer;
	text-align: center;
}
.cp_box input:checked + label {
	background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 0%;
    width: 16rem;
    content: ' 続きを読む';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #FFA500;
}

.cp_box label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 0%;
    width: 16rem;
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #FFA500;
}

.cp_box input {
	display: none;
}
.cp_box .cp_container {
	overflow: hidden;
	height: 250px; /* 開く前に見えている部分の高さ */
	transition: all 0.5s;
	margin-bottom: 40px;
}
.cp_box input:checked + label {
	/* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box input:checked + label:after {
	font-family: FontAwesome;
	content: ' 閉じる';
}
.cp_box input:checked ~ .cp_container {
	height: auto;
	padding-bottom: 80px; /* 閉じるボタンのbottomからの位置 */
	transition: all 0.5s;
}










.cp_box2 *, .cp_box2 *:before, .cp_box2 *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.cp_box2 {
	position: relative;
}
.cp_box2 label {
	position: absolute;
	z-index: 1;
	bottom: 0;
	width: 100%;
	height: 140px; /* グラデーションの高さ */
	cursor: pointer;
	text-align: center;
}
.cp_box2 input:checked + label {
	background: inherit; /* 開いた時にグラデーションを消す */
}
.cp_box2 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 0%;
    width: 16rem;
    content: 'Read more';
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #FFA500;
}

.cp_box2 label:after {
    line-height: 2.5rem;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 0%;
    width: 16rem;
    transform: translate(-50%, 0);
    letter-spacing: 0.05em;
    color: #ffffff;
    border-radius: 20px;
    background-color: #FFA500;
}

.cp_box2 input {
	display: none;
}
.cp_box2 .cp_container {
	overflow: hidden;
	height: 250px; /* 開く前に見えている部分の高さ */
	transition: all 0.5s;
	margin-bottom: 40px;
}
.cp_box2 input:checked + label {
	/* display: none ; 閉じるボタンを消す場合解放 */
}
.cp_box2 input:checked + label:after {
	font-family: FontAwesome;
	content: 'Close';
}
.cp_box2 input:checked ~ .cp_container {
	height: auto;
	padding-bottom: 80px; /* 閉じるボタンのbottomからの位置 */
	transition: all 0.5s;
}





.txtbox {
	box-sizing: border-box;
		width: 100%;
	/* max-width: 500px; */
	/* height: 100px; */
	padding: 16px 20px;
	font-size: 14px;
	text-align: center;
	color: #000000;
	background: rgba(255, 204, 153, 0.10);
	border: 4px dashed #ffa64d;
	border-radius: 16px;
	margin-bottom: 30px;
	line-height: 30px;
	text-align: left;
}
	
.pr {
	width: 90%;
	margin: 0 auto;
}
}

@media screen and (min-width: 715px) {
	.cp_box *, .cp_box *:before, .cp_box *:after {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.cp_box {
		position: relative;
	}
	.cp_box label {
		position: absolute;
		z-index: 1;
		bottom: 0;
		width: 100%;
		height: 140px; /* グラデーションの高さ */
		cursor: pointer;
		text-align: center;
		display: none;
	}
	.cp_box input:checked + label {
		background: inherit; /* 開いた時にグラデーションを消す */
	}
	.cp_box label:after {
		line-height: 2.5rem;
		position: absolute;
		z-index: 2;
		bottom: 20px;
		left: 0%;
		width: 16rem;
		content: 'さらに見る';
		transform: translate(-50%, 0);
		letter-spacing: 0.05em;
		color: #ffffff;
		border-radius: 20px;
		background-color: #FFA500;
	}
	.cp_box input {
		display: none;
	}
	.cp_box .cp_container {
		overflow: hidden;
		/* height: 250px; */
		transition: all 0.5s;
	}
	.cp_box input:checked + label {
		/* display: none ; 閉じるボタンを消す場合解放 */
	}
	.cp_box input:checked + label:after {
		font-family: FontAwesome;
		content: ' 閉じる';
	}
	.cp_box input:checked ~ .cp_container {
		height: auto;
		padding-bottom: 80px; /* 閉じるボタンのbottomからの位置 */
		transition: all 0.5s;
	}
	
	
	
			.txtbox {
				box-sizing: border-box;
				width: 100%;
				/* max-width: 500px; */
				/* height: 100px; */
				padding: 16px 20px;
				font-size: 16px;
				text-align: center;
				color: #000000;
				background: rgba(255, 204, 153, 0.10);
				border: 4px dashed #ffa64d;
				border-radius: 16px;
				margin-bottom: 30px;
				line-height: 30px;
				text-align: left;
		}
		
	.pr {
		width: 90%;
		margin: 0 auto;
	}
}
	
.menuWrap .tabItem {
  width: 200px;
  height: 50px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0.09em;
  line-height: 50px;
  text-align: center;
  background: #c1c1c1;
  transition: all 0.3s ease-in-out;
  display: inline-block;
  cursor: pointer
}
.menuWrap .tabItem:hover { background: #FFA500; }
.menuWrap input[name="tabItem"] { display: none; }
.menuWrap .tabContent {
  display: none;
  overflow: hidden;
}
.menuWrap #etxt + label,
.menuWrap #drink + label {
  margin-left: 20px;
}
.menuWrap #txt:checked ~ #txtContent,
.menuWrap #etxt:checked ~ #etxtContent,
.menuWrap #drink:checked ~ #drinkContent {
  display: block;
}
.menuWrap input:checked + .tabItem { background: #FFA500; }

@media screen and (max-width: 576px) {
.menuWrap .tabItem {
    width: 130px;
    height: 50px;
    color: #fff;
    font-size: 1.6rem;
    letter-spacing: 0.09em;
    line-height: 50px;
    text-align: center;
    background: #c1c1c1;
    transition: all 0.3s ease-in-out;
    display: inline-block;
    cursor: pointer;
}
}
/*----------ここまで----------*/


/*----------spot css----------*/
.cp_card02 {
    font-size: 14px;
    line-height: 1.45em;
    position: relative;
    overflow: hidden;
    height: 240px;
    /* margin: 0 auto 1.6%; */
    margin: 5px;
    border-radius: 3px;
    background: #ffffff;
    -webkit-box-shadow: 0 3px 7px -3px rgb(0 0 0 / 30%);
    box-shadow: 0 3px 7px -3px rgb(0 0 0 / 30%);
}

.cp_card2 a{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
  }



.spotimage {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.spotimage a{
	text-decoration: none;
}

.spotimage a:hover{
	opacity: 0.8;
}


.spotimages1 {
	width: 45%;
	position: relative;
	margin: 5px;
	z-index: 1;
	box-sizing: border-box;
}



/*㍶、タブレットサイズの横幅合わせ*/
@media screen and (max-width: 1080px) {
	.spotimages1 {
		width: 100%;
		position: relative;
		margin: 0px 30px;
		z-index: 1;
		box-sizing: border-box;
  	}
}

/*スマホサイズの横幅合わせ*/
@media screen and (max-width: 713px) {
	.spotimages1 {
		width: 100%;
		position: relative;
		margin: 0px 15px;
		z-index: 1;
		box-sizing: border-box;
  	}

	

}

.text-spot {
    font-size: 11px;
	padding-bottom: 10px;

    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5; /* 任意の行数を指定 */
	height: 100px;
	padding-left: 25px;
}

@media screen and (max-width: 713px) {
.text-spot {
    font-size: 11px;
	padding-bottom: 10px;

    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5; /* 任意の行数を指定 */
	height: 100px;
	padding-left: 25px;
	line-height: 20px;
}
}


.text-spot2 {
	font-size: 11px;
}

.cp_card02:hover .details {
	left: 0;
}
.cp_card02:hover.alt .details {
	right: 0;
}
.cp_card02.alt .details {
	right: -100%;
	left: inherit;
}
.cp_card02 .photo {
	position: relative;
	float: left;
	width: 40%;
	height: 100%;
	-webkit-transition: all 0.5s ease;
	        transition: all 0.5s ease;
	margin-right: 5px;
}
.cp_card02 .photo:hover {
	cursor: pointer;
}

.cp_card02 .description {
	z-index: 0;
	padding: 15px 30px 20px;
	min-height: 200px;
}
.cp_card02 .description::before {
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: -15px;
	width: 100%;
	content: '';
	-webkit-transform: skewX(-8deg);
	        transform: skewX(-8deg);
	background: #ffffff;
}
.cp_card02 .description h1 {
	line-height: 1em;
    font-size: 14pt;
    color: #272727;
		font-size: 12pt;
		white-space: nowrap;
		font-size: 16px;
		margin: 0;
		margin-bottom: 0.5em;
		margin-top: 15px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
.cp_card02 .description h2 {
	font-size: 1em;
	line-height: 1.2em;
	margin: 1.2% 0;
	color: #9b9b9b;
}
.cp_card02 .description p {
	position: relative;
	margin: 0;
	font-size:14px;
	text-align: left;
	margin-top:30px;
	color:#272727
}
.cp_card02 .description a {
	color: #272727;;
	text-decoration: none;
	font-size:15pt;
	padding: 1px;
	
}

@media screen and (max-width: 714px) {
	.cp_card02 {
		font-size: 9px;
		line-height: 1.45em;
		position: relative;
		overflow: hidden;
		height: 180px;
		margin: 15px;
		-webkit-transition: height 0.3s ease;
	   	        transition: height 0.3s ease;
		border-radius: 3px;
		background: #ffffff;
		-webkit-box-shadow: 0 3px 7px -3px rgba(0, 0, 0, 0.3);
			 	box-shadow: 0 3px 7px -3px rgba(0, 0, 0, 0.3);
	}

	.cp_card02 .description p {
		position: relative;
		margin: 0;
		font-size: 12pt;
		text-align: left;
		line-height: 20px;
	}

	.cp_card02 .description a {
		color: #272727;;
		text-decoration: none;
		font-size:10pt;
	}
}

@media screen and (max-width: 480px) {
	.cp_card02 .description h1 {
		font-size: 12pt;
		text-align: left;
		padding-left: 25px;
	}

	.cp_card02 .description p {
		position: relative;
		margin: 0;
		font-size:12pt;
		text-align: left;
	}

	
}

.link{
    position:relative;
    width:280px;
    height:96px;
    background-color:#fffbb6;
    border:1px solid #ff6a00;
}

.link .alink{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/*----------ここまで----------*/

/*----------event css----------*/
.listA {
	width: 91%;
    margin: 0 auto;
}

@media screen and (max-width: 1080px) {
	.listA {
		margin: 20px;
	}
}


.listA .container {
	display: flex;
	flex-wrap: wrap;
}

.listA article {
	display: flex;
	flex-basis: 33%;
}


@media screen and (max-width: 1280px) {
	.listA article {
		display: flex;
		flex-basis: 50%;
	}
}


@media screen and (max-width: 480px) {
	.listA article {
		display: flex;
		flex-basis: 100%;
	}
}



.listA h2 {
	font-size: 18px;
}

.listA p {
	font-size: 14px;
	color:#272727;
	text-align: left;
}

.listA .photo {
	min-height: 150px;
	background-position: center;
	background-size: cover;
	border-radius: 30px 30px 0px 0px;
}

.listA a {
	flex: 1;
	margin: 2px;
	display: block;
	color: inherit;
	text-decoration: none;
	background-color: #FFFFFF;
	border-radius: 30px 30px 0px 0px;
	box-shadow: 0 3px 7px -3px rgb(0 0 0 / 30%);
}

.listA a:hover {
	opacity: 0.8;
}

.listA .text {
	margin: 20px;
}
/*----------ここまで----------*/

/*----------coupon css----------*/
.Cpcontainer {
	position: relative;
	width: 48%; /* 画像の幅に合わせて調整 */
	margin: 0 auto;
  }
  
  .Cpimage {
	display: block;
	max-width: 100%;
	margin-top: 10px;
  }

  .Cpcontainer:hover{
	opacity: 0.7;
  }
  
  .Cptext {
	position: absolute;
    top: 75%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: #222;
    font-size: 22px;
    width: 80%;
	font-weight:bold;
	white-space: nowrap;
  }

  .CpTname{
	position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: #222;
    font-size: 25px;
    width: 80%;
    font-weight: bold;
	white-space: nowrap;

  }

  .Cptitle{
	position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: #222;
    font-size: 20px;
    width: 80%;
    font-weight: bold;
	white-space: nowrap;

  }

  @media screen and (max-width: 1425px) {
	.Cptext {
		font-size:16px;
	}

	.Cptitle{
		font-size:16px;
	}

	.CpTname{
		font-size:18px;
	}

	}



	@media screen and (max-width: 960px) {
		.Cptext {
			font-size:14px;
		}
	
		.Cptitle{
			font-size:14px;
		}
	
		.CpTname{
			font-size:14px;
		}
		}


  @media screen and (max-width: 751px) {
	.Cptext {
		font-size:12px;
	}

	.Cptitle{
		font-size:13px;
	}

	.CpTname{
		font-size:13px;
	}
	}

	@media screen and (max-width: 480px) {
		.couponbox{
			display: contents;
			flex-wrap: wrap;
			width: 100%;
			margin: 0 auto;
		}

		.Cpcontainer {
			position: relative;
			width: 90%;
			margin: 0 auto;
			padding-top: 20px;
		  }

		  .Cptext {
			font-size:12px;
			top: 7%;
		}
	
		.Cptitle{
			font-size:18px;
			top: 55%;

		}
	
		.CpTname{
			font-size:18px;
			top: 35%;

		}


		}

		.couponbox{
			display: flex;
			flex-wrap: wrap;
			width: 90%;
			margin: 0 auto;
		}

/*新しいのここまで*/


.headline-coupon {
	margin: auto;
	font-size: 40px;
	border-bottom: 1.5px solid #000;
	width: 70%;
	text-align: center;
	margin-top: 100px;
	margin-bottom: 75px;
	font-size: 35px;
}

.coupon-widget {
	margin-bottom: 30px;
}


@media screen and (max-width: 1479px) {
	.widget-container-coupon {
		padding: 0 35px;
	}
}
@media screen and (min-width: 1480px) {
	.widget-container-coupon {
		padding: 0 50px;
	}
}

.coupon {
	position: relative;
	display: flex;
	justify-content: center;
	flex-direction: column;
	margin: 0 auto;
	width: 100%;
	max-width: 620px;
	background: #eee;
	padding: 40px 20px;
	float: left;
}
.price {
	font-size: 30px;
	font-weight: 900;
	color: #f56359;
	text-align: center;
}
.date {
	font-size: 14px;
	font-weight: bold;
	text-align: center;
}

/* circle-css */

.coupon::before,
.coupon::after {
	position: absolute;
	display: block;
	content: "";
	border-radius: 100%;
	background: #fff;
	left: -15px;
	width: 30px;
	height: 30px;
}
.coupon::before {
	top: -15px;
}
.coupon::after {
	bottom: -15px;
}
.coupon-inner::before,
.coupon-inner::after {
	position: absolute;
	display: block;
	content: "";
	border-radius: 100%;
	background: #fff;
	right: -15px;
	width: 30px;
	height: 30px;
}
.coupon-inner::before {
	top: -15px;
}
.coupon-inner::after {
	bottom: -15px;
}

@import "https://use.fontawesome.com/releases/v5.13.0/css/all.css";

*,
*:before,
*:after {
	-webkit-box-sizing: inherit;
	box-sizing: inherit;
}

html {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.btn,
a.btn,
button.btn {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	display: inline-block;
	padding: 10px 50px 10px 50px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	letter-spacing: 0.1em;
	color: #212529;
	border-radius: 0.5rem;
}

/*ボタン周りの余白用*/
a.btn-coupon {
	line-height: 1.2;

	display: -webkit-box;

	display: -ms-flexbox;

	display: flex;

	width: px;
	height: 120px;
	margin: 0 auto;
	padding: 0;
}

a.btn-coupon .left {
	width: 100%;
	padding-top: 20px;

	-webkit-transition: all 0.6s;

	transition: all 0.6s;
	-webkit-transform-origin: top left;
	transform-origin: top left;

	border: 2px solid #222;
	border-right: 0;
	background: #fff;

	-webkit-transform-style: preserve-3d;

	transform-style: preserve-3d;
}

a.btn-coupon .left span {
	font-size: 9pt;
}

a.btn-coupon .left span.txt1 {
	font-size: 14px;
    color: #222;
}

a.btn-coupon .left em {
	font-size: 11pt;
    font-style: normal;
    display: block;
    color: #e94919;
    margin: 10px 0px;
}

a.btn-coupon .right {
	position: relative;

	width: 20%;
	height: 100%;

	-webkit-transition: all 0.6s;

	transition: all 0.6s;
	-webkit-transform-origin: top left;
	transform-origin: top left;

	color: #fff;
	border-left: 2px dotted #fff;
	background: #222;

	-webkit-transform-style: preserve-3d;

	transform-style: preserve-3d;
}

a.btn-coupon .right span {
	font-size: 1.4rem;
	line-height: 1;

	position: absolute;
	top: -0.8rem;
	left: calc(50% - 0.8rem);

	display: inline-block;

	-webkit-transform: rotate(90deg);

	transform: rotate(90deg);
	-webkit-transform-origin: bottom left;
	transform-origin: bottom left;
}

a.btn-coupon:hover .left {
	-webkit-transform: rotateX(-20deg);
	transform: rotateX(-20deg);
}

a.btn-coupon:hover .right {
	-webkit-transform: rotateX(-20deg) rotateY(75deg);
	transform: rotateX(-20deg) rotateY(75deg);
}

@media screen and (min-width: 900px) {
	.coupon-content {
		width: 50%;
		height: 100px;
		margin: 15px;
	}
    
   .coupon-flex {
		display: flex;
	}
}
/*----------ここまで----------*/

/*----------tenant css----------*/
.tenant-box {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 15px;
}

.menuimages {
	width: 30%;
	position: relative;
	margin: 0px 10px;
	z-index: 1;
	box-sizing: border-box;
}

.inner {
  max-width: 1000px;
  width: 97%;
  margin: 0 auto;
}

.tenantimage {
	height: auto;
	width: 150%;
}

.cp_card04 {
	overflow: hidden;
	border-radius: 3px;
	margin-top: 2rem;
	margin-bottom: 2rem;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	background-color: #fff;
	-webkit-box-shadow: 0 3px 7px -3px rgba(0, 0, 0, 0.3);
	        box-shadow: 0 3px 7px -3px rgba(0, 0, 0, 0.3);
			transition: all 0.25s ease-in;
			border-bottom: 5px solid transparent;
}

.cp_card04 a{
	text-decoration: none;
	color: #272727;
}

.cp_card04 .photo {
	height: 200px;
	overflow: hidden;
}

.cp_card04:hover {
	-webkit-transform: translateY(-5px);
	transform: translateY(-5px);
	border: none;
	border-bottom: 5px solid #222;
	opacity: 0.8;
}

.cp_card04 .details {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 1em 1em 0 1em;
	font-size: 0.8em;
}
.cp_card04 .date {
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	text-align: right;
}
.cp_card04 .category {
	-webkit-box-flex: 2;
	    -ms-flex: 2;
	        flex: 2;
}
.cp_card04 .category p {
	font-size: 0.8em;
	padding: 3px 8px;
	cursor: pointer;
	width: 12em;
	margin: 0;
	border-radius: 10px;
	background: #f7c147;
	text-align: center;
	color: #ffffff;
}
.cp_card04 .description {
	padding: 0 1em;
}
.cp_card04 .description h1 {
	font-size: 18px;
    margin: 0;
    margin-bottom: 0.5em;
    margin-top: 20px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.cp_card04 .description .text p {
	margin: 0;
}
.cp_card04 .description a {
	float: right;
	margin-bottom: 10px;
	text-decoration: none;
	color: #222;
}
.cp_card04 .description a:after {
	margin-left: -10px;
	-webkit-transition: all 0.3s ease;
	        transition: all 0.3s ease;
	opacity: 0;
}
.cp_card04 .description a:hover:after {
	margin-left: 5px;
	opacity: 1;
}

@media screen and (max-width: 1280px) {
	.menuimages {
		width: 45%;
		position: relative;
		z-index: 1;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 751px) {
	.menuimages {
		width: 100%;
		position: relative;
		margin: 0px 20px;
		z-index: 1;
    	box-sizing: border-box;
  	}
}

.text-limit {
	overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
    height: 160px;
    margin-bottom: 20px;
	text-align: left;
}


/*市区町村一覧css*/
.all-city-box {
	padding-bottom: 25px;
}

.all-citypr{
	font-weight: bold;
	font-size: 14pt;
}

.all-city {
    position: relative;
    display: inline-grid;
}

.all-city::before,
.all-city::after {
    position: absolute;
    content: '';
    pointer-events: none;
	display: none;
}
.all-city::before {
    right: 0;
    display: inline-block;
    width: 2.8em;
    height: 2.8em;
    border-radius: 0 3px 3px 0;
    background-color: #00afcc;
    content: '';
	display: none;
}
.all-city::after {
    position: absolute;
    top: 50%;
    right: 1.4em;
    transform: translate(50%, -50%) rotate(45deg);
    width: 6px;
    height: 6px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: '';
}
.all-city select {
	appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    min-width: 300px;
    height: 50px;
    border: 2px solid #00afcc;
    color: #FFF;
    font-weight: bold;
    font-size: 18pt;
    cursor: pointer;
    margin-bottom: 20px;
    background-color: #00afcc;
    text-align: center;
}

.all-city option{
	background-color: #FFF;
	color: #222;
}

.all-city option:first-child {
	color: #fff;
	text-align: center;
}

.all-city select:focus {
    outline: 1px solid #fff;
}


.more-toggle,
.citylistul {
  display: none;
}

.more-toggle:checked ~ .citylistul {
	display: flex;
	justify-content: center;
    flex-wrap: wrap;
}

.more-button {
  display: inline-block;
  width: 350px;
  padding: 8px;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  transition: opacity 0.3s;
  margin: 5px 20px 20px;
}

.citybtn{
	width: 100%;
}

.more-button::before {
}

.more-toggle:checked ~ .more-button::before {
  
}

.more-button:hover {
  opacity: 0.7;
}

.more-button:active {
  opacity: 0.4;
}

.citylistul {
	display: flex;
	list-style: none;
	flex-wrap: wrap;
	width: 90%;
	margin: 0 auto;
	justify-content: inherit;
	display: none;
	box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4);
	font-size: 22px;
	border: 1px gray solid;
	border-radius: 10px;
	padding-top: 10px;
}

.citylist {
	width: 250px;
    flex-basis: 20.5%;
	border: 1px gray solid;
	border-radius: 5px;
    text-align: left;
    margin: 5px;
	padding: 5px;
	white-space: nowrap;
}
.citylist a {
	text-decoration: none;
	color:#222;
}
.citylist:hover {
	background-color: #00afcc;
	color: #fff;
	border-radius: 5px;
}

.row {
	display: flex;
	list-style-type: none;
	padding: 0;
	margin: 0;
  }
  
  .column {
	flex-basis: 14.28%; /* 100%を7で割った値 */
	padding: 10px;
	border: 1px solid #000;
  }



/*ここまで*/
p.event-name {
	font-weight: bold;
	font-size: 12pt;
	text-align: center;
}

.content-title {
	width: 90%;
	margin: 0 auto;
}
.content-title p {
    padding: 5px 30px;
    /* padding-left: 5px; */
    font-size: 24px;
    font-weight: bold;
    background-color: #FFA500;
    display: inline-block;
    /* width: 40%; */
    /* margin: 0 auto; */
    margin: 60px 0px 30px auto;
    /* text-align: center; */
    border-radius: 20px;
    color: #FFF;
    letter-spacing: 2px;
	position: relative;
	}

.content-title p:after{
	content: "";
	position: absolute;
	right: 0;
	bottom: -20px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color:   #FFA500 transparent transparent transparent;
	border-width: 20px 20px 5px 20px;
}
@media screen and (max-width: 480px) {
	.content-title p{
		font-size:18px;
	}
}

@media screen and (max-width: 750px) {
	.all-city-box-pc {
		display: none;
	}
}

@media screen and (max-width: 1080px) {
	.citylist {
		width: 200px;
    	flex-basis: 24.0%;
		font-size: 20px;
	}
}

@media screen and (min-width: 749px) {
	.all-city-box {
		display: none;
	}
	
}

/*----------ここまで----------*/
/*新しいニュースのcss*/


.news-list {
	list-style-type: none;
	padding: 0;
  }

  .news-item {
	border-bottom: 1px solid #222;
	border-top:1px solid #222;
	background-color: #FFF;
	padding: 10px;
	width: 90%;
	margin: 0 auto;
  }

  .news-item-even{
	background-color:#FBE4C7
  }

.n-container {
	margin-top: 10px;
	margin-left: 10px;
	text-align: left;
}

.news-list a{
	text-decoration: none;
	color:#222;
}

  .news-p1 {
	margin: 0;
	text-align: left;
	font-size: 10pt;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
  }

  .news-p2 {
	margin: 0;
	text-align: left;
	padding-left: 5%;
	font-size:12pt;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin: 8px;
  }
  .news-p2a {
	margin: 0;
	text-align: left;
	padding-left: 5%;
	font-size:12pt;
	margin: 8px;
  }
  .news-p3 {
    text-align: left;
    padding-left: 3%;
    font-weight: bold;
    font-size: 14pt;
    /*white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;*/
    line-height: 25px;
  }

  @media (max-width: 600px) {
	.news-item {
	  padding: 5px;
	}
  }

  .news-city{
	background-color:#FFC666;
	color:#FFF;
	border-radius: 10px;
    padding: 0px 10px;
}

.news-pref{
	background-color:#f56359;
	color:#FFF;
	border-radius: 10px;
    padding: 0px 10px;
}

.news-item+.news-item {
	border-top:none;
}

/*---------ここまで------------*/



/* news */
.oshirase {
    width: 90%;
    margin: 0 auto;
}

.oshirase a{
    text-decoration: none;
}

.oshirase table {
    margin: 0 auto;
    width: 100%;
    background-color: #ffffff;
    border-radius: 5px;
    border-spacing: 0;
    border: 1px gray solid;
}
.oshirase td {
    padding: 10px;
    border-right: none !important;
    border-left: none !important;
    border-bottom: 1px gray solid;
}
.oshirase tr:last-child td {
    border: none !important;
}
.oshirase a {
    /*text-decoration: none;*/
    color: #000000;
}
.oshirase a:visited {
    color: #000000;
}
/* end news */

table {
	margin: 0 auto;
}
  
.margin {
	text-align: left;
}
  

/*新しい求人のcss*/

.recr-list {
	list-style-type: none;
	padding: 0;
  }

  .recr-item {
	border-bottom: 1px solid #222;
	border-top:1px solid #222;
	background-color: #FFF;
	padding: 10px 10px 0px 10px;
	width: 90%;
	margin: 0 auto;
  }


  .recr-item-even {
	background-color:#FBE4C7;
  }


.recr-list a{
	text-decoration: none;
	color:#222;
}



  .recr-p1 {
	margin: 0;
	text-align: left;
	font-size: 10pt;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size:16px;
  }

  .recr-p2 {
	margin: 0;
	text-align: left;
	padding-left: 5%;
	font-size:12pt;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin-top: 10px;
	margin-bottom: 5px;
  }

  @media (max-width: 600px) {
	.recr-item {
	  padding: 5px;
	}
  }

  .recr-city{
	background-color:#FFC666;
	color:#FFF;
	border-radius: 10px;
    padding: 0px 10px;
}

.recr-job{
	background-color:#339f12;
	color:#FFF;
	border-radius: 10px;
    padding: 0px 10px;
}

.recr-pref{
	background-color:#f56359;
	color:#FFF;
	border-radius: 10px;
    padding: 0px 10px;
}


/*---------ここまで------------*/

/*snsicon*/
.iconsize{
	width: 50%;
}

.image-container {
	display: flex;
	max-width: 240px;
	margin: 0 auto;
}

.image-container img {
    width: 90%;
    height: auto;
    box-sizing: border-box;
    padding: 5px;
}

@media (max-width: 600px) {
