@charset "UTF-8";

#content .box {
		padding: 1em;
		border: none;
		margin-bottom: 3rem;
		box-shadow: 1px 1px 2px 2px rgba(0, 0, 0, 0.1);
}
#content .box.radius {
		border-radius: 10px;
}
h3 {
		margin: 1.5em 0 0.5em;
}
#content .box h3 {
		margin-top: 0;
}
#content .box p {
		margin-top: 0;
		line-height: 1.4;
}
#content .flexbox {
		display: flex;
		align-items: center;
		justify-content: space-around;
}
#content .flexbox.reverse {
		flex-direction: row-reverse;
}
#content .flexbox .flexitem.width30 {
		width: 30%;
}
#content .flexbox .flexitem {
		padding: 2rem;
		max-width: 50%;
}
#content .flexbox .flexitem.width70 {
		width: 70%;
		max-width: 70%;
}
#content .box.gray {
		background-color: #444444;
		color: #FFFFFF;
}
#content .box.yellow {
		background-color: #FDD843;
}
#content .box.blue {
		background-color: #2F98B7;
		color: #FFFFFF;
}
#content .box.green {
		background-color: #00AC56;
		color: #FFFFFF;
}
#content .box.lightgreen {
		background-color: #6fd09f;
		color: #333333;
}
#content .box.purplebrown {
		background-color: #652625;
		color: #FFFFFF;
}
#content .box.olive {
		background-color: #6C8F28;
		color: #FFFFFF;
}
#content .box.pink {
		background-color: #F56883;
		color: #FFFFFF;
}
#content .box.pink2 {
		color: #333;
		padding: 0.2em 0.5em;
		margin: 1em 0.25em;
		background: #ffeaea;
		box-shadow: 0px 0px 0px 5px #ffeaea;
		border-top: dashed 2px #ffc3c3;
		border-bottom: dashed 2px #ffc3c3;
}
#content .box.pink_outline {
		border: solid 1px #F56883;
		color: #F56883;
		border-radius: 5px;
}
#content .box.orange {
		background-color: #F46600;
		color: #FFFFFF;
}
#content a .box {
		text-decoration-line: none;
}
#content .box.default {
		background-color: #FFFFFF;
}
#content .mbtm1rem {
		margin-bottom: 1rem;
}
#content .mbtm3rem {
		margin-bottom: 3rem;
}
#content .mtop3rem {
		margin-top: 3rem;
}
#content .md {
		font-size: 200%;
}
#content .bg {
		font-size: 400%;
}
#content .sm {
		font-size: 140%;
}
@media all and (max-width: 515px) {
		#content .flexbox .flexitem {
				padding: 0.5rem;
				width: auto;
		}
		#content .bg {
				font-size: 5.6vw;
		}
		#content .md {
				font-size: 4.7vw;
		}
		#content .sm {
				font-size: 4.0vw;
		}
}
#content .label.label-block {
		display: block;
}
#content .label.label-outline.label-pink {
		color: #F56883;
		background: #FFFFFF;
}
#content .panel.panel-danger {
		border-color: #FF5C67;
}
#content .panel.panel-danger .panel-heading {
		background-color: #FF5C67;
		border-color: #FF5C67;
		color: #FFFFFF;
}
#content .panel.panel-danger .panel-footer {
		background-color: #FF5C67;
		border-color: #FF5C67;
		color: #FFFFFF;
}
#content .panel.panel-success .panel-footer {
		background-color: #00AC56;
		border-color: #00AC56;
		color: #FFFFFF;
}
#content .panel.panel-info .panel-footer {
		background-color: #2F98B7;
		border-color: #2F98B7;
		color: #FFFFFF;
}
#content .panel.panel-danger .label-danger.label-outline {
		background-color: #FFFFFF;
		border-color: #FF5C67;
		color: #FF5C67;
}
#content .panel.panel-yellow {
		border-color: #FFBD32;
		background-color: #FFF1CE;
}
#content .section {
		margin-right: -10px;
		margin-left: -10px;
		padding: 10px;
		background: #FFF1CE;
}
#content table.tblmeal {
		width: 100%;
}
#content table.tblmeal tr {
		border-top: 1px dotted #ccc;
}
#content table.tblmeal td {
		vertical-align: middle;
		padding: 0.4em 1em;
}
#content span.text_bg {
		display: inline-block;
		padding: 0.5em 1em;
}
#content span.text_bg.bg_gray {
		background: #DDD;
}
#content span.text_bg.bg_pink {
		background: #ffe1e3;
}
#content span.text_bg.text-block {
		display: block;
		text-align: center;
}
.marker.blue.thin {
		background: linear-gradient(transparent 80%, #3498db 80%);
}
#content a {
		text-decoration: none;
}
#content h9 a {
		color: #333;
}
#content h9 {
		border-bottom: #bebebe solid 0px;
}
#content h9 a:hover, #content h9 a:active {
		color: #3498db;
}
section.counter {
		counter-increment: titleNum;
}
h9.point {
		position: relative;
		font-family: 'YakuHanJP', "游ゴシック体", YuGothic, "YuGothic M", sans-serif;
		font-weight: 700;
		font-size: 18px;
		margin: 15px 0;
		border-bottom: #bebebe solid 1px;
		padding-bottom: 5px;
		display: block;
		padding: 0 0 .5em 6em;
}
h9.point::before {
		position: absolute;
		font-family: 'YakuHanJP', "游ゴシック体", YuGothic, "YuGothic M", sans-serif;
		top: 50%;
		left: 0;
		content: "ポイント "counter(titleNum);
		width: 100px;
		line-height: 20px;
		background-color: #FF457B;
		border-radius: 8px;
		color: #fff;
		font-size: .9em;
		text-align: center;
		margin-top: -20px;
		padding: 5px;
}
.under {
		border-bottom: solid 2px #87CEFA;
}
.under.pink_line {
		border-bottom: solid 2px #FF457B;
}
.premium {
		position: relative;
		line-height: 2em;
		text-indent: 3em;
}
.premium::before {
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		margin-top: -1em;
		display: inline-block;
		width: 3em;
		height: 2em;
		background: url("../images/meal2021_03.png") no-repeat;
		background-size: contain;
}
/** 03. スマホでの表の表示切り替え
 **************************************************************** **/
#content .res_table table.tblFull {
		border-bottom: 1px solid #dcdcdc;
}
#content .res_table table.tblFull th {
		padding: 8px;
		line-height: 1.5;
		vertical-align: middle;
		text-align: center;
}
#content .res_table table.tblFull td {
		padding: 8px;
		line-height: 1.5;
		vertical-align: middle;
		text-align: left;
}
#content .res_table table.tblFull td.va_top {
		padding: 8px;
		line-height: 1.5;
		vertical-align: top;
		text-align: left;
}
#content .res_table table.tblFull td.ind_03, #content .res_table table.tblFull th.ind_03 {
		padding-left: 8px;
		text-indent: 0;
		display: table-cell;
}
@media (max-width: 768px) {
		#content .res_table table.tblFull td.ind_03, #content .res_table table.tblFull th.ind_03 {
				padding-left: 4em;
				text-indent: -3em;
				display: block;
		}
		#content .res_table table.tblFull td, #content .res_table table.tblFull th {
				padding: 8px 4px;
				line-height: 1.5;
				vertical-align: middle;
				text-align: left;
		}
		#content .res_table table.tblFull {
				border-bottom: 1px solid #dcdcdc;
		}
		#content .res_table table.tblFull td {
				background-color: #FFFFFF;
				padding-left: 20px;
				padding-right: 20px;
		}
		#content .res_table table.tblFull td.indent {
				background-color: #FFFFFF;
				padding-left: 3.7em;
				padding-right: 1em;
				text-indent: -3.2em;
		}
		#content .res_table table.tblFull td.title {
				background-color: #f4f4f4;
				border-bottom: 1px solid #dddddd;
				text-indent: -2em;
				padding-left: 2em;
		}
		#content .res_table table.tblFull th.title {
				background-color: #f4f4f4;
				border-bottom: 1px solid #dddddd;
				text-indent: -2em;
				padding-left: 2em;
		}
		#content table.tblFull th {
				border-top: 1px solid #dcdcdc;
		}
		#content .res_table table.tblFull td {
				border-top: 0px solid #dcdcdc;
		}
		#content table.tblFull td.td_bottom {
				border-bottom: 1px solid #dcdcdc;
		}
		#content .res_table table.tblFull td .td_top {
				border-top: 1px solid #dcdcdc;
		}
		#content .res_table table.tblFull tr.tr_top {
				border-top: 1px solid #dcdcdc;
		}
		#content .res_table table.tblFull td .td_bottom_b {
				border-bottom: 3px solid #dcdcdc;
		}
		.res_table {
				border-collapse: separate;
				border-spacing: 0 20px;
				margin: 20px 5px;
		}
		.res_table thead {
				display: none;
		}
		.res_table tr {
				background-color: #f6f6f6;
		}
		.res_table td {
				border: none;
				display: block;
				width: 100%;
				box-sizing: border-box;
		}
		.res_table td.col-6 {
				float: left;
				width: 50%;
		}
		.res_table td.txt-right {
				text-align: right;
		}
		.res_table td:before {
				content: attr(data-title) " ";
		}
		.res_table th {
				border: none;
				display: block;
				width: 100%;
				box-sizing: border-box;
		}
		.res_table th.col-6 {
				float: left;
				width: 50%;
		}
		.res_table th.txt-right {
				text-align: right;
		}
		.res_table th:before {
				content: attr(data-title) " ";
		}
		.res_table .clear {
				clear: both;
		}
}
/* ----------------------------------------
 * 囲み文字の基本形　インデント有
 * --------------------------------------- */
.maru {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		border-radius: 50%;
		flex-flow: column;
		vertical-align: middle;
		margin-right: 5px;
		margin-bottom: 5px;
		text-indent: 0;
}
/* 円の大きさ */
.size_normal {
		width: 30px;
		height: 30px;
}
/* 四角の大きさ */
.content_inner .square {
		display: inline-flex;
		justify-content: center;
		align-items: center;
		width: 20px;
		height: 20px;
		flex-flow: column;
		margin-right: 0.2em;
}
/* 文字の大きさ */
.letter3 {
		font-size: 1.1em;
		line-height: 1.3em;
		text-indent: 0.1em;
}
/* 囲みと文字の色 */
.gray1 {
		color: #5F5F5F;
		border: 1px solid #5F5F5F;
		background: #fff;
}
.yellow1 {
		color: #ECD700;
		border: 1px solid #ECD700;
		background: #fff;
}
.purple1 {
		color: #8a2be2;
		border: 1px solid #8a2be2;
		background: #fff;
}
.blue1 {
		color: #fff;
		border: 1px solid #52A7E0;
		background: #52A7E0;
}
.pink1 {
		color: #fff;
		border: 1px solid #FF457B;
		background: #FF457B;
}
.green1 {
		color: #008000;
		border: 1px solid #008000;
		background: #fff;
}
.orange1 {
		color: #fff;
		border: 1px solid #E67E22;
		background: #E67E22;
}
.content_inner p {
		padding-left: 1.2em;
		text-indent: -1.4em;
}
.calender_list a:hover {
		color: #FF457B;
}