@charset "UTF-8";
/*=============================================
 sp
=============================================*/
/*=============================================
 /sdgs/index.html
=============================================*/
#sp #idx {
	overflow: hidden;
}

#sp #idx .bg-bdr {
	background: url(/common/img/bg_line.png) repeat-x left bottom;
	padding-bottom: 2px;
}

#sp #idx .pg-ttl h2 img{
	height: 22px;
    width: auto;
}

.sdgs .mb40{
    margin-bottom: 40px;
}
.sdgs .mb30{
    margin-bottom: 30px;
}
.sdgs .mb20{
    margin-bottom: 20px;
}
.sdgs .mb10{
    margin-bottom: 10px;
}

#sp .sdgs .ft-3col img{
    width: 100%;
    height: auto;
}

#sp .sdgs p{
    font-size: 13px;
}
#sp .sdgs h3.deco-ttl01{
    font-size: 20px;
    background: #005baa;
    padding: 10px 15px;
    border-left: 5px solid #f17b65;
    margin: 0 0 30px;
    color: #fff;
}

#sp .sdgs h4{
    color: #333;
    padding-left: 30px;
    font-size: 18px;
    background: url(/common/img/pc_icn_ttl.gif) no-repeat left 0.6em;
    margin: 0 0 15px;
}

#sp .sdgs p.blank{
    padding-left: 10px;
    background: url(/common/img/arw02.png) no-repeat left center;
}
#sp .sdgs p.blank a{
    padding-right: 18px;
    background: url(/common/img/pc_icn_blank.gif) no-repeat right center;
}

#sp .sdgs ol{
    counter-reset: item;
    list-style-type: none;
    padding-left:5%;
    text-indent:-5%;
}
#sp .sdgs ol li{
    font-weight: bold;
    font-size: 15px;
    margin: 0 0 15px;
}
#sp .sdgs ol li:before{
    counter-increment: item;
    content: counter(item)'.';
    color: #005baa;
    margin: 0 3px 0 0 ;
}
#sp .sdgs ol li p{
    margin: 10px 0 0;
    text-indent: 0;
}

#sp .sdgs .sdgs_box{
    background: #fff;
    border: 2px solid #e5e5e5;
    padding: 5%;
}
#sp .sdgs .sdgs_box .tit{
    text-align: center;
    margin: 0 0 10px;
}
#sp .sdgs .sdgs_box .tit img{
    width: inherit;
}
#sp .sdgs .sdgs_box .tit p{
    font-weight: bold;
    font-size: 15px;
    margin: 0 0 5px;
}
.sdgs .sdgs_box p{
    overflow: hidden;
}

#sp .sdgs .sdgs_link{
    padding: 50px 0 0 0;;
    margin: 0 0 20px;
}
#sp .sdgs .sdgs_link.env{
    background: url(/sdgs/sdgs_society/img/img_sdgs_environment.jpg) 50%;
    background-size: cover;
}
#sp .sdgs .sdgs_link.soc{
    background: url(/sdgs/sdgs_society/img/img_sdgs_society.jpg) 0;
    background-size: cover;
}
#sp .sdgs .sdgs_link.gov{
    background: url(/sdgs/sdgs_society/img/img_sdgs_governance.jpg) 70%;
    background-size: cover;
}
#sp .sdgs .sdgs_link.mat{
    background: url(/sdgs/sdgs_society/img/img_sdgs_materiality.jpg) 70%;
    background-size: cover;
}
#sp .sdgs .sdgs_link .inner{
    background: linear-gradient(rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, .8) 20%, rgba(255, 255, 255, 1) 80%);
    padding: 5%;
}
#sp .sdgs .sdgs_link .inner p.txt{
    margin: 0 0 10px;
}
#sp .sdgs .sdgs_link .inner .btn a{
    background: #005baa;
    display: block;
    color: #fff;
    padding: 10px 0;
    text-align: center;
    text-decoration: none;
}

#sp .sdgs .photo-r {
    float: right;
    width: 40%;
    margin: 0 0 20px 5%;
}
#sp .sdgs .ft-3col .photo-r img {
    margin: 0;
}

/*=============================================
 /sdgs/sdgs_environment.html
=============================================*/

#sp ul.page_link li{
    padding: 0 15px 0 0;
    margin: 0 0 10px 0;
    border: 1px solid #e5e5e5;
    background: #fff;
}
#sp ul.page_link li a{
    display:block;
    text-decoration: none;
    color: #333;
    padding: 10px 15px;
    background: url(/sdgs/sdgs_society/img/arw_down.png) no-repeat 100% 50%;
}
#sp .ft-3col .sdgs_col2 .col{
    float: left;
    border: none;
    padding: 0;
    margin: 0 0 20px 0;
    background: #f5f5f5;
}

#sp .ft-3col .sdgs_col2 .col .mg10{
    margin: 10px;
}

#sp .ft-3col .sdgs_col2 .col img,
#sp .ft-3col .sdgs_box_un img{
    margin: 0 0 0;
    vertical-align: bottom;
}

#sp .ft-3col .sdgs_box_un p.tit{
    font-size: 15px;
    font-weight: bold;
    margin: 0 0 20px;
    border-bottom: 1px solid #d5d5d5;
    padding: 20px 0 5px;
}
#sp .ft-3col .sdgs_col2 .col p.tit {
    font-size: 15px;
    font-weight: bold;
    margin: 0 20px 10px;
    border-bottom: 1px solid #d5d5d5;
    padding: 20px 0 5px;
}
#sp .ft-3col .sdgs_box_un p.txt{
    padding: 0 0 0;
}
#sp .ft-3col .sdgs_col2 .col p.txt{
    padding: 0 20px 20px;
}
#sp .ft-3col .colmax{
    background: #f5f5f5;
    margin: 0 0 20px;
}
#sp .ft-3col .colmax p.tit{
    font-size: 15px;
    font-weight: bold;
    margin: 0 20px 10px;
    border-bottom: 1px solid #d5d5d5;
    padding: 20px 0 5px;
}
#sp .ft-3col .colmax p.txt{
    padding: 0 20px 20px;
}
.sdgs_box_un{
    background: #fff;
    border: 2px solid #e5e5e5;
    padding: 5%;
}
.sdgs_box_un ul{
    list-style-type: disc;
    padding: 0 0 0 15px;
}
.sdgs_box_un ul li{
    margin: 0 0 5px;
}

.box_btn {text-align: center;}
.box_btn a {
	display: inline-block;
	padding: 8px 20px;
	font-size: 15px;
	color: #fff;
	background: #005baa;
	text-decoration: none;
}

#sp .ft-3col .sdgs_box_un .sdgs_col2 .col {float: none;}

iframe{
    width: 100%;
    height: auto;
}

.fs_bnr {
    width: 100%;
    margin: 0 auto;
    background: #f5f5f5;
}
#sp .ft-3col .fs_bnr > a {
    display: block;
}
#sp .ft-3col .fs_bnr > a > img {
    margin: 0;
}
.fs_bnr .txt {
    padding: 20px 20px;
}
#sp .sdgs .ft-3col .fs_bnr .txt img {
    width: 150px;
}
#sp .fs_bnr .txt .link {
    background: url(/common/img/arw03.png) no-repeat left center;
    padding: 0 0 0 10px;
}
#sp .fs_bnr .txt .link a {
    color: #333;
    padding-right: 16px;
    background: url(/common/img/pc_icn_blank.gif) no-repeat right center;
}

/*=============================================
 /sdgs/sdgs_environment.html
=============================================*/

/*=============================================
 /sdgs/sdgs_governance.html
=============================================*/


#sp .ft-3col .sdgs_col1 p.tit{
    font-size: 15px;
    font-weight: bold;
    margin: 0 0 10px;
}


/* もっと見るボタン
=================================================== */

.grad-wrap {
    margin: 0 0 30px;
    position: relative;
}

.grad-wrap + .grad-wrap {
    margin-top: 40px;
}

.grad-btn {
    z-index: 3;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    width: 280px;
    margin: auto;
    padding: 48px 0 0;
    background: url(../_img/spec/btn_open_off.gif) no-repeat center center;
    text-align: center;
    cursor: pointer;
}

.grad-btn::after {
    content: "";
}

.grad-item {
    position: relative;
    overflow: hidden;
    height: 270px;
}

.grad-item p + p {
    margin-top: 1em;
}

.grad-item::before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 140px;
    /*グラデーションで隠す範囲*/
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, 0.9)), color-stop(50%, rgba(255, 255, 255, 0.9)), to(#f0eeeb));
    background: linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #f0eeeb 100%);
}

.grad-trigger {
    display: none;
}

.grad-trigger:checked ~ .grad-btn {
    bottom: -5em;
    width: 280px;
    margin: auto;
    padding: 48px 0 0;
    text-align: center;
    cursor: pointer;
    background: url(../_img/spec/btn_open_on.gif) no-repeat center center;
}

.grad-trigger:checked ~ .grad-btn::after {
    content: "";
}

.grad-trigger:checked ~ .grad-item {
    height: auto;
    margin: 0 0 90px;
}

.grad-trigger:checked ~ .grad-item::before {
    display: none;
}


/*=============================================
 /sdgs/sdgs_society/kidsgarden.html
=============================================*/

.kg_feature {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}
.kg_feature li {
    width: 100%;
    border: 2px solid #e6e6e6;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
    margin: 0 10px 10px;
    padding: 16px 0;
    border-radius: 50px;
}
.kg_feature li.line2 {
    padding: 7px 0;
}
.kg_feature li span {
    font-weight: bold;
    color: #9c2929;
}
.kg_2col,
.kg_3col {

}
.kg_2col .sblock {
    margin: 0 0 20px;
}

h3.kg_tit {
    font-size: 18px;
    padding: 10px 15px;
    margin: 0 0 20px;
    background: #f5f5f5;
    border-left: 4px solid #005baa;
}
#sp .sdgs h4.kg_stit {
    background: none;
    padding: 0;
    margin: 0 0 20px;
}
#sp .sdgs h4.kg_stit img {
    width: 60%;
    vertical-align: middle;
}
.kg_feablock {
    margin: 0 0 20px;
}
.kg_feablock_w {
    margin: 0 0 20px;
}
.kg_feablock img {
    margin: 0 0 10px;
}
#sp .sdgs .kg_feablock .tit,
#sp .sdgs .kg_feablock_w .tit {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 10px 0;
}
span.txt_red {
    color: #9c2929;
}
.kg_feablock_w table {
    width: 100%;
    font-size: 13px;
    border-collapse: collapse;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
}
.kg_feablock_w table th {
    padding: 10px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background: #f2f2f2;
    text-align: center;
    font-weight: bold;
}
.kg_feablock_w table td {
    padding: 10px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}
.kg_feablock_w.frame {
    border: 2px solid #e6e6e6;
    padding: 25px;
    box-sizing: border-box;
}

.kg_rinen {
    border: 2px solid #9c2929;
    padding: 25px;
}
#sp .sdgs .kg_rinen p.tit {
    font-size: 18px;
    font-weight: bold;
    color: #9c2929;
    text-align: center; 
}
.kg_rinen dl {

    border-bottom: 2px solid #9c2929;
    padding: 30px 0;
}
.kg_rinen dl:last-child {
    border: none;
    padding: 30px 0 20px;
}
.kg_rinen dl dt {
    padding: 0 20px;
    margin: 0 0 20px;
}

table.kg_outline {
    width: 100%;
    font-size: 13px;
    border-collapse: collapse;
}
table.kg_outline th {
    padding: 15px 10px;
    border-bottom: 1px solid #ddd;
    font-weight: bold;
}
table.kg_outline td {
    padding: 15px 10px;
    border-bottom: 1px solid #ddd;
}

/*=============================================
 /sdgs/materiality.html
=============================================*/
#sp .sdgs .sp_none {
    display: none !important;
}

#sp .sdgs .vision {
    margin: 0 0 20px;
    font-size: 16px;
    font-weight: bold;
}

#sp .sdgs .mat_nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 -10px;
    background: url(../img/bg_mt_nav.png) no-repeat center top 50%;
    background-size: 60% auto;
}

#sp .sdgs .mat_nav li {
    width: calc(50% - 10px);
    margin: 0 5px 10px;
}

#sp .sdgs .mat_target {
    padding: 20px 3%;
    background: #f2f2f2;
}

#sp .sdgs .mat_target dl dt {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 50px;
    margin: 0 auto 10px;
    box-sizing: border-box;
    /*border: 2px solid #005baa;*/
    border-radius: 5px;
    font-size: 14px;
    font-weight: bold;
   /* background: #fff;*/
    background: #ddd;
}

#sp .sdgs .mat_target dl dd .txt {
    margin: 0 0 5px;
    font-size: 14px;
    font-weight: bold;
}

#sp .sdgs .mat_target dl dd .notes {
    font-size: 11px;
    color: #777;
}

#sp .sdgs .mat_process .inner {
    padding: 0 0 25px;
}

#sp .sdgs .mat_process .inner:last-child {
    padding: 0;
}

#sp .sdgs .mat_process .inner .step {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    margin: 0 auto 15px;
    box-sizing: border-box;
    border: 2px solid #005baa;
    border-radius: 15px;
    font-size: 12px;
    font-weight: bold;
    line-height: 1.2;
    background: #fff;
    position: relative;
}

#sp .sdgs .mat_process .inner .step span {
    font-size: 20px;
    font-weight: bold;
}

#sp .sdgs .mat_process .inner .txt .tit {
    margin: 0 0 15px;
    font-size: 20px;
    font-weight: bold;
}

#sp .sdgs .mat_attempt .inner {
    margin: 20px 0;
    padding: 0 0 20px;
    border-bottom: 2px solid #005baa;
}

#sp .sdgs .mat_attempt .inner .tit {
    margin: 0 0 15px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    color: #005baa;
}

#sp .sdgs .mat_attempt .inner .detail {
    margin: 0 auto 20px;
}

#sp .sdgs .mat_attempt .inner .detail .txt {
    margin: 0 0 30px 20px;
    list-style-type: disc;
}

#sp .sdgs .mat_attempt .inner .detail .txt li {
    font-size: 16px;
    font-weight: bold;
}

#sp .sdgs .mat_attempt .inner .detail .img {
    padding: 30px 20px 20px;
    text-align: center;
    background: #f2f2f2;
    position: relative;
}

#sp .sdgs .mat_attempt .inner .detail .img .img_tit {
    font-size: 16px;
    font-weight: bold;
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translate(-50%,0);
}

#sp .sdgs .mat_attempt .inner .detail .img img {
    width: auto;
}

#sp .sdgs .mat_attempt .inner .list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 20px 0 -20px;
}

#sp .sdgs .mat_attempt .inner .list li {
    width: 48%;
    margin: 0 0 20px;
}