@charset "UTF-8";




/** ************************************* **

	TABLE CONTENTS
	---------------------------
		01. Globals
		02. 丸カウンター数字付きアコーディオン
		03. 背景カラー追加
		04. 文字列にスラッシュ追加
		05. インデント追加
		06. 赤丸
		07. header-nav
		09. fukidashi
	---------------------------

** ************************************* **/




/** 01. Globals
**************************************************************** **/

#content .box {
	padding: 0.8em;
	border: none;
	margin-bottom: 2rem;
}

#content .box.radius {
	border-radius: 10px;
}

#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.blue {
	background-color: #2F98B7;
	color: #FFFFFF;
}

#content .box.green {
	background-color: #00AC56;
	color: #FFFFFF;
}

#content .box.lightgreen {
	background-color: #6fd09f;
	color: #333333;
}

#content .box.olive {
	background-color: #6C8F28;
	color: #FFFFFF;
}

#content .box.pink {
	background-color: #F56883;
	color: #FFFFFF;
}

#content .box.orange {
	background-color: #F46600;
	color: #FFFFFF;
}

#content a .box {
	text-decoration-line: none;
}

#content .thumbnail .thumbnail-body {
	padding: 1em;
}

#content .thumbnail.yellow {
	background-color: #FFBD32;
	color: #FFFFFF;
}

#content .thumbnail.blue {
	background-color: #0074BD;
	color: #FFFFFF;
}

#content .thumbnail.pink {
	background-color: #FF4398;
	color: #FFFFFF;
}

#content .thumbnail.green {
	background-color: #00951D;
	color: #FFFFFF;
}

#content .thumbnail.purple {
	background-color: #6F3B9D;
	color: #FFFFFF;
}

#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: 150%;
}

#content .bg {
	font-size: 400%;
}

#content .sm {
	font-size: 120%;
}

@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 .panel.panel-yellow .panel-heading {
	background-color: #FFBD32;
	border-color:#FFBD32;
	color: #FFFFFF;
}

#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;
}

.panel.end {
	margin-bottom: 0px;
}

.marker.blue.thin {
	background: -webkit-linear-gradient(transparent 80%, #3498db 80%);
	background: -o-linear-gradient(transparent 80%, #3498db 80%);
	background: linear-gradient(transparent 80%, #3498db 80%);
}




/** 02. 丸カウンター数字付きアコーディオン
 **************************************************************** **/
div.counter_content {
	counter-reset: titleNum;
}

section.counter {
	counter-increment: titleNum;
}

.faq_list.number::before {
	font-family: 'YakuHanJP', "游ゴシック体", YuGothic, "YuGothic M", sans-serif;
	content: counter(titleNum);
	width: 30px;
	height: 30px;
	line-height: 30px;
	background-color: #f56883;
	border-radius: 100%;
	color: #fff;
	font-size: 1.2em;
	text-align: center;
	vertical-align: middle;
	padding: 0 9px;
}

/*アコーディオン内のラベルレイアウト*/
.label {
	display: inline-block;
	white-space: normal;
	line-height: 1.3;
	vertical-align: middle;
}

.label-default.label-outline {
	font-size: 70%;
	font-weight: 900;
	background-color: #fff;
	border: solid 0px #666666;
	margin-left: 10px;
}

.pink .label-default.label-outline {
	color: #f56883;
}






/** 03. 背景カラー追加
 **************************************************************** **/
.module-gray {
	background-color: #EEEEEE;
}

.module-pink {
	background-color: #fae6ee;
}

.module-white {
	background-color: #fff;
}

.module-green {
	background-color: #d9eadd;
}

.module-purple {
	background-color: #ecdeec;
}

.module-yellow {
	background-color: #fce7bb;
}

.module-orange {
	background-color: #fed2b0;
}

.module-navy {
	background-color: #d0d6db;
}

#content .section .module-blue {
	background: #e1f0fa;
	margin: 20px 0px;
	padding: 20px;
}

/*===== 枠のradius指定 =====*/
.module.r5 {
	border-radius: 5px;
}

.module.r6 {
	border-radius: 6px;
}

.module.r7 {
	border-radius: 7px;
}

.module.r8 {
	border-radius: 8px;
}

.module.r9 {
	border-radius: 9px;
}

.module.r10 {
	border-radius: 10px;
}





/** 04. 文字列にスラッシュ追加
 **************************************************************** **/
.slash {
	position: relative;
	display: inline-block;
	padding: 0px 40px;
	font-size: 1.5em;
	color: #ff457B;
	margin: 5px;
}

@media (max-width: 991px) {
	.slash {
		font-size: 2vw;
	}
}

@media (max-width: 768px) {
	.slash {
		font-size: 2.5vw;
	}
}

@media (max-width: 575px) {
	.slash {
		font-size: 2.3vw;
	}
}

@media (max-width: 480px) {
	.slash {
		font-size: 4.3vw;
		padding: 0px 28px;
	}
}

.slash::before {
	content: '';
	position: absolute;
	bottom: 13px;
	display: inline-block;
	width: 32px;
	height: 2px;
	background-color: #ff457B;
	-webkit-transform: rotate(60deg);
	transform: rotate(60deg);
}

.slash::after {
	content: '';
	position: absolute;
	bottom: 13px;
	display: inline-block;
	width: 32px;
	height: 2px;
	background-color: #ff457B;
	-webkit-transform: rotate(-60deg);
	transform: rotate(-60deg);
}

.slash::before {
	left: 0;
}

.slash::after {
	right: 0;
}






/** 05. インデント追加
 **************************************************************** **/
span.rev_ind {					/* spanブロック化 */
	display: block;
	padding: 0 0 0 0.5em;
	text-indent: -0.5em;
}

span.rev_ind i {
	text-indent: 0;
}

span[class*="ind"] i { /* セレクタ名の部分一致 */
	text-indent: 0;
}

span[class*="ind"] a.btn { /* セレクタ名の部分一致 */
	text-indent: 0;
}

span.ind_005 {					/* spanブロック化 */
	display: block;
	padding-left: 0.5em;
	text-indent: -0.5em;
}

span.ind_01 {					/* spanブロック化 */
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}

span.ind_012 {					/* spanブロック化 */
	display: block;
	padding-left: 1.2em;
	text-indent: -1.2em;
}

span.ind_015 {					/* spanブロック化 */
	display: block;
	padding-left: 1.5em;
	text-indent: -1.5em;
}

span.ind_02 {					/* spanブロック化 */
	display: block;
	padding-left: 2em;
	text-indent: -2em;
}

span.ind_025 {					/* spanブロック化 */
	display: block;
	padding-left: 2.5em;
	text-indent: -2.5em;
}

span.ind_03 {					/* spanブロック化 */
	display: block;
	padding-left: 3em;
	text-indent: -3em;
}

span.ind_04 {					/* spanブロック化 */
	display: block;
	padding-left: 4em;
	text-indent: -4em;
}

span.ind_05 {					/* spanブロック化 */
	display: block;
	padding-left: 5em;
	text-indent: -5em;
}

span.ind_06 {					/* spanブロック化 */
	display: block;
	padding-left: 6em;
	text-indent: -6em;
}

.rev_ind {					/* spanブロック化 */
	display: block;
	padding: 0 0 0 0.5em;
	text-indent: -0.5em;
}

[class*="ind"] i { /* セレクタ名の部分一致 */
	text-indent: 0;
}

[class*="ind"] a.btn { /* セレクタ名の部分一致 */
	text-indent: 0;
}

.ind_005 {
	display: block;
	padding-left: 0.5em;
	text-indent: -0.5em;
}

.ind_01 {
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}

.ind_012 {
	display: block;
	padding-left: 1.2em;
	text-indent: -1.2em;
}

.ind_015 {
	display: block;
	padding-left: 1.5em;
	text-indent: -1.5em;
}

.ind_02 {
	display: block;
	padding-left: 2em;
	text-indent: -2em;
}

.ind_025 {
	display: block;
	padding-left: 2.5em;
	text-indent: -2.5em;
}

.ind_03 {
	display: block;
	padding-left: 3em;
	text-indent: -3em;
}

.ind_04 {
	display: block;
	padding-left: 4em;
	text-indent: -4em;
}

.ind_05 {
	display: block;
	padding-left: 5em;
	text-indent: -5em;
}

.ind_06 {
	display: block;
	padding-left: 6em;
	text-indent: -6em;
}


/** 06. 赤丸
 **************************************************************** **/

.point_red::before {
	width: auto;
	height: auto;
	background-color: #f44336;
	border-radius: 100%;
	padding: 0 .59em;
	margin: .2em;
	content: "";
}

.point_red {
	text-align: left;
}



/** 07. header-nav
 **************************************************************** **/



#content .container_nav ul li, #content .container_nav ol li {
	line-height: 1.2;
}
#content .container_nav ul, #content .container_nav ol {
	margin: 0;
	margin-bottom: 0;
}
#content .container_nav ul {
	margin: 0;
	padding-left: 0;
}
.container_nav {
	margin-right: auto;
	margin-left: auto;
	padding-right: 15px;
	padding-left: 15px;
}
.header-nav .container {
	margin-right: auto;
	margin-left: auto;
	padding-right: 15px;
	padding-left: 15px;
}
.header-nav ul {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0;
	padding: 5px 0;
	list-style: none;
	-webkit-box-pack: justify;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	    justify-content: start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.header-nav a, .header-nav a:link, .header-nav a:visited {
	text-decoration: none;
	color: #F56883;
}
.header-nav a {
	font-size: 0.9rem;
	font-weight: 500;
	position: relative;
	display: block;
	padding: 5px;
	text-align: center;
	background: #fff;
	box-sizing: border-box;
	text-decoration: none;
	margin: 0 5px;
	-webkit-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
	-moz-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
	-webkit-tap-highlight-color: transparent;
	transition: .3s ease-out;
}

.header-nav a:hover{
	background-color: #F56883;
	color: #fff;
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}
.header-nav .container {
	padding-right: 12px;
	padding-left: 12px;
}

.header-nav li {
	padding: 5px 3px;
	text-align: center;
	width: 25%;
}
@media screen and (max-width: 979px){
	.header-nav a {
		font-size: 0.9rem;
		text-align: center;
	}
}
@media screen and (max-width: 767px){
	.header-nav li {
		width: 50%;
		-webkit-box-flex: initial;
		-moz-box-flex: initial;
		-ms-flex: initial;
		flex: initial;
	}
}
@media screen and (max-width: 480px){
	.header-nav li {
		width: 100%;
		-webkit-box-flex: initial;
		-moz-box-flex: initial;
		-ms-flex: initial;
		flex: initial;
	}
	.header-nav a {
		font-size: 0.9rem;
		text-align: center;
	}
}

a.btn_center {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: column;
	gap: 0px 5px;
	height: 100%;
}

/** 08. meal plan
 **************************************************************** **/

.mealplan {
	background-color: #CCDB95;
	border: solid #00AC56 3px;
}
.mealplan_title {
	background-color: #00AC56;
	padding: 30px 5%;
}
.title_white {
	display: inline-block;
	background-color: #fff;
	color: #00AC56;
	padding: 3px 30px;
	border-radius: 10px;
	letter-spacing: 2px;
	font-size: 22px;
}
.title {
	color: #FFF;
	letter-spacing: 10px;
	font-size: 34px;
}

@media all and (max-width: 515px) {
	.title_white {
		padding: 3px 10px;
		letter-spacing: 0px;
		font-size: 20px;
	}
	.title {
		letter-spacing: 1px;
		text-align: center;
		font-size: 28px;
	}
}	

/** 09. fukidashi
 **************************************************************** **/

.fukidashi_none {
	font-family: 'M PLUS Rounded 1c', sans-serif;
	position: relative;
	display: inline-block;
	margin: 0px;
	color: #393939;
	font-size: 14px;
	background: #fff;
	border: solid 2px #3498db;
	border-radius: 15px;
}

.fukidashi_none{
	position: relative;
	margin: 0em 0;
	padding: 1.2em 1.2em;/*文字まわりの余白*/
	border: solid 2px #fc825d;/*線の種類、太さ、色*/
	border-radius: 50px;/*ボックスの角のまるみ*/
}

.fukidashi_none:before, .fukidashi_none:after{ 
	position: absolute;
	top: 0;
	content:'';
	width: 100%;
	height: 100%;
	border-radius: 50px;/*ボックスの角のまるみ*/
}

.fukidashi_none:before{
	left:0;
	border: solid 2px #fc825d;/*線の種類、太さ、色*/
	transform: rotate(-1.5deg);/*ボックスの角度*/
}

.comment_photo {
	border-radius: 50%;
}

.photo_up {
	position: relative;
	top:-30px;
	left:-30px;
	margin: 0 0 -50px;
}