@charset "utf-8";
/* ==================================================

base.css

1＿defaultCSS_A Modern CSS Reset
2＿ase-styleCSS
3＿header
4＿footer 
5＿メインナビゲーション
6＿ぱんくず
7＿main メインコンテンツ
        Lトップページ用大枠
        L下層用大枠
        L下層用サブナビゲーション
ボタン
8.文章の設定（フォントカラー、p、など）
9.リストの設定（共通）
10.イレギュラー設定（margin、paddingなど）

================================================== */
/*======================================*/
/* 1＿defaultCSS_A Modern CSS Reset */
/*======================================*/

*,*::before,*::after{box-sizing:border-box}ul[class],ol[class]{padding:0}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}html{scroll-behavior:smooth}body{min-height:100vh;text-rendering:optimizeSpeed;line-height:1.5}ul[class],ol[class]{list-style:none}a:not([class]){text-decoration-skip-ink:auto}img{max-width:100%;display:block;vertical-align: text-bottom;}input,button,textarea,select{font:inherit}
/*article>*+*{margin-top:1em}*/

/*======================================*/
/* 2＿base-styleCSS */
/*======================================*/

* {-webkit-box-sizing: border-box;box-sizing: border-box
}

.touchHover, .noTapColor, button {
  -webkit-tap-highlight-color: transparent;
    outline: none;
}
html{
    font-family: sans-serif;
    scroll-behavior: smooth;
}
body{
    margin: 0;
    padding: 0;
    -webkit-text-size-adjust: 100%;
    font-size: 15px;
    overflow-x: hidden;
    word-wrap: break-word !important;
    word-break: break-all !important;
}
a{background: transparent;}
a:focus{outline: thin dotted;}
a:active,
a:hover{
    outline: 0;
    opacity: 1;
    -webkit-transition: 0.3s ease-in !important;
    transition: 0.2s ease-in !important;
}
html,div,span,object,iframe,
h1,h2,h3,h4,h5,h6,p,blockquote,pre,
a,abbr,acronym,address,code,del,em,img,strong,
dl,dt,dd,ol,ul,li,
fieldset,form,label,
table,tbody,tfoot,thead,tr,th,td{
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
table {
    border: none;
    border-collapse: collapse;
    border-spacing: 0;
    word-wrap:break-word !important;
}
caption {vertical-align: text-top;}
article,aside,footer,header,small,nav,section,figure,figcaption,main{
	margin: 0;
	padding: 0;
	display: block;
	vertical-align: baseline;
	list-style: none;
	background-color: transparent;
	outline: none;
}
audio,canvas,video{display: inline-block;}
ul,ol{list-style-type: none;}
table{
	border: none;
	border-collapse: collapse;
	border-spacing: 0;
}
a img{
	border: none;
	outline: none;
}
sub,sup{
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
hr{box-sizing: content-box;height: 0;}
dt,dd,li,
th,td,
input,textarea{
	text-align: left;
	vertical-align: top;
	outline: none;
}
input{
	border: 1px solid #dad7d3;
	padding: 2px 5px;
	background-color: #fff;
	-webkit-appearance: none;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=search]:focus,
input[type=url]:focus,
textarea:focus {
	background-color: #e8faff;
}
button,label{background-color: transparent;cursor: pointer;	-webkit-appearance: none;}
button,
input[type="button"],
input[type="reset"],
input[type="submit"]{
	-webkit-appearance: button;
	cursor: pointer;
}
button[disabled], input[disabled]{cursor: default;}
input[type="checkbox"],
input[type="radio"]{
	box-sizing: content-box;
	padding: 0;
	vertical-align: middle;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration{
	-webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner{padding: 0;border: 0;}
textarea{
	overflow: auto;
	vertical-align: top;
}
fieldset {border: none;}

/* 0-2. Base
-------------------------------------------------- */
* {box-sizing: border-box;}
html {font-size: 62.5%;scroll-behavior: smooth;}
body {
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing: 0.09em;
  font-size: 1.5rem;
  color: #333;
  line-height: 1.8;
  word-wrap: break-word;
  word-break: break-all;
}
p {font-size: 1.5rem;}
h1, h2, h3, h4, h5, h6 {font-weight: 600;}
table {width: 100%;}
tr, th, td {
	padding: 15px;
	word-break: break-all !important;
	font-weight: normal;
	text-align: left;
	font-family: 'Noto Sans JP', sans-serif !important;
}
th {vertical-align: middle; padding: 15px 0 15px 15px;}
input,textarea,button,select{
	font-family: 'Noto Sans JP', sans-serif;	
	border-radius: 3px;
	border: 1px solid #ccc;
	padding: 5px 7px;
	margin: 0 8px;
	width: auto;
	display: inline-block;
	font-size: 100%;
}
select {
	border-radius: 3px;
	border: 1px solid #dad7d3;
	background-color: #fff;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: rgba(255,255,255,1.00);
	overflow: hidden;
	height: 35px;
    font-size: 96%;
}
input {
	border: 1px solid #dad7d3;
	padding: 2px 5px;
	background-color: #fff;
	-webkit-appearance: none;
	vertical-align:middle;
	height: 35px;
}
input,textarea{
	text-align: left;
	vertical-align: top;
	outline: none;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=search]:focus,
input[type=url]:focus,
textarea:focus {background-color: #e8faff;}
button,label{background-color: transparent;cursor: pointer;	-webkit-appearance: none;}
button,
input[type="button"],
input[type="reset"],
input[type="submit"]{
	-webkit-appearance: button;
	cursor: pointer;
}
button[disabled], input[disabled]{cursor: default;}
input[type="checkbox"],
input[type="radio"]{
	box-sizing: content-box;
	padding: 0;
	vertical-align: middle;
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration{-webkit-appearance: none;}
button::-moz-focus-inner,
input::-moz-focus-inner{
	padding: 0;
	border: 0;
}
textarea{overflow: auto; vertical-align: top;}
fieldset {border: none;}
a {background: transparent;}
a:link, a:visited {color: #333;}
a:hover {
  color: #e30076;
  text-decoration: none;
  outline: 0;
  opacity: 1;
  -webkit-transition: 0.1s ease-in !important;
  transition: 0.1s ease-in !important;
}
a:focus {outline: none;}
a img:hover {opacity: 0.90;}
strong {font-weight: 500;}
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
/* 読み上げ用スキップ機能：ブロックスキップ ----- -- */
#skip-goto_main {
	display: block;
	left: -9999px;
	position: absolute;
	top: -9999px;
}
.inner {max-width: 1200px;margin: 0 auto;}
    @media only screen and ( max-width : 896px ) {.inner {max-width:100%; margin: 0 4%;}}
.flex-flexflow {display: flex; flex-flow: row;}
.flex-flexwrap { display: flex;flex-wrap: wrap;}
.pc-only {display: block !important;}
.sp-only {display: none !important;}

/*======================================*/
/* 3＿header  */
/*======================================*/
header {
	width:100%;
	background:#e85282;
	color:#fff;
	position: fixed;
	z-index: 999;
	top: 0; left: 0;
}

/* === header01:quickナビゲーションの段=== */
header .quickNavWrap{margin: 0 auto;display: flex;align-items: center;}
header h1 {width: 200px; background: #ffffff; padding: 10px 8px 10px 12px;}/* 60thロゴ用 */
/* header h1 {width: 145px; background: #ffffff; padding: 20px 18px;}通常ロゴ用 */
header h1 img {display: block; margin: 0 auto;}
nav#quickNav {margin-left: 4%;}
nav#quickNav ul {display: flex; justify-content: center;}
nav#quickNav ul li {margin-right: 20px;}
nav#quickNav ul li:last-child {margin-right: 0;}
nav#quickNav ul li img {display: block;height: 48px;}

/* === ハンバーガーメニューナビ === */
#globalNav {
  width: 100%;
  margin: 0 auto;
  padding: 0.5rem 0;
  background: #fefefe;
}
#g-nav{
	position:fixed;
	z-index: -1;
	opacity: 0;
	top:0;
	width:100%;
	height: 100vh;
	background:#4f4546;
	transition: all 0.05s;
}
#g-nav.panelactive{opacity: 1;z-index:999;}
#g-nav_search form{
	box-sizing: border-box;
	position: relative;
	border: none;
	padding: 1rem;
	margin-bottom: 4rem;
	border-radius: 50px;
	width: 63rem;
	background-color: #bd436a;
	overflow: hidden;
}
#g-nav_search form input[type="text"]{
	border: none;
	width: 86%;
	background-color: #bd436a;
	color: #fff;
	letter-spacing: 2px;
}
#g-nav_search form input[type="text"]:focus {outline: 0;}
#g-nav_search form input[type="submit"]{
	cursor: pointer;
	border: none;
	background: url("../image/top/icon_search.png") no-repeat;
	background-size: 26px auto;
	position: absolute;
	width: 35px;
	height: 35px;
	right: 7px;
	top: 15px;
	outline : none;
}
::placeholder {color: #fff; font-size: 1.6rem;}
#g-nav.panelactive #g-nav-list{
    z-index: 999; 
    width: 70rem;
    height: 100vh;
	margin-left: auto;
	margin-right: auto;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
/*ナビゲーション*/
#g-nav ul {display: none;}
#g-nav.panelactive ul {display: block;}
/*リストのレイアウト設定*/
#g-nav-list {max-width: 1200px;margin: 80px auto 0;}
#g-nav-list a {color: #fff !important; /*text-transform: uppercase;*/ text-decoration: none;display: inline-block;}
#g-nav-list  a:hover{opacity: 0.5;text-decoration: none;}
#g-nav-list  h3{font-weight: 500;font-size:2rem;margin-bottom: 1rem;}
#g-nav-list .f_nav{width: 33%;}
#g-nav-list .f_nav ul{margin-bottom: 2rem; font-size: 1.6rem;}
#g-nav-list .f_nav ul li{margin-bottom: 0.5rem;}
	@media only screen and (min-width: 1px) and (max-width: 896px){
		#g-nav-list { width: 92% !important; margin: 80px 4% 0 4%;}
		#g-nav-list  h3{font-size:1.5rem;}
		#g-nav-list .f_nav ul{ font-size: 1.2rem;}	
		}

/* ボタン */
.openbtn1{
	position:fixed;
	z-index: 9999;/*ボタンを最前面に*/
	top:15px;
	right: 4%;
	cursor: pointer;
	width: 50px;
	height:50px;
	border-radius: 8px;
	background: #d8d6d6;
}
/*×に変化*/  
.openbtn1 span{
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 13px;
	height: 5px;
	border-radius: 2px;
	background-color: #e85282;
	width: 50%;
}
.openbtn1 span:nth-of-type(1) {top:13px; }
.openbtn1 span:nth-of-type(2) {top:23px;}
.openbtn1 span:nth-of-type(3) {top:33px;}
.openbtn1.active span:nth-of-type(1) {top: 17px;left: 12px;transform: translateY(6px) rotate(-45deg);width: 50%;}
.openbtn1.active span:nth-of-type(2) {opacity: 0;}
.openbtn1.active span:nth-of-type(3){top: 29px;left: 12px;transform: translateY(-6px) rotate(45deg);width: 50%;}
    @media only screen and (min-width: 1px) and (max-width: 896px){
		.openbtn1{top:8px; right: 3%; width: 48px; height:48px;}
		.openbtn1 span {left: 12px;}
		.openbtn1 span:nth-of-type(1) {top:11px; }
		.openbtn1 span:nth-of-type(2) {top:21px;}
		.openbtn1 span:nth-of-type(3) {top:31px;}
		.openbtn1.active span:nth-of-type(1) {top: 15px;}
		.openbtn1.active span:nth-of-type(3){top: 27px;}
	}

/* === header02:メインナビゲーションの段 === */
nav#main-nav {
	position: relative;
    width: 100%;
    background-color: #332d2d;
    margin: 0 auto;
    z-index: 1;
	overflow-x: auto;
}
nav#main-nav ul {
    max-width: 1200px;
    margin: 0 0 0 auto;
	padding: 10px 0;
	text-align: right;
	line-height: 1;
	overflow: auto;
	-webkit-overflow-scrolling:touch;
	white-space: nowrap;
	}
nav#main-nav ul li {
	position: relative;
	display: inline-block;
	color: #fff;
	font-size: 1.7rem;
	letter-spacing: 1px;
    vertical-align:bottom;
    cursor:pointer;
    opacity: 1;
	padding: 0 18px;
	}
	nav#main-nav ul li:after{ position: absolute; right: 0; top: 27%; content: "｜";}
	nav#main-nav ul li:last-child:after{content: "";}
nav#main-nav ul li a {
    display: block;
    padding:10px 18px 10px 30px;
    text-decoration: none; 
    color:#fff;
	font-weight: 500;
	background-repeat: no-repeat !important;
	background-size: 25px !important;
	background-position: center left !important;
    }
	nav#main-nav ul li:last-child a {padding:10px 0 10px 34px;}
    nav#main-nav ul li:nth-child(1) a {background: url("../image/common/icon_mainnav_news.png");}
    nav#main-nav ul li:nth-child(2) a {background: url("../image/common/icon_mainnav_tv.png");}
    nav#main-nav ul li:nth-child(3) a {background: url("../image/common/icon_mainnav_event.png");}
    nav#main-nav ul li:nth-child(4) a {background: url("../image/common/icon_mainnav_announcer.png");}
    nav#main-nav ul li:nth-child(5) a {background: url("../image/common/icon_mainnav_sdgs.png");}

    /* メニューがMTで２つ以上追加されたときはアイコン消してつめる*/
    nav#main-nav ul.noicongmenu li {padding: 0 6px;}
    nav#main-nav ul.noicongmenu li a {padding:10px 18px 10px 0px;}
    nav#main-nav ul.noicongmenu li:last-child a {padding:10px 0 10px 0px;}
    nav#main-nav ul.noicongmenu li:nth-child(1) a {background: none;}
    nav#main-nav ul.noicongmenu li:nth-child(2) a {background: none;}
    nav#main-nav ul.noicongmenu li:nth-child(3) a {background: none;}
    nav#main-nav ul.noicongmenu li:nth-child(4) a {background: none;}
    nav#main-nav ul.noicongmenu li:nth-child(5) a {background: none;}


	nav#main-nav ul li a:hover {opacity: 0.80; -webkit-transition: 0.2s ease-in;transition: 0.2s ease-in;}
	@media only screen and (min-width: 897px) and (max-width: 987px){}
    /* タブレット以下：アイコン非表示で横スクロール*/
    @media only screen and (min-width: 1px) and (max-width: 896px){
		nav#main-nav ul {max-width: 896px; padding: 4px 0 6px 0 ;}
		nav#main-nav ul li,nav#main-nav ul.noicongmenu li {font-size: 1.4rem; padding: 0 8px 0 0;}	
		nav#main-nav ul li a,nav#main-nav ul.noicongmenu li a {background:none !important; padding:10px 10px 10px 0;}
		nav#main-nav ul li:last-child a {padding:10px 0 10px 0;}
	    }
/*======================================*/
/* 6＿ぱんくず  */
/*======================================*/
#breadcrumb ol {margin-bottom: 1.2rem;line-height: 1.5;}
#breadcrumb li {
    display: inline;
    list-style: none;
    padding-right: 12px;
    font-size: 88%;
    position: relative;
	word-break: break-all;
}
    /* 読み上げ用：開始位置の前に「現在の位置は」と生成するがブラウザ上では非表示 */
    #breadcrumb li:first-child::before {
      content : "現在位置は";
      display : inline;
      width : 0 !important;
      height : 0 !important;
      visibility : hidden;
        position: absolute;
        left: 0;
    }
    /*読み上げ用：接続詞「から」と生成するがブラウザ上では>を表示*/
    #breadcrumb li::after {
        content : "から";
        display : inline;
        padding : 7px 0 0 7px;
        overflow : hidden ;/* 「から」非表示 */
        width: 4px !important;
        height: 4px !important;
        border: 0px;
        border-top: solid 1px #333333;
        border-right: solid 1px #333333;
        -ms-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        right: 1px;
        margin-top: -3px;
    }
        @media all and (-ms-high-contrast:none){*::-ms-backdrop, #breadcrumb li::after { margin-top: -6px; } /* IE11 */}
    /*中間のページ*/
    #breadcrumb li + li::after { content : "の中にある"; position: absolute;}
    /*現在のページ*/
    #breadcrumb li:last-child::after {content : none ;}
    #breadcrumb ol a {color: #000000;vertical-align: top;}

/*======================================*/
/* 7＿main メインコンテンツ (エリア構成)   */
/*======================================*/
/* === メインコンテンツエリア設定 === */
#contentWrap {margin-top: 138px;overflow: hidden;min-height: 500px;}

/* === 下層のメインエリア === */


/*======================================*/
/* 8＿footer  */
/*======================================*/

/* === SNS公式アカウント一覧エリア === */
#snsArea {padding: 24px 0; background-color: #252525; text-align: center;}
#snsArea ul{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 7px;
	}
#snsArea ul li{margin-right: 4rem;}
#snsArea ul li:last-child{margin-right: 0;}
#snsArea ul li a::after {display: none;}
#snsArea ul li a img {display: block; height: 35px;}
#snsArea a.sns_all { color: #999999; width:auto; text-decoration: none; display: inline-block;}
footer {
	background:#e85282;
	color: #fff;
	padding: 50px 0 100px;
}
footer a {color: #fff !important; text-decoration: none;}
footer a:hover{opacity: 0.8;text-decoration: none;}
.footer_navWrap {
	max-width: 1200px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto 20px;
}
.footer_navWrap figure.footer-logo {width: 126px; background: #ffffff; padding: 24px 16px;}
.footer_navWrap figure.footer-logo img {display: block; max-width:92px; width: 100%;}
h3.foot_tit{font-weight: 500;font-size:1.6rem;margin-bottom: 0.5rem;}
.f_nav{width: 16.6%;}
.f_nav.tvprogram{width: 29%;}
.f_nav ul{margin-bottom: 20px; font-size: 1.4rem;}
.f_nav ul li{margin-bottom: 2px;}
.footer_Box{padding: 25px 0 30px 0; text-align: right; 	border-top: 1px solid #f3a7bf;}
.footer_Box ul{max-width: 1200px;display: flex;justify-content: flex-end;font-size: 1.4rem;margin-bottom: 1rem;}
.footer_Box ul li{margin-right: 1.2em;}
.footer_Box ul li:last-child{margin-right: 0;}
footer small{font-size: 1.25rem;}


/*======================================*/
/* 9＿広告 */
/*======================================*/
#div-gpt-ad-pc_column_2ndrec, #div-gpt-ad-pc_column_1strec {  /*background: #f7f7f7;padding: 2.5rem 2rem;*/ margin-bottom: 3rem !important;}


/*======================================================*/
/*PC縮小～タブレット（※イレギュラー指定）
=======================================================*/
@media only screen and (min-width: 897px) and (max-width: 987px){
	.inner {max-width: 97%; padding-left: 1.5%; padding-right: 1.5%;}
	
}
/*======================================================*/
/*(SP（タブレット以下）)media only screen and ( max-width : 896px )
=======================================================*/

@media only screen and ( max-width : 896px ) {
 
/*======================================*/
/* （SP）2＿base-styleCSS */
/*======================================*/
    
/* 0-2. Base
-------------------------------------------------- */
body {line-height: 1.6;font-size: 1.3rem;}
p {font-size: 1.3rem;}
.pc-only {display: none !important;}.sp-only {display: block !important;}
    
/*======================================*/
/* （SP）3＿header  */
/*======================================*/
header {width: 100%;}
header h1 {width: 100px; background: #ffffff; margin-left: 3%; padding: 20px 10px;}
header h1 img {height:auto;}
header .quickNavWrap {height: 65px;}
nav#quickNav {margin-left: 5%;}
nav#quickNav ul {display: flex; justify-content: flex-start;width:  200px;}
nav#quickNav ul li {margin-right: 6%;}
nav#quickNav ul li img {max-height: 42px;}

/* === ハンバーガーメニューナビ === */
#g-nav_search form{width: 100%;}	
	
	
/*======================================*/
/* （SP）4＿footer  */
/*======================================*/
footer {padding: 15px 0 100px;}
.footer_navWrap {display: none;}
.footer_Box{padding: 0 0 20px 0; border-top: none;}
.footer_Box ul{max-width: 100%; display: block; font-size: 1.2rem; margin-bottom: 8px;}
.footer_Box ul li {display: inline-block;}
.footer_Box ul li:nth-child(3n) {margin-right: 0;}
footer small{font-size: 0.9rem;}
	
/*======================================*/
/* （SP）6＿ぱんくず  */
/*======================================*/
#breadcrumb ol {
    margin-top: 8px;
    margin-bottom: 8px;
    line-height: 1.2;
	}
#breadcrumb li {
    padding-right: 12px;
    font-size: 80%;
    vertical-align: baseline;
    vertical-align: text-top;
	display: inline-block;}
    #breadcrumb li::after {width: 3px !important; height: 3px !important;}
	
/*======================================*/
/* （SP）7＿main メインコンテンツ  */
/*======================================*/
/* === メインコンテンツエリア設定 === */
#contentWrap {margin-top: 100px;overflow: hidden;}
    
/* === 下層のメインエリア === */
.column-wrap {display: block; min-height: 50vh;}
.main-Underlayer {max-width: 100%;}	

}/*End_media only_max-width : 896px*/

/*======================================================*/
/*iphone7,8, Google Pixel 3  (SP640)  
========================================================*/
@media only screen and (max-width : 640px) {
	
}/*End_media only_max-width : 640px*/
/*======================================================*/
/*iphoneX(SP375) SE、Google Pixel 4 XL 小画面スマホ 
========================================================*/
@media only screen and (min-width: 1px) and (max-width: 480px){
header h1 {background: #ffffff; padding: 20px 3px 20px 5px; width: 120px;}/* 60thロゴ用 */
/*header h1 {background: #ffffff; padding: 20px 8px; width: 80px;}通常ロゴ用*/
nav#quickNav {margin-left: 3%;}
nav#quickNav ul { width: auto;}
nav#quickNav ul li img {height: auto;}
	
}/*End_media only_max-width : 480px*/
   