@charset 'UTF-8';

/*  Our Program
--------------------------------------- */

.kv {
position: relative;
padding: 550px 0 155px;
}

.kv:before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 480px;
background: url("/en/glopac/assets/img/program/bg_kv_01.jpg") no-repeat center;
background-size: cover;
}

.kv h1 {
margin: 0 0 40px;
font-size: 8em;
line-height: 1;
text-align: center;
}

.kv .lead {
max-width: 1180px;
margin: 0 auto 82px;
padding: 0 20px;
font-size: 2em;
line-height: 1.6;
box-sizing: border-box;
}

.kv ul {
display: flex;
justify-content: space-between;
max-width: 1180px;
margin: 0 auto;
padding: 0 20px;
box-sizing: border-box;
}

.kv ul li {
width: 30%;
}

.kv ul li .img {
text-align: center;
}

.kv ul li .ttl {
margin: 40px 0 50px;
font-size: 3em;
line-height: 1.14;
text-align: center;
}

.kv ul li .txt {
font-size: 2em;
line-height: 1.6;
}

.virtual {
max-width: 1480px;
margin: 0 auto 225px;
padding: 0 20px;
box-sizing: border-box;
}

.virtual .inner {
position: relative;
padding: 70px 0 115px;
background: #003ea0;
background: -moz-linear-gradient(top left, #2ba5dc 0%, #003ea0 100%);
background: -webkit-gradient(linear, left top, right bottom, from(#2ba5dc), to(#003ea0));
background: -webkit-linear-gradient(top left, #2ba5dc 0%, #003ea0 100%);
background: -o-linear-gradient(top left, #2ba5dc 0%, #003ea0 100%);
background: -ms-linear-gradient(top left, #2ba5dc 0%, #003ea0 100%);
background: linear-gradient(to bottom right, #2ba5dc 0%, #003ea0 100%);
z-index: -1;
}

.virtual h2 {
margin: 0 0 60px;
color: #fff;
font-size: 6em;
font-weight: 100;
line-height: 1;
text-align: center;
}

.virtual .img {
position: absolute;
right: 5.2%;
bottom: -15.5%;
width: 41.67%;
}

.virtual .img span {
display: block;
margin: 10px 0 0;
font-size: 1.4em;
line-height: 1.74;
text-align: center;
}

.virtual .txtBox {
width: 43.4%;
padding: 0 0 0 5.2%;
box-sizing: border-box;
}

.virtual .txtBox p {
color: #fff;
font-size: 2em;
line-height: 1.6;
}

.virtual .txtBox p + p {
margin: 32px 0 0;
}

.overview .upper {
padding: 60px 0 100px;
background: #fafafa;
}

.overview .upper h2 {
font-size: 6em;
font-weight: 1;
text-align: center;
}

.overview .upper .lead {
max-width: 1330px;
margin: 40px auto 60px;
padding: 0 20px;
font-size: 2em;
line-height: 1.6;
box-sizing: border-box;
}

.overview .upper .box {
position: relative;
}

.overview .upper .box .img {
position: absolute;
top: 0;
left: 0;
}

.overview .upper .box .txtBox {
position: relative;
max-width: 1330px;
margin: 0 auto;
padding: 0 20px;
box-sizing: border-box;
}

.overview .upper .box .txtBox p {
width: 46.51%;
margin: 0 0 0 auto;
font-size: 2em;
line-height: 1.6
}

.overview .upper .box .txtBox p + p {
margin: 32px 0 0 auto;
}

.overview .lower {
max-width: 1000px;
margin: 0 auto;
padding: 135px 20px 70px;
box-sizing: border-box;
}

.overview .lower ul {
display: flex;
justify-content: space-between;
}

.overview .lower ul li {
width: 30%;
text-align: center;
}

.overview .lower ul li .txt {
margin: 26px 0 0;
font-size: 3em;
}

.program {
padding: 150px 0;
background: #0a3c8c;
}

.program .box {
position: relative;
display: flex;
justify-content: space-between;
align-items: center;
max-width: 1330px;
margin: 0 auto;
padding: 0 20px;
box-sizing: border-box;
}

.program .box02 {
flex-flow: row-reverse;
margin: 150px auto 0;
}

.program .box02:after {
content: '';
position: absolute;
top: -120px;
left: 0;
right: 0;
width: 166px;
height: 166px;
margin: 0 auto;
background: url("/en/glopac/assets/img/program/bg_program_01.png") no-repeat center;
background-size: contain;
}

.program .box .img {
width: 50%;
}

.program .box02 .img {
width: 34.9%;
}

.program .box .txtBox {
width: 44.5%;
color: #fff;
margin: 0 0 65px;
}

.program .box02 .txtBox {
width: 58.5%;
}

.program .box .txtBox h2 {
margin: 0 0 65px;
font-size: 4em;
line-height: 1.6;
}

.program .box02 .txtBox h2 {
margin: 0 0 50px;
}

.program .box .txtBox p {
font-size: 2em;
line-height: 1.6;
}

.step {
max-width: 1330px;
margin: 0 auto;
padding: 150px 20px;
box-sizing: border-box;
}

.step h2 {
position: relative;
width: 71.279%;
margin: 0 0 150px;
padding: 0 0 0 75px;
font-size: 4.8em;
font-weight: 100;
line-height: 1;
box-sizing: border-box;
}

.step h2:before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 5px;
height: 120px;
background: #0a3c8c;
}

.step dl {
position: relative;
display: flex;
justify-content: space-between;
max-width: 1140px;
margin: 0 auto;
padding: 65px 0 40px;
border-top: 1px solid #111;
}

.step dl:last-child {
border-bottom: 1px solid #111;
}

.step dl + dl:before {
content: "";
position: absolute;
top: 0;
left: 50%;
margin-left: -14px;
display: block;
width: 0px;
height: 0px;
border-style: solid;
border-width: 14px 14px 0 14px;
border-color: #111 transparent transparent transparent;
}

.step dl dt {
width: 30%;
padding: 0 0 0 30px;
font-size: 4em;
font-weight: 100;
line-height: 1;
box-sizing: border-box;
}

.step dl dd {
width: 67.5%;
}

.step dl dd .ttl {
margin: 0 0 20px;
font-size: 2.8em;
font-weight: 700;
}

.step dl dd .txt {
min-height: 160px;
padding-left: 1.5em;
font-size: 2em;
line-height: 1.6;
list-style: disc;
}

.intern {
padding: 90px 0 130px;
}

.intern .img {
float: right;
width: 45.28%;
margin: -90px 0 4.72% 4.72%;
}

.intern .inner {
padding: 110px 0 175px;
background: #fafafa;
}

.intern h2 {
position: relative;
max-width: 1330px;
margin: -90px auto 40px;
padding: 0 20px 0 95px;
font-size: 4.8em;
font-weight: 100;
line-height: 1;
box-sizing: border-box;
}

.intern h2:before {
content: '';
position: absolute;
top: 0;
left: 20px;
width: 5px;
height: 120px;
background: #0a3c8c;
}

.intern .txt {
max-width: 1180px;
margin: 0 auto;
padding: 0 20px;
font-size: 2em;
line-height: 1.6;
box-sizing: border-box;
}

.intern .bnr {
max-width: 1180px;
margin: -105px auto 0;
padding: 0 20px;
box-sizing: border-box;
filter: drop-shadow(0 0 30px rgba(0,0,0,0.1));
}

.intern .bnr a {
display: block;
padding: 87px 0 87px 75px;
color: #0a3c8c;
font-size: 4em;
font-weight: 700;
line-height: 1;
border: 1px solid #0a3c8c;
background: #fff url("/en/glopac/assets/img/program/bg_intern_01.jpg") no-repeat right center;
background-size: auto 100%;
}

.intern .bnr span {
font-weight: 100;
}



@media screen and (max-width: 1450px) {

.overview .upper .box .img {
width: 52vw;
}

.overview .upper .box .txtBox p {
width: 38vw;
}

}



@media screen and (max-width: 1200px) {

.kv h1 {
margin: 0 0 30px;
font-size: 5.6em;
}

.kv .lead {
margin: 0 auto 60px;
font-size: 1.6em;
}

.kv ul li .ttl {
margin: 30px 0 40px;
font-size: 2em;
}

.kv ul li .txt {
font-size: 1.6em;
}

.virtual {
margin: 0 auto 150px;
}

.virtual .inner {
padding: 50px 0 85px;
}

.virtual h2 {
margin: 0 0 30px;
font-size: 4em;
}

.virtual .txtBox p {
font-size: 1.6em;
}

.virtual .txtBox p + p {
margin: 21px 0 0;
}

.overview .upper {
padding: 40px 0 65px;
background: #fafafa;
}

.overview .upper h2 {
font-size: 4em;
}

.overview .upper .lead {
margin: 30px auto 40px;
font-size: 1.6em;
}

.overview .upper .box .img {
width: 38vw;
}

.overview .upper .box .txtBox p {
width: 50vw;
font-size: 1.6em;
}

.overview .upper .box .txtBox p + p {
margin: 20px 0 0 auto;
}

.overview .lower {
padding: 95px 20px 40px;
}

.overview .lower ul li .img {
width: 60%;
margin: 0 auto;
}

.overview .lower ul li .txt {
margin: 20px 0 0;
font-size: 2em;
}

.program {
padding: 100px 0;
}

.program .box02 {
margin: 100px auto 0;
}

.program .box02:after {
top: -80px;
width: 110px;
height: 110px;
}

.program .box .txtBox {
margin: 0 0 45px;
}

.program .box .txtBox h2 {
margin: 0 0 45px;
font-size: 3em;
line-height: 1.6;
}

.program .box02 .txtBox h2 {
margin: 0 0 30px;
}

.program .box .txtBox p {
font-size: 1.6em;
}

.step {
padding: 100px 20px;
}

.step h2 {
margin: 0 0 100px;
padding: 0 0 0 75px;
font-size: 3.2em;
}

.step h2:before {
height: 100px;
}

.step dl {
padding: 45px 0 30px;
}

.step dl dt {
padding: 0 0 0 20px;
font-size: 3em;
}

.step dl dd .ttl {
margin: 0 0 15px;
font-size: 2em;
}

.step dl dd .txt {
min-height: 100px;
font-size: 1.6em;
line-height: 1.6;
}

.intern {
padding: 60px 0 80px;
}

.intern .img {
margin: -60px 0 4.72% 4.72%;
}

.intern .inner {
padding: 80px 0 120px;
}

.intern h2 {
margin: -60px auto 30px;
padding: 0 20px 0 75px;
font-size: 3.2em;
}

.intern h2:before {
height: 100px;
}

.intern .txt {
font-size: 1.6em;
}

.intern .bnr {
max-width: 800px;
margin: -70px auto 0;
}

.intern .bnr a {
padding: 60px 0 60px 50px;
font-size: 3em;
}

}



@media screen and (max-width: 750px) {

.kv {
position: relative;
padding: 60vw 0 8vw;
}

.kv:before {
width: 100%;
height: 52vw;
}

.kv h1 {
margin: 0 0 4vw;
font-size: 8vw;
}

.kv .lead {
width: 92vw;
max-width: inherit;
margin: 0 auto 8vw;
padding: 0;
font-size: 3.73vw;
line-height: 1.6;
}

.kv ul {
display: block;
width: 92vw;
max-width: inherit;
margin: 0 auto;
padding: 0;
box-sizing: border-box;
}

.kv ul li {
width: 100%;
margin: 0 0 6.4vw;
}

.kv ul li .img {
width: 20vw;
margin: 0 auto;
}

.kv ul li .ttl {
margin: 4vw 0 4.8vw;
font-size: 4.8vw;
line-height: 1.14;
text-align: center;
}

.kv ul li .txt {
font-size: 3.73vw;
line-height: 1.6;
}

.virtual {
max-width: inherit;
margin: 0 auto 12vw;
padding: 0;
box-sizing: border-box;
}

.virtual .inner {
position: relative;
padding: 6vw 4vw 12vw;
background: #003ea0;
background: -moz-linear-gradient(top left, #2ba5dc 0%, #003ea0 100%);
background: -webkit-gradient(linear, left top, right bottom, from(#2ba5dc), to(#003ea0));
background: -webkit-linear-gradient(top left, #2ba5dc 0%, #003ea0 100%);
background: -o-linear-gradient(top left, #2ba5dc 0%, #003ea0 100%);
background: -ms-linear-gradient(top left, #2ba5dc 0%, #003ea0 100%);
background: linear-gradient(to bottom right, #2ba5dc 0%, #003ea0 100%);
z-index: -1;
}

.virtual h2 {
margin: 0 0 8vw;
color: #fff;
font-size: 8vw;
font-weight: 100;
line-height: 1;
text-align: center;
}

.virtual .img {
position: static;
width: 100%;
margin: 0 auto 6vw;
text-align: center;
}

.virtual .img img {
width: 50vw;
}

.virtual .img span {
display: block;
margin: 2vw 0 0;
color: #fff;
font-size: 2.66vw;
line-height: 1.74;
}

.virtual .txtBox {
width: 100%;
padding: 0;
box-sizing: border-box;
}

.virtual .txtBox p {
color: #fff;
font-size: 3.73vw;
line-height: 1.6;
}

.virtual .txtBox p + p {
margin: 6vw 0 0;
}

.overview .upper {
padding: 8vw 0 12vw;
background: #fafafa;
}

.overview .upper h2 {
font-size: 8vw;
font-weight: 1;
text-align: center;
}

.overview .upper .lead {
width: 92vw;
max-width: inherit;
margin: 5vw auto 6vw;
padding: 0;
font-size: 3.73vw;
line-height: 1.6;
box-sizing: border-box;
}

.overview .upper .box {
position: relative;
}

.overview .upper .box .img {
position: static;
width: 50vw;
margin: 0 auto 6vw;
}

.overview .upper .box .txtBox {
position: relative;
width: 92vw;
max-width: inherit;
margin: 0 auto;
padding: 0;
box-sizing: border-box;
}

.overview .upper .box .txtBox p {
width: 100%;
margin: 0;
font-size: 3.73vw;
line-height: 1.6
}

.overview .upper .box .txtBox p + p {
margin: 6vw 0 0;
}

.overview .lower {
width: 92vw;
max-width: inherit;
margin: 0 auto;
padding: 12vw 0 8vw;
box-sizing: border-box;
}

.overview .lower ul {
display: flex;
justify-content: space-between;
}

.overview .lower ul li {
width: 30%;
text-align: center;
}

.overview .lower ul li .txt {
margin: 3.2vw 0 0;
font-size: 4vw;
}

.program {
padding: 12vw 0;
background: #0a3c8c;
}

.program .box {
position: relative;
display: block;
justify-content: space-between;
align-items: center;
width: 92vw;
max-width: inherit;
margin: 0 auto;
padding: 0 20px;
box-sizing: border-box;
}

.program .box02 {
flex-flow: row-reverse;
margin: 30vw auto 0;
}

.program .box02:after {
content: '';
position: absolute;
top: -25vw;
left: 0;
right: 0;
width: 20vw;
height: 20vw;
margin: 0 auto;
background: url("/en/glopac/assets/img/program/bg_program_01.png") no-repeat center;
background-size: contain;
}

.program .box .img {
width: 50vw;
margin: 0 auto;
}

.program .box02 .img {
width: 32vw;
}

.program .box .txtBox {
width: 100%;
color: #fff;
margin: 6vw 0 8vw;
}

.program .box02 .txtBox {
width: 100%;
margin: 6vw 0 0;
}

.program .box .txtBox h2 {
margin: 0 0 8vw;
font-size: 5.33vw;
line-height: 1.6;
}

.program .box02 .txtBox h2 {
margin: 0 0 5.33vw;
}

.program .box .txtBox p {
font-size: 3.73vw;
line-height: 1.6;
}

.step {
width: 92vw;
max-width: inherit;
margin: 0 auto;
padding: 12vw 0;
box-sizing: border-box;
}

.step h2 {
width: 100%;
margin: 0 0 12vw;
padding: 0 0 0 5.6vw;
font-size: 6.4vw;
text-align: left;
line-height: 1;
}

.step h2:before {
left: 0;
width: 0.67vw;
height: 12vw;
}

.step dl {
position: relative;
display: flex;
justify-content: space-between;
width: 92%;
max-width: inherit;
margin: 0 auto;
padding: 8vw 0 6.4vw;
border-top: 1px solid #111;
}

.step dl:last-child {
border-bottom: 1px solid #111;
}

.step dl + dl:before {
content: "";
position: absolute;
top: 0;
left: 50%;
margin-left: -2vw;
display: block;
width: 0px;
height: 0px;
border-style: solid;
border-width: 2vw 2vw 0 2vw;
border-color: #111 transparent transparent transparent;
}

.step dl dt {
width: 30%;
padding: 0 0 0 4vw;
font-size: 5.33vw;
font-weight: 100;
line-height: 1;
box-sizing: border-box;
}

.step dl dd {
width: 67.5%;
}

.step dl dd .ttl {
margin: 0 0 2.66vw;
font-size: 4.26vw;
font-weight: 700;
}

.step dl dd .txt {
min-height: inherit;
font-size: 3.73vw;
line-height: 1.6;
}

.intern {
position: relative;
margin: 0 0 12vw;
padding: 8vw 0 0;
}

.intern .img {
float: none;
position: absolute;
top: 24vw;
left: 0;
right: 0;
width: 50vw;
margin: 0 auto;
}

.intern .inner {
width: 100vw;
margin: 0 auto;
padding: 8vw 4vw 20vw;
background: #fafafa;
box-sizing: border-box;
}

.intern h2 {
position: relative;
max-width: inherit;
width: 92vw;
margin: 0 auto 64vw;
padding: 0 0 0 5.6vw;
font-size: 6.4vw;
font-weight: 100;
line-height: 1;
box-sizing: border-box;
}

.intern h2:before {
left: 0;
width: 0.67vw;
height: 12vw;
}

.intern .txt {
max-width: inherit;
margin: 0 auto;
padding: 0;
font-size: 3.73vw;
line-height: 1.6;
box-sizing: border-box;
}

.intern .bnr {
width: 92vw;
max-width: inherit;
margin: -12vw auto 0;
padding: 0;
box-sizing: border-box;
filter: drop-shadow(0 0 20px rgba(0,0,0,0.1));
}

.intern .bnr a {
display: block;
padding: 4.8vw 0 4.8vw 6.4vw;
color: #0a3c8c;
font-size: 4.8vw;
line-height: 1.12;
border: 1px solid #0a3c8c;
background: #fff url("/en/glopac/assets/img/program/bg_intern_01.jpg") no-repeat right center;
background-size: auto 100%;
}


}



