/************************************************************************************
RESET
*************************************************************************************/
html, body, address, blockquote, div, dl, form, h1, h2, h3, h4, h5, h6, ol, p, pre, table, ul,
dd, dt, li, tbody, td, tfoot, th, thead, tr, button, del, ins, map, object,
a, abbr, acronym, b, bdo, big, br, cite, code, dfn, em, i, img, kbd, q, samp, small, span,
strong, sub, sup, tt, var, legend, fieldset {
	margin: 0;
	padding: 0;
}

li {
	list-style: none;
}

img, fieldset {
	border: 0;
}

/* set image max width to 100% */
img {
	max-width: 100%;
	height: auto;
	width: auto\9; /* ie8 */
}

/* set html5 elements to block */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

/************************************************************************************
GENERAL STYLING
*************************************************************************************/
body {
	font-size:16px;
	font-family: 'Roboto','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Helvetica,sans-serif;
	color: #4a4d4f;
	letter-spacing: 0.05em;
}
a {
	color: #4a4d4f;
	text-decoration: none;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
	transition: 0.5s;
}
a:hover {
	color:#94999d;
}

.inner {
	width: 960px;
	margin: 0 auto;
}

.stripe {
-webkit-background-size: 4px 4px;
-moz-background-size: 4px 4px;
background-size: 4px 4px;
background-color: #FFFFFF;
background-image: -webkit-gradient(linear, 0 0, 100% 100%,
            color-stop(.25, #bdbdbd), color-stop(.25, transparent),
            color-stop(.5, transparent), color-stop(.5, #bdbdbd),
            color-stop(.75, #bdbdbd), color-stop(.75, transparent),
            to(transparent));
background-image: -webkit-linear-gradient(-45deg, #bdbdbd 25%, transparent 25%,
          transparent 50%, #bdbdbd 50%, #bdbdbd 75%,
          transparent 75%, transparent);
background-image: -moz-linear-gradient(-45deg, #bdbdbd 25%, transparent 25%,
          transparent 50%, #bdbdbd 50%, #bdbdbd 75%,
          transparent 75%, transparent);
background-image: -ms-linear-gradient(-45deg, #bdbdbd 25%, transparent 25%,
          transparent 50%, #bdbdbd 50%, #bdbdbd 75%,
          transparent 75%, transparent);
background-image: -o-linear-gradient(-45deg, #bdbdbd 25%, transparent 25%,
          transparent 50%, #bdbdbd 50%, #bdbdbd 75%,
          transparent 75%, transparent);
background-image: linear-gradient(-45deg, #bdbdbd 25%, transparent 25%,
          transparent 50%, #bdbdbd 50%, #bdbdbd 75%,
          transparent 75%, transparent);
}


/************************************************************************************
HEADER
*************************************************************************************/
header {
	padding:40px 0;
}

#primary {
	float:right;
	font-size:12px;
	margin-bottom:-20px;
}
#primary li {
	float:left;
	margin-right:30px;
}
#primary li:last-child {
	margin-right:0;
}
#primary li i {
	color:#ffe26d;
	margin-right:5px;
	font-size:15px;
}

#head-logo {
	float:left;
	margin-top:10px;
}

#head-logo img {
	width:50%;
}

#head-logo .description {
	font-size:12px;
	margin: -15px 0 0 78px;
	color:#94999d;
}

#nav {
	float:right;
	margin-top:-50px;
}
#nav li {
	float:left;
	border-right:1px #e4e7ea solid;
	padding: 10px 20px 0;
	height:40px;
}
#nav li a {
	display:block;
	font-weight:bold;
	text-align:center;
	line-height:17px;
	padding-bottom:5px;
	border-bottom:#FFFFFF;
}
#nav li a span {
	color:#ccc;
	font-size:12px;
	font-weight:normal;
}
#nav li:first-child{
	border-left:1px #e4e7ea solid;
}

#nav li a:hover {
	border-bottom:3px #ffe26d solid;
	-webkit-transition: 0.2s;
	-moz-transition: 0.2s;
	-o-transition: 0.2s;
	-ms-transition: 0.2s;
	transition: 0.2s;
}

/************************************************************************************
BREAD-CRUMB & PAGETIT
*************************************************************************************/

#bread-crumb {
	font-size:13px;
	background-color:#f4f6f7;
	padding:3px 0;
}
#bread-crumb a {
	text-decoration:underline;
}
#bread-crumb a:hover {
	text-decoration:none;
}

#pagetit {
	background:url(../images/sign-bg.jpg) repeat;
	padding:20px 0;
}

#pagetit h1 {
	color:#FFF;
	font-size:18px;
	font-weight:bold;
}


/************************************************************************************
CONTENT
*************************************************************************************/

#contents {
	padding:40px 0;
}

h2 {
	color:#d2691b;
	font-size:30px;
	font-weight:normal;
	letter-spacing:0.3em;
	background:url(../images/h3.jpg) bottom center repeat-x;
	padding-bottom:10px;
	margin-bottom:30px;
}

#side {
	width:260px;
	float:right;
}

#side .stripe {
	width:244px;
	padding:8px;
}
#side .box {
	background:#FFF;
	padding:15px;
}

#side #nav {
	margin:0 0 20px;
}

#side #nav span{height:15px; width:15px; display:block; position:relative; float:left; margin:3px 10px 0 0;}

#side #nav .arrow{background:#4a4d4f; border-radius:20px;-webkit-border-radius:20px;-moz-border-radius:20px;}

#side #nav .arrow:before{content:''; height:0; width:0; display:block; border:4px transparent solid; border-right-width:0; border-left-color:#fff; position:absolute; top:3px; left:6px;}

#side #nav a {
	display:block;
	padding:2px;
}
#side #nav a:hover {
	color:#4a4d4f;
	background:#f4f6f7;
}
#side #nav a.current {
	background:#f4f6f7;
}

#side #nav table {
	width:100%;
}
#side #nav td a {
	font-size:13px;
	padding:5px 2px;
}

#side #nav hr {
	margin:10px -15px;
	border:0;
	border-top:1px dotted #bdbdbd;
}

#side #nav .tit {
	text-align:left;
	width:90%;
}


#side p {
	font-size:13px;
}

#side .btn a {
	display:block;
	background:#4a4d4f;
	border-radius:3px;
	padding:5px 0 8px;
	width:100%;
	margin-top:20px;
	text-align:center;
}
#side .btn a {
	color:#FFF;
}
#side .btn a:hover {
	background:#94999d;
}
#side .btn i {
	font-size:18px;
	margin-right:5px;
}

#side #banner-area .btn a {
	background: transparent;
}

/************************************************************************************
PAGETOP
*************************************************************************************/

#page-top {
    position: fixed;
    bottom: 40px;
    right: 20px;
    font-size: 20px;
		font-weight:bold;
		z-index: 5;
}

@media only screen and (max-width:320px) {
	#page-top {
		right: 10px;
	}
}

#page-top a {
    background: #4a4d4f;
    text-decoration: none;
    color: #fff;
    width: 45px;
    padding:8px 0;
    text-align: center;
    display: block;
    border-radius: 40px;
}

#page-top a:hover {
    text-decoration: none;
    background: #94999d;
}



/************************************************************************************
FOOTER
*************************************************************************************/
#foot-nav {
	background:#f4f6f7;
	font-size:14px;
	font-weight:bold;
}
#foot-nav li {
	float:left;
	border-left:1px #ccc solid;
	margin:30px 0;
	padding: 0 10px;
}
#foot-nav li:last-child{
	border-right:1px #ccc solid;
}

#foot-nav li a {
	color:#4a4d4f;
}
#foot-nav li a:hover {
	color:#94999d;
}

#foot-nav li.btn {
	border-right:0;
}
#foot-nav li.btn a {
	color:#FFF;
	font-weight:normal;
	background:#4a4d4f;
	border-radius:2px;
	padding:10px 20px 10px 15px;
}
#foot-nav li.btn a:hover {
	background:#94999d;
}
#foot-nav li.btn i {
	margin-right:5px;
}

#foot-copy .logo {
	float:left;
	width:40%;
}
#foot-copy .logo img {
	width:50%;
	margin:10px 0 0;
}
#foot-copy .txt {
	float:right;
	font-size:10px;
	color:#e4e7ea;
	margin:25px 0;
}


/************************************************************************************
CLEARFIX
*************************************************************************************/
.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
.clearfix { display: inline-block; }
.clearfix { display: block; zoom: 1; }



/************************************************************************************
smaller than 960
*************************************************************************************/
@media screen and (max-width: 960px) {

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


	/* header */
header {
	padding:20px 0 30px;
}

#primary {
	float:none;
	width:600px;
	margin:0 auto;
}

#head-logo {
	float:none;
	clear:both;
	text-align:center;
	padding:20px 0;
}

#head-logo .description {
	display:none;
}

#nav {
	float:none;
	width:565px;
	margin:0 auto;
}

	/* inner */
.inner {
	width: 95%;
}

	/* contenst */

#side  {
	float:none;
	width:100%;
	clear:both;
}

#side .stripe {
	width:98%;
}


#side .btn a {
	padding:20px 0;
	font-size:14px;
}

	/* footer */

#foot-nav li.btn {
	display:none;
}


}

/************************************************************************************
smaller than 650
*************************************************************************************/
@media screen and (max-width: 650px) {

	/*******/

#contents {
	padding:20px 0;
}

	/* header */

header {
	padding:10px 0;
}

#primary {
	display:none;
}
#head-logo {
	padding:10px 0 20px;
}

#head-logo img{
	width:80%;
}

#nav {
	width:auto;
}

#nav li {
	border:none;
	width:49%;
	text-align:center;
	margin-bottom:10px;
	padding: 0;
}
#nav li a {
	font-size:14px;
}
#nav li:first-child{
	border:none;
}
#nav li:nth-child(odd){
	border-right:1px #f1f0ee solid;
}

#bread-crumb {
	display:none;
}

	/* contents */
h2 {
	color:#d2691b;
	font-size:30px;
	font-weight:normal;
	letter-spacing:0.3em;
	background:url(../images/h3.jpg) bottom center repeat-x;
	padding-bottom:10px;
	margin-bottom:30px;
}

#side {
	float:none;
	width:90%;
	margin:0 auto;
}


	/* footer */
#foot-nav .inner {
	width:90%;
}
#foot-nav {
	padding-bottom:20px;
	font-size:12px;
}
#foot-nav li {
	margin:20px 0 0;
	width:42%;
}
#foot-nav li:nth-child(even){
	border-right:1px #ccc solid;
}

#foot-copy .logo {
	float:none;
	text-align:center;
	width:100%;
}
#foot-copy .logo img {
	width:50%;
	margin:10px 0 0;
}
#foot-copy .txt {
	float:none;
	text-align:center;
	margin:0 0 10px;
}


}


/*---------------------------------------
mynavi common
---------------------------------------*/
.mynavi_link {
	display: none;
	margin-right: 2.5em;
	padding-top: 1.5em;
	text-align: right;
}
@media only screen and (max-width: 600px) {
  .mynavi_link {
  	display: none;
	}
}

.mynavi_link--sp {
	display: none !important;
}
@media only screen and (max-width: 600px) {
 .mynavi_link--sp {
 	display: block;
 	margin-bottom: 1em;
 	text-align: center;
 }
}

.external::before {
	display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
	content: "";
  font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-weight: 900;
}

/* セミナー */
#primary li:nth-child(2) {
	position: relative;
}

/* #primary li:nth-child(2)::after {
	position: absolute;
	top: -25px;
	left: -5px;
	content: "申込み受付中！";
	width: 105px;
	font-size: 14px;
	font-weight: 600;
	color: #e81414;
	animation: seminar 1.8s infinite;
} */

@keyframes seminar {
	0% {
		opacity: 1;

	}
	50% {
		opacity: .1;

	}
	100% {
		opacity: 1;

	}
}


@media screen and (max-width: 414px) {
	/* #foot-nav li:nth-child(5) {
			position: fixed;
			bottom: 0;
			left: 0;
			padding: 1em;
			width: 100%;
			font-size: 14px;
			background-color: #fff;
			z-index: 3;
			box-shadow: 0 10px 10px 10px rgba(146, 146, 146, 0.7);
	}

	#foot-nav li:nth-child(5) a {
		position: relative;
		display: block;
	}

	#foot-nav li:nth-child(5) a::after {
		position: absolute;
		top: -6px;
		right: 0;
		left: 0;
		content: "申込み受付中！";
		margin-right: auto;
		margin-left: 7em;
		padding: .5em 1.5em;
		width: 35%;
		color: #fff;
		text-align: center;
		background-color: #f39800;
		border-radius: 3px;
	} */

	#foot-copy {
		margin-bottom: 60px;
	}
}

@media screen and (max-width: 375px) {
	#foot-nav li:nth-child(5) a::after {
		margin-left: 6em;
	}
}

@media screen and (max-width: 320px) {
	#foot-nav li:nth-child(5) a::after {
		margin-left: 5em;
	}
}
