/* header */
header {
	width:100%;
	height:118px;
	background-color:#fff;
	position:fixed;
	top:0;
	left:0;
	z-index:1;
	transition:0.3s;
}
header > div{
	width:98%;
	max-width:1600px;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
	justify-content: space-between;
	align-items: flex-start;
}
header > div > h1{
	width:435px;
	position:relative;
	top:40px;
	transition:0.3s;
}
header > div > h1 a{
	transition:0.3s;
}
header > div > h1 a:hover{
	opacity:0.8;
}
header > div > div{
	display:flex;
	flex-wrap:wrap;
	align-items: center;
	position:relative;
	top:15px;
	transition:0.3s;
}
header > div > div p.htel a{
	display:block;
	padding:0.2rem;
	margin:0.1rem 1.5rem 0 0;
}
header > div > div p.htel a img{
	display:block;
}
header > div > div p + p{
	display:flex;
	min-width:235px;
}
header > div > div p + p span{
	width:48%;
	margin:0 1%;
	display:block;
	background-color:#2080d5;
	color:#fff;
	font-weight:600;
	line-height:1;
	padding:0.3rem 0.5rem;
	text-align:center;
	border-radius:3px;
}
@media(min-width:960px){
	.active01 header {
		height:67px;
		box-shadow:0 2px 2px 0 rgba(0,0,0,0.15);
	}
	.active01 header > div > h1{
		width:375px;
		top:7px;
	}
	.active01 header > div > div{
		top:-35px;
		transition:0.1s;
	}
}
@media(max-width:1500px){
	header > div > h1{
		width:375px;
		top:10px;
	}
	.active01 header > div > h1{
		top:-70px;
		transition:0.1s;
	}
}
@media(max-width:960px){
	header {
		position:relative;
		height:inherit;
	}
	header > div > h1 {
		width:calc(100% - 70px);
	}
	header > div > h1 a{
		display:inline-block;
		width:100%;
		max-width:375px;
	}
	header > div > div{
		top:0;
		margin:15px 0 15px auto;
	}
	.active01 header > div > h1{
		top:10px;
	}
}
@media(max-width:600px){
	header > div > div{
		margin:20px 0 2.5% auto;
	}
	header > div > div p.htel{
		max-width:205px;
		width:calc(100% - 155px);
	}
	header > div > div p.htel a{
		margin-right:2%;
	}
	header > div > div p + p{
		min-width:155px;
	}
	header > div > div p + p span{
		font-size:77%;
		width:inherit;
	}
}
/* header end
footer start */
footer {
	margin-top:3rem;
}
footer > section.fot_contact{
	background-color:#f5f5f5;
	padding:1.75rem 0;
}
footer > section.fot_contact > div{
	display:flex;
	flex-wrap:wrap;
	align-items: flex-start;
	background-color:#fff;
	border-radius:10px;
	width:95%;
	max-width:1255px;
	margin:0 auto;
	position:relative;
	padding-left:265px;
}
footer > section.fot_contact > div:before{
	content:"";
	display:block;
	width:195px;
	height:100%;
	background-image:url("../img/material/img-bg03.jpg");
	background-repeat: no-repeat;
	background-size:100% auto;
	position:absolute;
	left:20px;
	top:0;
}
footer > section.fot_contact > div > div{
	width:50%;
	max-width:465px;
	padding:1rem 0 0;
}
footer > section.fot_contact > div > div p.txt1{
	color:#236dae;
	font-weight:600;
	line-height:1.5;
}
footer > section.fot_contact > div > div p.comm{
	display:flex;
	margin-top:0.4rem;
}
footer > section.fot_contact > div > div p.comm > span{
	border-radius:3px;
	background-color:#236dae;
	color:#fff;
	line-height:1;
	padding:0.5rem 1rem;
	font-size:125%;
	font-weight:500;
	white-space: nowrap;
}
footer > section.fot_contact > div > div p.comm > span:not(:last-child){
	margin-right:0.2rem;
}
footer > section.fot_contact > div > p.ftel{
	width:50%;
	margin-top:2.8rem;
}
footer > section.fot_contact > div > p.ftel a{
	display:inline-block;
	padding:0 0 0 3.75rem;
	background-image:url("../img/material/icon-img02.png");
	background-repeat: no-repeat;
	background-position: left center;
}
footer > section.fot_contact > div > p.ftel a img{
	display:block;
}
footer > section.fot_contact > div > p.txt2{
	width: 100%;
	font-size: 87%;
	color:#454545;
	margin: 0.6rem 0;
	line-height:1.5;
}
footer > section.fot_menu {
	background-image:url("../img/material/footer-bg.gif");
	background-repeat: repeat-x;
	background-size:auto 100%;
	background-position:center;
	padding:3rem 0 1.5rem;
}
footer > section.fot_menu > div{
	width:90%;
	max-width:1200px;
	margin:0 auto;
	display:flex;
	justify-content: space-between;
	align-items: flex-start;
}
footer > section.fot_menu > div > div.fmenu{
	display:flex;
	flex-wrap:wrap;
	align-items: flex-start;
}
footer > section.fot_menu > div > div.fmenu ul{
	margin-left:3rem;
}
footer > section.fot_menu > div > div.fmenu a{
	font-size:85%;
	color:#fff;
	line-height:1.5;
	text-shadow:1px 1px 1px rgba(0,0,0,0.2);
	display:block;
	padding:0.25rem 2rem 0.25rem 1.5rem;
	position:relative;
	text-decoration:none;
}
footer > section.fot_menu > div > div.fmenu a:before{
	content: "";
    display: block;
    position: absolute;
    left: 0.5rem;
    top: 0;
    bottom: 0;
    margin: auto 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3px 0 3px 4px;
    border-color: transparent transparent transparent #ff9eff;
}
footer > section.fot_menu > div > div.fmenu a:hover{
	text-decoration:underline;
	opacity:0.8;
}
footer > section.fot_menu > div > div.flogo{
	height:117px;
	background-image:url("../img/material/footer-logo.png");
	background-repeat: no-repeat;
	background-position:left center;
	padding-left:142px;
	padding-top:1.75rem;
}
footer > section.fot_menu > div > div.flogo h2{
	color: #fff;
	font-size: 110%;
	font-weight: 400;
	letter-spacing: 2px;
	line-height:1.5;
}
footer > section.fot_menu > div > div.flogo div{
	display:flex;
	align-items: flex-start;
	font-size:90%;
	margin-top:0.75rem;
}
footer > section.fot_menu > div > div.flogo div span{
	background-color:#f258f2;
	color:#fff;
	line-height:1;
	padding:0.25rem 0.5rem;
	border-radius:3px;
	font-weight:500;
	margin-right:0.75rem;
}
footer > section.fot_menu > div > div.flogo div address{
	font-style:normal;
	color:#fff;
	line-height:1.5;
}
footer > section.fot_menu small{
	display:block;
	text-align:center;
	font-size:90%;
	color:rgba(255,255,255,.7);
	border-top:solid 1px rgba(255,255,255,.5);
	margin-top:2.5rem;
	padding-top:1rem;
}
@media screen and (min-width:960px) and (max-width:1250px){
	footer > section.fot_contact > div > div p.txt1{
		font-size:84%;
	}
	footer > section.fot_contact > div > div p.comm > span{
		font-size:1.5vw;
		padding:0.5rem 0.75rem;
	}
	footer > section.fot_contact > div > p.ftel{
		width:42%;
		margin-left:3%;
	}
}
@media (max-width:960px){
	footer > section.fot_contact > div{
		padding:0;
	}
	footer > section.fot_contact > div:before{
		top:28px;
		width:170px;
	}
	footer > section.fot_contact > div > div{
		width:100%;
		max-width:inherit;
		padding-left:230px;
	}
	footer > section.fot_contact > div > p.ftel{
		width:100%;
		margin-top:1.5rem;
		padding-left:230px;
		padding-right:1rem;
	}
	footer > section.fot_contact > div > p.txt2{
		width:90%;
		margin:0.6rem auto;
		text-align:center;
	}
	footer > section.fot_menu > div > div.flogo{
		height:inherit;
		background-position:left top;
		padding-left:0;
		padding-top:130px;
	}
}
@media (max-width:767px){
	footer > section.fot_contact > div > div p.txt1{
		font-size:90%;
	}
	footer > section.fot_contact > div > div p.comm > span{
		font-size:2.5vw;
		padding:0.5rem 0.75rem;
	}
	footer > section.fot_menu{
		padding-top:1rem;
	}
	footer > section.fot_menu > div{
		flex-wrap:wrap;
	}
	footer > section.fot_menu > div > div.fmenu{
		width:100%;
	}
	footer > section.fot_menu > div > div.fmenu ul{
		width:100%;
		margin:0;
	}
	footer > section.fot_menu > div > div.fmenu ul a{
		display:block;
		border-bottom:solid 1px rgba(255,255,255,.5);
		padding:0.5rem 2rem 0.5rem 1.5rem;
	}
	footer > section.fot_menu > div > div.flogo{
		margin-top:2rem;
		background-position:center top;
		width:100%;
	}
	footer > section.fot_menu > div > div.flogo h2{
		text-align:center;
		font-size:105%;
	}
	footer > section.fot_menu > div > div.flogo div{
		justify-content: center;
	}
}
@media (max-width:600px){
	footer > section.fot_contact > div{
		padding: 0 0 165px;
	}
	footer > section.fot_contact > div:before {
		width: 195px;
		left: 0;
		height: 135px;
		right: 0;
		top: inherit;
		bottom: 10px;
		margin: 0 auto;
	}
	footer > section.fot_contact > div > div {
		width: 100%;
		margin-left: auto;
		padding: 1rem 1rem 0;
		text-align: center;
	}
	footer > section.fot_contact > div > div p.txt1 {
		font-size: 3.5vw;
	}
	footer > section.fot_contact > div > div p.comm{
		justify-content: center;
	}
	footer > section.fot_contact > div > div p.comm > span {
		font-size: 3.75vw;
	}
	footer > section.fot_contact > div > p.ftel {
		width: 90%;
		margin: 1rem auto 0;
		padding:0;
		text-align:center;
	}
	footer > section.fot_contact > div > p.txt2{
		font-size:80%;
	}
}

/* footer end
top contents start */

#wrapper {
	margin-top:118px;
	border-top:solid 15px #ff9eff;
}
@media(max-width:960px){
	#wrapper {
		margin-top:0;
	}
}
.main-img {
	margin:0 auto;
	width:100%;
	max-width:1920px;
}
.main-img li {
	width:100%;
	height:735px;
	padding:1px;
	background-size:auto 100%;
	background-position:center;
}
.main-img li > div {
	width:95%;
	max-width:1200px;
	margin:87px auto 0;
	text-align:right;
}
.main-img li > div p{
	display:inline-block;
}
.main-img li > div p + p{
	margin-top:125px;
}
@media(max-width:960px){
	.main-img li{
		height:inherit;
	}
	.main-img li > div{
		margin:10% auto 13%;
	}
	.main-img li > div p + p{
		margin-top:16%;
	}
}

/* article */
.tcon01 {
	background-image:url("../img/material/img-bg01.jpg");
	background-repeat: no-repeat;
	background-position:center;
}
.tcon01 > div{
	width:100%;
	max-width:1400px;
	background-image:url("../img/material/img01.png");
	background-repeat: no-repeat;
	background-position:left center;
	margin:0 auto;
	padding:1px;
}
.tcon01 > div > div{
	width:55%;
	min-width:715px;
	background-image:url("../img/material/img-bg02.png");
	background-repeat: no-repeat;
	background-position:center;
	background-size: 100% 100%;
	margin-left:auto;
	padding:5rem 3rem 1rem 4rem;
}
.tcon01 > div > div h3{
	color:#2c6bd3;
	font-family: "ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho",serif;
	font-size:180%;
	letter-spacing:1px;
}
.tcon01 > div > div h3 span{
	display:block;
	font-family: "ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho",serif;
	text-align:right;
}
.tcon01 > div > div p{
	font-size: 95%;
	padding: 2rem 0 0 2rem;
	line-height: 1.7;
	color:#565656;
}
.tcon01 > div > div figure{
	max-width:90%;
	text-align:right;
	margin:-1rem auto 0;
}
.tcon02 {
	width:90%;
	max-width:1255px;
	margin:1rem auto 0;
}
footer .tcon02 {
	padding-bottom:1rem;
}
.tcon02 ul{
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
	align-items: center;
}
.tcon02 ul li{
	margin:1rem 10px 0;
}
.tcon02 ul li a{
	transition:0.3s;
}
.tcon02 ul li a:hover{
	opacity:0.8;
}
.tcon03 {
	width:90%;
	max-width:1255px;
	margin:4.5rem auto 0;
	display:flex;
	flex-wrap:wrap;
}
.tcon03 > figure{
	width:433px;
}
.tcon03 > div.tnews{
	width:calc(95% - 433px);
	margin-left:auto;
	border-radius:25px;
	border:solid 1px #bebebe;
	padding:0 3rem 2rem;
}
.tcon03 > div.tnews h3{
	display: inline-block;
	background-color: #fff;
	color: #626262;
	font-size: 145%;
	line-height: 1;
	padding: 0.5rem 2rem 0.5rem 1.25rem;
	margin-top: -1rem;
	position: relative;
	top: -14px;
}
.tcon03 > div.tnews h3:before{
	content: "";
	display: inline-block;
	width: 38px;
	height: 30px;
	background-image: url(../img/material/icon-img01.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	margin-right: 1rem;
	position: relative;
	top: 5px;
}
.tcon03 > div.tnews ul li a{
	text-decoration: none;
	display:flex;
	flex-wrap:wrap;
	align-items: flex-start;
	font-size:95%;
	padding:1rem 0;
	transition:0.3s;
}
.tcon03 > div.tnews ul li a strong{
	width:145px;
	color:#626262;
	line-height:1.5;
}
.tcon03 > div.tnews ul li a p{
	width:calc(100% - 145px);
	color:#1b6ab0;
	font-weight:600;
	line-height:1.3;
}

@media(max-width:1250px){
	.tcon03 > figure{
		width:40%
	}
	.tcon03 > div.tnews{
		width:55%;
	}
}
@media(max-width:960px){
	.tcon01{
		background-size:auto 100%;
	}
	.tcon01 > div{
		background-size:600px;
		background-position: left 26px top 20px;
	}
	.tcon01 > div > div{
		width:90%;
		min-width:inherit;
		margin:400px auto 0;
		background-image:none;
		background-color:rgba(255,255,255,.75);
		border-radius:35px;
		padding:3rem 3rem 2rem;
	}
	.tcon01 > div > div h3{
		font-size:3vw;
	}
	.tcon03 > figure{
		display:none;
	}
	.tcon03 > div.tnews{
		width:100%;
	}
}
@media(max-width:767px){
	.tcon01 > div > div{
		padding:2rem 0;
	}
	.tcon01 > div > div h3{
		font-size:150%;
		width:265px;
		margin:0 auto;
		text-align:center;
	}
	.tcon01 > div > div h3 span{
		text-align:center;
	}
	.tcon01 > div > div p{
		padding: 2rem;
	}
}
@media(max-width:600px){
	.tcon01 > div{
		background-size:100%;
	}
	.tcon01 > div > div{
		margin-top:64%;
	}
	.tcon03 > div.tnews{
		padding:0 1.5rem 1.5rem;
	}
	.tcon03 > div.tnews ul li a strong{
		width:100%;
		font-size:90%;
	}
	.tcon03 > div.tnews ul li a p{
		width:100%;
		margin-top:0.25rem;
	}
}






















