@charset "UTF-8";


#content .flexbox {
	display: flex;
	align-items: center;
	justify-content: space-around;
}

#content .flexbox.reverse {
	flex-direction: row-reverse;
}


#content .flexbox .flexitem {
	padding: 0.2rem;
	max-width: 50%;
}

#content .flexbox .flexitem.width30 {
	width:30%;
}

#content .flexbox .flexitem.width70 {
	width:70%;
}

#content .flexbox .flexitem.width20 {
	width:20%;
}
#content .flexbox .flexitem.width30 {
	width:30%;
}

#content .flexbox .flexitem.width80 {
	width:80%;
	max-width: 80%;
}

#content .flexbox .flexitem.width70 {
	width:70%;
	max-width: 70%;
}

@media all and (max-width: 768px) {
#content .flexbox {
    display: block;
    align-items: center;
}
#content .flexbox .flexitem {
    max-width: 100%;
}
#content .flexbox .flexitem.width30 {
	width:100%;
}
#content .flexbox .flexitem.width70 {
	width:100%;
	max-width: 100%;
}
}

@media all and (max-width: 515px) {
#content .flexbox {
    display: block;
    align-items: center;
}
#content .flexbox .flexitem {
    max-width: 100%;
}
#content .flexbox .flexitem.width30 {
	width:100%;
}
#content .flexbox .flexitem.width70 {
	width:100%;
	max-width: 100%;
}
}
label.inline {
	display: inline;
}




#content .mbtm1rem {
	margin-bottom: 1rem;
}

#content .mbtm3rem {
	margin-bottom: 3rem;
}

#content .mtop3rem {
	margin-top: 3rem;
}


#content dl dt{

}

#content dl dd{
	line-height: 1.6;
}

/* 円の基本形 */
.maru {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  flex-flow: column; 
  vertical-align: top;
}
/* 円の大きさ */
.size_normal{
  width: 60px;
  height: 60px;
}
/* 文字の大きさ */
.letter3 {
  font-size: 3em;
  line-height: 1.5em;
}
/* 円と文字の色 */
.blue1 {
  color: #FFFFFF;
  background-color: #56b2cf;
  border: 4px solid #56b2cf;
}


/** 05. 丸数字カウンターリスト
 **************************************************************** **/
ol.calender_list {
	counter-reset: my-counter;
	list-style: none;
	padding: 0;
}
#content ol.calender_list li {
	margin-bottom: 10px;
	padding-left: 30px;
	position: relative;
	line-height: 1.5;
}
ol.calender_list li:before {
	content: counter(my-counter);
	counter-increment: my-counter;
	background-color: #52A7E0;
	color: #fff;
	display: block;
	float: left;
	line-height: 22px;
	margin-left: -30px;
	text-align: center;
	height: 22px;
	width: 22px;
	border-radius: 50%;
	vertical-align: middle;
}

ol.calender_list.back_orange li::before {
	background-color: #e67e22;
}




a.btn-orange{
	font-family: 'YakuHanJP' ,"M PLUS Rounded 1c", "Open Sans", "Helvetica Neue", Helvetica, "Arial", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	padding: 0;
	margin: 10px 0;
	display: block;
	color: #fff !important;
	background: #FF8300;
	text-decoration: none;
	border-radius: 3px;
	font-weight: bold;
	text-align:center;
	vertical-align: middle;
}
a.btn-orange:after {
	content: "";
	display: inline-block;
	width: 50px;
	height: 50px;
	margin: 0 0 0 5px;
	background: url("../images/living_icon.png") no-repeat;
	background-size: contain;
	vertical-align: middle;
}
a.btn-orange:hover {
	background: #FFCE71;
}
a.btn-orange:hover:after {
	content: "";
	display: inline-block;
	width: 50px;
	height: 50px;
	margin: 0 0 0 5px;
	background: url("../images/living_icon.png") no-repeat;
	background-size: contain;
	vertical-align: middle;
	opacity: .7;
}
 
@media screen and (min-width: 768px){
	a.btn-orange{
	padding: 0 0 0 1em;
	margin: 5px auto;
	font-size:20px;
	display:inline-block;
	}
	a.btn-orange:before {
		margin: -3px 0 0 10px;
	}
}


/** 10. module 追加
 **************************************************************** **/
.module_inner {
	padding:20px 20px;
}
@media screen and (max-width: 767px){
	.module_inner {
		padding:10px 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;
}







/** 11. 文字列にスラッシュ追加
 **************************************************************** **/
.slash {
	position: relative;
	display: inline-block;
	padding: 0px 40px;
	font-size: 1.05em;
	color: #3498db;
	margin: 5px 0;
}
@media (max-width: 991px) {
	.slash {
		font-size: 1.8vw;
	}
}
@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: #3498db;
	-webkit-transform: rotate(60deg);
	transform: rotate(60deg);
}
.slash::after {
	content: '';
	position: absolute;
	bottom: 13px;
	display: inline-block;
	width: 32px;
	height: 2px;
	background-color: #3498db;
	-webkit-transform: rotate(-60deg);
	transform: rotate(-60deg);
}
.slash::before {
	left: 0;
}
.slash::after {
	right: 0;
}



.form-check-input {
border-color: #333;
}
