@charset "UTF-8";
/*
============================================================
* reset.css
============================================================
*/
body,
h1, h2, h3, h4, h5, h6,
p, ol, ul, dl, dt, dd, form,
select,
figure,
figcaption,
table, td, th {
	margin: 0;
	padding: 0;
}

input[type="text"] {
	margin: 0;
	padding: 0;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
}

table, td, th, tr, thead, tbody {
	border: none;
}

ul, ol {
	list-style: none;
}

address {
	font-style: normal;
}

img {
	vertical-align: bottom;
}

a img {
	border: none;
}

textarea {
	font-size: 1em;
}

header,
footer,
section,
figure,
figcaption,
nav,
aside {
	display: block;
}


/*============================================================
* 各デバイス表示
============================================================*/

@media only screen and (min-width: 992px) {
	.pc {
		display: block;
	}
}
@media only screen and (min-width: 768px) {
	.pc {
		display: block;
	}
}
@media only screen and (max-width: 767px) {
	.pc {
		display: none;
	}
}

@media only screen and (min-width: 992px) {
	.sp {
		display: none;
	}
}
@media only screen and (min-width: 768px) {
	.sp {
		display: none;
	}
}
@media only screen and (max-width: 767px) {
	.sp {
		display: block;
	}
}


/*==========================================================
1.Basic -基本設定-
==========================================================*/
* {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

html, body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

html {
	font-family: "Lato", "Noto Sans CJK JP", "游ゴシック", "Yu Gothic", YuGothic, sans-serif;
	font-size: 62.5%;
	font-weight: normal;
	line-height: 1;
	color: #000;
	word-wrap: break-word;
	height: 100%;
	position: relative;
}

body {
	position: relative;
	width: 100%;
	height: 100%;
	background-color: #fff;
	font-size:16px;
	font-size:1.6rem;
	-webkit-text-size-adjust: 100%;
	_display: inline;
	_zoom: 1;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}
@media only screen and (min-width: 992px) {
	body {
		-moz-animation: fadeIn 2s ease 0s 1 normal;
		-webkit-animation: fadeIn 2s ease 0s 1 normal;
		animation: fadeIn 2s ease 0s 1 normal;
	}
}
@media only screen and (min-width: 768px) {
	body {
		border-top: solid 5px #ff9722;
}

}

a {
	outline: none;
	text-decoration: none;
	color: #000;
	border-bottom: 1px solid transparent;
}
@media only screen and (min-width: 768px) {
	a {
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
}

a:hover {
	cursor: pointer;
	border-bottom-color: #000;
}

a.imglink:hover {
	border-bottom: none;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
	opacity: 0.75;
}

em {
	font-style: normal;
}

img {
	max-width: 100%;
	height: auto;
}

table {
	border-collapse: collapse;
}

input[type="submit"], input[type="reset"], input[type="button"], button {
	cursor: pointer;
}

sup, sub {
	font-size: 0.6em;
}


/*==========================================================
2.Layout -基本レイアウト設定-
==========================================================*/

.inner {
	max-width: 1020px;
	margin-left: auto;
	margin-right: auto;
	*zoom: 1;
}
.inner:after {
	content: "";
	display: table;
	clear: both;
}

@media only screen and (max-width: 1080px){
	.padding {
		max-width: none;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}
@media only screen and (max-width: 767px){
	.padding {
		padding-left: 2.67% !important;
		padding-right: 2.67% !important;
	}
}

@media only screen and (min-width: 680px) {
	.narrow {
		width: 680px;
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
}


/*********************************************
ヘッダー
*********************************************/

/* Logo */

@media only screen and (min-width: 768px) {
	#header .inner {
		max-width: 1190px;
		padding: 25px 0;
	}

	#header .logo {
		float: left;
	}

	#header .logo a {
		border-bottom: none;
	}
}

@media only screen and (max-width: 767px){
	#header .inner {
		padding-top: 10px;
		padding-bottom: 0;
	}

	#header .logo {
		float: none;
		margin-bottom: 10px;
		padding-left: 2.7%;
	}
}

/* Navi */

@media only screen and (min-width: 768px) {
	#mainNav {
		text-align: right;
	}

	#mainNav ul li {
		display: inline-block;
		margin: 12px 6px 0 0;
		font-size: 14px;
		font-size: 1.4rem;
		letter-spacing: 0.1em;
	}
	#mainNav ul li:last-child {
		margin-right: 0;
	}

	#mainNav ul li::after {
		padding-left: 6px;
		content: "／";
		font-size: 16px;
		font-size: 1.6rem;
	}
	#mainNav ul li:last-child::after {
		padding-left: 0;
		content: "";
	}

	#mainNav ul li a {
		text-decoration: none;
	}
	#mainNav ul li a:hover {
	}

	nav div.panel {
		display:block !important;
	}

	a#menu {
		display:none;
	}
}

@media only screen and (max-width: 767px){
	nav#mainNav{
		border:0;
		padding:0;
		margin:0;
		width:100%;
	}

	nav#mainNav a.menu{
		width:100%;
		display:block;
		height:40px;
		line-height:40px;
		font-weight: bold;
		text-align:left;
		color:#fff;
		border-bottom: none;
		background: #ff9722 url(../img/menuOpen.png) no-repeat 1em 50%;
		background-size: 18px 18px;
	}

	nav#mainNav a#menu span{
		padding-left:3em;
	}

	nav#mainNav a.menuOpen{
		background: #ff9722 url(../img/menuClose.png) no-repeat 1em 50%;
		background-size: 18px 18px;
	}

	nav#mainNav a#menu:hover{
		cursor:pointer;
	}

	nav .panel{
		display: none;
		width:100%;
		position: relative;
		right: 0;
		top:0;
		z-index: 1;
		border-bottom:1px solid #ccc;
	}

	.panel ul{margin:0;padding:0;}
	
	.panel ul li{
		float: none;
		clear:both;
		width:100%;
		height:auto;
		line-height:1.4;
	}
	
	.panel ul li a,.panel ul li.current-menu-item li a{
		display: block;
		width:100%;
		padding:1em 0;
		height:auto;
		text-align: left;
		background: -webkit-gradient(linear,left top,left bottom,from(#fff),to(#f6f7f6));
		background: -webkit-linear-gradient(top, #fff, #f6f7f6);
		background: -moz-linear-gradient(top, #fff, #f6f7f6);
		background: -o-linear-gradient(top, #fff, #f6f7f6);
		background: -ms-linear-gradient(top, #fff, #f6f7f6);
		background: linear-gradient(top, #fff, #f6f7f6);
		border-bottom:1px solid #ccc;
	}
	
	.panel ul li a span{
		padding-left:1em;
	}
	
	.panel ul li.current-menu-item a,.panel ul li a:hover,.panel ul li.current-menu-item a,.panel ul li a:active, .panel ul li li.current-menu-item a, .panel ul li.current-menu-item li a:hover, .panel ul li.current-menu-item li a:active{
		color:#498cbd;
	}
	
	.panel ul li.current-menu-item li a{
		color:#666;
	}
	
	.panel ul li li{
		float:left;
		border:0;
	}
	
	.panel ul li li a, .panel ul li.current-menu-item li a, .panel ul li li.current-menu-item a,.panel ul li li a:hover,.panel ul li.current-menu-item li a:hover{
		border-top:1px dotted #ccc;
		border-bottom:1px dotted #fff;
		/*background:url(../../css/img/common/sub1.png) no-repeat 15px 50%;*/
	}
	
	.panel ul li li:last-child a,.panel ul li li:last-child a:hover,.panel ul li.current-menu-item li:last-child a:hover{
		/*background:url(../../css/img/common/subLast.png) no-repeat 15px 50%;*/
	}
	
	.panel ul li li a span{
		padding-left:25px;
	}
	
	nav div.panel,#searchHead{
		float:none;
	}
	#searchHead{
		text-align:right;
	}
	
	nav#mainNav {
		height: inherit;
	}
	
	nav#mainNav .panel > ul:before ,
	nav#mainNav .panel > ul > li:after {
		display: none;
	}
	
	nav#mainNav ul li {
		float: left;
		position: relative;
		color: #9d8c83;
	}
	
	nav#mainNav ul li a {
		background: none;
		text-align: center;
		width: 100%;
		height: inherit;
	}
	
	nav#mainNav ul li a span,nav#mainNav ul li a strong {
		display:block;
		font-weight: bold;
		font-size:100%;
		line-height:1.4;
	}
	
	nav#mainNav ul li a span {
		display: none;
	}
	
	nav#mainNav ul li a:hover {
		background: none;
	}
	
}


/*********************************************
 タイトル＆ローカルナビ
*********************************************/

/* Title */

.title {
	padding-top: 130px;
	background: url(../img/ttl_bg.png) no-repeat center top;
	background-size: 2044px auto;
	text-align: center;
	position: relative;
}

.title .title-txt {
	position: absolute;
	left: 50%;
	top: 30px;
	width: 200px;
	height: 200px;
	margin-left: -100px;
	padding-top: 75px;
	-webkit-border-radius: 200px;
	-moz-border-radius: 200px;
	border-radius: 200px;
	background-color: #fff;
	-webkit-box-shadow: 7px 7px 30px rgba(0,0,0,.1);
	-moz-box-shadow: 7px 7px 30px rgba(0,0,0,.1);
	box-shadow: 7px 7px 30px rgba(0,0,0,.1);
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: normal;
	letter-spacing: 0.2em;
}
.title .title-txt2 {
	padding-top: 60px;
	line-height: 1.4;
}
.title .title-txt span {
	display: block;
	margin-top: 10px;
	font-size: 12px;
	font-size: 1.2rem;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

@media only screen and (min-width: 768px) {
	.title {
		min-height: 281px;
	}
	.title .inner {
		border-bottom: solid 4px #ff9722;
	}
	.title.title-simple .inner {
		border-bottom: none;
	}
}
@media only screen and (max-width: 767px) {
	.title {
		min-height: none;
		padding-top: 90px;
		background: #f6f6f3;
	}
	.title .inner{
		border-bottom: solid 2px #ff9722;
	}
	.title .title-txt {
		top: 15px;
		width: 150px;
		height: 150px;
		margin-left: -75px;
		padding-top: 50px;
		font-size: 20px;
		font-size: 2.0rem;
		letter-spacing: 0.1em;
	}
	.title .title-txt2 {
		padding-top: 35px;
	}

	.title.title-simple {
		min-height: 180px;
		background-color: none;
		background: url(../img/ttl_bg.png) no-repeat center bottom;
		text-align: center;
	}
	.title.title-simple .inner {
		border-bottom: none;
	}
}

/* Local Navi */

.lnav {
	background: #f7f7f4;
}

.lnav a:hover {
	color: #ff9722;
	border-color: transparent;
}

@media only screen and (min-width: 768px) {
	.lnav {
		padding: 32px 0;
		text-align: center;
	}
	.lnav ul {
	}
	.lnav ul:after {
		content: "";
		display: table;
		clear: both;
	}
	.lnav li {
		display: inline-block;
		margin-right: 35px;
		font-size: 20px;
		position: relative;
	}
	.lnav li:last-child {
		margin-right: 0;
	}

	.lnav li::after {
		padding-left: 35px;
		content: "|";
	}
	.lnav li:last-child::after {
		padding-left: 0;
		content: "";
	}

	.lnav li.current::before {
		position: absolute;
		left: 50%;
		bottom: -50px;
		display: block;
		width: 0;
		height: 0;
		margin-left: -24px;
		border: 8px solid transparent;
		border-top: 8px solid #ff9722;
		content: "";
	}
}
@media only screen and (max-width: 767px) {
	.lnav {
		padding: 10px 0 5px;
		text-align: left;
	}
	.lnav li {
		margin-bottom: 5px;
	}
	.lnav li a {
		display: block;
		padding: 5px 0;
	}
	.lnav li a:before {
		margin-right: 5px;
		content: " \f0da";
		color: #ff9722;
		font-family: FontAwesome;
	}
	.lnav li.current a {
		color: #ff9722;
		font-weight: bold;
	}
}


/*********************************************
 FOOTER
*********************************************/

#footer {
	background: url(../img/footer_bg.png) no-repeat right bottom;
	background-size: 550px auto;
}

#footer .inner {
	padding-top: 85px;
	padding-bottom: 150px;
	border-top: solid 2px #ccc;
}

#footer a {
	border-bottom: 0 none;
}
#footer a:hover {
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
	opacity: 0.75;
}

#footer h2 {
	margin-bottom: 40px;
}

#footer address {
	margin-bottom: 55px;
	font-size: 14px;
	font-size: 1.4rem;
}
#footer address p {
	margin-bottom: 20px;
}
#footer .copyright {
	font-size: 12px;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
}

#footer address i {
	margin-right: 7px;
	color: #ff9722;
	font-size: 14px;
	font-size: 1.4rem;
}
#footer address .mail {
	margin-bottom: 15px;
}
#footer address .mail a {
	padding-right: 45px;
	background: url(../img/arrow.png) no-repeat right 60%;
	background-size: 34px auto;
}
#footer address .tel {
	font-size: 21px;
	font-size: 2.1rem;
}

@media only screen and (max-width: 767px) {
	#footer {
		background-size: 188px auto;
	}
	#footer .inner{
		padding-top: 30px;
		padding-bottom: 80px;
	}
}


/* ページトップへ */

#page-top {
	position: fixed;
	right: 25px;
	bottom: 25px;
}

#page-top a {
	display: block;
	width: 20px;
	height: 45px;
	border-bottom: none;
	background: url(../img/pagetop.png) no-repeat;
	background-size: 20px 45px;
	text-indent: -9999px;
}
#page-top a:hover {
	border-bottom: 0 none transparent;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60);
	opacity: 0.6;
}


/*********************************************
コンテンツ
*********************************************/

.contents {
	padding-top: 60px;
	padding-bottom: 60px;
}
@media only screen and (max-width: 767px) {
	.contents {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}


/*==========================================================
3.Class -汎用クラス設定-
==========================================================*/
/*********************************************
 CLEARFIX
*********************************************/
.cf {
	*zoom: 1;
}
.cf:after {
	content: "";
	display: table;
	clear: both;
}

/*********************************************
 FLOAT
*********************************************/
.f-left {
	float: left;
}

.f-right {
	float: right;
}

.f-clear {
	clear: both;
}

@media only screen and (max-width: 767px){
	.f-left ,
	.f-right {
		float: none;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 20px;
	}
}


/*********************************************
 TEXT
*********************************************/
.big {
	font-size: 130%;
}

.small {
	font-size: 50%;
}

.t-left {
	text-align: left;
}

.t-right {
	text-align: right;
}

.t-center {
	text-align: center;
}

.br {
	display: inline-block;
}

em {
	background: linear-gradient(transparent 70%, #fff100 70%);
}}

@media only screen and (max-width: 991px) {
	.tb-left {
		text-align: left !important;
	}
	.tb-right {
		text-align: right !important;
	}
}
@media only screen and (max-width: 767px) {
	.sp-left {
		text-align: left !important;
	}
	.sp-right {
		text-align: right !important;
	}
}


/*********************************************
 リンク
*********************************************/

.link a {
	padding-right: 45px;
	background: url(../img/arrow.png) no-repeat right 60%;
	background-size: 34px auto;
}
.link a:before {
	margin-right: 7px;
	content: "\f002";
	color: #f93;
	font-family: FontAwesome;
}


/*********************************************
 見出し＆段落
*********************************************/

/* 基本見出し（細かい装飾は各CSSにて） */
.ttl {
	line-height: 1.5;
}

/* オレンジ文字＋短下線 */
.ttl2 {
	margin-bottom: 90px;
	color: #ff9722;
	font-size: 36px;
	font-size: 3.6rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	position: relative;
}
.ttl2::after {
		display: block;
		position: absolute;
		bottom: -35px;
		left: 50%;
		width: 50px;
		height: 4px;
		margin-left: -25px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		border-radius: 2px;
		background: #ff9722;
		content: '';
}

/* 黒文字シンプル */
.ttl3 {
	margin-bottom: 35px;
	color: #000;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

/* オレンジ文字シンプル */
.ttl4 {
	margin-bottom: 30px;
	color: #f93;
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.5;
}

/* 黒文字＋オレンジアイコン+背景色 */
.ttl5 {
	margin-bottom: 3%;
	padding: 15px;
	border-bottom: solid 2px #d2c5b3;
	background: #f7f7f4;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
}
.ttl5::before {
	margin-right: 3px;
	content: " \f10c";
	color: #f93;
	font-family: FontAwesome;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
}

/* オレンジ文字+緑ドット下線 */
.ttl6 {
	margin-bottom: 45px;
	color: #7b542b;
	font-size: 30px;
	font-size: 3.0rem;
	text-align: center;
}
.ttl6 span {
	display: inline-block;
	padding-bottom: 15px;
	border-bottom: dashed 2px #80a738;
}

.ttl7 {
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: solid 2px #f93;
	color: #80c269;
	font-size: 27px;
	font-size: 2.7rem;
	text-align: center;
}

@media only screen and (max-width: 767px){
	.ttl2 {
		font-size: 24px;
		font-size: 2.4rem;
	}
	.ttl3 {
		font-size: 20px;
		font-size: 2.0rem;
	}
	.ttl4 {
		font-size: 20px;
		font-size: 2.0rem;
	}
	.ttl5 {
		font-size: 20px;
		font-size: 2.0rem;
	}
	.ttl6 {
		font-size: 20px;
		font-size: 2.0rem;
	}
	.ttl7 {
		font-size: 20px;
		font-size: 2.0rem;
	}
}

.txt {
	margin-bottom: 0.5em;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 2;
}

.img {
	text-align: center;
}

/*********************************************
 リスト
*********************************************/

.ul1 li {
	margin-bottom: 1em;
	padding-left: 20px;
	font-size: 19px;
	font-size: 1.9rem;
	text-indent: -20px;
	line-height: 1.3;
}
.ul1 li::before {
	margin-right: 3px;
	content: " \f10c";
	font-family: FontAwesome;
	color: #ff9722;
}

.ol1 {
	counter-reset: li;		/* li のカウンタを 0 にセット */ 
	list-style: none;
}

.ol1 li {
	position: relative;
	margin-bottom: 0.5em;
	padding-left: 30px;
	text-indent: -30px;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.3;
}

.ol1 li:before {
	counter-increment: li;	 /* li の数を一つずつ増加 */
	content: counter(li);		/* 数を表示 */
	margin-right: 0.5em;
	color: #ff9722;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
	position: relative;
	top: 3px;
}

.dl1 {
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.4;
}

.dl1 > dt {
	font-weight: bold;
}
.dl1 > dd {
}

@media only screen and (min-width: 768px) {
	.dl1 > dt {
		clear: left;
		float: left;
		width: 8em;
		padding: 0.5em 0;
		margin-bottom: 0.7em;
		border-bottom: solid 1px #7fab26;
	}
	.dl1 > dd {
	margin-bottom: 0.7em;
		padding: 0.5em 0 0.5em 10em;
	}
}
@media only screen and (max-width: 767px){
	.dl1 > dt {
		padding-top: 0.5em;
	}
	.dl1 > dd {
		padding-bottom: 0.7em;
		border-bottom: solid 1px #7fab26;
	}
}

.dl2 {
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.4;
}

.dl2 > dt {
	float: left;
	padding: 0.5em 0;
}
.dl2 > dd {
	padding: 0.5em 0 0.5em 11em;
	border-bottom: solid 1px #333;
}

/*********************************************
 罫線
*********************************************/
hr {
	height: 20px;
	margin-bottom: 40px;
	border: none;
	background: url(../img/hr.png) no-repeat center top;
	background-size: auto 20px;
}

/*********************************************
 図
*********************************************/

figcaption {
	margin-top: 10px;
	color: #666;
	font-size: 16px;
	font-size: 1.6rem;
	text-align: center;
}
@media only screen and (max-width: 767px){
	figure {
		text-align: center;
	}
}

/*********************************************
 カラム
*********************************************/
.row {
	clear:both;
	}
	.row:after{
		display: table;
		content: "";
		clear: both;
	}

.col {
	display: block;
	float: left;
	padding: 0px 1%;
	box-sizing: border-box;
}
.column-1 .col { width: 100%; }
.column-2 .col { width: 50%; }
.column-3 .col { width: 33.33333333%; }
.column-4 .col { width: 25%; }

@media only screen and (max-width: 767px){
	.column-1 .col ,
	.column-2 .col ,
	.column-3 .col ,
	.column-4 .col {
		float: none;
		width: 100%;
		margin-bottom: 15%;
	}
}


/*********************************************
 ボックス
*********************************************/

.box-orange {
	margin-bottom: 75px;
	border: dotted 3px #f96;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
}
@media only screen and (min-width: 768px) {
	.box-orange {
		padding: 50px 100px;
	}
}
@media only screen and (max-width: 767px){
	.box-orange {
		padding: 20px;
	}
}

/*********************************************
 背景
*********************************************/

.bg-ring {
	background: url(../img/bg_ring.gif) no-repeat center top;
	background-size: 1818px auto;
}

.bg {
	background: #f7f7f4;
}

/*********************************************
 その他装飾
*********************************************/

/* 角丸 */
.radius {
	-webkit-border-radius: 4%;
	-moz-border-radius: 4%;
	border-radius: 4%;
}

/* 影（未使用） */
.shadow {
	box-shadow: 0 0 15px #aaa;
	-moz-box-shadow: 0 0 15px #aaa;　/* Firefox用 */
	-webkit-box-shadow: 0 0 15px #aaa;　/* Safari,Google Chrome用 */
}

/* 注釈（未使用） */

p.note {
	margin-top: 0.5em;
	padding-left: 1em;
	font-size: 75%;
}
p.note:before {
	margin-left: -1em;
	content: "※";
}

.note li {
	margin-bottom: 5px;
	padding-left: 1em;
}

.note li:before {
	margin-left: -1em;
	content: "※";
}


/*********************************************
	マージン
*********************************************/

.m0{ margin: 0px!important; }	/*全margin無し*/
.mt-0{ margin-top: 0px!important; }	/*上marginが0px*/
.mr-0{ margin-right: 0px!important; }	/*右marginが0px*/
.mb-0{ margin-bottom: 0px!important; }	/*下marginが0px*/
.ml-0{ margin-left: 0px!important; }	/*左marginが0px*/

.m1{ margin: 1px!important; }
.mt-1{ margin-top: 1px!important; } 
.mr-1{ margin-right: 1px!important; }
.mb-1{ margin-bottom: 1px!important; }
.ml-1{ margin-left: 1px!important; }

.m2{ margin: 2px!important; }
.mt-2{ margin-top: 2px!important; } 
.mr-2{ margin-right: 2px!important; }
.mb-2{ margin-bottom: 2px!important; }
.ml-2{ margin-left: 2px!important; }

.m3{ margin: 3px!important; }
.mt-3{ margin-top: 3px!important; } 
.mr-3{ margin-right: 3px!important; }
.mb-3{ margin-bottom: 3px!important; }
.ml-3{ margin-left: 3px!important; }

.m4{ margin: 4px!important; }
.mt-4{ margin-top: 4px!important; } 
.mr-4{ margin-right: 4px!important; }
.mb-4{ margin-bottom: 4px!important; }
.ml-4{ margin-left: 4px!important; }

.m5{ margin: 5px!important; }
.mt-5{ margin-top: 5px!important; } 
.mr-5{ margin-right: 5px!important; }
.mb-5{ margin-bottom: 5px!important; }
.ml-5{ margin-left: 5px!important; }

.m6{ margin: 6px!important; }
.mt-6{ margin-top: 6px!important; } 
.mr-6{ margin-right: 6px!important; }
.mb-6{ margin-bottom: 6px!important; }
.ml-6{ margin-left: 6px!important; }

.m7{ margin: 7px!important; }
.mt-7{ margin-top: 7px!important; } 
.mr-7{ margin-right: 7px!important; }
.mb-7{ margin-bottom: 7px!important; }
.ml-7{ margin-left: 7px!important; }

.m8{ margin: 8px!important; }
.mt-8{ margin-top: 8px!important; } 
.mr-8{ margin-right: 8px!important; }
.mb-8{ margin-bottom: 8px!important; }
.ml-8{ margin-left: 8px!important; }

.m9{ margin: 9px!important; }
.mt-9{ margin-top: 9px!important; } 
.mr-9{ margin-right: 9px!important; }
.mb-9{ margin-bottom: 9px!important; }
.ml-9{ margin-left: 9px!important; }

.m10{ margin: 10px!important; }
.mt-10{ margin-top: 10px!important; }
.mr-10{ margin-right: 10px!important; }
.mb-10{ margin-bottom: 10px!important; }
.ml-10{ margin-left: 10px!important; }

.m15{ margin: 15px!important; }
.mt-15{ margin-top: 15px!important; }
.mr-15{ margin-right: 15px!important; }
.mb-15{ margin-bottom: 15px!important; }
.ml-15{ margin-left: 15px!important; }

.m20{ margin: 20px!important; }
.mt-20{ margin-top: 20px!important; }
.mr-20{ margin-right: 20px!important; }
.mb-20{ margin-bottom: 20px!important; }
.ml-20{ margin-left: 20px!important; }

.m25{ margin: 25px!important; }
.mt-25{ margin-top: 25px!important; }
.mr-25{ margin-right: 25px!important; }
.mb-25{ margin-bottom: 25px!important; }
.ml-25{ margin-left: 25px!important; }

.m30{ margin: 30px!important; }
.mt-30{ margin-top: 30px!important; }
.mr-30{ margin-right: 30px!important; }
.mb-30{ margin-bottom: 30px!important; }
.ml-30{ margin-left: 30px!important; }

.m35{ margin: 35px!important; }
.mt-35{ margin-top: 35px!important; }
.mr-35{ margin-right: 35px!important; }
.mb-35{ margin-bottom: 35px!important; }
.ml-35{ margin-left: 35px!important; }

.m40{ margin: 40px!important; }
.mt-40{ margin-top: 40px!important; }
.mr-40{ margin-right: 40px!important; }
.mb-40{ margin-bottom: 40px!important; }
.ml-40{ margin-left: 40px!important; }

.m50{ margin: 50px!important; }
.mt-50{ margin-top: 50px!important; }
.mr-50{ margin-right: 50px!important; }
.mb-50{ margin-bottom: 50px!important; }
.ml-50{ margin-left: 50px!important; }

.m60{ margin: 60px!important; }
.mt-60{ margin-top: 60px!important; }
.mr-60{ margin-right: 60px!important; }
.mb-60{ margin-bottom: 60px!important; }
.ml-60{ margin-left: 60px!important; }

.m70{ margin: 70px!important; }
.mt-70{ margin-top: 70px!important; }
.mr-70{ margin-right: 70px!important; }
.mb-70{ margin-bottom: 70px!important; }
.ml-70{ margin-left: 70px!important; }


/*********************************************
	パディング
*********************************************/

.p0{ padding: 0px!important; }	/*全padding無し*/
.pt-0{ padding-top: 0px!important; }	/*上paddingが0px*/
.pr-0{ padding-right: 0px!important; }	/*右paddingが0px*/
.pb-0{ padding-bottom: 0px!important; }	/*下paddingが0px*/
.pl-0{ padding-left: 0px!important; }	/*左paddingが0px*/

.p1{ padding: 1px!important; }
.pt-1{ padding-top: 1px!important; }
.pr-1{ padding-right: 1px!important; }
.pb-1{ padding-bottom: 1px!important; }
.pl-1{ padding-left: 1px!important; }

.p2{ padding: 2px!important; }
.pt-2{ padding-top: 2px!important; }
.pr-2{ padding-right: 2px!important; }
.pb-2{ padding-bottom: 2px!important; }
.pl-2{ padding-left: 2px!important; }

.p3{ padding: 3px!important; }
.pt-3{ padding-top: 3px!important; }
.pr-3{ padding-right: 3px!important; }
.pb-3{ padding-bottom: 3px!important; }
.pl-3{ padding-left: 3px!important; }

.p4{ padding: 4px!important; }
.pt-4{ padding-top: 4px!important; }
.pr-4{ padding-right: 4px!important; }
.pb-4{ padding-bottom: 4px!important; }
.pl-4{ padding-left: 4px!important; }

.p5{ padding: 5px!important; }
.pt-5{ padding-top: 5px!important; }
.pr-5{ padding-right: 5px!important; }
.pb-5{ padding-bottom: 5px!important; }
.pl-5{ padding-left: 5px!important; }

.p6{ padding: 6px!important; }
.pt-6{ padding-top: 6px!important; }
.pr-6{ padding-right: 6px!important; }
.pb-6{ padding-bottom: 6px!important; }
.pl-6{ padding-left: 6px!important; }

.p7{ padding: 7px!important; }
.pt-7{ padding-top: 7px!important; }
.pr-7{ padding-right: 7px!important; }
.pb-7{ padding-bottom: 7px!important; }
.pl-7{ padding-left: 7px!important; }

.p8{ padding: 8px!important; }
.pt-8{ padding-top: 8px!important; }
.pr-8{ padding-right: 8px!important; }
.pb-8{ padding-bottom: 8px!important; }
.pl-8{ padding-left: 8px!important; }

.p9{ padding: 9px!important; }
.pt-9{ padding-top: 9px!important; }
.pr-9{ padding-right: 9px!important; }
.pb-9{ padding-bottom: 9px!important; }
.pl-9{ padding-left: 9px!important; }

.p10{ padding: 10px!important; }
.pt-10{ padding-top: 10px!important; }
.pr-10{ padding-right: 10px!important; }
.pb-10{ padding-bottom: 10px!important; }
.pl-10{ padding-left: 10px!important; }

.p15{ padding: 15px!important; }
.pt-15{ padding-top: 15px!important; }
.pr-15{ padding-right: 15px!important; }
.pb-15{ padding-bottom: 15px!important; }
.pl-15{ padding-left: 15px!important; }

.p20{ padding: 20px!important; }
.pt-20{ padding-top: 20px!important; }
.pr-20{ padding-right: 20px!important; }
.pb-20{ padding-bottom: 20px!important; }
.pl-20{ padding-left: 20px!important; }

.p30{ padding: 30px!important; }
.pt-30{ padding-top: 30px!important; }
.pr-30{ padding-right: 30px!important; }
.pb-30{ padding-bottom: 30px!important; }
.pl-30{ padding-left: 30px!important; }

.p40{ padding: 40px!important; }
.pt-40{ padding-top: 40px!important; }
.pr-40{ padding-right: 40px!important; }
.pb-40{ padding-bottom: 40px!important; }
.pl-40{ padding-left: 40px!important; }

.p50{ padding: 50px!important; }
.pt-50{ padding-top: 50px!important; }
.pr-50{ padding-right: 50px!important; }
.pb-50{ padding-bottom: 50px!important; }
.pl-50{ padding-left: 50px!important; }

.p60{ padding: 60px!important; }
.pt-60{ padding-top: 60px!important; }
.pr-60{ padding-right: 60px!important; }
.pb-60{ padding-bottom: 60px!important; }
.pl-60{ padding-left: 60px!important; }

.p70{ padding: 70px!important; }
.pt-70{ padding-top: 70px!important; }
.pr-70{ padding-right: 70px!important; }
.pb-70{ padding-bottom: 70px!important; }
.pl-70{ padding-left: 70px!important; }


