@charset "utf-8";



/*全端末（PC・タブレット・スマホ）共通設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*cssファイルの読み込み
---------------------------------------------------------------------------*/
@import url("keyframes.css");

/*Google Fontsの読み込み
---------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@300&display=swap');

/*全体の設定
---------------------------------------------------------------------------*/
body {
	margin: 0px;
	padding: 0px;
	color: #545454;
	/*全体の文字色*/
	font-family: "M PLUS Rounded 1c", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*フォント種類*/
	font-size: 15px;
	/*文字サイズ*/
	line-height: 2.5;
	/*行間*/
	background: #f7f4f0;
	/*背景色*/
	-webkit-text-size-adjust: none;
}

h1,
h2,
h3,
h4,
h5,
p,
ul,
ol,
li,
dl,
dt,
dd,
form,
figure,
form {
	margin: 0px;
	padding: 0px;
	font-size: 100%;
}

ul {
	list-style-type: none;
}

ol {
	padding-left: 40px;
	padding-bottom: 15px;
}

img {
	border: none;
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

table {
	border-collapse: collapse;
	font-size: 100%;
	border-spacing: 0;
}

iframe {
	width: 100%;
}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a {
	color: #545454;
	/*リンクテキストの色*/
	transition: 0.5s;
	/*マウスオン時の移り変わるまでの時間設定。0.5秒。*/
}

a:hover {
	color: #afabdd;
	/*マウスオン時の文字色*/
	text-decoration: none;
	/*マウスオン時に下線を消す設定。残したいならこの１行削除。*/
}

/*コンテナー（サイト全体を囲むブロック）
---------------------------------------------------------------------------*/
#container {
	max-width: 1300px;
	/*最大幅。これ以上広くならない指定。*/
	margin: 0 auto;
}

/*ヘッダー（一番上の、ロゴやスライドショーが入っているブロック）
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	text-align: center;
	padding: 20px;
}

/*トップページのヘッダーブロックへの追加指定*/
.home header {
	padding: 0;
	position: relative;
}

/*ロゴ画像*/
header #logo img {
	width: 25%;
	/*画像の幅*/
}

/*トップページのロゴ画像への追加指定*/
.home header #logo img {
	position: absolute;
	z-index: 1;
	width: 22%;
	/*画像の幅*/
	left: 13%;
	/*ロゴやメニューが入っているブロックに対して、左からの配置場所の指定。*/
	top: 20px;
	/*ロゴやメニューが入っているブロックに対して、上からの配置場所の指定。*/
}

/*メニュー
---------------------------------------------------------------------------*/
/*メニューブロック全体への指定*/
#menubar {
	line-height: 2;
	text-align: center;
	font-size: 18px;
	/*文字サイズ*/
}

/*メニュー１個あたりの指定*/
#menubar li {
	display: inline-block;
	/*横並びにする指定*/
	margin: 0px 5px;
	/*上下、左右へのメニューの外側にとる余白*/
}

#menubar li a {
	text-decoration: none;
	display: block;
	padding: 0px 20px;
	/*上下、左右へのメニューの内側にとる余白*/
	font-weight: bold;
}

/*現在表示中(current)と、マウスオン時の指定*/
#menubar li.current a,
#menubar li a:hover {
	background: #585858;
	/*背景色*/
	color: #fff;
	/*文字色*/
	border-radius: 100px;
	/*角丸のサイズ。大きめであれば適当で構いません。この１行を削除すると、長方形になります。*/
}

/*コンテンツ（ヘッダーとフッター以外を囲むブロック）
---------------------------------------------------------------------------*/
#contents {
	overflow: hidden;
	padding: 50px 3%;
	/*上下、左右へのブロック内の余白*/
}

/*コンテンツ内にあるh2(見出し)タグの指定*/
#contents h2 {
	clear: both;
	margin-bottom: 30px;
	font-size: 24px;
	/*文字サイズ*/
	text-align: center;
	/*文字をセンタリング*/
	letter-spacing: 0.1em;
	/*文字間隔を少しだけ広くする指定*/
}

#contents h2 span {
	display: inline-block;
	background: url(../images/line1.png) repeat-x center bottom / auto 2px;
	/*下線画像の読み込み。2pxは画像の高さの指定。*/
	padding: 0px 30px;
	/*上下、左右への余白。文字の両サイドをここで空ける分だけ、下線が見えます。*/
}

#contents .top_page h2 {
	margin-bottom: 0;
	color: #777;
	font-size: 18px;
	line-height: 1.5;
}

/*コンテンツ内にあるh3(見出し)タグの指定*/
#contents h3 {
	clear: both;
	margin-bottom: 30px;
	font-size: 18px;
	/*文字サイズ*/
	text-align: center;
	/*文字をセンタリング*/
}

#contents .top_page h3 {
	font-size: 26px;
	line-height: 2;
	margin-bottom: 20px;
}

/*コンテンツ内にあるp(段落)タグ設定*/
#contents p {
	padding: 0px 20px 30px;
	/*上、左右、下への余白*/
}

/*他。微調整。*/
#contents p+p {
	margin-top: -5px;
}

#contents h2+p,
#contents h3+p {
	margin-top: -10px;
}

/*listブロック
---------------------------------------------------------------------------*/
/*各ブロックごとの設定*/
.list {
	overflow: hidden;
	font-size: 90%;
	/*文字サイズ*/
	margin-bottom: 30px;
	/*ブロックの下に空けるスペース*/
}

/*各ブロックごとの設定（サムネイルタイプへの追加指定）*/
.list.thumb {
	width: 23.5%;
	/*画像幅*/
	margin: 0 0.6% 30px;
	padding-top: 1%;
	float: left;
	/*画像を左に回り込み*/
	text-align: center;
}

/*画像の設定*/
.list img {
	border-radius: 50%;
	/*円形にする指定*/
	width: 20%;
	/*画像の幅*/
	float: left;
	/*画像を左に回り込み*/
	margin-right: 3%;
	/*画像の右に空けるスペース*/
}

/*画像の設定（サムネイルタイプへの追加指定）*/
.list.thumb img {
	margin: 0;
	float: none;
	width: 60%;
	/*画像の幅*/
}

/*マウスオン事*/
.list a:hover img {
	transition: 0.5s;
	opacity: 0.7;
	/*透明度。70%色が出た状態。*/
}

/*マウスオン事（サムネイルタイプへの追加指定）*/
.list.thumb a:hover img {
	transform: scale(1.05);
	/*ほんの少し画像を大きくする指定*/
}

/*h4タグ*/
.list h4 {
	font-size: 140%;
	/*文字サイズ*/
}

/*h4タグ（サムネイルタイプへの追加指定）*/
.list.thumb h4 {
	font-size: 100%;
	/*文字サイズ*/
}

/*p(段落)タグ*/
.list p {
	padding: 0 !important;
	line-height: 2;
}

/*option1（productページのブロックの右上に斜めに配置している帯）
---------------------------------------------------------------------------*/
.option1 {
	text-align: center;
	display: block;
	width: 300px;
	/*幅*/
	position: absolute;
	right: 0px;
	/*ボックスに対して右から0pxの場所に配置*/
	top: 0px;
	/*ボックスに対して上から0pxの場所に配置*/
	transform: rotate(45deg) translate(93px, -45px);
	/*45度回転。右へ,下へ(マイナス設定なので上へ向けての指定)の移動距離*/
	background: #585858;
	/*背景色*/
	color: #fff;
	/*文字色*/
	letter-spacing: 0.1em;
	/*文字間隔をほんの少し広くとる*/
	box-shadow: -3px 3px 10px rgba(0, 0, 0, 0.15);
	/*ボックスの影。右へ、下へ、ぼかし幅、0.15は色が15%出た状態の事。*/
}

/*フッター設定
---------------------------------------------------------------------------*/
footer {
	clear: both;
	text-align: center;
	padding: 10px;
	font-size: 90%;
}

footer a {
	text-decoration: none;
}

footer a:hover {
	color: #545454;
}

footer .pr {
	display: block;
}

/*トップページ内「更新情報・お知らせ」ブロック
---------------------------------------------------------------------------*/
/*ブロック全体の設定*/
#new dl {
	height: 140px;
	/*高さ。内様がこれを超えるとスクロールバーが出ます。*/
	overflow: auto;
	margin-bottom: 20px;
}

/*日付設定*/
#new dt {
	float: left;
	width: 9em;
	letter-spacing: 0.1em;
}

/*記事設定*/
#new dd {
	padding-left: 9em;
}

/*box1指定（角丸のボックス）
---------------------------------------------------------------------------*/
.box1 {
	overflow: hidden;
	position: relative;
	padding: 20px 30px;
	/*上下、左右へのボックス内の余白*/
	border-radius: 30px;
	/*角丸のサイズ。この１行を削除すると、通常の長方形になります。*/
	margin-bottom: 30px;
	/*下に空けるスペース*/
	background: #fff;
	/*背景色*/
}

/*bg1タイプの背景色*/
.bg1 {
	background: #ede9e2;
	/*背景色*/
}

/*bg2タイプの背景色*/
.bg2 {
	background: transparent;
	/*背景を透明にする*/
	border: 2px dashed #545454;
	/*枠線の幅、線種、色*/
}

/*テーブル
---------------------------------------------------------------------------*/
/*テーブル１行目に入った見出し部分（※caption）*/
.ta1 caption {
	border-top: 1px solid #545454;
	/*下の線の幅、線種、色*/
	text-align: center;
	/*文字をセンタリング*/
	padding: 10px;
	/*ボックス内の余白*/
	background: rgba(0, 0, 0, 0.03);
	/*背景色。0,0,0は黒の事で0.03は色が3%出た状態の事。*/
}

/*テーブル１行目に入った見出し部分（※tamidashi）*/
.ta1 th.tamidashi {
	width: auto;
	text-align: center;
	/*文字をセンタリング*/
}

/*ta1テーブルブロック設定*/
.ta1 {
	table-layout: fixed;
	width: 100%;
	margin: 0 auto 30px;
	border-top: 1px solid #545454;
	/*上の線の幅、線種、色*/
}

.ta1,
.ta1 td,
.ta1 th {
	word-break: break-all;
	border-bottom: 1px solid #545454;
	/*各行の下線の幅、線種、色*/
	padding: 10px;
	/*テーブル内の余白*/
}

/*テーブルの左側ボックス*/
.ta1 th {
	text-align: center;
	/*センタリング*/
	width: 25%;
	/*幅*/
}

.ta1 input[type="text"] {
	width: 54%;
}

.ta1 textarea {
	width: 92%;
	min-height: 60px;
	margin-top: 10px;
}

/*btn
---------------------------------------------------------------------------*/
input[type="submit"].btn,
input[type="button"].btn,
input[type="reset"].btn {
	-webkit-appearance: none;
	outline: none;
	border: 1px solid #585858;
	background: #585858;
	color: #fff;
	padding: 10px 30px;
	border-radius: 100px;
	font-size: 16px;
}

input[type="submit"].btn:hover,
input[type="button"].btn:hover,
input[type="reset"].btn:hover {
	background: #fff;
	color: #585858;
}

/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
body .nav-fix-pos-pagetop a {
	display: none;
}

body.is-fixed-pagetop .nav-fix-pos-pagetop a {
	display: block;
	text-decoration: none;
	text-align: center;
	position: fixed;
	animation-name: opa1;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	width: 80px;
	/*ボタンの幅*/
	line-height: 80px;
	/*ボタンの高さ*/
	bottom: 50px;
	/*画面の下からの配置場所指定*/
	right: 3%;
	/*画面の右からの配置場所指定*/
	background: rgba(255, 255, 255, 0.5);
	/*背景色*/
	border: 1px dashed #ccc;
	/*枠線の幅、線種、色*/
	border-radius: 50%;
	/*円形にする指定。この１行を削除すると正方形になります。*/
}

/*マウスオン時*/
body.is-fixed-pagetop .nav-fix-pos-pagetop a:hover {
	background: #fff;
	/*背景色*/
	border: 1px dashed #afabdd;
	/*枠線の幅、線種、色*/
}

/*トップページのNEWアイコン
---------------------------------------------------------------------------*/
.newicon {
	font-size: 70%;
	display: inline-block;
	line-height: 1.5;
	padding: 2px 5px;
	border-radius: 2px;
	margin: 0px 5px;
	vertical-align: text-top;
	background: #F00;
	/*背景色*/
	color: #FFF;
	/*文字色*/
}

/*ul.disc,olタグ
---------------------------------------------------------------------------*/
ul.disc {
	list-style: disc;
	padding: 0 20px 30px 42px;
}

ol {
	padding: 0 20px 30px 42px;
}

/*その他
---------------------------------------------------------------------------*/
.look {
	background: rgba(0, 0, 0, 0.1);
	border: 1px solid #ccc;
	padding: 5px 10px;
	border-radius: 4px;
}

.mb15,
.mb1em {
	margin-bottom: 15px;
}

.mb30 {
	margin-bottom: 30px;
}

.clear {
	clear: both;
}

.color1,
.color1 a {
	color: #585858;
}

.pr {
	font-size: 10px;
}

.wl {
	width: 96%;
}

.ws {
	width: 50%;
}

.c {
	text-align: center;
}

.r {
	text-align: right;
}

.l {
	text-align: left;
}

.big1 {
	font-size: 40px;
	letter-spacing: 0.2em;
}

.mini1 {
	font-size: 11px;
}



/*画面幅600px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:600px) {

	/*全体の設定
---------------------------------------------------------------------------*/
	body {
		font-size: 12px;
		font-size: 2.93vw;
	}

	/*ヘッダー（一番上の、ロゴやスライドショーが入っているブロック）
---------------------------------------------------------------------------*/
	/*ロゴ画像*/
	header #logo img {
		width: 200px;
		/*画像の幅*/
	}

	/*メニュー
---------------------------------------------------------------------------*/
	/*メニューブロック全体への指定*/
	#menubar {
		font-size: 100%;
	}

	#menubar li a {
		padding: 0px 5px;
		/*上下、左右へのメニューの内側にとる余白*/
	}

	/*listブロック
---------------------------------------------------------------------------*/
	/*画像の設定（サムネイルタイプへの追加指定）*/
	.list.thumb img {
		width: 90%;
		/*画像の幅*/
	}

	/*box1指定（角丸のボックス）
---------------------------------------------------------------------------*/
	.box1 {
		padding: 10px 15px;
		/*上下、左右へのボックス内の余白*/
		border-radius: 20px;
		/*角丸のサイズ*/
	}

	/*テーブル（ta1）
---------------------------------------------------------------------------*/
	/*ta1の左側ボックス*/
	.ta1 th {
		width: 100px;
	}

}



/*画面幅480px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:480px) {

	/*ヘッダー（一番上の、ロゴやスライドショーが入っているブロック）
---------------------------------------------------------------------------*/
	/*トップページのロゴ画像への追加指定*/
	.home header #logo img {
		width: 30%;
		/*画像の幅*/
		left: 10%;
		/*ロゴやメニューが入っているブロックに対して、左からの配置場所の指定。*/
		top: 3px;
		/*ロゴやメニューが入っているブロックに対して、上からの配置場所の指定。*/
	}

	/*コンテンツ（ヘッダーとフッター以外を囲むブロック）
---------------------------------------------------------------------------*/
	#contents {
		padding: 30px 3%;
	}

	/*コンテンツ内にあるh2(見出し)タグの指定*/
	#contents h2 {
		font-size: 16px;
		/*文字サイズ*/
	}

	/*コンテンツ内にあるh3(見出し)タグの指定*/
	#contents h3 {
		font-size: 14px;
		/*文字サイズ*/
	}

	/*コンテンツ内にあるp(段落)タグ設定*/
	#contents p {
		padding: 0px 10px 30px;
		/*上、左右、下への余白*/
	}

	.list.thumb {
		width: 47%;
		/*画像幅*/
		margin: 0 1.2% 30px;
		padding-top: 1%;
		float: left;
		/*画像を左に回り込み*/
		text-align: center;
	}
	
	#contents .top_page h2 {
		font-size: 13px;
	}
	
	/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
	body.is-fixed-pagetop .nav-fix-pos-pagetop a {
		width: 50px;
		/*ボタンの幅*/
		line-height: 50px;
		/*ボタンの高さ*/
	}

	/*ul.disc,olタグ
---------------------------------------------------------------------------*/
	ul.disc {
		padding: 0 10px 20px 25px;
	}

	ol {
		padding: 0 10px 20px 25px;
	}

	/*その他
---------------------------------------------------------------------------*/
	.big1 {
		font-size: 20px;
	}

	.mini1 {
		font-size: 9px;
	}

	.sh {
		display: block;
	}

	.pc {
		display: none;
	}

	.ws,
	.wl {
		width: 94%;
	}

	.fl {
		float: none;
	}

	.fr {
		float: none;
	}

	.ta1 input[type="text"], 
	.ta1 textarea {
		width: 98%;
	}
}