@charset "utf-8";
/* CSS Document */

/*** -----------------------------------------------------------------------------

reset

-----------------------------------------------------------------------------  ***/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
	margin:0px;
	padding:0px;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset, img {	border:0;}
address, caption, cite, code, dfn, em, th, var {
	font-style:normal;
	font-weight:normal;
}
ul { list-style:none;}
ol li{ list-style:none;}
caption, th { text-align:left;}
h1, h2, h3, h4, h5, h6 {
	font-size:100%;
	font-weight:normal;
}
q:before, q:after {	content:'';}
abbr, acronym {
	border:0;
	font-variant:normal;
}
sup { vertical-align:top;}
sub { vertical-align:text-bottom;}
input, textarea, select {
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit;
}
input, textarea, select { *font-size:100%;}
img { vertical-align:bottom;}
table caption {
	font-weight: bold;
	margin:0 0 5px;
}

@media screen and (max-width:737px){
	img{
		max-width: 100%;
		height: auto;
	}
}

/*** ------------------------------------------------------------------------------

HTML5

-----------------------------------------------------------------------------  ***/
header, footer, nav, section, article, figure, aside {
	display:block;
}
/*** ------------------------------------------------------------------------------

common

-----------------------------------------------------------------------------  ***/
html { font-size:62.5%; /* rem指定 */}
body {
	color:#222;
	line-height: 1.8;
	font-size: 1.4rem;	/* =14px */
	font-weight: 400;
	font-family: "メイリオ", MS PGothic, "ＭＳ Ｐゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ Pro W3", Osaka;
}
/*body.menu-open { background:#F5F5F5;}*/

@media screen and (max-width:737px){
	body {
		font-size: 1.4rem;	/* =1.4rem */
		line-height: 1.8;
		word-wrap: break-word;
	}
}

/*** ------------------------------------------------------------------------------

PC・スマホ表示非表示

-----------------------------------------------------------------------------  ***/
.pc{ display: block;}
.sp{ display: none;}

@media screen and (max-width:737px){
	.pc{ display: none;}
	.sp{ display: block;}
}

/*** ------------------------------------------------------------------------------

clearfixを記述しないclearfix　（float解除）

-----------------------------------------------------------------------------  ***/
div:after,
ul:after,
section:after{
    content: "";
    display: block;
    clear: both;
}

/*** ------------------------------------------------------------------------------

リンク

-----------------------------------------------------------------------------  ***/
/* 基本 */
a{
	outline:none;
	-webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    -o-transition: 0.2s;
    -ms-transition: 0.2s;
}
a:link {
	color: #000;
	text-decoration: none;
}
a:visited {
	color: #000;
	text-decoration: none;
}
a:hover {
	color: #000;
	text-decoration: underline;
}
a:active {
	color: #000;
	text-decoration:underline;
}

/* ページ内リンクの見出しズレ補正 */
.page-scroll-anchor{
	display: block;
	padding-top: 200px;
	margin-top: -200px;
}
@media screen and (max-width: 737px){
	.page-scroll-anchor{
		display: inline-block;
		padding-top: 100px;
		margin-top: -100px;
	}
}

/*** ------------------------------------------------------------------------------

text-align

-----------------------------------------------------------------------------  ***/
.align-l{ text-align: left;}
.align-c{ text-align: center;}
.align-r{ text-align: right;}

/*** ------------------------------------------------------------------------------

font-size

-----------------------------------------------------------------------------  ***/
.fs-10{font-size: 1.0rem;}
.fs-11{font-size: 1.1rem;}
.fs-12{font-size: 1.2rem;}
.fs-13{font-size: 1.3rem;}
.fs-14{font-size: 1.4rem;}
.fs-15{font-size: 1.5rem;}
.fs-16{font-size: 1.6rem;}
.fs-17{font-size: 1.7rem;}
.fs-18{font-size: 1.8rem;}
.fs-19{font-size: 1.9rem;}
.fs-20{font-size: 2.0rem;}
.fs-21{font-size: 2.1rem;}
.fs-22{font-size: 2.2rem;}
.fs-23{font-size: 2.3rem;}
.fs-24{font-size: 2.4rem;}

/*** ------------------------------------------------------------------------------

GoogleMapレスポンシブ

-----------------------------------------------------------------------------  ***/
@media screen and (max-width:737px){
	.google-maps {
		position: relative;
		padding-bottom: 75%;
		height: 0;
		overflow: hidden;
	}
	.google-maps iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100% !important;
		height: 100% !important;
	}
}

/*** ------------------------------------------------------------------------------

youtubeレスポンシブ

-----------------------------------------------------------------------------  ***/
@media screen and (max-width:737px){
	.youtube {
		position: relative;
		padding-bottom: 56.25%;
		padding-top: 30px;
		height: 0;
		overflow: hidden;
		margin-top: 20px;
		margin-bottom: 10px;
	}
	.youtube iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
}

/*** ------------------------------------------------------------------------------

base

-----------------------------------------------------------------------------  ***/
.inner{
	width: 980px;
	margin:0 auto;
}
@media screen and (max-width: 737px){
	.inner{
		width: 100%;
		padding:0 3%;
		box-sizing:border-box;
	}
}


/*** ------------------------------------------------------------------------------

フォームボタン

-----------------------------------------------------------------------------  ***/
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

#form-btn {
    text-align: center;
    padding:10px 0 0;
}
#form-btn li{
    display:inline-block;
    margin:0 5px 10px;
}

#form-btn input[type="submit"],
#form-btn input[type="button"],
#form-btn input[type="reset"] {
    width: 300px;
    padding: 15px 0;
    background: url(../img/arrow03.png) no-repeat right 30px center #ec7993;
    border: none;
    text-align: center;
	border-bottom: 5px solid #c7657c;
	border-radius: 5px;
    color: #FFF;
    font-size: 1.6rem;
    outline: none;
    cursor: pointer;
}

#form-btn input[type="submit"]:hover{
	opacity:0.7;
}
#form-btn input[type="reset"] {
    background: #606060;
    color:#fff;
}
#form-btn input[type="reset"]:hover {
	opacity:0.7;
}
#form-btn input[type="button"] {
    background: #CCC;
    color:#333;
}
#form-btn input[type="button"]:hover {
    background: #999;
}

@media screen and (max-width:737px){
	#form-btn input[type="submit"],
	#form-btn input[type="button"],
	#form-btn input[type="reset"] {
		width: 200px;
	}
	
	input[type="text"]{
		border-radius: 0;
		box-shadow: none;
	}
	input[type=text]{ font-size: 1.6rem;}
	select{ font-size: 1.6rem;}
}


/*** ------------------------------------------------------------------------------

header

-----------------------------------------------------------------------------  ***/
header .h1-line{ background: #efe8de;}
header .h1-line h1{
	width: 980px;
	margin: 0 auto;
	padding: 3px 0;
	font-size: 1.1rem;
}

header .inner {
	position: relative;
	display: flex;
	padding: 30px 0;
}

header .inner .h-logo{
	margin: 0 95px 0 0;
}
header .inner .img{
	position: absolute;
	right: 0;
	bottom: -5px;
}

header .inner ul{
	display: flex;
}
header .inner ul li:nth-child(2){
	margin: 0 0 0 20px;
}
header .inner ul li:nth-child(2) a{
	display: inline-block;
	background: url(../img/icon-mail.png) no-repeat left 10px center #866667;
	border-radius: 5px;
	border-bottom: 5px solid #674a4a;
	padding: 18px 15px 18px 35px;
	font-size: 1.6rem;
	color: #fff;
}
header .inner ul li:nth-child(2) a:hover{
	text-decoration: none;
	opacity: 0.6;
}

header #menu{ display: none;}
header nav{
	 background: #efe8de;
}
header nav ul{
	width: 980px;
	margin: 0 auto;
	display: flex;
	font-size: 1.5rem;
}
header nav ul li{
	text-align: center;
	padding: 15px 0;
}
header nav ul li:nth-child(1){ flex: 0 0 150px;}
header nav ul li:nth-child(2),
header nav ul li:nth-child(3),
header nav ul li:nth-child(4){ flex: 0 0 227px;}
header nav ul li:nth-child(5){ flex: 0 0 149px;}

header nav ul li a{
	display: block;
	padding: 0 5px;
	background: url(../img/nav-border.png) no-repeat right center;
}
header nav ul li:first-child a{	background:url(../img/nav-border.png) no-repeat left center, url(../img/nav-border.png) no-repeat right center;}
header nav ul li a:hover{ text-decoration: none;}

header nav ul li a span{
	display: block;
	padding: 5px 0 5px 20px;
	border-radius: 7px;
}
header nav ul li:nth-child(1) a span{ background: url(../img/nav01.png) no-repeat left 30px center;}
header nav ul li:nth-child(2) a span{ background: url(../img/nav02.png) no-repeat left 30px center;}
header nav ul li:nth-child(3) a span{ background: url(../img/nav03.png) no-repeat left 35px center;}
header nav ul li:nth-child(4) a span{ background: url(../img/nav04.png) no-repeat left 10px center; padding: 5px 0 5px 30px;}
header nav ul li:nth-child(5) a span{ background: url(../img/nav05.png) no-repeat left 30px center;}

header nav ul li a span:hover{
	color: #fff;
}
header nav ul li:nth-child(1) a span:hover{ background: url(../img/nav01wh.png) no-repeat left 30px center #866667;}
header nav ul li:nth-child(2) a span:hover{ background: url(../img/nav02wh.png) no-repeat left 30px center #866667;}
header nav ul li:nth-child(3) a span:hover{ background: url(../img/nav03wh.png) no-repeat left 35px center #866667;}
header nav ul li:nth-child(4) a span:hover{ background: url(../img/nav04wh.png) no-repeat left 10px center #866667; padding: 5px 0 5px 30px;}
header nav ul li:nth-child(5) a span:hover{ background: url(../img/nav05wh.png) no-repeat left 30px center #866667;}

/* Activeページ */
#home header nav ul li:nth-child(1) a,
#about header nav ul li:nth-child(2) a,
#cat-house header nav ul li:nth-child(3) a,
#renovation header nav ul li:nth-child(4) a,
#corporation header nav ul li:nth-child(5) a,
#contact header nav ul li:nth-child(6) a{ color: #fff;}
#home header nav ul li:nth-child(1) a span{ background: url(../img/nav01wh.png) no-repeat left 30px center #866667;}
#about header nav ul li:nth-child(2) a span{ background: url(../img/nav02wh.png) no-repeat left 30px center #866667;}
#cat-house header nav ul li:nth-child(3) a span{ background: url(../img/nav03wh.png) no-repeat left 35px center #866667;}
#renovation header nav ul li:nth-child(4) a span{ background: url(../img/nav04wh.png) no-repeat left 10px center #866667; padding: 5px 0 5px 30px;}
#corporation header nav ul li:nth-child(5) a span{ background: url(../img/nav05wh.png) no-repeat left 30px center #866667;}

@media screen and (max-width:737px){
	.menu-open header{
		width: 100%;
		position: fixed;
		top: 0;
		z-index: 999;
		background: #fff;
	}
	.menu-open .menu-op-bg{
		position: fixed;
		top: 0;
		left: 0;
		z-index: 500;
		width: 100%;
		height: 100%;
		overflow: hidden;
		background: #000;
		opacity: 0.2;
	}
	header .h1-line{ display: none;}
	header .inner {
		padding: 0;
		height: 60px;
	}
	
	header .inner .h-logo{ padding: 8px 0 0 8px;}
	header .inner .h-logo img{width: 200px;}
	header .inner ul{ display: none;}
	header .inner .img{ display: none;}
	header nav{ background: none;}
	header nav ul{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		font-size: 1.4rem;
		background: none;
	}
	header nav ul li:nth-child(1),
	header nav ul li:nth-child(2),
	header nav ul li:nth-child(3),
	header nav ul li:nth-child(4),
	header nav ul li:nth-child(5){ flex: 0 0 100%;}
	header nav ul li a{	background: none;}
	
	header #menu{ display: block;}
	header nav{
		display: none;
		position: fixed;
		z-index: 1000;
		overflow-y: scroll;
	}
	header nav > ul{
		width: 100%;
	}

	header #menu{
		position: fixed;
		right: 0;
		top: 0;
		z-index: 9999;
		background: #e35e6f;
		color: #FFFFFF;
		font-size: 0.76em;
		height: 60px;
		overflow: hidden;
	}
	#menu a{
		color: #fff;
	}
	#menu a span {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 24px;
		height: 2px;
		margin: -6px 0 0 -12px;
		background: #FFF;
		transition: .2s;
		text-indent: -9999px;
	}
	header #menu a span:before, header #menu a span:after {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 24px;
		height: 2px;
		background: #FFF;
		transition: .3s;
	}
	header #menu a span:before {
		margin-top: -6px;
	}
	header #menu a span:after {
		margin-top: 4px;
	}
	header #menu:before {
		content: "MENU";
		display: block;
		position: absolute;
		left: 0;
		top: 32px;
		width: 60px;
		text-align: center;
		font-size: 1.167em;
	}
	header #menu.close{
		background: url(../img/header_menu_bg02.png) center 40px no-repeat #31A9D8;
		background-size: auto 7px ;
	}
	header #menu a{
	  display: inline-block;
	  position: relative;
	  width: 60px;
	  height:60px;
	  overflow:hidden;
	}
	header #menu a span{
	  display: block;
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  width: 24px;
	  height: 2px;
	  margin: -6px 0 0 -12px;
	  background: #FFF;
	  transition: .2s;
	  text-indent:-9999px;
	}
	header #menu a span:before, header #menu a span:after{
	  display: block;
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 0;
	  width: 24px;
	  height: 2px;
	  background: #FFF;
	  transition: .3s;
	}
	header #menu a span:before{
	  margin-top: -6px;
	}
	header #menu a span:after{
	  margin-top: 4px;
	}
	header #menu a .close{
	  background: transparent;
	}
	header #menu a .close:before, header #menu a .close:after{
	  margin-top: 0;
	}
	header #menu a .close:before{
	  transform: rotate(-45deg);
	  -webkit-transform: rotate(-45deg);
	}
	header #menu a .close:after{
	  transform: rotate(-135deg);
	  -webkit-transform: rotate(-135deg);
	}
	header nav > ul > li{
		width: 100%;
		float: none;
		padding: 0;
		text-align: left;
	}
	header nav > ul > li > a {
		border-right: none;
		border-bottom: 1px solid #fff;
		background: #fff;
		display: block;
		padding: 10px;
	    border-bottom: 1px solid #cdcdcd;
		line-height: 1.5;
	}
	header nav > ul > li.tit > a {
		background: #f2f0e3;
		padding: 10px 15px;
	}
	header nav > ul > li.tit > a.close{
		background: url(../img/open.png) no-repeat right 10px center #f2f0e3;
    	background-size: 28px auto;
	}
	header nav > ul > li.tit > a.open {
		background: url(../img/close.png) no-repeat right 10px center #f2f0e3;
		background-size: 28px auto;
	}
	header nav > ul > li.tit > ul > li a{
		display: block;
		padding: 10px 30px;
		border-bottom: 1px solid #d0cbaa;
		background: url(../img/arrow02.png) no-repeat left 15px center #fff;
		color: #105128;
	}
	
	header nav > ul > li > a:visited, header nav > ul > li > a:link, header nav > ul > li > a:hover{
		color: #222;
	}
	header nav > ul > li:first-child > a {
		border-left: none;
	}
	header nav > ul > li:first-child > a {
		border-left: none;
	}
	
	header nav ul li:first-child a{ background: #fff;}
	header nav ul li a span {
    	padding: 10px 10px 10px 40px;
	}
	header nav ul li:nth-child(1) a span{ background: url(../img/nav01.png) no-repeat left 10px center;}
	header nav ul li:nth-child(2) a span{ background: url(../img/nav02.png) no-repeat left 12px center;}
	header nav ul li:nth-child(3) a span{ background: url(../img/nav03.png) no-repeat left 10px center;}
	header nav ul li:nth-child(4) a span{ background: url(../img/nav04.png) no-repeat left 5px center; padding: 10px 10px 10px 40px;}
	header nav ul li:nth-child(5) a span{ background: url(../img/nav05.png) no-repeat left 12px center;}
	header nav ul li:nth-child(6) a span{ background: url(../img/nav06.png) no-repeat left 10px center;}

	header nav ul li a span:hover{
		color: #fff;
		border-radius: 7px;
	}
	header nav ul li:nth-child(1) a span:hover{ background: url(../img/nav01wh.png) no-repeat left 10px center #866667;}
	header nav ul li:nth-child(2) a span:hover{ background: url(../img/nav02wh.png) no-repeat left 12px center #866667;}
	header nav ul li:nth-child(3) a span:hover{ background: url(../img/nav03wh.png) no-repeat left 10px center #866667;}
	header nav ul li:nth-child(4) a span:hover{ background: url(../img/nav04wh.png) no-repeat left 5px center #866667; padding:  10px 10px 10px 40px;}
	header nav ul li:nth-child(5) a span:hover{ background: url(../img/nav05wh.png) no-repeat left 12px center #866667;}
	header nav ul li:nth-child(6) a span:hover{ background: url(../img/icon-mail.png) no-repeat left 10px center #866667;}
	
	#home header nav ul li:nth-child(1) a span{ background: url(../img/nav01wh.png) no-repeat left 10px center #866667;}
	#about header nav ul li:nth-child(2) a span{ background: url(../img/nav02wh.png) no-repeat left 12px center #866667;}
	#cat-house header nav ul li:nth-child(3) a span{ background: url(../img/nav03wh.png) no-repeat left 10px center #866667;}
	#renovation header nav ul li:nth-child(4) a span{ background: url(../img/nav04wh.png) no-repeat left 5px center #866667; padding: 10px 10px 10px 40px;}
	#corporation header nav ul li:nth-child(5) a span{ background: url(../img/nav05wh.png) no-repeat left 12px center #866667;}
	#contact header nav ul li:nth-child(6) a span{ background: url(../img/icon-mail.png) no-repeat left 10px center #866667;}
}


/*** ------------------------------------------------------------------------------

visual

-----------------------------------------------------------------------------  ***/
#visual{
	height: 200px;
	display: flex;
	align-items: center;
}
#visual h1{
	font-size: 3.6rem;
	text-shadow: -2px 0px 5px #fff,
		 		 0px 2px 5px #fff,
				 2px 0px 5px #fff,
				 -2px 0px 5px #fff;
}

@media screen and (max-width:737px){
	#visual{ height: 100px;}
	#visual h1{ font-size: 2.0rem;}
}

/*** ------------------------------------------------------------------------------

topic

-----------------------------------------------------------------------------  ***/
.topic_box{
	width: 980px;
	margin: 0 auto 30px;
}
#topic-pass{
	background: #fff;
	margin: 0 auto;
	padding: 10px 0;
	font-size: 1.4rem;
	display: flex;
	flex-wrap: wrap;
}
#topic-pass li{
	margin:0 10px 0 0;
}

#topic-pass a:link,
#topic-pass a:visited{
	color: #000;
}

@media screen and (max-width:1200px){
	.topic_box{
		width: 100%;
		position: static;
		margin: 0;
	}
	.menu-open .topic_box{ display: none;}
	#topic-pass{
		position: static;
		width: auto;
		padding: 10px 3%;
		font-size: 14px;
		box-sizing: border-box;
	}
	#topic-pass li{ line-height: 1.5;}
}


/*** ------------------------------------------------------------------------------

#cont

-----------------------------------------------------------------------------  ***/
#cont{}

.base-coloum02 #cont .inner{
	display: flex;
	flex-wrap: wrap;
}

#cont > section{
	padding: 90px 0;
}

.base-coloum02 #main > section{ margin: 0 0 100px;}
.base-coloum02 #main > section p{ margin: 0 0 20px;}

@media screen and (max-width:737px){
	#cont > section{
		padding: 40px 0;
	}
	.base-coloum02 #main > section{ margin: 0 0 40px;}
}

/*** ------------------------------------------------------------------------------

#main

-----------------------------------------------------------------------------  ***/
#main{
	flex: 0 0 650px;
	max-width: 650px;
}
@media screen and (max-width:737px){
	#main{
		flex: 0 0 100%;
		max-width: 100%;
		margin: 0 0 40px;
	}
}

/*** ------------------------------------------------------------------------------

#sub

-----------------------------------------------------------------------------  ***/
#sub{
	flex: 0 0 250px;
	max-width: 250px;
	margin: 0 0 0 80px;
}
#sub .side-nav .bnr{ margin: 0 0 20px;}
#sub .side-nav .bnr a:hover{ opacity: 0.6;}
#sub .side-nav .tit{
	margin: 0 0 20px;
	padding: 10px 0 3px;
	border-bottom: 1px solid #333;
	background: url(../img/icon-side01.png) no-repeat right bottom;
	font-size: 1.6rem;
}
#sub .side-nav ul li a{
	display: block;
	margin: 0 0 10px;
	padding: 15px 20px 15px 45px;
	background: #fbfbfb;
	border: 1px solid #e3e3e3;
	border-radius: 5px;
	font-size: 1.3rem;
}
#sub .side-nav ul li.side-facebook a{ background: url(../img/icon-side02.png) no-repeat left 15px center #fbfbfb;}
#sub .side-nav ul li.side-twitter a{ background: url(../img/icon-side03.png) no-repeat left 15px center #fbfbfb;}
#sub .side-nav ul li.side-instagram a{ background: url(../img/icon-side04.png) no-repeat left 15px center #fbfbfb;}
#sub .side-nav ul li.side-youtube a{ background: url(../img/icon-side05.png) no-repeat left 15px center #fbfbfb;}
#sub .side-nav ul li.side-blog a{ background: url(../img/icon-side06.png) no-repeat left 15px center #fbfbfb;}
#sub .side-nav ul li a:hover{
	text-decoration: none;
	opacity: 0.6;
}

@media screen and (max-width:737px){
	#sub{
		flex: 0 0 100%;
		max-width: 100%;
		margin: 0;
	}
	#sub .side-nav .bnr{ text-align: center;}
}

/*** ------------------------------------------------------------------------------

footer

-----------------------------------------------------------------------------  ***/
footer{	margin: 60px 0 0 0;}

footer .sns{
	background: #d0e4e7;
	padding: 80px 0;
}
footer .sns ul{
	display: flex;
}
footer .sns ul li{
	background: #fff;
	flex: 0 0 180px;
	margin: 0 32px;
	padding: 15px 0;
	text-align: center;
	border-radius: 10px;
	font-size: 1.3rem;
}
footer .sns ul li span{
	display: block;
	text-align: center;
}
footer .sns ul li a:hover{
	display: block;
}


footer .footer01{ background: #efe8de;}
footer .footer01 .inner{
	display: flex;
	padding: 55px 0;
}


footer .footer01 .inner{ display: flex;}
footer .footer01 .inner ul{	flex: 0 0 240px;}
footer .footer01 .inner ul li a{
	background: url(../img/arrow01.png) no-repeat left center;
	display: block;
	padding: 3px 0 3px 20px;
}
footer .footer01 .inner .ft-address{
	flex: 0 0 500px;
	text-align: right;
}
footer .footer01 .inner .ft-address .f-logo{
	margin: 0 0 20px;
}

footer small{
	display: block;
	text-align: center;
	padding: 20px 0 15px;;
}

@media screen and (max-width:737px){
	footer .sns{ padding: 20px 0;}
	footer .sns ul{ flex-wrap: wrap;}
	footer .sns ul li{
		flex: 0 0 48%;
		margin: 0 4% 4% 0;
		padding: 15px 0;
		border-radius: 10px;
		font-size: 1.3rem;
	}
	footer .sns ul li:nth-child(2n){ margin: 0 0 4% 0;}
	footer .sns ul li:nth-child(3){ margin: 0 4% 0 0;}
	footer .sns ul li:nth-child(4){ margin: 0;}
	footer .sns ul li a:hover{ text-decoration: none;}
	
	footer .footer01 .inner{
		flex-wrap: wrap;
		padding: 0 0 20px;
	}
	footer .footer01 .inner ul{	flex: 0 0 100%;}
	footer .footer01 .inner ul li a{
		background: url(../img/arrow01.png) no-repeat left 10px center;
		padding: 12px 10px 12px 30px;
		border-bottom: 1px solid #333;
	}
	footer .footer01 .inner ul li a:hover{ text-decoration: none;}
	footer .footer01 .inner .ft-address{
		margin: 20px 0 0;
		padding: 0 3%;
		flex: 0 0 100%;
		box-sizing: border-box;
		font-size: 1.2rem;
		text-align: center;
	}
	footer .footer01 .inner .ft-address .f-logo{ text-align: center;}
}


/*** ------------------------------------------------------------------------------

ページTOP

-----------------------------------------------------------------------------  ***/
#scroll {
	position:absolute;
	right:50%;
	margin:0 -550px 0 0;
	width:50px;
	height:50px;
	bottom:130px;
	z-index:9999;
}
#scroll.ptop {
	position: fixed;
	right:4%;
	margin:0;
	bottom:7%;
}
#scroll a{
	display:block;
/*	background: #004d9e;*/
	width:79px;
	height:75px;
	border-radius:50%;
	position:relative;
/*	text-indent:-9999px;*/
}
#scroll a:after{
	display: none;
	content:"";
	width:0;
	height:0;
	position:absolute;
	left:15px;
	top:10px;
	border: #004d9e 10px solid;
	border-bottom: #FFF 10px solid;
}

@media screen and (max-width:737px){
	#scroll.ptop a { display: none;}
}



/**
 * pretty-checkbox.css
 *
 * A pure CSS library to beautify checkbox and radio buttons
 *
 * Source: https://github.com/lokesh-coder/pretty-checkbox
 * Demo: https://lokesh-coder.github.io/pretty-checkbox
 *
 * Copyright (c) 2017 Lokesh rajendran
 */

.pretty * {
  box-sizing: border-box;
}

.pretty input:not([type='checkbox']):not([type='radio']) {
  display: none;
}

.pretty {
  position: relative;
  display: inline-block;
  margin-right: 1em;
  white-space: nowrap;
  line-height: 1;
}

.pretty input {
  position: absolute;
  left: 0;
  top: 0;
  min-width: 1em;
  width: 100%;
  height: 100%;
  z-index: 2;
  opacity: 0;
  margin: 0;
  padding: 0;
  cursor: pointer;
}

.pretty .state label {
  position: initial;
  display: inline-block;
  font-weight: normal;
  margin: 0;
  text-indent: 1.5em;
  min-width: calc(1em + 2px);
}

.pretty .state label:before,
.pretty .state label:after {
  content: '';
  width: calc(1em + 2px);
  height: calc(1em + 2px);
  display: block;
  box-sizing: border-box;
  border-radius: 0;
  border: 1px solid transparent;
  z-index: 0;
  position: absolute;
  left: 0;
  top: calc((0% - (100% - 1em)) - 8%);
  background-color: transparent;
}

.pretty .state label:before {
  border-color: #bdc3c7;
}

.pretty .state.p-is-hover,
.pretty .state.p-is-indeterminate {
  display: none;
}

@-webkit-keyframes zoom {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
}

@keyframes zoom {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
}

@-webkit-keyframes tada {
  0% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
    -webkit-transform: scale(7);
    transform: scale(7);
  }
  38% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  55% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
  72% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  81% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    -webkit-transform: scale(1.24);
    transform: scale(1.24);
  }
  89% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  95% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    -webkit-transform: scale(1.04);
    transform: scale(1.04);
  }
  100% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes tada {
  0% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
    -webkit-transform: scale(7);
    transform: scale(7);
  }
  38% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  55% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }
  72% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  81% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    -webkit-transform: scale(1.24);
    transform: scale(1.24);
  }
  89% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  95% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    -webkit-transform: scale(1.04);
    transform: scale(1.04);
  }
  100% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@-webkit-keyframes jelly {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  40% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  50% {
    -webkit-transform: scale3d(0.85, 1.15, 1);
    transform: scale3d(0.85, 1.15, 1);
  }
  65% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  75% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes jelly {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  40% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  50% {
    -webkit-transform: scale3d(0.85, 1.15, 1);
    transform: scale3d(0.85, 1.15, 1);
  }
  65% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  75% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@-webkit-keyframes rotate {
  0% {
    opacity: 0;
    -webkit-transform: translateZ(-200px) rotate(-45deg);
    transform: translateZ(-200px) rotate(-45deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) rotate(0);
    transform: translateZ(0) rotate(0);
  }
}

@keyframes rotate {
  0% {
    opacity: 0;
    -webkit-transform: translateZ(-200px) rotate(-45deg);
    transform: translateZ(-200px) rotate(-45deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) rotate(0);
    transform: translateZ(0) rotate(0);
  }
}

@-webkit-keyframes pulse {
  0% {
    box-shadow: 0px 0px 0px 0px #bdc3c7;
  }
  100% {
    box-shadow: 0px 0px 0px 1.5em rgba(189, 195, 199, 0);
  }
}

@keyframes pulse {
  0% {
    box-shadow: 0px 0px 0px 0px #bdc3c7;
  }
  100% {
    box-shadow: 0px 0px 0px 1.5em rgba(189, 195, 199, 0);
  }
}

.pretty.p-default.p-fill .state label:after {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

.pretty.p-default .state label:after {
  -webkit-transform: scale(0.6);
  -ms-transform: scale(0.6);
  transform: scale(0.6);
}

.pretty.p-default input:checked ~ .state label:after {
  background-color: #bdc3c7 !important;
}

.pretty.p-default.p-thick .state label:before,
.pretty.p-default.p-thick .state label:after {
  border-width: calc(1em / 7);
}

.pretty.p-default.p-thick .state label:after {
  -webkit-transform: scale(0.4) !important;
  -ms-transform: scale(0.4) !important;
  transform: scale(0.4) !important;
}

.pretty.p-icon .state .icon {
  position: absolute;
  font-size: 1em;
  width: calc(1em + 2px);
  height: calc(1em + 2px);
  left: 0;
  z-index: 1;
  text-align: center;
  line-height: normal;
  top: calc((0% - (100% - 1em)) - 8%);
  border: 1px solid transparent;
  opacity: 0;
}

.pretty.p-icon .state .icon:before {
  margin: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1;
}

.pretty.p-icon input:checked ~ .state .icon {
  opacity: 1;
}

.pretty.p-icon input:checked ~ .state label:before {
  border-color: #5a656b;
}

.pretty.p-svg .state .svg {
  position: absolute;
  font-size: 1em;
  width: calc(1em + 2px);
  height: calc(1em + 2px);
  left: 0;
  z-index: 1;
  text-align: center;
  line-height: normal;
  top: calc((0% - (100% - 1em)) - 8%);
  border: 1px solid transparent;
  opacity: 0;
}

.pretty.p-svg .state svg {
  margin: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1;
}

.pretty.p-svg input:checked ~ .state .svg {
  opacity: 1;
}

.pretty.p-image .state img {
  opacity: 0;
  position: absolute;
  width: calc(1em + 2px);
  height: calc(1em + 2px);
  top: 0;
  top: calc((0% - (100% - 1em)) - 8%);
  left: 0;
  z-index: 0;
  text-align: center;
  line-height: normal;
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
}

.pretty.p-image input:checked ~ .state img {
  opacity: 1;
}

.pretty.p-switch input {
  min-width: 2em;
}

.pretty.p-switch .state {
  position: relative;
}

.pretty.p-switch .state:before {
  content: '';
  border: 1px solid #bdc3c7;
  border-radius: 60px;
  width: 2em;
  box-sizing: unset;
  height: calc(1em + 2px);
  position: absolute;
  top: 0;
  top: calc((0% - (100% - 1em)) - 16%);
  z-index: 0;
  transition: all 0.5s ease;
}

.pretty.p-switch .state label {
  text-indent: 2.5em;
}

.pretty.p-switch .state label:before,
.pretty.p-switch .state label:after {
  transition: all 0.5s ease;
  border-radius: 100%;
  left: 0;
  border-color: transparent;
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
}

.pretty.p-switch .state label:after {
  background-color: #bdc3c7 !important;
}

.pretty.p-switch input:checked ~ .state:before {
  border-color: #5a656b;
}

.pretty.p-switch input:checked ~ .state label:before {
  opacity: 0;
}

.pretty.p-switch input:checked ~ .state label:after {
  background-color: #5a656b !important;
  left: 1em;
}

.pretty.p-switch.p-fill input:checked ~ .state:before {
  border-color: #5a656b;
  background-color: #5a656b !important;
}

.pretty.p-switch.p-fill input:checked ~ .state label:before {
  opacity: 0;
}

.pretty.p-switch.p-fill input:checked ~ .state label:after {
  background-color: #fff !important;
  left: 1em;
}

.pretty.p-switch.p-slim .state:before {
  height: 0.1em;
  background: #bdc3c7 !important;
  top: calc(50% - 0.1em);
}

.pretty.p-switch.p-slim input:checked ~ .state:before {
  border-color: #5a656b;
  background-color: #5a656b !important;
}

.pretty.p-has-hover input:hover ~ .state:not(.p-is-hover) {
  display: none;
}

.pretty.p-has-hover input:hover ~ .state.p-is-hover {
  display: block;
}

.pretty.p-has-hover input:hover ~ .state.p-is-hover .icon {
  display: block;
}

.pretty.p-has-focus input:focus ~ .state label:before {
  box-shadow: 0px 0px 3px 0px #bdc3c7;
}

.pretty.p-has-indeterminate input[type='checkbox']:indeterminate ~ .state:not(.p-is-indeterminate) {
  display: none;
}

.pretty.p-has-indeterminate input[type='checkbox']:indeterminate ~ .state.p-is-indeterminate {
  display: block;
}

.pretty.p-has-indeterminate input[type='checkbox']:indeterminate ~ .state.p-is-indeterminate .icon {
  display: block;
  opacity: 1;
}

.pretty.p-toggle .state.p-on {
  opacity: 0;
  display: none;
}

.pretty.p-toggle .state.p-off,
.pretty.p-toggle .state .icon,
.pretty.p-toggle .state .svg,
.pretty.p-toggle .state img {
  opacity: 1;
  display: inherit;
}

.pretty.p-toggle .state.p-off .icon {
  color: #bdc3c7;
}

.pretty.p-toggle input:checked ~ .state.p-on {
  opacity: 1;
  display: inherit;
}


.pretty.p-toggle input:checked ~ .state.p-off {
  opacity: 0;
  display: none;
}

.pretty.p-plain input:checked ~ .state label:before,
.pretty.p-plain.p-toggle .state label:before {
  content: none;
}

.pretty.p-plain.p-plain .icon {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}

.pretty.p-round .state label:before,
.pretty.p-round .state label:after {
  border-radius: 100%;
}

.pretty.p-round.p-icon .state .icon {
  border-radius: 100%;
  overflow: hidden;
}

.pretty.p-round.p-icon .state .icon:before {
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
}

.pretty.p-curve .state label:before,
.pretty.p-curve .state label:after {
  border-radius: 20%;
}

.pretty.p-smooth label:before,
.pretty.p-smooth label:after,
.pretty.p-smooth .icon,
.pretty.p-smooth .svg {
  transition: all 0.5s ease;
}

.pretty.p-smooth input:checked + .state label:after {
  transition: all 0.3s ease;
}

.pretty.p-smooth input:checked + .state .icon,
.pretty.p-smooth input:checked + .state .svg,
.pretty.p-smooth input:checked + .state img {
  -webkit-animation: zoom 0.2s ease;
  animation: zoom 0.2s ease;
}

.pretty.p-smooth.p-default input:checked + .state label:after {
  -webkit-animation: zoom 0.2s ease;
  animation: zoom 0.2s ease;
}

.pretty.p-smooth.p-plain input:checked + .state label:before {
  content: '';
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  transition: all 0.5s ease;
}

.pretty.p-tada:not(.p-default) input:checked + .state .icon,
.pretty.p-tada:not(.p-default) input:checked + .state .svg,
.pretty.p-tada:not(.p-default) input:checked + .state img,
.pretty.p-tada:not(.p-default) input:checked + .state label:before,
.pretty.p-tada:not(.p-default) input:checked + .state label:after {
  -webkit-animation: tada 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1 alternate;
  animation: tada 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1 alternate;
  opacity: 1;
}

.pretty.p-jelly:not(.p-default) input:checked + .state .icon,
.pretty.p-jelly:not(.p-default) input:checked + .state .svg,
.pretty.p-jelly:not(.p-default) input:checked + .state img,
.pretty.p-jelly:not(.p-default) input:checked + .state label:before,
.pretty.p-jelly:not(.p-default) input:checked + .state label:after {
  -webkit-animation: jelly 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  animation: jelly 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  opacity: 1;
}

.pretty.p-jelly:not(.p-default) input:checked + .state label:before {
  border-color: transparent;
}

.pretty.p-rotate:not(.p-default) input:checked ~ .state .icon,
.pretty.p-rotate:not(.p-default) input:checked ~ .state .svg,
.pretty.p-rotate:not(.p-default) input:checked ~ .state img,
.pretty.p-rotate:not(.p-default) input:checked ~ .state label:before,
.pretty.p-rotate:not(.p-default) input:checked ~ .state label:after {
  -webkit-animation: rotate 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  animation: rotate 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  opacity: 1;
}

.pretty.p-rotate:not(.p-default) input:checked ~ .state label:before {
  border-color: transparent;
}

.pretty.p-pulse:not(.p-switch) input:checked ~ .state label:before {
  -webkit-animation: pulse 1s;
  animation: pulse 1s;
}

.pretty input[disabled] {
  cursor: not-allowed;
  display: none;
}

.pretty input[disabled] ~ * {
  opacity: .5;
}

.pretty.p-locked input {
  display: none;
  cursor: not-allowed;
}

.pretty input:checked ~ .state.p-primary label:after,
.pretty.p-toggle .state.p-primary label:after {
  background-color: #428bca !important;
}

.pretty input:checked ~ .state.p-primary .icon,
.pretty input:checked ~ .state.p-primary .svg,
.pretty.p-toggle .state.p-primary .icon,
.pretty.p-toggle .state.p-primary .svg {
  color: #fff;
  stroke: #fff;
}

.pretty input:checked ~ .state.p-primary-o label:before,
.pretty.p-toggle .state.p-primary-o label:before {
  border-color: #428bca;
}

.pretty input:checked ~ .state.p-primary-o label:after,
.pretty.p-toggle .state.p-primary-o label:after {
  background-color: transparent;
}

.pretty input:checked ~ .state.p-primary-o .icon,
.pretty input:checked ~ .state.p-primary-o .svg,
.pretty input:checked ~ .state.p-primary-o svg,
.pretty.p-toggle .state.p-primary-o .icon,
.pretty.p-toggle .state.p-primary-o .svg,
.pretty.p-toggle .state.p-primary-o svg {
  color: #428bca;
  stroke: #428bca;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-primary-o label:after {
  background-color: #428bca !important;
}

.pretty.p-switch input:checked ~ .state.p-primary:before {
  border-color: #428bca;
}

.pretty.p-switch.p-fill input:checked ~ .state.p-primary:before {
  background-color: #428bca !important;
}

.pretty.p-switch.p-slim input:checked ~ .state.p-primary:before {
  border-color: #245682;
  background-color: #245682 !important;
}

.pretty input:checked ~ .state.p-info label:after,
.pretty.p-toggle .state.p-info label:after {
  background-color: #5bc0de !important;
}

.pretty input:checked ~ .state.p-info .icon,
.pretty input:checked ~ .state.p-info .svg,
.pretty.p-toggle .state.p-info .icon,
.pretty.p-toggle .state.p-info .svg {
  color: #fff;
  stroke: #fff;
}

.pretty input:checked ~ .state.p-info-o label:before,
.pretty.p-toggle .state.p-info-o label:before {
  border-color: #5bc0de;
}

.pretty input:checked ~ .state.p-info-o label:after,
.pretty.p-toggle .state.p-info-o label:after {
  background-color: transparent;
}

.pretty input:checked ~ .state.p-info-o .icon,
.pretty input:checked ~ .state.p-info-o .svg,
.pretty input:checked ~ .state.p-info-o svg,
.pretty.p-toggle .state.p-info-o .icon,
.pretty.p-toggle .state.p-info-o .svg,
.pretty.p-toggle .state.p-info-o svg {
  color: #5bc0de;
  stroke: #5bc0de;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-info-o label:after {
  background-color: #5bc0de !important;
}

.pretty.p-switch input:checked ~ .state.p-info:before {
  border-color: #5bc0de;
}

.pretty.p-switch.p-fill input:checked ~ .state.p-info:before {
  background-color: #5bc0de !important;
}

.pretty.p-switch.p-slim input:checked ~ .state.p-info:before {
  border-color: #2390b0;
  background-color: #2390b0 !important;
}

.pretty input:checked ~ .state.p-success label:after,
.pretty.p-toggle .state.p-success label:after {
  background-color: #5cb85c !important;
}

.pretty input:checked ~ .state.p-success .icon,
.pretty input:checked ~ .state.p-success .svg,
.pretty.p-toggle .state.p-success .icon,
.pretty.p-toggle .state.p-success .svg {
  color: #fff;
  stroke: #fff;
}

.pretty input:checked ~ .state.p-success-o label:before,
.pretty.p-toggle .state.p-success-o label:before {
  border-color: #5cb85c;
}

.pretty input:checked ~ .state.p-success-o label:after,
.pretty.p-toggle .state.p-success-o label:after {
  background-color: transparent;
}

.pretty input:checked ~ .state.p-success-o .icon,
.pretty input:checked ~ .state.p-success-o .svg,
.pretty input:checked ~ .state.p-success-o svg,
.pretty.p-toggle .state.p-success-o .icon,
.pretty.p-toggle .state.p-success-o .svg,
.pretty.p-toggle .state.p-success-o svg {
  color: #5cb85c;
  stroke: #5cb85c;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-success-o label:after {
  background-color: #5cb85c !important;
}

.pretty.p-switch input:checked ~ .state.p-success:before {
  border-color: #5cb85c;
}

.pretty.p-switch.p-fill input:checked ~ .state.p-success:before {
  background-color: #5cb85c !important;
}

.pretty.p-switch.p-slim input:checked ~ .state.p-success:before {
  border-color: #357935;
  background-color: #357935 !important;
}

.pretty input:checked ~ .state.p-warning label:after,
.pretty.p-toggle .state.p-warning label:after {
  background-color: #f0ad4e !important;
}

.pretty input:checked ~ .state.p-warning .icon,
.pretty input:checked ~ .state.p-warning .svg,
.pretty.p-toggle .state.p-warning .icon,
.pretty.p-toggle .state.p-warning .svg {
  color: #fff;
  stroke: #fff;
}

.pretty input:checked ~ .state.p-warning-o label:before,
.pretty.p-toggle .state.p-warning-o label:before {
  border-color: #f0ad4e;
}

.pretty input:checked ~ .state.p-warning-o label:after,
.pretty.p-toggle .state.p-warning-o label:after {
  background-color: transparent;
}

.pretty input:checked ~ .state.p-warning-o .icon,
.pretty input:checked ~ .state.p-warning-o .svg,
.pretty input:checked ~ .state.p-warning-o svg,
.pretty.p-toggle .state.p-warning-o .icon,
.pretty.p-toggle .state.p-warning-o .svg,
.pretty.p-toggle .state.p-warning-o svg {
  color: #f0ad4e;
  stroke: #f0ad4e;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-warning-o label:after {
  background-color: #f0ad4e !important;
}

.pretty.p-switch input:checked ~ .state.p-warning:before {
  border-color: #f0ad4e;
}

.pretty.p-switch.p-fill input:checked ~ .state.p-warning:before {
  background-color: #f0ad4e !important;
}

.pretty.p-switch.p-slim input:checked ~ .state.p-warning:before {
  border-color: #c77c11;
  background-color: #c77c11 !important;
}

.pretty input:checked ~ .state.p-danger label:after,
.pretty.p-toggle .state.p-danger label:after {
  background-color: #d9534f !important;
}

.pretty input:checked ~ .state.p-danger .icon,
.pretty input:checked ~ .state.p-danger .svg,
.pretty.p-toggle .state.p-danger .icon,
.pretty.p-toggle .state.p-danger .svg {
  color: #fff;
  stroke: #fff;
}

.pretty input:checked ~ .state.p-danger-o label:before,
.pretty.p-toggle .state.p-danger-o label:before {
  border-color: #d9534f;
}

.pretty input:checked ~ .state.p-danger-o label:after,
.pretty.p-toggle .state.p-danger-o label:after {
  background-color: transparent;
}

.pretty input:checked ~ .state.p-danger-o .icon,
.pretty input:checked ~ .state.p-danger-o .svg,
.pretty input:checked ~ .state.p-danger-o svg,
.pretty.p-toggle .state.p-danger-o .icon,
.pretty.p-toggle .state.p-danger-o .svg,
.pretty.p-toggle .state.p-danger-o svg {
  color: #d9534f;
  stroke: #d9534f;
}

.pretty.p-default:not(.p-fill) input:checked ~ .state.p-danger-o label:after {
  background-color: #d9534f !important;
}

.pretty.p-switch input:checked ~ .state.p-danger:before {
  border-color: #d9534f;
}

.pretty.p-switch.p-fill input:checked ~ .state.p-danger:before {
  background-color: #d9534f !important;
}

.pretty.p-switch.p-slim input:checked ~ .state.p-danger:before {
  border-color: #a02622;
  background-color: #a02622 !important;
}

.pretty.p-bigger label:before,
.pretty.p-bigger label:after,
.pretty.p-bigger .icon,
.pretty.p-bigger .svg,
.pretty.p-bigger .img {
  font-size: 1.2em !important;
  top: calc((0% - (100% - 1em)) - 35%) !important;
}

.pretty.p-bigger label {
  text-indent: 1.7em;
}

@media print {
  .pretty .state:before,
  .pretty .state label:before,
  .pretty .state label:after,
  .pretty .state .icon {
    color-adjust: exact;
    /* stylelint-disable */
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}