@charset 'utf-8'; /*文字コード指定*/
/* ----- css reset(各ブラウザで指定されているスタイルを初期化)と全体設定 ----- */

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, input, textarea, p, th, td, img {
	margin: 0; /*ボックス外側の余白(値1つは上下左右をまとめて指定)*/
	padding: 0; /*ボックス内側の余白(値1つは上下左右をまとめて指定)*/
	border: 0; /*境界線指定*/
}
html, body {
	height: 100%; /*領域の高さ指定*/
}
body {
	font-size: 75%; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	line-height: 2; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
	background: #fff; /*背景指定*/
	font-family: 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', Osaka, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro'; /*フォントの種類指定(左から優先順位)*/
	color: #333; /*文字色指定*/
}
body {
    color: #000;
}

ol, ul {
	list-style: none; /*リストマーカーの種類指定(noneはなし)*/
}
a {
	color: #333; /*文字色指定*/
}
a {
    color: #000;
}
a:hover {
	text-decoration: none; /*テキストの装飾指定(下線、上線など)(noneはなし)*/
}
.color1 {
	color: #990000; /*文字色指定*/
}
/*header　ページ上の内容*/

header {
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	top: 0; /*上からの距離(positionで指定している場合に適用)*/
	left: 0; /*左からの距離(positionで指定している場合に適用)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	xheight: 70px; /*領域の高さ指定*/
	/*背景グラデーション指定*/
	background: #627d4d; /* Old browsers */
	background: -moz-linear-gradient(top, #627d4d 0%, #1f3b08 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #627d4d), color-stop(100%, #1f3b08)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, #627d4d 0%, #1f3b08 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, #627d4d 0%, #1f3b08 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top, #627d4d 0%, #1f3b08 100%); /* IE10+ */
	background: linear-gradient(to bottom, #627d4d 0%, #1f3b08 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#627d4d', endColorstr='#1f3b08', GradientType=0 ); /* IE6-9 */	/*ここまで背景グラデーション指定*/

	z-index: 1000; /*ボックス重なり順序指定*/
}
header {
    background: #ffffff;

    height: 71px;
    border-bottom: 1px solid #7aa;
}
/*左上のロゴ*/

h1 {
	xpadding-left: 30px;
	xfont-family: 'Berkshire Swash', cursive; /*フォントの種類指定(googleのwebフォント)*/
	xfont-size: 3em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	xline-height: 70px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
	height: 70px; /*領域の高さ指定*/
    margin: 0;
    padding: 0;
}
h1 a {
	color: #fff; /*文字色指定*/
	text-decoration: none; /*テキストの装飾指定(下線、上線など)(noneはなし)*/
}
h1 a:hover {
	/*時間的変化指定*/
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s; /*ここまで時間的変化指定*/
	/*透明度設定*/
	opacity: 0.6;
	filter: alpha(opacity=60);
	-moz-opacity: 0.6; /*ここまで透明度設定*/
}
/*右上の内容*/

.terms {
	position: absolute; /*ボックスの配置方法(absoluteは絶対位置配置)*/
	top: 0; /*上からの距離(positionで指定している場合に適用)*/
	right: 0; /*右からの距離(positionで指定している場合に適用)*/
}
.contact {
	position: absolute; /*ボックスの配置方法(absoluteは絶対位置配置)*/
	top: 0; /*上からの距離(positionで指定している場合に適用)*/
	right: 100px; /*右からの距離(positionで指定している場合に適用)*/
}
.info {
	font-size: 1em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	width: 100px; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 70px; /*領域の高さ指定*/
	text-align: center; /*行の水平方向の揃え方(centerは中央揃え)*/
}
.info ul {
	padding: 12px 0; /*ボックス内側の余白*/
}
.info li {
	padding: 0 0 7px 0; /*ボックス内側の余白*/
	line-height: 1; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
}
.info a {
	color: #000; /*文字色指定*/
	text-decoration: none; /*テキストの装飾指定(下線、上線など)(noneはなし)*/
}
.info a:hover {
	/*時間的変化指定*/
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s; /*ここまで時間的変化指定*/
	/*透明度設定*/
	opacity: 0.6;
	filter: alpha(opacity=60);
	-moz-opacity: 0.6; /*ここまで透明度設定*/
}
.copyright {
	color: #fff; /*文字色指定*/
	color: #000; /*文字色指定*/
	font-size: 0.9em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	line-height: 15px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	bottom: 10px; /*下からの距離(positionで指定している場合に適用)*/
	left: 0; /*左からの距離(positionで指定している場合に適用)*/
}


/*レイアウト設定*/

.wrapper {
	float: right; /*要素を左か右に寄せて配置(rightは右に寄せる)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	margin-top: 70px; /*ボックス外側上の余白*/
	margin-left: -200px; /*ボックス外側左の余白*/
}
.content {
	margin-left: 200px; /*ボックス外側左の余白*/
}


/*メインの内容*/

.top-table td {
    font-size: 12px;
    color: #333;
    font-family: ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, Osaka, ＭＳ Ｐゴシック, MS PGothic, sans-serif;
    line-height: 150%;
    padding: 0px;
}
.top-table tbody {
    display: table-row-group;
    vertical-align: middle;
    border-color: inherit;
}

article {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	margin: 0px 0 50px 0; /*ボックス外側の余白*/
}
section {
	width: 90%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	margin: 0 auto; /*ボックス外側の余白*/
	padding: 20px; /*ボックス内側の余白*/
	background: #fff; /*背景指定*/
    max-width: 1200px;
}

article h2 {
    max-width: 1200px;
    position: relative;
    padding: 0.5em 1.9em;
    border: 1px solid #CCC;
    border-radius:5px;
    background: linear-gradient(#bec 0%, #dfe 100%);
    box-shadow:inset -1px -1px 0 rgba(255,255,255,1);
    margin: 0 auto;
    text-align: center;
    font-size: 1.8em;
    letter-spacing: 0.2em;
    color: #262;
}
article#top h2 {
    padding: 0.2em;
    border: 1px solid #cdc;
    border-radius:5px;
    background: linear-gradient(#d8e0d8 0%, #e8f0e8 100%);;
    box-shadow: none;
    margin: 0 auto;
    font-size: 1.8em;
    letter-spacing: 0.1em;
    color: #363;
    max-width: 1200px;
}

article h3 {
    position: relative;/*相対位置*/
    padding-left: 1.75em;/*アイコン分のスペース*/
    font-size: 1.8em;
    line-height: 1.2em;/*行高*/
    color: #7b6459;/*文字色*/
    margin-top: 20px;
    margin-bottom: 10px;
}
article h3:before{
    font-family: "FontAwesome";/*忘れずに*/
    content: "\f1b0";/*アイコンのユニコード*/
    position: absolute;/*絶対位置*/
    font-size: 1.7em;/*サイズ*/
    left: 0;/*アイコンの位置*/
    top: 0;/*アイコンの位置*/
    color: #ff938b; /*アイコン色*/
}
article h3:after {
    content: "";
    display: block;
    height: 3px;
    background: -moz-linear-gradient(to right, rgb(230, 90, 90), transparent);
    background: -webkit-linear-gradient(to right, rgb(230, 90, 90), transparent);
    background: linear-gradient(to right, rgb(230, 90, 90), transparent);
}
article h3 section {
    margin: 5px 20px;
}

article p, li {
	font-size: 1.25em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    line-height: 1.5em;
}
article li {
    margin-left: 15px;
}
article p.note {
    margin-top: 15px;
    ---font-weight: bold;
    font-size: 1.4em;
    ---text-decoration: underline;
}
article .text-block {
    margin-bottom: 1.2em;
}

.terms_content li li {
	font-size: 100%; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}
/* ----- テーブル設定 ----- */

.ta {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	border-collapse: collapse; /*境界線の表示指定(collapseは重ねて表示)*/
	margin: 0 auto; /*ボックス外側の余白(値2つは左から上下,左右の値(左右autoで中央配置))*/
}
.ta th, td {
	border: none; /*境界線の一括指定(noneはなし)*/
	padding: 0 0 10px 10px; /*ボックス内側の余白*/
	color: #333; /*文字色指定*/
	font-size: 1.3em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	font-weight: normal; /*フォントの太さ指定(normalは標準)*/
	text-align: left; /*行の水平方向の揃え方(leftは左寄せ)*/
}
/* ----- フォーム設定 ----- */

.clearfix:after {
	clear: both; /*floatの回り込み解除*/
	content: "."; /*要素の直後に文字列や画像などのコンテンツを挿入*/
	display: block; /*要素の表示指定（blockはブロックボックス生成）*/
	height: 0; /*領域の高さ指定*/
	visibility: hidden; /*ボックスの表示（visible）、非表示（hidden）指定*/
}
.form dl {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	padding: 15px 0; /*ボックス内側の余白*/
	border-bottom: 1px solid #dcdcdc; /*境界下線指定*/
	font-size: 1.3em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}
.form dl dt {
	width: 32%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	float: left; /*要素を左か右に寄せて配置(leftは左に寄せる)*/
	padding: 5px 10px 10px 10px; /*ボックス内側の余白*/
}
.form dl dd {
	width: 65%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	float: right; /*要素を左か右に寄せて配置(rightは右に寄せる)*/
}
.form dl dd textarea, .form dl dd .txt {
	background: #fff; /*背景指定*/
	padding: 0 10px; /*ボックス内側の余白*/
	border: 1px solid #dcdcdc; /*境界線指定*/
	/*角丸指定*/
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; /*ここまで角丸指定*/
	width: 50%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 40px; /*領域の高さ指定*/
	line-height: 40px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
}
.form dl dd textarea {
	width: 90% !important; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 100%; /*領域の高さ指定*/
}
.form dd .ina {
	ime-mode: disabled; /*テキスト入力時のIMEの状態指定(disabledは英数字入力モード)*/
}
.chra li {
	position: relative; /*ボックスの配置方法(relativeは相対位置配置)*/
	padding-left: 30px; /*ボックス内側左の余白*/
	line-height: 30px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
	font-size: 100%; /* フォントサイズ指定(%はブラウザに設定した標準文字サイズ(通常16px)に対する値)*/
}
.chra li div {
	position: absolute; /*ボックスの配置方法(absoluteは絶対位置配置)*/
	top: 5px; /*上からの距離(positionで指定している場合に適用)*/
	left: 0; /*左からの距離(positionで指定している場合に適用)*/
}
.ctSelect {
	background: url(../images/arrow.png) right center no-repeat; /*背景指定*/
	background-color: #fff; /*背景指定*/
	padding: 0 10px; /*ボックス内側の余白*/
	border: 1px solid #dcdcdc; /*境界線指定*/
	/*角丸指定*/
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; /*ここまで角丸指定*/
	width: 50%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 40px; /*領域の高さ指定*/
	line-height: 40px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
}
.kakunin {
	width: 150px; /*幅指定(100%は画面横幅いっぱいに表示)*/
	margin: 20px auto; /*ボックス外側の余白*/
}
.btn_submit {
	width: 150px; /*幅指定(100%は画面横幅いっぱいに表示)*/
	padding: 15px 0 13px 0; /*ボックス内側の余白*/
	border: solid 1px #001a9b; /*境界線指定*/
	/*角丸指定*/
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px; /*ここまで角丸指定*/
	/*背景グラデーション指定*/
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #0036ff), color-stop(1.00, #001a9b));
	background: -webkit-linear-gradient(#0036ff, #001a9b);
	background: -moz-linear-gradient(#0036ff, #001a9b);
	background: -o-linear-gradient(#0036ff, #001a9b);
	background: -ms-linear-gradient(#0036ff, #001a9b);
	background: linear-gradient(#0036ff, #001a9b); /*ここまで背景グラデーション指定*/
	color: #fff; /*文字色指定*/
	color: #000; /*文字色指定*/
	text-align: center; /*行の水平方向の揃え方(centerは中央揃え)*/
	font-size: 100%; /* フォントサイズ指定(%はブラウザに設定した標準文字サイズ(通常16px)に対する値)*/
	font-weight: bold; /*フォントの太さ指定(normalは標準)*/
}
.btn_submit:hover {
	/*透明度設定*/
	opacity: 0.8;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8; /*ここまで透明度設定*/
	/*時間的変化指定*/
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
 -o-transition: 0.s;
	transition: 0.5s; /*ここまで時間的変化指定*/
	cursor: pointer; /*マウスカーソルの形状指定(pointerはリンクカーソル)*/
}
.required {
	color: #ff0000; /*文字色指定*/
}
/*map設定*/

.gmap {
	position: relative; /*ボックスの配置方法(relativeは相対位置配置)*/
	padding-bottom: 56.25%; /*ボックス内側下の余白*/
	padding-top: 30px; /*ボックス内側上の余白*/
	height: 0; /*領域の高さ指定*/
	overflow: hidden; /*ボックスのはみ出た部分の表示指定(hiddenは非表示)*/
}
.gmap iframe {
	position: absolute; /*ボックスの配置方法(absoluteは絶対位置配置)*/
	top: 0; /*上からの距離(positionで指定している場合に適用)*/
	left: 0; /*左からの距離(positionで指定している場合に適用)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 100%; /*領域の高さ指定*/
}
/*無限スクロール設定*/

.scroll_area {
	margin: 0 auto; /*ボックス外側の余白*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
#infscr-loading {
	z-index: 100; /*ボックス重なり順序指定*/
	position: fixed; /*ボックスの配置方法(fixedは固定)*/
	left: 50%; /*左からの距離(positionで指定している場合に適用)*/
	bottom: 20px; /*下からの距離(positionで指定している場合に適用)*/
}
/*ページトップに戻るアイコン*/

.pagetop:hover {
	/*時間的変化指定*/
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s; /*ここまで時間的変化指定*/
	color: #000; /*文字色指定*/
	/*透明度設定*/
	opacity: 0.6;
	filter: alpha(opacity=60);
	-moz-opacity: 0.6; /*ここまで透明度設定*/
}


/******************************************************************************/
/*ユーザー設定*/

h2 { display: block; }
section img { max-width: 100%; }

/* ***** TOP PAGE ***** */
.top-caption {
    text-align: center;
    font-size: 1.3em;
    font-weight: bold;
    line-height: 1.2em;
    color: #fff;
    padding: 5px;
    border: 1px #040 solid;
    border-radius:10px;
    background: linear-gradient(#262 0%, #484 100%);
}

.box-pickup-area {
    width: 100%;
    text-align: center;
    margin-top: 0px;
    padding-top: 0px;
}
.box-pickup {
    display: inline-block;
    vertical-align: top;
    width: 205px;
    position: relative;
    xsmargin: 2em 1em;
    margin: 3em 0.2em 0.5em 0.2em;
    padding: 0.5em 0.75em 0;
    border: solid 3px #62c1ce;
}
.box-pickup .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    vertical-align: middle;
    font-size: 14px;
    background: #62c1ce;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box-pickup p {
    margin: 0; 
    padding: 0;
    line-height: 150%;
    font-size: 13px;
}
.box-pickup div {
    width: 100%;
    text-align: center;
}
.box-pickup a {
    text-decoration: none;
}
.btn-pickup:hover {
    filter: hue-rotate(-150deg);
    xfilter: saturate(300%);
}

@media (max-width:450px) {
.box-pickup {
    width: 80%;
}
}
@media screen and (min-width:451px) and (max-width:700px) {
.box-pickup-area {
    display: flex;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;}
.box-pickup {
    flex: 0 0 auto;
}
}
@media screen and (min-width:768px) and (max-width:958px) {
.box-pickup {
    width: 31%;
}
}
@media (min-width:1300px) {
.box-pickup {
    width: 305px;
}
}
@media (min-width:1150px) {
.box-pickup {
    width: 255px;
}
}


/* ***** PAGE TERM ***** */
.term dl {
    margin:5px;
    width:90%;
    background-color:#fff;
    font-size:1em;
}
.term dt {
    margin:0;
    padding:0.5em 1em;
    font-size:1.2em;
    font-weight:bold;
    background-color:#eee;
}
.term dd {
    margin:0;
    padding:0.5em 2em;
    line-height: 1.5em;
}
@media (max-width:768px) {
.term dl {
    width:100%;
    background-color:#fff;
    font-size:1em;
}
.term dt, .term dd {
    border: 2px solid #eee;
}
.term dt {
    padding:0 0.6em;
    font-weight:normal;
    background-color:#eee;
}
.term dd {
    margin:0;
    padding:0.3em 0.8em;
    line-height: 1.3em;
}
}

/* ***** PAGE CONTACT ***** */
.box-contact-area {
    width: 100%;
    max-width: 480px;
    text-align: center;
    margin: 20px auto;
    padding-top: 30px;
}

.box-contact {
    display: inline-block;
    vertical-align: top;
    width: 90%;
    position: relative;
    xsmargin: 2em 1em;
    margin: 2em 0.2em 1.5em 0.2em;
    padding: 0.5em 0.75em 0;
    border: solid 3px #62c1ce;
}
.box-contact .box-title {
    position: absolute;
    display: inline-block;
    top: -30px;
    left: -3px;
    padding: 0 35px;
    height: 28px;
    line-height: 30px;
    vertical-align: middle;
    font-size: 18px;
    background: #4aa;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box-contact p {
    font-family: Verdana Meiryo,Osaka;
    font-size:2.3em;
    font-weight:bold;
    padding: 0.3em;
}
.box-contact a {
    text-decoration: none;
}


/* ***** PAGE NURSERY ***** */
.article-box-area {
    ---margin: 20px;
    border: 4px solid #fee;
}

.article-box {
    display:flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 20px;
    ---background: #efe;
    background: #fff;
    padding: 5px;
    margin: 0;
}
.article-box p {
    ---font-size: 1.3em;
    ---line-height: 1.4em;
    ---margin: auto 0;
    padding: 7px;
}
.article-box h3 {
    font-size: 130%;
    font-weight: bold;
    margin: 0 30px;
}
.article-box .text {
    text-align: left;
    width: 70%;
    padding: 15px;
    margin: 0;
    xmargin-left: 1%;
}
.article-box .pict {
    width: 30%;
    margin: auto 2%;
}
.article-box .pict img {
    width: 100%;
    height: auto;
    margin: auto;
}
.article-box:nth-child(odd) {
    flex-direction: row-reverse;
    background: #fee;
}
.article-box:nth-child(odd) .text {
    ---text-align: right;
}
.article-box:nth-child(odd) .pict {
    margin: auto 2%;
    text-align: right;
}
.article-box h4 {
    position: relative;/*相対位置*/
    padding-left: 1.1em;/*アイコン分のスペース*/
    font-size: 1.6em;
    line-height: 1.2em;/*行高*/
    color: #a66;/*文字色*/
    margin-top: 5px;
    margin-bottom: 10px;
}
.article-box h4:before{
    font-family: "FontAwesome";/*忘れずに*/
    content: "\f1b0";/*アイコンのユニコード*/
    position: absolute;/*絶対位置*/
    font-size: 1.0em;/*サイズ*/
    left: 0;/*アイコンの位置*/
    top: 0;/*アイコンの位置*/
    color: #b77; /*アイコン色*/
}
.article-box h4:after {
    content: "";
    display: block;
    height: 2px;
    background: -moz-linear-gradient(to right, rgb(192, 100, 120), transparent);
    background: -webkit-linear-gradient(to right, rgb(192, 100, 100), transparent);
    background: linear-gradient(to right, rgb(192, 100, 100), transparent);
}

@media (max-width:768px) {
.article-box {
    flex-direction: column;
}
.article-box:nth-child(odd) {
    flex-direction: column;
}
.article-box h4 {
    font-size: 1.0em;
    font-weight: bold;
    text-align: left;
}
.article-box .text {
    padding: 3px;
    width:100%;
    text-align: center;
}
.article-box:nth-child(odd) .text {
    text-align: center;
}
.article-box .pict {
    width:100%;
    margin-left: 0;
    text-align: center;
}
.article-box:nth-child(odd) .pict {
    margin-left: 0;
    margin-right: 0%;
    text-align: center;
}
.article-box .pict img {
    width:50%;
    height:auto;
}
}

/* ***** TABLE +++++ PRICE-LIST ***** */
.table-price-list {
    border-collapse:  collapse; /* セルの線を重ねる */
    border: 2px solid #ddd;
}
.table-price-list tr:nth-child(odd) {
    background-color:  #ddd;    /* 背景色指定 */
}
.table-price-list th,td {
    font-size: 150%;
    padding: 2px 20px;          /* 余白指定 */
}
.price-amount {
    font-size: 130%;
}
@media (max-width:768px) {
.table-price-list {
    width: 100%;
}
.table-price-list th,td {
    width: 100%;
    display: block;
    font-size: 150%;
    padding: 2px 20px;
}
.table-price-list th {
    padding: 0 3px;
    font-size: 1.2em;
    background-color: #ddd;
}
.table-price-list td {
    background-color: #fff;
}
.price-amount {
    font-size: 1.3em;
}
}

/* ***** TABLE +++++ PROFILE ***** */
table.table-profile {
    border-collapse: collapse;  /* セルの線を重ねる */
}
.table-profile th, .table-profile td {
    padding: 10px 20px;          /* 余白指定 */
    font-size: 1.4em;
    line-height: 1.6em;
}
.table-profile th {
    xbackground-color: #2196F3;  /* 背景色指定 */
    background-color: #4a6;  /* 背景色指定 */
    color: #fff;               /* 文字色指定 */
    font-weight: bold;       /* 文字の太さ指定 */
    ---position: relative;        /* 位置指定 */
    z-index: 10;                /* 重なり調整 */
}
.table-profile td {
    background-color:  #cee; /* 背景色指定 */
    ---padding: 0 35px;         /* 余白指定 */
    padding: 10px;         /* 余白指定 */
}
/* .table-profile th::after { */
    /* content:'';                 /* 空の要素を作る */ */
    /* position:  absolute;        /* 位置指定 */ */
    /* height: 30px;               /* 高さ指定 */ */
    /* width: 30px;                /* 幅指定 */ */
    /* background-color: #4a6;  /* 背景色指定 */ */
    /* transform:  rotate(45deg);  /* 要素を回転 */ */
    /* top: 6px;                   /* 位置指定 */ */
    /* right: -15px;               /* 位置指定 */ */
    /* z-index:  -1;               /* 重なり調整 */ */
/* } */
.table-profile tr.cell-tall th::after {
    ---content: none;
    height: 100%;
    transform:  rotate(0deg);  /* 要素を回転 */
    top: 0px;                   /* 位置指定 */
    right: -15px;               /* 位置指定 */
}
.table-profile tr.cell-tall td ul li {
    font-size: 12px;
    line-height: 120%;
}
.table-profile tr {
    border-bottom:  solid #fff; /* 線指定 */
}
@media (max-width:768px) {
.table-profile {
    width: 100%;
}
.table-profile tr {
    border: 0;
}
.table-profile th, .table-profile td {
    width: 100%;
    display: block;
    font-size: 1.0em;
    line-height: 1.3em;
    padding: 5px 15px;
}
.table-profile th {
    font-size: 1.0em;
}
}

/* ***** BLOCK +++++ LINK ***** */
.link-top {
    margin-top: 3em;
    text-align: center;
}
.link-top p {
    margin-bottom: 2em;
}
.link-top img {
    max-width: 100%;
    height: auto;
}
.link-top-banner {
    text-align: center;
}
.link-top-banner p {
    ---margin-bottom: 2em;
}
.link-top-banner img {
    max-width: 100%;
    height: auto;
    border: 1px solid #888;
}


hr {
    width: 90%;
    height: 1.5px;
    color: #aca;
}





.instagram_container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: center;
    align-items: center;
    text-align: center !important;
}
.instagram_wrapper {
    position: relative;
    width: calc(25% - 10px);
    margin: 5px;
    flex-grow: 0;
}
.instagram_wrapper::before {
    content: "";
    display: block;
    padding-top: 100%;
}
.instagram_wrapper_inner {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: hidden;
}
.instagram_wrapper a {
    display: inline-block;
    position: static;
    opacity: 1;
}
.instagram_wrapper a:hover img {
    opacity: 0.8;
}
.instagram_wrapper img,
.instagram_wrapper video {
    transition: all 100ms ease-in-out;
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    top: 0;
    left: 0;
    object-fit: cover;
    z-index: 100;
}
.instagram_wrapper_mask {
    position: relative;
    width: 25vw;
    height: 25vw;
    padding: 150px;
    background-color: rgba(106,132,176,0.6);
    opacity: 0;
    transition: all 0.1s ease-in-out;
    z-index: 100;
}
.instagram_wrapper:hover .instagram_wrapper_mask {
    opacity:1;
}


@media screen and (max-width: 600px) {
    .instagram_wrapper {
        width: calc(50% - 10px);
    }
}


/******************************************************************************/
/*レスポンシブ設定*/

@media screen and (min-width: 769px) {
h1 img {
    width: 433px;
    height: 70px;
}

img#top_wide {
    width: 100%;
    max-width: 1200px;
    text-align: center;
    display: block;
}
img#title_narrow { display: none; }
img#top_narrow { display: none; }
}

@media screen and (max-width: 768px) {
h3, p, ol, li, th, td, dl {
	xfont-size: 1em !important; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	font-size: 1em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
}
header {
	height: 50px; /*領域の高さ指定*/
}
h1 {
	--font-size: 2em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	--line-height: 50px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
	height: 50px; /*領域の高さ指定*/
    padding-top: 5px;
}
h1 img {
    opacity: 0.3;
}

img#title { display: none; }

img#top_wide { display: none; }
img#top_narrow {
    width: 100%;
    max-width: 550px;
    min-width: 320px;
}

article {
    margin-top: 0;
}
.info {
	font-size: 0.9em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
	width: 80px; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 50px; /*領域の高さ指定*/
}
.info ul {
	padding: 5px 0; /*ボックス内側の余白*/
}
.contact {
    right: 80px;
}
.wrapper {
	margin: 50px 0 0 0; /*ボックス外側の余白*/
}
.content {
	margin: 0; /*ボックス外側の余白*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
    margin-bottom: 80px;
}
section {
	width: 98%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
.form dl {
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	padding: 0; /*ボックス内側の余白*/
	border: none; /*境界線の一括指定(noneはなし)*/
}
.form dl dt {
	float: none; /*要素を左か右に寄せて配置(noneはなし)*/
	position: static; /*ボックスの配置方法(staticは指定なし)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
}
.form dl dd {
	float: none; /*要素を左か右に寄せて配置(noneはなし)*/
	width: 100%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	margin-left: 10px; /*ボックス外側左の余白*/
}
.form dl dd .txt, .ctSelect {
	width: 90%; /*幅指定(100%は画面横幅いっぱいに表示)*/
	height: 30px; /*領域の高さ指定*/
	line-height: 30px; /*行の高さ指定(数値のみの場合はfont-sizeの倍数)*/
}
.copyright {
    margin-bottom: 0px;
	/*透明度設定*/
	opacity: 0.5;
	filter: alpha(opacity=50);
	-moz-opacity: 0.5; /*ここまで透明度設定*/
}


article section {
    padding: 0px 10px;
    margin-bottom: 10px;
}

article h2 {
	font-size: 1.4em; /*フォントサイズ指定(emはフォントの高さを１とした相対指定)*/
    letter-spacing: 0em;
}
article#top h2 {
    font-size: 1.2em;
    letter-spacing: 0em;
}

article h3 {
    position: relative;/*相対位置*/
    padding-left: 0.5m;/*アイコン分のスペース*/
    font-size: 1.3em;
    line-height: 1.2em;/*行高*/
    color: #7b6459;/*文字色*/
    margin-top: 30px;
    margin-bottom: 10px;
}
article h3:before{
    font-family: "FontAwesome";/*忘れずに*/
    content: "\f1b0";/*アイコンのユニコード*/
    position: absolute;/*絶対位置*/
    font-size: 1.2em;/*サイズ*/
    left: 0;/*アイコンの位置*/
    top: 0;/*アイコンの位置*/
    color: #ff938b; /*アイコン色*/
}
article h3:after {
    content: "";
    display: block;
    height: 3px;
    background: -moz-linear-gradient(to right, rgb(230, 90, 90), transparent);
    background: -webkit-linear-gradient(to right, rgb(230, 90, 90), transparent);
    background: linear-gradient(to right, rgb(230, 90, 90), transparent);
}

article p {
    font-size: 1em;
}
article p.note {
    font-size: 1.2em;
}


.top-caption {
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.2em;
    color: #fff;
    padding: 5px;
    margin-top: 10px;
}
.link-top-banner {
    padding-top: 20px;
}


.box-contact {
    width: 90%;
}
.box-contact .box-title {
    padding: 0 15px;
    vertical-align: middle;
    font-size: 15px;
}
.box-contact p {
    font-size:1.5em;
    font-weight:bold;
    padding: 0em;
}


}
