body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background-color: #FFF;
	background-image: url("images/bg.jpg");
	background-size: 100%;
	background-repeat: repeat-y;
	margin: 0;
	padding: 0;
}
p {
	color: #000000;
}
h1 {
	color: #545454;
}
a {
	text-decoration: none;
}
p.sukima {
	font-size: 10px;
	padding: 0;
	margin: 0;
}
.slide-bottom {
	opacity: 0;
	transform: translateY(3%);
	transition: all 1.5s 0s ease-out;
}
img {
	vertical-align: bottom;
}

.clear_both {
	clear: both;
	line-height: 90%;
}
#pagetop {
	position: fixed;
	bottom: 20px;
	right: 10px;
}

/*画像位置指定*/

.img {
	text-align: center;
	vertical-align: bottom;
}
 /*************************************
文字スタイル
**************************************/

.font_black {
	color: black;
	font-weight: normal;
	font-size: 18px;
}

/*ロールオーバーなし*/

a.lb:hover img {
	opacity: 1.0;
	filter: progid:DXImageTransform.Microsoft.Alpha(Style=0, Opacity=100, FinishOpacity=100);
}
/*************************************
画像の上に画像
**************************************/

.relative {
	position: relative;
	width: auto;
}
.absolute {
	position: absolute;
	right: 10px;
	top: 10px;
}
*, *:before, *:after {
	box-sizing: border-box;
}
#pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
.other-img {
	margin: 0px -400px -150px 400px;
}
p#aisatsu {
	margin: 100px 0;
	font-size: 1.2em;
	line-height: 200%;
	color: #2F2F2F;
}
p#aisatsu #small {
	font-size: 0.7em;
}

table {
	width: 100%;
}

table th {
	text-align: left;
	background: #f2f2f2;
	padding: 10px;
}
table td {
	text-align: left;
	background: #ffede6;
	padding: 10px;
}
table tr:nth-child(odd) td {
	text-align: left;
	background: #fff;
	padding: 10px;
}

/***********スマホ***********/

@media (max-width: 669px) {
	h2 {
		text-align: left;
		padding: 0 10px;
		font-size: 1.2em;
	}
	p {
		text-align: left;
	}
	p#aisatsu {
		text-align: left;
		padding: 0 10px;
		font-size: 0.9em;
		margin: 50px 0;
	}
	p#aisatsu #small {
		font-size: 0.7em;
	}
	.topimg {
		width: 90%;
	}
	.fullwidthimg {
		width: 95%;
	}
	.cate_img {
		width: 80%;
		text-align: center;
		padding-bottom: 0px;
		margin-top: 20px;
	}
	.cate_img img {
		width: 100%;
		text-align: center;
	}
	.sp_hidden {
		display: none;
	}
	.pc_only {
		display: none;
	}
	.h-notice {
		font-size: 15px;
		color: #7e4220;
		margin: 0px 10px 20px 20px;
		text-align: center;
		padding-top: 20px;
	}
	.sub-img {
		margin: 20px 0px;
	}

	.flex_item img {
		max-width: 95%;
		height: auto;
		width: auto;
	}

	/*説明2つ並び*/
	.flex_box2 {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin-left: -3%;
	}
	.flex_item2 {
		width: 45%;
		background-color: #FFF;
		margin-left: 3%;
	}
	.flex_item2 img {
		max-width: 100%;
		height: auto;
		width: auto;
		padding: 5%;
	}

	.flex_item2-1{
		width: 90%;
		background-color: #FFF;	
		margin-left:3%;
		margin-bottom: 10px;
	}
	.flex_item2-1 img{
		max-width: 100%;
		height: auto;
		width: auto;
		padding: 20px;
		border-radius: 30px;
	}

	/*説明4つ並びを2つ並び*/
	.flex_box4 {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin-left: -3%;
	}
	.flex_item4 {
		width: 45%;
		background-color: #FFF;
		margin-left: 3%;
		margin-bottom: 50px;
	}
	.flex_item4 img {
		max-width: 100%;
		height: auto;
		width: auto;
		padding: 5%;
		border-radius: 10%;
	}
	.link {
		text-align: right;
		margin-right: 3%;
	}
	.link img {
		max-width: 60%;
	}

	/*PCだと背景のある説明文*/

	.hidden {
		display: none;
	}

	.h-title {
		padding: 0 10px;
		line-height: normal;
		font-size: 16px;
		display: block;
	}
	.box2 {
		width: 30%;
		height: auto;
		padding: 7px 10px;
		margin: -50px 250px 30px 30px;
		background: #8C8C8C;
	}
	.box2 p {
		margin: 0;
		padding: 0;
		color: #ffffff;
		font-size: 12px;
		text-align: center;
		font-weight: 800;
	}
	.box4 {
		margin: 10px 0px 5px 0px;
		text-align: right;
		font-size: 12px;
		color: #FFFFFF;
		padding: 5px 0;
	}
	.h2_1 {
		color: #333333;
		text-align: left;
		margin: 0 0 25px 0;
		padding: 10px;
		font-size: 0.9em;
		background-color: #E8E8E8;
		border-bottom: 1px solid #CCCCCC;
	}
	.h2_2 {
		width: 100%;
		color: #3d3d3d;
		margin: 0px 0 10px 0;
		padding: 0 10px;
		font-size: 0.9em;
		line-height: 1em;
		font-weight: normal;
		text-align: left;
	}
	.h2_4 {
		width: 100%;
		color: #3d3d3d;
		margin: 0px 0 10px 0;
		padding: 0 5px;
		font-size: 0.9em;
		line-height: 1em;
		font-weight: normal;
	}
	.p-notice {
		color: black;
		margin: 20px 30px 30px 30px;
		text-align: left;
		font-size: 14px;
	}
	.setsumei {
		padding: 0 10px;
		text-align: left;
		margin: 0;
		float: left;
		font-size: 0.95em;
	}
	.other-img {
		margin: 0px 0px -15% 65%;
		overflow: hidden;
	}
	.other-img img {
		width: 70%;
		height: 70%;
	}
	.footer-title {
		background: #ffe4e1
	}

	.footer {
		background: #fff
	}
}

/*タブレット*/
@media (min-width: 670px) {
	.topimg {
		width: 90%;
	}
	.pc_width {
		width: 95%;
	}
	.fullwidthimg {
		width: 95%;
	}
	.pc_only {
		display: none;
	}
	.cate_img {
		width: 80%;
		text-align: center;
		padding-bottom: 0px;
		margin-top: 30px;
	}
	.cate_img img {
		width: 100%;
		text-align: center;
	}

	.flex_item img {
		max-width: 90%;
		height: auto;
		width: auto;
	}

	.hidden {
		display: none;
	}

	/*説明2つ並び*/
	.flex_box2 {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin-left: -20px;
	}
	.flex_item2 {
		width: 45%;
		background-color: #FFF;
		margin-left: 20px;
	}
	.flex_item2 img {
		max-width: 100%;
		height: auto;
		width: auto;
		padding: 10px;
	}

	/*説明2つ並び*/
	.flex_box2-1{
		width: 100%;
		display:flex;
		flex-wrap: wrap;
		justify-content:center;	
		margin-left: -10px;
	}
	.flex_item2-1{
		width: 45%;
		background-color: #FFF;
		margin-left:10px; 
	}
	.flex_item2-1 img{
		max-width: 100%;
		height: auto;
		width: auto;
		padding: 10px;
		border-radius: 30px;
	}
	
	/*4つ並び*/
	.flex_box4 {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin-left: -10px;
	}
	.flex_item4 {
		width: 22%;
		background-color: #FFF;
		padding: 8px;
		margin-left: 10px;
	}
	.flex_item4 img {
		max-width: 100%;
		height: auto;
		width: auto;
		padding: 10px;
		border-radius: 10%;
	}
	.link {
		text-align: right;
		margin-right: 30px;
	}
	.link img {
		max-width: 60%;
	}
	.box2 {
		width: 30%;
		height: auto;
		padding: 7px 10px;
		margin: -70px 250px 30px 30px;
		background: #8C8C8C;
	}
	.box2 p {
		margin: 0;
		padding: 0;
		color: #ffffff;
		font-size: 16px;
		text-align: center;
		font-weight: 800;
	}
	.box4 {
		margin: 10px 0px 0px 0px;
		text-align: right;
		font-size: 16px;
		color: #FFFFFF;
		padding: 5px 0;
	}
	.h-notice {
		font-size: 25px;
		color: #7e4220;
		margin: 50px 20px 20px 20px;
		text-align: center;
	}
	.p-notice {
		color: black;
		margin: 20px 30px 30px 30px;
		text-align: left;
		font-size: 14px;
	}
	.p-question {
		color: black;
		margin: 20px 50px 0px 50px;
		text-align: left;
	}
	.h2_1 {
		text-align: left;
		color: #333333;
		margin: 0 0 25px 0;
		padding: 10px;
		font-size: 1.1em;
		background-color: #E8E8E8;
		border-bottom: 1px solid #CCCCCC;
	}

	.h2_2 {
		width: 100%;
		color: #3d3d3d;
		margin: 0px 0 0px 0;
		padding: 10px;
		font-size: 1em;
		font-weight: 500;
		text-align: left;
	}
	.h2_4 {
		width: 100%;
		color: #3d3d3d;
		margin: 0px 0 15px 0;
		padding: 0 10px;
		font-size: 0.9em;
	}
	
	.other-img {
		margin: 0px 0px -15% 65%;
		overflow: hidden;
	}
	.other-img img {
		width: 70%;
		height: 70%;
	}
	.pc_hidden {
		display: none;
	}
}

/*PC*/
@media (min-width: 1000px) {
	.topimg {
		width: 70%;
	}
	#pc_width {
		width: 980px;
	}
	.fullwidthimg {
		width: 980px;
	}
	.pc_hidden {
		display: none;
	}
	.cate_img {
		width: 80%;
		padding-bottom: 0px;
		margin-top: 50px;
	}
	.cate_img img {
		max-width: 980px;
	}
	.menu_img {
		width: 980px;
		padding-bottom: 30px;
		margin-top: 100px;
	}
	.menu_img img {
		max-width: 980px;
	}
	.sub-img {
		margin: 0 0 20px 0px;
	}
	.flex_box {
		width: 980px;
		display: flex;
		justify-content: center;
	}
	.flex_item {
		width: 48%;
	}
	.flex_item img {
		max-width: 100%;
		height: auto;
		width: auto;
	}

	.h2_1 {
		text-align: left;
		width: 980px;
		color: #333333;
		margin: 0 0 25px 0;
		padding: 10px;
		font-size: 1.1em;
		background-color: #E8E8E8;
		border-bottom: 1px solid #CCCCCC;
	}

	.d-red {
		color: #972737;
	}
	.hidden {
		display: inline;
	}
	.background-img {
		margin: -500px 0px 0px 0px;
	}
	.h-notice {
		font-size: 25px;
		color: #7e4220;
		margin: 50px 20px 20px 20px;
		text-align: center;
		padding-top: 30px;
	}
	.p-notice {
		color: black;
		margin: 20px 30px 30px 30px;
		text-align: left;
		font-size: 14px;
	}
	.flex_box2 {
		display: flex;
		flex-wrap: wrap;
		margin-left: -40px;
		width: 1020px;
		justify-content: center;
	}
	.flex_item2 {
		width: 45%;
		background-color: #FFF;
		margin-left: 40px;
	}
	.flex_item2 img {
		max-width: 100%;
		height: auto;
		width: auto;
		padding: 10px;
	}

	/*sp1並び pc2並び 説明2つ並び*/
	.flex_box2-1{
		display:flex;
		flex-wrap: wrap;
		margin-left: -25px;	
		width: 1020px;
		justify-content:center;
	}
	.flex_item2-1{
		width: 480px;
		padding: 0px;
		background-color: #FFF;
		margin-left:20px; 
	}
	.flex_item2-1 img{
		max-width: 100%;
		height: auto;
		width: auto;
		padding: 10px;
		border-radius: 30px;
	}
	
	.flex_box4 {
		display: flex;
		flex-wrap: wrap;
		margin-left: -25px;
		width: 1020px;
		justify-content: center;
	}
	.flex_item4 {
		width: 225px;
		padding: 8px;
		background-color: #FFF;
		margin-left: 30px;
	}
	.flex_item4 img {
		max-width: 100%;
		height: auto;
		width: auto;
		padding: 0px;
		border-radius: 10%;
	}
	.link {
		width: 980px;
		text-align: right;
	}
	.link img {
		max-width: 60%;
		padding-right: 10px;
	}

	.box2 {
		width: 100px;
		height: 50px;
		padding: 10px 10px;
		margin: -70px 250px 30px 30px;
		background: #8C8C8C;
	}
	.box2 p {
		margin: 0;
		padding: 0;
		color: #ffffff;
		font-size: 10px;
		text-align: center;
		font-weight: 800;
	}
	.box4 {
		margin: 10px 0px 10px 0px;
		text-align: right;
		font-size: 16px;
		color: #FFFFFF;
		padding: 5px 0;
	}

	.pc_only {
		display: inline;
	}
	.other-img {
		margin: 0px 0px -110px 500px;
		overflow: hidden;
	}
	.other-img img {
		width: 190px;
		height: 175px;
	}
	.pc_hidden {
		display: none;
	}

	.name {
		margin: -10px 30px 10px 30px;
		text-align: right;
		font-size: 18px;
		font-weight: 800;
		color: #3d3d3d;
	}
	.footer-title {
		background: #ffe4e1
	}

	.footer {
		background: #fff
	}
}