@charset "utf-8";

html {
	overflow-y: scroll;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
	margin: 0;
	padding: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
	font-style: normal;
}

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

caption,
th {
	text-align: left;
}

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

object,
embed {
	vertical-align: top;
}

hr,
legend {
	display: none;
}

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

img,
abbr,
acronym,
fieldset {
	border: 0;
}

ul,
ol {
	list-style-type: none;
}

ul,
li,
img {
	vertical-align: bottom;
}

hr {
	display: none;
}

/* default */
body {
	font-family: '游ゴシック体', 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo;
	background: #fff;
	color: #000;
	font-size: 14px;
	line-height: 1.7;
	max-height: 100%;
	min-width: 950px;
	font-weight: 500;
}

@media screen and (min-width: 769px) {
	.sp {
		display: none !important;
	}
}

@media screen and (max-width: 768px) {
	body {
		min-width: inherit;
	}

	.pcbr {
		display: none;
	}

	.pc {
		display: none !important;
	}
}

input,
select,
textarea,
button {
	font-family: '游ゴシック体', 'Yu Gothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo;
	vertical-align: middle;
}

input[type=text] {
	border: none;
	background: #ffffff;
	padding: 5px 5px;
	border: solid 1px #bbb;
}

select {
	background: #ffffff;
	padding: 5px 5px;
	border: solid 1px #bbb;
	font-weight: bold;
}

textarea {
	border: none;
	background: #ffffff;
	padding: 5px 5px;
	border: solid 1px #bbb;
}

/* link option */
a:link {
	color: #000;
	text-decoration: none;
}

a:visited {
	color: #000;
	text-decoration: none;
}

a:hover {
	color: #000;
	text-decoration: none;
}

a:active {
	color: #000;
}

/*clearfix*/
.cf:after {
	content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	overflow: hidden;
	font-size: 0.1em;
	line-height: 0;
}

.cf {
	min-height: 1%;
}

* {
	box-sizing: border-box;
	word-break: break-all;
	word-wrap: break-word;
}

i {
	font-style: normal;
}

.Deco {
	text-decoration: underline !important;
}

.AnCr {
	text-align: center !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.AnLt {
	text-align: left !important;
}

.AnRt {
	text-align: right !important;
}

.Sml {
	font-size: 0.71em;
}

#fontcontrol.largeSize {
	font-size: 120%;
}

#fontcontrol.normalSize {
	font-size: 100%;
}

/*IE11以下のフォント余白処理*/
_:lang(x)::-ms-backdrop,
body {
	font-family: "メイリオ", Meiryo, sans-serif;
	font-weight: normal;
}

/* safari */
_::-webkit-full-page-media,
_:future,
:root .selector {}

.mb0 {
	margin: 0 0 0 !important;
}

.mb60 {
	margin: 0 0 60px !important;
}

/***************************************************************************

  ヘッダ

***************************************************************************/
#header {
	width: 100%;
}

#header .wrap {
	width: 100%;
	min-width: 1055px;
	height: 106px;
	margin: 0 auto;
	position: relative;
}

#header h1 {
	width: 227px;
	height: 40px;
	position: absolute;
	left: 39px;
	top: 34px;
}

#header h1 img {
	width: 100%;
	height: auto;
}

#header nav {
	margin: 55px 1vw 0 0;
	float: right;
}

#header ul {
	float: left;
	margin: 0 0 0 0;
}

#header li {
	float: left;
}

#header li a {
	color: #000;
	display: block;
	font-size: 13px;
	line-height: 1.8;
	font-weight: bold;
	padding-right: 25px;
	letter-spacing: 0.05em;
	position: relative;
	transition: 0.4s;
}

#header li a:after {
	content: '';
	width: 0%;
	background: #000;
	height: 3px;
	left: 0;
	bottom: 0;
	display: block;
	transition: 0.3s;
	text-align: left;
	float: left;
}

#header li a:hover:after {
	width: 100%;
	background: #000;
}

#header li a:hover {
	color: #000;
}

#header .nav01 a {
	padding-left: 26px;
	background: url(../images/nav01.svg) no-repeat left center;
	background-size: 18px 21px;
}

#header .aboutFg .nav01 a,
#header .nav01 a:hover {
	background: url(../images/nav01.svg) no-repeat left center;
	background-size: 18px 21px;
}

#header .aboutFg .nav01 a:after {
	width: 100%;
	background: #000;
}

#header .nav02 a {
	padding-left: 30px;
	background: url(../images/nav02.svg) no-repeat left center;
	background-size: 21px 21px;
}

#header .organizationFg .nav02 a,
#header .nav02 a:hover {
	background: url(../images/nav02.svg) no-repeat left center;
	background-size: 21px 21px;
}

#header .organizationFg .nav02 a:after {
	width: 100%;
	background: #000;
}

#header .nav03 a {
	padding-left: 35px;
	background: url(../images/nav03.svg) no-repeat left center;
	background-size: 25px 23px;
}

#header .workshopFg .nav03 a,
#header .nav03 a:hover {
	background: url(../images/nav03.svg) no-repeat left center;
	background-size: 25px 23px;
}

#header .workshopFg .nav03 a:after {
	width: 100%;
	background: #000;
}

#header .nav04 a {
	padding-left: 26px;
	background: url(../images/nav04.svg) no-repeat left center;
	background-size: 18px 22px;
}

#header .informationFg .nav04 a,
#header .nav04 a:hover {
	background: url(../images/nav04.svg) no-repeat left center;
	background-size: 18px 22px;
}

#header .informationFg .nav04 a:after {
	width: 100%;
	background: #000;
}

#header .nav05 a {
	padding-left: 27px;
	background: url(../images/nav05.svg) no-repeat left center;
	background-size: 21px 17px;
}

#header .inquiryFg .nav05 a,
#header .nav05 a:hover {
	background: url(../images/nav05.svg) no-repeat left center;
	background-size: 21px 17px;
}

#header .inquiryFg .nav05 a:after {
	width: 100%;
	background: #000;
}

#header .textSize {
	float: right;
	margin: 27px 2vw 0 0;
	text-align: center;
	font-weight: bold;
}

#header .textSize dt {
	color: #00187f;
	font-size: 10px;
	display: block;
	margin: 0 0 5px;
}

#header .textSize dd {
	width: 40px;
	height: 25px;
	display: block;
	line-height: 25px;
	border: solid 1px #00187f;
	float: left;
	color: #00187f;
	background: #fff;
	opacity: 1;
	transition: 0.3s;
}

#header .textSize dd.normalSize {
	font-size: 12px;
}

#header .textSize dd.largeSize {
	font-size: 14px;
}

#header .textSize dd.active {
	color: #fff;
	background: #00187f;
}

#header .textSize dd:hover {
	cursor: pointer;
	opacity: 0.7;
}


@media screen and (max-width: 1080px) {
	#header h1 {
		position: absolute;
		left: 20px;
		top: 34px;
	}

	#header li a {
		padding-right: 20px;
	}
}

@media screen and (max-width: 768px) {
	#header {
		width: 100%;
	}

	#header .wrap {
		min-width: 100%;
		height: 76px;
	}

	#header h1 {
		width: 191px;
		height: 34px;
		position: absolute;
		left: 20px;
		top: 20px;
	}

	.textSize {
		display: none;
	}

	#header nav {
		display: none;
	}
}

@media screen and (max-width: 500px) {
	#header {
		width: 100%;
		background: #fff;
	}

	#header .wrap {
		width: 100%;
		height: 54px;
	}

	#header h1 {
		width: 160px;
		height: 28px;
		left: 12px;
		top: 12px;
	}
}

@media screen and (max-width: 768px) {
	#header nav .navUl {
		display: none;
	}
}

/***************************************************************************

  メニュー

***************************************************************************/

#navBox {
	visibility: hidden;
	display: none;
}

@media screen and (max-width: 768px) {
	#menuBtn {
		padding: 23px 0px;
		display: block;
		width: 50px;
		height: 50px;
		text-align: center;
		font-size: 11px;
		position: fixed;
		color: #ffffff;
		right: 20px;
		top: 12px;
		z-index: 50;
		cursor: pointer;
		transition: 0.5s;
		background: rgba(255, 255, 255, 0.8);
		border-radius: 10px;
		z-index: 20;
	}

	#menuBtn i {
		display: block;
		width: 32px;
		border-top: solid 2px #000;
		position: relative;
		transition: 0.3s;
		margin: 0 auto;
	}

	#menuBtn i:before {
		content: '';
		width: 32px;
		height: 2px;
		background: #000;
		position: absolute;
		left: 0;
		top: -12px;
		transition: 0.5s;
	}

	#menuBtn i:after {
		content: '';
		width: 32px;
		height: 2px;
		background: #000;
		position: absolute;
		left: 0;
		top: 9px;
		transition: 0.5s;
	}

	.open #menuBtn {}

	.open #menuBtn i {
		color: #c1ae7a;
		border-top: solid 2px transparent;
	}

	.open #menuBtn i:before {
		top: 0;
		background: #000;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	.open #menuBtn i:after {
		top: 0px;
		background: #000;
		-webkit-transform: rotate(-90deg);
		-moz-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(45deg);
	}

	.layer {
		position: fixed;
		top: 0;
		z-index: 14;
		display: none;
		width: 100%;
		height: 100%;
		background: #fff;
		overflow: hidden;
	}

	#navBox {
		width: 100%;
		height: 100vh;
		position: fixed;
		color: #fff;
		left: 0;
		top: 0;
		z-index: 15;
		overflow: auto;
		visibility: hidden;
		display: none;
		background: #fff;
	}

	.open #navBox {}

	#navBox .wrap {
		max-width: 1000px;
		width: 100%;
		height: calc(100vh + 60px);
		margin: 0 auto 60px;
		padding: 0 0 60px;
	}

	.open #navBox {
		visibility: visible;
	}

	#navBox strong {
		float: left;
		margin: 20px 0 0 20px;
		width: 191px;
		height: 34px;
		transition: 0.3s;
	}

	#navBox strong a,
	#navBox strong a:hover {
		width: 191px;
		height: 54px;
	}

	#navBox strong a img {
		width: 100%;
		height: auto;
	}

	#navBox nav span {
		display: block;
		line-height: 1.5em;
	}

	#navBox nav {
		float: left;
		width: 100%;
		padding: 20px 5% 0 5%;
	}

	#navBox .navUl {
		float: left;
		width: 100%;
		padding: 0;
		margin: 0 0 10px;
		clear: left;
		overflow: auto;
		z-index: 11;
	}

	#navBox .navUl li {
		float: left;
		width: 30%;
		margin: 0 1.5% 0 1.5%;
		display: block;
	}

	#navBox nav .navUl li a {
		color: #000;
		display: block;
		font-size: 1.14em;
		font-weight: bold;
		letter-spacing: 0.1em;
		position: relative;
		border-bottom: solid 1px #937218;
		padding: 1em 0 1em 4.5em;
		transition: 0.4s;
		position: relative;
	}

	#navBox nav .nav01 a {
		background: url(../images/nav01.svg) no-repeat 1.5em center;
		background-size: 22px 25px;
	}

	#navBox nav .nav02 a {
		background: url(../images/nav02.svg) no-repeat 1.3em center;
		background-size: 30px 23px;
	}

	#navBox nav .nav03 a {
		background: url(../images/nav03.svg) no-repeat 1.3em center;
		background-size: 28px 27px;
	}

	#navBox nav .nav04 a {
		background: url(../images/nav04.svg) no-repeat 1.3em center;
		background-size: 29px 23px;
	}

	#navBox nav .nav05 a {
		background: url(../images/nav05.svg) no-repeat 1.5em center;
		background-size: 24px 20px;
	}

	.navNewsboxwrap {
		float: left;
		width: 100%;
		padding: 10px 5% 0 5%;
	}

	.navNewsboxwrap .navUl02 {
		float: left;
		width: 100%;
		padding: 0;
		margin: 0 0 10px;
		clear: left;
		overflow: auto;
		z-index: 11;
	}

	.navNewsboxwrap .navUl02 li {
		float: left;
		width: 30%;
		margin: 0 1.5% 0 1.5%;
		display: block;
	}

	.navNewsboxwrap .navUl02 li a {
		color: #000;
		display: block;
		font-size: 1.14em;
		font-weight: bold;
		letter-spacing: 0.1em;
		position: relative;
		border: solid 1px #937218;
		padding: 1em 10px 1em 4.5em;
		transition: 0.4s;
		position: relative;
	}

	.navNewsboxwrap .navUl02 li:nth-child(1) a {
		background: #eee url(../images/news_icon.svg) no-repeat 1.5em center;
		background-size: 24px 20px;
	}

	.navNewsboxwrap .navUl02 li:nth-child(2) a {
		background: #eee url(../images/news_icon.svg) no-repeat 1.5em center;
		background-size: 24px 20px;
	}

	.linkboxwrap {
		width: 100%;
		padding: 0 6%;
		margin: 10px 0 0;
		float: left;
	}

	.LinkBox01 {
		float: left;
		width: 100%;
		clear: both;
		border: 1px solid #e5e5e5;
		background: #eaf9fd;
		padding: 10px;
		margin: 0 0 10px;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.LinkBox01 .LinkBoxList a {
		display: table;
		width: 100%;
		height: 50%;
		color: #fff;
		font-size: 16px;
		line-height: 1.4;
		font-weight: bold;
	}

	.LinkBox01 .LinkBoxList a span {
		display: table-cell;
		vertical-align: middle;
		padding: 0 15px 0 50px;
		opacity: 1;
		transition: 0.3s;
	}

	.LinkBox01 .LinkBoxList a i {
		display: block;
		background: url(../images/arw_icon.svg) no-repeat right center;
		background-size: 12px auto;
		padding: 0 15px 0 0;
	}

	.LinkBox01 .LinkBoxList a:nth-child(1) span {
		background: #00187f url(../images/cal_icon.svg) no-repeat 20px center;
		background-size: 20px auto;
	}

	.LinkBox01 .LinkBoxList a:nth-child(2) span {
		background: #00b1e4 url(../images/cal_icon.svg) no-repeat 20px center;
		background-size: 20px auto;
	}

	li.LinkBoxList {
		float: left;
		width: 100%;
		position: relative;
	}

	li.LinkBoxList:before {
		display: block;
		content: '';
		padding-top: 25%;
	}

	li.LinkBoxList div {
		position: absolute;
		top: 0;
		width: 100%;
		height: 100%;
	}

	.LinkBox02 {
		float: left;
		width: 100%;
		clear: both;
		border: 1px solid #e5e5e5;
		background: #fff0e9;
		padding: 10px;
		margin: 0 0 20px;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.LinkBox02 .LinkBoxList a {
		display: table;
		width: 100%;
		height: 50%;
		color: #fff;
		font-size: 16px;
		line-height: 1.4;
		font-weight: bold;
	}

	.LinkBox02 .LinkBoxList a span {
		display: table-cell;
		vertical-align: middle;
		padding: 0 15px 0 50px;
		opacity: 1;
		transition: 0.3s;
	}

	.LinkBox02 .LinkBoxList a i {
		display: block;
		background: url(../images/arw_icon.svg) no-repeat right center;
		background-size: 12px auto;
		padding: 0 15px 0 0;
	}

	.LinkBox02 .LinkBoxList a:nth-child(1) span {
		background: #8d294b url(../images/paper_icon.svg) no-repeat 20px center;
		background-size: 20px auto;
	}

	.LinkBox02 .LinkBoxList a:nth-child(2) span {
		background: #ff7a41 url(../images/paper_icon.svg) no-repeat 20px center;
		background-size: 20px auto;
	}


	.LinkBox03 {
		float: left;
		width: 100%;
		clear: both;
		border: 1px solid #e5e5e5;
		background: #e9ffe9;
		padding: 10px;
		margin: 0 0 10px;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.LinkBox03 .LinkBoxList a {
		display: table;
		width: 100%;
		height: 100%;
		color: #fff;
		font-size: 16px;
		line-height: 1.4;
		font-weight: bold;
	}

	.LinkBox03 .LinkBoxList a span {
		display: table-cell;
		vertical-align: middle;
		padding: 0 15px 0 50px;
		opacity: 1;
		transition: 0.3s;
	}

	.LinkBox03 .LinkBoxList a i {
		display: block;
		background: url(../images/arw_icon.svg) no-repeat right center;
		background-size: 12px auto;
		padding: 0 15px 0 0;
	}

	.LinkBox03 .LinkBoxList a:nth-child(1) span {
		background: #9bc65b url(../images/paper_icon.svg) no-repeat 20px center;
		background-size: 20px auto;
	}

	.LinkBox03 li.LinkBoxList:before {
		display: block;
		content: '';
		padding-top: 13%;
	}


}

@media screen and (max-width: 840px) {
	#navBox .navUl li {
		width: 47%;
		margin: 0 1.5% 0 1.5%;
	}

	.navNewsboxwrap .navUl02 li {
		width: 47%;
		margin: 0 1.5% 0 1.5%;
	}
}

@media screen and (max-width: 500px) {
	#menuBtn {
		right: 10px;
		top: 3px;
	}

	#navBox nav {
		padding: 10px 5% 0 5%;
	}

	#navBox .navUl li {
		width: 98%;
		margin: 0 1% 0 1%;
	}

	#navBox nav .navUl li a {
		padding: 1em 0 1em 3em;
	}

	#navBox nav .nav01 a {
		background: url(../images/nav01.svg) no-repeat 0.5em center;
		background-size: 22px 25px
	}

	#navBox nav .nav02 a {
		background: url(../images/nav02.svg) no-repeat 0.2em center;
		background-size: 30px 23px;
	}

	#navBox nav .nav03 a {
		background: url(../images/nav03.svg) no-repeat 0.2em center;
		background-size: 28px 27px;
	}

	#navBox nav .nav04 a {
		background: url(../images/nav04.svg) no-repeat 0.1em center;
		background-size: 29px 23px;
	}

	#navBox nav .nav05 a {
		background: url(../images/nav05.svg) no-repeat 0.5em center;
		background-size: 24px 20px;
	}

	.navNewsboxwrap .navUl02 li a {
		padding: 0.5em 0 0.5em 3.5em;
	}

	.navNewsboxwrap .navUl02 li:nth-child(1) a {
		background: #eee url(../images/news_icon.svg) no-repeat 1em center;
		background-size: 24px 20px;
	}

	.navNewsboxwrap .navUl02 li:nth-child(2) a {
		background: #eee url(../images/news_icon.svg) no-repeat 1em center;
		background-size: 24px 20px;
	}

	.navNewsboxwrap .navUl02 li {
		width: 98%;
		margin: 0 1% 0 1%;
	}

	#navBox strong {
		float: left;
		margin: 12px 0 0 12px;
		width: 160px;
		height: 28px;
		transition: 0.3s;
	}

	li.LinkBoxList:before {
		display: block;
		content: '';
		padding-top: 40%;
	}

	.LinkBox03 li.LinkBoxList:before {
		display: block;
		content: '';
		padding-top: 20%;
	}

	.navNewsboxwrap .navUl02 li:nth-child(1) a {
		border-bottom: none !important;
	}
}

/***************************************************************************

  フッター   footer

***************************************************************************/
/* *********************** pagetop link *************************** */
#page_top {
	width: 60px;
	min-height: 60px;
	position: fixed;
	right: 3%;
	bottom: 5%;
	z-index: 10;
}

#page_top a {
	width: 60px;
	min-height: 60px;
	padding-top: 29px;
	color: #FFFFFF;
	border-radius: 40px;
	line-height: 1.2;
	font-size: 12px;
	text-align: center;
	display: block;
	background: rgba(231, 142, 29, 0.8);
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	position: relative;
	z-index: 200;
	-moz-transition: all 0.2s;
	-webkit-transition: all 0.2s;
	-ms-transition: all 0.2s;
	transition: all 0.2s;
	position: relative;
}

#page_top a:hover {
	opacity: 1;
	background: rgba(231, 142, 29, 1);
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
}

#page_top a:before {
	position: absolute;
	content: '';
	background: url(../images/totop_bg.svg) no-repeat center center;
	background-size: 80%;
	top: 15px;
	left: 0;
	right: 0;
	width: 16px;
	height: 9px;
	margin: 0 auto;
}

footer {
	width: 100%;
	padding: 55px 0 60px;
	margin: 0 auto 0;
	border-left: 20px solid #e5cc65;
	background: #f6eec6;
	clear: both;
}

footer .wrap {
	width: 950px;
	margin: 0 auto;
	padding: 0 0 0;
}

footer .footerInfo {
	float: left;
	text-align: left;
}

footer .footerInfo h2 {
	width: 227px;
	display: block;
	margin: 0 0 35px;
	padding: 0 0 35px;
	position: relative;
}

footer .footerInfo h2:after {
	content: '';
	width: 4em;
	height: 2px;
	background: #000;
	position: absolute;
	left: 0;
	bottom: 0;
}

footer .footerInfo h2 img {
	width: 100%;
	height: auto;
}

footer address {
	padding: 0 0 0 0;
	font-size: 13px;
	margin: 0 0 0;
}

footer .copyright {
	padding: 0 0 0 75px;
	font-size: 0.8em;
}

footer .footerNav {
	float: right;
	margin: 0 0 0;
	font-size: 114%;
}

footer .footerNav .ftrNav03 {
	width: 194px;
	float: right;
	margin: 0 0 0;
	padding: 0 0 0 0;
}

footer .footerNav .ftrNav02 {
	width: 260px;
	float: right;
	margin: 0 0 0;
	padding: 0 10px 0 0;
}

footer .footerNav .ftrNav01 {
	width: 180px;
	float: right;
	margin: 0 0 0;
	padding: 0 10px 0 0;
}

footer .footerNav > ul > li {
	font-weight: 600;
	position: relative;
	margin: 0 0 0.3em;
	padding: 0 0 0 0;
	display: block;
}

footer .footerNav > ul > li > ul > li {
	font-weight: normal;
	position: relative;
	margin: 0 0 0.3em;
	padding: 0 0 0 0;
}

footer .footerNav > ul > li > ul {
	margin: 0.5em 0;
	padding: 0 0 0 1em;
}

footer .footerNav > ul > li > a {
	color: #000;
	background: url(../images/arw_black_icon.svg) no-repeat left 0.55em;
	background-size: 5px 8px;
	padding: 0 0 0 0.7em;
	display: inline-block;
}

footer .footerNav > ul > li > ul > li > a {
	color: #808080;
	background: url(../images/arw_gray_icon.svg) no-repeat left 0.4em;
	background-size: 5px 8px;
	padding: 0 0 0 0.7em;
}

footer .footerNav a {
	opacity: 1;
	transition: 0.3s;
}

footer .footerNav a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 1000px) {
	footer .wrap {
		width: calc(100% - 20px);
	}
}

@media screen and (max-width: 768px) {
	footer {
		padding: 30px 10px 30px;
		border-left: 10px solid #e5cc65;
	}

	footer .footerInfo h2 {
		width: 227px;
		display: block;
		margin: 0 0 15px;
		padding: 0 0 20px;
		position: relative;
	}

	footer .footerNav {
		width: calc(100% - 280px);
		float: right;
		margin: 70px 0 0;
		font-size: 114%;
	}

	footer .footerNav .ftrNav03 {
		width: 100%;
		float: right;
		padding: 0 10px 0;
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: wrap;
	}

	footer .footerNav .ftrNav02 {
		display: none;
	}

	footer .footerNav .ftrNav01 {
		display: none;
	}

	footer .footerNav > ul > li {
		float: left;
		width: 50%;
	}

	footer .footerNav > ul > li > a {
		padding: 0 10px 0.1em 0.7em;
	}
}

@media screen and (max-width: 640px) {
	#page_top {
		width: 40px;
		min-height: 40px;
		right: 3%;
		bottom: 3%;
	}

	#page_top a {
		width: 40px;
		min-height: 40px;
		padding-top: 15px;
		font-size: 11px;
	}

	#page_top a:hover {
		opacity: 1;
		background: rgba(231, 142, 29, 0.8);
		filter: alpha(opacity=100);
		-ms-filter: "alpha(opacity=100)";
	}

	#page_top a:before {
		position: absolute;
		content: '';
		background: url(../images/totop_bg.svg) no-repeat center center;
		background-size: 50%;
		top: 5px;
		left: 0;
		right: 0;
		width: 16px;
		height: 9px;
		margin: 0 auto;
	}

	footer {
		padding: 30px 10px 30px;
		border-left: 10px solid #e5cc65;
	}

	footer .footerInfo h2 {
		width: 227px;
		display: block;
		margin: 0 0 15px;
		padding: 0 0 20px;
		position: relative;
	}

	footer .footerNav {
		width: 100%;
		float: right;
		margin: 20px 0 0;
		font-size: 100%;
	}

	footer .footerNav .ftrNav03 {
		width: 100%;
		float: right;
		padding: 0 0 0;
	}

	footer .footerNav .ftrNav02 {
		display: none;
	}

	footer .footerNav .ftrNav01 {
		display: none;
	}

	footer .footerNav > ul > li {
		float: left;
		width: 49%;
		border: 1px solid #000;
		padding: 10px 0 10px 10px;
	}

	footer .footerNav > ul > li > a {
		background: url(../images/arw_black_icon.svg) no-repeat left 0.5em;
	}

	footer .footerNav > ul > li:nth-child(even) {
		float: right;
	}
}

@media screen and (max-width: 550px) {
	footer {
		padding: 30px 0 30px;
	}

	footer .footerNav {
		font-size: 12px;
	}

	footer .footerNav .ftrNav03 {
	}

	footer .footerNav > ul > li {
		width: 49.5%;
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}

	footer .footerNav > ul > li > a {
		background: url(../images/arw_black_icon.svg) no-repeat left 0.5em;
	}

}

.copyright {
	width: 100%;
	padding: 0 0 0;
	margin: 0 auto 0;
	border-left: 20px solid #dcbf4f;
	background: #edde9a;
	clear: both;
}

.copyright .wrap {
	width: 100%;
	margin: 0 auto;
	font-size: 14px;
	padding: 10px 0 10px;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.copyright {
		padding: 0 0 0;
		border-left: 10px solid #dcbf4f;
	}

	.copyright .wrap {
		font-size: 12px;
	}
}

/***************************************************************************

  下階層  共通

***************************************************************************/
/*****************************************
  タイトル
*****************************************/
.ttlBlock {
	width: 100%;
}

.ttlBlock h2 {
	width: 80%;
	padding: 120px 0;
	text-align: center;
	font-size: 2.57em;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.15em;
	position: relative;
	margin: 0 auto;
}

.ttlBlock h2 i {
	font-size: 3.5em;
	position: absolute;
	letter-spacing: 0.01em;
	left: 0;
	right: 0;
	top: 26%;
	bottom: 0;
	opacity: 0.12;
}

@media screen and (max-width: 1180px) {
	.ttlBlock h2 {
		width: 90%;
		font-size: 2.3em;
	}
}

@media screen and (max-width: 960px) {
	.ttlBlock h2 {
		font-size: 2em;
	}
}

@media screen and (max-width: 820px) {
	.ttlBlock h2 {
		width: 85%;
		font-size: 2em;
	}

	.ttlBlock h2 i {
		line-height: 0.8;
		top: 42%;
		font-size: 2.5em;
	}
}

@media screen and (max-width: 768px) {
	.ttlBlock h2 {
		padding: 80px 0;
	}
}

@media screen and (max-width: 700px) {
	.ttlBlock h2 i {
		top: 30%;
	}

	@media screen and (max-width: 400px) {
		.ttlBlock h2 i {
			font-size: 2em;
		}
	}
}

/*YouTube埋め込み設定*/

.contentsBlock iframe {
	max-width: 100%;
}

.contentsBlock .ytBox {
	width: 100%;
	padding-bottom: 56.25%;
	height: 0px;
	position: relative;
}

.contentsBlock .ytBox iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.w100p {
	width: 100% !important;
}
