@charset "utf-8";
/* CSS Document */


html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align:baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
	scroll-behavior: smooth;
}
article, header, footer, aside, figure, figcaption, nav, section { 
  display:block;
}
body {
  line-height: 1;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
	font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
}
ol, ul {
  list-style: none;
  list-style-type: none;
}
a{
	text-decoration: none;
}
a:hover{
	filter: brightness(75%);
}

.wrapper{
	width: 100%;
}
.header{
	width: 100%;
	height: 64px;
}
.header .inner{
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
}
.header a.headLogo{
	position: absolute;
	top: 30px;
	left: 0px;
}
.header a h1{
	width: 168px;
	height: 24px;
	background-image: url("../images/header_logo.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
}
.header .nav{
	position: absolute;
	right: 20px;
	top: 36px;
}
.header .nav a{
	display: inline-block;
	margin-right: 16px;
	color: #00ACB2;
	font-size: 1.1em;
}
.header .nav a.active{
	border-bottom: 1px solid #00ACB2;
}
.header .nav a:hover{
	filter: brightness(50%);
}
.main .inner{
	width: 1000px;
	margin: 0 auto;
	padding: 60px 0 60px 0;
	position: relative;
	min-height: 564px;
}
.main{
}
h2.ttl_theatre{
	width: 536px;
	height: 60px;
	background-image: url("../images/ttl_theatre.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
}
h2.ttl_society{
	width: 464px;
	height: 60px;
	background-image: url("../images/ttl_society.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	float: left;
}
h2.ttl_index{
	width: 254px;
	height: 60px;
	background-image: url("../images/ttl_index.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	float: left;
}
h2.ttl_keidanren{
	width: 440px;
	height: 60px;
	background-image: url("../images/ttl_keidanren.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	float: left;
}
h3.theatre{
	width: 536px;
	height: 44px;
	background-image: url("../images/h_movie.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	margin: 0 auto 30px auto;
}
h3.contact{
	width: 180px;
	height: 44px;
	background-image: url("../images/h_contact.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	margin: 0 auto 0px auto;
}
h4.category{
	width: 104px;
	height: 18px;
	background-image: url("../images/h_category.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	margin: 30px auto 30px auto;
}
h4.SDGs{
	width: 340px;
	height: 18px;
	background-image: url("../images/h_sdg.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	margin: 30px auto 30px auto;
}
.ttl_society_ja{
	width: 400px;
	height: 60px;
	background-image: url("../images/ttl_society_ja.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	float: right;
}
.ttl_index_ja{
	width: 264px;
	height: 60px;
	background-image: url("../images/ttl_index_ja.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	float: right;
}
.categoryList{
	padding: 30px 0;
	display: flex;
	justify-content:flex-start;
	align-items: stretch;
	flex-wrap: wrap;
	min-height: 2em;
}
.categoryList a{
	display: flex;
	width: 24%;
	margin: 6px 0.5%;
	justify-content: center;
	align-items: center;
	text-align: center;
	flex-wrap: wrap;
	color: #fff;
	border:1px solid #fff;
	padding: 10px 10px 10px 10px;
	font-size: 0.8em;
	font-weight: bold;
}
.categoryList a:hover{
	filter: brightness(100%);
	opacity: 0.8;
}
.categoryList a.active{
	background-color: #fff;
	color: #00ACB2;
}
.categoryList a span{
	width: 100%;
	display: block;
	margin-bottom: 4px;
}
.categoryList a span:first-child{
	font-weight: bold;
}
.categoryList a span:last-child{
	margin-bottom: 0;
}
.borderB{
	padding-bottom: 30px;
	border-bottom: 1px solid #fff;
	width: 100%;
}
.borderBG{
	padding-bottom: 30px;
	border-bottom: 1px solid #00ACB2;;
	width: 100%;
}
.main .mainText{
	width: 468px;
	height: 352px;
	background-image: url("../images/main_text.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	overflow: hidden;
	margin: 40px 0 10px 0;
}
.main .mainImg{
	position: absolute;
	right: 0;
	top: 40px;
	width: 540px;
	height: 540px;
	background-image: url("../images/main_img.svg");
	background-repeat: no-repeat;
	background-position: center center;
	z-index: auto;
}
.main .mainImg:before{
	content: "";
	position: absolute;
	right: 0;
	top: 0px;
	display: block;
	width: 540px;
	height: 540px;
	background-image: url("../images/main_img_.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	z-index: -1;
	animation:45s linear infinite rotation1;
}
@keyframes rotation1{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
.main a.link{
	display: block;
	width: 468px;
	text-align: right;
	color: #00ACB2;
}
.section .inner{
	max-width: 1000px;
	margin: 0 auto;
	padding: 60px 0;
}
.section .inner2{
	max-width: 1032px;
	margin: 0 auto;
	padding: 0px 0 60px 0;
}
.section .inner.p0{
	padding: 0 0 60px 0;
}
.section .inner.b0{
	padding: 60px 0 20px 0;
}
.section.green{
	background-color: #00ACB2;
}
.section.green a.fontW{
	text-align: center;
	color: #fff;
}


.SDGsArea{
	padding: 30px 0;
	display: flex;
	justify-content: space-around;
	align-content: center;
}
.SDGsArea a{
	display: block;
	width: calc(100% / 17);
	height: auto;
	min-height: 52px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.SDGsArea a.active{
	filter: brightness(130%) drop-shadow(0px 2px 2px black);
}
.SDGs_icon_01{
	background-image: url("../images/SDGs_icon_01.svg");
}
.SDGs_icon_02{
	background-image: url("../images/SDGs_icon_02.svg");
}
.SDGs_icon_03{
	background-image: url("../images/SDGs_icon_03.svg");
}
.SDGs_icon_04{
	background-image: url("../images/SDGs_icon_04.svg");
}
.SDGs_icon_05{
	background-image: url("../images/SDGs_icon_05.svg");
}
.SDGs_icon_06{
	background-image: url("../images/SDGs_icon_06.svg");
}
.SDGs_icon_07{
	background-image: url("../images/SDGs_icon_07.svg");
}
.SDGs_icon_08{
	background-image: url("../images/SDGs_icon_08.svg");
}
.SDGs_icon_09{
	background-image: url("../images/SDGs_icon_09.svg");
}
.SDGs_icon_10{
	background-image: url("../images/SDGs_icon_10.svg");
}
.SDGs_icon_11{
	background-image: url("../images/SDGs_icon_11.svg");
}
.SDGs_icon_12{
	background-image: url("../images/SDGs_icon_12.svg");
}
.SDGs_icon_13{
	background-image: url("../images/SDGs_icon_13.svg");
}
.SDGs_icon_14{
	background-image: url("../images/SDGs_icon_14.svg");
}
.SDGs_icon_15{
	background-image: url("../images/SDGs_icon_15.svg");
}
.SDGs_icon_16{
	background-image: url("../images/SDGs_icon_16.svg");
}
.SDGs_icon_17{
	background-image: url("../images/SDGs_icon_17.svg");
}
.textCenter{
	width: 11em;
	display: block;
	text-align: center;
	margin: 20px auto 0 auto;
}
a.fontG{
	color: #00ACB2;
	font-size: 0.9em;
}
h3.h-DfIG{
	width: 596px;
	height: 28px;
	background-image: url("../images/h_dfig.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	margin: 0 auto 30px auto;
}
h3.categoryTtl{
	font-size: 1.5em;
	color: #00ACB2;
	text-align: center;
	margin-bottom: 20px;
}
h3.categoryTtl span{
	display: block;
	margin-bottom: 10px;
}
h3.categoryTtl span:first-child{
	font-size: 1.5em;
	font-weight: bold;
}
h3.susTtl{
	font-size: 1.75em;
	color: #00ACB2;
	text-align: center;
	margin-bottom: 20px;
	font-weight: bold;
}
h3.susTtl span{
	font-weight: bold;
	display: inline-block;
	padding-right: 10px;
}
h3.susTtl img{
	display: block;
	width: 50%;
	max-width: 120px;
	margin: 0 auto 20px auto;
}
.contentsArea{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	position: relative;
	padding-bottom: 100px;
}

.contentsArea .contents{
	width: 31%;
	margin: 10px 1.15%;
	transition: all 0.5s ease-out;
}
.contentsArea .no_data{
	text-align: center;
	width: 100%;
	margin: 60px auto;
}
.contentsArea .no_data .no_data_text{
	display: inline-block;
	padding: 20px 60px;
	background:rgba(0,172,178,0.57);
	color: #fff;
	font-weight: bold;
}
.show{
	display: block;
}
.hide{
	display: none;
}
.nextLink{
	width: 100%;
	display: block;
}
.contentsArea .morelink{
	position: absolute;
	bottom: 0px;
	left: calc(50% - 120px);
    display:block;
    width:240px;
    margin:20px auto;
    padding:10px 20px;
    background:#00ACB2;
    border:2px solid #fff;
    color:#fff;
    text-align:center;
    border-radius:5px;
}
.contentsArea .morelink:hover{
    cursor:pointer;
    background:#fff;
    color:#00ACB2;
	filter: brightness(80%);
}
.contentsArea .contents img{
	width: 100%;
	height: auto;
	margin-bottom: 12px;
	max-height: 174.38px;
}
.contentsArea .contents div .ttl{
	font-size: 0.9em;
    font-weight: bold;
    color: #00ACB2;
    letter-spacing: 1px;
    min-height: 3.6em;
    line-height: 1.2;
    margin-bottom: 10px;
}
.contentsArea .contents div .name{
	font-size: 0.8em;
	font-weight: bold;
	color: #00ACB2;
	margin-bottom: 4px;
	letter-spacing: 1px;
}
.contentsArea .contents div div.detail{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin-top: 20px;
	flex-wrap:wrap;
	position: relative;
}
.contentsArea .contents div div .category{
	border: 1px solid #00ACB2;
	color: #00ACB2;
	padding: 6px 2px 8px 2px;
	font-size: 0.35em;
	font-weight: bold;
	text-align: center;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	width: 49%;
	margin-bottom: 4px;
	min-height: 54px;
}

.contentsArea .contents div div .category span{
	display: block;
	width: 100%;
	margin: 2px;
}
.contentsArea .contents div div .category span:last-child{
	margin-bottom: 1px;
}
.contentsArea .contents div .SDGs_iconArea{
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.contentsArea .contents div .SDGs_iconArea div{
	margin-right: 1%;
}
.contentsArea .contents div div .SDGs_iconMini{
	right: 0;
	top: 0;
	width: 54px;
	height: auto;
	min-height: 54px;
	padding: 0;
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
}

.contentsArea  a{
	text-align: center;
	color: #00ACB2;
}
.contentsArea  a:visited{
	color: #00ACB2;
}
.nameArea{
	max-width: 932px;
	margin: 0 auto 20px auto;
	color: #00ACB2;
	display: flex;
	text-align: center;
	justify-content: space-between;
	align-items: center;
}
.nameArea p{
	display: block;
	padding: 20px 0;
}
.nameArea .nameJa{
	font-size: 1.3em;
	width: 66%;
	border-right: 1px solid #00ACB2;
	text-align: left;
}
.nameArea .nameJa span{
	display: block;
	line-height: 1.4em;
	font-weight: bold;
	padding-right: 20px;
}
.nameArea .nameEn{
	padding: 0 20px;
	font-size: 1.1em;
	width: 34%;
	text-align: center;
    font-weight: bold;
}
.detailArea{
	color:#00ACB2;
	width: 932px;
	margin: 0 auto;
	padding: 16px 0 60px 0;
}
.detailArea p{
	font-size: 1em;
	font-weight: bold;
	margin-bottom: 30px;
	line-height: 1.5;
}
.detailArea p a{
	font-weight: bold;
	cursor: pointer;
	color: #00ACB2;
}
.detailArea .left{
	width: 100%;
	float: none;
}
.detailArea .right{
	float: none;
	color:#00ACB2;
	margin-bottom: 16px;
	text-align: right;
}
.detailArea .right a{
	font-size: 1.1em;
	color:#00ACB2;
	border-bottom: 1px solid #00ACB2;
	cursor: pointer;
}
.detailArea .categoryArea{
	clear: both;
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items:  stretch;
	margin-bottom: 10px;
}
.detailArea .categoryArea .category{
	border: 1px solid #00ACB2;
	color: #00ACB2;
	padding: 8px 2px 6px 2px;
	font-size: 1em;
	font-weight: bold;
	text-align: center;
	width: 32%;
    margin-right: 1%;
	min-height: 54px;
	height: auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.detailArea .categoryArea .category span{
	display: block;
	width: 100%;
	text-align: center;
	color:#00ACB2;
	margin-bottom: 2px;
	font-size: 0.85em;
}
.detailArea .categoryArea .category span:first-child{
	font-weight: bold;
	font-size: 0.95em;
}

.detailArea .SDGs_iconArea{
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.detailArea .SDGs_iconArea .SDGs_iconMini{
	width: 54px;
	height: 54px;
	padding: 0;
	margin-right: 1%;
	background-repeat: no-repeat;
	background-position: top left;
	background-size: contain;
}
.societyImg{
	display: block;
	clear: both;
	width: 100%;
	margin: 30px auto;
}
.ttlArea{
	overflow: hidden;
	margin-bottom: 30px;
}
.societyText{
	margin: 30px auto 0 auto;
	overflow: hidden;
	padding-top: 30px;
}
.societyText p{
	color: #00ACB2;
}
.societyText p:first-child{
	width: 336px;
	height: 86px;
	background-image: url("../images/text_society_01.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	float: left;
}
.societyText p:last-child{
	width: 486px;
	height: 86px;
	background-image: url("../images/text_society_02.svg");
	background-repeat: no-repeat;
	background-position: center center;
	text-indent: -9999px;
	float: right;
}
.indexList{
	display: flex;
	justify-content:space-between;
	align-items: stretch;
	line-height: 1.25;
	color: #00ACB2;
	margin-bottom: 20px;
}
.indexList p.indexName{
	width: 30%;
	margin: 0 4% 0 0;
	padding-left: 1em;
	position: relative;
	font-weight: bold;
}
.indexList p.indexName:before{
	position: absolute;
	content:"●";
	left: 0;
	top:0;
}
.indexList div{
	width: 66%;
	text-align: left;
}
.indexList div p{
	margin-bottom: 20px;
}
.indexList div p a{
	color: #00ACB2;
	text-decoration: underline;
}
.indexList div p a:hover{
	filter: brightness(50%);
}
.indexList div p:last-child{
	margin-bottom: 0;
}
.pan{
	color: #00ACB2;
	font-size: 0.85em;
	margin-bottom: 30px;
	text-align: left;
}
.pan a{
	color: #00ACB2;
}
.pan a.active:hover{
	filter: brightness(100%);
}
.section.flex{
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin-bottom: 0px;
}
.section.keidanren .left{
	width: 49.5%;
	margin-right: 0.5%;
	padding-top: 38.7%;
	background-image: url("../images/keidanren.png");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
	text-indent: -9999px;
}
.section.keidanren .right{
	width: 49.5%;
	margin-left: 0.5%;
}
.section .right iframe{
	width: 100%;
	height: 100%;
}
.textTab{
	display: none;
}
.keidanrenJa{
	width: 100%;
	padding-top:16%;
	background-image: url("../images/keidanrenJa.svg");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
	overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}
.keidanrenEn{
	width: 100%;
	padding-top: 20%;
	background-image: url("../images/keidanrenEn.svg");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
	overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}
.contactArea{
	padding: 40px 0;
	margin-bottom: 60px;
	text-align: center;
}
.contactArea .contactList{
	color: #00ACB2;
	margin-bottom: 60px;
}
.contactArea .contactList p:first-child{
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 10px;
}
.contactArea .contactList p.link{
	margin-top: 10px;
}
.contactArea .contactList p.link a{
	color: #00ACB2;
}
.contactArea a.mail{
	display: block;
	width: 10em;
	padding: 8px 20px;
	margin: 80px auto 0 auto;
	border: 1px solid #00ACB2;
	color: #00ACB2;
}
.contactArea a.mail:hover{
	background-color: #D5EFF0;
	filter: brightness(100%);
}

.footer{
	background-color: #00ACB2;
	color: #fff;
}
.footer .inner{
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
	height: 114px;
	padding-top: 52px;
}
.footer .sns{
	position: absolute;
	height: 26px;
	top:44px;
	left: 0;
	display: flex;
	justify-content: flex-start;
}
.footer .sns a{
	display: block;
	height: 26px;
	width: 26px;
	margin-right: 4px;
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
	text-indent: -9999px;
}
.sns a.facebook{
	background-image: url("../images/icon_facebook.svg");
}
.sns a.twitter{
	background-image: url("../images/icon_twitter.svg");
}
.sns a.insta{
	background-image: url("../images/icon_insta.svg");
}
.sns a.youtube{
	background-image: url("../images/icon_youtube.svg");
}
.footer .inner p.copyright{
	font-size: 0.8em;
	text-align: center;
}
.footer a.footlogo{
	position: absolute;
	width:148px;
	height: 26px;
	top:44px;
	right:0;
	background-image: url("../images/foot_logo.svg");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
        filter: brightness(100%);
	text-indent: -9999px;
}
.footlogo{
	position: absolute;
	width:148px;
	height: 26px;
	top:44px;
	right:0;
	background-image: url("../images/foot_logo.svg");
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
        filter: brightness(100%);
	text-indent: -9999px;
}

.toggle_btn{
	display: none;
}
.movieArea{
	max-width: 932px;
	width:100%;              /*横幅いっぱいにwidthを指定*/
padding-bottom: 56.25%;  /*高さをpaddingで指定(16:9)*/
height:0px;              /*高さはpaddingで指定するためheightは0に*/
position: relative;
	margin: 0 auto;
}
.movieArea iframe{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.movieArea a.prev{
	display: block;
	position: absolute;
	width: 48px;
	height: 92px;
	left: -100px;
	top:calc(50% - 46px);
	background-image: url("../images/arrow_prev.svg");
	cursor: pointer;
}
.movieArea a.next{
	display: block;
	position: absolute;
	width: 48px;
	height: 92px;
	right: -100px;
	top:calc(50% - 46px);
	background-image: url("../images/arrow_next.svg");
	cursor: pointer;
}
.movieArea a:hover{
	opacity: 0.6;
	filter: brightness(30%);
}
.societyMovie{
	max-width: 1000px;
	width:100%;              /*横幅いっぱいにwidthを指定*/
padding-bottom: 56.25%;  /*高さをpaddingで指定(16:9)*/
height:0px;              /*高さはpaddingで指定するためheightは0に*/
position: relative;
	margin: 0 auto 30px auto;
}
.societyMovie iframe{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


@media screen and (max-width : 1200px){
    /* ここに幅1200px以下の CSS を記述する */
.movieArea{
	max-width: 932px;
	width:calc(100% - 100px);              /*横幅いっぱいにwidthを指定*/
	padding-bottom: 56.25%;  /*高さをpaddingで指定(16:9)*/
	height:0px;              /*高さはpaddingで指定するためheightは0に*/
	position: relative;
	margin: 0 auto;
}
.movieArea a.prev{
	display: block;
	position: absolute;
	width: 48px;
	height: 92px;
	left: -58px;
	top:calc(50% - 46px);
	background-image: url("../images/arrow_prev.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.movieArea a.next{
	display: block;
	position: absolute;
	width: 48px;
	height: 92px;
	right: -58px;
	top:calc(50% - 46px);
	background-image: url("../images/arrow_next.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
}
@media screen and (max-width : 1036px){
.header .inner {
    max-width: auto;
	width: 100%;
    padding: 60px 20px;
}
.header h1 {
	left: 20px;
}
.section .inner {
    max-width: auto;
	width: 100%;
    margin: 0 auto;
    padding: 60px 20px;
}
.main .mainText{
	width: 65%;
    height: auto;
	padding-top: 50%;
    overflow: hidden;
    margin: 40px 0 10px 0;
}
.main .mainImg {
	position: absolute;
    right: 0;
    top: 100px;
    width: 35%;
    height: auto;
	padding-top: 50%;
}
.main .mainImg:before{
	content: "";
	position: absolute;
	right: 0;
	top: 0px;
	display: block;
	width: 100%;
	height: 100%;
	background-image: url("../images/main_img_.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	z-index: -1;
	animation:45s linear infinite rotation1;
}
	
	
.main a.link {
    width: 65%;
}
.footer .inner {
    max-width: auto;
	width: 100%;
    position: relative;
    height: 114px;
    padding-top: 52px 20px;
}
.footer .sns {
    left: 20px;
}
.footer a.footlogo {
    right: 20px;
}
.footlogo {
    right: 20px;
}
.header a.headLogo{
	position: absolute;
	top: 30px;
	left: 20px;
}
.ttlArea {
    display: flex;
}
.ttlArea h2{
	margin-right: 30px;	
}
.section .inner.b0 {
    padding: 60px 20px 20px 20px;
}
.section .inner.p0 {
    padding: 0 20px 60px 20px;
}
.keidanrenJa{
	display: none;
}
.keidanrenEn{
	display: none;
}
p.textTab{
	display: block;
	color: #00ACB2;
	line-height: 1.5;
	font-weight: bold;
	margin-bottom: 40px;
}
.detailArea{
	width: 100%;
	word-break: break-all;
	margin-bottom: 30px;
	padding: 30px 0 30px 0;
}

.detailArea .left{
	width: 100%;
	float: none;
	margin-bottom: 40px;
}
.detailArea .right{
	text-align: right;
	float: none;
	color:#00ACB2;
	margin-bottom: 20px;
}
	.detailArea .categoryArea{
		flex-wrap: wrap;
	}
.detailArea .categoryArea .category {
    border: 1px solid #00ACB2;
    color: #00ACB2;
    padding: 8px 10px 8px 10px;
    font-size: 0.9em;
    height: auto;
    width: 49%;
	margin-bottom: 1%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.detailArea .categoryArea .SDGs_iconMini {
    width: 12%;
    height: auto;
    padding: 8% 0 0 0;
    background-repeat: no-repeat;
    background-position: top left;
    background-size: contain;
}
.nameArea .nameJa {
    width: 66%;
    padding-right: 20px;
}
.nameArea .nameEn {
	word-break: break-all;
	padding: 0 4%;
}
}
@media screen and (max-width : 767px){
    /* ここに幅767px以下の CSS を記述する */
.header{
	width: 100%;
	height: auto;
}
.header .inner {
    max-width: auto;
	width: 100%;
    padding: 30px 20px;
}
.toggle_btn{
	display: block;
}
.header .nav{
	display: none;
}
h2.ttl_theatre {
    max-width: 536px;
	width: 96%;
    height: auto;
	padding-top: 10%;
	margin: 0 auto;
}
.main .mainImg {
	display: none;
}
.main .mainImgSP {
    position: relative;
	right: 0;
	top: 0;
	width: 96%;
	height: auto;
	margin: 30px auto;
	padding-top: 90%;
	background-image: url("../images/main_img.svg");
	background-repeat: no-repeat;
	background-position: center center;
	overflow: hidden;
}
.main .mainImgSP:before{
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-image: url("../images/main_img_.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% 100%;
	z-index: -1;
	animation:45s linear infinite rotation1;
}
.main .mainText {
    width: 96%;
    height: auto;
    padding-top: 68%;
    overflow: hidden;
    margin: 40px auto 10px auto;
}
.main a.link {
    width: 100%;
	text-align: right;
}
h3.theatre {
    width: 96%;
    height: auto;
	padding-top: 10%;
    background-image: url(../images/h_movie.svg);
    background-repeat: no-repeat;
    background-position: center center;
    text-indent: -9999px;
    margin: 0 auto 10px auto;
}
.section .inner {
    max-width: auto;
	width: 100%;
    margin: 0 auto;
    padding: 40px 20px;
}
.categoryList {
    padding: 0px 0 30px 0;
}
.categoryList a {
    display: flex;
    width: 49%;
    margin: 6px 0.5%;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-wrap: wrap;
    color: #fff;
    border: 1px solid #fff;
    padding: 10px 10px 10px 10px;
    font-size: 0.8em;
    font-weight: bold;
}

.SDGsArea {
    padding: 0px 0;
    display: flex;
	flex-wrap: wrap;
    justify-content: flex-start;
    align-content: center;
	margin-bottom: 20px;
}
.SDGsArea a {
    min-width: 54px;
    min-height: 54px;
    width: calc(90% / 5);
    height: auto;
    min-height: auto;
    padding-top: 15%;
    margin: 8px 1%;
}
h3.h-DfIG {
    width: 96%;
    height: auto;
	padding-top: 7%;
    margin: 0 auto 30px auto;
}
.contentsArea {
    display: flex;
    justify-content:flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}
.contentsArea .contents {
    width: 49%;
    margin: 30px 0.5%;
}
.ttlArea {
    display: block;
}
h2.ttl_society {
    max-width: 464px;
	width: 96%;
	padding-top: 13%;
    height: auto;
	margin: 0 auto 16px auto;
    float: none;
}
.ttl_society_ja {
	max-width: 400px;
    width: 96%;
	padding-top: 16%;
    height: auto;
    float: right;
}
.societyText p:first-child {
	width: 100%;
	padding-top: 24%;
    height: auto;
    background-image: url(../images/text_society_01.svg);
    background-repeat: no-repeat;
    background-position: left top;
    text-indent: -9999px;
    float: none;
	margin-bottom: 20px;
}
.societyText p:last-child {
    width: 100%;
	padding-top: 19%;
    height: auto;
    background-image: url(../images/text_society_02.svg);
    background-repeat: no-repeat;
    background-position: left top;
    text-indent: -9999px;
    float: none;
	margin: 0 auto;
}
.detailArea{
		margin-bottom: 0;
}
.nameArea .nameEn {
	font-size: 0.8em;
    line-height: 1.5;
}

}
@media screen and (max-width : 680px){
.contentsArea .contents div div .category {
    font-size: 0.75em;
    margin-bottom: 4px;
}
.contentsArea .contents div div .category span:first-child {
    font-weight: bold;
}
.detailArea .categoryArea .category span:first-child {
    font-weight: bold;
    font-size: 0.75em;
    padding-bottom: 4px;
}
.detailArea .categoryArea .SDGs_iconMini {
    width: 24%;
    height: auto;
    padding: 19% 0 0 0;
	min-height: 62px;
    background-repeat: no-repeat;
    background-position: top left;
    background-size: contain;
}
.contentsArea .contents div div.detail .SDGs_iconMini {
    width: 20%;
    min-height: 64px;
}
.contentsArea .contents div .ttl {
	line-height: 1.4;
}
h2.ttl_keidanren{
	width: 100%;
}
.nameArea {
	display: block;
}
.nameArea .nameJa {
    width: 100%;
    padding: 0 20px 20px 20px;
	border-right: none;
	border-bottom: 1px solid #00ACB2;
	margin-bottom: 20px;
}
.nameArea .nameEn {
    width: 100%;
    padding: 0 20px;
}
.footer .inner{
	position: relative;
	height: auto;
	padding-top: 20px;
	padding-bottom: 20px;
}
.footer .sns{
	position: static;
	height: 26px;
	top:44px;
	left: 0;
	width: 114px;
	margin: 0px auto 20px auto;
	display: flex;
	justify-content: center;
}
.footer a.footlogo {
    position: static;
    margin: 20px auto;
}
.footlogo {
    position: static;
    margin: 20px auto;
}
}

@media screen and (max-width : 474px){
    /* ここに幅474px以下の CSS を記述する */
.contentsArea .contents {
    width: 96%;
    margin: 30px auto;
}
.movieArea{
	width:calc(100% - 60px);              /*横幅いっぱいにwidthを指定*/
	padding-bottom: 56.25%;  /*高さをpaddingで指定(16:9)*/
	height:0px;              /*高さはpaddingで指定するためheightは0に*/
	position: relative;
	margin: 0 auto;
}
.movieArea a.prev{
	display: block;
	position: absolute;
	width: 24px;
	height: 46px;
	left: -30px;
	top:calc(50% - 23px);
	background-image: url("../images/arrow_prev.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.movieArea a.next{
	display: block;
	position: absolute;
	width: 24px;
	height: 46px;
	right: -30px;
	top:calc(50% - 23px);
	background-image: url("../images/arrow_next.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
h3.categoryTtl{
	font-size: 1.1em;
}
h3.categoryTtl span{
	display: block;
	margin-bottom: 10px;
}
h3.categoryTtl span:first-child{
	font-size: 1.25em;
	font-weight: bold;
}
h3.susTtl{
	font-size: 1.4em;
}

h4.SDGs{
	width: 100%;
	max-width: 340px;
}
}
@media screen and (max-width : 320px){
    /* ここに幅375px以下の CSS を記述する */
.SDGsArea a{
	    min-width: 54px;
    min-height: 54px;
    width: 13.66%;
    height: auto;
    /* min-height: auto; */
    padding-top: 20%;
    margin: 4px 0.25%;
}
}