@charset "UTF-8";

/* reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,aside,figure {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;}
object, embed {vertical-align: top;}
hr,legend {display: none;}
h1,h2,h3,h4,h5,h6 {font-size: 100%;}
img,abbr,acronym,fieldset {border: 0;}
li {list-style-type: none;}


/* base
----------------------------------------*/
html{
	font-size: 62.5%;
	overflow: auto;
}
body{
	width: 100%;
	color: #000;
	font-family: "游ゴシック","Yu Gothic","游ゴシック体",YuGothic,"Hiragino Kaku Gothic ProN","Hiragino Sans","ヒラギノ角ゴ ProN","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1;
	overflow: hidden;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
}
*, *:before, *:after {
	box-sizing: border-box
}
h1,h2,h3,h4,h5,h6{
	font-feature-settings: "palt";
	letter-spacing: 0.03em;
}
a:link,a:active,a:hover,a:visited {color:#000;text-decoration:none;}
img{vertical-align: bottom;}

@media screen and (min-width: 768px){
	.spview{display: none;}
}


@media screen and (max-width: 767px){
	.pcview{display: none;}
}


/* header
----------------------------------------*/



/* layout
----------------------------------------*/
.wrapper{
	border-bottom: solid 1px #ccc;
	border-top: solid 3px #906499;
}
.wrapper img{
	width: 100%;
	height: auto;
}


/* mv
----------------------------------------*/
.mv{
	padding: 20px 3% 50px;
}
.mv > .inner{
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
}
.mv-logo{
	position: absolute;
	top: 0;
	left: 0;
	max-width: 275px;
	width: 25%;
}

h1.mv-image{
}
.mv-title{
	max-width: 782px;
	margin: 40px auto 0;
}
.mv-copyright{
	margin-top: 5px;
	font-size: 1.4rem;
	text-align: right;
}

p.mv-name{
	position: absolute;
	bottom:0;
	right:0;
	font-size: 13px;
	line-height: 1.3;	
	color: #fff;
	background-color: #000;
	width:60%;
	padding:2%;
}

@media screen and (max-width: 767px){

p.mv-name{
	position: relative;
	height: 20%;
	font-size: 13px;
	line-height: 1.3;	
	color: #fff;
	background-color: #000;
	width:100%;
	padding:2%;
	margin:0 auto 30px;
	}
}


/* sns
----------------------------------------*/

.social_box {
  text-align: center;
  padding-bottom: 5px;
	margin-bottom: 30px;
}

.social_buttons {
  display: inline-block;
  text-align: left;
}



/* lead
----------------------------------------*/
.lead{
	padding: 0 5%;
}
.lead > .inner{
	max-width: 900px;
	margin: 0 auto;
}
.lead > .inner p{
	color: #005593;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 2;
}

@media screen and (max-width: 767px){
	.lead > .inner{
		padding-bottom: 30px;
	}
	.lead > .inner p{
		font-size: 1.5rem;
	}
}


/* maincontents
----------------------------------------*/
.maincontents{
	padding: 0 5% 60px;
}

@media screen and (max-width: 767px){
	.maincontents{
		padding: 0 5% 30px;
	}
}


/* section
----------------------------------------*/
.section{
	max-width: 900px;
	margin: 50px auto 0;
}

.section-heading{
	position: relative;
	margin:60px auto 50px;
	padding: 20px 10px;
	font-size: 2.6rem;
	line-height: 1.5;
	text-align: center;
	border-top: solid 3px #906499;
	border-bottom: solid 3px #906499;
}

.section > p{
	margin-bottom: 1em;
	font-size: 1.6rem;
	line-height: 2;
	text-indent: 1em;
}

@media screen and (max-width: 767px){
	.section{
		margin: 30px auto 0;
	}

	.section-heading{
		margin:30px auto;
		padding: 10px;
		font-size: 2.2rem;
	}
	.section > p{
		margin-bottom: 1em;
		font-size: 1.5rem;
		line-height: 2;
	}

}


/* photo
----------------------------------------*/
.photo-right{
	float: right;
	width: 47.77777777777778%;
	margin: 5px 0 20px 40px;
}
.photo-right-caption{
	margin-top: 10px;
	color: #005593;
	font-size: 1.5rem;
	line-height: 1.6;
}
.photo-right-caption span{
	font-size: 150%;
	font-weight: 700;
}
.photo-center01{
	max-width: 900px;
	width: 100%;
	margin: 40px auto 0;
}
.photo-center02{
	margin: 40px auto 0;
}
.photo-center02 > .inner{
	display: flex;
}
.photo-center02-image{
	width: 53.33333333333333%;
}

.photo-caption{
	margin-top: 10px;
	font-size: 1.5rem;
	line-height: 1.6;
}
.photo-center02 > .photo-caption{
	text-align: center;
}

@media screen and (max-width: 767px){
	.photo-right{
		float: none;
		width: 80%;
		margin: 0 auto 30px;
	}
	.photo-right-caption{
		font-size: 1.4rem;
	}
	.photo-center01{
		width: 100%;
		margin: 30px auto 0;
	}
	.photo-center02{
		margin: 30px auto 0;
	}
	.photo-center02 > .inner{
		flex-wrap: wrap;
		flex-direction: column;
	}
	.photo-center02-image{
		width: 100%;
	}
	.photo-center02-baloon01,
	.photo-center02-baloon02{
		width: 85%;
	}
	.photo-center02-baloon01{
		margin: 0 0 10px;
	}
	.photo-center02-baloon02{
		align-self: flex-end;
		margin: 10px 0 0;
	}
	.photo-center02-baloon01 span,
	.photo-center02-baloon02 span{
		padding: 5px;
		font-size: 1.4rem;
	}
	.photo-center02-baloon01 span::before,
	.photo-center02-baloon01 span::after{
		transform: skewX(-40deg);
	}
	.photo-center02-baloon01 span::before{
		right: 100px;
	}
	.photo-center02-baloon01 span::after{
		right: 95px;
	}
	.photo-center02-baloon02 span::before{
		top: -30px;
    bottom: unset;
    left: 100px;
    border-top: transparent;
    border-bottom: 30px solid #59c3dc;
    transform: skewX(-40deg);
	}
	.photo-center02-baloon02 span::after{
		top: -23px;
    bottom: unset;
    left: 95px;
    border-top: transparent;
    border-bottom: 30px solid #fff;
    transform: skewX(-40deg);
	}
	.photo-caption{
		font-size: 1.4rem;
	}
	.photo-center02 > .photo-caption{
		text-align: left;
	}
}


/* information
----------------------------------------*/
.information{
	padding: 0 5%;
}
.information > .inner{
	max-width: 900px;
	margin: 0 auto;
	padding: 40px 0;
	border-top: solid 1px #000;
}
.information-link{
	max-width: 600px;
	margin: 0 auto;
}
.information-link-logo{
	max-width: 400px;
	margin: 0 auto;
}
.information-link-logo a{
	transition: 0.7s;
}
.information-link-logo a:hover {
	opacity: 0.7;
	transition: 0.7s;
}
.information-link-text{
	margin-top: 20px;
	font-size: 1.6rem;
	line-height: 1.5;
	text-align: center;
}
#company-name{
	font-weight: bold;
}
.information-link-text a{
	padding-bottom: 3px;
	border-bottom: solid 1px #000;
	text-decoration: none;
}

@media screen and (max-width: 767px){
	.information > .inner{
		padding: 60px 0;
	}
	.information-link-text{
		margin-top: 20px;
		font-size: 1.4rem;
	}
}


/* pagetop
----------------------------------------*/
.pagetop{
	position: fixed;
	bottom: 2em;
	right: 2em;
}
.pagetop img{
	width: 60px;
	height: 60px;
}
.pagetop a {
  display: block;
  transition: 0.5s;
}
.pagetop a:hover{
    opacity: 0.7;
}

@media screen and (max-width: 767px){
	.pagetop{
		position: fixed;
		bottom: 0.5em;
		right: 0.5em;
	}
	.pagetop img{
		width: 50px;
		height: 50px;
	}
}


/* localFooter
----------------------------------------*/
div.localFooter{
	padding: 20px;
	background: #fff;
	text-align: left;
	line-height: 1.6;
}