/*
Theme Name: Gurusta
Theme URI: https://gurusta.fmfukui.jp/
Author: FM Fukui
Author URI: https://www.fmfukui.jp/
Description: 2026-03-12: FM福井スタンプラリー「ぐるスタ」テーマ。
Version: 0.1.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: gurusta
*/

@charset "UTF-8";

@import url("css/reset.css");
@import url("css/cmn_style.css");
@import url("css/cmn_layout.css");

/**
 * 【css Navigation】
 *
 * 1.0 common
 *   1.1 base
 *   1.2 layout
 *   1.3 header
 *   1.4 gNavi
 *   1.5 contentsHeader
 *   1.6 contents
 *   1.7 side
 *   1.8 contentsFooter
 *   1.9 footer
 *   1.10 title
 * 2.0 [page] top （トップページ）
 * 3.0 [page] shop （協賛店）
 * 4.0 [page] tokuten （特典）
 * 5.0 [page] faq （よくある質問）
 */

/* =========================================================

	1.0 common

========================================================= */
/* ---------------------------------------------------------
	1.1 base
--------------------------------------------------------- */
body {
	min-width: 100%;
}
/* width */
.widthBase {
	margin: 0 8%;
}
/* link */
a:link,
a:visited {
	color: #000000;
}
a:hover,
a:active {
	color: #000000;
}
/* img */
img {
	max-width: 100%;
	height: auto;
}
/* font color */
.fcRed {
	/*color: #ff0000;*/
}
.fcBlue {
	/*color: #0000ff;*/
}
/* border */
.borderBottomSolid {
	/*border-bottom: solid 1px #000000;*/
}
.borderImage {
	/*background: url(../images/img_line_01.png) repeat-x 0% 0%;*/
}
.borderSolid { /*border: solid 1px #d2d2d2;*/ }
.borderBottomDotted {
	/*border-bottom: dotted 1px #323232;*/
}
/* ---------------------------------------------------------
	1.2 layout
--------------------------------------------------------- */
/* 1 Column */
#oneColumn {}
/* 2 Column */
#twoColumnL {
	/*width: 220px;*/
}
#twoColumnR {
	/*width: 760px;*/
}
/* 3 Column */
#threeColumnL {
	/*width: 220px;*/
}
#threeColumnC {
	/*width: 520px;*/
	/*margin: 0 0 0 20px;*/
}
#threeColumnR {
	/*width: 220px;*/
}
/* ---------------------------------------------------------
	1.3 header
--------------------------------------------------------- */
#header {}
#header .logo {
	background: #FFF000;
}
#header .bg01 {
	background: url("images/top_header_logo_img.gif") no-repeat 50% 0;
	-webkit-background-size: 100% auto;
	     -o-background-size: 100% auto;
	        background-size: 100% auto;
}
	#header .img01 {
		padding: 42% 10% 8%;
	}
/* ---------------------------------------------------------
	1.4 gNavi
--------------------------------------------------------- */
/* ---------------------------------------------------------
	1.5 contentsHeader
--------------------------------------------------------- */
/* ---------------------------------------------------------
	1.6 contents
--------------------------------------------------------- */
/* 協賛店 */
.participating_store {}
	.participating_store ul {
		letter-spacing: -0.4em;
	}
		.participating_store ul li {
			display: inline-block;
			letter-spacing: normal;
			width: 48%;
			margin: 0 4% 8px 0;
			background: #F5F5F5;
			border: solid 1px #c8c8c8;
			-webkit-border-radius: 5px;
			        border-radius: 5px;
		}
		.participating_store ul li:nth-child(2n) {
			margin: 0 0 8px;
		}
			.participating_store ul li a {
				display: block;
				padding: 12px 0 10px;
				line-height: 1;
				font-size: 16px;
				font-weight: bold;
				text-align: center;
				text-decoration: none;
			}
/* ---------------------------------------------------------
	1.7 side
--------------------------------------------------------- */
/* ---------------------------------------------------------
	1.8 contentsFooter
--------------------------------------------------------- */
/* ---------------------------------------------------------
	1.9 footer
--------------------------------------------------------- */
#footer {
	background: #FFF000;
}
	#footer a {
		text-decoration: none;
	}
	#footer .bg01 {
		background: url("images/footer_bg_01.png") no-repeat 50% 100%;
		-webkit-background-size: 100% auto;
		     -o-background-size: 100% auto;
		        background-size: 100% auto;
		padding: 0 0 40px;
	}
		#footer .logo {
			width: 40%;
			margin: 0 auto;
			padding: 15px 0;
		}
		#footer .navi01 {}
		#footer .navi01 ul {}
			#footer .navi01 ul li {
				margin: 0 0 8px;
				background: #fff;
				border: solid 1px #000;
				-webkit-border-radius: 5px;
				        border-radius: 5px;
			}
				#footer .navi01 ul li a {
					display: block;
					padding: 12px 0 10px;
					line-height: 1;
					font-size: 16px;
					font-weight: bold;
					text-align: center;
					text-decoration: none;
				}
		#footer .fm_logo {
			width: 45%;
			margin: 0 auto;
			padding: 25px 0 15px;
		}
		#footer .txt01 {
			font-weight: bold;
		}
		#footer .txt02 {
			font-size: 12px;
		}
	#footer .bg02 {
		background: #EF8201;
	}
		#footer .copy {
			padding: 10px 0 8px;
			color: #FFF;
			font-size: 10px;
			line-height: 1.3;
			text-align: center;
		}
/* ---------------------------------------------------------
	1.10 title
--------------------------------------------------------- */
/* 01 */
.com_ttl01 {
	margin: 0 0 15px;
	padding: 10px 8%;
	font-size: 18px;
	line-height: 1.1;
	background: #fff000;
}
	.com_ttl01 span {
		display: inline-block;
		background: url("images/ttl_01_icon.png") no-repeat 0 0;
		-webkit-background-size: auto 100%;
		     -o-background-size: auto 100%;
		        background-size: auto 100%;
		padding: 2px 0 0 5%;
	}
/* 02 */
.com_ttl02 {
	margin: 0 0 15px;
}
	.com_ttl02 span {
		display: inline-block;
		background: url("images/ttl_02_icon.png") no-repeat 0 50%;
		-webkit-background-size: auto 3px;
		     -o-background-size: auto 3px;
		        background-size: auto 3px;
		padding: 2px 0 0 7%;
	}
/* page title */
.com_pttl {
	position: relative;
	margin: 0 0 15px;
	padding: 0 8%;
}
.com_pttl:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-width: 7px 4px 0;
	margin-left: -4px;
}
	.com_pttl h1 {
		padding: 11px 0 8px;
		color: #FFF;
		line-height: 1.2;
		font-size: 16px;
		text-align: center;
	}
/* =========================================================

	2.0 [page] top （トップページ）

========================================================= */
/* course */
.top .course {
	padding: 50px 0 0;
}
	.top .course a {
		text-decoration: none;
	}
	.top .course .item01 {
		margin: 0 0 14px;
		border: solid 2px #019fe8;
		-webkit-border-radius: 6px;
		        border-radius: 6px;
	}
		.top .course .item01 .ttl01 {
			background: #019FE8;
		}
	.top .course .item02 {
		margin: 0 0 14px;
		border: solid 2px #009845;
		-webkit-border-radius: 6px;
		        border-radius: 6px;
	}
		.top .course .item02 .ttl01 {
			background: #009845;
		}
	.top .course .item03 {
		margin: 0 0 14px;
		border: solid 2px #e8546c;
		-webkit-border-radius: 6px;
		        border-radius: 6px;
	}
		.top .course .item03 .ttl01 {
			background: #e8546c;
		}

/* 2017/03/31 */
	.top .course .item04 {
		margin: 0 0 14px;
		border: solid 2px #611D87;
		-webkit-border-radius: 6px;
		        border-radius: 6px;
	}
		.top .course .item04 .ttl01 {
			background: #611D87;
		}


	.top .course .ttl01 {
		padding: 8px 0;
		text-align: center;
	}
		.top .course .ttl01 img {
			width: auto;
			height: 70px;
		}
	.top .course .txt01 {
		padding: 10px 0 4px;
		font-size: 24px;
		color: #EF8000;
		font-weight: bold;
		text-align: center;
		line-height: 1.2;
	}
		.top .course .txt01 span {
			font-size: 40px;
		}
	.top .course .txt02 {
		padding: 0 0 10px;
		font-size: 15px;
		line-height: 1.3;
		font-weight: bold;
		text-align: center;
	}
	.top .course .txt03 {}
	.top .course .img01 {
		position: absolute;
		/*top: -35%;*/
		/*right: -6%;*/
		/*width: 50%;*/
		top: -65px;
		right: -15px;
		width: 130px;
	}
/* other */
.top .txt01 {}
.top .btn01 {
	padding: 25px 0 0;
}
/* =========================================================

	3.0 [page] shop （協賛店）

========================================================= */
.shop .com_pttl,
.shopDetal .com_pttl {
	background: #EF8201;
}
.shop .com_pttl:after,
.shopDetal .com_pttl:after {
	border-color: rgba(239, 130, 1, 0);
	border-top-color: #EF8201;
}

.shop .list01,
.shopDetal .list01 {
	margin: -15px 0 0;
}
	.shop .list01 a {
		display: block;
		padding: 25px 8% 20px;
		text-decoration: none;
	}
	.shopDetal .list01 a {
		display: block;
		padding: 25px 8% 20px;
	}
		.shop .line01,
		.shopDetal .line01 {
			border-bottom: dashed 1px #bbbbbb;
		}
			.shop .left01,
			.shopDetal .left01 {
				position: relative;
				float: left;
				width: 30%;
			}
			.shop .right01,
			.shopDetal .right01 {
				float: right;
				width: 63%;
			}
				.shop .photo01,
				.shopDetal .photo01 {}
				.shop .ttl01,
				.shopDetal .ttl01 {
					padding: 0 0 8px;
					color: #6A3A0D;
					font-size: 16px;
					line-height: 1.2;
					font-weight: bold;
				}
				.shop .txt01,
				.shopDetal .txt01 {}
				.shop .img01,
				.shopDetal .img01 {
					position: absolute;
					top: -12px;
					right: -12px;
					width: 34px;
				}
.shopDetal .com_pttl h1 {
	text-align: left;
}
.shopDetal .data01 .photo01 {
	padding: 0 0 15px;
}
.shopDetal .data01 .txt01 {
	padding: 0 0 5px;
}
.shopDetal .data01 .list01 {
	margin: 0 0 0 8%;
}
	.shopDetal .data01 .list01 ul {
		list-style-type: circle;
	}
		.shopDetal .data01 .list01 ul li {}
			.shopDetal .data01 .list01 ul li a {
				padding: 0;
				color: #00863A;
			}
.shopDetal .data01 .btn01 {
	padding: 40px 0 0;
}
.shopDetal .data01 .detail01 {
	padding: 10px 0 0;
}
	.shopDetal .data01 .detail01 dl {
		letter-spacing: -0.4em;
	}
		.shopDetal .data01 .detail01 dl dt {
			display: inline-block;
			vertical-align: top;
			letter-spacing: normal;
			width: 20%;
			margin: 0 0 10px;
			padding: 4px 5px 3px;
			color: #FFF;
			line-height: 1;
			font-size: 10px;
			background: #019FE8;
			-webkit-border-radius: 2px;
			        border-radius: 2px;
		}
		.shopDetal .data01 .detail01 dl dd {
			display: inline-block;
			vertical-align: top;
			letter-spacing: normal;
			width: 75%;
			margin: 0 0 10px 5%;
			line-height: 1.3;
		}
/* =========================================================

	4.0 [page] tokuten （特典）

========================================================= */
.tokuten .com_pttl,
.tokutenDetail .com_pttl {
	background: #8ec222;
}
.tokuten .com_pttl:after,
.tokutenDetail .com_pttl:after {
	border-color: rgba(142, 194, 34, 0);
	border-top-color: #8ec222;
}

.tokuten .item01 {
	margin: 30px 0;
	border: solid 2px #009845;
	-webkit-border-radius: 6px;
	        border-radius: 6px;
}
	.tokuten a {
		text-decoration: none;
	}
		.tokuten .ttl01 {
			padding: 10px 20px;
			color: #FFF;
			font-size: 16px;
			line-height: 1.8;
			text-align: center;
			background: #009845;
		}
			.tokuten .ttl01 span {
				font-size: 14px;
			}
		.tokuten .txt01 {
			padding: 20px 20px 17px;
			font-size: 18px;
			color: #EF8000;
			font-weight: bold;
		}
.tokutenDetail .icn01 {
	width: 22%;
	margin: 0 auto 15px;
}
.tokutenDetail .txt01 {
	padding: 0 40px 25px;
	font-size: 20px;
	line-height: 1.3;
	font-weight: bold;
}
.tokutenDetail .bg01 {
	background: url("images/tokuten_bg_01.png") no-repeat 50% 0;
	-webkit-background-size: 100% auto;
	     -o-background-size: 100% auto;
	        background-size: 100% auto;
	margin: 0 0 25px;
	padding: 7% 0 0;
}
	.tokutenDetail .txt02 {
		padding: 20px 20px 18px;
		color: #FFF;
		font-size: 20px;
		line-height: 1.3;
		font-weight: bold;
		background: #EF8200;
		-webkit-border-radius: 6px;
		        border-radius: 6px;
	}
.tokutenDetail .txt03 {
	padding: 0 0 35px;
}
.tokutenDetail .txt04 {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
.tokutenDetail .btn01 {
	padding: 35px 0 0;
}
/* =========================================================

	5.0 [page] faq （よくある質問）

========================================================= */
.faq .com_pttl {
	background: #009fe8;
}
.faq .com_pttl:after {
	border-color: rgba(0, 159, 232, 0);
	border-top-color: #009fe8;
}

.faq .txtQ {
	margin: 10px 0 0;
	padding: 10px 8% 8px;
	font-weight: bold;
	background: #FFF000;
}
	.faq .txtQ span {
		display: inline-block;
		background: url("images/faq_icn_q.png") no-repeat 0 0;
		-webkit-background-size: 22px auto;
		     -o-background-size: 22px auto;
		        background-size: 22px auto;
		padding: 0 0 0 30px;
	}
.faq .txtA {
	padding: 10px 8% 20px;
}
	.faq .txtA span {
		display: inline-block;
		background: url("images/faq_icn_a.png") no-repeat 0 0;
		-webkit-background-size: 22px auto;
		     -o-background-size: 22px auto;
		        background-size: 22px auto;
		padding: 0 0 0 30px;
	}
