/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/*============================
common
============================*/
.pc { display: block !important; }
.sp { display: none !important; }
body {
	font-size: 16px;
}
article div.inner {
	width:960px;
	margin:0 auto;
	padding:0 20px;
}
article .hide{
	display: block;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	height:0;
	line-height: 0;

}
article header {
	width:100%;
	height:80px;
	margin: 0;
	padding:0;
	color: #FFF;
  background: #FFF;
  box-shadow: 0 2px 4px rgba(0,0,0,0.3);
  z-index: 1;
  position:fixed;
  display: flex;
}
article header div.inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
article header h1 {
	background-image: url("images/logo.png");
	background-size: 100%;
	background-position: center;
	height:65px;
	width:247px;
	margin:0;
	padding: 0;
}
article header div.inner p {
	font-size: 14px;
	color: #000;

}
article div.contents {
}

@media screen and (max-width:750px) { 
	article div.inner {
	width:97%;
	margin:0 auto;
	padding:0;
}
article header {
	height:65px;
}
article header h1 {
	background-image: url("images/logo.png");
	background-size: 100%;
	background-position: center;
	background-repeat: no-repeat;
	height:80px;
	width:150px;
	margin:0 15px 0 0;
	padding: 0;
}
.pc { display: none !important; }
.sp { display: block !important; }
}
/*============================
#mv
============================*/
article div.contents div#mv {
	background:url("images/mv.png");
  background-size:cover;
  background-position:center center;
  background-attachment:fixed;
  height:650px;
  position: relative;
}
article div.contents div#mv div.inner p {
	font-family: 'Noto Serif JP', serif;
	font-size: 25px;
	color:#FFF;
	position: relative;
	top:250px;
	line-height: 40px;
}
article div.contents div#mv div.inner #maincopy {
	font-family: 'Noto Serif JP', serif;
	font-size: 50px;
	color:#FFF;
	position: relative;
	top:200px;
	line-height: 80px;
}
@media screen and (max-width:750px) {
article div.contents div#mv {
	background:url("images/mv_sp.png");
  height:100vh;
  background-position: center top;
  position: relative;
}
article div.contents div#mv div.inner #maincopy {
	font-family: 'Noto Serif JP', serif;
	font-size: 30px;
	color:#FFF;
	display: flex;
	flex-direction: column;
	line-height: 40px;
}
article div.contents div#mv div.inner p {
	font-family: 'Noto Serif JP', serif;
	font-size: 17px;
	color:#FFF;
	line-height: 30px;
}
}
/*============================
#section01
============================*/
article div.contents div#section01 {
	padding:50px 0 30px 0;
}
article div.contents div#section01 div.inner {
}
article div.contents div#section01 div.inner p {
	font-size: 16px;
	color:#000;
	line-height: 30px;
	margin:0 0 30px 0;
}

/*============================
#section02
============================*/
article div.contents div#section02 {
	background:url("images/image01.png");
  background-size:cover;
  background-position:center center;
  background-attachment:fixed;
  height:450px;
  position: relative;
}
@media screen and (max-width:750px) {
article div.contents div#section02 {
	background:url("images/image01_sp.png");
	height:100vh;
	background-position: center top;
}
}

/*============================
#section03
============================*/
article div.contents div#section03 {
	padding:50px 0 30px 0;
}
article div.contents div#section03 div.inner {
	display: flex;
}
article div.contents div#section03 div.inner div.left {
	width:25%;
	border-right: 3px solid #000;
	margin-right: 50px;
}
article div.contents div#section03 div.inner div.left h2 {
	font-family: 'Noto Serif JP', serif;
	font-size: 35px;
}
article div.contents div#section03 div.inner div.right {
}
article div.contents div#section03 div.inner div.right dl {
	display: flex;
	margin:0 0 20px 0;
}
article div.contents div#section03 div.inner div.right dl dt {
	width:20%;
	line-height: 30px;
}
article div.contents div#section03 div.inner div.right dl dt h3 {
}
article div.contents div#section03 div.inner div.right dl dd {
	width:80%;
	line-height: 30px;
}
article div.contents div#section03 div.inner div.right dl dd ul {
	margin:0 0 0 0;
}
article div.contents div#section03 div.inner div.right dl dd ul li {
}
article div.contents div#section03 div.inner div.right dl dd h4 {
	margin:0 0 0 0;
}
@media screen and (max-width:750px) {
article div.contents div#section03 div.inner {
	display: flex;
	flex-direction: column;
}
article div.contents div#section03 div.inner div.left {
	width:100%;
	border-bottom: 3px solid #000;
	border-right:none;
	margin:0 0 20px 0;
	padding:0 0 10px 0;
}
article div.contents div#section03 div.inner div.right dl dt {
	width:25%;
	line-height: 30px;
}
}

/*============================
#section04
============================*/
article div.contents div#section04 {
}

/*============================
#section05
============================*/
article div.contents div#section05 {
	padding:50px 0 30px 0;
}
article div.contents div#section05 div.inner {
	display: flex;
}
article div.contents div#section05 div.inner div.left {
	width:35%;
	border-right: 3px solid #000;
	margin-right: 50px;
}
article div.contents div#section05 div.inner div.left h2 {
	font-family: 'Noto Serif JP', serif;
	font-size: 35px;
}
article div.contents div#section05 div.inner div.right {
}
article div.contents div#section05 div.inner div.right p {
	line-height: 30px;
}
article div.contents .button_out {
	text-align: center;
	margin:50px 0;
	display: block;
	}
article div.contents .button {
	border:1px solid #000;
	display: inline-block;
	padding:20px;
	margin: 0 auto;
}
article div.contents .button_out button.button {
	border:1px solid #000;
	display: inline-block;
	padding:20px;
	margin: 0 auto;
}
input {
    display: none;
}
.hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}
input:checked ~ .hidden_show {
    padding: 10px 0;
    height: auto;
    opacity: 1;
}
article div.contents div#section06{
	display: block;
}
article div.contents div#section06 div.inner ul {
	margin:60px 0;
}
article div.contents div#section06 div.inner h3,article div.contents div#section07 div.inner h3 {
	font-family: 'Noto Serif JP', serif;
	font-size: 30px;
	position: relative;
  display: inline-block;
  padding: 0;
  width:100%;
  text-align: center;
}
article div.contents div#section06 div.inner h3:before, article div.contents div#section06 div.inner h3:after,article div.contents div#section07 div.inner h3:after {
	content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 250px;
  height: 3px;
  background-color: black;
}
article div.contents div#section06 div.inner h3:before {
  left:0;
}
article div.contents div#section06 div.inner h3:after {
  right: 0;
}
article div.contents div#section06 div.inner ul li {
	margin:0 0 30px 0;
}
article div.contents div#section06 div.inner ul li dl {

}
article div.contents div#section06 div.inner ul li dl dt {
	line-height: 25px;
}
article div.contents div#section06 div.inner ul li dl dd {
		margin:10px 0 0 32px;
		line-height: 25px;
}
article div.contents div#section06 div.inner ul li dl dd ul {
	margin: 10px 0;
}
article div.contents div#section06 div.inner ul li dl dd ul li {
	margin:0;
}
article div.contents div#section05 div.inner ul li dl dd p {
}
@media screen and (max-width:750px) {
article div.contents div#section05 div.inner {
	display: flex;
	flex-direction: column;
}
article div.contents div#section05 div.inner div.left {
	width:100%;
	border-bottom: 3px solid #000;
	border-right: none;
	margin: 0 0 20px 0;
	padding:0 0 10px 0;
}
article div.contents div#section06 div.inner h3,article div.contents div#section07 div.inner h3 {
	font-family: 'Noto Serif JP', serif;
	font-size: 25px;
	position: relative;
  display: inline-block;
  padding: 0 0 10px 0;
  width:100%;
  text-align: center;
  border-bottom: 3px solid #000;
}
article div.contents div#section06 div.inner h3:before, article div.contents div#section06 div.inner h3:after,article div.contents div#section07 div.inner h3:after {
	content: '';
  position: absolute;
  top: 0;
  display: inline-block;
  width: 0;
  height: 0;
  background-color: black;
}
article div.contents div#section06 div.inner ul {
	margin:30px 0;
}
}

/*============================
#contact-form
============================*/
article div.contents div#section07 div.inner div#contact-form {
	margin:50px auto;
	width:80%;
}
article div.contents div#section07 div.inner div#contact-form h3 {
}
article div.contents div#section07 div.inner div#contact-form dl {
	display: flex;
	margin:0 0 20px 0;
}
article div.contents div#section07 div.inner div#contact-form dl dt {
	width:30%;
}
article div.contents div#section07 div.inner div#contact-form dl dd input{
	width:500px;
}
article div.contents div#section07 div.inner div#contact-form dl dd textarea{
	width:500px;
	height:200px;
}
article footer {
	background-color: #000;
	padding: 50px;
	text-align: center;
}
article footer copy {
	color:#FFF;
	font-size: 14px;
}
@media screen and (max-width:750px) {
article div.contents div#section07 div.inner div#contact-form {
	margin:50px auto;
	width:100%;
}
article div.contents div#section07 div.inner div#contact-form dl {
	display: flex;
	flex-direction: column;
	margin:0 0 20px 0;
}
article div.contents div#section07 div.inner div#contact-form dl dt {
	width:100%;
	margin:0 0 10px 0;
}
article div.contents div#section07 div.inner div#contact-form dl dd input{
	width:100%;
}
article div.contents div#section07 div.inner div#contact-form dl dd textarea{
	width:100%;
	height:200px;
}
	}
