.magazine__content {
	width: calc( 100% - 40px );
	max-width: 1000px;
	margin: 0 auto 0 auto;
	background: #fff;
	padding: 40px;
	border-radius: 20px;
	& p {
		font-size: 16px; line-height: 1.77;
	}
}
@media screen and ( max-width:767px ) {
	.magazine__content {
		padding: 20px;
	}
}
.magazine__backnumber {
	display: flex; justify-content: end; flex-wrap: wrap; align-items: center; margin: 0 0 10px 0; gap:10px 20px; font-size: 16px; padding: 0 0 0 150px;
	& a {
		display: block; color: #a38e1b; text-decoration: underline; 
		&:hover {
			text-decoration: none;
		}
		&:before {
			content: '▲'; transform: rotate(90deg); display: inline-block; margin: 0 0.5em 0 0;
		}
	}
}
.magazine__title {
	position: relative; padding: 2px 0; background: #fff;border-top: #a38e1b solid 4px; border-bottom: #a38e1b solid 4px; margin: 0 0 40px 0;
	&.hobogekkan { 
		& .flex__box {
			& .text__box {
				& .number {
					color: #000; border: #000 solid 1px;
				}
				& h3 {
					color: #000;
				}
				& p {
					color: #000;
				}
			}
		}
	}
	& .web__magazine	{
		position: absolute; left: 0; top:0; display: inline-block; white-space: nowrap; padding: 0.5em 0.5em; font-size: 16px; font-family: var(--mincho); background: #a38e1b; color: #fff; transform: translateY(-50%); line-height: 1.2; letter-spacing: 0.25em; text-indent: 0.25em;
	}
	& .flex__box {
		display: flex; flex-wrap: wrap; align-items: center; border-top: #a38e1b solid 2px; border-bottom: #a38e1b solid 2px;
		& .photo__box {
			flex-basis: 43.33%; align-self: stretch;
			& img {
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}
		& .text__box {
			flex-basis: 56.67%;
			padding: 20px;
			& .number {
				display: inline-block; font-family: var(--mincho); font-size: 20px; border: #fff solid 1px; padding: 0.25em 0.5em; color: #fff;
			}
			& h3 {
				font-size: 24px; font-family: var(--mincho); color: #fff; line-height: 1.5; margin: 12px 0 24px 0;
			}
			& p {
				color: #fff;
			}
		}
	}	
}
@media screen and ( max-width:767px ) {
	.magazine__title {
		& .flex__box {
			& .text__box {
				flex-basis: 100%; order: 2;
			}
			& .photo__box {
				flex-basis: 100%; height: 50vw; order: 1;
			}
		}
	}
}
.magazine__article {
	margin: 0 0 80px 0;
	& p {
		margin: 2em 0;
	}
	& > p {
		text-indent: 1em each-line;
	}
	& .text__box2 {
		margin: 2em 0; font-size: 16px;
		&.flex__box {
			& > p {
				flex-basis: 50%; margin: 0;
				&:nth-of-type(1) {
					padding: 0 15px 0; border-right: #333 solid 1px;
				}
				&:nth-of-type(2) {
					padding: 0 0 0 15px;
				}
			}
		}
		> p {
			text-indent: 1em each-line;
		}
	}
	& .side__text__box {
		gap:30px;
		& .text__box {
			flex-basis: calc( ( 100% - 30px ) / 2 );
			& > p {
				margin: 0 0 2em 0;
			}
			& figure {
				& img {
					width: 100%; height: auto;
				}
			}
		}
		& .photo__box {
			flex-basis: calc( ( 100% - 30px ) / 2 ); align-self: stretch; padding: 0;
			& figure {
				height: 100%; width: 100%;
				& img {
					height: 100%; width: 100%; object-fit: cover;
				}
			}
		}
	}
	& .photo__box {
		padding: 40px 0;
		& figure {
			& img {
				width: 100%; height: auto;
			}
			& figcaption {
				font-size: 14px; display: block; padding: 1em 0 0 0; line-height: 1.2;
			}
		}
		&.flex__box {
			gap: 10px; 
			& figure {
				flex-basis: 100%; position: relative;
				
			}
		}
	}
}
@media screen and ( max-width:767px ) {
	.magazine__article {
		margin: 0 0 40px 0;
		& p {
			margin: 1em 0;
		}
		& .photo__box {
			padding: 20px 0;
		}
		& .side__text__box {
			& .text__box {
				flex-basis: 100%;
			}
			& .photo__box {
				flex-basis: 100%;
			}
		}
		& .text__box2 {
			&.flex__box {
				gap: 20px;
				& > p {
					flex-basis: 100%;
					&:nth-of-type(1) {
						border: none; padding: 0;
					}
					&:nth-of-type(2) {
						padding: 0;
					}
				}
			}
		}
	}
}
.gekkan__contact {
	background: #f0ecdd;
	& + .gekkan__contact {
		margin-top: 40px;
	}
	& .text__box {
		flex-basis: 50%; align-self: flex-start;
		& h4 {
			background: #e6dec5;
			font-size: 16px;
			font-weight: 700;
			padding: 10px 20px;
		}
		& .contact__detail {
			padding: 20px;
			& h5 {
				font-size: 20px;
				font-weight: 700;
				margin: 0 0 20px 0;
			}
			& p {
				font-size: 14px;
			}
			& dl {
				font-size: 14px;
				& dt {
					flex-basis:6em;
				}
				& dd {
					flex-basis: calc( 100% - 6em );
				}		
				& + p {
					margin-top: 20px;
				}		 
			}
		}
	}
	& .map__box {
		flex-basis: 50%; align-self: stretch;
		& iframe {
			width: 100%;
			height: 100%;
			min-height: 320px;
			border: none;
		}
	}
}
@media screen and ( max-width:767px) {
	.gekkan__contact {
		& .text__box {
			flex-basis: 100%;
		}
		& .map__box {
			flex-basis: 100%;
		}
	}
}

.pankuzu3 {
	font-size:10px;
	margin:10px auto 0px auto;
	padding:5px 0px 0px 0px;
	text-align:left;
	width:900px;
}

.pankuzu3 a:link,
.pankuzu3 a:visited { color:#828282; text-decoration:underline; }
.pankuzu3 a:hover,
.pankuzu3 a:active { color:#828282; text-decoration:none; }


.mt3 {margin-top:3px; }
.mt5 {margin-top:5px; }
.mt6 {margin-top:6px; }
.mt7 {margin-top:7px; }
.mt8 {margin-top:8px; }
.mt9 {margin-top:9px; }
.mt10 {margin-top:10px !important; }
.mt15 {margin-top:15px !important; }
.mt20 {margin-top:20px !important; }
.mt30 {margin-top:30px !important; }
.mb0 {margin-bottom:0px !important; }
.mb5 {margin-bottom:5px !important; }
.mb8 {margin-bottom:8px !important; }
.mb10 {margin-bottom:10px !important; }
.mb15 {margin-bottom:15px !important; }
.mb20 {margin-bottom:20px !important; }
.mb25 {margin-bottom:25px !important; }
.mb30 {margin-bottom:30px !important; }
.mb40 {margin-bottom:40px !important; }
.mb50 {margin-bottom:50px !important; }
.mr20 {margin-right:30px !important; }
#mr-15 {margin-right:-15px !important; }

.fc_b {color:#000; }
.fc_w {color:#FFF; }
.fc_blue {color:#0068b7; }
.fg { font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

.fs12 { font-size:12px !important; }
.fs13 { font-size:13px !important; }
.fs14 { font-size:14px !important; }
.fs15 { font-size:15px !important; }
.fs16 { font-size:16px !important; }
.fs17 { font-size:17px !important; }
.fs18 { font-size:18px !important; }

.w900 { width:900px; }
.w440 { width:440px; }
.w443 { width:443px; }
.bn {width:100%;}
.bn p {
	margin:0px !important;
	padding:0px !important;
	float:right;	
	font-size:12px;
	color:#096db9;
}
.bn a:link {color:#096db9;}
.bn a:visited { color:#096db9; }
.bn a:hover { color:#096db9; }

.gk_main {
	position:relative;	
	margin-bottom:20px;
}

.gk_main2 {
	position:relative;	
	margin-bottom:20px;
}	
.gk_main p {
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳＰ明朝", "MS PMincho", "MS 明朝", serif;
	font-size:16px;
	letter-spacing:0;
	line-height:23px;
	margin: 0 0 1em 0;
}

.gk_main2 p {
	font-size:16px;
	letter-spacing:0;
	line-height:23px;
	margin: 0 0 1em 0;
}
.gk_main-p1 {
	position:absolute;
	z-index:1;
	left:25px;
	top:150px;
}
.gk_main-p2 {
	position:absolute;
	z-index:2;
	left:25px;
	top:240px;
}

#gk_vol {
	border:1px solid #000;	
	float:left;
	padding:10px;
	font-size:25px;
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳＰ明朝", "MS PMincho", "MS 明朝", serif;
	letter-spacing:0;
	margin: 0 0 1em 0;
}



#gk_vol2 {
	border:1px solid #FFF;	
	float:left;
	padding:10px;
	font-size:25px;
	font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳＰ明朝", "MS PMincho", "MS 明朝", serif;
	letter-spacing:0;
}

#gk_title {
margin-left:15px;
padding:10px 0px;
float:left;	
font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳＰ明朝", "MS PMincho", "MS 明朝", serif;
font-size:25px;
letter-spacing:0;
}

#gk_title2{
float:left;	
font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳＰ明朝", "MS PMincho", "MS 明朝", serif;
font-size:25px;
letter-spacing:0;
}

#vol_sel {
float:right;
width:165px;
font-size:12px;
letter-spacing:-0.5px;
}

#ml_vol_selecter{
width:100px;
margin-left:20px;
}

#backnumber {
position:absolute;
top:-40px;
right:30px;
width:100%;
}

#backnumber2 {
position:absolute;
top:-20px;
right:0px;
width:100%;
}


.gk_h3 {
position: absolute;
top: 142px;
left: 27px;
width: 600px;
}

.kk_h3 {
position: absolute;
top: 160px;
left: 27px;
width: 600px;
}

.kk_h3b {
position: absolute;
top: 170px;
left: 27px;
width: 600px;
}

.gk_p {
padding:0!important;
width:900px;
letter-spacing:0;
line-height:25px;
text-align: justify;
font-size:16px;	
}

.gk_p2 {
padding:0!important;
width:900px;
letter-spacing:0;
line-height:32px;
text-align: justify;
font-size:18px;	
}

.gk_p2b {
position: absolute;
top: 203px;
left: 28px;
width: 604px;
letter-spacing: 0;
line-height: 40px;
text-align: justify;
font-size: 18px;
}

.kk_p2b {
position: absolute;
top: 219px;
left: 28px;
width: 604px;
letter-spacing: 0;
line-height: 32px !important;
text-align: justify;
font-size: 18px;
}

.kk_p2c {
position: absolute;
top: 219px;
left: 28px;
width: 455px;
letter-spacing: 0;
line-height: 32px !important;
text-align: justify;
font-size: 18px;
}

.kk_p2d {
position: absolute;
top: 230px;
left: 28px;
width: 440px;
letter-spacing: 0;
line-height: 150% !important;
text-align: justify;
font-size: 18px;
}

.kk_p2f {
position: absolute;
top: 250px;
left: 28px;
width: 440px;
letter-spacing: 0;
line-height: 170% !important;
text-align: justify;
font-size: 22px;
}

.kk_p2g {
position: absolute;
top: 290px;
left: 28px;
width: 440px;
letter-spacing: 0;
line-height: 170% !important;
text-align: justify;
font-size: 22px;
}

.gk_pl {
padding-right:20px;
width:430px;
float:left;	
border-right:1px solid #666;
}

.gk_pr {
width:430px;
float:right;	
}

.gk_pl2 {
width:430px;
float:left;	
}

.gk_pr2 {
padding-left:20px;
width:430px;
float:right;	
border-left:1px solid #666;
}

.gk_img {
margin-top:30px;	
}
.gk_cap {
margin-bottom:30px;
font-size:12px;	
}

.gk_link p {
margin:0px !important;
padding:0px !important;
float:left;	
font-size:14px;
color:#096db9;
}

.gk_link a:link {color:#096db9;}
.gk_link a:visited { color:#096db9; }
.gk_link a:hover { color:#096db9; }
.gk_detail {
width:900px;
margin-bottom:30px;	
}

.gk_detail-l {
width:480px;
float:left;
height:220px;
background:#f0ecdd;	
}

.gk_map {
width:420px;
float:left;
height:220px;
}

.gk_ask {
margin-bottom:0px;
padding:20px 0px 20px 30px;
width:450px;
background:#e6dec5;
font-size:16px;
}

.gk_details {
padding:25px 0px 25px 30px;
width:450px;
background:#f0ecdd;	
line-height:23px;
letter-spacing:0;
}

.gk_name {
padding:0px;
font-size:20px;	
}

.gk_url {
margin:0px;
padding:0px;
font-size:15px;	
}

.gk_tel {
margin:7px 0px 0px 0px;
padding:0px;
font-size:15px;	
}

.gk_address {
margin-bottom:0px;
padding:0px;
font-size:13px;	
line-height:17px;
}

.gk_vol3-1 {
position:relative;
}

.gk_vol3-1 p {
position:absolute;
top:20px;
left:0px;
width:420px;
letter-spacing:0;
line-height:25px;
text-align: justify;
font-size:14px;	
}

.gk_vol3-2 {
margin-top:10px;
width:430px;
}

.gk_vol3-2 td {
padding:5px;
}

.gk_sub1 {
margin-top:0px !important;
font-size:15px;
line-height:11px;
}

.gk_sub2 {
float:left;
margin-top:0px !important;
font-size:15px;
line-height:11px;
width:442px;
}

.pos_rel {
position:relative;
}

.gk_vol14-p1 {
position:absolute;
top:30px;
left:30px;
width:420px;
line-height:150%;
font-size:23px;	
font-weight:bold;
}

.gk_vol14-p2 {
position:absolute;
top:75px;
left:30px;
width:420px;
line-height:150%;
font-size:15px;	
}

.gk_vol14-p3 {
position:absolute;
top:120px;
left:20px;
width:420px;
line-height:150%;
font-size:15px;	
}

.gk_detail-l15 {
width:480px;
float:left;
height:280px;
background:#f0ecdd;	
}

.gk_detail-16 {
width:480px;
float:left;
height:400px;
background:#f0ecdd;	
}

.gk_detail-18 {
width:460px;
float:left;
height:310px;
background:#f0ecdd;
padding-left:20px;
margin-bottom:30px !important; 
}

.gk_map15 {
width:420px;
float:left;
height:280px;
}

.gk_ask15 {
margin-bottom:0px;
padding:12px 0px 12px 30px;
width:450px;
background:#e6dec5;	
font-size:16px;
}

.gk_details15 {
padding:10px 0px 0px 30px;
width:450px;
background:#f0ecdd;	
line-height:23px;
letter-spacing:0;
}

.gk_address_16 {
margin-bottom:0px;
padding:0px;
font-size:13px;	
line-height:19px;
}

.gk_address_16 a, 
.gk_address_16 a:link,
.gk_address_16 a:hover {
color:#000 !important;
}

.dd_16 {
line-height:19px;
}

.vol17_p1 {
margin-top:-6px !important;
padding:10px 15px;
font-size:16px;
text-align:120%;
background-color:#d5ebea;
width:100% auto;
}
.vol17_p2 {
position: absolute;
top: 328px;
left: 465px;
font-size: 16px;
text-align: 120%;
}

.gk_map18 {
width:420px;
float:left;
height:355px;
}


.gekkan__box {
	& p {
		font-size: var(--px18);
		line-height: 1.77;
		text-align: justify;
	}
	& + .gekkan__box {
		margin-top: 40px;
	}
	& figure {
		& figcaption {
			font-size: var(--px14);
		}
	}
}

.flex__box {
	display: flex; justify-content:space-between; flex-wrap: wrap;
	& .gap__12 {
		gap:12px;
	}
	& > * {
		flex-grow: 0 ; flex-shrink: 1;
	}
	& .fb__50 {
		flex-basis: calc( ( 100% - 12px ) / 2 );
	}
	& .fb__100 {
		flex-basis: 100%;
	}
}
.clear {
	clear: both;
}