@charset "UTF-8";

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

html {
	overflow-y: scroll;
	font-size:62.5%;
}

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

ol, ul {
	list-style: none;
}

fieldset, img {
	border: 0 none;
}

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

caption, th {
	text-align: left;
}

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

object, embed, img {
	vertical-align: top;
}

p {
	font-size: 16px;
	color: #000;
	line-height: 1.6;
}

@media (max-width: 768px) {
	p {
		font-size: 14px;
	}
	
}

a {
	display: block;
	text-decoration: none;
}

a:hover {
	cursor: pointer;
}


img{	border:0px none #FFFFFF;
		width: 100%;
	    height: auto;
}
body
{
	font-family:'Noto Sans JP', sans-serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo;
	margin:				0px 0px 0px 0px;
	padding:			0px 0px 0px 0px;
	overflow: hidden;
	padding-top: 80px;
}

@media (max-width: 768px) {
	body {
		padding-top: 0;
		padding-bottom: 50px;
	}


}



/*===================================
    header
===================================*/
.header .header-box .site-header {
  position: fixed;
  width: 100%;
  top: 0;
  background: #fff;
  border-bottom: 1px solid #efefef;
  z-index: 9999;
}

.site-header {
  position: relative;
  width: 100%;
}

.site-header .site-header-content {
  width: 100%;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}

.site-header .brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 16px 30px;
  max-width: 200px;
}

.right-elements {
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
}

.right-elements .el-btns {
  width: 130px;
  display: flex;
  align-items: stretch;
  justify-content: flex-end;
  line-height: 1.1;
  white-space: nowrap;
}

.right-elements .el-btns svg {
  width: 22px;
  min-width: 22px;
  height: 22px;
  display: block;
  margin: 0 auto 0.7em;
}

.right-elements .el-btns > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 700;
  color: #ffffff;
  padding: 0 35px;
  position: relative;
  overflow: hidden;
}

.right-elements .el-btns > div a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 10;
  display: block;
  cursor: pointer;
}

.right-elements .el-btns > div:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  border-top: 60px solid rgba(255, 255, 255, 0.1);
  border-right: 150px solid transparent;
  z-index: 3;
  left: 0;
  top: 0;
}

@media (min-width: 1100px) {
  .right-elements .el-btns > div {
    transition: 0.3s;
  }

  .right-elements .el-btns > div:hover {
    background-color: #f19800 !important;
  }
}

.right-elements .el-btns .request {
  background-color: #EF8931;
  position: relative;
}

@media (max-width: 768px) {
  .site-header {
    z-index: 900;
  }
	.site-header .brand {
		padding: 12px 0;
	    max-width: 160px;
		margin: 0 auto;
	}
	
  .header .header-box .site-header {
    position: static;
  }

  .site-header-content .right-elements {
    position: fixed;
    top: auto;
	  bottom: 0;
    right: 0;
    background: #fff;
    z-index: 260;
    height: 50px;
    width: 100%;
	  opacity: 0;
    transition: opacity 0.6s ease;
    pointer-events: none;
  }

  .site-header-content .right-elements.visible {
    opacity: 1;
    pointer-events: auto;
  }

  .site-header-content .right-elements .el-btns {
    width: 100%;
  }

	.right-elements .el-btns .request {
		width: 100%;
		display: flex;
		justify-content: center;
		flex-flow: row wrap;
		align-items: center;
	}
	
  .right-elements .el-btns svg {
    width: 20px;
    min-width: 20px;
    height: 15px;
	  margin: 0 10px 0 0;
  }

}

