/* CSS Document */

.breadcrumbs {
    padding: 5px 0;
    font-size: 80%;
    line-height: 1.4em;
}

.breadcrumbs li a {
    color: #333;
}

#main {
    display: flex;
}

#aside {
    background: #F6ECE2;
    flex: 1 0 315px;
    display: flex;
    justify-content: flex-end;
    align-items: baseline;
}

#aside .block {
    width: 315px;
    margin: 10px 40px 20px 20px;
    position: sticky;
    top: 0;
    align-self: baseline;
}

#aside h2 {
    font-size: 200%;
    font-weight: 600;
    line-height: 1.2em;
    border: solid #333;
    border-width: 4px 0;
    padding: 20px 0;
    margin: 40px 0 20px;
}

#aside .lead {
    font-size: 90%;
    font-weight: 600;
    line-height: 1.8em;
    margin: 20px 0;
}

#aside .issue {
    margin: 40px 0 15px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

#aside .issue h3 {
    border: 2px solid #333;
    background: #fff;
    text-align: center;
    padding: 8px 15px;
    font-weight: 600;
    line-height: 1.2em;
}

#aside .issue time {
    font-size: 85%;
    line-height: 1.2em;
    color: #666;
    border: 1px solid #666;
    border-width: 0 1px;
    padding: 0 10px;
    margin: 0 5px;
}

#aside h1 {
    font-size: 150%;
    font-weight: 600;
    line-height: 1.5em;
}

#aside .tag {
    margin: 40px 0 0;
}

#aside .tag h5 {
    margin: 10px 0;
}

#aside .tag ul li {
    display: inline-block;
    margin: 0 4px 8px 0;
}

#aside .tag ul li a {
    font-size: 95%;
    font-weight: 600;
    background: #fff;
    border-radius: 20px;
    padding: 5px 15px;
    display: block;
    line-height: 1.4em;
}

#mainContents {
    flex: 1 0 750px;
}

#mainContents .block {
    width: 680px;
    padding: 40px 40px 20px;
}

#mainContents #fv {
    /*height: 540px;*/
    max-width: 980px;
    display: flex;
    flex-wrap: wrap;
}

#mainContents #fv img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#mainContents #fv img:not(:first-of-type) {
    width: 33.3%;
    height: auto;
    margin: 1% 0 0 1%;
    border-radius: 10px;
}

#mainContents .backnumberNav {}

#mainContents .backnumberNav h3 img {
    margin: auto;
}

#mainContents .backnumberNav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 30px 0;
}

#mainContents .backnumberNav ul li {
    border: 1px solid #999;
    border-width: 0 1px;
    padding: 0 1px;
    margin: 5px 20px;
    line-height: 1em;
}

#mainContents .backnumberNav ul li a {
    display: block;
    padding: 0 10px;
    color: #999;
}

#mainContents .backnumberNav ul li a:hover {
    font-weight: 600;
    color: #333;
}

#mainContents .backnumberNav ul li.active {
    border-color: #333;
    border-width: 0 2px;
}

#mainContents .backnumberNav ul li.active a {
    color: #333;
    font-weight: 600;
}

#mainContents .data {
    margin: 40px 0;
}

#mainContents .data .datacontainer {
    margin-bottom: 3em;
}

#mainContents .data h2 {
    font-size: 120%;
    font-weight: 600;
    border-left: 10px solid #FFD400;
    padding: 0 0 0 10px;
    margin: 0 0 20px;
    line-height: 1.4em;
}

#mainContents .data dl {
    display: flex;
    flex-wrap: wrap;
    font-size: 95%;
    margin: 10px 0;
}

#mainContents .data dl dt {
    color: #999;
}

#mainContents .data dl dd {
    margin-right: 15px;
}

#mainContents .data .lead {
    font-size: 110%;
    font-weight: 600;
    line-height: 1.8em;
    margin: 40px 0 60px;
}

#mainContents .credit {
    margin: 120px 0 60px;
    color: #666;
    font-size: 90%;
    line-height: 1.6em;
}

#mainContents .credit p {
    margin: 8px 0;
}

#mainContents .info {}

#mainContents .info .data1 {
    border: 6px solid #FFD400;
    border-radius: 10px;
    padding: 30px;
    display: flex;
    justify-content: space-between;
}

#mainContents .info .data1 dt {
    width: 140px;
    height: 140px;
}

#mainContents .info .data1 dt img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 100%;
}

#mainContents .info .data1 dd {
    width: calc(100% - 160px);
    line-height: 1.4em;
}

#mainContents .info .data1 dd h3 {
    font-size: 110%;
    font-weight: 600;
}

#mainContents .info .data1 dd h4 {
    font-size: 115%;
    font-weight: 600;
    margin-bottom: 10px;
}

#mainContents .info .data1 dd p {
    font-size: 95%;
}

#mainContents .info .data2 {
    margin: 60px 0;
}

#mainContents .info .data2 h3 {
    font-size: 115%;
    font-weight: 600;
}

#mainContents .info .data2 dl {
    display: flex;
    flex-wrap: wrap;
    margin: 10px 0 15px;
    line-height: 1.4em;
}

#mainContents .info .data2 dl dt,
#mainContents .info .data2 dl dd {
    margin: 0 0 3px;
}

#mainContents .info .data2 dl dt {
    width: 100px;
}

#mainContents .info .data2 dl dt::after {
    content: ':';
    margin: 0 5px;
}

#mainContents .info .data2 dl dd {
    width: calc(100% - 100px);
}

#mainContents .info .data2 .mapLink {
    display: flex;
    justify-content: flex-end;
    margin: 5px 0 0;
}

#mainContents .report {
    line-height: 2em;
    word-break: break-all;
}

#mainContents .report article {
    margin: 0 0 40px;
}

#mainContents .report article img {
    border-radius: 5px;
    width: 100%;
    height: 100%;
}

#mainContents .report article .text {
    margin: 0 0 20px;
}

#mainContents .report article .text h2 {
    font-size: 120%;
    font-weight: 600;
    border-left: 10px solid #FFD400;
    padding: 0 0 0 10px;
    margin: 0 0 20px;
    line-height: 1.4em;
}

#mainContents .report article .text .sub {
    font-size: 90%;
    color: #666;
    line-height: 1.6em;
    margin: 20px 0;
}

#mainContents .report article.photoL,
#mainContents .report article.photoR {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

#mainContents .report article.photoL .text,
#mainContents .report article.photoL .photo,
#mainContents .report article.photoR .text,
#mainContents .report article.photoR .photo {
    width: 48%;
}

#mainContents .report article.photoL .text {
    order: 2;
}

#mainContents .report article.photoL .photo,
#mainContents .report article.photoR .photo {
    flex-wrap: wrap;
}

#mainContents .report article.photoL .photo img,
#mainContents .report article.photoR .photo img {
    width: 320px;
    height: 320px;
}

#mainContents .report article.photoL .photo.multi img,
#mainContents .report article.photoR .photo.multi img {
    width: 158px;
    height: 158px;
}

#mainContents .report article .photo.multi {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

#mainContents .report article .photo.multi img {
    width: 33.3%;
    height: auto;
}

#mainContents .report article .photo img {
    object-fit: cover;
    padding: 2px;
    box-sizing: border-box;
}

#mainContents .report article ul.link {
    margin: 40px 0;
}

#mainContents .report article ul.link li {
    margin: 10px 0;
    line-height: 1.4em;
    display: flex;
    align-items: flex-start;
}

#mainContents .report article ul.link li a {
    font-weight: 600;
    text-decoration: underline;
}

#mainContents .report article ul.link li::before {
    content: url("/module/img/list3.png");
    margin: 2px 5px 0 0;
}

#mainContents .report article ul.link li.external a::after {
    content: url("/module/img/link.png");
    margin-left: 5px;
    position: relative;
    top: 2px;
}

#mainContents .report .qa {
    border: solid 2px #ccc;
    margin: 80px 0;
    padding: 30px;
}

#mainContents .report .qa .hd {
    text-align: center;
    margin: 0 0 20px;
}

#mainContents .report .qa .hd h2 {
    font-size: 140%;
}

#mainContents .report .qa .hd h3 {
    text-align: center;
}

#mainContents .report .qa .in dl {
    padding: 10px 0;
}

#mainContents .report .qa .in dl:not(:last-of-type) {
    margin: 10px 0;
    border-bottom: 1px dotted #ccc;
}

#mainContents .report .qa .in dl dt {
    font-size: 110%;
}

#mainContents .report .qa .in dl dd {
    padding: 5px 20px;
}

#mainContents .report .info .data2 .link a {
    font-weight: 600;
    text-decoration: underline;
}

#mainContents .report .info .data2 .link a::before {
    content: url("/module/img/list3.png");
    margin: 2px 5px 0 0;
    vertical-align: middle;
}

#mainContents .backnumber {
    margin: 120px 0;
}

#mainContents .backnumber h2 img {
    margin: auto;
}

#mainContents .backnumber h3 {
    text-align: center;
    font-size: 120%;
    font-weight: 600;
    margin: 20px 0;
    line-height: 1.4em;
}

#mainContents .backnumber ul {
    display: flex;
    flex-wrap: wrap;
}

#mainContents .backnumber ul li {
    border: 1px solid #000;
    width: 48%;
    margin: 1%;
    height: 60px;
    box-sizing: border-box;
}

#mainContents .backnumber ul li a {
    display: flex;
    align-items: center;
}

#mainContents .backnumber ul li em {
    background: #000;
    color: #fff;
    padding: 20px 5px;
    font-weight: 600;
    font-style: normal;
    flex: 0 0 60px;
    font-size: 85%;
    text-align: center;
    height: 58px;
    box-sizing: border-box;
}

#mainContents .backnumber ul li h4 {
    margin: 0 10px;
    line-height: 1.4em;
}

#RelatedArticle {
    max-width: 1040px;
    margin: 100px auto 60px;
    padding: 60px 0 30px;
    border: 10px solid #FFD100;
    border-width: 10px 0;
}

#RelatedArticle h2 {}

#RelatedArticle h2 img {
    margin: auto;
}

#Recommended {
    max-width: 1040px;
    margin: 60px auto 0;
}

#Recommended h2 {}

#Recommended h2 img {
    margin: auto;
}

.slider02.slick-slider {
    padding: 20px 0;
}

.slider02 .slick-prev,
.slider02 .slick-next {
    width: 56px;
    height: 56px;
    top: 20%;
    z-index: 8;
    transform: scale(.8);
}

.slider02 .slick-prev {
    left: -25px;
}

.slider02 .slick-next {
    right: -25px;
}

.slider02 .slick-prev:hover,
.slider02 .slick-next:hover {
    opacity: .8;
}

.slider02 .slick-prev::before {
    content: url("/module/img/arrow_back.png");
    opacity: 1;
}

.slider02 .slick-next::before {
    content: url("/module/img/arrow_next.png");
    opacity: 1;
}

.slider02 .slick-slide {
    margin: 10px;
}

.slider02 dl dt {
    width: 210px;
    height: 140px;
    position: relative;
}

.slider02 dl dt img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 5px;
}

.slider02 dl dt .new {
    position: absolute;
    left: -1px;
    top: -1px;
    background: #F6ECE2;
    padding: 8px 16px;
    border-radius: 0 0 5px 0;
}

.slider02 dl dd {
    margin: 10px 0 0;
}

.slider02 dl dd h3 {
    font-size: 90%;
    font-weight: 600;
    margin: 5px 0;
    position: relative;
    padding-left: 15px;
}

.slider02 dl dd h3::before {
    content: '';
    border-top: 2px solid #666;
    width: 10px;
    position: absolute;
    top: 10px;
    left: 0;
    display: block;
}

.slider02 dl dd h4 {
    min-height: 2.7rem;
}

.slider02 dl dd .tag {
    border-top: 1px solid #666;
    margin: 15px 0 0;
    padding: 10px 0 8px;
}

.slider02 dl dd .tag li {
    display: inline-block;
    margin: 5px 0 0;
}

.slider02 dl dd .tag li a {
    font-size: 90%;
    font-weight: 600;
    background: #F2E8DE;
    border-radius: 20px;
    padding: 2px 15px;
    display: block;
}

.slider02 dl dd time {
    font-size: 80%;
    color: #666;
    border: 1px solid #666;
    border-width: 0 1px;
    padding: 0 10px;
}

.qa {
    border: solid 1px #ccc;
    border-radius: 1em;
    padding: 1em;
}

.qalabel {
    color: rgb(165, 165, 165);
    font-weight: bold;
    display: inline-block;
    padding-right: .3em;
}


.sc-tw a {
	height: 58px !important;
  padding: 0 !important;
	background: #000 !important;
	border-radius: 5px !important;
	display: flex !important;
  justify-content: center;
  align-items: center;
}





@media screen and (max-width: 736px) {
    #main {
        display: block;
    }

    #aside .block {
        width: auto;
        margin: 0;
        padding: 10px 20px 30px;
    }

    #aside h2 {
        font-size: 180%;
        line-height: 1.4em;
    }

    #aside .lead {
        font-size: 100%;
    }

    #aside h1 {
        font-size: 140%;
        line-height: 1.4em;
    }

    #mainContents #fv {
        height: auto;
    }

    #mainContents .block {
        width: auto;
        padding: 40px 0 20px;
    }

    #mainContents .backnumberNav {
        margin: 0 20px;
    }

    #mainContents .backnumberNav ul {
        font-size: 90%;
    }

    #mainContents .backnumberNav ul li {
        margin: 5px 15px;
    }

    #mainContents .data {
        margin: 60px 20px;
    }

    #mainContents .report article .text {
        margin: 0 20px 20px;
    }

    #mainContents .report article.photoL,
    #mainContents .report article.photoR {
        flex-direction: column;
    }

    #mainContents .report article.photoL .text,
    #mainContents .report article.photoL .photo,
    #mainContents .report article.photoR .text,
    #mainContents .report article.photoR .photo {
        width: auto;
    }

    #mainContents .report article.photoL .text {
        order: unset;
    }

    #mainContents .report article.photoL .photo,
    #mainContents .report article.photoR .photo {
        margin: auto;
    }

    #mainContents .report article .photo img,
    #mainContents .report article .photo img {
        width: 90%;
        height: auto;
        margin: auto;
    }

    #mainContents .report article.photoL .photo img,
    #mainContents .report article.photoR .photo img {
        width: 90%;
        height: auto;
        margin: auto;
    }

    #mainContents .report article .photo.multi {
        justify-content: center;
        /*flex-wrap: wrap;*/
    }

    #mainContents .report article.photoL .photo.multi img,
    #mainContents .report article.photoR .photo.multi img {
        width: 45%;
        height: auto;
    }

    #mainContents .report article .photo.multi img {
        width: 30%;
        height: auto;
        margin: 0;
    }

    #mainContents .report article ul.link {
        margin: 40px 20px;
    }

    #mainContents .credit {
        margin: 80px 20px 40px;
    }

    #mainContents .info {
        margin: 0 20px;
    }

    #mainContents .info .data1 {
        border: 4px solid #FFD400;
        padding: 20px;
        flex-direction: column;
    }

    #mainContents .info .data1 dt {
        align-self: center;
    }

    #mainContents .info .data1 dd {
        width: auto;
        line-height: 1.6em;
        margin: 10px 0 0;
    }

    #mainContents .info .data1 dd h3,
    #mainContents .info .data1 dd h4 {
        text-align: center;
    }

    #mainContents .info .data2 {
        margin: 40px 0;
    }

    #mainContents .info .data2 dl {
        font-size: 90%;
        margin: 10px 0 20px;
    }

    #mainContents .info .data2 dl dt {
        width: 85px;
    }

    #mainContents .backnumber {
        margin: 120px 20px;
    }

    #mainContents .backnumber h3 {
        font-size: 90%;
        margin: 15px 0;
    }

    #mainContents .backnumber ul {
        flex-direction: column;
    }

    #mainContents .backnumber ul li {
        width: auto;
        margin: 5px 0;
    }

    #RelatedArticle {
        margin: 40px 20px;
        padding: 40px 0 10px;
    }

    #RelatedArticle h2 {
        margin: 0 60px;
    }

    #Recommended {
        margin: 100px 20px 0;
    }

    #Recommended h2 {
        margin: 0 10px;
    }

    #Recommended .slider02 .slick-dots {
        bottom: -30px;
    }

    .slider02 dl dt {
        width: auto;
    }

    .slider02 dl dd {
        margin: 10px 0 0;
    }

    .slider02 dl dd h3 {
        font-size: 85%;
        margin: 5px 0 0;
    }

    .slider02 dl dd h4 {
        font-weight: 600;
    }

    .slider02.slick-slider {
        padding: 5px 30px;
        margin: 0;
    }

    .slider02 .slick-slide {
        margin: 10px;
    }

    .slider02 .slick-prev,
    .slider02 .slick-next {
        transform: scale(0.7);
        top: 20%;
    }

    .slider02 .slick-prev {
        left: -20px;
    }

    .slider02 .slick-next {
        right: -20px;
    }

    .slider02 .slick-dots {
        bottom: -40px;
        left: 0;
    }

    .slider02 .slick-dots {
        bottom: -60px;
    }

    .slider02 .slick-dots li button::before {
        font-size: 8px;
    }
}

.youtube {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.youtube iframe {
    width: 100%;
    height: 100%;
}



******************************/
.social-area-syncer {
	width: 100% ;
	min-height: 190px ;
	background: #F5F1E9 ;	/* 背景色 */
	padding: 1.5em 0 ;
}

/* デスクトップPCでは高さを拡張する */
@media screen and ( min-width:480px ) {
	.social-area-syncer {
		min-height: 119px ;
	}
}


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

 [ul]要素

******************************/
/* スマホ */
ul.social-button-syncer {
	/*! width: 238px ; */
	margin: 24px auto ;
	padding: 0 ;
	border: none ;
	list-style-type: none ;
	display: flex;
}

/* デスクトップ */
@media screen and ( min-width:480px ) {
	ul.social-button-syncer {
		/*! width: 410px ; */
	}
}


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

 [li]要素

******************************/
ul.social-button-syncer li {
	/*! float: left ; */
	text-align: center ;
	/*! height: 71px ; */
	margin: 0 .3em;
	padding:0 ;
}


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

 各種ボタン

******************************/
/* [Twitter] */
.sc-tw {
	min-width: 71px;
}

.sc-tw svg {
	width: 30px ;
	height: 30px ;
 }

.sc-tw a {
	height: 56px ;
	margin: 0 auto ;
	padding-top: 6px ;
	display: block ;
	background: #1B95E0 ;
	font-size: 12px ;
	color: #fff ;
	font-weight: 700 ;
	text-decoration: none ;
	letter-spacing: .5px ;
	border-radius: 2px ;
}

.sc-tw a:hover {
	color: #fff ;
	background: #0c7abf ;
}

.sc-tw span:before {
	white-space: pre ;
	content: '\A' ;
}

/* [Facebook] */
.sc-fb {
	z-index: 99 ;
	/*! width: 69px ; */
}

/* [LINE] */
.sc-li {
	width: 50px ;
}

.sc-li-img {
	border: none ;
	margin: 0 auto ;
	padding:0 ;
	width: 36px ;
	height: 60px ;
}

/* デスクトップPCではLINEボタンを表示しない */
@media screen and ( min-width:480px ) {
	.sc-li {
		/*display: none ;*/
	}
}