/*
Theme Name: enpaku-new
Theme URI:
Description: enpaku 早稲田大学坪内博士記念演劇博物館
Version: 1.0
Author: YM
Author URI:
Text Domain:
*/

@charset "utf-8";

/* fixed nav */
body {
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif !important;
	;
	color: #3B3B3B;
	background-color: #FFF;
	margin: 0;
	padding: 0;
	font-size: 12px;
	width: 100%;
}

.inner_wrapper {
	width: 1030px;
	margin: 0 auto;
	position: relative;
}

.inner_wrapper_network {
	width: 1030px;
	margin: 0 auto;
	position: relative;
}

.inner_wrapper:before,
.inner_wrapper:after {
	content: "";
	display: table;
}

.inner_wrapper:after {
	clear: both;
}

/* For IE 6/7 (trigger hasLayout) */
.inner_wrapper {
	zoom: 1;
}

section:before,
section:after {
	content: "";
	display: table;
}

section:after {
	clear: both;
}

/* For IE 6/7 (trigger hasLayout) */
section {
	zoom: 1;
}



/*//////////////////// clearfix ///*/
.cf:before,
.cf:after {
	content: "";
	display: table;
}

.cf:after {
	clear: both;
}

/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom: 1;
}

div:focus {
	outline: none;
}

input:focus {
	outline: none;
}

/* Link */
a {
	color: #3B3B3B;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

a:focus {
	outline: none;
}

p a:link {
	color: green;
	text-decoration: none;
}

p a:visited {
	color: green;
	text-decoration: none;
}

/* ヘッダー */
header {
	width: 100%;
	height: 100px;
	display: block;
	background-color: #F8F8F8;
}

header h1 {
	position: absolute;
	top: 15px;
	left: 0;
	margin: 0;
}

header h1 a {
	display: block;
	width: 286px;
	height: 70px;
	text-indent: -9999px;
	background: url(images/common/logo-new.png) no-repeat 0 0;
	overflow: hidden;
}

header .nav {
	position: absolute;
	top: 0;
	right: 0;
	text-align: right;
	font-size: 15px;
	margin: 0;
}

header .nav div.searchBox {
	display: inline-block;
	margin: 15px 0 0 10px;
}

header .nav div.hNavi {
	display: inline-block;
	height: 16px;
	line-height: 16px;
	width: auto;
	margin: 0;
	padding-top: 15px;
	font-size: 90% !important;
}

.en header .nav div.hNavi,
.cn header .nav div.hNavi,
.kr header .nav div.hNavi {
	padding: 15px 115px 0 0;
}

header .nav div.hNavi a {
	text-decoration: underline;
}

header .nav div.hNavi a:hover {
	text-decoration: none;
}

header .nav input {
	height: 22px;
}

header .nav input#searchsubmit {
	background-color: #45b870;
	color: #FFFFFF;
	border: none;
	height: 22px;
	width: 60px;
	line-height: 22px;
	padding: 0;
}

header .nav input#searchsubmit:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
	cursor: pointer;
}

header .nav input:focus {
	outline: none;
}

header .nav .language {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 9999;
}

.en header .nav .language,
.cn header .nav .language,
.kr header .nav .language {
	position: absolute;
	top: 12px;
	right: 0;
}

header .nav .language a {
	margin-left: 2px;
}

header .nav ul.gNavi {
	padding: 20px 0px 0 0;
	display: block;
	position: relative;
	z-index: 999;
}

.en header .nav ul.gNavi,
.cn header .nav ul.gNavi,
.kr header .nav ul.gNavi {
	padding: 20px 0 0 0;
}

header .nav ul.gNavi li {
	height: 26px;
	display: inline-block;
	line-height: 26px;
	vertical-align: top;
	position: relative;
	background: url(images/common/navi_btn.png) no-repeat left center;
	padding-left: 28px;
	margin-left: 20px;
}

header .nav ul.gNavi li:hover {
	background: url(images/common/navi_btn_on.png) no-repeat left center;
	cursor: pointer;
}

header .nav ul.gNavi li a {
	display: block;
	position: relative;
	line-height: 26px;
	font-size: 14px !important;
}

header .nav ul.gNavi li a:hover,
header .nav ul.gNavi li a:active {
	text-decoration: none;
}

header .nav ul.gNavi li.noIcon {
	background: none !important;
	padding-left: 0 !important;
}

header .nav ul.gNavi li.noIcon:hover {
	background: none !important;
}

header .nav ul.gNavi li.noIcon:hover a {
	color: #45b870 !important;
}

header .nav ul.gNavi li.join a {
	display: block;
	width: 94px;
	height: 0;
	padding-top: 26px;
	margin: 5px 0 0;
	background: url(images/common/join_btn.png) no-repeat 0 0;
	overflow: hidden;
}

header .nav ul.gNavi li.join a:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}

header .nav ul.gNavi li ul.sub-menu {
	position: absolute;
	display: none;
	background-color: #F8F8F8;
	padding: 20px 10px 10px;
	margin-left: -28px;
}

ul.sub-menu li {
	margin-left: 0 !important;
	padding-left: 0 !important;
	padding-right: 20px;
	display: block !important;
	background: none !important;
}

ul.sub-menu li a {
	text-align: left !important;
	width: 155px;
}

ul.sub-menu li a:hover {
	color: #45b870 !important;
}

ul.gNavi:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.hNavi img {
	vertical-align: middle;
}

header .nav ul.gNavi li ul.sub-menu2 {
	position: absolute;
	display: none;
	background-color: #F8F8F8;
	padding: 20px 10px 10px;
	margin-left: -28px;
}

ul.sub-menu2 li {
	margin-left: 0 !important;
	padding-left: 0 !important;
	padding-right: 20px;
	display: block !important;
	background: none !important;
}

ul.sub-menu2 li a {
	text-align: left !important;
	width: 320px;
}

ul.sub-menu2 li a:hover {
	color: #45b870 !important;
}

header .nav ul.gNavi li ul.sub-menu3 {
	position: absolute;
	display: none;
	background-color: #F8F8F8;
	padding: 20px 10px 10px;
	margin-left: -28px;
}

ul.sub-menu3 li {
	margin-left: 0 !important;
	padding-left: 0 !important;
	padding-right: 20px;
	display: block !important;
	background: none !important;
}

ul.sub-menu3 li a {
	text-align: left !important;
	width: 320px;
}

ul.sub-menu3 li a:hover {
	color: #45b870 !important;
}


#contents_area {
	margin-bottom: 0px;
	width: 100%;
	height: auto;
}

#contents_area h1 {
	display: block;
	font-size: 24px;
	font-weight: bold;
	line-height: 38px;
	margin-bottom: 35px;
	padding-left: 50px;
	background: url(images/common/h1_icon.png) no-repeat 0 0;
}

#contents_area .post-list-left-box .ttl {
	display: block;
	font-size: 24px;
	font-weight: bold;
	line-height: 38px !important;
	margin: 70px 0 35px;
	padding-left: 50px;
	background: url(images/common/h1_icon.png) no-repeat 0 0;
}


#contents_area h1 span {
	font-size: 16px;
	display: inline-block;
	vertical-align: top;
	font-family: 'Hiragino Mincho ProN', serif !important;
}

.contents.white {
	background: url(images/common/co_back.png) no-repeat right 200px;
	background-color: #FFFFFF;
}

.contents.gray {
	background-color: #F8F8F8;
	padding: 70px 0;
}

#contents_area section {
	border-bottom: #636363 solid 1px;
	padding: 70px 0;
}

#contents_area section.noborder {
	border-bottom: none !important;
}

#contents_area section.bottom {
	border-bottom: none !important;
	padding-bottom: 0 !important;
	background-color: #F8F8F8;
}

/* フッター */
footer .footer {
	height: 52px;
	border-top: #000 solid 1px;
	border-bottom: #000 solid 1px;
}

.fNavi {
	float: left;
	font-size: 10px;
	padding: 21px 0 0;
}

.fNavi a {
	text-decoration: none;
}

.fNavi a:hover {
	text-decoration: none;
}


/* ぱんくず */
.breadcrumb {
	width: 1030px;
	margin: 15px auto 0;
	font-size: 10px;
	color: #3B3B3B;
}

.breadcrumb a {
	padding: 0 5px;
	color: #777777;
}

.breadcrumb a.home {
	margin-left: -5px;
}

/* メールマガジン登録 */
.mailnews-box {
	padding: -30px 0 0;
	line-height: 22px;
	outline: none !important;
}

.mailnews-box.page {
	padding: 0 !important;
	margin: -30px 0 120px;
	display: block;
}

.mail-txt {
	padding: 20px 0 10px;
	font-size: 14px;
}

.mail-txt.caution {
	font-size: 12px;
}

.mailnews-box h1 {
	display: block;
	font-size: 24px;
	font-weight: bold;
	line-height: 38px;
	padding-left: 50px;
	padding-bottom: 10px;
	background: url(images/common/h1_icon.png) no-repeat 0 0;
	border-bottom: #adadad solid 1px;
}

.mailnews-box h2 {
	display: block;
	font-size: 16px;
	font-weight: bold;
	line-height: 21px;
	padding-left: 30px;
	padding-bottom: 10px;
	background: url(images/common/h2_icon.png) no-repeat 0 0;
	margin-top: 20px;
	border-bottom: #adadad solid 1px;
}

.mailnews-box label {
	display: none;
}

.mailnews-box p {
	display: inline-block;
	position: relative;
}

.mailnews-box p.s2_message {
	font-size: 20px;
}

.mailnews-box input {
	float: left;
	margin-right: 5px;
}

.mailnews-box input.fm {
	width: 350px;
	height: 34px;
	border: #636363 solid 1px;
	background-color: #FFFFFF;
	padding: 0 8px;
	font-size: 16px;
}

.mailnews-box input[name="regist"] {
	width: 80px;
	height: 34px;
	border: #44b76f solid 1px;
	background-color: #44b76f;
	color: #FFFFFF;
	font-size: 16px;
	cursor: pointer;
}

.mailnews-box input[name="reject"] {
	width: 80px;
	height: 34px;
	border: #636363 solid 1px;
	background-color: #636363;
	color: #FFFFFF;
	font-size: 16px;
	cursor: pointer;
}

form:before,
form:after {
	content: "";
	display: table;
}

form:after {
	clear: both;
}

/* For IE 6/7 (trigger hasLayout) */
form {
	zoom: 1;
}





#join .mailnews {
	margin: -30px 0 0;
	padding: 0;
}

#join .mailnews p {
	display: inline-block;
	position: relative;
}

#join .mailnews p.s2_message {
	font-size: 20px;
	padding-top: 30px;
}

#join .mailnews label {
	display: none;
}

#join .mailnews input[name="email"] {
	width: 350px;
	height: 34px;
	border: #636363 solid 1px;
	background-color: #FFFFFF !important;
	background-color: #FFFFFF;
	margin-right: 5px;
	padding: 0 8px;
	font-size: 14px;
}

#join .mailnews input[name="subscribe"] {
	width: 80px;
	height: 34px;
	border: #44b76f solid 1px;
	background-color: #44b76f;
	color: #FFFFFF;
	font-size: 16px;
	cursor: pointer;
	position: absolute;
	top: -5px;
}

#join .mailnews input[name="unsubscribe"] {
	width: 110px;
	height: 34px;
	border: #636363 solid 1px;
	background-color: #636363;
	color: #FFFFFF;
	font-size: 16px;
	cursor: pointer;
	position: absolute;
	top: -5px;
	left: 85px;
}




/* カテゴリーラベル */
p.cat {
	width: 75px;
	height: 20px;
	display: block;
	text-align: center;
	margin: 12px 0 0;
	line-height: 20px;
	color: #FFF;
}

p.cat a {
	color: #FFF;
}

p.cat.kabuki {
	width: 165px;
}

p.cat.joruri {
	width: 165px;
}

p.cat.middle-age {
	width: 128px;
}

p.cat.ancient {
	width: 128px;
}

p.cat.contemporary {
	width: 128px;
}

p.cat.modern {
	width: 128px;
}

p.cat.biblio {
	width: 58px;
}

p.cat.catalog {
	width: 58px;
}

p.cat.enpaku {
	width: 58px;
}

p.cat.greeting {
	width: 156px;
}

p.cat.calendar {
	width: 116px;
}


p.cat.event,
p.cat.contemporary,
p.cat.modern,
p.cat.kabuki,
p.cat.joruri,
p.cat.middle-age,
p.cat.ancient,
p.cat.greeting,
p.cat.catalog {
	background-color: #44B76F;
}

p.cat.permanent {
	background-color: #3C89E5;
}

p.cat.special,
p.cat.western,
p.cat.calendar,
p.cat.enpaku {
	background-color: #9A001A;
}

p.cat.oriental,
p.cat.biblio {
	background-color: #1ab1e8;
}

p.cat.visual,
p.cat.study {
	background-color: #3a5897;
}





span.left {
	float: left;
}

span.right {
	float: right;
}



/* ページトップへボタン */
.pagetop {
	float: none;
	position: absolute;
	top: 0;
	right: 0;
}

.pagetop a {
	display: block;
	width: 118px;
	height: 0;
	padding-top: 50px;
	background: url(images/common/pagetop.png) no-repeat 0 0;
	overflow: hidden;
}

.pagetop a:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}

footer h1 a {
	display: block;
	width: 230px;
	height: 118px;
	text-indent: -9999px;
	margin: 30px auto 40px;
	background: url(images/common/f_logo-new.png) no-repeat 0 0;
	overflow: hidden;
}

footer h1 a:hover {
	background-position: 0 0px;
}

footer p.address {
	font-size: 12px;
	text-align: center;
	padding-bottom: 20px;
}

footer #copy {
	height: 100px;
	background-color: #3B3B3B;
	font-size: 10px;
	text-align: center;
	color: #FFF;
	padding: 20px 0 0;
}


ul.om_banner2 {
	clear: both;
	text-align: center;
}

ul.om_banner2 li a {
	padding-top: 30px;
	margin-right: 35px;
	display: block;
}

ul.om_banner2 li a:hover {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}

.pc {
	display: block !important;
}

.sp {
	display: none !important;
}

@media screen and (max-width: 1025px) {
	html {
		margin-top: 0 !important;
	}

	.pc {
		display: none !important;
	}

	.sp {
		display: block !important;
		max-width: 640px;
		margin: 0 auto;
	}

	/* fixed nav */
	body {
		font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
		color: #3B3B3B;
		background-color: #FFF;
		margin: 0;
		padding: 0;
		-webkit-text-size-adjust: 100%;
		font-size: 16px;
	}


	/*//////////////////// clearfix ///*/
	.cf:before,
	.cf:after {
		content: "";
		display: table;
	}

	.cf:after {
		clear: both;
	}

	/* For IE 6/7 (trigger hasLayout) */
	.cf {
		zoom: 1;
	}


	/* Link */
	a {
		color: #3B3B3B;
		text-decoration: none;
	}

	a:hover {
		text-decoration: underline;
	}

	a:focus {
		outline: none;
	}

	.inner_wrapper {
		max-width: 640px;
		width: 100vw;
		margin: 0 auto;
	}

	/* ヘッダー */
	header {
		background: url(images-m/common/h_back.png) repeat-x 0 0;
		border-top: #CCCCCC solid 1px;
		border-bottom: #CCCCCC solid 1px;
		position: relative;
		margin: 0 auto;
		display: flex !important;
		justify-content: space-between;
		padding: 0 1em;
		align-items: center;
	}

	/*header h1 {
	position: absolute;
	top: 23px;
	left: 25px;
	margin: 0;
	z-index: 999;
}*/
	header h1 {
		width: 80%;
		margin-left: 10px;
	}

	header h1 a {
		width: 100%;
		background-size: 90%;
		background-position: 0 center;
	}

	#dropdown-btn {
		position: relative;
	}

	header p span {
		display: block;
		width: clamp(10px, 15vw, 58px);
		height: 0;
		padding-top: 42px;
		background: url(images-m/common/gnavi_btn.png) no-repeat 0 0;
		overflow: hidden;
		cursor: pointer;
		position: absolute;
		right: 10px;
		z-index: 999;
		top: 50px;
		transform: translateY(-25px);
	}

	header .nav {
		display: none;
		position: absolute;
		list-style: none;
		padding: 0;
		/*margin: 5px 0 0;*/
		background-color: #fff;
		box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
		z-index: 900;
		margin: 0;
		width: 100vw;
		top: 100px;
		max-width: 640px;
	}

	header .nav .is-active {
		display: block;
	}


	header .nav .language {
		line-height: 30px;
		padding: 10px 30px;
		border-bottom: #ADADAD solid 1px;
		text-align: left;
	}

	header .nav .language img {
		width: 8%;
		margin: 0 5px 0 0;
	}

	header .nav ul.gNaviMobile li {
		line-height: 30px;
		padding: 10px 0;
		border-bottom: #ADADAD solid 1px;
		text-align: left;
	}

	header .nav ul.gNaviMobile li a {
		font-size: 20px;
		padding-left: 40px;
		text-decoration: none;
		font-weight: bold;
	}

	header .nav ul.gNaviMobile li a:hover {
		text-decoration: underline;
	}

	header .nav ul.gNaviMobile li ul.sub-menu {
		margin: 0;
		padding: 0 40px;
	}


	header .nav ul.gNaviMobile li:first-child ul.sub-menu {
		border-top: #ADADAD solid 1px;
		padding: 10px 40px 0;
		margin: 10px 0 0;
	}

	header .nav ul.gNaviMobile li ul.sub-menu li {
		border-bottom: none !important;
		color: #ADADAD;
		padding: 5px 0 0 !important;
	}

	header .nav ul.gNaviMobile li ul.sub-menu li a {
		padding-left: 0 !important;
	}

	header .nav div.searchBox {
		/*width: 560px;*/
		margin: 40px;
		display: block;
		width: 100vw;
		text-align: left;
		margin: 40px 10px
	}

	#searchform div {
		display: flex;
		justify-content: space-between;
	}

	header .nav input {
		border-radius: 0;
		display: table-cell;
	}

	header .nav input#s {
		height: 50px;
		/*width: 430px;*/
		line-height: 70px;
		font-size: 18px;
		font-weight: bold;
		padding: 0;
		margin: 0 10px 0 0;
		width: 100%;
	}

	header .nav input#searchsubmit {
		background-color: #45b870;
		color: #FFFFFF;
		border: none;
		height: 50px;
		width: 112px;
		line-height: 50px;
		font-size: 18px;
		padding: 0 10px;
	}

	header .nav input#searchsubmit:hover {
		opacity: 0.8;
		-moz-opacity: 0.8;
		filter: alpha(opacity=80);
		cursor: pointer;
	}

	header .nav input:focus {
		outline: none;
	}




	header .nav ul.hNavi {
		width: 560px;
		margin: 40px;
		display: block;
	}

	header .nav ul.hNavi li {
		width: 260px;
		height: 30px;
		line-height: 30px;
		display: inline-block;
	}

	header .nav ul.hNavi li a {
		font-size: 20px;
		text-decoration: none;
		font-weight: bold;
	}

	header .nav .join {
		width: 560px;
		margin: 40px;
		display: block;
	}

	header .nav .join a {
		display: block;
		height: 50px;
		line-height: 50px;
		color: #FFF;
		font-size: 18px;
		font-weight: bold;
		background-color: #9A001A;
		text-align: center;
		text-decoration: none;
	}

	#searchform {
		width: 95%;
		margin: 0 auto;
	}

	header .nav .language {
		position: static;
	}

	.language a {
		text-align: left;
	}

	.breadcrumb {
		width: 90%;
		margin: 15px auto;
		line-height: 1.5;
	}

	/*}*/



	/* カテゴリーラベル */
	p.cat {
		width: 75px;
		height: 28px;
		display: block;
		text-align: center;
		margin: 12px 0 0;
		font-size: 16px;
		line-height: 28px;
		color: #FFF;
	}

	p.cat a {
		color: #FFF;
	}

	p.cat.kabuki {
		width: 165px;
	}

	p.cat.joruri {
		width: 165px;
	}

	p.cat.middle-age {
		width: 128px;
	}

	p.cat.ancient {
		width: 128px;
	}

	p.cat.contemporary {
		width: 128px;
	}

	p.cat.modern {
		width: 128px;
	}

	p.cat.biblio {
		width: 58px;
	}

	p.cat.catalog {
		width: 58px;
	}

	p.cat.enpaku {
		width: 58px;
	}

	p.cat.greeting {
		width: 156px;
	}

	p.cat.calendar {
		width: 116px;
	}


	p.cat.event,
	p.cat.contemporary,
	p.cat.modern,
	p.cat.kabuki,
	p.cat.joruri,
	p.cat.middle-age,
	p.cat.ancient,
	p.cat.greeting,
	p.cat.catalog {
		background-color: #44B76F;
	}

	p.cat.permanent {
		background-color: #3C89E5;
	}

	p.cat.special,
	p.cat.western,
	p.cat.calendar,
	p.cat.enpaku {
		background-color: #9A001A;
	}

	p.cat.oriental,
	p.cat.biblio {
		background-color: #1ab1e8;
	}

	p.cat.visual,
	p.cat.study {
		background-color: #3a5897;
	}





	/* メールマガジン登録 */
	.mailnews-box {
		margin: 0 40px 80px;
		width: 560px;
		line-height: 22px;
		outline: none !important;
	}

	.mail-txt {
		padding: 40px 0 20px;
		font-size: 16px;
	}

	.mailnews-box input {
		border-radius: 0;
		display: table-cell !important;
	}

	.mailnews-box input.fm {
		width: 560px;
		height: 60px;
		border: #636363 solid 1px;
		background-color: #FFFFFF;
		padding: 0 8px;
		margin-bottom: 10px;
		font-size: 28px;
	}

	.mailnews-box input[name="regist"] {
		width: 200px;
		height: 60px;
		text-align: center;
		border: #44b76f solid 1px;
		background-color: #44b76f;
		color: #FFFFFF;
		font-size: 28px;
		margin-right: 10px;
		cursor: pointer;
	}

	.mailnews-box input[name="reject"] {
		width: 150px;
		height: 60px;
		text-align: center;
		border: #636363 solid 1px;
		background-color: #636363;
		color: #FFFFFF;
		font-size: 28px;
		cursor: pointer;
	}

	#googlemap iframe {
		width: 100%;
	}

	/* モバイル フォント */
	p a:link {
		color: green
	}



	/* フッター */
	footer {
		width: 100vw;
		padding: 40px 0 0;
		border-top: #3B3B3B solid 1px;
		margin: 0 auto;
	}

	footer ul.fNavi {
		width: 90%;
		margin: 0 auto;
		display: block;
		border-top: 1px solid #000;
	}

	footer ul.fNavi li {
		/*width: 270px;*/
		height: 40px;
		line-height: 30px;
		padding-bottom: 15px;
		/*display: inline-block;*/
	}

	footer ul.fNavi li a {
		font-size: 20px;
		text-decoration: none;
		/*font-weight: bold;*/
		font-weight: 400;
	}

	footer h1 {
		text-align: center;

	}

	footer h1 a {
		display: block;
		width: 100%;
		height: 0;
		padding-top: 126px;
		margin: 30px auto 40px;
		background: url(images-m/common/f_logo-new.png) no-repeat 0 0;
		background-position: center bottom;
		overflow: hidden;
	}

	footer h1 a:hover {
		background-position: 0 0px;
	}

	footer #pc_btn {
		width: 560px;
		margin: 40px;
		display: block;
	}

	footer #pc_btn a {
		display: block;
		width: 560px;
		height: 70px;
		line-height: 70px;
		color: #FFF;
		font-size: 28px;
		font-weight: bold;
		background-color: #44B76F;
		text-align: center;
		text-decoration: none;
	}

	footer #copy {
		height: 100px;
		background-color: #3B3B3B;
		font-size: 10px;
		text-align: center;
		color: #FFF;
		padding: 20px 0 0;
		width: 100vw;
	}



	#contents_area {
		margin-bottom: 0px;
		height: auto;
		max-width: 100vw;
		overflow: hidden;
	}

	#contents_area section {
		padding: 80px 0 0;
		width: 100%;
		margin: 0 auto;
	}

	#contents_area section.bottom {
		padding-bottom: 200px;
	}


	/* pc switcher */
	.pc-switcher {
		clear: both;
		text-align: center;
		margin: 1.4em 120px;
		width: 400px;
	}

	.pc-switcher a,
	.pc-switcher span {
		padding: 0.4em 8%;
		text-align: center;
		border: 1px solid #0059A8;
		border-left: none;
		color: #fff !important;
		font-weight: bold;
		text-decoration: none;
		width: 200px !important;
	}

	.pc-switcher a {
		background-color: #0074DA;
		background-image: -moz-linear-gradient(#0074DA, #004A8D);
		background-image: -o-linear-gradient(#0074DA, #004A8D);
		background-image: -ms-linear-gradient(#0074DA, #004A8D);
		background-image: -webkit-gradient(linear, left top, left bottom, from(#0074DA), to(#004A8D));
		background-image: -webkit-linear-gradient(#0074DA, #004A8D);
		background-image: linear-gradient(#0074DA, #004A8D);
	}

	.pc-switcher a:hover {
		background-color: #0059A8;
		background-image: -moz-linear-gradient(#0059A8, #004A8D);
		background-image: -o-linear-gradient(#0059A8, #004A8D);
		background-image: -ms-linear-gradient(#0059A8, #004A8D);
		background-image: -webkit-gradient(linear, left top, left bottom, from(#0059A8), to(#004A8D));
		background-image: -webkit-linear-gradient(#0059A8, #004A8D);
		background-image: linear-gradient(#0059A8, #004A8D);
	}

	.pc-switcher span.active {
		background-color: #00305C;
	}

	.pc-switcher a:first-child,
	.pc-switcher span:first-child {
		border-left: 1px solid #0074DA;
		-webkit-border-radius: 2.4em 0 0 2.4em;
		-moz-border-radius: 2.4em 0 0 2.4em;
		border-radius: 2.4em 0 0 2.4em;
	}

	.pc-switcher a:last-child,
	.pc-switcher span:last-child {
		-webkit-border-radius: 0 2.4em 2.4em 0;
		-moz-border-radius: 0 2.4em 2.4em 0;
		border-radius: 0 2.4em 2.4em 0;
	}


	.givenow_btn a {
		display: block;
		text-align: center;
		margin: 30px;
		text-decoration: underline;
		color: blue;
	}

	.fNavi {
		float: none;
	}

	footer h1 {
		max-width: 100vw;
	}

	footer h1 a {
		background-size: clamp(180px, 29.9vw, 240px);
	}

	footer p.address {
		width: 100vw;
	}

	.inner_wrapper:before,
	.inner_wrapper:after {
		content: "";
		display: none;
	}

	.txtbox:before,
	.txtbox:after {
		content: "";
		display: none !important;
	}

	#contents_area section {
		border: none;
	}
}