border-box;
}
body {
	background: #fff;
	font-family: 'メイリオ', 'Meiryo', 'Yu Gothic', ＭＳ Ｐゴシック, MS P Gothic, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Osaka, arial, sans-serif, verdana, Helvetica;
	font-size: 16px;
	line-height: 1.8;
	color: #222;
	box-sizing: border-box;
}

/* general */
ul {list-style-type: disc;}
.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {max-width: 1200px;}
.halfpage {width: 70%; margin: 0 auto;}
.sectionbox {padding: 5% 0;}
.subsectionbox {margin-bottom: 5%;}
.no-lists {list-style-type: none; padding-left: 0;}
.nospcbttm {padding-bottom: 0!important; margin-bottom: 0!important;}
.get-shadow {box-shadow: 0 0 5px #222;}
.get-corner {border-radius: 5px;}
.get-circle {border-radius: 50%;}
.get-btm-line {text-decoration: underline;}
.get-corner {border-radius: 10px;}
.get-highlight {background-color: yellow;}
.txtshadow {text-shadow: 0 0 3px #000;}
.br-pc, .br-tb, .br-mb {display: none;}
.view-pc, .view-mb, .hidely {display: none;}
.setclearline {clear: both; float: none; height: 1px; overflow: hidden;}
.no-btm-margin {margin-bottom: 0!important;}
.txt-orange {color: #F78E1E;}
.fit-line {letter-spacing: -1px;}
.font-sans {font-family: 'メイリオ', 'Meiryo', 'Yu Gothic', ＭＳ Ｐゴシック, MS P Gothic, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Osaka, arial, sans-serif, verdana, Helvetica;}
.font-serif {font-family: "Yu Mincho", serif;}
.remarks {font-size: 80%;}
.material-symbols-outlined {
	font-variation-settings:
	'FILL' 0,
	'wght' 400,
	'GRAD' 0,
	'opsz' 48;
	vertical-align: middle;
}
.btn-primary {
	font-size: 160%;
	font-weight: 700;
	padding: 10px 30px;
	background: #CC0033;
	border-color: #CC0033;
	color: #fff;
}
.btn:hover {
	background-color: #003553;
	border-color: #003553;
}
.instructor-position {font-size: 60%;}
.instructor-pict {
	border-radius: 220px;
	background: linear-gradient(to bottom,  rgba(255,255,255,0.4) 0%,rgba(255,255,255,0) 100%);
	max-width: 400px;
	overflow: hidden;
}
.badge {text-shadow: none!important;}

/* font sizes */
.fsize-1x {font-size: 100%;}
.fsize-15x {font-size: 150%;}
.fsize-2x {font-size: 200%;}
.fsize-25x {font-size: 250%;}
.fsize-3x {font-size: 300%;}
.fsize-35x {font-size: 350%;}

/* color set */
.txt-navy {color: #003553;}
.txt-red {color: #CC0033;}
.txt-org {color: #F78E1E;}
.txt-deep-org {color: #F15B22;}
.txt-gold {color: #C8A560;}
.txt-yellow {color: yellow;}
.txt-grey {color: #D1D3D4;}
.txt-white {color: #fff;}
.txt-black {color: #222;}
.bg-navy {background-color: #003553;}
.bg-red {background-color: #CC0033;}
.bg-org {background-color: #F78E1E;}
.bg-light-org {background-color: rgba(247,142,30,0.15);}
.bg-deep-org {background-color: #F15B22;}
.bg-gold {background-color: #C8A560;}
.bg-light-gold {background-color: rgba(200,165,96,0.05);}
.bg-grey {background-color: #D1D3D4;}
.bg-light-grey {background-color: rgba(209,211,212,0.3);}
.text-bg-warning {background-color: #C8A560!important;}

/* headings */
h1 img {width: 14%; margin: 15px 0px 15px 2px;}
h1, h2, h3 {font-weight: 700; margin-bottom: 20px;}
h2.sectitle {
	margin-top: 0;
	margin-bottom: 30px;
	font-weight: 300;
	font-size: 20px;
}
.hding {padding: 10px; background-color: #e00820; color: #fff;}
.hding span {
	display: block;
	padding: 10px;
	border: 1px solid #fff;
}

/* button */
.btn .material-symbols-outlined {vertical-align: top;}
.apply-button-span {padding: 3% 0;}
.apply-button-span .material-symbols-outlined {font-size: 140%; vertical-align: top;}
.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check)+.btn:active {background-color: #003553; color: #fff;}

/* back to top */
#back2top {
	position: fixed;
	right: 5px;
	bottom: 5px;
	line-height: 96px;
	font-size: 96px;
	width: 120px;
	height: 120px;
	text-align: right;
	z-index: 5;
}
#back2top a {
	display: block;
	padding: 16px;
	color: navy;
	text-shadow: 0 0 10px #fff;
}
#back2top a:hover {color: red;}
#back2top a .material-symbols-outlined {font-size: 72px; background: rgba(255,255,255,0.6); border-radius: 5px;}

/* header & footer */
#plphdrRight li {display: inline-block; vertical-align: middle;}
#plphdrRight .btn-primary {font-size: 120%;}
#phdSubmit img, #phdRgnx img, #phdRgnMail img {max-height: 50px;}
header, footer {padding: 20px 0;}
header img, footer img {height: 70px; width: auto;}
#footerTerms {font-size: 80%;}
#footerTerms h2 {
	font-size: 120%;
	margin-top: 0;
	color: #333;
}
#footerTerms h4 {font-size: 100%; font-weight: bold;}
#footerTerms li {margin-bottom: 20px;}
#ftrTerms2 li {margin-bottom: 0;}
#section02 h3 span {display: block; font-size: 60%;}

/* hero */
#hero {
	padding-top: 5%;
	background: #eee url('img/bg-hero.jpg') no-repeat center center;
	background-size: cover;
	position: relative;
}
#heroLeft h2 {font-size: 500%;}
#heroLeft h2 span {font-size: 50%;}
#heroLeft h3 {font-size: 200%;}
#heroLeft h3 strong {font-size: 180%;}
#heroRight {position: relative;}
#hrrightTag {
	position: absolute;
	bottom: 30px;
	right: 0;
	width: 70%;
	z-index: 4;
	text-align: right;
}
#hrrightTag h4 {font-size: 200%; margin: 0;}
#hrrightTag h4 span {font-size: 70%;}
#heroBTN {
	position: absolute;
	left: 0;
	bottom: 60px;
	width: 100%;
	z-index: 10;
}
#heroBTN .btn {font-size: 200%;}
#heroBTN .btn .material-symbols-outlined {font-size: 150%;}

/* intro section */
#intro {font-size: 120%;}
#intro p {margin-bottom: 2rem;}

/* event time section */
#eventTime h3 {font-size: 550%;}
#eventTime h3 span {font-size: 50%;}
#timeBlock dl {font-size: 150%;}
#timeBlock dt {margin-bottom: 2%;}
#timeBlock dd {padding-bottom: 2%; border-bottom: 1px dotted #ccc; margin-bottom: 2%;}
#timeBlock dd:last-child {margin-bottom: 0;}
#evntPlceLeft {text-align: left; font-size: 150%;}
#evntPlceLeft dl {margin-bottom: 5%;}
#evntPlceLeft dd {font-weight: bold;}
#evntPlceLeft .remarks {font-size: 45%;}
#evntPlceLeft .remarks strong {font-size: 200%;}

/* instructor section */
#instructor .text-bg-primary {background-color: #C8A560!important;}

/* responsive fixes */
@media screen and (max-width: 640px) {
	footer {padding-bottom: 20%;}
	#heroLeft {text-align: center;}
	#heroRight {padding-bottom: 64px;}
	#hrrightTag {bottom: 90px; text-align: center; width: 100%;}
	#hrrightTag h4 {font-size: 100%;}
	#heroBTN {bottom: 20px;}
	#heroBTN .btn {font-size: 150%;}
	.hrh3px {text-align: right; padding-right: 7%;}
	.container {overflow: hidden;}
	.view-mb, .br-mb {display: block;}
	.halfpage {width: 100%;}
	.subsectionbox {margin-bottom: 20%;}
	.apply-button-span {padding: 5% 0;}
	#phlpHeader {text-align: center;}
	#plplogo {margin-bottom: 20px;}
	#plphdrRight ul {margin-bottom: 0;}
	#heroLeft h2 {font-size: 250%;}
	#heroLeft h3 {font-size: 120%;}
	#heroLeft h3 strong {font-size: 150%;}
	#heroRight img {max-width: 60%;}
	#eventTime h3 {font-size: 220%;}
	#evntPlceLeft {text-align: center; font-size: 100%;}
	.instructor-pict {max-width: 60%; margin: 0 auto 5%;}
	#intro .fsize-15x {font-size: 120%;}
	.dateTime {letter-spacing: -5px;}
	#evntPlceLeft .remarks strong {font-size: 150%;}
	#evntPlceLeft .remarks {font-size: 75%;}
}
@media screen and (min-width: 641px) {
	.view-pc, .br-pc, .br-tb {display: block;}
	footer {padding: 0;}
	#footerTerms > .container {padding-left: 8%;}
	.sectionbox {padding: 5% 0 10%;}
	.subsectionbox {margin-bottom: 10%;}
	#plphdrRight {text-align: right; padding-top: 1%;}
	#plphdrRight li {margin-left: 10px;}
	#instrTXT01 {margin-top: 5%;}
	.hrh3px {padding-left: 70%;}
	.dateTime {letter-spacing: -15px;}
	#intro, #eventTime {padding-bottom: 0;}
	#intro h2 img {max-width: 50%;}
	#hrrightTag {padding-right: 15%;}
	#hero {min-height: 800px;}
	#eventPlace {margin-bottom: 3%;}
	#evntPlceRight {margin-top: 0.65%;}
	#eventPlace .halfpage {margin-top: 5%; padding-left: 5%;}
	#eprmark {padding-left: 15%;}
}

