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

body {
	font-size: 100%; /* 16pt */
	color: #1e1e1e;
	font-family: 'Noto Sans JP';
	background: #ffffff;
	line-height: 1.875;
	word-wrap: break-word;
}

a,
span,
img{
	transition-duration:0.3s;
	-webkit-transition-duration:0.3s;
	-moz-transition-duration:0.3s;
	-o-transition-duration:0.3s;
	-ms-transition-duration:0.3s;
}

a, a:link, a:visited {
	color: #1b82c1;
}

a:hover {
	color: #1b82c1;
}

#top {
	position: relative;
}

#md-site {
}

.container-inner {
	width: auto;
}
	
	.pg-canvas{
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		min-width: 100%;
		min-height: 100%;
		width: auto;
		height: auto;
		z-index: -1;
	}
	.fade-in {
		opacity : 0.0;
		-webkit-transform : translate(0, 50px);
		-moz-transform : translate(0, 50px);
		-o-transform : translate(0, 50px);
		-ms-transform : translate(0, 50px);
		transform : translate(0, 50px);
		-webkit-transition : all 500ms;
		-moz-transition : all 500ms;
		-o-transition : all 500ms;
		-ms-transition : all 500ms;
		transition : all 500ms;
	}
	.scroll-in {
		opacity : 1;
		-webkit-transform : translate(0, 0);
		-moz-transform : translate(0, 0);
		-o-transform : translate(0, 0);
		-ms-transform : translate(0, 0);
		transform : translate(0, 0);
	}



/* HEADER */


#header{
	/*
	width:100%;
	height:60px;
	position:fixed;
	top:0;
	left:0;
	background-color:rgba(255,255,255,0.82);
    border-bottom: 1px solid #000000;
	z-index:3000;
	box-shadow: 0px 4px 4px -4px #666666;
	-webkit-box-shadow: 0px 4px 4px -4px #666666;
	-moz-box-shadow: 0px 4px 4px -4px #666666;
	*/
	position: relative;
	z-index: 3;
	margin: 0;
	display: flex;
	flex-direction: column;
	width: 100%;
}

#header .container-inner {
	position: relative;
	z-index: 3;
}

	#header .h-projectterm{
		font-size: 50%; /* 8px */
		font-family: 'Noto Sans JP';
		order: 2;
	}
	#header .h-projectterm .container-inner{
		margin: 0 15px;
		padding:10px 15px;
		background-color: #efefef;
	}
	#header .h-projectterm .container-inner .projectterm-text,
	#header .h-projectterm .container-inner .projectterm-list,
	#header .h-projectterm .container-inner .projectterm-list > li{
		display: inline-block;
		vertical-align: baseline;
		margin-bottom: 0;
		line-height: 1.5;
		letter-spacing: 0.5pt;
	}
	#header .h-projectterm .container-inner .projectterm-list > li:not(:last-child){
		margin-right: 5px;
	}

#header .primary{
	order: 1;
}
#header .primary,
#md-nav .mdnav-logobox .primary{
	margin-bottom: 10px;
}
#header .primary .inner-wrapper,
#md-nav .mdnav-logobox .primary .inner-wrapper{
	padding: 10px 80px 10px 15px;
}
.h-logo {
	display:block;
	margin-bottom: 0;
	line-height:0;
}
.h-logo a {
	display:inline-block;
	text-decoration:none;
}
.h-logo a:hover{
	filter:alpha(opacity=60); /* IE 6,7*/
	-ms-filter: "alpha(opacity=60)"; /* IE 8,9 */
	-moz-opacity:0.6; /* FF , Netscape */
	-khtml-opacity: 0.6; /* Safari 1.x */
	opacity:0.6;
	zoom:1; /*IE*/
}
.h-logo a img{
	width: auto;
	max-height: 60px;
}
#header .h-subname{
	display: block;
	vertical-align: middle;
    margin-bottom: 0;
	font-size: 62.5%;
	font-family: YuMincho, 'Yu Mincho', 'Hiragino Mincho ProN', 'Noto Serif JP', 'serif';
	font-weight: bold;
	letter-spacing: normal;
	letter-spacing: 0.5pt;
	line-height: 1.5;
}
#header .secondary{
	order: 3;
}
#header .secondary .inner-wrapper{
	padding: 0 15px 10px;
}
#header .h-banner{
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
	margin-bottom: 0;
}
#header .h-banner > li{
	width: 30%;
}
#header .h-banner > li:not(:last-child){
	margin-right: 5%;
}
#header .h-banner > li a{
	display: inline-block;
	text-align: right;
	line-height: 1.2;
	text-decoration: none;
}
#header .h-banner > li a .text{
	display: none;
	color: #8e8e8e;
	font-size: 56.25%; /* 9px */
	font-family: 'Noto Sans JP';
}
#header .h-banner > li a:hover {
	text-decoration:none;
	filter:alpha(opacity=60); /* IE 6,7*/
	-ms-filter: "alpha(opacity=60)"; /* IE 8,9 */
	-moz-opacity:0.6; /* FF , Netscape */
	-khtml-opacity: 0.6; /* Safari 1.x */
	opacity:0.6;
	zoom:1; /*IE*/
}

	/*
#header.mdnav {
	position: fixed;
	height: 80px;
	background-color: rgba(255,255,255,0.9);
}
#header.mdnav .h-projectterm,
#header.mdnav .secondary{
	display: none;
}
	*/



/* FOOTER */

#footer{
}
#footer .container-inner {
	padding: 30px 15px;
}
#footer .f-sign{
	color: #ffffff;
	background-color: #2594cc;
}
#footer .f-bottom{
	background-color: #efefef;
}

#footer .f-project .container-inner {
	padding-top: 10px;
	padding-bottom: 10px;
}
#footer .f-nav .container-inner {
	padding-top: 15px;
	padding-bottom: 15px;
}
#footer .f-bottom .container-inner {
	padding-top: 10px;
	padding-bottom: 10px;
}
	
	
	#footer .fbanner-list{
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		margin-bottom: 10px;
	}
	#footer .fbanner-list > li{
		width: 46%;
		margin-bottom: 10px;
		text-align: center;
	}
	#footer .fbanner-list > li:not(:nth-child(even)):not(:last-child){
		margin-right: 8%;
	}
	#footer .fbanner-list > li:nth-last-child(-n+2){
		margin-bottom: 0;
	}
	#footer .fbanner-list > li:nth-last-child(-n+2):nth-child(even):not(:last-child){
		margin-bottom: 10px;
	}
	#footer .fbanner-list > li a:hover{
		opacity: 0.6;
	}


#footer .f-name{
	margin-bottom: 0;
	line-height: 1.5;
	text-align: center;
}
#footer .f-name a{
	color: #1e1e1e;
	font-size: 75%; /* 12px */
	text-decoration:none;
}
#footer .f-name a:hover {
	filter:alpha(opacity=60); /* IE 6,7*/
	-ms-filter: "alpha(opacity=60)"; /* IE 8,9 */
	-moz-opacity:0.6; /* FF , Netscape */
	-khtml-opacity: 0.6; /* Safari 1.x */
	opacity:0.6;
	zoom:1; /*IE*/
}
#footer .f-admin{
	margin-bottom: 0;
	font-size: 87.5%; /* 14px */
	text-align: center;
}
#footer .f-address{
	margin-bottom: 15px;
	text-align: center;
}
#footer .f-address .f-place,
#footer .f-address .f-tel{
    display: block;
    vertical-align: middle;
	font-size:87.5%;
}
#footer .f-address .f-tel a{
	color: #ffffff;
}
#footer .f-map{
	text-align: center;
}
#footer .f-map a{
	padding: 6px 18px;
	font-size: 87.5%;
	font-family: 'Noto Sans JP';
}
#footer .f-map a:after{
	display: none;
}
	#footer .f-nav .fnav-list{
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		margin-bottom: 0;
		text-align: center;
	}
	#footer .f-nav .fnav-list > li{
		width: 50%;
		margin-bottom: 15px;
		padding: 0 18px;
		letter-spacing: normal;
		line-height: 1.0;
	}
	#footer .f-nav .fnav-list > li:nth-last-child(-n+2){
		margin-bottom: 0;
	}
	#footer .f-nav .fnav-list > li:nth-last-child(-n+2):nth-child(even):not(:last-child){
		margin-bottom: 15px;
	}
#footer .f-nav .fnav-list > li:not(:nth-child(even)){
	border-right: 1px solid #1e1e1e;
}
#footer .f-nav .fnav-list > li a,
#footer .f-nav .fnav-list > li span.not{
	display:inline-block;
	padding:0;
	color: #1e1e1e;
	font-size: 75%;
}
#footer .f-nav .fnav-list > li a:hover{
	filter:alpha(opacity=60); /* IE 6,7*/
	-ms-filter: "alpha(opacity=60)"; /* IE 8,9 */
	-moz-opacity:0.6; /* FF , Netscape */
	-khtml-opacity: 0.6; /* Safari 1.x */
	opacity:0.6;
	zoom:1; /*IE*/
}
#footer .copyright {
	margin: 0;
	font-size: 62.5%; /* 10px */
	text-align:center;
}






/* NAVIGATION */

#nav{
    display: none;
}

#sp-menu {
	position: fixed;
	top: 5px;
	right: 5px;
	z-index: 3500;
	margin-bottom:0;
}

#sp-menu a {
}

#sp-menu .menu {
	float: right;
	width: 60px;
	height: 60px;
}

#sp-menu .tel {
	float: right;
	width: 45px;
	height: 60px;
}

#sp-menu .menu a {
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,0.9);
	position:relative;
}
#sp-menu .tel a {
	display: block;
	width: 100%;
	height: 100%;
	position:relative;
    background-color: #000000;
}

#sp-menu .menu a .inner {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}

	#sp-menu .menu a .icon{
		display: block;
		position: absolute;
		top:35%;
		right: 0;
		left: 0;
		margin:auto;
		width: 25px;
		height: 2px;
		background: #2594cc;
		transition: .2s;
	}
	#sp-menu .menu a .icon:before,
	#sp-menu .menu a .icon:after{
		display: block;
		content: "";
		position: absolute;
		top: 35%;
		margin:auto;
		width: 25px;
		height: 2px;
		background-color: #2594cc;
		transition: .3s;
	}
	#sp-menu .menu a .icon:before{
		margin-top: -10px;
	}
	#sp-menu .menu a .icon:after{
		margin-top: 8px;
	}
	#sp-menu .menu a.close{
		background: transparent;
	}
	#sp-menu .menu a.close .icon{
		background: transparent;
	}
	#sp-menu .menu a.close .icon:before{
		margin-top: 0;
	}
	#sp-menu .menu a.close .icon:after{
		margin-top: 0;
	}
	#sp-menu .menu a.close .icon:before{
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}
	#sp-menu .menu a.close .icon:after{
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
	}

	#sp-menu .menu a .text{
		display: block;
		position: absolute;
		bottom:10%;
		left:0;
		right:0;
		margin:auto;
		color:#2594cc;
		font-size:62.5%;
		font-weight:bold;
		text-align:center;
	}
    
	#sp-menu .tel a .icon{
		display: block;
        width: 100%;
        height: 20px;
		position: absolute;
		top:20%;
		left:0;
		right:0;
		margin:auto;
        text-align: center;
        background-image: url(../images/common/tel_sp.png);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: auto 20px;
    }

	#sp-menu .tel a .text{
		display: block;
		position: absolute;
		bottom:10%;
		left:0;
		right:0;
		margin:auto;
		color:#ffffff;
		font-size:0.64em;
		font-weight:bold;
		text-align:center;
	}



#md-nav {
	position:fixed;
	top:80px;
	right:0;
	bottom:0;
	left:0;
	overflow:auto;
	margin:auto;
	z-index:2000;
	display:none;
	background-color:rgba(255,255,255,0.9);
}
	
	.mdnav-logobox{
		height: 80px;
		position:fixed;
		top:0;
		right:0;
		left:0;
		margin:auto;
		background-color:rgba(255,255,255,0.9);
	}


	.nav-list{
		margin: 30px;
	}
	.nav-list > li{
		padding: 0;
		border-bottom: 1px solid #d0d0d0;
	}
	.nav-list li a{
		color: #000000;
		text-decoration: none !important;
	}
	.nav-list li a:hover,
	.nav-list li.on > a{
		color: #0774aa;
	}
	.nav-list > li > a{
		display: block;
		padding: 10px 10px;
		font-size: 100%; /* 16px */
		font-family: 'Noto Serif JP', 'serif';
		font-weight: bold;
		line-height: 1.5;
		text-decoration: none;
		position: relative;
		box-sizing: border-box;
	}
	.nav-list > li[itemtype="parent"] > a{
		padding-right: 40px;
	}
	.nav-list > li[itemtype="parent"] > a:before{
		content: "";
		display: inline-block;
		width: 24px;
		height: 24px;
		background-color: #0774aa;
		background-image: url("../images/common/anchor-type01_w.png");
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 18px auto;
		position: absolute;
		top: 0;
		right: 10px;
		bottom: 0;
		margin: auto;
		transition-duration: 0.3s;
		z-index: 6000;
		transform: rotate(90deg);
	}
	.nav-list > li[itemtype="parent"].open > a:before{
		transform: rotate(270deg);
	}
	.nav-list > li > a:after{
		content: "";
		display: inline-block;
		width: 6px;
		height: 6px;
		background-color: #0774aa;
		position: absolute;
		right: 0;
		bottom: -2px;
		left: 0;
		margin: auto;
		transition-duration: 0.3s;
		opacity: 0;
		border-radius: 50%;
		z-index: 6000;
	}
	.nav-list > li.open > a:after{
		opacity: 1.0;
	}
	.nav-list > li > .navchild-wrapper{
		display: none;
		position: relative;
		z-index: 6500;
	}
	.nav-list > li > .navchild-wrapper > .navchild-box{
		background-color:rgba(255,255,255,0.85);
	}
	.nav-list > li > .navchild-wrapper > .navchild-box > .inner-wrapper{
		padding: 10px;
		position: relative;
	}
	.nav-list > li .labelbox{
		width: 100%;
		padding-top: 30%;
		margin-bottom: 10px;
		position: relative;
	}
	.nav-list > li .labelbox a{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		padding: 20px;
		color: #ffffff;
		font-size: 100%; /* 16px */
		font-family: 'Noto Sans JP';
		font-weight: bold;
		line-height: 1.5;
		letter-spacing: 0.5pt;
		text-indent: 0.5pt;
		background-image: url("../images/common/nav-img.jpg");
		background-position: center center;
		background-repeat: no-repeat;
		background-size: cover;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto;
	}
	.nav-list > li.support .labelbox a{
		background-image: url("../images/common/nav-img_support.jpg");
	}
	.nav-list > li.ikuboss .labelbox a{
		background-image: url("../images/common/nav-img_ikuboss.jpg");
	}
	.nav-list > li.report .labelbox a{
		background-image: url("../images/common/nav-img_report.jpg?ver=230327");
	}
	.nav-list > li .labelbox a .text{
		position: relative;
		z-index: 1;
	}
	.nav-list > li .labelbox a:before{
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		background-color: rgba(27,130,193,0.7);
		z-index: 0;
	}
	.nav-list > li .labelbox a:hover{
		opacity: 0.6;
	}
	.nav-list > li .listbox{
	}
	.nav-list > li .navchild-list{
		display: flex;
		align-items: flex-start;
		justify-content: flex-start;
		flex-wrap: wrap;
		margin-top: -10px;
		margin-bottom: 0;
		padding-right: 10px;
		padding-left: 10px;
	}
	.nav-list > li .navchild-list > li{
		min-width: 40%;
		margin-top: 10px;
		margin-right: 20px;
	}
	.nav-list > li .navchild-list > li a{
		display: inline-block;
		padding-right: 24px;
		font-size: 87.5%; /* 14px */
		line-height: 1.5;
		transition-duration: 0.3s;
		position: relative;
	}
	.nav-list > li .navchild-list > li .inner:not(a){
		opacity: 0.5;
	}
	.nav-list > li .navchild-list > li a:after,
	.nav-list > li .navchild-list > li .inner:after{
		content: "";
		display: inline-block;
		width: 18px;
		height: 10px;
		background-image: url("../images/common/anchor-type01.png");
		background-position: center center;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		margin: auto;
	}
	.nav-list > li .navchild-list > li.on > a:after,
	.nav-list > li .navchild-list > li a:hover:after{
		background-image: url("../images/common/anchor-type01_c02.png");
	}












/* TITLE */

#title {
	display: flex;
	margin: 0;
	padding-top: 50%;
	background-image: url(../images/common/title-bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	position: relative;
}

#title .title-bg_l,
#title .title-bg_r {
	display: none;
}

#title .title-wrapper {
	display: flex;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

#title .title-box {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	padding: 15px;
	width: 60%;
	height: 100%;
	padding-right: 5%;
	background-color: rgba(194,235,255,0.8);
	clip-path: polygon(0% 0%, 0% 100%, 60% 100%, 100% 0%);
}

	#title .title{
		margin-bottom: 0;
	}
#title .title .en {
	display: inline-block;
	margin-bottom: 10px;
	padding-bottom: 10px;
	color:#1b82c1;
	font-size: 200%; /* 28px */
	font-family: 'Noto Serif JP', 'serif';
	font-weight:bold;
	line-height:1.3;
	position: relative;
}
#title .title .en:after {
	content: "";
	display: inline-block;
	width: 57px;
	height: 1px;
	background-color: #1b82c1;
	position: absolute;
	bottom: 0;
	left: 0;
}

#title .title .ja {
	display: inline-block;
	margin-bottom:0;
	padding-right: 70px;
	font-size: 75%; /* 12px */
	font-family: 'Noto Sans JP';
    letter-spacing: 0.5pt;
	line-height:1.5;
}


/* CONTENT */

#content {
}

#content .container-inner {
	padding: 10px 15px;
}

	#breadcrumb{
		margin-bottom: 30px;
	}
#breadcrumb li{
	display:inline-block;
	vertical-align:middle;
	font-size: 87.5%;
}
#breadcrumb li a{
	color:#1e1e1e;
}
#breadcrumb li.on{
	font-weight:bold;
}

#c-wrapper {
}

#main {
	margin-bottom:50px;
}

#side {
	padding:10px;
}

#content #side #snav {
	padding:0 10px;
}

.section {
	margin-bottom: 50px;
}

.section-s {
	margin-bottom: 30px;
}

.section-ss {
	margin-bottom: 20px;
}

.section-sss {
	margin-bottom: 15px;
}

.pagetop {
	position:fixed;
	bottom:10px;
	right:10px;
	margin: 0;
	z-index:5000;
}

.pagetop a {
	display:block;
	line-height:0;
	text-decoration:none;
}
.pagetop a:hover{
	filter:alpha(opacity=60); /* IE 6,7*/
	-ms-filter: "alpha(opacity=60)"; /* IE 8,9 */
	-moz-opacity:0.6; /* FF , Netscape */
	-khtml-opacity: 0.6; /* Safari 1.x */
	opacity:0.6;
	zoom:1; /*IE*/
}

.inlink{
	margin-top:-65px;
	padding-top:65px;
}


/* SNAV */
	#side .side-box{
		margin-bottom: 30px;
	}
#snav .title-snav{
	padding:5px 5px 3px;
	color: #ffffff;
	font-size: 1.2em;
	letter-spacing: 4pt;
	text-indent: 4pt;
	text-align: center;
	background-color: #f18c27;
}
#snav .snav-list > li > a{
	display:block;
	padding: 10px 10px 6px 36px ;
	color: #000000;
	font-weight: bold;
	background-image:url(../images/common/anchor-type02.png);
	background-position:24px 16px;
	background-repeat:no-repeat;
	background-size:7px 12px;
	border-bottom: 1px solid #969696;
}
#snav .snav-list > li.on > a,
#snav .snav-list > li > a:hover{
	color: #f08b26;
	background-image:url(../images/common/anchor-type01.png);
}


/* SUBNAV */

#subnav{
	margin-bottom:15px;
	border-bottom: 1px solid #e7882b;
}
#subnav .subnav-list{
	letter-spacing:-.4em;
}
#subnav .subnav-list > li{
	display:inline-block;
	vertical-align:middle;
	letter-spacing:normal;
}
#subnav .subnav-list > li > a{
	display:block;
	margin:0 5px 5px;
	padding:5px 5px 5px 15px;
	font-size: 0.9285em;
	font-weight: bold;
	line-height:1.0;
	text-align:center;
	text-decoration:none;
	background-image:url(../images/common/anchor-type01.png);
	background-position:5px 6px;
	background-repeat:no-repeat;
	background-size: 7px 12px;
	border-bottom: 2px solid transparent;
}
#subnav .subnav-list > li.on > a,
#subnav .subnav-list > li > a:hover{
	border-bottom-color:#e7882b;
}

.search-box{
	width: 100%;
	margin-top: 15px;
}
.search-box form{
	vertical-align:middle;
    text-align: center;
}
.search-box .inner-box{
    position: relative;
}
.search-box .search-input{
    width: 100%;
    padding: 6px 8px;
    border: 1px solid #9fa0a0;
}
.search-box .search-btn{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10px;
    margin: auto;
}

.search-box form .search-input{
	width: 100%;
	padding: 5px 60px 5px 10px;
	line-height:1.0;
}
.search-box form .search-btn{
    display: inline-block;
    vertical-align: middle;
}
.search-box form .search-btn:hover{
	text-decoration:none;
	filter:alpha(opacity=60); /* IE 6,7*/
	-ms-filter: "alpha(opacity=60)"; /* IE 8,9 */
	-moz-opacity:0.6; /* FF , Netscape */
	-khtml-opacity: 0.6; /* Safari 1.x */
	opacity:0.6;
	zoom:1; /*IE*/
}





}
