@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700');

/*********************************************************************
 * 共通
*********************************************************************/
html,body {
	width: 100%;
	height: 100%;
}

body {
	color: #000;
	letter-spacing: 0.1em;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	background-color: #fff;
}
img.cover {
	width: 100%;
	height: auto;
}
img.borderRadius {
	border: 1px solid #777;
	border-radius: 6px;
	box-sizing: border-box;
	transition: all 0.15s ease;
}

a.selected img.borderRadius,
a:hover img.borderRadius {
	border-color: #0074be;
	transition: all 0.5s ease;
}
img.icon {
	width: auto;
	height: 1em;
	vertical-align: middle;
}
.hide,
.dispNarrow {
	display: none;
}
.dispWide {
	display: block;
}
.deactive {
	opacity: 0.6;
	pointer-events: none!important;
}
@media screen and (max-width: 800px) {
	.dispNarrow {
		display: block;
	}
	.dispWide {
		display: none;
	}
}
/*レスポンシブ外枠指定*/
#container {
	position: relative;
	height: 100%;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	box-sizing: border-box;
}
/*高さ確認用*/
#container.guide::before {
	display: block;
	content: "高さ：1080pxの領域";
	position: absolute;
	top: 0;
	left: 50%;
	width: 100%;
	height: 90vw;
	max-height: 1080px;
	color: #f00;
	background-color: rgba(255,0,0,0.1);
	border: 1px solid #f00;
	box-sizing: border-box;
	transform: translateX(-50%);
	z-index: -1;
}
#container > .widthWrapper {
	width: 90%;
	margin: 0 auto;
}
@media screen and (max-width: 800px) {
	#container > .widthWrapper  {
		width: 96%;
	}
}
/*flexbox指定*/
.flexBlock {
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	flex-direction: row;
	flex-shrink: 0;
	list-style: none;
	margin: 0 auto;
}
.flexAround {
	justify-content: space-around;
}
.flexBetween {
	justify-content: space-between;
}
.flexStart {
	justify-content: flex-start;
}
.flexEnd {
	justify-content: flex-end;
}
.flexSplit > div,
.flexSplit > li {
	width: 49%;
}
.flexList3 > li,
.flexList3 > div {
	position: relative;
	width: 30%;
	margin-left: 1.666666%;
	margin-right: 1.666666%;
}
.flexList3 > li.wide,
.flexList3 > div.wide {
	width: 96.666666%;
}
.flexStart.flexList3 > li,
.flexStart.flexList3 > div {
	margin-left: 0;
	margin-right: 3.333333%;
}
.flexList3 > div.toggleContents {
	width: 100%;
	margin-left: 0;
	margin-right: 0;
}
.flexList5 > div,
.flexList5 > li {
	position: relative;
	width: 18%;
}
.flexList5 > div.wide {
	width: 80%;
	margin-left: auto;
}
.flexStart.flexList5 > li:not(:nth-child(5n + 1)) {
	margin-left: 2.5%;
}
.flexInput > div {
	width: 22.5%;
	box-sizing: border-box;
}
.flexInput > div + div {
	width: 77.5%;
	padding-left: 1.666666%;
	box-sizing: border-box;
}
@media screen and (max-width: 800px) {
	.flexSplit > div,
	.flexSplit > li,
	.flexList3 > div.flexList3wideSp,
	.flexList3 > div.toggleContents,
	.flexList3 > li.wide,
	.flexList3 > div.wide {
		width: 100%!important;
	}
	.flexList3 > li,
	.flexList3 > div,
	.flexList5 > li {
		width: 48%!important;
		margin-left: 1%;
		margin-right: 1%;
	}
	.flexStart.flexList3 > li,
	.flexStart.flexList3 > div {
		margin-left: 0;
		margin-right: 2%;
	}
	.flexList3 > li:nth-child(n + 3),
	.flexList3 > div:nth-child(n + 3) {
		margin-top: 1em;
	}
	.flexStart.flexList5 > li:not(:nth-child(5n + 1)) {
		margin-left: 0;
	}
	.flexStart.flexList5 > li:not(:nth-child(2n + 2)) {
		margin-right: 2%;
	}
	.flexList5 > div,
	.flexList5 > div.wide {
		width: 100%;
	}
	.flexInput > div {
		width: 100%;
	}
	.flexInput > div + div {
		width: 100%;
		padding-left: 0%;
	}
}
/*********************************************************************
 * FONT
*********************************************************************/
.alignCenter {
	text-align: center;
}
.alignCenter > .blockCenter {
	display: inline-block;
}
.alignRight {
	text-align: right;
}
.alignLeft {
	text-align: left;
}
a {
	color: #0074be;
	text-decoration: underline;
	transition: all 0.15s ease;
}
a:hover {
	color:#001929;
	transition: all 0.5s ease;
}
a.textNoBorder,
a.textNoBorder:hover {
	color: #000;
	text-decoration: none;
}
a img {
	opacity: 1;
	transition: all 0.15s ease;
}
a:hover img {
	opacity: 0.7;
	transition: all 0.5s ease;
}
.textWhite {
	color: #fff;
}
.textRed {
	color: #b22222;
}
.textBlack {
	color: #000;
}
.textLightGray {
	color: #b5b5b5;
}
.textGray {
	color: #7c7c7c;
}
.textBlue {
	color: #0074be;
}
.bgWhite {
	background-color: #fff;
}
.bgBlue {
	background-color: #0074be;
}
.textNormal {
	font-weight: 400;
}
.textBold {
	font-weight: 700;
}
.lineHeight100 {
	line-height: 1;
}
.lineHeight125 {
	line-height: 1.25;
}
.lineHeight150 {
	line-height: 1.5;
}
.lineHeight175 {
	line-height: 1.75;
}
.lineHeight200 {
	line-height: 2;
}
.text0 {
	font-size: 0;
}
.text12 {
	font-size: 12px;
}
.text14 {
	font-size: 14px;
}
.text16 {
	font-size: 16px;
}
.text18 {
	font-size: 18px;
}
.text24 {
	font-size: 24px;
}
.text28 {
	font-size: 28px;
}
@media screen and (min-width: 801px) and (max-width: 1200px) {
	.text12 {
		font-size: 1vw;
	}
	.text14 {
		font-size: 1.166666vw;
	}
	.text16 {
		font-size: 1.32vw;
	}
	.text18 {
		font-size: 1.5vw;
	}
	.text24 {
		font-size: 2vw;
	}
	.text28 {
		font-size: 2.333333vw;
	}
}
@media screen and (max-width: 800px) {
	.text12 {
		font-size: 3vw;
	}
	.text14 {
		font-size: 4vw;
	}
	.text16 {
		font-size: 4.2vw;
	}
	.text18 {
		font-size: 4.5vw;
	}
	.text24 {
		font-size: 5vw;
	}
	.text28 {
		font-size: 5vw;
	}
}
/* 上方向間隔調整 */
.marginTop0 {
	margin-top: 0!important;
}
.marginTopQuarter {
	margin-top: 0.25em!important;
}
.marginTopHalf {
	margin-top: 0.5em!important;
}
.marginTop1 {
	margin-top: 1em!important;
}
.marginTop1half {
	margin-top: 1.5em!important;
}
.marginTop2 {
	margin-top: 2em!important;
}
.marginTop3 {
	margin-top: 3em!important;
}
.marginTop4 {
	margin-top: 4em!important;
}
.marginTopN1{
	margin-top: -1em!important;
}
.paddingBottom1 {
	padding-bottom: 1em;
}
.paddingVerticalHalf {
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}
.paddingVertical1 {
	padding-top: 1em;
	padding-bottom: 1em;
}
.paddingVertical2 {
	padding-top: 2em;
	padding-bottom: 2em;
}
.paddingVertical3 {
	padding-top: 3em;
	padding-bottom: 3em;
}
.paddingVertical4 {
	padding-top: 4em;
	padding-bottom: 4em;
}
.paddingHorizontalHalf {
	padding-left: 0.5em;
	padding-right: 0.5em;
}
.paddingHorizontal1 {
	padding-left: 1em;
	padding-right: 1em;
}
.paddingHorizontal1half {
	padding-left: 1.5em;
	padding-right: 1.5em;
}
.paddingHorizontal2 {
	padding-left: 2em;
	padding-right: 2em;
}
/*textDecoration*/
.titleWithBorder {
	padding-left: 0.25em;
	padding-right: 0.25em;
	margin-bottom: 0.25em;
	border-bottom: 1px solid #0074be;
}
.titleWithColor {
	padding-left: 0.5em;
	padding-right: 0.5em;
	box-sizing: border-box;
}
.textWithQicon {
	display: block;
	padding-left: 1.5em;
	padding-right: 1.5em;
}
.textAttention,
.attentionList > li {
	display: block;
	text-indent: -1em;
	margin-left: 1em;
}
.textIndent {
	padding-left: 1em;
}
@media screen and (max-width: 800px) {
	.textIndent {
		padding-left: 0;
	}
}
.toggleBtn {
	width: 100%;
}
.toggleBtn > span {
	display: inline-block;
	padding-right: 2em;
	background-image: url("../images/_svg/arrowWhiteDown.svg");
	background-position: center right 0.25em;
	background-repeat: no-repeat;
	background-size: 1em auto;
}
.toggleBtn.open > span {
	background-image: url("../images/_svg/arrowWhiteUp.svg");
}
.toggleBtn.alignCenter > span {
	padding-right: 1.75em;
	background-position: center right;
}
.btn {
	display: block;
	width: 100%;
	color: #fff;
	background-color: #0074be;
	text-decoration: none;
}
.btn.deactive {
	opacity: 1;
	background-color: #b5b5b5;
}
.btn.btnNarrow,
.btn.toggleBtn {
	position: relative;
	width: 30%;
	margin-left: auto;
	margin-right: auto;
}
.btn > button {
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	background-color: transparent;
	border: none;
	outline: navy;
}
@media screen and (max-width: 800px) {
	.btn.btnNarrow {
		width: 100%;
	}
	.btn.toggleBtn {
		width: 75%;
	}
	/*
	.flexList3 > .flexList3wideSp.btn.toggleBtn {
		width: calc(75% + 1em);
		margin-left: calc(12.5% - 0.5em);
		margin-right: calc(12.5% - 0.5em);
	}
	*/
}
.tableWrapper {
	width: 100%;
	overflow-y: scroll;
}
.tableWrapper table {
	width: 100%;
	box-sizing: border-box;
}
.tableWrapper table tr.bgWhite {
	border-top: 1px solid #333;
}
.tableWrapper table tr th,
.tableWrapper table tr td {
	white-space: nowrap;
}
@media screen and (max-width: 800px) {
}
/*********************************************************************
 *FORM
*********************************************************************/
input[type="text"].wide {
	max-width: 90%;
	margin-left: 5%;
	margin-right: 5%;
}
input[type="range"] {
	margin-left: 1em;
	margin-right: 1em;
}
input[type="text"] + span.inputUnit {
	display: inline-block;
	margin-left: 1em;
}
input.tabletext {
	font-family: 'Noto Sans JP', sans-serif;
	width: 100%;
	border: none;
	background-color: transparent;
	box-sizing: border-box;
}
/*
input[type="button"] {
	background-color: transparent;
	border: none;
	outline: none;
	cursor: pointer;
}
input[type="button"].btnDel {
	width: 1.25em;
	height: 1em;
	background-image: url("../images/_svg/iconsDel.svg");
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 1em auto;
}
input[type="button"].btnSort {
	padding-left: 0.25em;
	padding-right: 1.75em;
	background-image: url("../images/_svg/arrowBlackSort.svg");
	background-position: right 0.25em center;
	background-repeat: no-repeat;
	background-size: auto 1.25em;
	box-sizing: border-box;
}
select {
	width: 100%;
	padding: 0.25em 2em 0.25em 0.25em;
	appearance: none;
	background-image: url("../images/_svg/arrowBlackDown.svg");
	background-position: center right 0.75em;
	background-repeat: no-repeat;
	background-size: 1em auto;
	box-sizing: border-box;
	outline: none;
}
*/
input[type="text"]:disabled,
select:disabled {
	color: #000;
	background-color: transparent;
	background-image: none;
	border: none;
}
.textRange {
	display: inline-block;
	min-width: 4em;
}

div#header {
	background-color:#fff;
	box-sizing: border-box;
	z-index: 9999;
}
div#body {
	z-index: 99;
}
/*header*/
header > h1 {
	width: 40%;
	color: #b5b5b5;
	box-sizing: border-box;
}
header > div {
	width: 50%;
	height: 2em;
	box-sizing: border-box;
}
@media screen and (max-width: 800px) {
	div#header {
		width: 96%;
		position: fixed;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	header > h1 {
		width: 50%;
	}
	header > div {
		width: 50%;
	}
	header > div > p {
		max-width: 44px;
		width : 14%;
	}
	header > div > p > svg{
		width : 100%;
		vertical-align: middle;
	}
}
/*footer*/
footer {
	/*border-top: 1px solid #0074be;*/
}
footer address {
	color: #ccc;
	font-style: normal;
}
/*kv*/
.kv {
	width: 100%;
	padding: 3em 1.5em;
	background-image: url("../images/bgKv.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	box-sizing: border-box;
}
@media screen and (max-width: 800px) {
	.kv {
		padding: 1.5em;
	}
}
/*popup*/
a + .questionimg {
	position: absolute;
	right: 0;
	bottom: 0;
}

/*********************************************************************
 * 共通ページコンテンツ
*********************************************************************/
.print {
	display:none;
}

.s_button {
    text-decoration: none;
    background-image: linear-gradient(#fff,#f5f8fa);
    border: 1px solid #e6ecf0;
    border-radius: 4px;
    color: #393e42;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
/*    font-weight: bold;　*/
    padding: 8px 14px;
    position: relative;
    text-align: center;
 }

 .borderTopblue{
	 border-top: 200px;
	 border-color:#2874BE;
 }

.s_button:hover{
    background-color: #e6ecf0;
    background-image: linear-gradient(#fff,#e6ecf0);
    border-color: #e6ecf0;
}
/* modal window */
#lean_overlay{
	position: fixed; z-index:9999;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
	background: #000;
	display: none;
}
.modalEditWindow {
	width: 800px;
	padding: 2em;
	box-sizing: border-box;
}
.modalEditWindow2 {
	width: 800px;
	padding: 1.0em 0.5em;
	box-sizing: border-box;
}
.modalEditWindow textarea.editbox {
	border: 1px solid #d0d0d0;
	box-sizing: border-box;
	height: 18vh;
	width: 100%;
	padding: 0.5em;
	font-size: 16px;
}
.editBtn > button {
	width: 40%;
	display: block;
	color: #fff;
	text-decoration: none;
	border: none;
	padding: 0.2em 1em;
}
@media screen and (max-width: 800px) {
	.modalEditWindow {
		width: 98%;
	}
	.modalEditWindow2 {
		width: 98%;
	}
}
.btnBlue {
	background-color: #0074be;
}
.btnGray{
	opacity: 1;
	background-color: #b5b5b5;
}
