@charset "UTF-8";/**/

/* 共通*/


.header23 {
	background: #ffffff;
	display:block;
	box-sizing: border-box;
	margin:0 0 0 0;
	padding:0 0 0 0;
}

.header23 figure{
	padding:0 0 0 0;
	margin:0 0 0 0;
}


.header23 img {	display: block;}

.header23 #pageDescription{	/* 上部画面説明 */
	width:100%;
	padding-bottom:10px;
}

.header23 a,.header23 a:hover {	text-decoration: none;}

#headerWelcome span{
	background-image: url("../img/header_icn-mypg.png");
	background-position:left center;
	background-repeat:no-repeat;
}

#headerLogout a {
	background-image: url("../img/header_icn-lgout.png");
	background-repeat:no-repeat;
	background-position:left center;
	display:block;
	padding:5px 0  ;
}

#headerHelp{	border-radius:50%;}

#headerPoweredBy{
	display:flex;
	align-items:top;
	width:100%;
	justify-content:flex-end;
}


#headerNoLogo {	display:table;}

#headerNoLogo a{
	color:#000000;
	display:table-cell;
	font-weight:bold;
}

/* END 共通 */


/*--------------------------------------------------------------------------------------------------------------*/
@media screen and (min-width: 981px) {

	.header23 {
		border-bottom: 2px solid #27969e;
	}

	.header23 .inner {
		margin: 0 auto;
		padding: 15px 0 5px;
		width: 980px;
		margin:0 auto;
		position: relative;
	}


	#headerLogo {
		width: 300px;
		height: 80px;
		margin:0 10px 0 0;
		padding:0 0 0 0;
		display:table;
	}

	#headerNoLogo {
		width: 400px;
		min-height: 80px;
		margin:0 0px 0 0;
		padding:0 0 0 0;
	}

	#headerNoLogo a{
		font-size:25px;
	}

	#headerLogo figure img{/*22.03.14追記*/
		object-fit: contain;
		object-position: left;
	}



	#headerSub{
		display: flex;
		justify-content: flex-end;
		align-items: flex-start;
		width:650px;
		padding:0 0 0 0 ;
		margin:0 0 0 0;
		position:absolute;
		top: 30px;
		left: 330px;
	}

	#headerWelcome {
		width: 330px;
		margin-right: 20px;
		display: flex;
		justify-content: flex-end;
		padding: 10px 0 10px;
	}


	#headerWelcome span{
		background-size: 22px;
		background-position:left 3%;
		line-height: 1.2;
		padding:6px 0 4px 30px;
		text-align:left;
		font-size: 13px;
	}


	.header23 nav{
		width:300px;
	/*! display:flex; */
		align-items: center;
		justify-content: space-between;
	}


	.header23 nav ul{
		font-size: 14px;
		line-height: 14px;
		padding:0 0 0 0;
		margin:0 0 0 0;
		display:flex;
		justify-content:flex-end;
		align-items: center;
	}

	#headerMyPage{
		width:140px;
		padding:7px 0;
		display:block;
		margin-right:20px;
		position: relative;
	}

	#headerMyPage div{	/* マイページボタン */
		text-align:center;
		width:100%;
		padding:6px 0 5px;
		line-height: 1.3;
		border:2px solid #27969e;
	}


	#headerMyPage .iconNotice{
		position:absolute;
		width:22px;
		top:0;
		right:2px;
		display:block;
		border-radius: 50%;
	}

	#headerLogout {
		width:100px;
		text-align:left;
		margin-right:10px;
		padding:10px 0;
	}

	#headerLogout a {
		padding-left: 28px;
		font-size: 14px;
	}

	#headerHelp{
		width:22px;
		display:block;
	}

	#headerHelp img{
		width:100%;
		display:block;
	}


	#headerPoweredBy{
		display:flex;
		align-items:top;
		width:300px;
		justify-content:flex-end;
		margin-top:-15px;
		font-size:12px;
		position: absolute;
		right: 0;
		bottom: 10px;		
	}

	#headerPoweredBy figure{
		width:125px;
		margin-left:5px;
	}


}/* END min 981 (PC) */



/*--------------------------------------------------------------------------------------------------------------*/
@media only screen and (min-width:600px) and (max-width:980px){

	.header23 {
		border-bottom: 0.8vw solid #27969e;
		left: 0;
		position: fixed;
		top: 0;
		width: 100%;
		height: 23vw;
	    z-index:10;
	}

	.header23 .inner {
		display:flex;
		flex-wrap: wrap;
		align-items:flex-end;
		overflow: hidden;
		padding: 2vw;
		position: relative;
		justify-content: space-between;
	}

	.header23 #pageDescription{
		font-size:1.8vw;
		margin-bottom:0;
		order:0;
		padding-bottom: 0;
		width: 80vw;
	}

	#headerLogo {
		width: 33vw;
		padding:0;
		order:1;
		display:table;
	}

	#headerLogo a{
		display:table-cell;
		vertical-align:middle;
		height: 9vw;
	}

	#headerLogo figure img{/*22.03.14追記*/
		height: 8.5vw;
		object-fit: contain;
		object-position: left;
	}

	#headerNoLogo {
		width: 60vw;
		order:1;
		margin: 0 0 0 0;
		padding: 0 0 0 0;
		display:table;
	}

	#headerNoLogo a{
		font-size:2.6vw;
		line-height: 1.3;
		display:table-cell;
		vertical-align: middle;
		overflow: hidden;
		padding: 0;
		height: 9vw;
	}

	#headerSub {
		order:3;
		width:100%;
		display:flex;
		align-items: center;
		justify-content: space-between;
		border-top:1px solid #cccccc;
		padding-top:0.7vw;
	}

	#headerWelcome {
		width:80vw;
	}

	#headerWelcome span {
		display: inline-block;
		background-size:2.8vw;
		padding:1.3vw 1vw 1vw 3.5vw;
		font-size:2vw;
		box-sizing: border-box;
		line-height: 1.3;
	}


	.header23 nav{
		order:4;
	}

	.header23 nav ul{
		display:flex;
		align-items: center;
		justify-content: space-between;
	}

	#headerMyPage{
		width:20vw;
		padding:0.6vw 0;
		position:relative;
		display:block;
		margin-right:0;
	}

	#headerMyPage div{	/* マイページボタン */
		text-align:center;
		width:100%;
		padding:0.4vw 0 0.4vw;
		border:1px solid #27969e;
		font-size:2vw;
	}

	#headerMyPage .iconNotice{
		position:absolute;
		width:3.2vw;
		top:0;
		right:4px;
		display:block;
		border-radius: 50%;
	}

	#headerLogout {		display: none;	}

	#headerHelp{
		width:4.6vw;
		display:block;
		position:fixed;
		top:3.5vw;
		right:11vw;
	}

	#headerPoweredBy{
		display:flex;
		width:30vw;
		order:2;
		align-items:top;
		justify-content:flex-end;
		padding-right:0;
	}

	#headerPoweredBy span{
		font-size:1.4vw;
	}

	#headerPoweredBy figure{
		width:13vw;
		margin-left:0.5vw;
	}

}

/*--------------------------------------------------------------------------------------------------------------*/
@media only screen and (min-width:600px) and (max-width:980px) and (orientation: landscape){

	.header23 {
		border-bottom: 0.5vw solid #27969e;
		height: 21vw;
	}

	.header23 #pageDescription{
		font-size:1.5vw;
	}

	#headerLogo {
		width: 28vw;
		order:1;
		display:table;
	}

	#headerLogo figure img{/*22.03.14追記*/
		height: 8.5vw;
		object-fit: contain;
		object-position: left;
	}



	#headerHelp{
		width:5vw;
		top:3vw;
		right:13vw;
	}

	#headerWelcome {
		width:62vw;
	}

	#headerWelcome span {
		background-size:2.4vw;
		padding:1vw 1vw 0.8vw 3vw;
		font-size:2vw;
		box-sizing: border-box;
	}



	#headerMyPage{
		width:20vw;
		padding:0.6vw 0;
		margin-right:2vw;
	}

	#headerMyPage div{	/* マイページボタン */
		font-size:1.8vw;
	}

	#headerMyPage .iconNotice{
		width:3.2vw;
	}


	#headerPoweredBy{
		align-items:top;
		padding-right:1.5vw;
		margin-top:-1vw;
	}

	#headerPoweredBy span{
		font-size:1.2vw;
	}

	#headerPoweredBy figure{
		width:10vw;
		margin-left:0.5vw;
	}

}



/*---------------------------------------------------------------------------------------------------------------*/

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

	.header23 {
		border-bottom: 1vw solid #27969e;
		left: 0;
		position: fixed;
		top: 0;
		width: 100%;
		height: 36vw;
	    z-index:10;
	}

	.header23 .inner {
		display:flex;
		flex-wrap: wrap;
		align-items:flex-end;
		overflow: hidden;
		padding: 2vw;
		position: relative;
		justify-content: space-between;
	}

	.header23 #pageDescription{
		font-size:2.2vw;
		margin-bottom:0;
		order:0;
	}

	#headerLogo {
		width: 47vw;
		padding:0;
		order:1;
		display:table;
	}

	#headerLogo a{
		display:table-cell;
		vertical-align:middle;
	}

	#headerLogo figure img{/*22.03.14追記*/
		height: 12vw;
		object-fit: contain;
		object-position: left;
	}

	#headerNoLogo {
		width: 60vw;
		order:1;
		margin: 0 0 0 0;
		padding: 0 0 0 0;
		display:table;
	}

	#headerNoLogo a{
		font-size:4vw;
		height: 10vw;
		line-height: 1.3;
		display:table-cell;
		overflow: hidden;
		padding: 0;
	}

	#headerSub {
		order:3;
		width:100%;
		display:flex;
		align-items: center;
		justify-content: space-between;
		margin-top:0.3vw;
		border-top:1px solid #cccccc;
		padding-top:2vw;
	}

	#headerWelcome {
		width:69vw;
	}

	#headerWelcome span{
		background-size:4vw;
		padding:1.5vw 0 1vw 5vw;
		font-size:2.3vw;
		box-sizing: border-box;
		display: inline-block;
		line-height: 1.3;
	}

	.header23 nav{
		order:4;
	}

	.header23 nav ul{
		display:flex;
		align-items: center;
		justify-content: space-between;
	}

	#headerMyPage{
		width:23vw;
		padding:0.7vw 0;
		position:relative;
		display:block;
		margin-right:3vw;
	}

	#headerMyPage div{	/* マイページボタン */
		text-align:center;
		width:100%;
		padding:0.5vw 0 0.2vw;
		border:1px solid #27969e;
		font-size:2.8vw;
	}


	#headerMyPage .iconNotice{
		position:absolute;
		width:3.6vw;
		top:0;
		right:1px;
		display:block;
		border-radius: 50%;
	}

	#headerLogout {
		display: none;
	}

	#headerHelp{
		width:6.5vw;
		display:block;
		position:fixed;
		top:7vw;
		right:18vw;
	}

	#headerPoweredBy{
		display:flex;
		order:2;
		align-items:top;
		width:100%;
		justify-content:flex-end;
		padding-right:3vw;
		margin-top:-0.5vw;
	}

	#headerPoweredBy span{
		font-size:calc(100vw/50);
	}

	#headerPoweredBy figure{
		width:18vw;
		margin-left:0.5vw;
	}

}