@charset "utf-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&display=swap&subset=japanese");

/* CSS初期化のスタイルを記載 */
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, font, 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, section, article, aside, hgroup, header, footer, nav, dialog, figure, menu, video, audio, mark, time, canvas, details, input, textarea, select {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic Std", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
section, article, aside, hgroup, header, footer, nav, dialog, figure, figcaption {
	display: block;
}
html {
	overflow: auto;
}
body {
	font-size: 14px;
	line-height: 1.4;
	-webkit-text-size-adjust: 100%;
	-webkit-print-color-adjust: exact;
	color: #000;
	min-width: 1000px;
	
}
body * {
	font-family: 'Noto Sans JP', sans-serif;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	
}
ol, ul {
	list-style: none;
}
b {
	font-weight: 600;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
:focus { /* remember to define focus styles! */
	outline: 0;
}
ins { /* remember to highlight inserts somehow! */
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
table { /* markup tables with 'cellspacing="0"' */
	border-collapse: collapse;
	border-spacing: 0;
}

/* Clearfix */
.clr:after {
	content : '';
	display : block;
	clear : both;
	height:0;
}

/* display:none; */
.disnone {
	display: none;
}
a {
	text-decoration: none;
	display: block;
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
a:hover {
	opacity: 0.7;
}
img {
	display: block;
	height: auto;
	max-width: 100%;
}

.navy {
	background-color: #284899;
}

.light {
	background-color: #ecf2ff;
}
.logo a {
	display: inline-block;
}

/* -----------------------------------------------------
 header
----------------------------------------------------- */

header {
	padding: 15px 30px 20px;
	-webkit-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.1);
	box-shadow:         0px 3px 5px 0px rgba(0, 0, 0, 0.1);
	/* mix-blend-mode: multiply; */
}
header .socialLinks {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
header ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
header ul.btn li + li {
	margin-left: 15px;
}
header ul.btn a {
	padding: 6px 30px 6px 30px;
	border: 1px solid #8f8f8f;
	border-radius: 20px;
	color: #666;
	font-size: 13px;
	position: relative;
}
header ul.btn a:before {
	content: "";
	position: absolute;
	right: 20px;
	bottom: 50%;
	width: 8px;
	height: 10px;
	-webkit-transform: translateY(50%);
	    -ms-transform: translateY(50%);
	        transform: translateY(50%);
	background-image: url(../img/icon_arrow_right.png);
	background-repeat: no-repeat;
	background-size: 8px 10px;

}
header ul.socials {
	margin-left: 25px;
}
header ul.socials img {
	width: 30px;
}
header ul.socials li + li {
	margin-left: 10px;
}

@media print, screen and (min-width: 751px) {
	header .logo a:hover,
	header ul li a:hover {
		opacity: 0.7;
	}
}
@media screen and (max-width: 750px) {

	header .logo {
		width: 50px;
	}
	header .logo .mono {
		display: none;
	}
	
	header.active .logo .mono {
		display: block;
	}
	header.active .logo > a:not(.mono) {
		display: none;
	}
	header #btnMenu {
		width: 60px;
		height: 75px;
		background-image: url(../img/sp/icon_menu.png);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		/* transition: 0.5s ease-in-out; */
	}
	header.active #btnMenu {
		background-image: url(../img/sp/icon_close.png);
	}
	header {
		/* display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center; */
		padding: 10px 15px 13px;
		/* position: fixed;
		top: 0;
		width: 100%;
		left: 0;
		background-color: #fff;
		z-index: 5; */
	}
	/* header ul.socials {
		position: relative;
	} */
	/* header ul.socials:before {
		content: 'SHARE:';
		font-weight: bold;
		font-size: 20px;
		color: #000;
		position: absolute;
		top: -27px;
		left: 0;
		opacity: 0;
	} */
	/* header.active ul.socials:before {
		opacity: 1;
	} */
	/* header .socialLinks {
		-webkit-box-align: end;
		    -ms-flex-align: end;
		        align-items: flex-end;
		-webkit-box-flex: 1;
		    -ms-flex: 1 1 auto;
		        flex: 1 1 auto;
	} */
	header {
		position: relative;
	}
	header ul.socials li + li {
		margin-left: 10px;
	}
	header ul.socials {
		position: absolute;
		top: 15px;
		right: 15px;
	}
	header ul.socials li {
		width: 30px;
	}
	header ul.btn {
		margin-top: 10px;
		width: calc(100% + 5px);
		margin-left: -2.5px;
		margin-right: -2.5px;
	}
	header ul.btn li + li {
		margin-left: 0px;
	}
	header ul.btn li {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 50%;
		        flex: 0 0 50%;
		max-width: 50%;
		width: 50%;
		padding-left: 2.5px;
		padding-right: 2.5px;
	}
	header ul.btn {
		/* max-width: 350px; */
		margin: 10px auto 0;
	}
	header ul.btn li {
		padding-left: 0;
		padding-right: 0;
	}
	header ul.btn a {
		/* font-size: 8px;
		padding: 8px 10px;
		text-align: center; */
		font-size: 0;
		border: none;
		padding: 0 2.5px;
	}
	header ul.btn a:before {
		/* right: 7px;
		width: 7px;
		height: 9px;
		background-size: 7px 9px; */
		display: none;
	}
	/* header .btnMenu {
		padding-left: 30px;
		position: relative;
		margin-left: 30px;
	}
	header .btnMenu:before {
		content: '';
		position: absolute;
		height: 122px;
		width: 1px;
		background-color: rgba(0, 0, 0, 0.1);
		top: -20px;
		left: 0;
	} */
	header .monoContent {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 100%;
		        flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
		margin-top: 22px;
		padding: 120px 0 70px;
		position: relative;
		display: none;
	}
	header.active .monoContent {
		/* display: block; */
	}
	header .monoContent:before {
		content: '';
		position: absolute;
		width: 100vw;
		left: 50%;
		-webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		        transform: translateX(-50%);
		top: 0;
		height: 3px;
		-webkit-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.1);
		        box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.1);
	}
	.monoContent .text {
		font-size: 28px;
		color: #222;
		font-weight: bold;
		padding-left: 30px;
		padding-right: 20px;
	}
	.monoContent .text p {
		position: relative;
		padding-left: 55px;
		margin-bottom: 70px
	}
	.monoContent .text p:before {
		content: '';
		position: absolute;
		background-color: #00479d;
		width: 32px;
		height: 32px;
		border-radius: 50%;
		top: 50%;
		-webkit-transform: translateY(-50%);
		    -ms-transform: translateY(-50%);
		        transform: translateY(-50%);
		left: 0;


	}
	.monoContent .textLink {
		font-size: 28px;
		color: #222;
		font-weight: bold;
	}

	.monoContent .textLink a {
		height: 120px;
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		background-color: #dcdcdc;
		color: #222;
		font-weight: bold;
		position: relative;
		
	}
	.monoContent .textLink a + a {
		margin-top: 30px;
	}
	.monoContent .textLink a:after {
		content: '';
		position: absolute;
		right: 0;
		bottom: 0;
		width: 128px;
		height: 26px;
		background-image: url(../img/sp/img_dummy_mono.png);
		background-size: 128px 26px;
		background-repeat: no-repeat;
	}
}

/* -----------------------------------------------------
 footer
----------------------------------------------------- */
footer {
	text-align: center;
	padding: 20px 20px 15px;
	font-size: 10px;
	color: #969696;
	background-color: #f0f0f0;

}
footer img {
	margin: 0 auto;
}
/* @media screen and (max-width: 750px) {
	footer {
		padding: 50px 30px 60px;
		font-size: 20px;
		
	}
	footer p.copyRight {
		margin-top: 40px;
	}
} */

@media screen and (max-width: 750px) {
	footer {
		padding: 25px 15px 30px;
		font-size: 10px;
		
	}
	footer p.copyRight {
		margin-top: 0;
	}
	footer .logo img {
		width: 37px;
	}
}

/* 
wrapper
---------------------------------------------------------------- */

#wrapper {
	min-width: 1000px;
}

#pageContainer{
	overflow: hidden;
}

/*
inner
----------------------------------------------------- */
@media print, screen and (min-width: 751px) {
	.inner {
		max-width: 1000px;
		margin: 0 auto;
		position: relative;
	}
}
/*
btn-top
----------------------------------------------------- */
.btn-top {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 30px;
	z-index: 100;
	cursor: pointer;
}
@media screen and (min-width: 751px) {
	.btn-top:hover {
		opacity: 0.7;
	}
}
@media screen and (max-width: 750px) {
	.btn-top {
		bottom: 20px;
		width: 40px;
		right: 4%;
	}
}
/*
listAbout
----------------------------------------------------- */
.listAbout {
	text-align: center;
	line-height: 1.8;
	margin-bottom: 53px;
}
.listAbout dt {
	font-weight: bold;
	font-size: 16px;
	margin-bottom: 15px;
}
.listAbout dd {
	margin-bottom: 6px;
}
@media screen and (max-width: 750px) {
	.listAbout dt {
		font-size: 13px;
	}
	.listAbout dd {
		font-size: 12px;
	}
}
/*.cateList a {
	box-shadow: 0 0 5px rgba(0,0,0,0.2);
    -webkit-transition: all 300ms ease-in-out;
    -moz-transition: all 300ms ease-in-out;
    -ms-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}
.cateList a:hover {
	box-shadow: 0 0 10px rgba(0,0,0,0.7);
}
.cateList a:hover img {
	opacity: 1;
}*/