
/*==========================================
 all
===========================================*/
/**********
 base
**********/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

html{
	font-size:62.5%;
}

body{
	line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section{ 
	display:block;
}


#mainNavi ul{
    list-style:none;
}

blockquote,
q {
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	quotes: none;
}


blockquote:before, blockquote:after,
q:before, q:after{
    content:'';
    content:none;
}

a{
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

ins{
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

mark{
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del{
    text-decoration: line-through;
}

abbr[title], dfn[title]{
    border-bottom:1px dotted;
    cursor:help;
}

/** table **/
table{
    border-collapse:collapse;
    border-spacing:0;
}

/** img **/
img{ vertical-align:bottom;}
blockquote.alignleft,
.wp-caption.alignleft,
img.alignleft {
	margin: 0.4em 1.6em 1.6em 0;
}

blockquote.alignright,
.wp-caption.alignright,
img.alignright {
	margin: 0.4em 0 1.6em 1.6em;
}

blockquote.aligncenter,
.wp-caption.aligncenter,
img.aligncenter {
	clear: both;
	margin-top: 0.4em;
	margin-bottom: 1.6em;
}

.wp-caption.alignleft,
.wp-caption.alignright,
.wp-caption.aligncenter {
	margin-bottom: 1.2em;
}

.alignright {
	float: right;
}

.alignleft {
	float: left
}


/** hr **/
hr{
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

/** input select **/
input, select{
    vertical-align:middle;
}

/* ol ul */

ol, ul{ list-style: none;}

/* clearfix */
.clearfix {
    overflow: hidden;
    zoom: 1;
}
.clearfix:after {
    content: " "; 
    clear: both; 
    height: 0; 
    display: block; 
    visibility: hidden; 
}

.cf { zoom: 1;}
.cf:before, .cf:after {
	content: "";
	display: table;
}
.cf:after { clear: both;}

/* clear */
.clear{ clear:both;}
.clearBlk{ overflow:hidden;}
/* after */
.afterBlk{}
.afterBlk:after{ 
    content: " "; 
    clear: both; 
    height: 0; 
    display: block; 
    visibility: hidden; 
}


/**********
 common
**********/
/* margin */
.mBtmNone{ margin-bottom:none;}
.mBtm10{ margin-bottom:10px;}
.mBtm20{ margin-bottom:20px;}
.mBtm30{ margin-bottom:30px;}

.mTop5{ margin-top:5px;}
.mTop10{ margin-top:10px;}
.mTop20{ margin-top:20px;}
.mTop30{ margin-top:30px;}

/* padding */
.pBtmNone{ padding-bottom:none;}
.pBtm05{ padding-bottom:5px;}
.pBtm10{ padding-bottom:10px;}
.pBtm20{ padding-bottom:20px;}
.pBtm30{ padding-bottom:30px;}

.pTop10{ padding-top:10px;}
.pTop20{ padding-top:20px;}
.pTop30{ padding-top:30px;}

/* color */
.cRed { color:#e24000;}
.cOrg { color:#c60;}
.cGry { color:#666;}
.cBrwn{ color:#553b27;}
.cDred{ color:#990000;}
.cBlue{ color:#0059B9;}
.cGren{ color:#39954a;}
.cBGren{ color:#00a29e;;}


/* fontsize */
.fs120{ font-size:120%;}
.fs80{ font-size:80%;}


/** border **/
.underB{
	padding-bottom:20px;
	margin-bottom:20px;
	border-bottom:1px dotted #56503d;
}

/** align **/
.aCenter{ text-align:center;}
.aLeft{ text-align:left}
.aRight{ text-align:right;}


/** padding margin none **/
.pmNone{
	padding:0;
	margin:0;
}

/** margin center set **/
.centerSet{
	margin:0 auto;
}


/**********
 flexWrap
**********/
.flexWrap{
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.flexWrap_h{
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items:flex-start;
}




/**********
 body
***********/
body{
    width:100%;
    background:#fff;
	font-family: 'Noto Sans JP', "Medium", "游ゴシック体", "Yu Gothic Medium",
		YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック","MS PGothic", sans-serif;
	color:#282828;
    line-height:1.62;
	font-size: 1.62rem;
	min-width:320px;
}

body *{
	font-family: 'Noto Sans JP', "Medium", "游ゴシック体", "Yu Gothic Medium",
		YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック","MS PGothic", sans-serif;
}

@media only screen and (min-width: 769px) and (max-width: 1080px) {
	body{
		min-width:1079px;
		font-size: 1.58rem;
	}
}
@media only screen and (max-width: 768px) {
	body{
		font-size: 1.54rem;
		overflow-x: hidden;
	}
}



/**********
 a link
***********/
a{
    color:#2081E3;
    text-decoration:none;
}
a:visited{
    color:#2081E3;
    text-decoration:none;
}
a:hover{
    color:#3C9EE2;
    text-decoration:underline;
}

a:active{
    color:#3C9EE2;
    text-decoration:underline;
}

@media only screen and (max-width: 768px) {
	a {
		-webkit-tap-highlight-color:rgba(0,0,0,0);
		cursor:pointer;
	}
}


/*==========================================
 ページトップ
===========================================*/

.page-top {
	height: 50px;
	width: 50px;
	position: fixed;
	right: 30px;
	bottom: 30px;
	background: #F15A24;
	border: solid 2px #fff;
	border-radius: 50%;
	display: none;
	justify-content: center;
	align-items: center;
	z-index: 2;
	cursor: pointer;
}
.page-top__arrow {
	display: block;
	height: 10px;
	width: 10px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: translateY(20%) rotate(-45deg);
}


/*==========================================
 リスト
===========================================*/
ul.commonList{
	width: 100%;
}
ul.commonList li{
	display:block;
	padding-bottom:9px;
	padding-right:9px;
	position: relative;
	padding-left:20px;
}

ul.commonList li:last-of-type{
	padding-bottom:0;
}

ul.commonList li:before{
	content: "\f111";
	font-family:'Font Awesome 5 Free';
	font-weight:900;
	padding-right:10px;
	font-size: .8rem;
	color:#f15a24;
	position: absolute;
	top: 10px;
	left: 0;
	margin-top: -3px;
}

@media only screen and (max-width: 768px) {
	ul.commonList li:before{
		margin-top: 0;
		top: 6px;
	}
}


ul.commonList_midashi li{
	padding-bottom: 12px;
}
ul.commonList_midashi li > p:first-of-type{
	font-size: 1.1em;
	padding-bottom: 0;
	color: #0063ac;
}

ul.commonList_midashi li:last-of-type{
	padding-bottom: 0;
}


ul.commonList_sub li{
	display:block;
	padding-bottom:9px;
	padding-right:30px;
	position: relative;
	padding-left:20px;
	font-size: 1.5rem;
}

ul.commonList_sub li:last-of-type{
	padding-bottom:0;
}

ul.commonList_sub li:before{
	content: "\f111";
	font-family:'Font Awesome 5 Free';
	font-weight:900;
	padding-right:10px;
	font-size:0.6rem;
	color:#797979;
	position: absolute;
	top: 7px;
	left: 0;
	line-height: 1.5;
}
@media only screen and (max-width: 768px) {
	ul.commonList_sub li:before{
		margin-top: 0;
	}
}



/*==========================================
 角丸ボタン
===========================================*/
.kadomaruBtn{
	border-radius:6px;
	width:100%;
	display:block;
	box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset;
	text-align:center;
	text-decoration:none;
	padding:7px 0;
	font-size:0.8em;
}

.kadomaruBtn span{
	padding-left:5px;
}



/*==========================================
 表示切り替え
===========================================*/

/** visible 選択項目のみ表示 **/
.visible_mb{ display:block;}
.visible_tb{ display:none;}
.visible_pc{ display:none;}

@media only screen and (min-width: 769px) and (max-width: 1050x) {
.visible_mb{ display:none;}
.visible_tb{ display:block;}
.visible_pc{ display:none;}
}

@media only screen and (min-width: 1051px) {
.visible_mb{ display:none;}
.visible_tb{ display:none;}
.visible_pc{ display:block;}
}

/** visible 選択項目のみ表示しない **/
.hidden_mb{ display:none;}
.hidden_tb{ display:block;}
.hidden_pc{ display:block;}

@media only screen and (min-width: 769px) and (max-width: 1050px) {
.hidden_mb{ display:block;}
.hidden_tb{ display:none;}
.hidden_pc{ display:block;}
}

@media only screen and (min-width: 1050px) {
.hidden_mb{ display:block;}
.hidden_tb{ display:block;}
.hidden_pc{ display:none;}
}

@media print{
.visible_mb{ display:none;}
.visible_tb{ display:none;}
.visible_pc{ display:block;}
.hidden_mb{ display:block;}
.hidden_tb{ display:block;}
.hidden_pc{ display:none;}
}



/*==========================================
 オンマウスでフェード
===========================================*/
.fade_on{
    transition: all 0.5s 0s ease;
}
.fade_on:hover {
	opacity: 0.8;  
	filter: alpha(opacity=20); 
	background: #fff;
}


/*==========================================
 タイトル
===========================================*/

h2#title{
	display:block;
	width:100%;
	padding:70px 0;
	text-align:center;
	background:#538439 url("./img/h2Bg_common.jpg") no-repeat center center;
	background-size:cover;
}

h2#title p{
	width:90%;
	display:block;
	margin:0 auto;
	text-align:center;
	font-size:3.5rem;
	color:#fff;
	font-weight:normal;
}


h2.pagetitle{
	text-align: left;
}
h2.pagetitle span:first-of-type {
	border-top: solid 2px #ccc;
	position: relative;
	font-size: 5rem;
	letter-spacing: 0.12em;
	color: #333;
	padding-top: 10px;
}

h2.pagetitle span:first-of-type:before {
  position: absolute;
  content: " ";
  display: block;
  border-top: solid 2px #F7931E;
  top: -2px;
  width: 30%;
}

h2.pagetitle span:last-of-type{
	display: block;
	margin-bottom: 50px;
	font-size: 1.2em;
}


h2.pagetitle_c{
	text-align: center;
}
h2.pagetitle_c span:first-of-type {
	font-size: 5rem;
	letter-spacing: 0.12em;
	color: #333;
	padding-top: 10px;
  	border-top: solid 2px #F7931E;
}

h2.pagetitle_c span:last-of-type{
	display: block;
	margin-bottom: 50px;
	font-size: 1.2em;
}

h3.pagetitle{
	position: relative;
	padding: 1.5rem;
	text-align: center;
	font-size: 2em;
	margin-bottom: 50px;
	color: #333333;
	font-weight: 700;
}


h3.pagetitle:before {
  position: absolute;
  top: 0;
  left: calc(50% - 40px);
  width: 80px;
  height: 5px;
  content: '';
  border-radius: 3px;
  background: #f15a24;
}


@media screen and (max-width: 768px) {
	h3.pagetitle{
		font-size: 1.7em;
	}

}
	
@media only screen and (max-width: 768px) {
	h2#title{
		padding:40px 0;	
	}
	h2#title p{
		font-size:3rem;
	}
	h3.title{
		font-size:2.5rem;
	}
	
	h2.pagetitle span:first-of-type {
		font-size: 4.2rem;
	}
	
	h2.pagetitle_c span:first-of-type {
		font-size: 3.2rem;
	}
}


h4.pagetitle {
  position: relative;
	padding-top: 15px;
	margin-bottom: 20px;
	font-size: 1.1em;
}

h4.pagetitle:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 7px;
  background: -webkit-repeating-linear-gradient(-45deg, #f39800, #f39800 2px, #fff 2px, #fff 4px);
  background: repeating-linear-gradient(-45deg, #f39800, #f39800 2px, #fff 2px, #fff 4px);
}




/*==========================================
 パンくずリスト
===========================================*/
#breadcrumbs{
	width:100%;
	clear:both;
	overflow:hidden;
	font-size:0.78em;
	text-align:left;
	padding: 10px 0 8px;
	margin-bottom:50px;
}
#breadcrumbs ol{
	display:block;
	width:96%;
	max-width:1080px;
	margin:0 auto;
}
#breadcrumbs ol li {
	display: inline;
	list-style-type: none;
}
#breadcrumbs ol li:before {
	content: "　\f105　";
	font-family:'Font Awesome 5 Free';
	font-weight:900;
}
#breadcrumbs ol li:first-child:before {
  content:"";
}

#breadcrumbs ol li a{ color:#000;}

#breadcrumbs ol li a:hover,
#breadcrumbs ol li a:active{
    color:#3C9EE2;
    text-decoration:underline;
}



/*==========================================
 ヘッダーのスタイル
===========================================*/
/**********
 header
**********/
header{
	width:100%;
	text-align:center;
	padding-bottom:25px;
}


@media only screen and (min-width: 769px) and (max-width: 960px) {
	header{
		min-height:120px;
		min-width:960px;
	}
}

@media only screen and (max-width: 768px) {
	header{
		padding-bottom:15px;
	}
}

#headTop_mb{
	display:none;
}
@media screen and (max-width: 768px) {
	/** headTop_mb **/
	#headTop_mb{
		display: block;
		background:#fff;
		text-align:left;
		width:100%;
		padding-top: 15px;
		margin-bottom: 12px;
	}
	#headTop_mb #logo_mb img{
		width:230px;
		margin-left:15px;
	}
}

/** site-header **/
/** ヘッダーが出てくる **/
.site-header{
    background: rgba(255,255,255,0.9);
    position: fixed;
    top: 0;
    transition: .9s;
    width:auto;
    z-index: 999;
}
 
.site-header.hide{
    transform: translateY(-100%);
}

/**********
 headContents
**********/

#headContents{
	width:100%;
	text-align:center;
}

@media screen and (max-width: 768px) {
	#headContents{
		display:none;
	}
}



/*********
 headLogo
**********/
#headContents #headContentsTop #headLogo{
	padding-top:15px;
	width: 250px;
}

#headContents h1{
	display:block;
	margin-left: 20px;
}

#headContents h1 img{
	width:100%;
	max-width: 250px;
	margin: 0 auto 0 0;
	display:block;
	vertical-align:bottom;
}

@media screen and (max-width: 1078px) {
	#headContents #headContentsTop #headLogo{
		width: 200px;
	}
	#headContents h1 img{
		max-width: 200px;
	}
}




/** headContentsTop **/
#headContents #headContentsTop{
	width:100%;
}


/** headContentsTopInner **/
#headContents #headContentsTop #headContentsTopInner{
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

/** 追従固定　**/
#headContents_set.m_fixed {
	left: 0;
	position: fixed;
	top: 0;
	z-index: 10;
	width: 100%;
	padding: 0;
}


/**********
 headConInner
**********/
#headContents #headContentsTop #headConInner{
	width:820px;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: flex-end;
}


@media (max-width: 1050px) {
	#headContents #headContentsTop #headConInner{
		width:850px;
	}
}

/*********
 mainNavi
**********/
#headContents #headContentsTop #headConInner #mainNavi{
	width:820px;
	margin:0 auto 0 0;
}

@media (max-width: 1050px) {
	#headContents #headContentsTop #headConInner #mainNavi{
		width:850px;
	}
}

#headContents #headContentsTop #headConInner #mainNavi ul{
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: flex-end;
	width:100%;
}

#headContents #headContentsTop #headConInner #mainNavi ul li{
	display:block;
	min-height:25px;
	width:16%;
	padding-top:20px;
}

#headContents #headContentsTop #headConInner #mainNavi ul li.mn_w{
	width:23%;
}

#headContents #headContentsTop #headConInner #mainNavi ul li.mn_m{
	width:12%;
}

#headContents #headContentsTop #headConInner #mainNavi ul li:last-of-type{
	padding-top:0;
	width:10%;
}

#headContents #headContentsTop #headConInner #mainNavi ul li a{
	display:block;
	text-decoration:none;
	color:#1a1a1a;
	padding:3px 0;
	font-weight: bold;
}

#headContents #headContentsTop #headConInner #mainNavi ul li a:hover,
#headContents #headContentsTop #headConInner #mainNavi ul li a:active{
	color: #F1520B!important;
}

@media (min-width: 769px) {
	#headContents #headContentsTop #headConInner #mainNavi ul li a {
		font-size: calc(1.38rem + ((1vw - 0.48rem) * 0.1667));
		min-height: 0vw;
	}
}
@media (min-width: 1050px) {
	#headContents #headContentsTop #headConInner #mainNavi ul li a {
		font-size: 1.5rem;
	}
}

#headContents #headContentsTop #headConInner #mainNavi ul li:last-of-type a{
	background: #F1520B;
	display: block;
	padding: 20px 15px;
	color: #fff!important;
}

#headContents #headContentsTop #headConInner #mainNavi ul li:last-of-type a:hover,
#headContents #headContentsTop #headConInner #mainNavi ul li:last-of-type a:active{
	color: #fff;
	background: #FF8D00;
}


#headContents #headContentsTop #headConInner #mainNavi ul li a:visited{
	color:#1a1a1a;
}

#headContents #headContentsTop #headConInner #mainNavi ul li a:hover,
#headConInner #mainNavi ul li a:active{
	color:#3C9EE2;
}

/**********
 toggle sp向けメニュー
**********/

.toggleWrap {
	position:relative;
}

/* */
.toggleNav{
	display:block;
	width:84%;
	padding-top:75px;
	margin:0 auto;
}

.toggleNav li{
	list-style-type: none;
	display: block;
	width:100%;
	border-bottom: 1px solid #444;
}


.toggleNav li a{
	display: block;
	color:#1a1a1a;
	text-decoration:none;
	font-size:1.88rem;
	font-weight: bold;
	line-height:1.26;
	padding: 6px 3px;
	text-align:left;
}

.toggleNav li:last-of-type a{
	margin-bottom:0;
}

.toggleNav li a p{
	display:block;
	padding:12px 0px 10px 10px;
	position:relative;
}

.toggleNav li a p:after{
	content: "\f054";
	font-family:'Font Awesome 5 Free';
	font-weight:900;
	width:12px;
	height:31px;
	position:absolute;
	right:5px;
	top:12px;
	color: #F1520B;
}

.toggleNav li a:hover,
.toggleNav li a:active{
    color:#F1520B;
}


/** taggleNav_other **/
#taggleNav_other{
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	width:84%;
	margin:0 auto;
	padding:20px 0;
}

#taggleNav_other a{
    display: block;
    color:#fff;
	width: 100%;
	margin: 0 auto;
	font-size: 1.7rem;
    border-radius:26px;
    text-decoration: none;
	text-align: left;
    outline: none;
    background: #F15A24;
    background-position: 1% 50%;
    background-size: 200% auto;
    transition: all 0.3s ease-out;
}

#taggleNav_other a p{
    padding: 10px 30px 9px 10px;
	position: relative;
	text-align: center;
	font-weight: bold;
	font-size:2.3rem;
}

#taggleNav_other a p span{
	font-size:1.5rem;
	display: block;
	font-weight: normal;
}

#taggleNav_other a:hover {
    color: #fff;
    background: #FF8D00;
}


/** taggleNav_phone **/
#taggleNav_phone{
	display:block;
	text-align:center;
	padding-top: 5px;
}

#taggleNav_phone{
	font-size:1.6rem;
	padding-top:10px;
}

#taggleNav_phone a{
	color:#F1520B;
	text-decoration:none;
	font-size:30px;
	margin-left:10px;
	font-weight:bold;
	display:block;
}

#taggleNav_phone span{
	display:block;
	font-size:12px;
	text-align:center;
	color: #414141;
}


@media screen and (min-width: 769px) {
  .toggleWrap {
    background: none;
    height: auto;
    position: static;
    padding: 0;
    margin-bottom: 20px;
  }
  .mainNav {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
       -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 670px;
    margin: 0 auto;
  }
  .navItem {
    padding: 5px 15px;
  }
  .navItem:hover {
    border-color: #3696da;
  }
  .animation {
  -webkit-transition: none;
          transition: none;
  }
  .hide {
    opacity: 1;
    visibility: visible;
  }
}


/*==========================================
 メイン
===========================================*/

main {
	padding: 70px 0;
}

@media (min-width: 769pxem) {
	main {
		font-size: calc(1.62rem + ((1vw - 0.48rem) * 0.1389));
		min-height: 0vw;
	}
}
@media (min-width: 1050px) {
	main {
		font-size: 1.68rem;
	}
}

/*==========================================
 コンテンツエリア全体のスタイル
===========================================*/
#wrap{
	width:100%;
	background:#fff !important;
}
#container{
	padding:0 0 20px 0;
	margin:0 auto;
	overflow: hidden;
}

/*==========================================
 コンテンツ共通
===========================================*/


/**********
 コンテンツ区切り
**********/
.contentInner{
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
}


@media only screen and (min-width: 769px) and (max-width: 1082px) {
	.contentInner{
		width: 96%;
		max-width: 1050px;
	}

}
@media screen and (max-width: 769px) {
	.contentInner{
		width: 90%;
		max-width: 749px;
	}
}

/**********
 グラデーションボタン
**********/
/*== ボタン共通設定 */
.pageLinkBtn{
    /*アニメーションの起点とするためrelativeを指定*/
    position: relative;
	overflow: hidden;
	text-decoration: none;
	display: inline-block;
    padding: 10px 30px;
    text-align: center;
    outline: none;
    transition: ease .2s;
	border-radius: 36px;
	background: #F15A24;
	margin: 40px auto;
	min-width: 200px;
	font-size: 1.8rem;
}

.pageLinkBtn:hover,
.pageLinkBtn:active{
	text-decoration: none;
}

.pageLinkBtn p {
	position: relative;
	z-index: 3;
	color: #fff;
	padding: 8px;
}

.pageLinkBtn:after{
	content: "\f105";
	font-family:'Font Awesome 5 Free';
	font-weight:900;
	padding-right:10px;
	font-size: 1.7rem;
	color:#fff;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%) translateX(-50%);
	margin: auto;
}

.btn_bgleft:before {
 	content: '';
 	position: absolute;
 	top: 0;
 	left: 0;
 	z-index: 2;
 	background:#FF8D00;
 	width: 100%;
	height: 100%;
 	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
 	transform: scale(0, 1);
	transform-origin: right top;
}

/*hoverした際の形状*/
.btn_bgleft:hover:before{
	transform-origin:left top;
	transform:scale(1, 1);
}

.pageLinkBtn:hover p,
.pageLinkBtn:active p{
	color:#fff;
}


@media screen and (max-width: 769px) {
	a.pageLinkBtn{
		display: block;
		width: auto;
		max-width: 86%;
		margin: 40px auto;
		font-size: 1.68rem;
	}
	a.pageLinkBtn p{
		padding: 10px 0;
		margin: 0;
		position: relative;
	}
}


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

/** イエロー全体 **/
.bg_yellow{
	background: #FFF8E1;
	padding: 75px 0;
}

/** グレー全体 **/
.bg_gray{
	background: #E6E6E6;
	padding: 75px 0;
}

/** 縦半分　イエロー **/
.bgY_yellow{
	background: -webkit-linear-gradient(#FFF8E1 0%, #FFF8E1 50%, #fff 50%, #fff 100%);
	background: -o-linear-gradient(#FFF8E1 0%, #FFF8E1 50%, #fff 50%, #fff 100%);
	background: linear-gradient(#FFF8E1 0%, #FFF8E1 50%, #fff 50%, #fff 100%);
}

/** 縦半分 グレー **/
.bgY_gray{
	background: -webkit-linear-gradient(#fff 0%, #fff 50%, #E6E6E6 50%, #E6E6E6 100%);
	background: -o-linear-gradient(#fff 0%, #fff 50%, #E6E6E6 50%, #E6E6E6 100%);
	background: linear-gradient(#fff 0%, #fff 50%, #E6E6E6 50%, #E6E6E6 100%);
}

/** 横7割　イエロー（右） **/
.bgT_yellow{
	background: -webkit-linear-gradient(left, #fff 0%, #fff 30%, #FFF8E1t 30%, #FFF8E1 100%);
	background: -o-linear-gradient(left, #fff 0%, #fff 30%, #FFF8E1 30%, #FFF8E1 100%);
	background: linear-gradient(to right, #fff 0%, #fff 30%, #FFF8E1 30%, #FFF8E1 100%);
}

/** 横7割　グレー（左） **/
.bgT_gray{
	background: -webkit-linear-gradient(left, #E6E6E6 0%, #E6E6E6 70%, #fff 70%, #fff 100%);
	background: -o-linear-gradient(left, #E6E6E6 0%, #E6E6E6 70%, #fff 70%, #fff 100%);
	background: linear-gradient(to right, #E6E6E6 0%, #E6E6E6 70%, #fff 70%, #fff 100%);
}



/*==========================================
 フッター
===========================================*/

footer{
	margin-top: 150px;
}


/**********
 footNavi_top
**********/
#footNavi_top{
	background: linear-gradient(#fff 70%, #FFBF00 0, #FFBF00 80%, #F15A24 0);
	padding: 70px 0 20px;
	width: 100%;
	height: 150px;
}

#footNavi_top > div{
	width: 100%;
	position: relative;
}


#footNavi_top > div img#foot_human_01{
	position: absolute;
	top: 100%;
	left: 10px;
	max-width: 92px;
}

#footNavi_top > div img#foot_human_02{
	position: absolute;
	top: 100%;
	left: 70%;
	max-width: 63px;
}
#footNavi_top > div img#foot_human_03{
	position: absolute;
	top: 100%;
	left: 30%;
	max-width: 62px;
}

#footNavi_top > div img#foot_human_04{
	position: absolute;
	right: 10px;
	max-width: 102px;
}

@media only screen and (max-width: 769px) {
	footer{
		margin-top: 0;
	}

	#footNavi_top{
		padding: 90px 0 0;
		width: 100%;
		height: 130px;
	}


	#footNavi_top > div img#foot_human_01{
		position: absolute;
		top: 70%;
		left: 10px;
		max-width: 46px;
	}

	#footNavi_top > div img#foot_human_02{
		position: absolute;
		top: 100%;
		left: 60%;
		max-width: 32px;
	}
	#footNavi_top > div img#foot_human_03{
		position: absolute;
		top: 100%;
		left: 30%;
		max-width: 31px;
	}

	#footNavi_top > div img#foot_human_04{
		position: absolute;
		right: 10px;
		max-width: 51px;
	}
	
}

#foot_human_01 {
	/*animation:foot_human_01_jamp 1s ease-in alternate infinite;
	animation-iteration-count:infinite;*/
}

@keyframes foot_human_01_jamp {
  0%   { will-change: transform;transform:0;}
  32%   { transform:0; }
  33%  { transform: scale(1.0, 1.06) translate(-5%, -4%) skew(6deg, 0deg); }
  46%  { transform: scale(1.0, 0.94) translate(5%, 4%) skew(-6deg, 0deg); }
  70%  { transform: scale(1.0, 1.03) translate(2%, -2%) skew(-3deg, 0deg); }
  90%  { transform: scale(1.0, 0.97) translate(-2%, 2%) skew(3deg, 0deg); }
  100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
}



/**********
 footNavi_common
**********/
#footNavi_common{
	width: 100%;
	max-width: 100%;
	background: #F15A24;
	padding: 10px 0 50px;
}

#footNavi_common >div{
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}

#footNavi_common > div a,
#footNavi_common > div > div{
	display: block;
	width: calc(100% / 3);
	text-decoration: none;
	text-align: center;
	border-right: 1px solid #fff;
	box-sizing: border-box;
	padding: 10px 0;
}

#footNavi_common > div a:hover,
#footNavi_common > div a:active{
	background: #FF8D00;
}

#footNavi_common > div a:last-of-type{
	border:none;
}

#footNavi_common > div a div,
#footNavi_common > div > div div{
}

#footNavi_common > div a div img,
#footNavi_common > div > div div img{
	width: 80px;
	height: auto;
}

#footNavi_common > div a div p,
#footNavi_common > div > div div p{
	padding-top: 10px;
	font-size: 2.8rem;
	font-weight: bold;
	color:#fff;
	line-height: 1.5;
}

#footNavi_common > div a div span,
#footNavi_common > div > div div span{
	font-size: 1.2rem;
	color:#fff; 
	display: block;
	padding-top: 5px;
	font-weight: normal;
}

@media only screen and (max-width: 1200px) {
	#footNavi_common > div{
		max-width: 1100px;
	}
}

@media only screen and (max-width: 769px) {
	#footNavi_common > div{
		width: 100%;
		max-width: 100%;
	}
	
	#footNavi_common{
		padding: 0;
	}
	
	#footNavi_common > div a,
	#footNavi_common > div > div{
		width: 100%;
		margin-bottom: 0;
		text-align: left;
		border: none;
		border-bottom: 1px solid #fff;
		padding: 20px 0;
	}
	#footNavi_common > div a:last-of-type{
		margin-bottom: 0;
	}
	
	#footNavi_common > div a div,
	#footNavi_common > div > div div{
		display:flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: space-between;
		justify-content:space-between;
		align-items:flex-start;
		width: 90%;
		max-width: 640px;
		margin: 0 auto;
	}
	#footNavi_common > div a div img,
	#footNavi_common > div > div div img{
		margin: 10px 0 0 0;
		width: 48px;
	}
	#footNavi_common > div a div p,
	#footNavi_common > div > div div p{
		padding-top: 0;
		display: block;
		width: 80%;
		font-size: 2.5rem;
	}
	
	#footNavi_common > div a div span,
	#footNavi_common > div > div div span{
		font-size: 1.2rem;
	}
}




/**********
 footNavi_btm
**********/
#footNavi_btm{
	width: 100%;
	margin: 0 auto;
	padding: 30px 0;
}

/** footAddress **/
#footAddress{
	width: 40%;
}

#footAddress > a:first-of-type{
	width: 250px;
	margin: 0 0 20px 15px;
	display: block;
}

#footAddress a img{
	width: 250px;
}

#footAddress p{
	font-size: 1.4rem;
	padding-bottom: 5px;
	margin-left: 15px;
}

@media only screen and (max-width: 769px) {
	#footAddress{
		width: 94%;
		text-align: center;
		padding-top: 5px;
		padding-bottom: 25px;
		margin: 0 auto;
	}
	#footAddress > a:first-of-type{
		margin: 0 auto 25px;
	}
	
	#footAddress p{
		margin-left:0;
		font-size: 1.5rem;
	}

}


/** footNavi **/
#footNavi{
	width: 50%;
}

#footNavi > div{
	border-left: 5px solid #F15A24;
	box-sizing: border-box;
}

#footNavi > div h2{
	margin-left: 15px;
	margin-bottom: 15px;
	font-size: 1.2em;
}


@media only screen and (max-width: 769px) {
	#footNavi{
		width: 100%;
		display:block;
		padding: 0;
		text-align: center;
	}
	
	#footNavi > div{
		border-left: none;
	}
}


/** footNavi_menu **/

#footNavi > div#footNavi_menu{
	width: 40%;
}

#footNavi > div#footNavi_menu ul{
	margin-left: 15px;
}

#footNavi > div#footNavi_menu ul li{
	margin-bottom: 7px;
}

#footNavi > div#footNavi_menu ul li:last-of-type{
	margin-bottom:0;
}

#footNavi > div#footNavi_menu ul li a{
	color:#000;
}

@media only screen and (max-width: 769px) {
	#footNavi > div#footNavi_menu{
		width:100%;
	}
	
	#footNavi > div#footNavi_menu ul{
		display:flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		border-top:1px solid #000;
		margin: 0 0 30px;
	}
	
	#footNavi > div#footNavi_menu ul li{
		display: block;
		width: 50%;
		box-sizing: border-box;
		border-bottom: 1px solid #000;
		min-height: 40px;
		margin-bottom: 0;
	}
	
	#footNavi > div#footNavi_menu ul li:nth-last-child(even){
		border-right:1px solid #000;
	}
	
	#footNavi > div#footNavi_menu ul li a{
		display: block;
		padding: 15px 0;
	}
}




/** footNavi_group **/
#footNavi > div#footNavi_group{
	width: 60%;
}

#footNavi_group a{
	display: block;
	border-radius: 26px;
	width: 100%;
	max-width: 320px;
	background: #F15A24;
	margin: 0 0 15px 15px;
}

#footNavi_group a:last-of-type{
	margin-bottom:0;
}

#footNavi_group a img{
	width:100%;
	display: block;
	max-width: 260px;
	margin: 10px auto;
	padding: 10px 0;
}


@media only screen and (max-width: 769px) {
	#footNavi > div#footNavi_group{
		width:100%;
	}
	
	#footNavi_group a{
		margin: 0 auto 15px;
		width: 90%;
		max-width: 480px;
	}
}



#copyright{
	width: 100%;
	max-width: 99%;
	font-size: 0.8em;
	margin: 0 auto;
}
