/*ベースの文字色は#333333を採用しています*/
*{
}
/*タグ指定CSS*/
html,body,#wrap{
	-webkit-appearance: none;
	padding:0px;
	margin:0px;
	height:100%;
	color:#333333;
	font-size:12px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, sans-serif;
}

body{
	height:100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: none;
}
.backallcolor{
    background: #f0f8ff;
}
img{
	border:0px;
}

a{
	text-decoration:none;
	color:#333333;
}

i{
	margin:0px 0.5rem 0px 0.5rem;
	display:inline;
}
ul{
	list-style-type:none;
	margin: 0px;
	padding: 0px;
}
li{
	margin-bottom:1rem;
}
input[type="button"],input[type="submit"]{
	border:none;
	cursor: pointer;
	line-height: 3rem;
	height: 4rem;
}
input[type="text"],input[type="tel"],input[type="password"],textarea{
	border-radius:0.5rem;
    padding: 1rem;
	margin:0.5rem 0px 2rem 2rem;
	border: 1px solid #cccccc;
}


h1 {
    position: relative;
    padding-left: 1.5rem;
    border-bottom: 0.2rem solid;
    font-size: 2rem;
    line-height: 3rem;
	margin-bottom:1rem;
	z-index: -1;

	}

h1:before {
    position: absolute;
    top: -0.8rem;
    left: 0.6rem;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    height: 1rem;
    width: 1rem;
    background: #B00059;
    content: "";
}

h1:after {
    position: absolute;
    top: 0.8rem;
    left: 0.2rem;
    transform: rotate(15deg);
    -webkit-transform: rotate(15deg);
    height: 0.7rem;
    width: 0.7rem;
    background: #B00059;
    content: "";
}
h5{
	font-size:1.5rem;
	font-weight:bold;
	margin-bottom:0.5rem;
}


/*文字サイズクラス*/
.ss{
	font-size:0.6rem;
}
.s{
	font-size:0.8rem;
}
.l{
	font-size:1.2rem;
}
.ll{
	font-size:2rem;
}
.xl{
	font-size:2.5rem;
}
.b{
	font-weight:700;
}

/*幅指定クラス*/
.w05{
	width:5%;
}
.w10{
	width:10%;
}
.w15{
	width:15%;
}
.w20{
	width:20%;
}
.w25{
	width:25%;
}
.w30{
	width:30%;
}
.w35{
	width:35%;
}
.w40{
	width:40%;
}
.w45{
	width:45%;
}
.w50{
	width:50%;
}
.w55{
	width:55%;
}
.w60{
	width:60%;
}
.w65{
	width:65%;
}
.w70{
	width:70%;
}
.w75{
	width:75%;
}
.w80{
	width:80%;
}
.w85{
	width:85%;
}
.w90{
	width:90%;
}
.w95{
	width:95%;
}
.w100{
	width:100%;
}
.h100{
	height:100%;
}

/*位置クラス*/
.t-center{
	text-align:center;
}
.t-left{
	text-align:left;
}
.t-right{
	text-align:right;
}
.d-center{
	margin:0 auto;
}
.d-left{
	margin-right:auto;
}
.d-right{
	margin-left:auto;
}
.f-right{
	float:right;
}
.f-left{
	float:left;
}

.v-center{
	display: table-cell;
	vertical-align: middle;
}

.clear{
	clear:both;
}


/*色要素*/
.keycolor0{
	color:#333333;
}
.keycolor0back{
	background-color:#333333 !important;
	color:#ffffff !important;
}
.keycolor1{
	color:#B00059 !important;
}
.keycolor1back{
	background-color:#B00059 !important;
	color:#ffffff !important;
}
.keycolorborder{
	border-color:#B00059 !important;
}


.keycolor2{
	color:#B00059 !important;
}
.keycolor2back{
	background-color:#ff6666 !important;
	color:#ffffff !important;
}
.keycolor2border{
	border-color:#B00059 !important;
}

.subcolor1{
	color:#ffcccc !important;
}
.subcolor1back{
	background-color:#dddddd !important;
	color:#333333 !important;
}
.subcolor2{
	color:#ffcccc !important;
}
.subcolor2back{
	background-color:#ffffdd !important;
	color:#333333 !important;
}

.caution{
	color:#B00059 !important;
}
.whiteback{
	background-color:#ffffff !important;
}
/*display要素*/
.dis-bl{
	display:block;
}
.dis-ib{
	display:inline-block;
}
.dis-tc{
	display:table-cell;
}


/*ボタン装飾*/
.btn01{
	margin:0 auto;
	width:95vw;
}


.btn01 a {
	display:block;
	border-radius:0.5rem;
	position: relative;
	margin:0.5rem 0;
	text-decoration: none;
	text-align:center;
	line-height: 3rem;
    padding: 1rem 0 1rem 3rem;
	font-size:1.2rem;
	}
.btn01 i {
	border-radius:0.5rem 0px 0px 0.5rem;
	position: absolute;
	top: 0;
	left: 0;
	width: 4rem;
	height: 3rem;
	margin: 0;
	padding:1rem 0 1rem 0;
	line-height: 4rem;
	text-align: center;
	z-index: 1;
}
.btn01 i:before { padding 0; line-height: 3rem; }

.btn01 i:after {
	content: '';
	position: absolute;
	z-index: -1;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	width: 3rem;
	height: 3rem;
	background: inherit;
	left: 2rem;
	top: 40%;
	margin: -1rem 0 0 -1rem;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.btn02{
	border-radius:0.5rem;
	padding:1rem 0px;
	margin:0.5rem 1%;
	line-height: 2.5rem;
}

/*ページ要素*/
.contents{
	margin:0 auto;
	width:95vw;
    padding: 1rem 1vw;
	margin-top:1rem;
}

.imenu{
	position: relative;
	line-height:3rem;
	margin-left:2rem;
	margin-bottom:1rem;
	border-bottom: 1px solid #dddddd;
}
.imenu i{
	font-size:5vw;
}

.imenu:after{
	position: absolute;
	content: "\f101";
	font-family: FontAwesome;
	z-index: 1;
	top: 0;
	right: 1rem;
	font-size: 1.2rem;
	color: #cccccc;
}


.footermenu{
	padding:2rem 0px;
}
.footer{
	padding:1rem 0px;
}
.idx-header{
	padding:0.8rem 0px;
	
}


.linelink{
	display:block;
	height:4rem;
	width:100%;
	margin:10px 0px;
	border-bottom: 1px solid #dddddd;
}

.linelink a{
	display:block;
	height:100%;
	width:100%;
	padding:15px 0px 0px 10px;
	box-sizing:border-box;
}

.sbbs{
position: relative;
    width: 92vw;
    height: 31vw;
    margin: 0.5rem 0;
    border: 1px #ccc solid;
    border-radius: 0.3rem;
    padding: 0.5rem;
	}
.sbbs:after{
	position: absolute;
	content: "\f101";
	font-family: FontAwesome;
	z-index:1;
	top: 43%;
	right: 1rem;
	font-size: 2rem;
	color:#B00059;
}

.bbsimg{
	display:inline-block;
	width:30vw;
}

.bbsimg img{
    width: 30vw;
    height: 30vw;
}
.bbstxt{
	width:55vw;
	padding:0vw 0vw 0vw 2vw;
	display:inline-block;
	vertical-align:top;
	height: 30vw;
	overflow: hidden;
	font-size:1.2rem;
	line-height:1.8rem;
}
.menu{
	width:100vw;
	margin:0 auto;
	margin-top: 1rem;
}

.menubox{
	display: inline-block;
	width: 45vw;
	border: 1px solid #ccc;
	border-radius: 0.2rem;
	margin:0 2vw 0 1vw;
	position: relative;
}
.menubox:first-child{
	margin:0 1vw 0 2vw;
}
.menubox:after{
	position: absolute;
	content: "\f101";
	font-family: FontAwesome;
	z-index: 1;
	top: 25%;
	right: 1rem;
	font-size: 2rem;
	color: #B00059;
}
.menubox i{
	color: #B00059;
	font-size:1.5rem;
}
.menubox a{
	display:block;
	padding: 1.5rem 1vw 1.5rem 3vw;
}


.textbox{
	padding:0 5vw;
}

/* 共通 */
.bbsinfo-img{
	width:95vw;
	height:95vw;
	background-repeat: no-repeat;
	background-size: cover;
	margin-bottom:1rem;
	}
.bubble {
 display:inline-block;
 position: relative;
 padding:1em;
 border-radius:5px;
 background: #f5deb3;
 width:89vw;
}
.bubbletext{
	font-size:1.2rem;
	line-height:2rem;
}

.sbbsprf{
	padding:5px 10px;
	margin:0px 5px 10px 5px;
	border-radius:5px;
}

.fs08rem{
	font-size:0.8rem;
	color:#000000;
}
.text-center{
	text-align:center;
}
.text-bold{
	font-weight:bold;
}
.flextext{
	display:flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
	font-size:inherit;
}
.flextext-left{
	flex-shrink: 0;
	font-size:inherit;
	padding: 0 0.25rem 0 0;
}
.flextext-right{
	font-size:inherit;
}
.colormake01{
	color:#ff0000;
}
