@charset "UTF-8";
:root{
	--body : #000;
	--link : #000;
}
@media screen and (max-width: 750px){
	#main{
		padding-bottom : calc( 80 * 100vw / 375 );
	}
}
/*--------------------------------------------
TITLE
---------------------------------------------*/
.title02 {
	font-family: YakuHanMP , "Noto Serif JP" , serif;
	font-size: 2.4rem;
	font-weight: 900;
}
@media screen and (max-width: 750px){
	.title02 {
		line-height: 1.2;
	}
}
@media print,screen and (min-width: 751px){
	.title02 {
		line-height: 1;
	}
}
.title03 {
	font-family: YakuHanMP , "Noto Serif JP" , serif;
	font-size: 3.5rem;
	font-weight: 900;
	line-height: 1.43;
}
@media screen and (max-width: 750px){
	.title03 {
		margin-bottom: calc( 10 * 100vw / 375 );
		margin-top: calc( 15 * 100vw / 375 );
	}
}
@media print,screen and (min-width: 751px){
	.title03 {
		margin-bottom: 10px;
	}
}
/*--------------------------------------------
ARCHIVE TEMPLATE
---------------------------------------------*/
@media print,screen and (min-width: 751px){
	.archive_temp .wrap {
		display: flex;
		justify-content: space-between;
	}
}
/*--------------------------------------------
ARCHIVE LIST
---------------------------------------------*/
/*--- HEADING ---*/
#archive_list h1,
#archive_list #heading h2 , #archive_list #heading h1 {
	font-weight: 900;
	line-height: 1.46;
	margin-bottom: 30px;
}
#archive_list h1 {
	font-size: 3.5rem;
}
#archive_list #heading h2 , #archive_list #heading h1 {
	font-size: 2.4rem;
}
#archive_list #heading p {
	font-size: 1.5rem;
	letter-spacing: .05em;
	line-height: 2;
	text-align: justify;
}
@media screen and (max-width: 750px){
	#archive_list {
		padding-top: calc( 35 * 100vw / 375 );
	}
	#archive_list h1 {
		margin-bottom: calc( (20 - 8) * 100vw / 375 );
	}
	#archive_list #heading h2 {
		margin-bottom: calc( (30 - 5.5) * 100vw / 375 );
	}
	#archive_list #heading p {
		padding-bottom: calc( 60 * 100vw / 375 );
	}
}
@media print,screen and (min-width: 751px){
	#archive_list {
		margin-bottom: 100px;		
		padding-right: 90px;
		padding-top: 80px;
		width: 860px;
	}
	#archive_list h1 {
		margin-bottom: calc( 30px - 8px );
	}
	#archive_list #heading h2 , #archive_list #heading h1  {
		margin-bottom: calc( 30px - 5.5px );
	}
	#archive_list #heading p {
		padding-bottom: 72px;
	}
}
/*--------------------------------------------
ARCHIVE SINGLE
---------------------------------------------*/
@media print,screen and (min-width: 751px){
	#archive_single {
		border-right: 1px solid #d0d0d0;
		padding-right: 89px;
		padding-top: 80px;
		width: 860px;
	}
}

/*--- CATEGORY ---*/
#archive_single #category {
	align-items: flex-end;
	border-bottom: 1px solid #d0d0d0;
	display: flex;
	justify-content: space-between;
}
#archive_single #category time {
	color: #5e5e5e;
	font-size: 1.5rem;
}
@media screen and (max-width: 750px){
	#archive_single #category {
		padding-bottom: calc( 10 * 100vw / 375 );
	}
}
@media print,screen and (min-width: 751px){
	#archive_single {
		margin-bottom: 100px;
	}
	#archive_single #category {
		padding-bottom: 10px;
	}
}
/*--- HEADING ---*/
#archive_single #heading .title {
	border-bottom: 1px solid #d0d0d0;
}
#archive_single #heading .icon {
	background: #5e5e5e;
	color: #ffffff;
	display: inline-block;
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: .05em;
}
#archive_single #heading .name {
	font-size: 2.4rem;
	font-weight: 900;
	line-height: 1.46;
}
#mv figure {
}
#mv figure img {
	height: auto;
	width: 100%;
}
    #mv figure figcaption {
    }
#mv p {
	font-size: 1.5rem;
	line-height: 2;
}
    #mv ul li {
        font-size: 1.5rem;
        line-height: 2;
        margin-left: 1.5em;
        list-style: disc;
    }
@media screen and (max-width: 750px){
	#archive_single #heading .title {
		padding-bottom: calc( 30 * 100vw / 375 );
		padding-top: calc( 30 * 100vw / 375 );
	}
	#archive_single #heading .icon {
		margin-bottom: calc( 5 * 100vw / 375 );
		margin-right: calc( 5 * 100vw / 375 );
		padding: calc( 3.5 * 100vw / 375 ) calc( 5 * 100vw / 375 );
	}
	#mv {
		margin-bottom: calc( 30 * 100vw / 375 );
	}
	#mv figure {
		margin-bottom: calc( 20 * 100vw / 375 );
        flex-direction: column;
	}
        #mv figure figcaption {
            text-align: center;
        }
}
@media print,screen and (min-width: 751px){
	#archive_single #heading .title {
		padding-bottom: 30px;
		padding-top: 30px;
	}
	#archive_single #heading .icon {
		margin-bottom: 20px;
		margin-right: 10px;
		padding: 3.5px 5px;
	}
	#mv {
		margin-bottom: 100px;
	}
	#mv figure {
         position: relative;
         width: 770px;
         height: 500px;
         display: flex;
         margin: 10px auto 30px auto ;        
        flex-direction: column;
	}
	#mv figure img {
         margin: auto;
          max-width: 100%;
         max-height: 100%;
         width: auto;
         height: auto;
	}
    #mv figure figcaption {
        font-size: 1.3rem;
            text-align: center;
    }

}

/*--- BLOCK ---*/
/* scrollable */
.blockwrap {
	background-color: #fff;
}
@media screen and (max-width: 750px){
	.blockwrap {
		padding-bottom: calc( 60 * 100vw / 375 );
		padding-left: calc( 15 * 100vw / 375 );
		padding-right: calc( 15 * 100vw / 375 );
		scroll-behavior: smooth;
	}
}
@media print,screen and (min-width: 751px){
	.blockwrap {
		padding-bottom: 50px;
		padding-left: 50px;
		padding-right: 50px;
		scroll-behavior: smooth;
	}
}
/* block common*/
.block h3 {
	font-size: 2.4rem;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.46;
	text-align: justify;
}
.block .sec h4 {
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.39;
	text-align: justify;
}
.block .box li .caption {
	font-size: .9rem;
	letter-spacing: .05em;
	line-height: 1.2;
}
.block .box picture img {
	height: auto;
	width: 100%;
}
.block .box .text p {
	font-size: 1.5rem;
	letter-spacing: .05em;
	line-height: 2;
	text-align: justify;
}
.block .box .text ol , .block .box .text ul {
	font-size: 1.5rem;
	letter-spacing: .05em;
	line-height: 2;
	text-align: justify;
}
    .block .box .text ol li ,  .block .box .text ul li {
        font-size: 1.5rem;
        letter-spacing: .05em;
        line-height: 2;
        text-align: justify;
        margin-bottom: .5em;
    }
    .block .box .text ul li { 
        list-style: circle;
    }
    .block .box .text ol li { 
        list-style: decimal;
    }
    .block .box .text dt  ,  .block .box .text dd  { 
        font-size: 1.5rem;
        letter-spacing: .05em;
        line-height: 1.3;
        text-align: justify;
        margin-bottom: .5em;
    }
    .block .box .text dl div {
        display: flex;
    }
    .block .box .text dl div dt {
        width:  7em;
    }
    .block .box .text dl div dd {
        width:  calc(100% - 7em);
    }
        html[lang="en"]  .block .box .text dl div dt {
            width:  10em;
        }
        html[lang="en"]  .block .box .text dl div dd {
            width:  calc(100% - 10em);
        }
.block .box .text a {
	text-decoration: underline;
    word-break: break-all;
}
.block .box .text a:after {
	content: '';
	display: inline-block;
}
.block .box .text a:hover {
	text-decoration: none;	
}
.block .box .text a:not([target*="blank"]) {
	color: #5e9671;
}
.block .box .text a:not([target*="blank"]):after {
	background: url(../images/ui/icon/arrow04.svg) 0 0 / contain no-repeat;
}
.block .box .text a:not([target*="blank"]):hover {
	background-color: #5e9671;
	color: #ffffff;
}
.block .box .text a[target*="blank"] {
	color: #ff7474;
}
.block .box .text a[target*="blank"]:after {
	background: url(../images/ui/icon/arrow05.svg) 0 0 / contain no-repeat;
}
.block .box .text a[target*="blank"]:hover {
	background-color: #ff7474;
	color: #ffffff;
}

@media screen and (max-width: 750px){
	.block {
		padding-top: calc( 30 * 100vw / 375 );
	}
	.block + .block {
		padding-top: calc( 50 * 100vw / 375 );
	}
	.sec + .sec {
		margin-top: calc( 50 * 100vw / 375 );
	}
	.block h3 {
		margin-bottom: calc( 50 * 100vw / 375 );
	}
	.block .sec h4 {
		margin-bottom: calc( 20 * 100vw / 375 );
	}
	.block .box li:last-child {
		margin-bottom: calc( 20 * 100vw / 375 );
	}
	.block .box li + li {
		margin-top: calc( 14 * 100vw / 375 );
	}
	.block .box li .caption {
		margin-top: calc( 3 * 100vw / 375 );
	}
	.block .box .text a:after {
		height: calc( 12 * 100vw / 375 );
		margin-right: calc( 2 * 100vw / 375 );
		width: calc( 12 * 100vw / 375 );
	}
.block .box .text ol , .block .box .text ul {
    margin-left: 1.5em;
}
.block .box .text ol , .block .box .text ol {
    margin-left: 1em;
}

}
@media print,screen and (min-width: 751px){
	.block {
		padding-top: 50px;
	}
	.sec + .sec {
		margin-top: 50px;
	}
	.block h3 {
		margin-bottom: 50px;
	}
	.block .sec h4 {
		margin-bottom: 20px;
	}
	.block .box:after {
		clear: both;
	}
	.block .box li {
		margin-bottom: 20px;
	}
	.block .box li .caption {
		margin-top: 3px;
	}
	.block .box .text a:after {
		height: 12px;
		margin-right: 2px;
		width: 12px;
	}
	.block .box .text ol li {
		margin-left: 0;
	}
    .block .box .text ul { 
        margin-left: 1.5em;
    }
    .block .box .text ol { 
        margin-left: 2em;
    }
    .block .box iframe { 
        max-width: 670px !important; 
        height: 505px;
    }
}
/* for block layout */
@media print,screen and (min-width: 751px){
	.block .box[class*="media_fl_"] {
		overflow: hidden;
	}
	.block .box.media_fl_l .img-wrap {
		float: left;
		margin-right: 40px;
	}
	.block .box.media_fl_r .img-wrap {
		float: right;
		margin-left: 40px;
	}
	.block .box.media_left .img-wrap ,
	.block .box.media_center .img-wrap , .block .box.media_right .img-wrap {
		display: flex;
		flex-wrap: wrap;
	}
	.block .box.media_left .img-wrap {
		justify-content: flex-start;
	}
	.block .box.media_center .img-wrap {
		justify-content: center;
	}
	.block .box.media_right .img-wrap {
		justify-content: flex-end ;
	}
    .block .box:not([class*="media_fl_"]):not(.w_full) .img-wrap  li {
		margin-right: 20px;
	}
        .block .box.media_right .img-wrap  li:first-of-type {
            margin-right: 0px;
        }
}
/* for block img size */
@media screen and (max-width: 750px){
	.block .box picture img {
		max-width: 100%;
		width: auto;		
	}
}
@media print,screen and (min-width: 751px){
	.block .box.w_full {
		display: flex;
		flex-direction: column-reverse;
	}
	.block .box.w_180 li {
		width: 210px;
	}
        .block .box.w_180 li:nth-of-type(3n) {
            margin-right: 0px !important;
        }
	.block .box.w_360 li {
		width: 325px;
	}
        .block .box.w_360 li:nth-of-type(2n) {
            margin-right: 0px !important;
        }
	.block .box.w_full li {
		width: 100%;
	}
	.block .box.w_actual li {
		max-width: 100%;
		width: auto;
	}
	.block .box.w_full li:last-child {
		margin-bottom: 0;
	}
	.block .box.w_full .text {
		margin-bottom: 30px;
	}
	.block .box.w_actual picture img {
		max-width: 100%;
		width: auto;
	}
}
/* box-color */
.block .sec.box-color01 {
	background-color: #ffc1c1;
	border: 1px solid #ff9090;
}
.block .sec.box-color02 {
	background-color: #9ccbac;
	border: 1px solid #5e9671;
}
.block .sec.box-color03 {
	background-color: #fff9c1;
	border: 1px solid #ffdd66;
}
.block .sec.box-color04 {
	background-color: #f3f3f3;
	border: 1px solid #c4c4c4;
}
@media screen and (max-width: 750px){
	.block .sec[class*="box-color"] {
		padding: calc( 20 * 100vw / 375 ) calc( 15 * 100vw / 375 );
	}
}
@media print,screen and (min-width: 751px){
	.block .sec[class*="box-color"] {
		padding: 40px;
	}
}

/*--------------------------------------------
NAV pc only
---------------------------------------------*/
/*--- CATEGORY NAV ---*/
@media print,screen and (min-width: 751px){
	#categoryNav {
		padding-left: 40px;
		padding-top: 30px;
		width: 190px;
	}
	.floating {
		margin-bottom: 0;
		position: sticky;
		top: 30px;
		z-index: 1;
	}
	.floating li a {
		align-items: center;
		color: #5e5e5e;
		display: flex;
		font-size: 1.4rem;
		letter-spacing: .1em;
		margin-bottom: calc( 28px - 4px );
	}
	.floating li a span {
		line-height: 1.4;
		transition: all .3s ease-in;
	}
	.floating li a.is-current span,
	.floating li a:hover span{
		background-color: #5e5e5e;
		color: #ffffff;
	}
	.floating > li > a:before {
		content: '';
		background: url(../images/ui/icon/arrow03.svg) 0 0 / contain no-repeat;
		flex-shrink: 0;
		height: 10px;
		margin-right: 10px;
		width: 5px;
	}
	.floating > li.is-active > a:before {
		content: '';
		background: url(../images/ui/icon/down03.svg) 0 0 / contain no-repeat;
		flex-shrink: 0;
		height: 5px;
		margin-right: 10px;
		width: 10px;
	}
	.floating li ul {
		border-left: 1px solid #5e5e5e;
		margin-left: 15px;
		padding-left: 15px;
	}
}
/*--- LOCAL NAV ---*/
@media print,screen and (min-width: 751px){
	.localNav  {
	    align-items: center;
	    display: flex;
	    flex-wrap: wrap;
	    justify-content: center;
	    left: 50%;
	    margin-bottom: 43px;
	    position: relative;
	    transform: translateX( -50% );
	}
	.localNav li {
		margin-left: 25px;
		margin-right: 25px;
	}
	.localNav li a {
		align-items: center;
		color: #5e5e5e;
		display: flex;
		flex-direction: column;
		font-size: 1.4rem;
		letter-spacing: 0.1em;
		line-height: 1;
		margin-bottom: 20px;
	}
	.localNav li a:after {
		background: url(../images/ui/icon/down03.svg)  0 0 / contain no-repeat;
		content: '';
		height: 5px;
		margin-top: 12px;
		width: 10px;
	}
}

@media screen and (max-width: 750px){
	#toTop{
		display: none;
	}
}


/*-- eng  -----*/
.value-text {
    padding-top: 1em;
}
.value-text p strong {
    font-size: 2rem;
}
.value-text p {
    margin-bottom: 1em;
}
.value-text p.right {
    text-align: right;
    margin-bottom: 1em;
}

#archive_single .block em {
    font-style: italic;
}