@charset "utf-8";

/* ---------------------------------------------
　layout modules
------------------------------------------------ */

/* base modules
------------------------------------------------ */
.content p,
.content ul,
.content dl,
.content ol,
.content table,
.content blockquote{
	margin: 30px 0 0;
	line-height: 2.25;
	font-size: 1.6rem;
	color: #666;
}

.column-image-left + .entry-container > p,
.column-image-right + .entry-container > p {
  margin-top: 10px;
}

.content ul p, .content ul dl, .content ul ol, 
.content dl p, .content dl ul, .content dl ol, 
.content ol p, .content ol ul, .content ol dl, 
.content table p, .content table ul, .content table dl, .content table ol{
	margin: 0;
}

.content p img, .content dl img, .content ul img {
	vertical-align: middle;
}

.column-image-left,.column-image-center,.column-image-right { margin-top:20px !important; }

/* common modules
------------------------------------------------ */

em        { color:#FD6408;  }

.content .small    { font-size:87%;  }
.content .x-small  { font-size:78%;  }

.content .large    { font-size:120%; }
.content .x-large  { font-size:140%; }

.attention{ color: #FF3366;   }
.bold     { font-weight:bold; }

.center{ text-align: center; }
.right { text-align:right;   }
.left  { text-align:left;    }

.float-l{ float: left;  }
.float-r{ float: right; }
.clear  { clear: both;  }

.img-l{ float:left;  margin:0 25px 10px 0; }
.img-r{ float:right; margin:0 0 10px 25px; }

.nowrap         { white-space:nowrap; }
.nomargintop    { margin-top: 0 !important; }
.content .nocss { margin:0; padding:0; border:none; background:none; }

.content .caption{ text-align: center; margin: 5px 0 0!important; font-size: 87%; color: #999; }

a[href*="tel:"] {
	display: inline-block;
	pointer-events: none;
}

.ac-link {
	margin-top: -30px;
	padding-top: 30px;
}

/* --- ext icon --- */

a[href$='.xls'], a[href$='.xlsx']{
	background: url(../images/fileicon/xls.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a[href$='.doc'], a[href$='.docx']{
	background: url(../images/fileicon/doc.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a[href$='pdf']{
	background: url(../images/fileicon/pdf.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a[href$='ppt']{
	background: url(../images/fileicon/ppt.png) no-repeat 100% 50%;
	padding-right: 25px;
}


/* --- openwin --- */

.openwin{ 
	padding-right: 15px;
}

/* --- blockquote --- */

blockquote, 
.acms-entry blockquote{
	margin-top: 40px;
	padding: 50px 65px 50px 140px;
	line-height: 2.4;
	font-size: 1.5rem;
	background: url(../images/bg_blockquote.png) 0% 45px no-repeat #fff;
	border: 0;
}


/* --- btn --- */

.btn{
	text-align: center;
}

.btn a{
	display: inline-block;
	padding: 10px;
	margin: 0 20px;
	border: 3px solid #62cbde;
	width: 25%;
}

.btn a:hover, 
.btn a:active{
	background: #e9f2ee;
}


/* --- btn li --- */

.btn.col2 {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    width: 80%;
    margin: auto;
    padding: 50px 0;
}
.btn.col2 li {
	padding: 10px 0;
	width: 70%;
}
.btn.col2 li a {
	display: block;
	width: 70%;
	margin: auto;
}


/* ------ title -------------------------------- */

.content h2, 
.content .wysiwyg h1{
	clear:both;
	display: inline-block;
	margin: 60px 0 0;
	line-height: 1.5;
	text-align: left;
	font-weight: bold;
	font-size: 2.4rem;
	color: #333;
	background: url(../images/line_h2_yellow.png) 0 100% repeat-x;
}

.content h2.pink, 
.content .wysiwyg h1.pink{
	background-image: url(../images/line_h2_pink.png);
}

.content h2.blue, 
.content .wysiwyg h1.blue{
	background-image: url(../images/line_h2_blue.png);
}


.content h3, 
.content .wysiwyg h2{
	position: relative;
	clear:both;
    display: flex;
    align-items: center;
	margin: 50px 0 0;
	font-weight:bold;
	font-size: 2.2rem;
	color: #333;
}
.content h3:after, 
.content .wysiwyg h2:after{
    display: inline;
    content: "";
    flex-grow: 1;
    margin-left: 15px;
    border-top: 3px solid #dddddd;
}

.content h4, 
.content .wysiwyg h3{
	clear:both;
	margin: 50px 0 0;
	font-weight:bold;
	font-size: 2.0rem;
	color: #333;
}

.content h5, 
.content .wysiwyg h4{
	clear:both;
	margin: 50px 0 0;
	padding: 5px 10px;
	font-weight:bold;
	font-size: 2.0rem;
	color: #666;
}

.h2-image-none {
	background-color: #f8f7f1;
    font-size: 12px;
    height: 2.4rem;
    display: inline-block;
}

.content .h5-small {
	font-size: 1.8rem;
}

.content .caution {
	border: double red;
	margin-bottom: 60px;
	padding: 0 30px 30px;
}

.content .caution p {
	color: red;
}

#contact .inner .caution {
	border: double red;
	margin-bottom: 60px;
	padding: 30px;
}

#contact .inner .caution p {
	color: red;
}


/* ------ ul ----------------------------------- */


/* --- normal list --- */

.list li{
	position: relative;
	margin-left: 1.5em;
}

.list li:before {
	content: "\0025a0";
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
	font-size: 0.8rem;
	color: #f2cf2e;
	position: absolute;
	left: -2em;
	top: 0.7em;
}

/* --- link list --- */

.link li:before {
	content: "\003e";
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
	font-weight: bold;
	font-size: 1.8rem;
	color: #87d0dc;
    transform: scaleX(0.5);
}

.link a{
	color: #33b8cf;
}
.link a:hover,
.link a:active{
	text-decoration: underline;
}

/* --- number list --- */

ol {
	counter-reset:number;
	padding:0;/* paddingキャンセル */
	list-style:none;/* olがはき出す数字を消す */
}

ol > li {
	text-indent: -30px;
	padding-left: 30px;
}

ol > li:before {
	counter-increment: number;
	content: counter(number) ". ";
	font-weight: bold;
	text-align: right;
	display: inline-block;
	width: 25px;
	margin-right: 5px;
}
ol > li li{
    text-indent: 0;
    padding-left: 0;
}

/* flow */

ol.flow li{
	border: 5px solid #e9f2ee;
	padding: 20px 30px 20px 50px;
	margin-bottom: 40px;
	background: #fff;
	position: relative;
	border-radius: 20px;
}

ol.flow li::after{
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 2px #aaa;
	border-right: solid 2px #aaa;
	-ms-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	position: absolute;
	top: 118%;
	left: 50%;
	margin-top: -4px;
}

ol.flow li:last-child::after{
	display: none;
}

ol.flow li li::after{
	display: none;
}

ol.flow li p, 
ol.flow li ol{
	margin-left: 50px;
}

ol.flow li li{
	border: 0;
	padding: 0;
	margin: 0;
}

/* --- flow-list --- */

ol.flow-list li.flow{
	padding: 20px 30px;
	margin-bottom: 2px;
	background: #e9f2ee;
	position: relative;
}

ol.flow-list li.flow::after{
	content: '';
	width: 30px;
	height: 30px;
	border: 0px;
	border-top: solid 2px #62cbde;
	border-right: solid 2px #62cbde;
	-ms-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	position: absolute;
	bottom: -8px;
	left: 50%;
	margin-top: -4px;
	z-index: 99;
}

ol.flow-list li:last-child::after{
	display: none;
}

ol.flow-list > li{
	text-indent: 0;
}

ol.flow-list a{
	text-decoration: underline;
}

ol.flow-list li dl, 
ol.flow-list li ul{
	margin-top: 0;
}

ol.flow-list li dl:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html ol.flow-list li dl             { zoom:1; } /* IE6 */
*:first-child+html ol.flow-list li dl { zoom:1; } /* IE7 */

ol.flow-list li.flow::before{
	font-size: 50px;
	font-family: "游明朝体", Yu Mincho, "游明朝 Medium", "Yu Mincho Medium", "游明朝", "Yu Mincho", "メイリオ", sans-serif;
	width: 15px;
	line-height: 1em;
	color: #62cbde;
	float: left;
}

ol.flow-list li dl{
	padding-left: 60px;
}

ol.flow-list li dt{
	font-size: 140%;
	font-weight: bold;
}

ol.flow-list li dd.img{
	float: right;
	width: 20%;
	margin-top: -40px;
}

ol.flow-list li dd.img img{
	width: 100%;
}

/* --- attention list --- */

.rice li{
	margin:0 0 5px 1em;
	text-indent:-1em;
}

/* --- compact list --- */

.compact li{
	display:inline;
	margin-right:10px;
}


.content ul ul, .content dl dl, .content ol ol {
	margin-top: 5px;
}

/* --- index --- */

.content .index {
	margin: 100px auto 30px;
	font-size: 0;
	text-align: center;
}

.content .index:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html .content .index             { zoom:1; } /* IE6 */
*:first-child+html .content .index { zoom:1; } /* IE7 */

.content .index li {
	width: 220px;
	position: relative;
	display: inline-block;
	margin:0 5px 50px;
}

.content .index li .img {
	-webkit-border-radius: 21px 0 21px 0 / 21px 0 21px 0;
	-moz-border-radius: 21px 0 21px 0 / 21px 0 21px 0;
	border-radius: 21px 0 21px 0 / 21px 0 21px 0;
	overflow: hidden;
}

.content .index li .img img{
	width: 220px;
	height: auto;
}

.content .index li .frame {
	position: absolute;
	top: 0;
	left: 0;
}

.content .index li .title {
	text-align: center;
	margin-top: 20px;
	font-size: 1.6rem;
	font-weight: bold;
}

.content .index li .title span {
	position: relative;
	display: inline-block;
}

.content .index li .title span::before {
	content: "";
	display: block;
	width: 14px;
	height: 34px;
	background: url(../camp/images/list-about-title-l.png) top left no-repeat;
	background-size: contain;
	position: absolute;
	top: -2px;
	left: -20px;
}

.content .index li .title span::after {
	content: "";
	display: block;
	width: 14px;
	height: 33px;
	background: url(../camp/images/list-about-title-r.png) top left no-repeat;
	background-size: contain;
	position: absolute;
	top: -2px;
	right: -20px;
}

/* icon */

.icon li{
	display: inline-block;
    width: 200px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    font-size: 1.3rem;
    color: #fff;
    border-radius: 15px;
}

.icon li.camp{
    background-color: #f6b8b7;
}
.icon li.commute{
    background-color: #91cbd3;
}

/* staff */

.content ul.staff{
	width: 1120px;
	margin: 30px auto;
	clear: both;
}

.content ul.staff:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html .content ul.staff             { zoom:1; } /* IE6 */
*:first-child+html .content ul.staff { zoom:1; } /* IE7 */

.staff li{
	width: 265px;
	float: left;
	margin-right: 20px;
}

.staff li:last-child{
	margin-right: 0;
}

.staff dt img{
	width: 100%;
}

.staff dd.name{
	font-size: 120%;
	text-align: center;
}

.staff dd.name span{
	font-size: 70%;
}

.staff dd.position{
	background-color: #91cbd3;
	border-radius: 10px;
	color: #fff;
	padding: 5px 10px;
	line-height: 1em;
	font-size: 87%;
	text-align: center;
}

.staff dd.udon{
	font-size: 87%;
	border-bottom: 1px solid #fafafa;
	padding-bottom: 5px;
	margin-bottom: 5px;
	color: #999;
}

/* ------ dl ----------------------------------- */

/* --- link list --- */

.link dt{
	background:url(../images/icon_arrow01.png) no-repeat 0 0.4em;
	padding-left:15px;
	font-weight:bold;
}

.link dd{
	padding-left:15px;
}

/* --- horizonal --- */

.horizonal dt {
  clear: left;
  float: left;
  width: 10em;
  padding:8px 8px 8px 0;
}

.horizonal dd {
  padding:8px 15px 8px 11em;
  border-bottom:1px solid #ddd;
}



/* ------ layout frame ------------------------- */

.content .layout-frame {
	clear: both;
	margin-left: -30px;
}

.content .layout-unit {
	float: left;
	display: block;
	margin-left: 30px;
}

/* 1200px */
.grid-1 { width:calc(8.3% - 30px); }
.grid-2 { width:calc(16.6% - 30px); }
.grid-3 { width:calc(25% - 30px); }
.grid-4 { width:calc(33.3% - 30px); }
.grid-5 { width:calc(41.6% - 30px); }
.grid-6 { width:calc(50% - 30px); }
.grid-7 { width:calc(58.3% - 30px); }
.grid-8 { width:calc(66.6% - 30px); }
.grid-9 { width:calc(75% - 30px); }
.grid-10 { width:calc(83.3% - 30px); }
.grid-11 { width:calc(91.6% - 30px); }
.content .layout-3col .grid-4  {
	width:calc(33.3% - 30px);
}

.grid-1 p img, .grid-2 p img, .grid-3 p img, .grid-4 p img, .grid-5 p img, .grid-6 p img, .grid-7 p img, .grid-8 p img, .grid-9 p img, .grid-10 p img, .grid-11 p img{
	width: 100%;
	height: auto;
}


/* ------ social media ------------------------- */

.social-icon ul{
	margin:20px auto;
	text-align:center;
}

.social-icon ul li{
	display:inline-block;
}

.social-icon ul li a {
	display: block;
	width: 60px;
	height: 60px;
	text-indent: -99999px;
	font-size: 50%;
	border-radius:50%;
}

@media screen and ( min-width:750px ){
	.facebook:hover {
		background:url(../images/svg/facebook.svg) center center no-repeat;
		background-size: 100%;
		background-color: #3b5998!important;
	}
}
.facebook {
	background:url(../images/svg/facebookClick.svg) center center no-repeat;
	background-size: 100%;
	background-color: #ffffff!important;
	border: 1px solid #3b5998;
}
@media screen and ( min-width:750px ){
	.twitter:hover {
		background:url(../images/svg/twitter.svg) center center no-repeat;
		background-size: 100%;
		background-color: #00aced!important;
	}
}
.twitter {
	background:url(../images/svg/twitterClick.svg) center center no-repeat;
	background-size: 100%;
	background-color: #ffffff!important;
	border: 1px solid #00aced;
}
@media screen and ( min-width:750px ){
	.google:hover {
		background:url(../images/svg/google.svg) center center no-repeat;
		background-size: 100%;
		background-color: #d64136!important;
	}
}
.google {
	background:url(../images/svg/googleClick.svg) center center no-repeat;
	background-size: 100%;
	background-color: #ffffff!important;
	border: 1px solid #d64136;
}
@media screen and ( min-width:750px ){
	.line:hover {
		background:url(../images/svg/line.svg) center center no-repeat;
		background-size: 100%;
		background-color: #2cbf13!important;
	}
}
.line {
	background:url(../images/svg/lineClick.svg) center center no-repeat;
	background-size: 100%;
	background-color: #ffffff!important;
	border: 1px solid #2cbf13;
}



/* ------ table -------------------------------- */

table{
	width: 100%;
	margin-top: 50px;
	border-collapse:collapse;
	border: none;
	border-top: 3px solid #fff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

}

table th,
table td{
	padding: 15px;
	vertical-align:middle;
	border: none;
	border-bottom: 3px solid #fff;
}

table th{
	width: 35%;
	text-align: center;
	font-weight:bold;
	background:#e9f2ee;
}
table th.noset{
	width: auto;
}
table td{
	background:#f8f7f1;
}

table thead th,
th.head {
	width: auto;
	vertical-align: middle;
	background:#daecec;
}

/* --- noborder --- */

table.noborder,
table.noborder td,
table.noborder th{
	border:0;
	background: none;
}

/* --- assurance-cell --- */
.sp-scroll .transport-cost {
	line-height: 105px;
}

/* --- additional-fee-table --- */
.additional-fee-table {
	text-align: center;
}
.additional-fee-table th {
	width: 25%;
}


/* index
------------------------------------------------ */

.index {
	clear: both;
	margin: 0 0 0 -20px;
}

.index dl {
	position: relative;
	float: left;
	display: inline;
	margin-left: 20px;
	width: 350px;
	background: #eee;
}

.index dt {
	padding: 7px;
	background:#ddd;
}

.index dt a {
	text-decoration:none;
}

.index dd {
	padding: 7px;
}


/* cms
------------------------------------------------ */

/* --- entry-date --- */

.entry-date {
	text-align: right;
	font-size: 87%;
}

/* --- entry-navigation / pager-navigation --- */

.entry-navigation, 
.pager-navigation{
	margin: 100px 0 0;
	font-size: 1.8rem;
}

.entry-navigation a:link, .entry-navigation a:visited, .entry-navigation a:hover, .entry-navigation a:active, 
.pager-navigation a:link, .pager-navigation a:visited, .pager-navigation a:hover, .pager-navigation a:active{
	text-decoration:none;
}

.entry-navigation ul, 
.pager-navigation ul{
	margin:0;
}

/* entry-navigation */

.entry-navigation{
	background: #fff;
}

.entry-navigation li{
	width:33%;
	height: 40px;
	line-height: 40px;
	text-align: center;
	background-color: #fff;
}
.entry-navigation a{
	display: block;
	width: 100%;
	height: 100%;
}

.entry-navigation .entry-new{
	float:right;
}

.entry-navigation .entry-list{
	float:left;
}

.entry-navigation .entry-old{
	float:left;
}
.entry-navigation li a:hover{
	background-color: #e9f2ee;
}

.entry-navigation .home{
	height: 40px;
	margin-top: -40px;
	text-align: center;
}
.entry-navigation .home a{
	color: #fff;
	background-color: #addce4;
}
.entry-navigation .home a:hover{
	color: #addce4;
	background-color: #fff;
	opacity: 1;
}

.entry-navigation ul:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html .entry-navigation ul             { zoom:1; } /* IE6 */
*:first-child+html .entry-navigation ul { zoom:1; } /* IE7 */

/* pager-navigation */

.pager-navigation ul li{
	float:left;
	width: 40px;
	height: 40px;
	margin-right: 1px;
	line-height: 40px;
	text-align:center;
	font-size: 87%;
}

.pager-navigation ul li span.cur{
	display:block;
	color: #fff;
	background: #fec9c8;
}

.pager-navigation ul li a{
	display:block;
	width: 40px;
	height: 40px;
    background-color: #fff;
}

/* 続きを読むリンク */
.search.entry p.continue {
	margin: 0;
	padding: 0;
}

.search.entry p.continue a {
	display: block;
	margin: 0;
	padding: 10px 0;
	border-top: 1px solid #E8E8E8;
}

.search.entry p.continue a:hover {
	background-color: #F0F0F0;
}


/* faq */
.faq-box{
	margin-top: 30px;
	padding: 30px 25px;
	background-color: #fff;
	border-radius: 10px;
}
.faq-box .q-box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	line-height: 2;
	font-size: 1.8rem;
	cursor: pointer;
}
.faq-box .q-box:before{
	content: "";
	display: inline-block;
	width: 25px;
	height: 37px;
	margin-right: 28px;
	background: url(../images/ico_faq.png) 50% 50% no-repeat;
}
.faq-box .q-box span{
	display: inline-block;
	width: calc(100% - 125px);
	margin-right: 30px;
}
.faq-box .q-box .btn-faq{
	position: relative;
	width: 32px;
	height: 32px;
	background: #addce4;
	border-radius: 100%;
}
.faq-box .q-box .btn-faq:before,
.faq-box .q-box .btn-faq:after{
	content: "";
	position: absolute;
	width: 10px;
	height: 0px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	border-top: 2px solid #fff;
}
.faq-box .q-box .btn-faq:after{
	transition: transform 0.2s ease-out;
	transform: rotate(90deg);
}
.faq-box .q-box .btn-faq.close{
	background: #dddddd;
}
.faq-box .q-box .btn-faq.close:after{
	transform: rotate(0deg);
}
.faq-box .a-box{
	display: none;
	padding: 30px 55px 30px 35px;
}
.faq-box .a-box *:first-child{
	margin-top: 0;
}

.faq-box .a-box a{
	text-decoration: underline;
}

/* tab */
.list-tab{
	border-bottom:solid 1px #62cbde;
}
.list-tab:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html .list-tab             { zoom:1; } /* IE6 */
*:first-child+html .list-tab { zoom:1; } /* IE7 */
.list-tab li{
    text-align: center;
    color: #62cbde;
    background: #fff;
    border: solid 1px #62cbde;
	border-bottom: 0;
    cursor: pointer;
	float: left;
	padding: 7px 15px;
	margin: 0 10px 0 0;
}
.list-tab li:first-child{
	border-left: 1px solid #62cbde;
}
.list-tab li.active{
	position: relative;
    color: #ffffff;
	background: #62cbde;
}
.list-tab li:hover{
	opacity: 0.7;
	transition: opacity 0.3s ease-out;
}
.tab-block-cover .tab-block{
	display: none;
}
.tab-block-cover .tab-block.active{
	display: block;
}

.price-list .facility{
	background: #fff;
}
.price-list .casita-fee-link {
	vertical-align: middle;
	background-color: #f0f0f0;
}
.price-list .smansion-fee-link {
	vertical-align: middle;
	background-color: #edf0e0;

}


.price-list .plan{
	background: #f8f7f1;
	border-bottom: 3px solid #fff;
}
.price-list tbody th{
	background:transparent;
	width: 12%;
	border-bottom: 3px solid #f8f7f0;
}
.price-list tbody td{
	border-bottom: 3px solid #f8f7f0;
}
.price-list.commute-list tbody td{
	border-bottom: 3px solid #fff;
}
.price-list tbody th a{
	text-decoration: underline;
}
.calendar-wrap h5{
	font-size: 1.5rem;
}
.calendar-wrap .calendar{
	margin-top: 10px;
	width: 100%;
	border-top:0;
}
.calendar-wrap .calendar th{
	padding: 0;
	font-size: 1.1rem;
}
.calendar-wrap .calendar td{
	text-align:center;
	background: #fff;
	border-bottom:3px solid #f8f7f0;
	padding: 0;
	font-size: 1.1rem;
}
.calendar-wrap .calendar td+td{
	border-left:3px solid #f8f7f0;
}
.calendar-wrap .calendar .graduation {
	cursor: pointer;
	position: relative;
}
.calendar-wrap .calendar .graduation span {
	display: none;
}
.calendar-wrap .calendar .graduation.active span {
	display: flex;
    justify-content: center;
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    padding: 2px 10px;
    border-radius: 3px;
    background-color: #62cbde;
    color: #ffffff;
    font-size: 14px;
    white-space: nowrap;
    transition: opacity .3s;
	z-index: 5;
}
.calendar-wrap .calendar .graduation.active span::before {
	position: absolute;
    bottom: -6px;
    width: 9px;
    height: 6px;
    background-color: inherit;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
}
.calendar-wrap .calendar .sun{
	color: #f00;
}
.calendar-wrap .calendar .sat{
	color:#00aced
}
.price-list .price:nth-of-type(2),
.calendar-wrap .calendar .cell-price01{
	background: #f6d4f0;
}
.price-list .price:nth-of-type(3),
.calendar-wrap .calendar .cell-price02{
	background: #ffccc8;
}
.price-list .price:nth-of-type(4),
.calendar-wrap .calendar .cell-price03{
	background: #c9ffd7;
}
.price-list .price:nth-of-type(5),
.calendar-wrap .calendar .cell-price04{
	background: #ffe0c0;
}
.price-list .price:nth-of-type(6),
.calendar-wrap .calendar .cell-price05{
	background: #d2cbfc;
}
.price-list .price:nth-of-type(7),
.calendar-wrap .calendar .cell-price06{
	background: #fff9bd;
}
.price-list .price:nth-of-type(8),
.calendar-wrap .calendar .cell-price07{
	background: #c7dcfe;
}
.price-list .price:nth-of-type(9),
.calendar-wrap .calendar .cell-price08{
	background: #dbf2bd;
}

.price-list .price:nth-of-type(9),
.calendar-wrap .calendar .cell-price08{
	background: #dbf2bd;
}

.price-list .notset {
	background: #ddd !important;
}
.cal-color li{
	position: relative;
	padding-left: 2.8em;
	display: inline-block;
}
.cal-color li+li{
	margin-left: 15px;
}
.cal-color li:after{
	content:"…";
	position: absolute;
	top:50%;
	left:1.5em;
	transform:translateY(-50%);
}
.cal-color li:before{
	content:"";
	display: block;
	width: 1em;
	height: 1em;
	position: absolute;
	top:50%;
	left:0;
	transform:translateY(-50%);
}
.cal-color li:first-of-type:before{
	background: #fec9c8;
}
.cal-color li:nth-of-type(2):before{
	background: #ffdf4c;
}
.cal-color li:nth-of-type(3):before{
	background: #ffc89b;
}
.cal-color li:nth-of-type(4):before{
	background: #caf2f7;
}

/* --- online-link --- */
.online-link {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
    margin-bottom: 60px;
}
.online-link.mt {
	margin-top: 30px;
}
.online-link p {
    padding: 5px;
    width: 48%;
    border-radius: 5px;
    margin: 0 auto;
}
.online-link p {
    background-color: #ffdf4c;
}
.online-link p:hover {
    opacity: 0.7;
}
.online-link a {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	height: 100%;
    padding: 10px;
    border: 1px solid #fff;
    border-radius: 5px;
    text-align: center;
    color: #000;
	box-sizing: border-box;
	line-height: 1.5;
}