@charset "utf-8";
/*------------------------------------------------------------
書式設定
------------------------------------------------------------*/
/* テキストの位置 */
.taleft { text-align: left !important; }
.tacenter { text-align: center !important; }
.taright { text-align: right !important; }

/* フォントの太さ */
.fwnormal { font-weight: normal !important; }
.fwbold { font-weight: bold !important; }

/* フォントサイズ */
.fs08{
	font-size: 0.9em;
}

/*------------------------------------------------------------
微調整用
------------------------------------------------------------*/
/* 文中の特殊文字調整 */

.irgtx{
	font-weight:bold;
}
.ldquo{
	padding-right:3px;
}
.rdquo{
	padding-left:3px;
	padding-right:3px;
}
.times{
	font-weight:normal;
	font-family:meirio;
}

/* 余白 */
.mt00{ margin-top:0!important; }
.mt05{ margin-top:5px!important; }
.mt10{ margin-top:10px!important; }
.mt15{ margin-top:15px!important; }
.mt20{ margin-top:20px!important; }
.mt25{ margin-top:25px!important; }
.mt30{ margin-top:30px!important; }
.mt35{ margin-top:35px!important; }
.mt40{ margin-top:40px!important; }
.mt45{ margin-top:45px!important; }
.mt50{ margin-top:50px!important; }
.mt55{ margin-top:55px!important; }
.mt60{ margin-top:60px!important; }
.mt65{ margin-top:65px!important; }
.mt70{ margin-top:70px!important; }
.mt75{ margin-top:75px!important; }
.mt80{ margin-top:80px!important; }
.mt85{ margin-top:85px!important; }
.mt90{ margin-top:90px!important; }
.mt95{ margin-top:95px!important; }
.mt100{ margin-top:100px!important; }

.mr00{ margin-right:0!important; }
.mr05{ margin-right:5px!important; }
.mr10{ margin-right:10px!important; }
.mr15{ margin-right:15px!important; }
.mr20{ margin-right:20px!important; }
.mr25{ margin-right:25px!important; }
.mr30{ margin-right:30px!important; }
.mr35{ margin-right:35px!important; }
.mr40{ margin-right:40px!important; }
.mr45{ margin-right:45px!important; }
.mr50{ margin-right:50px!important; }
.mr55{ margin-right:55px!important; }
.mr60{ margin-right:60px!important; }
.mr65{ margin-right:65px!important; }
.mr70{ margin-right:70px!important; }
.mr75{ margin-right:75px!important; }
.mr80{ margin-right:80px!important; }
.mr85{ margin-right:85px!important; }
.mr90{ margin-right:90px!important; }
.mr95{ margin-right:95px!important; }
.mr100{ margin-right:100px!important; }

.mb00{ margin-bottom:0!important; }
.mb05{ margin-bottom:5px!important; }
.mb10{ margin-bottom:10px!important; }
.mb15{ margin-bottom:15px!important; }
.mb20{ margin-bottom:20px!important; }
.mb25{ margin-bottom:25px!important; }
.mb30{ margin-bottom:30px!important; }
.mb35{ margin-bottom:35px!important; }
.mb40{ margin-bottom:40px!important; }
.mb45{ margin-bottom:45px!important; }
.mb50{ margin-bottom:50px!important; }
.mb55{ margin-bottom:55px!important; }
.mb60{ margin-bottom:60px!important; }
.mb65{ margin-bottom:65px!important; }
.mb70{ margin-bottom:70px!important; }
.mb75{ margin-bottom:75px!important; }
.mb80{ margin-bottom:80px!important; }
.mb85{ margin-bottom:85px!important; }
.mb90{ margin-bottom:90px!important; }
.mb95{ margin-bottom:95px!important; }
.mb100{ margin-bottom:100px!important; }

.ml00{ margin-left:0!important; }
.ml05{ margin-left:5px!important; }
.ml10{ margin-left:10px!important; }
.ml15{ margin-left:15px!important; }
.ml20{ margin-left:20px!important; }
.ml25{ margin-left:25px!important; }
.ml30{ margin-left:30px!important; }
.ml35{ margin-left:35px!important; }
.ml40{ margin-left:40px!important; }
.ml45{ margin-left:45px!important; }
.ml50{ margin-left:50px!important; }
.ml55{ margin-left:55px!important; }
.ml60{ margin-left:60px!important; }
.ml65{ margin-left:65px!important; }
.ml70{ margin-left:70px!important; }
.ml75{ margin-left:75px!important; }
.ml80{ margin-left:80px!important; }
.ml85{ margin-left:85px!important; }
.ml90{ margin-left:90px!important; }
.ml95{ margin-left:95px!important; }
.ml100{ margin-left:100px!important; }

.pt00{ padding-top:0!important; }
.pt05{ padding-top:5px!important; }
.pt10{ padding-top:10px!important; }
.pt15{ padding-top:15px!important; }
.pt20{ padding-top:20px!important; }
.pt25{ padding-top:25px!important; }
.pt30{ padding-top:30px!important; }
.pt35{ padding-top:35px!important; }
.pt40{ padding-top:40px!important; }
.pt45{ padding-top:45px!important; }
.pt50{ padding-top:50px!important; }
.pt55{ padding-top:55px!important; }
.pt60{ padding-top:60px!important; }
.pt65{ padding-top:65px!important; }
.pt70{ padding-top:70px!important; }
.pt75{ padding-top:75px!important; }
.pt80{ padding-top:80px!important; }
.pt85{ padding-top:85px!important; }
.pt90{ padding-top:90px!important; }
.pt95{ padding-top:95px!important; }
.pt100{ padding-top:100px!important; }

.pr00{ padding-right:0!important; }
.pr05{ padding-right:5px!important; }
.pr10{ padding-right:10px!important; }
.pr15{ padding-right:15px!important; }
.pr20{ padding-right:20px!important; }
.pr25{ padding-right:25px!important; }
.pr30{ padding-right:30px!important; }
.pr35{ padding-right:35px!important; }
.pr40{ padding-right:40px!important; }
.pr45{ padding-right:45px!important; }
.pr50{ padding-right:50px!important; }
.pr55{ padding-right:55px!important; }
.pr60{ padding-right:60px!important; }
.pr65{ padding-right:65px!important; }
.pr70{ padding-right:70px!important; }
.pr75{ padding-right:75px!important; }
.pr80{ padding-right:80px!important; }
.pr85{ padding-right:85px!important; }
.pr90{ padding-right:90px!important; }
.pr95{ padding-right:95px!important; }
.pr100{ padding-right:100px!important; }

.pb00{ padding-bottom:0!important; }
.pb05{ padding-bottom:5px!important; }
.pb10{ padding-bottom:10px!important; }
.pb15{ padding-bottom:15px!important; }
.pb20{ padding-bottom:20px!important; }
.pb25{ padding-bottom:25px!important; }
.pb30{ padding-bottom:30px!important; }
.pb35{ padding-bottom:35px!important; }
.pb40{ padding-bottom:40px!important; }
.pb45{ padding-bottom:45px!important; }
.pb50{ padding-bottom:50px!important; }
.pb55{ padding-bottom:55px!important; }
.pb60{ padding-bottom:60px!important; }
.pb65{ padding-bottom:65px!important; }
.pb70{ padding-bottom:70px!important; }
.pb75{ padding-bottom:75px!important; }
.pb80{ padding-bottom:80px!important; }
.pb85{ padding-bottom:85px!important; }
.pb90{ padding-bottom:90px!important; }
.pb95{ padding-bottom:95px!important; }
.pb100{ padding-bottom:100px!important; }

.pl00{ padding-left:0!important; }
.pl05{ padding-left:5px!important; }
.pl10{ padding-left:10px!important; }
.pl15{ padding-left:15px!important; }
.pl20{ padding-left:20px!important; }
.pl25{ padding-left:25px!important; }
.pl30{ padding-left:30px!important; }
.pl35{ padding-left:35px!important; }
.pl40{ padding-left:40px!important; }
.pl45{ padding-left:45px!important; }
.pl50{ padding-left:50px!important; }
.pl55{ padding-left:55px!important; }
.pl60{ padding-left:60px!important; }
.pl65{ padding-left:65px!important; }
.pl70{ padding-left:70px!important; }
.pl75{ padding-left:75px!important; }
.pl80{ padding-left:80px!important; }
.pl85{ padding-left:85px!important; }
.pl90{ padding-left:90px!important; }
.pl95{ padding-left:95px!important; }
.pl100{ padding-left:100px!important; }

.alignCenter { text-align: center!important; }
.fl_l { float:left !important; }
.fl_r { float:right !important; }
.m0auto { margin: 0 auto !important; }
.w100 {width: 100%!important;}

/*------------------------------------------------------------
font
------------------------------------------------------------*/

@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomoon.eot?hh3nv2');
  src:  url('../fonts/icomoon.eot?hh3nv2#iefix') format('embedded-opentype'),
    url('../fonts/icomoon.ttf?hh3nv2') format('truetype'),
    url('../fonts/icomoon.woff?hh3nv2') format('woff'),
    url('../fonts/icomoon.svg?hh3nv2#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon_arrow:before {
  content: "\e900";
}
.icon_blank:before {
  content: "\e901";
}
.icon_mail:before {
  content: "\e902";
}

.rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}

/*------------------------------------------------------------
clearfix
------------------------------------------------------------*/
.clearfix:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}

/*------------------------------------------------------------
デフォルトスタイル
------------------------------------------------------------*/
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 {
	margin: 0;
	padding: 0;
	outline: 0;
	font-size: 1em;
}

body,
table,
input, textarea, select, option {
	font-family: Arial, Roboto, “Droid Sans”, “ヒラギノ角ゴ ProN W3”, “Hiragino Kaku Gothic ProN”, “游ゴシック”, YuGothic, “メイリオ”, Meiryo, sans-serif;
	font-size: 1em;
}

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
	display: block;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

:focus {
	outline: 0;
}

ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

img {
	vertical-align: top;
	border: 0px;
}

/* Link */
a,
a:link {
	/* display: block; */
	text-decoration: none;
}

a:visited {
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
	cursor: pointer;
}

a:active {
	color: #fff;
	text-decoration: none;
}
/* 外部リンクアイコンの付与 */
a.blank:after{
	content: '';
	display: inline-block;
	width: 12px;
	height: 12px;
	background-image: url(../img/icon_blank.png);
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin: -3px 0 0 9px;
}
a.blank_b:after{
	content: '';
	display: inline-block;
	width: 12px;
	height: 12px;
/*	background-image: url(../img/icon_blank_b.png); */
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin: -3px 0 0 9px;
}

body {
	font-size: 14px;
	line-height: 1.9em;
	color: #000;
	-webkit-text-size-adjust: none;
	background-color: #fff;
}

body .sp {
    display: none;
}
.m320,.m480{
		display:none ;
		visibility:hidden ;
		overflow:hidden ;
}
@media screen and (max-width: 320px){
	.m320{
		display:block;
		visibility:visible;
		overflow:visible;
	}
}
@media screen and (max-width: 480px){
	.m480{
		display:block;
		visibility:visible;
		overflow:visible;
	}
}


@media screen and (max-width:768px){
	body {
		font-size: 15px;
		line-height: 1.6em;
	}
	body .pc {
    display: none;
	}
	body .sp {
    display: block;
	}
}

img {

}
/*
a:hover img{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	transition: 0.4s ;
}
*/

/*------------------------------------------------------------
base
------------------------------------------------------------*/

#wrapper{
	width: 100%;
	min-width: 300px;
}

#container{
	width: 960px;
	margin: 0 auto;
}

#container img{
	width: 100%;
}

#container h2 {
	max-width: 960px;
	font-size: 25px;
	padding-bottom: 10px;
	margin-bottom: 20px;
	border-bottom: 1px solid #000;
}

#container .under_mttl{
	max-width: 960px;
	height: 100px;
	margin: 0 0 45px 0;
/*	background-image: url(../img/pc_about_mttl2021.png); */
	background-repeat: no-repeat, repeat;
	background-position: top right 35px,top;
	color: #000;
	font-size: 26px;
	font-weight: bold;
}

#container .under_mttl .txt{
	padding:40px 0 30px 40px;
}


@media screen and (max-width:768px){
	#container{
	width: 100%;
	}

	#container h2 {
	font-size: 22px;
	padding-bottom: 5px;
	border-bottom: 1px solid #000;
	}

	#container .under_mttl{
	width: 100%;
	min-height: 100px;
	margin: 0px 0 20px 0;
	font-size: 24px;
	background-image: url(../img/sp_about_mttl2021.png);
	background-repeat: no-repeat, repeat;
	background-position: top right 10px,top; 
	}

	#container .under_mttl .txt{
	padding: 30px 10px 20px 10px;
	}

}

#cmn-header{

}



/*------------------------------------------------------------
header
------------------------------------------------------------*/

#header{
	max-width: 960px;
	font-size: 11px;
	padding: 10px 0 15px 0;
	position: relative;
}

#header p{
	text-align: left;
	margin-bottom: 5px;
}

#header h1{
	float: left;
}

#header .sns{
	width: 190px; 
	margin-top: 12px;
	float: right;
	position: relative;
}

#header .sns li.fb{
	position: absolute;
	right: 230px;
}

#header .sns li.tw{
	position: absolute;
	top:6px;
	right: 0;
}



.fb-like iframe { 
	min-width: 120px!important; 
	min-height: 20px!important; 
}

@media screen and (max-width:768px){
	#header{
	width: 98%;
	height: 22px;
	padding: 10px 0 10px 2%;
	position: relative;
	z-index: 5000;
	background: #fff;
	}
	#cmn-header,#HENSEI2010-ABOUT_NIKKEI,#header .sns,#header p{
		display: none;
	}
	#header h1 img{
		width: 75%;
	}

}

/*------------------------------------------------------------
gnav_pc
------------------------------------------------------------*/
.gnav_pc{
	max-width: 960px;
	min-height: 50px;
	color: #fff;
	font-size: 15px;
}

.gnav_pc li{
	display:inline-block;
	float: left;
	width: 192px;
	border-right:1px solid #fff;
	box-sizing:border-box;
	text-align: center;
}

.gnav_pc li a{
	width: 100%;
	float: left;
	padding: 15px 0;
	background: #767676;
	color: #fff;
}

.gnav_pc li a:hover{
	text-decoration: none;
	background: #9a9a9a;
	transition: 0.4s ;
}


.gnav_pc li.active{
	padding: 15px 0;
	background: #e4007f;
}

.gnav_pc ul.menu_drop_second {
    visibility: hidden;
    opacity: 0;
    z-index: 100;
}

.gnav_pc ul.menu_drop_second li {
	display:inline-block;
	float: left;
	width: 192px;
	height: 30px;
}

.gnav_pc ul.menu_drop_second li a{
	width: 100%;
	height: 24px;
	float: left;
	padding: 3px 0;
	background: #b7b7b7;
	color: #fff;
	display: block;
}

.gnav_pc ul.menu_drop_second li a:hover {
	text-decoration: none;
	background: #d4d2d2;
	transition: 0.4s ;
}

.gnav_pc ul.menu_drop:after {
    display: inline-block;
    margin: 0 0 0 0px;
    transform: rotate(45deg);
}

/* floatクリア */
.gnav_pc .menu:before,
.gnav_pc .menu:after {
    content: " ";
    display: table;
}

.gnav_pc .menu:after {
    clear: both;
}

.menu > li.menu_drop {
    position: relative;
}

li.menu_drop ul.menu_drop_second {
    position: absolute;
    top: 58px;
    width: 100%;
    background: #9a9a9a;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

li.menu_drop:hover ul.menu_drop_second {
    top: 58px;
    visibility: visible;
    opacity: 1;
}

@media screen and (max-width:768px){
	.gnav_pc{
		display: none;
	}
}

/*------------------------------------------------------------
gnav_sp
------------------------------------------------------------*/

.gnav_sp {
	display: none;
}

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

	.gnav_sp{
		display: none;
		position: absolute;
		top: 42px;
		left: 0px;
		width: 100%;
		text-align: center;
		background: #fff;
		font-size: 15px;
	}

	.gnav_sp li a{
		display: block;
		padding:15px 0;
		border-bottom: 1px solid #000;
		color: #000;
		background: url(../img/icon_arrow-left_black.png) right 15px top 18px no-repeat;
		background-size: 10px;
	}

	.gnav_sp li a:hover{
		text-decoration: none;
	}

	.gnav_sp li:first-child a{
		border-top: 1px solid #000;
		border-bottom: 1px solid #000;
	}

	#gnavi-overlay{
		display:none;
		z-index:1001;
		position:fixed;
		top:0;
		left:0;
		width:100%;
		height:120%;
		background-color:rgba(0,0,0,0.6);
	}

	.menubtnarea {
		position: absolute;
		top: 0;
		right: 4%;
		z-index: 5000;
	}
	.menu-btn,.menu-btn span {
		display: inline-block;
		transition: all .5s;
		box-sizing: border-box;
		z-index: 1000;
	}
	.menu-btn {
		position: relative;
		width: 30px;
		height: 24px;
		margin-top: 10px;
	}
	.menu-btn span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 3px;
		background-color: #000;
	}

	.menu-btn span:nth-of-type(1) {
		top: 0;
	}
	.menu-btn span:nth-of-type(2) {
		top: 10px;
	}
	.menu-btn span:nth-of-type(3) {
		bottom: 0;
	}

	.menu-btn.active span:nth-of-type(1) {
		-webkit-transform: translateY(12px) rotate(-45deg);
		transform: translateY(12px) rotate(-45deg);
		background: #000;
	}
	.menu-btn.active span:nth-of-type(2) {
		opacity: 0;
		background: #000;
	}
	.menu-btn.active span:nth-of-type(3) {
		-webkit-transform: translateY(-9px) rotate(45deg);
		transform: translateY(-9px) rotate(45deg);
		background: #000;
	}


}

/*------------------------------------------------------------
footer_pc
------------------------------------------------------------*/

.pagetop{
	max-width: 960px;
	margin:0 auto;
}

.pagetop .btn a{
	width: 180px;
	margin-left: auto;
	padding:7px 0;
	background: url(../img/icon_arrow-up_white.png) right 10px top 14px no-repeat;
	background-size: 14px;
	background-color: #5e5e5e;
	text-align: center;
	display: block;
	color: #fff;
}

.pagetop .btn a:hover{
	text-decoration: none;
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	transition: 0.4s ;
}

#footer_pc{
	width: 100%;
	background: #f2f2f2;
	padding:40px 0 15px 0;
	font-size: 13px
}

#footer_pc a{
	color: #000;
}

.footer_container{
	width: 960px;
	margin:0 auto;
}

#footer_pc .cont1{
	width: 960px;
	margin-bottom: 30px;
}

#footer_pc .cont1 li{
	float: left;
	margin-right: 30px;
}

#footer_pc .cont1 > ul > li:first-child{
	text-indent: 0;
}

#footer_pc .cont1 > ul > li li{
	float: none;
}

#footer_pc .cont2{
	width: 960px;
}

#footer_pc .cont2 ul{

}

#footer_pc .cont2 ul.ct1{
	width: 25%;
}

#footer_pc .cont2 ul.ct2{
	width: 35%;
}

#footer_pc .cont2 ul.ct3{
	width: 40%;
}

#footer_pc .cont2 li{
	float: left;
	margin-right: 20px;
}

#footer_pc .cont2 li:first-child{
	text-indent: 0;
	font-weight: bold;
}

#footer_pc .cont3{
	text-align:center;
	margin-top:50px;
}


#footer_pc h4{
	font-weight: bold;
	padding-bottom: 2px;
	border-bottom: 2px solid #a2a2a2;
	margin-bottom: 8px;
}



@media screen and (max-width:768px){
	#footer_pc{
		display: none;
	}

	.pagetop{
	width: 100%;
}

	.pagetop .btn a{
		width: 50%;
		margin-left: auto;
		padding:15px 0;
		background: url(../img/icon_arrow-up_white.png) right 4% top 22px no-repeat;
		background-size: 14px;
		background-color: #5e5e5e;
		text-align: center;
		display: block;
		color: #fff;
	}

}


/*------------------------------------------------------------
footer_sp
------------------------------------------------------------*/

#footer_sp{
	display: none;
}

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

	#footer_sp{
		display: block;
		width: 100%;
		overflow: hidden;
	}
	#footer_sp > ul > li{
		padding:0;
		border-bottom: 1px solid #5f5f5f;
	}
	#footer_sp li > a{
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 15px;
		color: #000;
		position: relative;
	}
	#footer_sp li a:after{
		position: absolute;
		top: 25px;
		right: 20px;
	}
	#footer_sp li a:hover{
		text-decoration: none;
	}
	#footer_sp > ul.aply > li{
		display:inline-block;
		float:left;
		width:calc(50% - 1px)
	}

	#footer_sp > ul.aply > li > a{
		width:100%;
	}

	#footer_sp > ul.aply li:first-child{
		width: 100%;
		float: none;
		box-sizing: border-box;
	}
	
	#footer_sp > ul.aply{
		border-bottom: 1px solid #5f5f5f;
	}
	#footer_sp > ul.aply > li:nth-child(even){
		border-right: 1px solid #5f5f5f;
	}
	#footer_sp > ul.aply > li:last-child{
		border-bottom: none !important;
	}



	#footer_sp li.ttl{
		display: block;
		width: 100%;
		font-weight: bold;
		background: #f2f2f2;
		padding:15px;
		border-bottom: 1px solid #5f5f5f;
		box-sizing: border-box;
	}

	#footer_sp ul.etc li a{
		width: 50%;
		float: left;

		text-align: center;
	}

	#footer_sp li.blank{
		background: url(../img/icon_blank.png) right 10px top 20px no-repeat;
		background-size: 16px;
	}

	#footer_sp li.nolink{
		display: block;
		width: 100%;
		border-bottom: 1px solid #5f5f5f;
		box-sizing: border-box;
		padding:15px;
		color: #000;
	}
	
	#footer_sp .cont3{

		text-align:center;
		padding: 50px 0 10px 0;
		font-size: 0.9em;
	}

	#footer_sp li.ttl + li > h5{
		margin:15px 0 0 15px;
		padding-bottom: 0;
	}

}

/*------------------------------------------------------------
cmn_footer_sp
------------------------------------------------------------*/

#cmn_footer_sp{
	display: none;
}

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

#cmn_footer_sp{
	display: block;
	width: 100%;
	background: #effaff;
	padding: 10px 0 10px 0;
	font-size: 11px;
	overflow: hidden!important;
}

#cmn_footer_sp li{
	float: left;
	margin-right: 8px;
	line-height: 0;
}

#cmn_footer_sp li:first-child{
	padding-left:5px;
}

#cmn_footer_sp li:last-child{
	padding-top: 8px;
}

#cmn_footer_sp li img{
	width: 65px;
}

}



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

toppage

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



/*------------------------------------------------------------
main-v
------------------------------------------------------------*/

.main-v_pc{
	max-width:960px;
	height: 360px;
	position: relative;
	margin-bottom: 30px;
	background: url(../img/pc_main-v.png);
	text-align: right;
}

.main-v_pc .pnl{
	padding: 70px 30px 0 0;
}

.main-v_pc .pnl img{
	width: 380px!important;
}

.main-v_sp{
	display: none;
	}

.movieArea {
    position: relative;
    overflow: hidden;
    margin: 20px auto 0px;
    width: 100%;
    height: 540px;
    padding: 0; }
    .movieArea .movie-container {
      position: absolute;
      top: 0;
      width: 960px;
      height: 540px;
      padding-top: 0; }
      .movieArea .movie-container .video-js {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
        }
        .movieArea .movie-container .video-js:focus {
          outline-style: none;
          }
        .movieArea .movie-container .video-js video {
          width: 100%;
          height: auto; }
      .movieArea .movie-container .movie-cover {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(255, 255, 255, 0.01); }
        .movieArea .movie-container .movie-cover:hover {
          cursor: pointer; }
      .movieArea .movie-container #movie_prs {
        display: block; } 



/*******************************************/

.main-v{
	display: block;
	width:100%;
	position: relative;
	margin-bottom: 50px;
	margin-top: 20px;
	}

.main-v .base{
	width: 100%;
	position: relative;
	z-index: 10;
	}

.main-v .base img{
	width: 100%;
	}
	
.main-v .pnl{
	position: absolute;
	z-index: 500;
	top:280px;
	left: 45px;
	}

.main-v .pnl img{
	width: 385px!important;
	}

.ev_info {
	max-width: 960px;
	margin-bottom: 80px;
	padding: 30px 20px;
	background: #FDEDEE;
	}

.ev_info_ttl {
    color: #E84D4D;
	font-size: 13pt;
	}
	
.ev_info_text {
	font-size: 1em;
	padding: 5px 7px;
	}

.leadtxt{
	max-width: 960px;
	margin-top: 20px;
	margin-bottom: 80px;
	padding: 30px 20px;
	background: #f2f2f2;
	font-size: 13pt;
	}

.finalbox {
	position: relative;
    width: 600px;
    margin: 0px 0px 50px 158px;
    padding: 30px 20px;
    font-size: 2em;
    text-align: center;
    display: inline-block;
    text-decoration: none;
    color: #c70c0c;
    border: solid 4px #c70c0c;
    transition: .4s;
	line-height: 40px;
}

.finalbox a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.finalbox:hover {
    background: #c70c0c;
    color: white;
}

.finalistbox {
	position: relative;
    width: 600px;
    margin: 0px 0px 100px 158px;
    padding: 30px 20px;
    font-size: 2em;
    text-align: center;
    display: inline-block;
    text-decoration: none;
    color: #c70c0c;
    border: solid 4px #c70c0c;
    transition: .4s;
	line-height: 40px;
}

.finalistbox a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.finalistbox:hover {
    background: #c70c0c;
    color: white;
}

@media screen and (max-width:768px){
.main-v{
	display: block;
	width:100%;
	position: relative;
	margin-bottom: 20px;
	margin-top: 20px;
	}

	.main-v .pnl{
	text-align: center;
	position: absolute;
	z-index: 500;
	top:86%;
	left: 11.5%;
	}

	.main-v .pnl img{
	width: 87%!important;
	}
	
	.movieArea {
	padding: 30px 5% 0px;
	width: 89% !important;
	height: 90% !important;
	max-width: 800px;
    margin: auto;
	}

    .movieArea .movie-container {
		position: relative;
		width: 100%;
		height: 0;
		padding-top: 56.25% !important;
		margin: 0 auto;
		overflow: hidden;
	}

	.ev_info {
		width: 94%;
		padding: 30px 3%;
	}

	.leadtxt{
		width: 94%;
		padding: 30px 3%;
		margin-top: 20px;
	}
	
	.finalbox {
    	width: 90%;
   		font-size: 1.3em;
   		padding: 10px;
   		margin: 0px 0px 30px 5px;
	}
	
	.finalistbox {
    	width: 90%;
   		font-size: 1.3em;
   		padding: 10px;
   		margin: 0px 0px 80px 5px;
	}
	
}



/*------------------------------------------------------------
topics
------------------------------------------------------------*/

.topics{
	margin-bottom: 40px;		
}

.topics a{
	color: #000;
}

.topics a:hover{
	text-decoration: underline;
}

.topics ul{
	margin-bottom: 10px;
}

.topics li{
	float: left;
}

.topics li.date{
	width: 120px;
}

@media screen and (max-width:768px){
	.topics{
		width: 95%;
		margin:0 auto 40px;		
	}
	.topics ul > li:first-child{
		float:none;
		width:100%;
	}

}

/*------------------------------------------------------------
top_midcont
------------------------------------------------------------*/

#top_midcont{
	max-width: 960px;
	margin-bottom: 80px;
}

#top_midcont h3{
	font-size: 22px;
	margin-bottom: 35px;
}



#top_midcont .leftcont{
	width: 660px;
	float: left;
}

#top_midcont .leftcont .winner{
	padding: 30px 20px 20px 20px;
	border: 8px solid #e9e9e9;
	box-sizing: border-box;
	margin-bottom: 60px;
}

#top_midcont .leftcont .finalist{
	padding: 30px 20px 20px 20px;
	border: 8px solid #e9e9e9;
	box-sizing: border-box;
	margin-bottom: 60px;
}

#top_midcont .leftcont .meetup{
	padding: 30px 20px 20px 20px;
	border: 8px solid #e9e9e9;
	box-sizing: border-box;
	margin-bottom: 60px;
}

#top_midcont .leftcont table{
	width: 100%;
	border: 1px solid #e4e4e4;
	box-sizing: border-box;
	border-collapse:collapse;
	text-align: left;
	margin-bottom: 20px;
	word-break: break-word;
}


#top_midcont .leftcont table td{
	padding: 15px 20px 15px 30px;
	border: 1px solid #e4e4e4;
	box-sizing: border-box;
}

#top_midcont .leftcont table th{
	width: 20%;
	padding: 15px 20px 15px 30px;
	font-weight: bold;
	border: 1px solid #e4e4e4;
	box-sizing: border-box;
}

#top_midcont .leftcont table .ttl{
	text-align: center;
	font-weight: bold;
	background: #e1e1e1;
}


#top_midcont .leftcont .winnertxt{
	width: 100%;
	margin-bottom: 0px;
}

#top_midcont .leftcont .finalisttxt{
	width: 100%;
	margin-bottom: 0px;
}

#top_midcont .leftcont .stxt{
	width: 100%;
	margin-bottom: 40px;
}

#top_midcont .leftcont .aplybtn a{
	width: 80%;
	padding: 20px 0;

	margin: 0 auto 20px;
	font-weight: bold;
	font-size: 20px;
	background: url(../img/icon_arrow-left_white.png) right 15px center no-repeat;

	background-size: 11px;
	background-color: #e65353;
	text-align: center;
	display: block;
	color: #FFF;
}
#top_midcont .leftcont .aftx{
	width: 100%;
	margin-bottom: 40px;
}

#top_midcont .leftcont .aftx li{
	padding-left: 1em;
    text-indent: -1em;
}
#top_midcont .leftcont .aftx li:before{
	content: "";
    display: inline-block;
	width: 5px;
    height: 5px;
	border-right: 2px solid #3b94d9;
    border-top: 2px solid #3b94d9;
    margin-right: 8px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    vertical-align: 2px;
}



#top_midcont .leftcont .aftx img.icon_exlink{
	margin-left: 5px;
    vertical-align: -1px;
	width: 13px;
	height: 13px;
}

#top_midcont .leftcont .aplybtn br{
	display: none;
}

#top_midcont .leftcont .aplybtn br:last-child{
	display: block;
}


#top_midcont .leftcont a:hover{
	text-decoration: none;
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	transition: 0.4s ;
}


#top_midcont .leftcont .sbc-aply{
	width: 606px;
	padding: 35px 27px 5px 27px;
	background: #ededed;
}

#top_midcont .leftcont .sbc-aply p{
	margin-bottom: 20px;
}

#top_midcont .sbc-aply a{
	color: #000;
}

#top_midcont .sbc-aply p a:hover{
	text-decoration: underline;
}

#top_midcont .leftcont .dlbtn a{
	width: 70%;
	padding: 20px 0;
	margin: 0 auto 50px;
	font-weight: bold;
	font-size: 20px;
	background-color: #304567;
	text-align: center;
	display: block;
	color: #FFF;
}


.icon_arrow_1{
	background: url(../img/icon_arrow-left_white.png) right 15px center no-repeat;
	background-size: 11px;
}


.icon_mail_1{
	background: url(../img/icon_mail.png) right 15px center no-repeat;
	background-size: 27px;
}



.accbox {
    margin: 2em 0;
    padding: 0;
    max-width: 580px;
}

.accbox label {
    display: block;
    padding: 11px 12px;
    color: #000000;
    font-weight: bold;
    background: #e9e9e9;
    cursor: pointer;
    transition: all 0.5s;
	width: 580px;
}

.accbox label:hover {
    background :#eaeaea;
}

.accbox input {
    display: none;
}

.accbox .accshow {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

.cssacc:checked + .accshow {
    height: auto;
	width: 590px;
    padding: 5px;
    background: #ffffff;
    opacity: 1;
}


@media screen and (max-width:768px){
	#top_midcont .leftcont{
	width: 100%;
	float: none;
	}

	#top_midcont{
		margin-bottom: 40px;
	}

	#top_midcont .leftcont .meetup{
	padding: 30px 3% 0 3%;
	border: 6px solid #e9e9e9;
	box-sizing: border-box;
	}

	#top_midcont .leftcont table{
		font-size: 14px;
	}

	#top_midcont .leftcont table br{
		display: block;
	}

	#top_midcont .leftcont table td{
	padding: 10px;
	border: 1px solid #e4e4e4;
	box-sizing: border-box;
	}

	#top_midcont .leftcont table th{
	width: 23%;
	padding: 10px;
	font-weight: bold;
	border: 1px solid #e4e4e4;
	box-sizing: border-box;
	}

	#top_midcont .leftcont .aplybtn a{
	width: 90%;
	padding: 20px 10px;
	background: url(../img/icon_arrow-left_white.png) right 15px top 32px no-repeat;
	background-size: 11px;
	background-color: #e65353;
	}

	#top_midcont .leftcont .sbc-aply{
	width: 94%;
	padding: 30px 3%;
	margin-bottom: 40px;
	}

	#top_midcont .leftcont .aplybtn br{
	display: block;
	}

	#top_midcont .leftcont .dlbtn a{
	width: 90%;
	padding: 20px 10px;
	margin: 0 auto 40px;
	}

	.icon_arrow_1{
	background: url(../img/icon_arrow-left_white.png) right 15px top 22px no-repeat;
	background-size: 11px;
	}

	.icon_mail_1{
	background: url(../img/icon_mail.png) right 10px top 25px no-repeat;
	background-size: 25px;
	}

	.accbox {
    margin: 2em 0;
    padding: 0;
    max-width: auto;
	}

	.accbox label {
	width: 93%;
	}

	.cssacc:checked + .accshow {
	width: 98%;
	}

}

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


#top_midcont .rightcont{
	width: 280px;
	float: right;

}

#top_midcont .rightcont a{
	color: #000;
}

#top_midcont .rightcont .sns-widget{
	max-width: 280px;
}

#top_midcont .rightcont .sns-widget .fb{
	margin-bottom: 30px;
}

#top_midcont .rightcont .sns-widget .tw{
	margin-bottom: 30px;
}


#top_midcont .rightcont li{
	margin-bottom: 15px;
}

#top_midcont .rightcont li.fb{
	display: none;
}

#top_midcont .rightcont li.tw{
	display: none;
}

#top_midcont .rightcont li.intro{
	margin-bottom: 2px;
}

#top_midcont .rightcont .logo{
	margin-bottom: 30px;
}

#top_midcont .rightcont .logo img{
	width: 280px;
}

#top_midcont .rightcont .bnarea{
	width: 100%;
	padding: 20px;
	margin-bottom: 30px;
	border: 1px solid #bcbcbc;
	box-sizing: border-box;
}

#top_midcont .rightcont .bnarea p{
	margin-bottom: 30px;
}

#top_midcont .rightcont .bnarea p span{
	font-weight: bold;
}

#top_midcont .rightcont .bnarea p:last-child{
	margin:0;
}

@media screen and (max-width:768px){
	#top_midcont .rightcont{

	width: 95%;
	margin:0 auto;
	float: none;
	}

	#top_midcont .rightcont .bnarea{
	width: 100%;
	padding: 10px;
	}

	#top_midcont .rightcont .sns-widget{
	display: none;
	}

	#top_midcont .rightcont li.intro{
	display: none;
	}

	#top_midcont .rightcont li{
	float: left;
	margin: 0 30px 30px 0;
	}

	#top_midcont .rightcont li.fb{
	display: block;
	padding-right: 100px;
	}

	#top_midcont .rightcont li.tw{
	display: block;
	padding-top: 4px;
	margin-bottom: 23px!important;
	}

	#top_midcont .rightcont .logo{
	text-align: center;
	}

	#top_midcont .rightcont .logo img{
	width: 80%;
	}
}

/*------------------------------------------------------------
top_exam top_adv
------------------------------------------------------------*/

#top_exam,#top_adv{
	max-width: 960px;
	margin-bottom: 60px;
}

.personunit{
	margin-bottom: 40px;
}

.personunit .ph{
	width: 190px;
	float: left;
	margin-right: 45px;
}

.personunit .ph img{
	width: 100%;
}

.personunit .txt{
	max-width: 725px;
	float: left;
}

.personunit .txt p:nth-child(1){
	font-size: 19px;
	font-weight: bold;
	text-align: left;
}

.personunit .txt p:nth-child(2){
	font-size: 15px;
	margin-bottom: 15px;
	text-align: left;
}


.personunit .txt p:nth-child(3){
	margin-bottom: 0;
}

.personunit .morebtn{
	display: none;
}





@media screen and (max-width:768px){
	#top_exam,#top_adv{
	width: 95%;
	margin: 0 auto 40px;
	}
	
	.personunit .ph{
	width: 50%;
	float: none;
	text-align: center;
	margin:0 auto 20px;
	}

	.personunit .ph img{
	width: 100%;
	}

	.personunit .txt{
	width: 100%;
	float: none;
	}

	.personunit .txt p:nth-child(1){
		font-size: 19px;
		font-weight: bold;
		text-align: center;
	}

	.personunit .txt p:nth-child(2){
		text-align: left;
		font-weight: normal;
		font-size: 16px;
		margin-bottom: 20px;
	}

	.personunit .txt p:nth-child(3){
		text-align: left;
		margin-bottom: 20px;
	}

	.personunit .morebtn{
	display: block;
	width: 80%;
	padding: 15px 0;
	font-size: 16px;
	color: #000;
	text-align: center;
	border: 1px solid #000;
	margin: 0 auto;
	background: url(../img/icon_arrow-down_black.png) right 15px top 22px no-repeat;
	background-size: 15px;
}

.personunit .closebtn{
	width: 80%;
	padding: 15px 0;
	font-size: 16px;
	color: #000;
	text-align: center;
	border: 1px solid #000;
	background: url(../img/icon_arrow-up_black.png) right 15px top 22px no-repeat;
	background-size: 15px;
}

}

/*------------------------------------------------------------
sponsor
------------------------------------------------------------*/

#sponsor{
	max-width: 960px;
	margin-bottom: 150px;
}

#sponsor h3{
	width: 100%;
	text-align: center;
	font-size: 20px;
	margin:60px 0 30px 0;
}

#sponsor .special1, #sponsor .special2{
	text-align: center;
	margin: 0px 0 60px 0;
}

#sponsor .special1 img{
	width: 350px;
}

#sponsor .special2 img{
	width: 350px;
}

#sponsor ul {
    list-style: none;
    display: flex;
    justify-content: center;
}
	
#sponsor li{
	float: left;

}

#sponsor li.sp1{
    margin: 0 60px 0 60px;
    padding-top: 30px;
}

#sponsor li.sp1 img{
	width: 130px;
}

#sponsor li.sp2{
    padding-top: 35px;
    margin: 0px -35px 0px 60px;
}

#sponsor li.sp2 img{
	width: 220px;
}

#sponsor li.sp3{
	padding-top: 40px;
    margin: 0px 40px 0px 40px;
}

#sponsor li.sp3 img{
	width: 215px;
}

#sponsor li.sp4{
    padding-top: 0px;
    margin: 0px 40px 60px 40px;
}

#sponsor li.sp4 img{
	width: 217px;
}

#sponsor li.sp5{
    padding-top: 20px;
    margin: 0px 40px 0px 40px;
}

#sponsor li.sp5 img{
	width: 300px;
}

#sponsor p{
	width: 100%;
	text-align: center;
}

#sponsor .ip1{
	text-align: center;
}

#sponsor .ip1 img{
	width: 130px;
}

@media screen and (max-width:768px){
	#sponsor{
	width: 95%;
	margin: 0 auto 100px;
	}


	#sponsor .special1 img, #sponsor .special2 img{
	width: 85%;
	}

	#sponsor ul{
	width: 100%;
	display: block;
	text-align: center;
	}

	#sponsor li{
	float: none;
	margin-bottom: 40px;
	}

	#sponsor li.sp1,#sponsor li.sp2,#sponsor li.sp3,#sponsor li.sp4,#sponsor li.sp5,#sponsor .ip1{
	margin: 0 0 60px 0;
	padding-top: 0;
	}

	#sponsor li.sp1 img,#sponsor li.sp2 img,#sponsor li.sp3 img,#sponsor li.sp4 img,#sponsor li.sp5 img{
	width: 50%;
	}

	#sponsor li.sp1 img{
	width: 40%;
	}
	
	#sponsor .ip1{
	text-align: center;
	}
	
	#sponsor .ip1 img{
	width: 40%;
	}
}

/*------------------------------------------
Sponsor2018
------------------------------------------*/

#sponsors .contunit{
	margin-bottom: 60px;
}
#sponsors .contunit .contbox{
	font-weight: bold;
	padding: 20px 20px 0;
	margin-bottom: 20px;
	border: 5px solid #e9e9e9;
	box-sizing: border-box;
}
#sponsors .contunit .contbox ul{
	display: block;
	margin-bottom: 20px;
}
#sponsors .contunit .contbox ul a{
	font-weight: normal;
}
#sponsors .contunit .contbox ul li{
	display: inline-block;
}
#sponsors .contunit .contbox ul li a{
	padding: 6px;
}
#sponsors .corp_boxs{
	margin-top: 50px;
}
#sponsors .corp_box{
	margin-top: 50px;
}
#sponsors .corp_box h5{
	font-size: 24px;
	line-height: 100%;
	margin: 25px 0 0;
	padding: 0;
	display: inline-block;
}
#sponsors .sus_box{
	margin-top: 20px;
}
#sponsors .w720{
	width: 720px;
}
#sponsors .w780{
	width: 780px;
}
#sponsors .sus_box h6{
	margin:0 0 7px;
	display:inline-block;
	padding: 8px 12px;
	background-color:#bfd9ea;
	font-size: 0.85em;
	line-height: 140%;
	width: 150px;
}

#sponsors .corpttl_box{
	display: block;
	border-bottom: 2px solid #cccccc;
	margin-bottom: 15px;
	padding-bottom: 7px;
}

#sponsors .corpttl_box > img{
	float: right;
}
#sponsors .corpttl_box .corp_logo{
	float: right;
}
#sponsors .corp_img{
	float: right;
	margin-left: 15px;
}
#sponsors #corp03 p .corp_img{
	margin-top: 20px;
	margin-bottom:40px;
}
#sponsors .v230{
	width:300px;
}
#sponsors .h230{
	width:230px;

}
#sponsors .corpttl_box .corp_logo1{
	width: 130px;
	height: 35px;
	margin-top: 12px;
}
#sponsors .corpttl_box .corp_logo2{
	width: 130px;
	height: 40px;
	margin-top: 7px;
}
#sponsors .corpttl_box .corp_logo3{
	width: 193px;
	height: 35px;
	margin-top: 10px;
}
#sponsors .corpttl_box .corp_logo4{
	width: 165px;
	height: 35px;
	margin-top: 10px;
}
#sponsors .corpttl_box .corp_logo5{
	width: 188px;
	height: 35px;
	margin-top: 17px;
}
#sponsors .corpttl_box .corp_logo6{
	width: 220px;
	height: 33px;
	margin-top: 20px;
}
#sponsors .corpttl_box .corp_logo7{
	width: 238px;
	height: 30px;
	margin-top: 20px;
}
#sponsors .corpttl_box .corp_logo8{
	width: 93px;
	height: 35px;
	margin-top: 20px;
}
#sponsors .corpttl_box .corp_logo10{
	width: 140px;
	height: 40px;
	margin-top: 12px;
}


#sponsors .csite_box{
	margin-top: 10px;
}
#sponsors .ttl_csite{
	padding: 5px 8px;
	margin-right: 8px;
	background-color: steelblue;
	font-size: 0.8em;
	color: #ffffff;
}

#sponsors .contunit .contbox dl{
    padding: 10px 0px 20px 0px;
}

#sponsors .contunit .contbox dd{
    padding: 0px 10px 0px 15px;
    display: inline;
}

@media screen and (max-width: 768px){
	#sponsors .contunit .contbox dd{
    	display: block;
	}
}
@media screen and (max-width: 480px){
	#sponsors .corpttl_box{
		border-bottom: none !important;
		margin-bottom: 15px;
		padding-bottom: 7px;
		text-align:center;
	}
	#sponsors .corp_box h5{
		width: 100%;
		text-align:center;
	}
	#sponsors .corpttl_box > img{
		float: none;
	}
	#sponsors .h230{
		width: 50% !important;
		margin-left: 25% !important;
		margin-bottom:15px !important;
		display:block;
		float:none;
	}
	#sponsors .v230{
		width: 50% !important;
		margin-left: 25% !important;
		margin-bottom:15px !important;
		display:block;
		float:none;
	}
	#sponsors .sus_box h6{
		width: calc(100% - 20px);
		text-align:center !important;
		padding: 15px 10px !important;
		margin: 0 0 15px !important;
	}
	#sponsors .w780{
		width:100%;
	}
	#sponsors .csite_box a{
		font-size:0.85em;
	}
	#sponsors .corp_box{
		width: 95%;
		margin:0 auto 40px;
	}
	#sponsors .contunit .contbox dd{
    	display: block;
	}
}



@media screen and (max-width: 320px){
	#sponsors .contunit .contbox{
		padding: 20px 10px 0;
	}
}



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

about

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


/*------------------------------------------------------------
intro
------------------------------------------------------------*/

#about .introtxt_pc{
	margin-bottom: 60px;
}

#about .introtxt_sp{
	display: none;
}

#about .underintroArea{
	max-width: 100%;
	padding: 30px;
	margin-bottom: 60px;
	background: #f8f7f7;
	border: 8px solid #e9e9e9;
	box-sizing: border-box;
}

#about .underintroArea .ttl{
	width: 100%;
	margin-bottom: 30px;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
}

#about .underintroArea .ttl br{
	display: none;
}

#about .underintroArea li{
	float: left;
}

#about .underintroArea li img{
	width: 95%;
}

#about .underintroArea li:nth-child(1){
	margin-left: 100px;
}

#about .underintroArea li:nth-child(2){
	margin-right: 0px;
}

#about .underintroArea li:nth-child(3){
	margin-right: 0px;
}

#about .underintroArea li:nth-child(4){
	margin-right: 0px;
}

#about .underintroArea li:nth-child(5){
	width: 93%;
    margin: 30px 0px 0px 35px;
}

@media screen and (max-width:768px){
	#about .introtxt_pc{
		display: none;
	}

	#about .introtxt_sp{
		display: block;
		width: 95%;
		margin:0 auto 40px;
	}

	#about .underintroArea{
		padding: 15px;
		background: #f8f7f7;
		border: 8px solid #e9e9e9;
		box-sizing: border-box;
	}

	#about .underintroArea .ttl{
		width: 100%;
		margin-bottom: 20px;
		text-align: center;
		font-size: 20px;
		font-weight: bold;
	}

	#about .underintroArea .ttl br{
		display: block;
	}

	#about .underintroArea li img{
		width: 95%;
	}

	#about .underintroArea li:nth-child(1){
		width: 25%;
		float: left;
		margin: 0 0 25px 0;
		text-align: center;
	}

	#about .underintroArea li:nth-child(2){
		width: 25%;
		float: left;
		margin: 0 0 25px 0;
		text-align: center;
	}

	#about .underintroArea li:nth-child(3){
		width: 25%;
		float: left;
		margin: 0 0 25px 0;
		text-align: center;
	}
	
	#about .underintroArea li:nth-child(4){
		width: 25%;
		float: left;
		margin: 0 0 25px 0;
		text-align: center;
	}
	
	#about .underintroArea li:nth-child(5){
		width: 100%;
		margin: 0px;
		float: none;
	}

}

/*------------------------------------------------------------
contunit
------------------------------------------------------------*/

#about .contunit{
	margin-bottom: 60px;
}

#about .contunit .mbtxt1{
	margin-bottom: 10px;
}

#about .contunit .mbtxt2{
	margin-bottom: 20px;
}

#about .contunit .mbtxt3{
	margin-bottom: 30px;
}

#about .contunit .contbox{
	font-weight: bold;
	padding:20px; 
	border: 5px solid #e9e9e9;
	box-sizing: border-box;
}

#about .contunit .contbox span{
	font-weight: normal;
}

#about .contunit .contbox .stxt{
	font-weight: normal;
	margin-bottom: 10px;
}

#about .contunit .contbox .ttl{
	font-size: 18px;
	margin-bottom: 10px;
	font-weight: normal;
}

#about .contunit .contbox .padleft{
	padding-left: 15px;
}


#about .t-justify span{
	display: block;
	text-indent:-3em;
 	padding-left:3em;
}

#about .flow table{
	width: 100%;
	margin-bottom: 20px;
}

#about .flow th{
	width: 230px;
	padding: 20px;
	background: #304567;
	font-size: 15px;
	color: #fff;
	vertical-align: middle;
	text-align: left;
	font-weight: normal;
}

#about .flow th span{
	font-size: 18px;
	font-weight: bold;
}

#about .flow td{
	width: 650px;
	padding: 20px;
	background: #f4ede1;
	vertical-align: middle;

}

#about .flow .arrow{
	width: 100%;
	margin-bottom: 20px;
	text-align: center;
	display: block;
	background: #fff;
}

#about .flow .arrow img{
	width: 123px;
}

#about .dlbtn a{
	width: 40%;
	padding: 20px 0;
	margin: 0 auto 50px;
	font-weight: bold;
	font-size: 20px;
	background-color: #00629d;
	text-align: center;
	display: block;
	color: #FFF;
}
#about .dlbtn.end{
	width: 40%;
	padding: 20px 0;
	margin: 0 auto 50px;
	font-weight: bold;
	font-size: 20px;
	background-color: #999;
	text-align: center;
	display: block;
	color: #ccc;
}

#about .dlbtn a:hover{
	text-decoration: none;
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	transition: 0.4s ;
}

#about .q_a table{
	width: 960px;
	border: 1px solid #e5e5e5;
	margin-bottom: 20px;
	text-align: left;

	border-collapse:collapse;
	box-sizing: border-box;
}

#about .q_a th{
	width: 960px;
	padding:12px;

	background: #e5e5e5;
	text-align: left;
	display: block;
	box-sizing: border-box;
}

#about .q_a td{
	width: 960px;
	padding:12px;
	display: block;
	box-sizing: border-box;
}

#about .inq a{
	color: #000;
}

#about .inq li{
	text-indent:-1em;
	padding-left:1em;
}

@media screen and (max-width:768px){
	.contunit{
	width: 95%;
	margin:0 auto 40px;
	}

	#about .flow table{
	width: 100%;
	margin-bottom: 10px;
	}

	#about .flow th{
	width: 92%;
	padding: 4%;
	font-size: 15px;
	display: block;
	}

	#about .flow th span{
	font-size: 18px;
	font-weight: bold;
	}

	#about .flow td{
	width: 92%;
	padding: 4%;
	display: block;
	}

	#about .flow .arrow{
	margin-bottom: 20px;
	}

	#about .flow .arrow img{
	width: 30%;
	}

	#about .dlbtn a,
	#about .dlbtn.end{
	width: 90%;
	padding: 20px 10px;
	margin: 0 auto 40px;
	}


#about .q_a table{
	width: 100%;
}

#about .q_a th{
	width: 100%;
}

#about .q_a td{
	width: 100%;
}
}

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

final

--------------------------------------------------------------
------------------------------------------------------------*/
#final .contunit .contbox > ul{
	overflow: hidden;
}
.Lnav2 > li{
	background:#eee;
	border:none !important;
}
.Lnav2 li > a:after{
 	content:none !important;
 }
#final .contunit .contbox > ul > li{
	display: inline-block;
	float: left;
	width:49.5%;
	font-size: 24px;
	font-weight: bold;
	text-align:center;
	padding: 0;
	border: 5px solid #e9e9e9;
	box-sizing: border-box;
	overflow: hidden;
	
}
#final .contbox > ul > li:first-child{
	margin-right:1%;
}
#final .contbox > ul > li > a:after{
	display: block;
	content: '';
	position: absolute;
	top: calc(50% - 15px);
	right: 40px;
	width: 20px;
	height: 20px;
	border-right: 4px solid #ccc;
	border-bottom: 4px solid #ccc;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#final .contbox > ul > li >a{
	display: block;
	position: relative;
	padding:25px;
	color:#4054b7;
}
#final .contbox > ul > li > a:hover:after{
	border-right: 4px solid #4054b7;
	border-bottom: 4px solid #4054b7;
}
#final h2{
	margin-top: 100px;
}
#final h3{
	font-size: 24px;
	padding-bottom: 10px;
	margin-top: 40px;
	width: 100%;
}
#final .contunit .corp_box,
#final .contunit .corp_box2{
	margin-top:30px;
    padding: 20px;
    box-sizing: border-box;
    overflow: hidden;
}
#final .contunit .corp_box{
    border: 5px solid #266092;
}
#final .contunit .corp_box.thin{
    border: 2px solid #266092;
}
#final .contunit .corp_box2{
    border: 5px solid #b5dab5;
}
#final .contunit .corp_box2.pink{
	border-color:#F8E0E6;
}
#final .contunit .corp_box2.yellow{
    border: 5px solid #c0791f;
}
#final .contunit .corp_box2.green{
    border: 5px solid #34846e;
}
#final .contunit .corp_box2.purple{
    border: 5px solid #a36599;
}

#final .contunit h4{
	font-size: 21px;
	padding-bottom: 10px;
	margin-bottom: 20px;
	float: left;
	width: 100%;
}
#final .contunit .imgbox{
	display: inline-block;
	float: left;
	width: 200px;
}
#final .contunit .txbox{
	display: inline-block;
	float: left;
	width: calc(100% - 200px);
}
#final .contunit p{
	font-weight: normal;
	margin-top: 0;
}
#final .contunit .corp_img{
	float: left;
}
#final .contunit .v230{
	width:175px;
	display: block;
	margin-bottom: 5px;
}
#final .contunit .h230{
	width:230px;
}
#final .contunit .ttl_csite{
	padding: 5px 8px;
	margin-right: 8px;
	font-size: 0.8em;
	color: #ffffff;

}
#final .contunit .corp_box .ttl_csite{
	background-color: #52aab5;
}
#final .contunit .corp_box2 .ttl_csite{
	background-color: #499850;
}
#final .contunit .csite_box{
	margin-top: 10px ;
	overflow: hidden;
}
#final .contunit .csite_box a{
	display:inline-block;
}
#final .contunit .csite_box .L{
	display: inline-block;
	float: left;
}
#final .contunit .csite_box .R{

	display: inline-block;
	float: left;
}
#final .contunit .csite_box .R ul li{
	line-height:140%;
}
#final .contunit .name_box{
	width: 100%;
	overflow: hidden;
	font-size: 0.8em;
	line-height: 150%;
}

/*prise*/

.prise3 li{
	width:32% !important;
	margin-right:2% !important;
	padding-top:90px !important;
}
.prise3 > li:first-child{
	border-color: #b1dfe5 !important;
	background: url("../img/prise1.png")no-repeat;
	background-position:center 10px;
	background-size:50px;
}
.prise3 > li:nth-child(2){
	border-color: #b5dab5 !important;
	background: url("../img/prise2.png")no-repeat;
	background-position:center 10px;
	background-size:50px;
}
.prise3 > li:last-child{
	margin-right:0 !important;
	border-color: #F8E0E6 !important;
	background: url("../img/prise3.png")no-repeat;
	background-position:center 10px;
	background-size:50px;
}
.prise3 > li > a:after{
	content:none !important;
}
#prise .corp_box,
#prise .corp_box2{
	background:none !important;
	margin-top:10px !important;
}
#prise h3{
	text-align:center;
	padding-top:103px;
	margin-bottom:0 !important;
}
#prise1{
	background: url("../img/prise1.png")no-repeat;
	background-position:center 10px;
	background-size:60px;
}
#prise2{
	background: url("../img/prise2.png")no-repeat;
	background-position:center 10px;
	background-size:60px;
}
#prise3{
	background: url("../img/prise3.png")no-repeat;
	background-position:center 10px;
	background-size:60px;
}
#prise4{
	background: url("../img/prise4.png")no-repeat;
	background-position:center 10px;
	background-size:60px;
}
#prise5{
	background: url("../img/prise5.png")no-repeat;
	background-position:center 10px;
	background-size:60px;
}
#prise6{
	background: url("../img/prise6.png")no-repeat;
	background-position:center 10px;
	background-size:60px;
}
.wibox .info_box{
	float:left;
	width:calc(100% - 200px);
}
.wibox .info_box h5{
	font-size:1.2em !important;
	line-height:140%;
	margin-top:0 !important;
	margin-bottom:10px !important;
}
.wibox .info_box .name_box{
	font-size:1.3em !important;
	margin-top:10px !important;
	margin-bottom:10px !important;
}
.wibox .info_box .csite_box{
	margin-bottom:10px !important;
}
.wibox > img{
	margin-right:20px;
}
#prise h6{
	font-size:0.85em !important;
	margin-top:20px !important;
	margin-bottom:10px !important;
	padding:5px 15px;
	background-color:#e9e9e9;
	width:160px;
	text-align:center;
}
#ct2 h6{
	font-size:0.85em !important;
	margin-top:20px !important;
	margin-bottom:10px !important;
	padding:5px 15px;
	background-color:#e9e9e9;
	width:160px;
	text-align:center;
}
#prise .txbox{
	width:100% !important;
}

@media screen and (max-width:768px){
	#final .contunit .contbox > ul > li{
		width:100%;
		margin-bottom:10px;
		text-align:left;
		text-indent:0.5em;
	}
	#final .contunit .corp_box,
	#final .contunit .corp_box2{
		padding: 10px;
	}
	#final .contunit .imgbox{
		overflow: hidden;
		width: 100%;
  		text-align: center;
	}
	#final .contunit .imgbox{
		float: none !important;
		text-align:center !important;
	}
	#final .contunit .corp_img{
		width:80%;
		float: none !important;
		margin:0 auto 5px auto;
	}
	#final .contunit .txbox{
		float: none !important;
		width: 100%;
	}
	#final .contunit .name_box{
		font-size: 1em;
		margin-bottom:20px;
	}
	#final .contunit .csite_box a{
		font-size: 0.7em;
	}
	#final .contunit .csite_box .L{
		float: none !important;
	}
	#final .contunit .csite_box .R{
		float: none !important;
	}
	#final .contunit .csite_box .R ul{
		margin-top:5px;
	}
	#final .contunit .csite_box .R ul li{
		line-height:100%;
	}
	a.blank_b:after{
		margin-left: 5px;
	}
	#final .contunit .corp_box{
		background-position: 150% 115%;
	}
	#final .contunit .corp_box2{
		background-position: 145% 110%;
	}

	.prise3 li{
		width:100% !important;
		height:100px;
		float:none !important;
		background-position:20px !important;
		padding-top:18px !important;
		padding-left: 80px !important; 
		font-size:1.4em !important;
	}
	.prise3 li > a{
		padding-left:0 !important;
		padding-top:5px !important;

	}
	#prise h4{
		width:100% !important;
		float:none !important;
		text-align:center !important;
		margin-top:10px;
	}
	.wibox .info_box{
		width:100% !important;
		float:none !important;
	}
	.wibox .info_box h5{
		margin-top:20px !important;
	}
}
@media screen and (max-width:370px){
	.prise3 li{
		font-size:1.2em !important;
	}
}


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

report 20180314　20220318更新

--------------------------------------------------------------
------------------------------------------------------------*/
.report_gal {
    width: 960px;
}
.gal li {
    float: left;
    padding: 0 5px 5px 0;
	width:187px;
}
#report .contunit {
    margin-bottom: 60px;
}

.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
	 margin-bottom:-200px;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 60%;
     height: 60%;
}

.movieArea_ac {
    position: relative;
    overflow: hidden;
    margin: 20px auto -200px;
    width: 100%;
    height: 540px;
    padding: 0; }
	.movieArea_ac .movie-container_ac {
      position: absolute;
      top: 0;
      width: 60%;
      height: 60%;
      padding-top: 0; }
		.movieArea_ac .movie-container_ac .video-js {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
        }
		.movieArea_ac .movie-container_ac .video-js:focus {
          outline-style: none;
          }
		.movieArea_ac .movie-container_ac .video-js video {
          width: 100%;
          height: auto; }
		.movieArea_ac .movie-container_ac .movie-cover {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(255, 255, 255, 0.01); }
		.movieArea_ac .movie-container_ac .movie-cover:hover {
          cursor: pointer; }
		.movieArea_ac .movie-container_ac #movie_prs {
        display: block; } 

.movieArea_mu {
    position: relative;
    overflow: hidden;
    margin: 20px auto -200px;
    width: 100%;
    height: 540px;
    padding: 0; }
	.movieArea_mu .movie-container_mu {
      position: absolute;
      top: 0;
      width: 60%;
      height: 60%;
      padding-top: 0; }
		.movieArea_mu .movie-container_mu .video-js {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
        }
		.movieArea_mu .movie-container_mu .video-js:focus {
          outline-style: none;
          }
		.movieArea_mu .movie-container_mu .video-js video {
          width: 100%;
          height: auto; }
		.movieArea_mu .movie-container_mu .movie-cover {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(255, 255, 255, 0.01); }
		.movieArea_mu .movie-container_mu .movie-cover:hover {
          cursor: pointer; }
		.movieArea_mu .movie-container_mu #movie_prs {
        display: block; } 

.report-thumbnail {
	width: 60%;
	margin: 0 0 10pt 0;
}

	
@media screen and (max-width:768px){
	.report_gal {
    width: 100%;
}
	.gal li {
	width:48%;
	padding:0 1%;
	float:left;
	margin-bottom:2%;
}

	#lightbox img{ 
	width:100%!important;
}
	.lb-outerContainer{ 
	width:90%!important; 
	height:100%!important; 
}
	.lb-dataContainer, .lb-details{
		width:90%!important;
}
.lb-data{
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;
}

.lb-closeContainer{
	width:7%!important;
}
 .lb-close{
	 width:100%!important;
	}
.lb-prev {
	opacity :0.5!important;
  background: url(../../img/lightbox/prev.png) left 48% no-repeat!important;
  background-size:30px!important;
}

.lb-next {
	opacity :0.5!important;
  background: url(../../img/lightbox/next.png) right 48% no-repeat!important;
  background-size:30px!important;
}

.movie-wrap {
	 margin-bottom:0;
	 margin-left:5%;
}

.movie-wrap iframe {
     width: 94%;
     height: 90%;
}

.movieArea_ac {
	padding: 0px 5% 20px;
	width: 89% !important;
	height: 90% !important;
	max-width: 800px;
    margin: auto;
	}

	.movieArea_ac .movie-container_ac {
		position: relative;
		width: 100%;
		height: 0;
		padding-top: 56.25% !important;
		margin: 0 auto;
		overflow: hidden;
	}

.movieArea_mu {
	padding: 0px 5% 20px;
	width: 89% !important;
	height: 90% !important;
	max-width: 800px;
    margin: auto;
	}

	.movieArea_mu .movie-container_mu {
		position: relative;
		width: 100%;
		height: 0;
		padding-top: 56.25% !important;
		margin: 0 auto;
		overflow: hidden;
	}

.report-thumbnail {
	width: 90%;
	margin-bottom: 10pt;
	margin-left: 5%;
}

}



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

footer

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

#footer_load{
	margin-top: 50px;
}



.gheader{
	padding: 15px 30px;
	display: flex;
	justify-content: space-between;

}


.gfooter {
	margin-top: 60px;
	background-color: #F8F8F8;
	ul{
		padding: 10px;
		display: flex;
		justify-content: center;
		gap: 20px;
		font-size: 14px;
		@media screen and (max-width:1023px){
			flex-wrap: wrap;
		}
	}
	.gfooter_rights{
		padding: 10px;
		gap: 10px;
		color: #fff;
		background-color: #0a3e6f;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		@media screen and (max-width:1023px){
			flex-wrap: wrap;
		}
		img{
			width: 60px;
		}
		p{
			font-size: 11px;
		}
	}
}

