@charset "UTF-8";

/* ▼ スマホ(767px以下)の場合 */ 
@media screen and (max-width: 767px) {

/* リセット
================================================== */
.pc_no{display:block !important;}
.sp_no{display:none !important;}
img{height:auto;}
.ls005{letter-spacing: 0;}
.fs_18{font-size:16px}
.spfs_14{font-size:14px; line-height: 1.5em;}
.txp_center{text-align: left;}
.pb30{padding-bottom:10px}
.arrow_down{
	background : url("../images/arrow_down.png") no-repeat right 0.8em center;
	background-size: 10px;
	padding-right:13px;
}
.arrow_right_sp{
	background : url("../images/arrow_right.png") no-repeat right 0.8em center;
	background-size: 8px;
	padding-right:13px;
}
.arrow_right{
	background : url("../images/arrow_right.png") no-repeat right top 0.05em;
	background-size: 10px;
	padding-right:18px;
}

.sm-2line{
line-height: 1em !important;
}


/* メイン
================================================== */
body  {
	font-size: 15px;
	line-height: 1.6em;
}

/* TOPページ
================================================== */
.back_line_x{
	width:100%;
	background: url("../images/line_x.png") repeat-x top 20px center;
}
.fix_pb{
	padding-bottom:220px;
}
.head_navi{
	width:90%;
	margin:0 0 0 6%;
	padding-top: 35px;
}
.navi_menu{
	height: auto;
	display: flex;
 	flex-wrap: wrap;
}
.border-blue{
	border-top: solid 1px #0068b6;
	border-left: solid 1px #0068b6;
}
.border-black{
	border-top: solid 1px #000;
	border-left: solid 1px #000;
}
.navi_menu > li{
	float: none;
	width:50%;
	height: 40px;
    	line-height: 25px;
	display: block;
	padding:8px;
	font-size:13px;
}
.navi_menu > li:first-child{padding:8px;}

.navi_menu > li.fc_blue{border-bottom: solid 1px #0068b6;}
.navi_menu > li.fc_black{border-bottom: solid 1px #000;}
.navi_menu > li.all{width:100%; letter-spacing: -0.03em}
@media screen and (max-width: 365px) {
	.navi_menu > li.all{letter-spacing: -0.08em;}
}
.navi_menu > li.menu__single { padding:8px}
.menu__second-level li a{ padding:8px;}
li.menu__single ul.menu__second-level {
    	top: 40px;
	left:0;
}
li.menu__single:hover ul.menu__second-level {
    top: 40px;
}

.top_head{
	width:90%;
	margin:30px auto 20px;
}
.top_head2024{
	margin:15px auto 0;
}
img.cts_btn{
	position: absolute;
	width:43%;
	max-width:200px;
	height:auto;
	top:-10px;
	right:0;
}
.top_linebox{
	width:100%;
	margin:20px auto;
	padding:15px 0;
}
.top_linebox2024{
	margin:0 auto 20px;
	padding:15px 0;
}
.top_news_wp{
	width:90%;
	display: block;
	height:190px;	
}
.tn_ttile{width:100%; text-align: left;}
.tn_ttile h3{
	font-size:18px;
	margin-left:15px
}
.tn_inner{
	width:100%;
	padding:0 15px;
}
.tn_inner dl dt {
	flex-basis: 100%;
	padding: 10px 0 5px;
	border-bottom: none;
}
.tn_inner dl dd {
	flex-basis: 100%;
	padding: 0 0 15px;
	border-bottom: 1px solid #999;
	font-size:14px;
}
.contents_wp{	width:95%;}
.about_box{
	margin:30px auto 30px;
	padding:30px 20px;
}
img.okagas_logo{margin-bottom:20px}
img.contest_title{margin-bottom:15px}
img.entry-info{margin:20px auto 10px;}
img.result_bnr{margin:0 auto;}
.about_box p{line-height: 1.8em; text-align: left;}
.about_box p.abt_invn{margin-top:20px}
.about_box h3{
	border: solid 1px #666;
	border-radius:15px;
	font-size:18px;
	padding:0.8em 1.3em;
	display: block;
	letter-spacing: 0;
}
ul.cts_img{
	width:100%;
	margin:15px auto 0;
}
ul.cts_img li{width:49%}
p.pt_text,
p.pt_text a{margin-left:2%; font-weight: normal; font-size:14px}
img.aftercontents_bnr_mini{
	width:100%;
	max-width:450px;
	margin:15px auto 0;
}
.contest_info{
	width:95%;
	margin:35px auto;
}
.contest_yt{
	margin:20px auto 0;
	padding:10px 20px 15px;
}
.youtube {
	margin:10px auto;
}
.ct_pdf{
	margin:15px auto 0;
	padding:20px;
}
.ct_pdf_img{width:27%}
.ct_pdf_txt{width:68%; text-align: center;}
.ct_pdf_txt h3{font-size:15px;}
.contest_yt p,
.ct_pdf_txt p{font-size: 14px; line-height: 1.6em;}
.contest_info h2{
	margin-bottom:15px;
	font-size:16px;
	letter-spacing: 0;
}
.contest_info h3.s_title{
	letter-spacing: 0.05em;
  	padding:0.3em;
  	width:200px;
  	margin-bottom:0.5em;
  	font-size:15px;
}
.contest_info h4.ss_title{
	margin-top:15px;
	font-size:16px;
}
.contest_info dl{
	width: 95%;
	margin:15px auto;
}
.contest_inner{
	width: 95%;
	margin:10px auto 0;
}
.contest_inner p{font-weight: normal}
.contest_inner h3.subtl{font-size:16px; margin-bottom:0.5em}
.contest_info dl dt {
  	float: none;
  	padding:0.3em;
  	width:200px;
  	margin-bottom:0.5em;
  	font-size:15px;
}
.contest_info dl dd {
  	margin-left: 0;
  	font-weight: normal;
  	padding:0;
  	margin-bottom:1em;
  	line-height: 1.7em;
}
ul.about_4s,
ul.about_3s{
	width: 95%;
	margin:20px auto;
	display: block;
}
ul.about_4s li{
	width:100%;
	margin:40px 0;
	padding:35px 10px 20px;
}
ul.about_4s li h3{
	color:#0068b6;
	font-size:16px;
	margin-bottom:15px;
}
ul.about_4s li p{font-weight: normal}
.og_link a{font-size: 16px;}
.arrow_bk{
	background : url("../images/arrow_bk.png") no-repeat left 0.05em;
	background-size: 10px;
	padding-left:13px;
}
img.nbimg{
	width:80px;
	height:auto;
	position: absolute;
	top:-20px;
	left: 0;
	right:0;
	margin:auto;
}
img.imgicon{
	width:80px;
	max-width:80px;
	height:auto;
	position: absolute;
	top: -8%;
	right: -3%;
}
ul.about_3s li{
	width:100%;
	margin-top:10px;
	padding:20px 20px 15px;
}
ul.about_3s li h3{
	font-size:18px;
	margin-bottom:10px;
}
ul.about_3s li h3.bb_blue{
	padding-bottom:13px;
}
p.bumon{
	padding: 13px 8px;
	font-size:16px;
}
table.tb01{
	width: 100%;
	margin:20px auto;
}
@media screen and (max-width: 498px) {
	table.tb01{margin:0 auto;}
	table.tb01 th,
	table.tb01 td{
		display: block;
		width:100%;
  		box-sizing:border-box;
		text-align:center;
	}
	table.tb01 th{
		font-size:16px;
		background:#eee;
		padding: 8px 10px;
		margin-top:10px;
		margin-bottom:8px;
	}
	table.tb01 td{padding: 3px 10px;}
	table.tb01 td.tbinfo{font-size:14px; margin-bottom:15px; font-weight:normal}
	.tb_br{border-right: none;}
	.tb_bb{border-bottom: none;}
}
.about_2s{
	width: 95%;
	margin:10px auto;
	display: block;
}
.about_2s_in{
	width:100%;
	margin-bottom: 15px;
}
.about_2s_in h3{
  	color:#fff;
  	padding:0.5em;
  	font-size:16px;
	letter-spacing: 0;
}
.about_2s_in ul{padding:15px}
.about_2s_in ul li{margin-bottom:0.3em; font-weight:normal}
.schedule_wp{
  	width:70%;
  	max-width:300px;
  	margin:20px auto 30px;		
  	display: block;
}
.sd_flow, .sd_arrow{ width:100%; margin-bottom:0.5em;}
.sd_flow img{ width:100%;}
.sd_arrow img{ width:35%; max-width:50px; display: block; margin:0 auto;}

ul.app_list{margin-bottom:15px;}
ul.app_list li{
  	display: inline-block;
	width:50%;
	padding-top:5px;
  	margin-right:0;
  	font-size:15px
}
ul.app_list li span{
  	padding:0.3em 0.7em 0.2em;
}
@media screen and (max-width: 498px) {
	ul.app_list li{ display: block; width:100%; font-size:16px}
}
.add_in{
	margin:10px 0;
	padding: 15px 10px 5px;
}
.add_in p{
	line-height:1.6em;
	margin-bottom:0.5em;
	font-weight:bold;
}
/* NEWS
================================================== */
.bc_list{
	width:85%;
	margin:20px auto;
	padding-left:0;
}
.news_ctswp{
	width:90%;
	margin:20px 0 0 6%;
	padding-bottom:50px
}
.page_ctswp,
.result_ctswp{
	width:90%;
	margin:30px 0 0 6%;
	padding-bottom:30px
}
.news_ctswp h2{
	font-size:26px;
	margin-bottom:20px;
}
ul.news_wp{
	width:100%;
	padding:10px;
	height:400px;
}
li.news_inner{
	display: block;
	border-bottom: solid 1px #0068b6;
	padding:30px 5px;
}

.news_date{width:100%; margin-left:0}
.news_content h3{
	font-size:16px;
	margin-top:10px;
	margin-bottom:8px;
}
/* 結果発表
================================================== */
.result_ctswp h2{
	font-size:17px;
	margin-bottom:15px;
	line-height: 1.6em;
}
.result_ctswp h2 span{font-size:22px;}
.result_txt{padding:0 0.5em; text-align: justify;}
.tab01 {
	width: 100%;
	margin: 20px auto;
}
/*タブのスタイル*/
.tab_menu {
	width: 49.5%;
 	height: 50px;
  	line-height: 50px;
  	font-size: 16px;
}
.tab01 > input:first-child + label {
	background: url("../images/result/crown.png") no-repeat left 30px center;
	background-size:25px auto;
	padding-left:22px;
}
.tab01 > input:first-child + label:hover  {
	background: url("../images/result/crown.png") #e6f7fc no-repeat left 30px center;
	background-size:25px auto;
}
@media screen and (max-width: 498px) {
	.tab01 > input:first-child + label {
		background: url("../images/result/crown.png") no-repeat left 10px center;
		background-size:22px auto;
	}
	.tab01 > input:first-child + label:hover  {
		background: url("../images/result/crown.png") #e6f7fc no-repeat left 10px center;
		background-size:22px auto;
	}
}
.tab_contents {
  padding: 20px;
}

h3.result_md1{margin-top:10px; margin-bottom:15px}
h3.result_md1 span{
	padding:0.5em 0.7em;
	font-size:16px;
}
h4.result_md2{
	font-size:18px;
	margin-bottom:0.7em;
}
p.sh_title{
	font-size:15px;
	margin-bottom:0.3em;
}
.rlt_box{
	padding-top:20px;
	margin-top:20px;
	display: block;
}
.gp_img{width:100%;}
.gp_text{width:100%;}
.gp_img ul{
	display: flex;
	justify-content:space-between;
}
.gp_img ul li{width:49%;}
.gp_img ul li img{
	margin-bottom:0.5em;
}
.gp_text h3{margin-bottom:0.5em; margin-top:0;}
.gp_text h3 span{
	padding:0.4em 0.7em;
	font-size:15px;
}
.gp_text h4{
	font-size:16px;
	margin-bottom:0.8em;
	line-height: 1.5em;
}
p.fr_subinfo{
	font-size:15px;
	margin-bottom:20px;
}
h3.fr_subtl{
	font-size:16px;
	margin-top:0;
	margin-bottom:1em;
}
.frs_box{flex-wrap:wrap;}
.frs_inner{width:48%; margin-bottom:1em;}
@media screen and (max-width: 498px) {
	.frs_box{
		width:100%;
		display: block;
	}
	.mr_tw{margin-right:0;}
	.frs_inner{width:95%; margin:0 auto 30px;}
}
.frs_inner img{margin-bottom:0.2em;}
.frs_inner h4{
	font-size:15px;
	margin-bottom:0.2em;
}
.frs_inner p{margin-bottom:0.5em;}
.frs_inner p.fr_name{margin-top:0.5em}
p.last_info{text-align:center; font-size:13px;}
/* 岡山ガス分野
================================================== */
.page_ctswp h1.bny_title{
	width:77%;
	margin:0 auto 20px;
	padding:0.6em;
	border-radius:40px;
	font-size:16px;
}
p.p_cms{
	margin-top:50px;
	font-size:24px;
	padding-bottom:150px;
}
p.p_nml{
	text-align: left;
	line-height: 1.8em;
	font-size: 14px;
	padding:0 15px 0 10px;
	text-align: justify;
}
.bny_wp{
	width:95%;
	margin:30px auto 30px;
}
.bny_wp h2{
	font-size:16px;
	margin-bottom:10px;
	letter-spacing: 0;
}
.bny_wp h2.bny_no1{
	background : url("../images/okagasubunya/no1.png") no-repeat left center;
	background-size: 40px auto;
	padding:8px 0 8px 45px;
}
.bny_wp h2.bny_no2{
	background : url("../images/okagasubunya/no2.png") no-repeat left center;
	background-size: 40px auto;
	padding:8px 0 8px 45px;
}
.bny_wp h2.bny_no3{
	background : url("../images/okagasubunya/no3.png") no-repeat left center;
	background-size: 40px auto;
	padding:8px 0 8px 45px;
}
.bny_wp h2.bny_other{
	background : url("../images/okagasubunya/other.png") no-repeat left center;
	background-size: 40px auto;
	padding:8px 0 8px 45px;
}
@media screen and (max-width: 498px) {
	.bny_top{
		display:block;
	}
	.bny_topimg{width:100%;}
	.bny_topimg img{
		display: inline-block;
		margin:5px 1% 15px 0;
	}
	.bny_topimg img.bm_1{width:45%}
	.bny_topimg img.bm_2{width:50%}
	.bny_toptext{width:100%; font-weight:normal}
}
.bny_toptext h3{font-size:16px; margin-bottom:7px}
.bny_toptext h3:before {
  content: "▲";
  margin-right: 5px;
}
.bny_toptext h4{
	font-size:15px;
	margin:20px 0 5px;
}
.bny_toptext ul{margin-bottom:20px}
.bny_example{
	width:100%;
	margin:20px auto 20px;
}
.bny_example p.ex_tl{
	font-size:18px;
}
.blue_fm{
	width:100%;
	margin:10px auto 0;
	padding:15px 15px;
}
.blue_fm h3{
	font-size:15px;
	margin-top:0.5em;
	margin-bottom:0.3em;
}
.bnmb_20{margin-bottom:1.5em; font-size:14px}
.sp_ls20{ line-height: 2.0em;}
ul.bny_list li{
	margin:0.4em 0;
	font-size:14px;
}
ul.bny_list li:first-child{margin:0.3em 0 0.4em;}
ul.bny_list li:last-child{margin:0.4em 0 0.3em;}
p.bny_ott{
	padding-top:7px;
	line-height: 1.8em;
	margin-bottom:1.3em;
	font-size:14px;
}
p.nami_txt{
	margin-top:30px;
	background : url("../images/okagasubunya/namiline.png") no-repeat center bottom;
	background-size:200px auto;
	font-size:16px;
	padding:0 0.2em 0.8em;
	letter-spacing: 0.1em;
}
.sp_pb10{padding-bottom:10px}

/* ファイナリストを追う
================================================== */
.fns_ctswp{
	width:90%;
	margin:0 0 0 6%;
	padding-bottom:30px
}
.fns_line_x{
	width:100%;
	background: url("../images/finalist/bk-line_x.png") repeat-x top 20px center;
}
.arrow_down_bk{
	background : url("../images/arrow_down_bk.png") no-repeat right 0.8em center;
	background-size: 10px;
	padding-right:13px;
}
.fns_pt50{padding-top:30px}
img.fns_header{
	width:100%;
}
ul.fns_list li{width:49%}

@media screen and (max-width: 498px) {
	ul.fns_list{
		width:90%;
		margin:20px auto 30px;
		display: block;
	}
	ul.fns_list li{
		width: 100%;
		max-width: 400px;
		margin:0 auto 25px;
	}
}
ul.fns_list li:after {
    content: "";
    display: block;
    width: 49%;
    height: 0;
}

ul.fns_list li h2{
	font-size:16px;
	padding:0.3em 1.1em 0;
}
.reportwp{
	width:95%;
	margin:15px auto 20px;
}
.reportwp p.day{
	font-size:15px;
}
.reportwp h2{
	font-size:18px;
	padding:0.4em 0.3em 0.7em;
	background: url("../images/finalist/bk-line_x.png") repeat-x bottom left;
	margin-bottom:1em;
}
.report-txt{
	margin:15px auto
}
.report-txt p{text-indent: 1em; padding:0; line-height: 1.8em;}
/* ARCHIVE
================================================== */
.archive_wp{
	margin:30px auto 0;
	padding-bottom:50px;
}
.archive_wp h2{
	font-size:26px;
	margin-bottom:20px;
}
.archive_wp p{font-size:14px}
ul.archive_list{
	width:100%;
	margin:20px auto;
}
ul.archive_list li a{
	background: url("../images/arrow_right.png") no-repeat right 1.8em center;
	background-size:8px;
	border: solid 1px #0068b6;
	padding:0.7em 2em 0.7em 2em;
	font-size: 15px;
}
ul.archive_list li a:hover{
	background: url("../images/arrow_right_wt.png") #0068b6 no-repeat right 1.8em center;
	background-size:8px;
}
/* フッター
================================================== */
.footer_wp{
	padding:30px 0 20px;
}
ul.ftnavi_menu{
	width:90%;
	text-align: left;
	margin:0 auto 20px;
	border-top: solid 1px #8eaabe;
	border-bottom: solid 1px #8eaabe;
	padding:20px 0 15px;
}
ul.ftnavi_menu li{
	display: block;
	padding:0 10px;
	border-right: none;
	border-left: solid 3px #fff;
	font-size:14px;
	margin-bottom:0.5em;
	font-weight: normal;
}
ul.ftnavi_menu li.ls_m05{letter-spacing: -0.05em;}
ul.ftnavi_menu li:first-child{padding:0 10px;}
.footer_in h3{font-size:16px; padding-left:10px; margin-bottom:0.3em}
.footer_in h3 span{font-size:15px;}
.footer_in p{padding-left:10px; letter-spacing: 0.05em; font-weight: normal}
.footer_in ul li{display:block; margin-right:0; font-weight: normal}

}
