/* designed by Green Labo Bangkok */
html {
	scroll-behavior: smooth;
	box-sizing: 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 */
.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {max-width: 1200px;}
.halfpage {width: 65%; margin: 0 auto;}
.sectionbox {padding: 60px 0;}
.subsectionbox {margin-bottom: 30px;}
ul {list-style-type: disc;
padding-inline-start: 22%;
}
.no-lists {list-style-type: none;
padding-inline-start:0;
}
.nospcbttm {padding-bottom: 0!important; margin-bottom: 0!important;}
.getshadow {box-shadow: 0 0 5px #222;}
.getcorner {border-radius: 5px;}
.getcircle {border-radius: 50%;}
.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;}
.get-corner {border-radius: 10px;}
.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%;
	padding: 10px 30px;
	background: #CC0033;
	border-color: #CC0033;
	color: #fff;
}
.btn:hover {
	background-color: #003553;
	border-color: ##003553;
}
a {color: #003553;}
a:hover {text-decoration: none;}

/* color set */
.txt-navy {color: #003553;}
.txt-red {color: #CC0033;}
.txt-org {color: #F78E1E;}
.txt-deep-org {color: #F15B22;}
.txt-gold {color: #C8A560;}
.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-deep-org {background-color: #F15B22;}
.bg-gold {background-color: #C8A560;}
.bg-grey {background-color: #D1D3D4;}

/* headings */
h1 img {width: 14%; margin: 15px 0px 15px 2px;}
h1, h2, h3 {font-weight: 700; margin-bottom: 20px;}
h2 {text-align: center; color: #003553;}
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;
}

/* 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;}
#phdSubmit img, #phdRgnx img, #phdRgnMail img {max-height: 50px;}
header, footer {padding: 10px 0;}
header img, footer img {height: 70px; width: auto;}

/* hero */
#hero {
	background: #003553 url('img/bg-hero.jpg') no-repeat center center;
	background-size: cover;
	padding: 2% 0;
}
#hero h4 {font-size: 220%;}
#hero h3 {font-size: 445%; text-align: center;}
#heroRibbon {
	text-align: center;
	padding: 20px 0 40px;
	margin-bottom: 30px;
	background: transparent url('img/bg-ribbon.png') no-repeat center top;
	background-size: cover;
	font-weight: bold;
	font-size: 200%;
	color: #000;
	text-shadow: 3px 3px 0 brown;
}
#hero h5 {text-align: center;}
#hero h5 span {
	display: block;
	padding: 5px;
	color: #000;
	background-color: #DFD121;
	font-size: 140%;
	line-height: 1;
}
#hero h6 img {max-width: 20%;}
#heroSubText {
	font-size: 120%;
	font-weight: bold;
}

/* section 1 */
#section01 {color: #222;}
.get-hd-bg {
	padding: 90px 0 60px;
	background: transparent url(img/bg-heading.png) no-repeat center top;
	margin-bottom: 20px;
}
#s1prt1 {font-size: 120%; font-weight: 700;}
#s1prt1 h3 {text-align: center;}
#s1prt1 h3 img {
	display: inline-block;
	margin-right: 20px;
	height: 120px;
	width: auto;
}
#s1prt2 h3 strong {border-bottom: 5px solid red;}
#s1prt3 {font-weight: 700;}
.get-border-yellow img {border: 10px solid #DFD121; border-radius: 10px;}

/* section 2 */
#section02 {
	background: #003553;
	color: #fff;
}
#section02 h2 {
	color: #fff;
	text-align: left;
	font-size: 200%;
}
#section02 h2 span {
	display: block;
	font-size: 60%;
}

/* button span */
.bttn-span {
	text-align: center;
	padding: 60px 0!important;
	background: rgba(200,165,96,0.3);
	background-size: cover;
}



/* footerTerms */
footer {font-size: 80%;}
#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;}

@media screen and (min-width: 641px) {
	.view-pc, .br-pc, .br-tb {display: block;}
	.sectionbox {padding: 20px 0;}
	.subsectionbox {margin-bottom: 60px;}
	#plphdrRight {text-align: right;}
	#plphdrRight li {margin-left: 10px;}
	#s1prt1 p {padding: 0 10%;}
	#s1prt1 .subsectionbox:last-child {margin-bottom: 10%;}
	#s1prt3 {padding: 0 15%;}
	#footerTerms ul {margin-left: 25%;}
	#section02 .halfpage {width: 80%; font-size: 120%;}
	#section02 h2 {margin-top: 10%;}
}
@media screen and (max-width: 640px) {
	.container {overflow: hidden;}
	.view-mb, .br-mb {display: block;}
	.halfpage {width: 100%;}
	.subsectionbox {margin-bottom: 60px;}
	#hrbtn {padding: 20px 0; background: yellow;}
	#s2btmistrctr {width: 90%; margin-bottom: 10%;}
	#plplogo {text-align: center; padding-bottom: 10px;}
	#plpmt5 {text-align: center; margin-bottom: 20px;}
	#plplogo img, #plpmt5 img {height: 64px;}
	#glbaddss {font-size: 80%;}
	#plphdrRight {text-align: center;}
	#plphdrRight ul {margin-bottom: 0;}
	.bttn-wrap img {max-height: 60px;}
	#hero {padding: 5% 0;}
	#hero h4 {font-size: 120%;}
	#hero h3 {font-size: 220%;}
	#heroRibbon {font-size: 160%; margin-bottom: 0;}
	#hero h5 {margin-bottom: 20px;}
	#hero h5 span {font-size: 70%;}
	#hero h6 img {max-width: 70%; margin-top: 40px;}
	#s1prt1 h3 {font-size: 100%; margin-bottom: 10px;}
	#s1prt1 h3 img {height: 70px;}
	.get-hd-bg {background-size:70%; padding: 60px 0 60px;}
}



/* footer ssl 
#footer {
  background: var(--navy);
  color: #fff;
}
#footer .container {
  padding-bottom: 6.4vw;
}
#footer .footer_logo {
  background: #fff;
  padding: 4vw 0 2.66vw;
  margin: 0 -8vw;
  text-align: center;
}
#footer .footer_logo img {
  width: 35.46vw;
}
#footer .footer_top {
  padding: 3.2vw 0;
  text-align: center;
}
#footer .footer_top p {
  font-size: 3.2vw;
  font-weight: var(--fw-regular);
  line-height: 1.6;
  letter-spacing: .025em;
}
#footer .footer_top p span {
  font-size: 4vw;
  font-weight: var(--fw-medium);
  line-height: 1.5;
  letter-spacing: .025em;
}
#footer .footer_RN {
  padding: 0 4.4vw;
}
#footer .footer_RN p {
  font-size: 3.2vw;
  font-weight: var(--fw-regular);
  line-height: 1.58;
  letter-spacing: .025em;
  border: 1px solid #fff;
  text-align: center;
}
#footer .footer_list {
  margin-top: 1.73vw;
}
#footer .footer_list dl {
  display: flex;
  font-size: 3.2vw;
  font-weight: var(--fw-regular);
  line-height: 1.58;
  letter-spacing: .025em;
}
#footer .footer_list dl dt {
  white-space: nowrap;
}
@media (min-width: 768px) {
  #footer .container {
    padding-top: 40px;
    padding-bottom: 80px;
    position: relative;
  }
  #footer .footer_logo {
    padding: 0 0 22px 26px;
    margin: 0;
    position: absolute;
    top: 0;
    right: 30px;
  }
  #footer .footer_logo::after {
    content: "";
    position: absolute;
    background: #fff;
    height: 100%;
    width: calc(100vw - 490px);
  }
  #footer .footer_logo img {
    width: 230px;
  }
  #footer .footer_top {
    padding: 0 0 30px;
    text-align: left;
  }
  #footer .footer_top p {
    font-size: 18px;
    font-weight: var(--fw-medium);
    line-height: 1.66;
  }
  #footer .footer_top p span {
    font-size: 20px;
    line-height: 1.6;
  }
  #footer .footer_RN {
    padding: 0;
    display: flex;
    align-items: center;
  }
  #footer .footer_RN p {
    font-size: 15px;
    font-weight: var(--fw-medium);
    line-height: 1;
    letter-spacing: .125em;
    padding: 12px 0;
    width: 100px;
  }
  #footer .footer_list {
    margin-top: 0;
    margin-left: 10px;
    display: flex;
    flex-wrap: wrap;
    flex: 1 0 0%;
  }
  #footer .footer_list dl {
    font-size: 14px;
    line-height: 1.85;
    margin-right: 1em;
  }
*/