@charset "utf-8";
@media only screen and (max-width:1023px){
}
@media print, screen and (min-width:1024px){
}
/* ------------------------------------------------------------------------
    Common
------------------------------------------------------------------------  */
/* Anchor Height */
.AH {
}
@media only screen and (max-width:768px){
	.AH {
		margin-top: -50px;
		padding-top: 50px;
	}
}
@media print, screen and (min-width:769px){
	.AH {
		margin-top: -50px;
		padding-top: 50px;
	}
}

/* Center */
.ab_center{
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateY(-50%) translateX(-50%);
}

/* Googlemap */
.google-map {
    position: relative;
    width: 100%;
    height: 300px;
    overflow: hidden;
}
.google-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	box-sizing:border-box;
}
/*
 Googlemap area
*/
.Map-Btn {
	width:100%;
	padding:0 12px;
	margin:0 auto;
	box-sizing:border-box;
	text-align:right;
}
/*
 Googlemap btn
*/
.google-btn a {
	display:inline-block;
	max-width:190px;
	border:1px solid #898989;
	text-align:center;
	width:100%;
	font-size:1.2rem;
	color:#898989;
}
.google-btn a span {
	display:inline-block;
}
.google-btn a span:before {
	content:url(../images/icon_maplink.png);
	vertical-align:middle;
	padding-right:.7em;
}
.Map-Btn {
	padding-top:15px;
}
.google-btn a {

}
@media print, screen and (min-width:769px){
	.Map-Btn {
		padding-top:15px;
	}
	.google-btn a {
		display:inline-block;
		max-width:190px;
		border:1px solid #898989;
		text-align:center;
	}
}
@media only screen and (max-width:768px){
	.Map-Btn {
		padding-top:15px;
	}
	.google-btn a {
		display:inline-block;
		max-width:190px;
		border:1px solid #898989;
		text-align:center;
	}
}

/* youtube */
.youtube_container{
	width: 100%;
	max-width: 750px;
	margin-left: auto;
	margin-right: auto;
}
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/* ------------------------------------------------------------------------
    Parts
------------------------------------------------------------------------  */
/********************* Arrow *********************/
/* arrow base */
.arr{
	position: relative;
	display: block;
	vertical-align: middle;
}
.arr::before,
.arr::after{
	position: absolute;
	margin: auto;
	content: "";
	vertical-align: middle;
}
/* arrow type */
.arr_dwn::before{
	right: 15px;
	top:-3px;
	bottom:0;
	transition: all 0.2s ease-in-out;

	width: 6px;
	height: 6px;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	transform: rotate(135deg);
}
.arr_left::before{
	left:5px;
	top:0;
	bottom:0;

	width: 8px;
	height: 8px;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.arr_right::before{
	right: 12px;
	top:0;
	bottom:0;

	width: 8px;
	height: 8px;
	border-top: 1px solid #666;
	border-right: 1px solid #666;
	transform: rotate(45deg);
}

/* open */
.open .arr_dwn::before{
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/********************* 三角 *********************/
.triangle {
	display: block;
	position: relative;
	height: 20px;
}
.triangle:after {
	position: absolute;
	left: 50%;
	top: 50%;
	content: '';
	width: 0;
	height: 0;
	border-top: 20px solid #323232;
	border-right: 20px solid transparent;
	border-left: 20px solid transparent;
	transform: translate(-50%,-50%);
}

/********************* Num *********************/
.Num {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	border:1px solid #999;
	
	font-size: 1.25em;
}
.Num:before{
	position: absolute;
	right: 0;
	bottom: 0;
	content: '';
	border-left: 7px solid transparent;
	border-bottom: 7px solid #005557;
}


/* ------------------------------------------------------------------------
    Button
------------------------------------------------------------------------  */
/* Nomal */
.btn_a {
	display: inline-block;
	width:100%;
	padding-top: .3em;
	padding-bottom: .3em;
	border:1px solid #666;
	text-align:center;
	color:#666;
}

/* icon */
.ico_a {max-width: 32px; height: auto;}

/* ------------------------------------------------------------------------
    MV
------------------------------------------------------------------------  */
#MV{
	width: 100%;
	height: 100%;
}

/* ------------------------------------------------------------------------
    PageTop
------------------------------------------------------------------------  */
#PageTop{
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 4.285em;
	padding-top: 4.285em;
	box-sizing: border-box;
	border-bottom: 1px solid #b5b5b5;
}
#PageTop h3{
	font-size: 2em;
}
#PageTop.BgTitle h3{
	font-size: 2.15em;
}
/* Background */
#PageTop.BgTitle{
	height: 300px;
	background-repeat: no-repeat;
	background-size: cover;
}
#PageTop.BgTitle.PannelTitle{
	background-image: url("../images/pannel_ttlimage.jpg");
	background-position: 50% 45%;
}
#PageTop.BgTitle.PannelTitle h3{
	text-shadow:
		2px  2px 1px #101938,
		-2px  2px 1px #101938,
		2px -2px 1px #101938,
		-2px -2px 1px #101938,
		2px  0px 1px #101938,
		0px  2px 1px #101938,
		-2px  0px 1px #101938,
		0px -2px 1px #101938;
}
#PageTop.BgTitle.CameraTitle{
	background-image: url("../images/camera_ttlimage.jpg");
	background-position: 50% 40%;
}
#PageTop.BgTitle.CameraTitle h3{
	text-shadow:
		2px  2px 1px #fff,
		-2px  2px 1px #fff,
		2px -2px 1px #fff,
		-2px -2px 1px #fff,
		2px  0px 1px #fff,
		0px  2px 1px #fff,
		-2px  0px 1px #fff,
		0px -2px 1px #fff;
}
@media print, screen and (min-width:769px){
	#PageTop.BgTitle{height: 500px;}
	#PageTop.BgTitle.CameraTitle{ background-size: auto;}
}

/* ------------------------------------------------------------------------
    Index
------------------------------------------------------------------------  */
/* case */
.Top_Case {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	
	border-top: 1px solid #999;
}
.Top_Case > .Item{
	display: flex;
	align-items: center;
	width: 100%;
	box-sizing: border-box;
	
	padding-top: 1em;
	padding-bottom: 1em;
	border-bottom: 1px solid #999;
}
.Top_Case > .Item .Icon{
	height: 50px;
	width: 50px;
	border-radius: 5px;
	background: #323232;
	display: flex;
	justify-content: center;
	align-items: center;
}
.Top_Case > .Item .Icon img{
	max-width: 40px;
	height: auto;
}
.Top_Case > .Item p{
	padding-left: 1em;
	padding-right: 1em;
}
@media print, screen and (min-width:769px){
	.Top_Case {
		border-top: none;
	}
	.Top_Case > .Item{
		display: block;
		width: 20%;
		padding-top: 0;
		padding-bottom: 0;
		border-bottom: none;
		border-right: 1px solid #999;
	}
	.Top_Case > .Item:first-child{
		border-left: 1px solid #999;
	}
	.Top_Case > .Item .Icon{
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 1.185em;
	}
	.Top_Case > .Item p{
		display: flex;
		justify-content: center;
	}
}

/* btn */
#PannelWash .btn_a.cl{
	border: none;
	background: #101938;
}
#PannelWash .btn_a.cl a{
	color: #fff;
}
#PannelWash .arr_right::before{
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}


/* info */
.Top_Info{
	display: flex;
}
.Top_Info span{
	padding: .5em 1em;
	box-sizing: border-box;
	margin-bottom: 3px;
	margin-top: 3px;
	display: flex;
	align-items: center;
}
.Top_Info span:nth-child(1){
	position: relative;
	width: 10em;
	
	background: #ccc;
	justify-content: center;
}
.Top_Info span:nth-child(2){
	width: calc(100% - 10em);
	
	background: #f5f5f5;
}
/*
.Top_Info span:after{
	position: absolute;
	right: 0;
	top: 0;
	content: ' : ';
}
*/
@media print, screen and (min-width:769px){
	.Top_Info span:nth-child(1){
		width: 15em;
	}
	.Top_Info span:nth-child(2){
		width: calc(100% - 15em);
	}
}

/* ------------------------------------------------------------------------
    Pannel
------------------------------------------------------------------------  */
#Panel_Ranking {
	margin-bottom: 2.85em;
	padding-bottom: 2.85em;
	border-bottom: 1px solid #999;
}
.Pannel_Rank {
}
.Pannel_Rank > .Title {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.Pannel_Rank > .Title .Text{
	width: calc(100% - 60px);
}
.Pannel_Rank > .Message{
	margin-top: .5em;
	padding-left: 60px;
}

/* COMP LIST */
#CompList {
}
#CompList .List {
	border-top: 1px solid #999;
}
#CompList .List:first-child {
	border-top: none;
}

#CompList .List {
	display: flex;
	flex-wrap: wrap;
}
#CompList .List .Item{
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding-bottom: .5em;
	padding-top: .5em;
	padding-left: .3em;
	padding-right: .3em;
	width: 100%;
	
	max-width: 33.3%;
}
#CompList .List .Item.case1{
	flex-wrap: wrap;
}
@media only screen and (max-width:768px){
	#CompList .List .Item.case1 > *{
		width: 100%;
		text-align: center;
	}
}
#CompList .List.Head .Item{
	border-top: 1px solid #999;
}
#CompList .List .Item:first-child{
	background: #eee;
}
#CompList .List.Head .Item{
	background: #ccc;
	text-align: center;
}
#CompList .List.Btm .Item{
	background: #f5f5f5;
}
#CompList .List.Btm .Item {
	border-bottom: 1px solid #999;
}
@media only screen and (max-width:768px){
	#CompList .List {
		border-left: 1px solid #999;
	}
	#CompList .List .Item{
		max-width: 33.3%;
		border-right: 1px solid #999;
	}
	#CompList .List .Item:first-child{
		max-width: 99.9%;
		border-bottom: 1px solid #999;
	}
	#CompList .List.Head .Item:first-child,
	#CompList .List.Btm .Item:first-child{
		display: none;
	}
}
@media print, screen and (min-width:769px){
	#CompList .List .Item{
		max-width: 22%;
		border-right: 1px solid #999;
	}
	#CompList .List .Item:first-child{
		max-width: 34%;
		border-left: 1px solid #999;
	}
}

/* Price LIST */
@media only screen and (max-width:768px){
	#CompList.price .List {
		border-top: none;
	}
	#CompList.price .List.Head {
		border-bottom: 1px solid #999;
	}
	#CompList.price .List .Item{
		max-width: 33.3%;
		border-right: 1px solid #999;
	}
	#CompList.price .List .Item:first-child{
		max-width: 99.9%;
	}
	#CompList.price .List .Item:last-child{
		max-width: 99.9%;
		border-top: 1px solid #999;
		border-bottom: 1px solid #999;
	}
	#CompList .List.Head .Item:first-child,
	#CompList .List.Btm .Item:first-child,
	#CompList.price .List.Head .Item:last-child{
		display: none;
	}
}
@media print, screen and (min-width:769px){
	#CompList.price {
		border-bottom: 1px solid #999;
	}
	#CompList.price .List .Item{
		max-width: 17%;
		border-right: 1px solid #999;
	}
	#CompList.price .List .Item:first-child{
		max-width: 24%;
		border-left: 1px solid #999;
	}
	#CompList.price .List .Item:last-child{
		max-width: 25%;
	}
}

/* ------------------------------------------------------------------------
    Wash
------------------------------------------------------------------------  */
.WashImage{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.WashImage > .Item{
	display: flex;
	width: 100%;
	margin-bottom: 15px;
	margin-top: 15px;
	padding-bottom: 15px;
	border-bottom: 1px dotted #666;
}
.WashImage > .Item:last-child{
	border-bottom: none;
}
.WashImage > .Item .ItemImage{
	width: 130px;
}
.WashImage > .Item .ItemText{
	width: calc(100% - 130px);
	padding-left: 1em;
	box-sizing: border-box;
}
@media print, screen and (min-width:769px){
	.WashImage > .Item{
		display: block;
		max-width: 32%;
		padding-bottom: 0;
		border-bottom: none;
	}
	.WashImage > .Item .ItemImage{
		width: auto;
	}
	.WashImage > .Item .ItemText{
		width: 100%;
		padding-left: 0;
		margin-top: 1em;
	}
}

/* ------------------------------------------------------------------------
    Camera
------------------------------------------------------------------------  */
.QRbox {
	border:1px solid #999;
	display: flex;
	flex-wrap: wrap;
}
.QRbox > * {
	display: flex;
	align-items: center;
	width: 100%;
	box-sizing: border-box;
	padding: 1em 1em;
}
.QRbox > *:first-child {
	border-bottom: 1px solid #999;
}
.QRleft {
	justify-content: center;
}
.QRright {
	display: flex;
}
.QRright .QRcode{
	width: 180px;
}
@media only screen and (max-width:768px){
	.QRright {
		flex-wrap: wrap;
	}
	.QRright > *{
		width: 100%;
	}
	.QRright .QRcode{
		margin: 1em auto 0 auto;
	}
}
@media print, screen and (min-width:769px){
	.QRbox > * {
		max-width: 50%;
	}
	.QRbox > *:first-child {
		border-bottom: none;
		border-right: 1px solid #999;
	}
}

/* ------------------------------------------------------------------------
    Cost
------------------------------------------------------------------------  */
.Cost {
	display: flex;
	flex-wrap: wrap;
	border: 1px solid #999;
	
	max-width: 750px;
	margin-left: auto;
	margin-right: auto;
}
.Cost > .Item{
	width: 100%;
	padding: .5em .3em;
	box-sizing: border-box;
	text-align: center;
}
.Cost > .Item:first-child{
	background: #f5f5f5;
	border-bottom: 1px solid #999;
}
.Cost > .Item:nth-child(2){
	display: flex;
	justify-content: center;
	align-items: center;
}
@media print, screen and (min-width:769px){
	.Cost > .Item{
		max-width: 50%;
	}
	.Cost > .Item:first-child{
		border-right: 1px solid #999;
		border-bottom:none;
	}
}
.Cost > .Item span.center{
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: inherit;
}

/* ------------------------------------------------------------------------
    FAQ
------------------------------------------------------------------------  */
ul.Faq_List {
	max-width: 750px;
	margin-left: auto;
	margin-right: auto;
}
ul.Faq_List li{
	box-sizing: border-box;
	-webkit-transition: all .8s;
	transition: all .8s;
	
	padding: 1em;
	border-color: #dcdcdc;
	border-radius: 7px;
}
ul.Faq_List li.open{
	border:1px solid #dcdcdc;
}
ul.Faq_List li a.Q,
ul.Faq_List li .A{
	position: relative;
	padding-left:2.5em;
	padding-right: 2.5em;
}
ul.Faq_List li a.Q{
	cursor: pointer;
}
ul.Faq_List li a.Q:after,
ul.Faq_List li .A:after{
	position: absolute;
	left: 0;

}
ul.Faq_List li a.Q:after{
	content: 'Q:';
	top: 50%;
	transform: translateY(-50%);
}
ul.Faq_List li .A:after{
	content: 'A:';
	top:0;
}
ul.Faq_List li .A{
	margin-top: 1.125em;
	display: none;
}

/* ------------------------------------------------------------------------
    SAMPLE
------------------------------------------------------------------------  */
.Sampleimage {
	width: 100%;
	height: 100%;
	max-width: 640px;
	min-height: 240px;
	background: #999;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}
.Sampleimage_B {
	position: relative;
	
}
.Sampleimage_B img{
	background: #999;
}
.Sampleimage_B p{
	color: #fff;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}

@media only screen and (max-width:1023px){
}
@media print, screen and (min-width:1024px){
}
/* ------------------------------------------------------------------------
    Activity
------------------------------------------------------------------------  */
.Activity {
	border-top: 1px dotted #999;
}
.Activity > *{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	
	margin-bottom: 20px;
	margin-top: 20px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #999;
}
.Activity > * > *{
	width: 100%;
	box-sizing: border-box;
	margin-bottom: 5px;
	margin-top: 5px;
}
.Activity > * .days{
	justify-content: center;
}
.Activity > * .txt{
	padding-left: 1em;
}
.Activity > * .img{
	display: flex;
	justify-content: center;
}
.Activity > * .img > div{
	max-width: 200px;
	box-sizing: border-box;
	padding-left: 2.5px;
	padding-right: 2.5px;
}
.Activity > * .img img{
	margin-left: 5px;
	margin-right: 5px;
}
@media print, screen and (min-width:1024px){
	.Activity > * .days{
		width: 130px;
	}
	.Activity > * .txt{
		width: calc(100% - 540px);
		border-left: 1px solid #999;
	}
	.Activity > * .img{
		width: 410px;
	}
}

/* ------------------------------------------------------------------------
    Law
------------------------------------------------------------------------  */
.Law_List {
    box-sizing: border-box;
    border:1px solid #ccc;
    background: #fcfcfc;
}
.Law_List .Item{
    display: flex;
    flex-wrap: wrap;
}
.Law_List .Item:not(:last-child){
    border-bottom: 1px solid #ccc;
}
.Law_List .Item > .name,
.Law_List .Item > .contents {
    width: 100%;
    padding: .75em .5em;
    box-sizing: border-box;
}
/* span */
.Law_List .Item span {
    display: inline-block;
}
.Law_List .Item span.name1 {
    width: 90px;
}
.Law_List .Item span.name2 {
    width: 170px;
}
.Law_List .Item span.name3 {
    width: 200px;
}

/* ol */
.Law_List p {
    padding-left: 1.5em;
}
@media screen and (max-width:768px){
    .Law_List .Item > .name {
        border-bottom: 1px dotted #ccc;
    }
}
@media screen and (min-width:769px){
    .Law_List .Item > .name {
        max-width: 240px;
    }
    .Law_List .Item > .contents {
        max-width: calc(100% - 240px);
        border-left:1px solid #ccc;
    }
}
