@charset "utf-8";
.center {
	text-align: center;
}
img.maru {
	border-radius: 50%;
}
.marker {
	font-weight: bold;
	font-size: 120%;
	color:#f24bc8;
}
.telnum {
    font-size: 200%;
    font-weight: 800;
    display: block;

}
.news_list h1 {
	font-size: 120% !important;
    color: #fff !important;
    margin: 5px 0px !important;
    padding: 5px 15px !important;
    border: 2px dashed #fff !important;
    border-radius: 5px !important;
    box-shadow: 0 0 3px 3px #f9b1db !important;
    text-shadow: 0 0 1px !important;
    background-color: #f9b1db !important;
    z-index: 10;
}
.news_list dl {
	display: block;
	padding:20px;
	background: #fff;
	border: solid 2px #f9b1db;
	border-radius:5px;
}
.news_list dl dt{
	float: left;
	margin-right: 20px;
}
.news_list dl dd {
	margin-bottom: 10px;
	border-bottom: dotted 1px #ccc;
}
.content p img {
	border-radius: 10px;
}

#subpage #mainImg {
	background: url(../images/sub_main_img_01.jpg) ;
	background-size: cover;
}
#subpage #mainImg h1 {
	padding: 130px 0;
	color:#fff;
	font-size: 300%;
	font-weight: 900;
}
#flow h2.title {
	font-size: 120% !important;
    color: #fff !important;
    margin: 0px !important;
    padding: 5px 15px !important;
    border: 2px dashed #fff !important;
    border-radius: 5px !important;
    box-shadow: 0 0 3px 3px #f9b1db !important;
    background-color: #f9b1db !important;
    z-index: 10;
}
#price h2.title {
	font-size: 120% !important;
    color: #fff !important;
    margin: 0px !important;
    padding: 5px 15px !important;
    border: 2px dashed #fff !important;
    border-radius: 5px !important;
    box-shadow: 0 0 3px 3px #D0E6A1 !important;
    background-color: #D0E6A1 !important;
    z-index: 10;
}
#chara h2.title {
	font-size: 120% !important;
    color: #fff !important;
    margin: 0px !important;
    padding: 5px 15px !important;
    border: 2px dashed #fff !important;
    border-radius: 5px !important;
    box-shadow: 0 0 3px 3px #AAE2E4 !important;
    background-color: #AAE2E4 !important;
    z-index: 10;
}
#contact h2.title {
    font-size: 120% !important;
    color: #fff !important;
    margin: 0px !important;
    padding: 5px 15px !important;
    border: 2px dashed #fff !important;
    border-radius: 5px !important;
    box-shadow: 0 0 3px 3px #FBCB9F !important;
    background-color: #FBCB9F !important;
    z-index: 10;
}
#staff h2.title {
    font-size: 120% !important;
    color: #fff !important;
    margin: 0px !important;
    padding: 5px 15px !important;
    border: 2px dashed #fff !important;
    border-radius: 5px !important;
    box-shadow: 0 0 3px 3px #d6bcda !important;
    background-color: #d6bcda !important;
    z-index: 10;
}
#flow ol li {
	/*
    display: block;
    color: #fff;
    margin: 30px 0 50px;
    padding: 5px 15px 10px;
    border: 2px dashed #fff;
    border-radius: 5px;
    box-shadow: 0 0 3px 3px #f9b1db;
    background-color: #f9b1db;
    position: relative;
    */
    margin: 30px 0 50px;
    padding: 5px 5px 10px ;
    display: block;
    position: relative;
    border: 2px solid #fff ;
    border-radius: 5px ;
    box-shadow: 0 0 3px 3px #f9b1db ;
}
#flow ol li h3,#price .contents h3,#about .contents h3,#chara .contents h3{
	font-size: 150%;
	font-weight: 900;
	color: #5b5959;
	text-shadow: 0 1px 2px #fff;
}
#flow ol li h3 span {
	font-size: 85%;
	margin-left: 15px;
}
#flow ol li p, #price p,#about p,#chara .contents p {
	color: #32363d;
	font-weight: 500;
}
#flow ol li p a {
	color: #2652f2;
	text-decoration: underline;
}
#flow ol li:after {
	content:"";
    display: block;
    width: 30px;
    height: 30px;
    border-right: 5px solid #666;
    border-bottom: 5px solid #666;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    margin: 0 auto;
    clear: both;
    position: absolute;
    bottom:-30px;
    left: 50%;
    margin-left: -15px;
}
.caution {
	background: rgba(251,255,196,0.6);
	border-radius: 5px;
	padding: 10px;
}
.caution a {
	word-break: break-all;
}
#flow ol li .caution h4 {
	border-left: solid 5px #f75db4;
	padding-left: 6px;
	color: #5b5959;
	font-weight:600;
}
#flow ol li .caution p {
	color:#f2299b;
	text-shadow: none;
}
#flow ol li .caution p a {
	color:#2652f2;
}
#flow ol li.last:after {
	display: none;
}
#price .contents {
    /*color: #fff ;
    margin: 30px 0 50px;

    border: 2px dashed #fff ;
    border-radius: 5px ;
    box-shadow: 0 0 3px 3px #D0E6A1 ;
    background-color: #D0E6A1 ;
    position: relative;*/
    margin: 30px 0 50px;
    padding: 5px 5px 10px ;
    display: block;
    position: relative;
    border: 2px solid #fff ;
    border-radius: 5px ;
    box-shadow: 0 0 3px 3px #D0E6A1 ;
}
#contact .contents {
    /*color: #fff ;
    margin: 30px 0 50px;

    border: 2px dashed #fff ;
    border-radius: 5px ;
    box-shadow: 0 0 3px 3px #D0E6A1 ;
    background-color: #D0E6A1 ;
    position: relative;*/
    margin: 30px 0 50px;
    padding: 5px 5px 10px ;
    display: block;
    position: relative;
    border: 2px solid #fff ;
    border-radius: 5px ;
    box-shadow: 0 0 3px 3px #FBCB9F ;
}
#about .contents {
    /*color: #fff ;
    margin: 30px 0 50px;
    padding: 5px 15px 10px ;
    border: 2px dashed #fff ;
    border-radius: 5px ;
    box-shadow: 0 0 3px 3px #F9C643 ;
    background-color: #F9C643 ;
    position: relative;*/
}
#about .contents .content_box{
	width: 100%;
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
}
@media screen and (max-width: 768px){
	#about .contents .content_box{
		justify-content: center;
	}
}
#about .contents .content_box .content_item01{
	width: 240px;
	padding-right: 0px;
}
@media screen and (max-width: 768px){
	#about .contents .content_box .content_item01{
		padding-right: 15px;
	}
}
@media screen and (max-width: 320px){
	#about .contents .content_box .content_item01{
		padding-right: 0px;
	}
}
#about .contents .content_box .content_item02{
	width: 260px;
}
#chara .contents {
    /*color: #fff ;
    margin: 30px 0 50px;

    border: 2px dashed #fff ;
    border-radius: 5px ;
    box-shadow: 0 0 3px 3px #AAE2E4 ;
    background-color: #AAE2E4 ;
    position: relative;*/
    margin: 30px 0 50px;
    padding: 5px 5px 10px ;
    display: block;
    position: relative;
    border: 2px solid #fff ;
    border-radius: 5px ;
    box-shadow: 0 0 3px 3px #AAE2E4 ;
}
#staff .staff_list {
    /*color: #fff ;
    margin: 30px 0 50px;

    border: 2px dashed #fff ;
    border-radius: 5px ;
    box-shadow: 0 0 3px 3px #AAE2E4 ;
    background-color: #AAE2E4 ;
    position: relative;*/
    margin: 30px 0 50px;
    padding: 5px 5px 10px ;
    display: block;
    position: relative;
    border: 2px solid #fff ;
    border-radius: 5px ;
    box-shadow: 0 0 3px 3px #d6bcda ;
}
#staff .staff_list img {
    border-radius: 15px;
}
#staff .staff_list h1 {
    font-size: 150%;
    font-weight: 800;
    border-bottom: solid 2px #d6bcda;
    margin-bottom: 10px;
}
#staff .staff_list dt {
    float: left;
    clear: left;
    color:#fff;
    background: #d6bcda;
    border-radius: 10px;
    padding: 0 10px;
    margin-right: 10px;
    font-weight: 600;
}
#staff .staff_list dd {
    margin-bottom: 15px;
}
#about li {
	float: left;
	margin:10px 23px;
}
#about li img {
	border-radius: 50%;
}
#about dl dt {
	float: left;
	clear:left;
	width: 100px;
}
#about dl dd {
	border-bottom: dotted 3px #F9C643;
	margin-bottom: 10px;
}
#price dl {
	margin: 10px 0;
	color: #32363d;
}
#price dl dt {
	float: left;
	padding-top: 5px;
	font-weight: 600;
}
#price dl dd {
	float: right;
	font-size: 130%;
	font-weight: 900;
}
.blog_content > .date {
    text-align: right;
    font-size: 90%;
    font-weight: bold;
    color:#F9C643;
    margin: 10px 0;
}
.blog_content > .date::before {
    content:"投稿日：";
}
#blog .blog .blog_content,#sidebar .blog_category_list {
    margin-top:-15px;
    background: rgba(255,255,255,.8);
    padding:10px;
    box-shadow: 0 0 3px 3px #f9c643 !important;
    z-index: 50;
    position: relative;
    border-radius: 10px;
}
#sidebar .blog_category_list {
    margin-bottom: 50px;
    padding-top: 20px;
}
#sidebar .blog_category_list li::before {
    content:"・";
    color:#f9c643;
}
#sidebar .blog_category_list li a {
    display: inline-block;
    font-size: 90%;
    margin-bottom: 5px;
}
#sidebar .blog_category_list li a:hover {
    color: #f9c643;
    text-decoration: underline;
}
#blog .blog .blog_content h2 {
    font-size: 130%;
    font-weight: 800;
    color:#F9C643;
    border-bottom: solid 1px #F9C643;
    margin: 15px 0 10px;
    text-shadow: 0 0 3px #fff;
}
#blog .blog .blog_content h3 {
    font-size: 110%;
    border-left: solid 5px #F9C643;
    font-weight: bold;
    padding-left: 5px;
    margin: 10px 0 5px;
}
#blog .blog .blog_content h4 {
    font-weight: bold;
    border-bottom: solid 1px #999;
    margin: 10px 0 5px;
}
#blog .blog .blog_content img {
    max-width: 100%;
    height: auto;
}
#blog .blog .blog_content a {
    text-decoration: underline;
}
.ggmap {
position: relative;
padding-bottom: 50%;
padding-top: 0px;
height: 0;
overflow: hidden;
border-radius: 15px !important;
}
.ggmap iframe,
.ggmapr object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.title {
	text-shadow: 0 1px 2px #666 !important;
	font-weight: 600;
}
@media only screen and (max-width: 644px){
#header h1 {
	padding:20px 0 0;
	margin-top: 5px;
}
#header {
	padding-bottom: 20px;
}
#subpage #mainImg h1 {
	font-size: 140%;
	padding-top: 100px;
	text-shadow: 0 1px 10px #000;
}
#mainNav {
	padding: 5px 0;
}
#mainImg {
	background: none;
	margin:0;
	height: 200px;
}
#footer dl {
	float: none;
	width: 100%;
	font-size: 90%;
}
#footer dl dt {
	width: 30%;
	margin-left: 10px;
}
#footer dl dd {
	text-align: left;
}
.sp_none {
	display: none;
}
#mainNav .inner {
	width: 100%;
}
#flow ol li h3 {
	margin-bottom: 10px;
}
#flow ol li p {
	line-height: 1.3;
}
#about ul {
	width: 100%;
	margin:0;
	padding: 0;
}
#about ul li{
	width: 31%;
	margin:10px 1%;
}
#about ul li img {
	width: 100%;
}
#about dl dt {
	float: none;
	display: inline-block;
	border-left: solid 5px #f9c643;
	margin-bottom: 10px;
	padding: 0 5px;
	font-weight: 600;
}
#about dl dd {
	padding: 0 0 10px 5px;
}
}
