@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav.gnav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav.gnav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
 ================================================*/
body {
	font-size: 16px;
	font-family: YuGothic,‘游ゴシック’,‘Hiragino Kaku Gothic ProN’,‘ヒラギノ角ゴ ProN’,Meiryo,メイリオ,sans-serif;
	line-height: 1.6;
	-webkit-text-size-adjust: 100%;
    background-color: #ffffff;
}

#contents {
	width: 980px;
	margin: 0 auto;
}

header + #contents {
	padding-top: 50px;
}

.inner {
	position: relative;
	width: 980px;
	margin: 0 auto;
}

a {
	text-decoration: none;
	-webkit-transition: 0.2s;
	transition: 0.2s;
}

a:link { color: #6495ed;
	} 

a:visited { color: #6495ed;
	} 
	
a:hover {
	color: #6495ed;
	opacity: 0.7;
	}

a:active { color: #6495ed;
	}

h1 {
	clear:both;
	color:#081c3d;
	font-size: 1.5em;
	font-weight: bold;
	text-align: center;
}

h2 {
	margin-top: 1em;
	margin-bottom: 1em;
	font-size: 1.5em;
	color: #fff;
	font-weight: bold;
	text-align: center;
	line-height: 1.0;
}

h3 {
	margin-bottom: 0.5em;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1.2;}

h4 {
	font-size: 16px;
	font-weight: bold;
	color:#fff;
	text-align: center;
	}

p {
	margin:0 0 1em 0;
}

img {
	max-width: 100%;
	vertical-align: bottom;
}

em {
	font-weight: bold;
}

strong {
	font-weight: bold;
	color: #e74600;
}
small {
	font-size: 80%;
	font-weight: bold;
	}

pre {
	margin:1em 0;
	padding:1em;
}

blockquote {
	margin-bottom: 1em;
	padding: 1em;
	border: 1px dotted #ddd;
	border-left: 5px solid #ddd;
}

/*ヘッダー*/
header {
	width: 980px;
	margin: 10px auto 0;
}

header div {
	display: none;
}

/*注意書きテキスト*/
.boxInfoText {
	position: relative;
	margin: 5em 0;
	padding: 2em 1em;
	border: dotted 2px #e74600;
}
.boxInfoText .box-title {
	position: absolute;
	display: inline-block;
	top:-35px;
	left: -3px;
	padding: 0.5em 1em;
	margin: 0em 0 2em 0;
	height: 20px;
	line-height: 25px;
	font-size: 16px;
	background: #e74600;
	color: #fffb22;
	font-weight: bold;
	border-radius: 15px 15px 0 0;
}
.boxInfoText p {
	margin:  0; 
	padding: 0;
}

ul,ol,dl {
	width: 100%;
	margin: 0 0 1em 0;
}
ul li {
	list-style: disc;
}
ol li {
	list-style: decimal;
}
li {
	margin-left: 2em;
}

dt {
	margin-right: 1em;
	margin-left: 1em;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	border-bottom: 1px dotted #ddd;
}

dd {
	margin: 0.5em 1em 0em 1em;
}

table {
	width: 100%;
	margin-bottom: 1em;
	border-collapse: collapse;
	border: 1px solid #ddd;
}

th {
	padding: 10px;
	text-align: center;
	vertical-align: middle;
	border: 1px solid #ddd;
	background: #fffb22;
}

td {
	padding: 10px;
	text-align: left;
	border: 1px solid #ddd;
}

.price {
	margin-bottom: 0.25em;
	padding-left: 25px;
	font-size: 21px;
	font-weight: bold;
	text-align: right;
	color: #aa0408;
	margin: 0.5em 1em 0em 1em;
	}

.priceSmall {
	margin-bottom: 0.25em;
	font-size: 15px;
	font-weight: bold;
	text-align: right;
	color: #aa0408;
	margin: 0.5em 1em 0em 1em;
	}

.midashi01{
	margin:1em 0 1.5em;
	background-color:#f8da08;
	padding: 0.2em;
	border-radius: 50px 50px 0px 0px;
	}
	
.midashi02{
	margin:1em 0 1.5em;
	background-color:#ee825e;
	padding: 0.2em;
	border-radius: 50px 50px 0px 0px;
	}

.midashi03{
	margin: 1em 0 1.5em;
	background-color:#fac90a;
	color:#efefef;
	padding: 0.5em;
	font-size:1.5em;
	font-weight:bold;
	text-align: center;
	border-radius: 60px;
	}

.other {
	width: 842px;
	clear:both;
	text-align: right;
	margin: 0 auto;
	background-color:#fbff1c;
	}

/*================================================
 *  リンクテキストボタン
 ================================================*/

/*「商品ページへ等」*/
.linkBox1 {
	padding: 0.3em 1em;
	margin: 0.8em 0.5em;
	font-weight: bold;
	color: #fff;
	background: #3badb7;
	border: solid ;
	border-radius:35px;
}

.linkBox1 p {
	margin: 0; 
	padding: 0;
	text-align: center;
}

.linkBox1:hover {
	background: #7fa2a5;
	color: #efefef;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
	}

/*「その他一覧はこちら」等*/
.linkBox2 {
	padding: 0.5em 1em;
	margin: 0 auto;
	Width:65%;
	color:#0f3671;
	font-weight:bold;
	background: #fff;
	border: dashed 1px #0f3671;
	border-radius:0px;
	}
.linkBox2 p {
	margin: 0.5em; 
	padding: 0;
	color:#0f3671;
	font-weight:bold;
	}

.linkBox2:hover {
	background: #f4f8df;
	border: dashed 2px #0f3671;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
	}
	

/*「価格別」リンクテキストボタン*/
.linkBox3 {
	padding: 0.5em 0em;
	margin: 2em 1em;
	background: #cda975;
	border: solid 0px #ff0000;
	border-radius:15px;
	width: 100%;
	}

.linkBox3 p {
	margin: 1em auto; 
	padding: 0;
	width: 100%;
	color:#fff;
	font-size: 16px;
	text-align: center;}

.linkBox3:hover {
	background: #517dbe;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
	}


/*================================================
 *  汎用クラス
 ================================================*/
/* 中央寄せ */
.center {
	text-align: center;
}

/* 左寄せ */
.left {
	text-align: left;
}

/* 右寄せ */
.right {
	text-align: right;
}

/*矢印▲*/
.arrow3kaku {
	position: relative;
	padding-left: 13px;
}
.arrow3kaku::before {
	position: absolute;
	content: '';
	width: 0;
	height: 0;
	border: solid 6px transparent;
	border-left: solid 8px #f8d223;
	top: 50%;
	left: 0;
	margin-top: -5px;
}

/* イメージ画像 中央1P */
.sec_1p {
	clear:both;
	overflow:hidden;
	margin: 0 auto 50px auto;
	margin-bottom:50px;
	text-align:left;
	width:50vw;
	}
.sec_1p img {
	margin-bottom:10px;
	}

@media screen and (max-width:767px) {
	.sec_1p {
		display: block;
		margin-bottom:20px;
		width :100%;
			}
	.sec_1p .img {
		margin:0 0 10px 0;
	}
}


/* 1カラム（スマホでは1C) */
.oneCol {
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	position:relative;
	overflow:hidden;
	margin-bottom:30px;
	text-align: center;}
.oneCol .inner {
	position: relative;
	overflow:hidden;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	-ms-flex-direction: column-reverse;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: column-reverse;
	flex-direction: column;
	width: 75%;
	width: calc(100%);
	height: auto;
	margin:0 0 20px 0;
}
.oneCol .inner div:nth-child(2n+1) {
	clear:both;
}

.oneCol .inner img {
	width:100%;
	text-align: center;
	}

@media screen and (max-width:767px) {
	.oneCol {
		display: block;
		margin-bottom:20px;
	}
	.oneCol .inner {
		width :100%;
		margin:0 0 10px 0;
	}
}



/* 2カラム（スマホでは1C) */
.twoCol {
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	position:relative;
	overflow:hidden;
	margin-bottom:30px;
}
.twoCol .inner {
	position: relative;
	overflow:hidden;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	-ms-flex-direction: column-reverse;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: column-reverse;
	flex-direction: column;
	width: 48.98%;
	width: calc((480 / 980) *100%);
	height: auto;
	margin:0 0 20px 0;
}
.twoCol .inner div:nth-child(2n+1) {
	clear:both;
}

.twoCol .inner img {
	width:100%;
	text-align: center;
	}

@media screen and (max-width:767px) {
	.twoCol {
		display: block;
		margin-bottom:20px;
	}
	.twoCol .inner {
		width :100%;
		margin:0 0 10px 0;
	}
}

/* 3カラム（スマホでは1C) */
.threeCol {
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	position: relative;
	overflow: hidden;
	margin-bottom:30px;
}
.threeCol .inner {
	position: relative;
	overflow: hidden;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	-ms-flex-direction: normal;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	flex-direction: column;
	width: 32.14%;
	width: calc((315 / 980) *100%);
	margin: 0 0 20px 0;
}
.threeCol .inner:nth-child(3n+1) {
	clear:both;
}

.threeCol .inner p {
	width: 100%;
	margin-bottom: 0;
	text-align: center;
}
.threeCol .inner > a {
	width: 100%;
	height: 100%;
}
.threeCol .inner .image {
	width: 90%;
	min-height: 0%;
	text-align: center;
}

.threeCol .inner img {
	width: 95%;
	text-align: center;
}

.threeCol .inner .btn {
	margin-top: auto;
	padding-top: 20px;
}
.threeCol .inner .text {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	pointer-events: none;
}

@media screen and (max-width:767px) {
	.threeCol {
		display: block;
		margin-bottom: 20px;
	}
	.threeCol .inner {
		width : 100%;
		margin: 0 0 10px 0;
	}
}

/* 4カラム（スマホでは2C) */
.fourCol {
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	position: relative;
	overflow: hidden;
	margin-bottom: 30px;
}
.fourCol .inner {
	position: relative;
	overflow: hidden;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-ms-flex-align: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-webkit-justify-content: censpace-betweenter;
	justify-content: space-between;
	-ms-flex-direction: column-reverse;
	-webkit-box-direction: reverse;
	-webkit-flex-direction: column-reverse;
	flex-direction: column;
	width: 23.46%;
	width: calc((230 / 980) *100%);
	margin: 0 0 20px 0;
}
.fourCol .inner .image {
	width: 100%;
	min-height: 0%;
	text-align: center;
	}
.fourCol .inner img {
	width: 90%;
	text-align: center;
}

@media screen and (max-width:767px) {
	.fourCol {
		display: flex;
		margin: 0;
	}
	.fourCol .inner {
		box-sizing: border-box;
		width: 50%;
		margin: 0;
	}
	.fourCol .inner:nth-child(odd) {
		clear: both;
		float: left;
		padding: 0 5px 10px 0;
	}
	.fourCol .inner:nth-child(even) {
		float: right;
		padding: 0 0 10px 5px;
	}
}

/* 案内バナー 大*/
.bunnerInfo {
	clear:both;
	overflow:hidden;
	margin: 0 auto 0px;
	text-align:left;
	width:100%;
	}
.bunnerInfo img {
		width:100%;
	}

@media screen and (max-width:767px) {
	.bunnerInfo {
		display: block;
		margin-bottom:20px;
		width :100%;
			}
	.sec_1p .img {
		margin:0 0 10px 0;
	}
}

/* 案内バナー 小*/
.bunnerInfoSmall {
	clear:both;
	overflow:hidden;
	margin: 2em auto 2em auto;
	margin-bottom:50px;
	text-align:center;
	width:900px;
	}
.bunnerInfoSmall img {
	margin-bottom:10px auto;
	max-width:80%
	}
@media screen and (max-width:767px) {
	.bunnerInfoSmall {
		display: block;
		margin-bottom:20px;
		width :85%;
			}
	.bunnerInfoSmall .img {
		margin:0 0 10px 0;
	}
}



/*================================================
 *  ページ内リンクナビ
 ================================================*/
/* PC用 */

	nav.gnav:after {
		content: '';
		display: block;
		clear: both;
	}
	nav.gnav {
		width: 100%;
		margin: 0 auto;
	}

/* 共通 */
	nav.gnav ul {
		margin: 0;
		padding: 0;
	}
	nav.gnav > ul > li {
		position: relative;
		width : 33.33%;
		float: left;
		margin: 0;
		padding: 0;
		text-align: center;
		list-style: none;
		line-height: 50px;
	}
	nav.gnav ul li a {
		display: block;
		background: #77c3df;
		color: #fff;
		font-size: 1em;
		font-weight: bold;
		text-decoration: none;
		border-right: solid 1px #ffffff;
	}
	nav.gnav ul li:hover > a {
		color: #0080b1;
		background: #efefef;
	}
	
/*================================================
 *  ページ内リンクナビ(価格別リンク用）
 ================================================*/
/* PC用 */

	nav.gnav2:after {
		content: '';
		display: block;
		clear: both;
	}
	nav.gnav2 {
		width: 100%;
		margin: 0 auto;
	}

/* 共通 */
	nav.gnav2 ul {
		margin: 0;
		padding: 0;
	border-radius: 10px;
	}
	nav.gnav2 > ul > li {
		position: relative;
		width : calc(100% / 4) ;
		float: left;
		margin: 0;
		padding: 0;
		text-align: center;
		list-style: none;
		line-height: 50px;
	}
	nav.gnav2 ul li a {
		display: block;
		background: #0f3671;
		color: #fff;
		font-size: 12px;
		font-weight: bold;
		text-decoration: none;
		border: solid 1px #ffffff;
		border-radius:px
	}

	nav.gnav2 ul li:hover > a {
		color: #0f3671;
		border: dashed 1px #0f3671;
		background: #efefef;
		border-radius:px
	}
	

/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
	position:fixed;
	bottom:15px;
	right:15px;
	z-index:1;
	}
.totop a {
	display:block;
	text-decoration:none;
	}
.totop img {
	background:#111;
	}
.totop img:hover {
	background:#222;
	}

/*================================================
 *  タブレット・スマホ用デザイン
 ================================================*/
@media screen and (max-width:979px) {
	header {
		width: 100%;
	}

	header iframe {
		display: none;
	}

	header div {
		display: block;
	}

	.inner {
		width: 100%;
	}

	#contents {
		box-sizing: border-box;
		width: 100%;
		padding: 0 10px;
	}

	footer {
		width: 100%;
	}

	.lock {
		overflow: hidden;
	}
}
