@charset "UTF-8";
* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}
abbr, address, article, aside, audio, b, blockquote, body, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    border: 0;
    outline: 0;
    background: 0 0
}
body {
    line-height: 1
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}
ol, ul {
    list-style: none
}
blockquote, q {
    quotes: none
}
blockquote:after, blockquote:before, q:after, q:before {
    content: "";
    content: none
}
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    text-decoration: none;
    background: 0 0
}
ins {
    color: #000;
    text-decoration: none;
    background-color: #ff9
}
mark {
    color: #000;
    font-weight: 700;
    font-style: italic;
    background-color: #ff9
}
del {
    text-decoration: line-through
}
abbr[title], dfn[title] {
    cursor: help;
    border-bottom: 1px dotted
}
table {
    border-spacing: 0;
    border-collapse: collapse
}
hr {
    display: block;
    height: 1px;
    margin: 1em 0;
    padding: 0;
    border: 0;
    border-top: 1px solid #ccc
}
input, select {
    vertical-align: middle
}
img {
    font-size: 0;
    line-height: 0;
    vertical-align: top;
    -webkit-backface-visibility: hidden
}
*, :after, :before {
    box-sizing: border-box;
    -ms-box-sizing: border-box
}
@media all and (-ms-high-contrast:none) {
    ::-ms-backdrop, main {
        display: block
    }
}
body, html {
    zoom: 1;
    width: 100%;
    height: 100%
}
body {
    -webkit-text-size-adjust: 100%
}
code, kbd, pre, samp, tt {
    font-family: monospace;
    line-height: 100%
}
section {
    position: relative
}
a {
    position: relative;
    text-decoration: none;
    cursor: pointer
}
table {
    width: 100%;
    font: 100%;
    font-size: inherit;
    border-collapse: collapse
}
li {
    position: relative;
    line-height: 1em
}
.abs {
    position: absolute
}
.hide {
    visibility: hidden
}
.show {
    visibility: visible
}
.bold {
    font-weight: 700
}
.semiBold {
    font-weight: 600
}
.left {
    float: left
}
.right {
    float: right
}
.nowrap {
    white-space: nowrap
}
.cs {
    pointer-events: none
}
.align-right {
    text-align: right
}
.align-center {
    text-align: center
}
#__bs_notify__ {
    display: none !important
}
.float {
    display: block
}
.float:after, .float:before {
    display: table;
    content: " "
}
.float:after {
    clear: both
}
.flex {
    display: block;
    display: -ms-flexbox;
    display: flex;
    -js-display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
.flex {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
.flex > * {
    -ms-flex-pack: start;
    justify-content: flex-start
}
.flex-dl {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
.trans {
    transition: all .25s ease
}
.table-cell {
    display: table
}
.table-cell .cell {
    display: table-cell
}
.disabled {
    cursor: default;
    pointer-events: none
}
.fit {
    width: 100%
}
.pcshow {
    display: block
}
.spshow {
    display: none
}
@media only screen and (max-width:767px) {
    .pcshow {
        display: none
    }
    .spshow {
        display: block
    }
    .sp100 {
        width: 100%
    }
}
.indent--list > * {
    margin-left: 1.05em;
    text-indent: -1.05em
}
.indent--left {
    margin-left: 1.08em;
    text-indent: -1.08em
}
@font-face {
    font-family: "Yu Gothic M";
    src: local("Yu Gothic Medium")
}
@font-face {
    font-family: "Yu Gothic M";
    font-weight: 700;
    src: local("Yu Gothic Bold")
}
body, html {
    position: relative;
    width: 100%
}
body {
    position: relative;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-overflow-scrolling: touch;
    -webkit-print-color-adjust: exact
}
@media only screen and (max-width:767px) {
    body, html {
        min-width: 100%
    }
    body {
        min-width: 100%
    }
}
body {
    color: #000;
    font-family: "Noto Serif JP", serif;
    font-weight: 400
}
body p {
    color: #000;
    font-family: "Noto Serif JP", serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 28px
}
body p span {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit
}
@media only screen and (max-width:767px) {
    body p {
        font-size: 13px;
        line-height: 1.8em
    }
}
.font--serif {
    font-family: "Noto Serif JP", serif
}
.color--white {
    color: #fff
}
.color--red {
    color: #df1614
}
.color--blue {
    color: #008ed2
}
.color--green {
    color: #8bbe1d
}
.color--pink {
    color: #e46a9c
}
.color--black {
    color: #000
}
.bg--white {
    background: #fff
}
.bg--red {
    background: #df1614
}
.bg--blue {
    background: #008ed2
}
.bg--green {
    background: #8bbe1d
}
.bg--pink {
    background: #e46a9c
}
.semibold {
    font-weight: 600
}
[class*=inner] {
    position: relative;
    margin: 0 auto
}
.inner700 {
    width: 700px
}
.inner800 {
    width: 800px
}
.inner840 {
    width: 840px
}
.inner880 {
    width: 880px
}
.inner910 {
    width: 910px
}
.inner920 {
    width: 920px
}
.inner940 {
    width: 940px
}
.inner980 {
    width: 980px
}
.inner1000 {
    width: 1000px
}
.inner1010 {
    width: 1010px
}
.inner1020 {
    width: 1020px
}
.inner1080 {
    width: 1080px
}
.inner1100 {
    width: 1100px
}
.inner1180 {
    width: 1180px
}
.inner1200 {
    width: 1200px
}
.inner1280 {
    width: 1280px
}
@media only screen and (max-width:767px) {
    [class*=inner] {
        width: auto;
        margin: auto
    }
}
body.site-top header {
    position: absolute;
    top: 0;
    left: 0;
    width: 330px;
    min-width: auto;
    height: 110px;
    background: 0 0;
    background: #1a6bb4
}
body.site-top header .upper a {
    display: block;
    height: 110px;
    padding: 40px 0 0 50px
}
body.site-top header .upper a img.logo {
    width: 241px;
    height: 31px
}
body.internship header .left {
    width: calc(100% - 360px) !important
}
body.internship header .right {
    width: 360px !important
}
body.internship header .right .entry-mypage.pcshow {
    width: 360px !important
}
body.internship header .right .entry-mypage.pcshow ol {
    background: #1a6bb4 !important
}
body.internship header .right .entry-mypage.pcshow ol > li {
    width: 50%;
    background: 0 0 !important
}
@media only screen and (max-width:767px) {
    body.site-top header {
        width: 150px;
        height: 55px;
        padding: 0 0 0 15px
    }
    body.site-top header .upper a {
        height: 55px;
        padding: 20px 0 0
    }
    body.site-top header .upper a img.logo {
        width: 120px;
        height: 15px
    }
    body.internship header {
        height: 55px !important
    }
    body.internship header .left {
        width: 100% !important
    }
    body.internship header .left .col:nth-of-type(1) {
        padding: 0 0 0 15px
    }
    body.internship header .right {
        display: none !important;
        width: 55px !important;
        height: 55px
    }
    body.internship header .entry-mypage.spshow ol {
        position: relative;
        background: #000 !important;
        -ms-flex-pack: center !important;
        justify-content: center !important
    }
    body.internship header .entry-mypage.spshow ol > li {
        width: 90px;
        background: 0 0
    }
    body.internship header .entry-mypage.spshow ol > li:first-of-type:before {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        display: block !important;
        width: 1px;
        height: 35px;
        margin: auto;
        content: "";
        background: #90b2ca
    }
    body.internship header .entry-mypage.spshow ol > li:last-of-type {
        background: 0 0
    }
    body.internship header .entry-mypage.spshow ol > li:last-of-type:before {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        display: block !important;
        width: 1px;
        height: 35px;
        margin: auto;
        content: "";
        background: #90b2ca
    }
    body.internship header .entry-mypage.spshow ol > li:last-of-type:after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        display: block !important;
        width: 1px;
        height: 35px;
        margin: auto;
        content: "";
        background: #90b2ca
    }
}
header {
    position: fixed;
    z-index: 777;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 1280px;
    height: 110px;
    padding: 0;
    background: #1a6bb4
}
header .left .col {
    height: 110px
}
header .left .col:nth-of-type(1) {
    display: -ms-flexbox;
    display: flex;
    width: 370px;
    padding: 0 0 0 50px;
    background: #1a6bb4;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
header .left .col:nth-of-type(1) img.logo {
    width: 241px;
    height: 31px
}
header .left .col:nth-of-type(2) {
    display: -ms-flexbox;
    display: flex;
    width: calc(100% - 370px);
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
header .left .col:nth-of-type(2) .shoulder {
    margin-bottom: -5px;
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px)
}
header .left .col:nth-of-type(2) .shoulder .en p {
    color: #fff;
    font-family: "EB Garamond", serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.2em;
    letter-spacing: .2em
}
header .left .col:nth-of-type(2) .shoulder .jp {
    margin: 5px 0 0
}
header .left .col:nth-of-type(2) .shoulder .jp p {
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: .2em
}
header .right {
    background: #fff
}
header .right #menu-btn-area {
    width: 110px
}
header .right #menu-btn-area a {
    display: block;
    width: 110px;
    height: 110px;
    background: #000
}
header .right #menu-btn-area a span, header .right #menu-btn-area a:after, header .right #menu-btn-area a:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 37px;
    height: 2px;
    margin: auto;
    content: "";
    background: #fff
}
header .right #menu-btn-area a:before {
    top: -30px
}
header .right #menu-btn-area a:after {
    top: 30px
}
@media screen and (min-width:768px) {
    header .right #menu-btn-area a {
        transition: all .15s cubic-bezier(.39, .575, .565, 1)
    }
    header .right #menu-btn-area a:hover {
        background: #1a6bb4
    }
}
header .entry-mypage.pcshow ol {
    display: -ms-flexbox;
    display: flex;
    align-items: flex-start;
    -ms-flex-align: start;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
header .entry-mypage.pcshow ol > li {
    width: 140px;
    border-left: 1px solid #90b2ca;
    background: #1a6bb4
}
header .entry-mypage.pcshow ol > li a {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 110px;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
header .entry-mypage.pcshow ol > li a.bg--gradation {
    background: linear-gradient(90deg, #2d3192 0, #006cb7 100%)
}
header .entry-mypage.pcshow ol > li a p {
    position: relative;
    z-index: 1;
    color: #fff;
    font-family: "EB Garamond", serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    text-align: center;
    letter-spacing: .025em
}
header .entry-mypage.pcshow ol > li a.cs {
    opacity: 1
}
header .entry-mypage.pcshow ol > li a.cs p {
    opacity: .3
}
@media screen and (min-width:768px) {
    header .entry-mypage.pcshow ol > li a {
        transition: all .15s cubic-bezier(.39, .575, .565, 1)
    }
    header .entry-mypage.pcshow ol > li a:hover {
        background: rgba(0, 0, 0, .5)
    }
}
@media only screen and (max-width:767px) {
    header {
        min-width: 100%;
        height: 110px
    }
    header .left {
        width: calc(100% - 55px)
    }
    header .left .col {
        height: 55px
    }
    header .left .col:nth-of-type(1) {
        width: calc(100% - 170px);
        padding: 0 0 0 15px
    }
    header .left .col:nth-of-type(1) img.logo {
        width: 120px;
        height: 15px
    }
    header .left .col:nth-of-type(2) {
        width: 170px
    }
    header .left .col:nth-of-type(2) .shoulder {
        padding: 0 15px 0 15px
    }
    header .left .col:nth-of-type(2) .shoulder .en p {
        color: #fff;
        font-family: "EB Garamond", serif;
        font-size: 11px;
        font-weight: 400;
        line-height: 1.6em;
        letter-spacing: .2em
    }
    header .left .col:nth-of-type(2) .shoulder .jp {
        margin: 2px 0 0
    }
    header .left .col:nth-of-type(2) .shoulder .jp p {
        color: #fff;
        font-size: 10px;
        font-weight: 500;
        line-height: 1em;
        letter-spacing: .2em
    }
    header .left .col:nth-of-type(2) .shoulder2 {
        padding: 0 40px
    }
    header .left .col:nth-of-type(2) .shoulder2 .en p {
        color: #fff;
        font-family: "EB Garamond", serif;
        font-size: 11px;
        font-weight: 400;
        line-height: 1.6em;
        letter-spacing: .2em
    }
    header .left .col:nth-of-type(2) .shoulder2 .jp {
        margin: 2px 0 0
    }
    header .left .col:nth-of-type(2) .shoulder2 .jp p {
        color: #fff;
        font-size: 10px;
        font-weight: 500;
        line-height: 1em;
        letter-spacing: .2em
    }
    header .right {
        width: 55px
    }
    header .right #menu-btn-area a {
        width: 55px;
        height: 55px;
        background: #fff
    }
    header .right #menu-btn-area a span, header .right #menu-btn-area a:after, header .right #menu-btn-area a:before {
        width: 16px;
        height: 2px;
        background: #1a6bb4
    }
    header .right #menu-btn-area a:before {
        top: -12px
    }
    header .right #menu-btn-area a:after {
        top: 12px
    }
    header .entry-mypage.spshow {
        background: #fff
    }
    header .entry-mypage.spshow ol {
        position: relative;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        background: linear-gradient(90deg, #2d3192 0, #006cb7 100%);
        align-items: flex-start;
        -ms-flex-align: start;
        -ms-flex-pack: start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: flex-start
    }
    header .entry-mypage.spshow ol > li {
        position: relative;
        width: 25%;
        background: #000
    }
    header .entry-mypage.spshow ol > li:nth-of-type(n+2):before {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        width: 1px;
        height: 35px;
        margin: auto;
        content: "";
        background: #90b2ca
    }
    header .entry-mypage.spshow ol > li a {
        display: block;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        height: 55px;
        align-items: center;
        -ms-flex-align: center;
        -ms-flex-pack: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: center
    }
    header .entry-mypage.spshow ol > li a.bg--gradation {
        border-left: 1px solid #90b2ca;
        background: linear-gradient(90deg, #2d3192 0, #006cb7 100%)
    }
    header .entry-mypage.spshow ol > li a.bg--gradation:before {
        display: none !important
    }
    header .entry-mypage.spshow ol > li a p {
        color: #fff;
        font-family: "EB Garamond", serif;
        font-size: 11px;
        font-weight: 500;
        line-height: 14px;
        text-align: center;
        letter-spacing: .01em
    }
    header .entry-mypage.spshow ol > li a.cs {
        opacity: .5
    }
}
#pc-menus {
    position: fixed;
    z-index: 111;
    top: 110px;
    left: 0;
    width: 100%;
    background: #000
}
#pc-menus ul {
    width: 1082px;
    margin: auto;
    border-right: 1px solid #fff
}
#pc-menus ul li {
    width: 25%;
    border-left: 1px solid #fff
}
#pc-menus ul li a {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 50px;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
#pc-menus ul li a p {
    color: #fff;
    font-family: "EB Garamond", serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .15em
}
#submenu {
    position: fixed;
    z-index: 100;
    top: 160px;
    left: 0;
    width: 100%
}
#submenu #sub-menus {
    display: -ms-flexbox;
    display: flex;
    align-items: flex-start;
    -ms-flex-align: start;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
#submenu #sub-menus .submenu {
    display: none;
    width: 272px;
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
    background: #000
}
#submenu #sub-menus .submenu ul {
    border-top: 1px solid #fff
}
#submenu #sub-menus .submenu li {
    border-bottom: 1px solid #fff
}
#submenu #sub-menus .submenu li a {
    display: block;
    height: 40px;
    padding: 12px 15px 0 15px
}
#submenu #sub-menus .submenu li a p {
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: 0
}
@media screen and (min-width:768px) {
    #submenu #sub-menus .submenu li a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    #submenu #sub-menus .submenu li a:hover {
        background: #1a6bb4
    }
}
#menu {
    position: fixed;
    z-index: 777;
    top: 110px;
    left: 0;
    display: none;
    width: 100%;
    height: calc(100% - 110px);
    opacity: 0
}
@media only screen and (max-width:767px) {
    #menu.open {
        display: block;
        opacity: 0
    }
    #menu #menu-overlay {
        position: absolute;
        z-index: 777;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #fff
    }
    #menu #menu-btn--close {
        position: fixed;
        z-index: 999;
        top: 0;
        right: 0;
        width: 55px;
        height: 55px;
        background: #fff
    }
    #menu #menu-btn--close:after, #menu #menu-btn--close:before {
        position: absolute;
        z-index: 2;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        width: 20px;
        height: 2px;
        margin: auto;
        content: "";
        background: #000
    }
    #menu #menu-btn--close:before {
        -webkit-transform: translate(0) rotate(45deg);
        transform: translate(0) rotate(45deg)
    }
    #menu #menu-btn--close:after {
        -webkit-transform: translate(0) rotate(-45deg);
        transform: translate(0) rotate(-45deg)
    }
    #menu #menu-list {
        position: relative;
        z-index: 888;
        display: block;
        overflow-y: scroll;
        height: 100%;
        padding: 40px 0 0
    }
    #menu #menu-list .inside {
        display: block;
        width: 100%;
        margin: auto;
        padding: 0 25px 50px
    }
    #menu #menu-list .col {
        width: 100%
    }
    #menu #menu-list .col:nth-of-type(n+2) {
        margin: 40px 0 0
    }
    #menu #menu-list .col .block:nth-of-type(2) {
        margin: 40px 0 0
    }
    #menu #menu-list .col .block .ttl {
        padding: 0 0 10px
    }
    #menu #menu-list .col .block .ttl p {
        font-family: "EB Garamond", serif;
        font-size: 25px;
        font-weight: 400;
        line-height: 1em;
        letter-spacing: .1em
    }
    #menu #menu-list .col .block .banners.type--single li {
        width: 100% !important
    }
    #menu #menu-list .col .block .banners ol > li {
        width: 48.41%
    }
    #menu #menu-list .col .block .banners ol > li:nth-of-type(2) {
        margin-left: 3.18%
    }
    #menu #menu-list .col .block .banners ol > li:nth-of-type(3) {
        width: 100%;
        margin-top: 3.18%
    }
    #menu #menu-list .col .block ul > li:nth-of-type(n+2) {
        margin: 5px 0 0
    }
    #menu #menu-list .col .block ul > li a.type--img {
        height: auto
    }
    #menu #menu-list .col .block ul > li a {
        display: block;
        display: -ms-flexbox;
        display: flex;
        height: 40px;
        background: #000;
        align-items: center;
        -ms-flex-align: center;
        -ms-flex-pack: start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: flex-start
    }
    #menu #menu-list .col .block ul > li a p {
        width: 100%;
        color: #fff;
        font-family: "Noto Serif JP", serif;
        font-size: 12px;
        font-weight: 600;
        line-height: 1em;
        text-align: center;
        letter-spacing: 0
    }
    #menu #menu-list .col .block ul > li a[class*=thumb] p {
        padding: 0 0 0 80px;
        text-align: left
    }
    #menu #menu-list .col .block ul > li a[class*=thumb] p span.no {
        color: #1a6bb4;
        font-family: "EB Garamond", serif;
        font-size: 20px;
        font-weight: 400;
        line-height: 1em;
        letter-spacing: 0
    }
    #menu #menu-list .col .block ul > li a[class*=thumb]:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 70px;
        height: 70px;
        content: "";
        background-size: 100% auto !important
    }
    #menu #menu-list .col .block ul > li a.cs {
        opacity: .2
    }
}
@media only screen and (max-width:767px) and (min-width:768px) {
    #menu #menu-list .col .block ul > li a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    #menu #menu-list .col .block ul > li a:hover {
        background: #003271
    }
}
@media only screen and (max-width:767px) {
    #menu #menu-list .col .block .thumb0201:before {
        background: url(../img/graduates/common/nav_p0201_sp.jpg) no-repeat 0 0
    }
    #menu #menu-list .col .block .thumb0202:before {
        background: url(../img/graduates/common/nav_p0202_sp.jpg) no-repeat 0 0
    }
    #menu #menu-list .col .block .thumb0203:before {
        background: url(../img/graduates/common/nav_p0203_sp.jpg) no-repeat 0 0
    }
    #menu #menu-list .col .block .thumb0204:before {
        background: url(../img/graduates/common/nav_p0204_sp.jpg) no-repeat 0 0
    }
    #menu #menu-list .col .block .thumb0205:before {
        background: url(../img/graduates/common/nav_p0205_sp.jpg) no-repeat 0 0
    }
    #menu #menu-list .col .block .thumb0206:before {
        background: url(../img/graduates/common/nav_p0206_sp.jpg) no-repeat 0 0
    }
    #menu #menu-list .col .block .thumb0331:before {
        background: url(../img/graduates/common/nav_p0231_sp.jpg) no-repeat 0 0
    }
    #menu #menu-list .col .block .thumb0332:before {
        background: url(../img/graduates/common/nav_p0232_sp.jpg) no-repeat 0 0
    }
    #menu #menu-list .col .banner {
        margin: 60px 0 0
    }
}
#bottom-nav {
    padding: 90px 0 0;
    background: #000
}
#bottom-nav ul {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important
}
#bottom-nav ul > li .nav-ttl {
    width: 100%
}
#bottom-nav ul > li .nav-ttl p {
    color: #fff;
    font-family: "EB Garamond", serif;
    font-size: 25px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: .05em
}
#bottom-nav ul > li ol {
    margin: 25px 0 0
}
#bottom-nav ul > li ol > li:nth-of-type(n+2) {
    margin: 15px 0 0
}
#bottom-nav ul > li ol > li a {
    display: inline-block
}
#bottom-nav ul > li ol > li a p {
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: .05em
}
@media screen and (min-width:768px) {
    #bottom-nav ul > li ol > li a:before {
        position: absolute;
        bottom: -5px;
        left: 0;
        width: 100%;
        height: 1px;
        opacity: 0;
        content: "";
        transition: all .2s cubic-bezier(.39, .575, .565, 1);
        background: #c4dfff
    }
    #bottom-nav ul > li ol > li a:hover:before {
        opacity: 1
    }
}
#bottom-nav .banner {
    margin: 70px 0 0;
    text-align: center
}
#bottom-nav .banner img {
    width: 600px
}
@media only screen and (max-width:767px) {
    #bottom-nav {
        padding: 50px 40px 0
    }
    #bottom-nav ul > li {
        width: 100%
    }
    #bottom-nav ul > li:nth-of-type(n+2) {
        margin: 60px 0 0
    }
    #bottom-nav ul > li .nav-ttl p {
        font-size: 23px;
        letter-spacing: .025em
    }
    #bottom-nav ul > li ol {
        margin: 20px 0 0
    }
    #bottom-nav ul > li ol > li:nth-of-type(n+2) {
        margin: 10px 0 0
    }
    #bottom-nav ul > li ol > li a p {
        font-size: 12px;
        letter-spacing: .025em
    }
    #bottom-nav .banner {
        margin: 40px 0 0
    }
    #bottom-nav .banner img {
        width: 100%
    }
}
footer {
    padding: 50px 0 60px;
    background: #000
}
footer .inside .copyright {
    color: #a2a2a2;
    font-size: 12px;
    font-weight: 600;
    line-height: 1em;
    text-align: center;
    letter-spacing: .025em
}
@media only screen and (max-width:767px) {
    footer {
        padding: 30px 0
    }
    footer .inside .copyright {
        font-size: 10px;
        line-height: 20px;
        letter-spacing: .02em
    }
}
#pagetop {
    position: fixed;
    z-index: 88;
    right: 0;
    bottom: 30px;
    overflow: hidden;
    width: 90px;
    height: 90px;
    padding: 0;
    opacity: 0;
    background: #1a6bb4
}
#pagetop:before {
    position: absolute;
    position: absolute;
    top: 10px;
    right: 0;
    bottom: 0;
    left: 0;
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: auto;
    content: "";
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-top: 1px solid #fff;
    border-right: 1px solid #fff
}
@media screen and (min-width:768px) {
    #pagetop:before {
        transition: all .1s cubic-bezier(.39, .575, .565, 1)
    }
    #pagetop:hover:before {
        top: 0
    }
}
@media only screen and (max-width:767px) {
    #pagetop {
        bottom: 70px;
        width: 40px;
        height: 40px
    }
    #pagetop:before {
        position: absolute;
        position: absolute;
        top: 5px;
        right: 0;
        bottom: 0;
        left: 0;
        display: inline-block;
        width: 8px;
        height: 8px;
        margin: auto;
        content: "";
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        border-top: 1px solid #fff;
        border-right: 1px solid #fff
    }
}
.modal-btn:focus {
    outline: 0
}
.modaal-window {
    display: none
}
.modaal-wrapper {
    z-index: 99999 !important
}
.modaal-overlay {
    z-index: 88888 !important
}
.modaal-content-container {
    padding: 0
}
.modaal-container {
    max-width: 1000px;
    background: 0 0 !important;
    box-shadow: none
}
.modal-body {
    position: relative
}
.modal-body .video {
    position: relative;
    width: 100%;
    height: auto;
    padding-bottom: 56.23%
}
.modal-body .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}
.modal-body .modal-inline--close {
    position: absolute;
    top: -50px;
    right: 0;
    width: 40px;
    height: 40px;
    cursor: pointer
}
.modal-body .modal-inline--close:after, .modal-body .modal-inline--close:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 30px;
    height: 2px;
    margin: auto;
    content: "";
    background: #fff
}
.modal-body .modal-inline--close:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}
.modal-body .modal-inline--close:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}
.modal-body.keyword {
    min-height: 540px;
    padding: 60px 90px 50px;
    border: 1px solid #1a6bb4;
    background: #fff
}
.modal-body.keyword .modal-inline--close {
    position: absolute;
    top: auto;
    right: 0;
    bottom: -90px;
    left: 0;
    width: 46px;
    height: 46px;
    margin: auto
}
.modal-body.keyword .modal-inline--close:after, .modal-body.keyword .modal-inline--close:before {
    width: 60px;
    height: 3px;
    background: #1a6bb4
}
.modal-body.keyword .txt-set {
    margin: 30px 0 0
}
.modal-body.keyword .txt-set p {
    font-size: 14px;
    line-height: 26px
}
.modal-body.keyword .txt-set .sttl {
    margin: 25px 0 15px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1em
}
.modal-body.correlation {
    max-width: 800px;
    margin: auto
}
.modal-body.correlation[data-color="01"] .inner .head {
    background: #0071bc
}
.modal-body.correlation[data-color="02"] .inner .head {
    background: #29abe2
}
.modal-body.correlation .inner {
    padding: 60px 70px 70px;
    background: #fff
}
.modal-body.correlation .inner .head {
    padding: 15px 0;
    text-align: center
}
.modal-body.correlation .inner .head p {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .15em
}
.modal-body.correlation .inner .profile {
    margin-top: 40px;
    text-align: center
}
.modal-body.correlation .inner .profile .name p {
    font-size: 30px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: .05em
}
.modal-body.correlation .inner .profile .shoulder {
    margin-top: 15px
}
.modal-body.correlation .inner .profile .shoulder p {
    font-size: 16px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: .05em
}
.modal-body.correlation .inner .profile .ph {
    width: 160px;
    margin: 30px auto 0
}
.modal-body.correlation .inner .txt {
    margin-top: 40px
}
.modal-body.correlation .inner .txt p {
    font-size: 14px;
    line-height: 28px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
.modal-body.correlation .modal-inline--close {
    position: absolute;
    top: auto;
    right: 0;
    bottom: -80px;
    left: 0;
    width: 60px;
    height: 60px;
    margin: auto
}
.modal-body.correlation .modal-inline--close:after, .modal-body.correlation .modal-inline--close:before {
    width: 50px
}
@media only screen and (max-width:767px) {
    .modal-body {
        padding: 5px
    }
    .modal-body .inside {
        padding: 30px 15px 20px
    }
    .modal-body .inside .ttl {
        margin: 0 0 10px;
        padding: 0 0 15px;
        font-size: 14px;
        line-height: 1.4em
    }
    .modal-body .inside .ttl:before {
        width: 30px
    }
    .modal-body .inside .ttl .small {
        font-size: 12px
    }
    .modal-body .inside .sttl {
        font-size: 16px;
        line-height: 1.4em
    }
    .modal-body .inside .sttl .small {
        font-size: 13px
    }
    .modal-body .inside .txt {
        margin: 20px 0 0;
        font-size: 12px;
        line-height: 1.6em
    }
    .modal-body .modal-inline--close {
        position: absolute;
        top: -40px;
        right: 0;
        width: 30px;
        height: 30px
    }
    .modal-body .modal-inline--close:after, .modal-body .modal-inline--close:before {
        width: 20px;
        height: 2px
    }
    .modal-body.keyword {
        min-height: auto;
        padding: 30px 20px 25px
    }
    .modal-body.keyword .modal-inline--close {
        position: absolute;
        top: auto;
        right: 0;
        bottom: -65px;
        left: 0;
        width: 45px;
        height: 45px;
        margin: auto
    }
    .modal-body.keyword .modal-inline--close:after, .modal-body.keyword .modal-inline--close:before {
        width: 60px;
        height: 3px;
        background: #1a6bb4
    }
    .modal-body.keyword .ttl {
        padding: 0 20px
    }
    .modal-body.keyword .txt-set {
        margin: 20px 0 0
    }
    .modal-body.keyword .txt-set p {
        font-size: 13px;
        line-height: 23px
    }
    .modal-body.keyword .txt-set .sttl {
        margin: 20px 0 10px;
        font-size: 15px;
        line-height: 1em
    }
    .modal-body.correlation {
        max-width: 100%
    }
    .modal-body.correlation .inner {
        padding: 30px 20px 35px
    }
    .modal-body.correlation .inner .head {
        padding: 15px 0
    }
    .modal-body.correlation .inner .head p {
        font-size: 13px;
        letter-spacing: .075em
    }
    .modal-body.correlation .inner .profile {
        margin-top: 20px
    }
    .modal-body.correlation .inner .profile .name p {
        font-size: 20px;
        letter-spacing: 0
    }
    .modal-body.correlation .inner .profile .shoulder {
        margin-top: 10px
    }
    .modal-body.correlation .inner .profile .shoulder p {
        font-size: 12px;
        line-height: 18px;
        letter-spacing: 0
    }
    .modal-body.correlation .inner .profile .ph {
        width: 110px;
        margin-top: 25px
    }
    .modal-body.correlation .inner .txt {
        margin-top: 30px
    }
    .modal-body.correlation .inner .txt p {
        font-size: 13px;
        line-height: 23px;
        letter-spacing: 0
    }
    .modal-body.correlation .modal-inline--close {
        bottom: -40px;
        width: 30px;
        height: 30px
    }
    .modal-body.correlation .modal-inline--close:after, .modal-body.correlation .modal-inline--close:before {
        width: 20px
    }
}
body.graduates.project .modaal-content-container {
    padding: 60px 0 0 !important
}
body.graduates.project .modaal-inner-wrapper {
    padding-top: 0 !important;
    padding-bottom: 120px !important
}
body.graduates.project .modal-body .inside {
    width: 800px;
    height: auto;
    margin: auto;
    padding: 60px 70px 70px;
    background: #fff
}
body.graduates.project .modal-body .inside .m-shoulder {
    text-align: center
}
body.graduates.project .modal-body .inside .m-shoulder .en {
    color: #00a0e9;
    font-family: "EB Garamond", serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.project .modal-body .inside .m-shoulder .no {
    color: #00a0e9;
    font-family: "EB Garamond", serif;
    font-size: 62px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.project .modal-body .inside .m-ttl {
    margin: 50px 0 0;
    text-align: center;
    border-top: 1px solid #bfbfbf
}
body.graduates.project .modal-body .inside .m-ttl p {
    position: relative;
    display: inline-block;
    padding: 25px 0 0;
    font-size: 20px;
    font-weight: 600;
    line-height: 30px;
    letter-spacing: .15em
}
body.graduates.project .modal-body .inside .m-ttl p:before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 5px;
    margin: auto;
    content: "";
    background: #00a0e9
}
body.graduates.project .modal-body .inside .m-img {
    margin: 30px 0 0
}
body.graduates.project .modal-body .inside .m-img .pic {
    text-align: center
}
body.graduates.project .modal-body .inside .m-img .pic img {
    height: 340px
}
body.graduates.project .modal-body .inside .m-img .pic img.size--large {
    height: 460px
}
body.graduates.project .modal-body .inside .m-img .caption {
    margin: 10px 0 0;
    font-size: 10px;
    line-height: 16px;
    text-align: right
}
body.graduates.project .modal-body .inside .m-img .caption.irregular {
    padding: 0 50px 0 0
}
body.graduates.project .modal-body .inside .m-img .align-right {
    margin: 10px 0 0
}
body.graduates.project .modal-body .inside .m-img .align-right p {
    font-size: 12px;
    line-height: 1em
}
body.graduates.project .modal-body .inside .m-txt {
    margin: 40px 0 0
}
body.graduates.project .modal-body .inside .m-txt p {
    font-size: 14px;
    line-height: 28px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.project .modal-body .inside .m-txt p.small {
    font-size: 12px
}
body.graduates.project .modal-body .inside .m-txt a {
    color: #1a6bb5;
    font-size: 14px;
    line-height: 28px;
    text-decoration: underline;
    letter-spacing: .05em
}
@media screen and (min-width:768px) {
    body.graduates.project .modal-body .inside .m-txt a:hover {
        text-decoration: none
    }
}
body.graduates.project .modal-body .modal-inline--close {
    position: absolute;
    top: auto;
    right: 0;
    bottom: -70px;
    left: 0;
    width: 46px;
    height: 46px;
    margin: auto
}
body.graduates.project .modal-body .modal-inline--close:after, body.graduates.project .modal-body .modal-inline--close:before {
    width: 60px;
    height: 3px;
    background: #fff
}
@media only screen and (max-width:767px) {
    body.graduates.project .modaal-content-container {
        padding: 30px 0 0 !important
    }
    body.graduates.project .modaal-inner-wrapper {
        padding-top: 0 !important;
        padding-bottom: 60px !important
    }
    body.graduates.project .modal-body .inside {
        width: 100% !important;
        padding: 30px 20px 40px
    }
    body.graduates.project .modal-body .inside .m-shoulder {
        text-align: center
    }
    body.graduates.project .modal-body .inside .m-shoulder .en {
        font-size: 12px;
        line-height: 1em
    }
    body.graduates.project .modal-body .inside .m-shoulder .no {
        font-size: 40px;
        line-height: 1em
    }
    body.graduates.project .modal-body .inside .m-ttl {
        margin: 25px 0 0
    }
    body.graduates.project .modal-body .inside .m-ttl p {
        padding: 20px 0 0;
        font-size: 15px;
        font-weight: 600;
        line-height: 20px;
        letter-spacing: .1em
    }
    body.graduates.project .modal-body .inside .m-ttl p:before {
        height: 4px
    }
    body.graduates.project .modal-body .inside .m-img .pic img {
        width: 100%;
        height: auto
    }
    body.graduates.project .modal-body .inside .m-img .pic img.size--large {
        height: auto
    }
    body.graduates.project .modal-body .inside .m-img .caption {
        margin: 10px 0 0;
        font-size: 9px;
        line-height: 12px
    }
    body.graduates.project .modal-body .inside .m-img .caption.irregular {
        padding: 0
    }
    body.graduates.project .modal-body .inside .m-txt {
        margin: 20px 0 0
    }
    body.graduates.project .modal-body .inside .m-txt p {
        font-size: 13px;
        line-height: 23px;
        letter-spacing: 0
    }
    body.graduates.project .modal-body .inside .m-txt p.small {
        font-size: 12px
    }
    body.graduates.project .modal-body .inside .m-txt a {
        font-size: 13px;
        line-height: 23px;
        letter-spacing: 0
    }
    body.graduates.project .modal-body .modal-inline--close {
        position: absolute;
        top: auto;
        right: 0;
        bottom: -40px;
        left: 0;
        width: 30px;
        height: 30px;
        margin: auto
    }
    body.graduates.project .modal-body .modal-inline--close:after, body.graduates.project .modal-body .modal-inline--close:before {
        width: 20px;
        height: 2px
    }
}
#wrapper {
    position: relative;
    width: 100%;
    min-width: 1280px;
    height: auto
}
@media only screen and (max-width:767px) {
    #wrapper {
        width: auto;
        min-width: 100%;
        height: auto
    }
}
body.internship #wrapper {
    padding: 110px 0 0
}
body.graduates.category-index #wrapper, body.graduates.child #wrapper, body.graduates.home #wrapper {
    padding: 160px 0 0
}
@media only screen and (max-width:767px) {
    body.graduates.category-index #wrapper, body.graduates.child #wrapper, body.graduates.home #wrapper, body.internship #wrapper {
        padding: 110px 0 0
    }
}
.cs {
    opacity: .3
}
body.graduates.category-index main #page-head, body.graduates.child main #page-head, body.internship main #page-head {
    width: 1100px;
    margin: auto;
    padding: 100px 0 130px;
    text-align: right
}
body.graduates.category-index main #page-head .h1, body.graduates.child main #page-head .h1, body.internship main #page-head .h1 {
    display: inline-block;
    width: 500px;
    text-align: left
}
body.graduates.category-index main #page-head .h1 .en, body.graduates.child main #page-head .h1 .en, body.internship main #page-head .h1 .en {
    display: block;
    width: 300px;
    height: 40px;
    margin-right: 0;
    margin-left: auto;
    color: #fff;
    font-family: "EB Garamond", serif;
    font-size: 22px;
    font-weight: 400;
    line-height: 38px;
    text-align: center;
    letter-spacing: .075em;
    background: #1a6bb4
}
body.graduates.category-index main #page-head .h1 h1, body.graduates.child main #page-head .h1 h1, body.internship main #page-head .h1 h1 {
    position: relative;
    display: block;
    padding: 30px 0 0;
    color: #000;
    font-size: 30px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: .15em
}
body.graduates.category-index main #page-head .h1 h1:before, body.graduates.child main #page-head .h1 h1:before, body.internship main #page-head .h1 h1:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    background: #1a6bb4
}
@media only screen and (max-width:767px) {
    body.graduates.category-index main #page-head, body.graduates.child main #page-head, body.internship main #page-head {
        width: 100%;
        padding: 60px 0
    }
    body.graduates.category-index main #page-head .h1, body.graduates.child main #page-head .h1, body.internship main #page-head .h1 {
        width: 280px
    }
    body.graduates.category-index main #page-head .h1 .en, body.graduates.child main #page-head .h1 .en, body.internship main #page-head .h1 .en {
        width: 190px;
        height: 30px;
        font-size: 15px;
        line-height: 28px;
        letter-spacing: .03em
    }
    body.graduates.category-index main #page-head .h1 h1, body.graduates.child main #page-head .h1 h1, body.internship main #page-head .h1 h1 {
        padding: 20px 0 0;
        font-size: 18px;
        letter-spacing: .075em
    }
}
body.graduates main #categorylinks {
    margin: 140px 0 0;
    padding: 50px 0 100px;
    background: #f4f4f4
}
body.graduates main #categorylinks h3 {
    font-size: 16px;
    font-weight: 600;
    line-height: 1em;
    text-align: center;
    letter-spacing: .18em
}
body.graduates main #categorylinks .type--basic ul {
    margin: 60px 0 0
}
body.graduates main #categorylinks .type--basic .col3.size--large a, body.graduates main #categorylinks .type--basic .col4.size--large a, body.graduates main #categorylinks .type--basic .col5.size--large a, body.graduates main #categorylinks .type--basic .col5s.size--large a, body.graduates main #categorylinks .type--basic .col6.size--large a {
    height: 60px
}
body.graduates main #categorylinks .type--basic .col3.size--large a p, body.graduates main #categorylinks .type--basic .col4.size--large a p, body.graduates main #categorylinks .type--basic .col5.size--large a p, body.graduates main #categorylinks .type--basic .col5s.size--large a p, body.graduates main #categorylinks .type--basic .col6.size--large a p {
    font-size: 12px;
    line-height: 20px
}
body.graduates main #categorylinks .type--basic .col3 a, body.graduates main #categorylinks .type--basic .col4 a, body.graduates main #categorylinks .type--basic .col5 a, body.graduates main #categorylinks .type--basic .col5s a, body.graduates main #categorylinks .type--basic .col6 a {
    display: block;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 40px;
    border: 1px solid #000;
    background: #000;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.graduates main #categorylinks .type--basic .col3 a p, body.graduates main #categorylinks .type--basic .col4 a p, body.graduates main #categorylinks .type--basic .col5 a p, body.graduates main #categorylinks .type--basic .col5s a p, body.graduates main #categorylinks .type--basic .col6 a p {
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: 1em;
    text-align: center;
    letter-spacing: .1em
}
body.graduates main #categorylinks .type--basic .col3 a.cs, body.graduates main #categorylinks .type--basic .col4 a.cs, body.graduates main #categorylinks .type--basic .col5 a.cs, body.graduates main #categorylinks .type--basic .col5s a.cs, body.graduates main #categorylinks .type--basic .col6 a.cs {
    opacity: .15
}
body.graduates main #categorylinks .type--basic .col3 a.act, body.graduates main #categorylinks .type--basic .col4 a.act, body.graduates main #categorylinks .type--basic .col5 a.act, body.graduates main #categorylinks .type--basic .col5s a.act, body.graduates main #categorylinks .type--basic .col6 a.act {
    border: 1px solid #b6b6b6;
    background: #fff
}
body.graduates main #categorylinks .type--basic .col3 a.act p, body.graduates main #categorylinks .type--basic .col4 a.act p, body.graduates main #categorylinks .type--basic .col5 a.act p, body.graduates main #categorylinks .type--basic .col5s a.act p, body.graduates main #categorylinks .type--basic .col6 a.act p {
    color: #000
}
@media screen and (min-width:768px) {
    body.graduates main #categorylinks .type--basic .col3 a, body.graduates main #categorylinks .type--basic .col4 a, body.graduates main #categorylinks .type--basic .col5 a, body.graduates main #categorylinks .type--basic .col5s a, body.graduates main #categorylinks .type--basic .col6 a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.graduates main #categorylinks .type--basic .col3 a p, body.graduates main #categorylinks .type--basic .col4 a p, body.graduates main #categorylinks .type--basic .col5 a p, body.graduates main #categorylinks .type--basic .col5s a p, body.graduates main #categorylinks .type--basic .col6 a p {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.graduates main #categorylinks .type--basic .col3 a:hover, body.graduates main #categorylinks .type--basic .col4 a:hover, body.graduates main #categorylinks .type--basic .col5 a:hover, body.graduates main #categorylinks .type--basic .col5s a:hover, body.graduates main #categorylinks .type--basic .col6 a:hover {
        border: 1px solid #b6b6b6;
        background: #fff
    }
    body.graduates main #categorylinks .type--basic .col3 a:hover p, body.graduates main #categorylinks .type--basic .col4 a:hover p, body.graduates main #categorylinks .type--basic .col5 a:hover p, body.graduates main #categorylinks .type--basic .col5s a:hover p, body.graduates main #categorylinks .type--basic .col6 a:hover p {
        color: #000
    }
}
body.graduates main #categorylinks .type--basic .col3 li {
    width: 32.533%;
    margin-left: 1.2%
}
body.graduates main #categorylinks .type--basic .col3 li:nth-of-type(3n+1) {
    margin-left: 0
}
body.graduates main #categorylinks .type--basic .col3 li:nth-of-type(n+5) {
    margin-top: 20px
}
body.graduates main #categorylinks .type--basic .col3 li a p {
    line-height: 20px
}
body.graduates main #categorylinks .type--basic .col4 li {
    width: 24.1%;
    margin-left: 1.2%
}
body.graduates main #categorylinks .type--basic .col4 li:nth-of-type(4n+1) {
    margin-left: 0
}
body.graduates main #categorylinks .type--basic .col4 li:nth-of-type(n+5) {
    margin-top: 20px
}
body.graduates main #categorylinks .type--basic .col4 li a p {
    line-height: 20px
}
body.graduates main #categorylinks .type--basic .col5s li {
    width: 19.2%
}
body.graduates main #categorylinks .type--basic .col5s li:nth-of-type(n+2) {
    margin-left: 1%
}
body.graduates main #categorylinks .type--basic .col5s li a {
    height: 60px
}
body.graduates main #categorylinks .type--basic .col5s li a p {
    line-height: 20px
}
body.graduates main #categorylinks .type--basic .col5 li {
    width: 19.2%
}
body.graduates main #categorylinks .type--basic .col5 li:nth-of-type(n+2) {
    margin-left: 1%
}
body.graduates main #categorylinks .type--basic .col5 li a {
    height: 60px
}
body.graduates main #categorylinks .type--basic .col5 li a p {
    line-height: 20px
}
body.graduates main #categorylinks .type--basic .col6 li {
    width: 15.9%
}
body.graduates main #categorylinks .type--basic .col6 li:nth-of-type(n+2) {
    margin-left: .92%
}
@media only screen and (max-width:767px) {
    body.graduates main #categorylinks {
        margin: 70px 0 0;
        padding: 35px 30px
    }
    body.graduates main #categorylinks h3 {
        font-size: 14px;
        line-height: 1em
    }
    body.graduates main #categorylinks .type--basic ul {
        margin: 35px 0 0
    }
    body.graduates main #categorylinks .type--basic .col3, body.graduates main #categorylinks .type--basic .col4, body.graduates main #categorylinks .type--basic .col5, body.graduates main #categorylinks .type--basic .col5s, body.graduates main #categorylinks .type--basic .col6 {
        margin: 35px auto 0
    }
    body.graduates main #categorylinks .type--basic .col3 li, body.graduates main #categorylinks .type--basic .col4 li, body.graduates main #categorylinks .type--basic .col5 li, body.graduates main #categorylinks .type--basic .col5s li, body.graduates main #categorylinks .type--basic .col6 li {
        width: 100%
    }
    body.graduates main #categorylinks .type--basic .col3 li:nth-of-type(n+2), body.graduates main #categorylinks .type--basic .col4 li:nth-of-type(n+2), body.graduates main #categorylinks .type--basic .col5 li:nth-of-type(n+2), body.graduates main #categorylinks .type--basic .col5s li:nth-of-type(n+2), body.graduates main #categorylinks .type--basic .col6 li:nth-of-type(n+2) {
        margin: 10px 0 0
    }
    body.graduates main #categorylinks .type--basic .col3 a p, body.graduates main #categorylinks .type--basic .col4 a p, body.graduates main #categorylinks .type--basic .col5 a p, body.graduates main #categorylinks .type--basic .col5s a p, body.graduates main #categorylinks .type--basic .col6 a p {
        font-size: 12px;
        line-height: 1em;
        letter-spacing: .05em
    }
    body.graduates main #categorylinks .type--basic .col3, body.graduates main #categorylinks .type--basic .col4, body.graduates main #categorylinks .type--basic .col5, body.graduates main #categorylinks .type--basic .col5s {
        width: 280px
    }
    body.graduates main #categorylinks .type--basic .col6 {
        width: 175px
    }
    body.graduates main #categorylinks .type--basic .col6.size--large {
        width: 240px
    }
    body.graduates main #categorylinks .type--basic .col6.size--large a {
        height: 40px
    }
}
@media screen and (min-width:768px) {
    .banner a {
        position: relative;
        display: inline-block
    }
    .banner a:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        content: "";
        transition: all .2s cubic-bezier(.39, .575, .565, 1);
        background: rgba(255, 255, 255, .2)
    }
    .banner a:hover:before {
        opacity: 1
    }
    .spbanner a {
        position: relative;
        display: inline-block
    }
    .spbanner a:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        content: "";
        transition: all .2s cubic-bezier(.39, .575, .565, 1);
        background: rgba(255, 255, 255, .2)
    }
    .banner a:hover:before {
        opacity: 1
    }
}
.accordion-body {
    display: none
}
body.site-top #wrapper {
    width: 100%;
    height: 100%
}
body.site-top main {
    position: relative;
    width: inherit;
    height: inherit
}
body.site-top main #mv {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 130px);
    background: #000
}
body.site-top main #mv #slides {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%
}
body.site-top main #mv #slides .slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    background-size: cover !important
}
body.site-top main #mv #slides .slide:nth-of-type(1) {
    background: url(../img/top/mv_01_pc.jpg) no-repeat center
}
body.site-top main #mv #slides .slide:nth-of-type(2) {
    background: url(../img/top/mv_02_pc.jpg) no-repeat center
}
body.site-top main #mv #slides .slide:nth-of-type(3) {
    background: url(../img/top/mv_03_pc.jpg) no-repeat center
}
body.site-top main #mv #slides .slide:nth-of-type(4) {
    background: url(../img/top/mv_04_pc.jpg) no-repeat center
}
body.site-top main #txt-body {
    position: absolute;
    z-index: 30;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 340px
}
body.site-top main #txt-body .upper {
    width: 100%;
    height: 210px;
    padding: 20px 0 0;
    background: rgba(255, 255, 255, .7)
}
body.site-top main #txt-body .upper .h1 {
    margin-bottom: -90px;
    -webkit-transform: translateY(-90px);
    transform: translateY(-90px)
}
body.site-top main #txt-body .upper .h1 h1 img {
    height: 106px
}
body.site-top main #txt-body .upper .menu {
    margin-top: 20px
}
body.site-top main #txt-body .upper .menu ul {
    border-top: 1px solid #9e9e9e;
    border-right: 1px solid #9e9e9e
}
body.site-top main #txt-body .upper .menu li {
    width: 14.28%;
    border-bottom: 1px solid #9e9e9e;
    border-left: 1px solid #9e9e9e
}
body.site-top main #txt-body .upper .menu li a {
    display: -ms-flexbox;
    display: flex;
    height: 80px;
    background: rgba(255, 255, 255, .5);
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.site-top main #txt-body .upper .menu li a p {
    color: #000;
    font-size: 13px;
    font-weight: 600;
    line-height: 18px;
    text-align: center;
    letter-spacing: 0
}
body.site-top main #txt-body .upper .menu li a p .small {
    font-size: 11px
}
body.site-top main #txt-body .upper .menu li a p .sup {
    font-size: 10px
}
@media screen and (min-width:768px) {
    body.site-top main #txt-body .upper .menu li a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.site-top main #txt-body .upper .menu li a p {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.site-top main #txt-body .upper .menu li a:hover {
        background: #1a6bb4
    }
    body.site-top main #txt-body .upper .menu li a:hover p {
        color: #fff
    }
}
body.site-top main #txt-body .upper .moreinfo {
    margin: 15px 0 0;
    text-align: right
}
body.site-top main #txt-body .upper .moreinfo .indent--list {
    display: inline-block
}
body.site-top main #txt-body .upper .moreinfo li p {
    color: #000;
    font-size: 10px;
    line-height: 1.8em;
    text-align: left;
    letter-spacing: .025em
}
body.site-top main #txt-body .middle {
    width: 100%;
    height: 140px;
    background: #000
}
body.site-top main #txt-body .middle h2 {
    width: 170px;
    height: 140px;
    padding: 55px 0 0;
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    line-height: 1em;
    text-align: center;
    letter-spacing: .25em;
    background: #1a6bb4
}
body.site-top main #txt-body .middle .scroll-area {
    display: block;
    overflow-y: scroll;
    width: calc(100% - 170px);
    height: 130px;
    padding: 25px 0 20px 35px
}
body.site-top main #txt-body .middle .scroll-area li:nth-of-type(n+2) {
    margin: 15px 0 0
}
body.site-top main #txt-body .middle .scroll-area li .date {
    color: #fff;
    font-family: "Noto Serif JP", serif;
    font-size: 13px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .025em
}
body.site-top main #txt-body .middle .scroll-area li .date a {
    color: #1a6bb4
}
body.site-top main #txt-body .middle .scroll-area li .txt {
    margin: 5px 0 0
}
body.site-top main #txt-body .middle .scroll-area li .txt p {
    color: #fff;
    font-family: "Noto Serif JP", serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 20px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .025em
}
body.site-top main #txt-body .middle .scroll-area li .txt a {
    color: #93c5f2;
    text-decoration: underline
}
@media screen and (min-width:768px) {
    body.site-top main #txt-body .middle .scroll-area li .txt a:hover {
        text-decoration: none
    }
}
body.site-top main #txt-body .banner {
    padding: 80px 0;
    text-align: center;
    background: #f2f5f6
}
body.site-top main #txt-body .lower {
    width: 100%;
    height: 50px;
    background: #000
}
body.site-top main #txt-body .lower .copyright {
    padding: 20px 0 0;
    text-align: center
}
body.site-top main #txt-body .lower .copyright p {
    color: #a2a2a2;
    font-family: "Noto Serif JP", serif;
    font-size: 10px;
    line-height: 1em;
    letter-spacing: .2em
}
@media only screen and (max-width:767px) {
    body.site-top #wrapper {
        height: auto;
        min-height: auto
    }
    body.site-top main {
        height: auto
    }
    body.site-top main #mv {
        position: relative;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        height: 500px;
        margin: auto
    }
    body.site-top main #mv #slides .slide:nth-of-type(1) {
        background: url(../img/top/mv_01_sp.jpg) no-repeat center
    }
    body.site-top main #mv #slides .slide:nth-of-type(2) {
        background: url(../img/top/mv_02_sp.jpg) no-repeat center
    }
    body.site-top main #mv #slides .slide:nth-of-type(3) {
        background: url(../img/top/mv_03_sp.jpg) no-repeat center
    }
    body.site-top main #mv #slides .slide:nth-of-type(4) {
        background: url(../img/top/mv_04_sp.jpg) no-repeat center
    }
    body.site-top main #txt-body {
        position: relative;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        height: auto;
        margin: auto
    }
    body.site-top main #txt-body .upper {
        width: 100%;
        height: auto;
        padding: 0 0 30px;
        background: #f2f5f6
    }
    body.site-top main #txt-body .upper .h1 {
        margin-bottom: -90px;
        padding-left: 30px;
        -webkit-transform: translateY(-90px);
        transform: translateY(-90px)
    }
    body.site-top main #txt-body .upper .h1 h1 img {
        height: 124px
    }
    body.site-top main #txt-body .upper .menu {
        margin-top: 30px;
        padding: 0 30px
    }
    body.site-top main #txt-body .upper .menu li {
        width: 100%
    }
    body.site-top main #txt-body .upper .menu li a {
        height: 60px
    }
    body.site-top main #txt-body .upper .menu li a p {
        font-size: 13px;
        line-height: 1em
    }
    body.site-top main #txt-body .upper .menu li a p .small {
        font-size: 12px
    }
    body.site-top main #txt-body .upper .menu li a p .sup {
        font-size: 10px
    }
    body.site-top main #txt-body .upper .moreinfo {
        margin: 40px 0 0;
        padding: 0 30px
    }
    body.site-top main #txt-body .upper .moreinfo .indent--list > * {
        margin-left: 1.2em !important;
        text-indent: -1.2em !important
    }
    body.site-top main #txt-body .upper .moreinfo li p {
        font-size: 10px;
        line-height: 15px;
        text-align: justify;
        text-justify: inter-ideograph;
        letter-spacing: 0
    }
    body.site-top main #txt-body .middle {
        height: auto;
        padding: 0 30px 30px
    }
    body.site-top main #txt-body .middle h2 {
        display: block;
        width: 100%;
        height: 50px;
        margin: auto;
        padding: 15px 0 0;
        font-size: 16px;
        line-height: 1em;
        letter-spacing: .125em
    }
    body.site-top main #txt-body .middle .scroll-area {
        width: 100%;
        height: 70px;
        margin: 25px 0 0;
        padding: 0 10px 0 0
    }
    body.site-top main #txt-body .middle .scroll-area li:nth-of-type(n+2) {
        margin: 15px 0 0
    }
    body.site-top main #txt-body .middle .scroll-area li .date {
        font-size: 13px;
        line-height: 1em
    }
    body.site-top main #txt-body .middle .scroll-area li .txt {
        margin: 5px 0 0
    }
    body.site-top main #txt-body .middle .scroll-area li .txt p {
        font-size: 13px;
        line-height: 21px;
        text-align: justify;
        text-justify: inter-ideograph
    }
    body.site-top main #txt-body .banner {
        padding: 30px 0
    }
    body.site-top main #txt-body .banner img {
        height: 80px
    }
    body.site-top main #txt-body .lower {
        height: 100%;
        padding: 20px 0
    }
    body.site-top main #txt-body .lower .copyright {
        padding: 0 0
    }
    body.site-top main #txt-body .lower .copyright p {
        font-size: 10px;
        line-height: 2em
    }
}
body.home main {
    overflow: hidden
}
body.home main #prologue {
    position: relative;
    width: 100%;
    height: auto;
    padding-bottom: 50.78%;
    background: linear-gradient(90deg, #2d3192 0, #006cb7 100%)
}
body.home main #prologue .video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}
body.home main #prologue .video #pc-video {
    position: absolute;
    top: 0;
    right: 0;
    width: 72.65%;
    height: 100%;
    background: #000
}
body.home main #prologue .video #pc-video video {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    min-width: 100%;
    height: 100%;
    min-height: 100%;
    opacity: 0
}
body.home main #prologue .video #pc-video video.in {
    opacity: 1;
    transition: all 1s cubic-bezier(.39, .575, .565, 1)
}
body.home main #prologue #h1 {
    position: relative;
    z-index: 15;
    display: -ms-flexbox;
    display: flex;
    width: 1080px;
    height: inherit;
    margin: auto;
    align-items: flex-end;
    -ms-flex-align: end;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.home main #prologue #h1 h1 {
    padding: 0 0 25px
}
body.home main #prologue #h1 h1 img {
    width: 373px
}
body.home main #prologue .btn {
    position: absolute;
    z-index: 16;
    right: 50px;
    bottom: 50px;
    width: 270px
}
body.home main #prologue .btn a {
    display: -ms-flexbox;
    display: flex;
    width: 270px;
    height: 54px;
    border-radius: 6px;
    background: #000;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.home main #prologue .btn a p {
    color: #fff;
    font-size: 18px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: .15em
}
body.home main #prologue .btn a:before {
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;
    width: 10px;
    height: 11px;
    margin: auto;
    content: "";
    background: linear-gradient(to bottom left, rgba(255, 255, 255, 0) 50%, #fff 50.5%) no-repeat top left/100% 50%, linear-gradient(to top left, rgba(255, 255, 255, 0) 50%, #fff 50.5%) no-repeat bottom right/100% 50%
}
@media screen and (min-width:768px) {
    body.home main #prologue .btn a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.home main #prologue .btn a:hover {
        background: #454545
    }
}
body.home main .ttl-set .h2 + .txt {
    margin-top: 40px
}
body.home main .ttl-set .txt p {
    font-size: 20px;
    font-weight: 600;
    line-height: 36px;
    letter-spacing: .05em
}
body.home main #top-about {
    padding: 80px 0 0;
    background: linear-gradient(90deg, #2d3192 0, #006cb7 100%)
}
body.home main #top-about .col--left {
    width: 680px
}
body.home main #top-about .col--left .txt p {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    line-height: 30px;
    letter-spacing: 0
}
body.home main #top-about .col--right {
    width: calc(100% - 680px)
}
body.home main #top-about .col--right ul {
    border-bottom: 1px solid #8da6c8
}
body.home main #top-about .col--right li {
    border-top: 1px solid #8da6c8
}
body.home main #top-about .col--right li:last-of-type a {
    background: #214d6b
}
body.home main #top-about .col--right li a {
    display: block;
    padding: 20px 15px
}
body.home main #top-about .col--right li a p {
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: .1em
}
body.home main #top-about .col--right li a:before {
    position: absolute;
    position: absolute;
    top: 0;
    right: 25px;
    bottom: 0;
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: auto;
    content: "";
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 1px solid #fff;
    border-right: 1px solid #fff
}
@media screen and (min-width:768px) {
    body.home main #top-about .col--right li a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.home main #top-about .col--right li a:hover {
        padding-left: 25px;
        background: #000
    }
}
body.home main #top-about .banner {
    position: relative;
    z-index: 1;
    width: 650px;
    margin: 20px auto 0;
    -webkit-transform: translateY(90px);
    transform: translateY(90px)
}
body.home main #top-about .banner a {
    display: block
}
body.home main #top-about .banner a:nth-of-type(n+2) {
    margin-top: 20px
}
body.home main #top-about .banner a.min3-keyword {
    display: -ms-flexbox;
    display: flex;
    width: 650px;
    height: 180px;
    text-align: center;
    border-radius: 20px;
    background: #00a0e9;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.home main #top-about .banner a.min3-keyword .inside .en p {
    color: #000;
    font-family: "EB Garamond", serif;
    font-size: 25px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: .1em
}
body.home main #top-about .banner a.min3-keyword .inside .ttl {
    margin-top: 15px
}
body.home main #top-about .banner a.min3-keyword .inside .ttl p {
    color: #fff;
    font-size: 40px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: 0
}
body.home main #top-about .banner a.min3-keyword .inside .sttl {
    margin-top: 15px
}
body.home main #top-about .banner a.min3-keyword .inside .sttl p {
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: 0
}
body.home main #top-about .banner a.min3-keyword:before {
    border-radius: 20px !important
}
body.home main #top-about .spbanner {
    position: relative;
    z-index: 1;
    width: 650px;
    margin: 20px auto 0;
    -webkit-transform: translateY(90px);
    transform: translateY(90px)
}
body.home main #top-about .spbanner a {
    display: -ms-flexbox;
    display: flex;
    width: 650px;
    height: 180px;
    text-align: center;
    border-radius: 20px;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.home main #top-about .spbanner a:before {
    border-radius: 20px !important
}
body.home main #top-about .spbanner img {
    width: 100%
}
body.home main #top-person-work {
    padding: 230px 0 200px;
    background: #f2f5f6
}
body.home main #top-person-work .h2 img {
    height: 66px
}
body.home main #top-person-work .link-person {
    margin-top: 80px
}
body.home main #top-person-work .link-person li {
    width: 46.29%
}
body.home main #top-person-work .link-person li:nth-of-type(even) {
    margin-left: 7.42%
}
body.home main #top-person-work .link-person li:nth-of-type(n+3) {
    margin-top: 60px
}
body.home main #top-person-work .link-person li a {
    display: block
}
body.home main #top-person-work .link-person li a:before {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    content: "";
    border: 5px solid #1a6bb4
}
body.home main #top-person-work .link-person li a .ph {
    position: relative;
    z-index: 1
}
body.home main #top-person-work .link-person li a.act:before {
    opacity: 1
}
@media screen and (min-width:768px) {
    body.home main #top-person-work .link-person li a:before {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.home main #top-person-work .link-person li a:hover:before {
        opacity: 1
    }
}
body.home main #top-person-work .link-oneday {
    position: relative;
    margin-top: 300px
}
body.home main #top-person-work .link-oneday:before {
    position: absolute;
    top: 0;
    right: 0;
    width: calc(50% - 540px);
    height: 100%;
    content: "";
    background: #1a6bb4
}
body.home main #top-person-work .link-oneday .inside {
    position: relative;
    width: 980px;
    margin: auto;
    padding: 0 0 130px 100px;
    -webkit-transform: translateX(50px);
    transform: translateX(50px);
    border-radius: 40px 0 0 40px;
    background: #1a6bb4
}
body.home main #top-person-work .link-oneday .banner--upper {
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px)
}
body.home main #top-person-work .link-oneday .banner--upper ul {
    -ms-flex-pack: center !important;
    justify-content: center !important
}
body.home main #top-person-work .link-oneday .banner--upper li {
    width: 46.66%;
    background: #000
}
body.home main #top-person-work .link-oneday .banner--upper li:nth-of-type(even) {
    margin-left: 6.68%
}
body.home main #top-person-work .link-oneday .banner--lower {
    margin-top: 40px
}
body.home main #top-person-work .link-oneday .banner--lower .h3 img {
    width: 62px
}
body.home main #top-person-work .link-oneday .banner--lower .col--left {
    width: 110px
}
body.home main #top-person-work .link-oneday .banner--lower .col--right {
    width: calc(100% - 110px)
}
body.home main #top-person-work .link-oneday .banner--lower li:nth-of-type(n+2) {
    margin-top: 30px
}
body.home main #top-career-environment {
    padding: 70px 0;
    background: linear-gradient(90deg, #00a0e9 0, #006cb8 100%)
}
body.home main #top-career-environment .h2 img {
    width: 62px
}
body.home main #top-career-environment .col--left {
    width: 120px
}
body.home main #top-career-environment .col--right {
    width: calc(100% - 120px);
    padding-top: 30px
}
body.home main #top-career-environment .btn-list-banner {
    margin: 80px 0 0
}
body.home main #top-career-environment .btn-list-banner li {
    width: 47.91%
}
body.home main #top-career-environment .btn-list-banner li:nth-of-type(even) {
    margin-left: 4.18%
}
body.home main #top-career-environment .btn-list-banner li a {
    display: block
}
@media screen and (min-width:768px) {
    body.home main #top-career-environment .btn-list-banner li a:before {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: calc(100% - 42px);
        opacity: 0;
        content: "";
        transition: all .2s cubic-bezier(.39, .575, .565, 1);
        background: rgba(255, 255, 255, .2)
    }
    body.home main #top-career-environment .btn-list-banner li a:hover:before {
        opacity: 1
    }
}
body.home main #top-career-environment .btn-list {
    margin: 80px 0 0
}
body.home main #top-career-environment .btn-list li {
    width: 47.91%
}
body.home main #top-career-environment .btn-list li:nth-of-type(even) {
    margin-left: 4.18%
}
body.home main #top-career-environment .btn-list li a {
    display: -ms-flexbox;
    display: flex;
    height: 60px;
    background: #000;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.home main #top-career-environment .btn-list li a p {
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: .05em
}
@media screen and (min-width:768px) {
    body.home main #top-career-environment .btn-list li a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.home main #top-career-environment .btn-list li a:hover {
        background: #1a6bb4
    }
}
body.home main #top-recruit {
    padding: 130px 0 200px;
    background: #fff
}
body.home main #top-recruit .h2 img {
    height: 65px
}
body.home main #top-recruit .btn-list {
    width: 750px;
    margin: 100px auto 0
}
body.home main #top-recruit .btn-list li {
    width: 46.66%
}
body.home main #top-recruit .btn-list li:nth-of-type(even) {
    margin-left: 6.68%
}
body.home main #top-recruit .btn-list li:nth-of-type(n+3) {
    margin-top: 20px
}
body.home main #top-recruit .btn-list li a {
    display: -ms-flexbox;
    display: flex;
    height: 60px;
    background: #000;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.home main #top-recruit .btn-list li a p {
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: .05em
}
@media screen and (min-width:768px) {
    body.home main #top-recruit .btn-list li a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.home main #top-recruit .btn-list li a:hover {
        background: #1a6bb4
    }
}
@media only screen and (max-width:767px) {
    body.home main #prologue {
        padding-bottom: 109.33%
    }
    body.home main #prologue .video #pc-video {
        width: 86.66%;
        height: auto;
        padding-bottom: 104%
    }
    body.home main #prologue .video #h1 {
        width: 100%;
        padding: 0 20px
    }
    body.home main #prologue .video #h1 h1 {
        padding: 0
    }
    body.home main #prologue .video #h1 h1 img {
        width: 187px
    }
    body.home main #prologue .video .btn {
        position: absolute;
        right: 20px;
        bottom: 0;
        width: 160px
    }
    body.home main #prologue .video .btn a {
        width: 160px;
        height: 40px
    }
    body.home main #prologue .video .btn a p {
        font-size: 11px;
        letter-spacing: .075em
    }
    body.home main #prologue .video .btn a:before {
        position: absolute;
        top: 0;
        right: 15px;
        bottom: 0;
        width: 6px;
        height: 7px;
        margin: auto
    }
    body.home main .ttl-set .h2 + .txt {
        margin-top: 25px
    }
    body.home main .ttl-set .txt p {
        font-size: 13px;
        line-height: 22px;
        letter-spacing: .025em
    }
    body.home main #top-about {
        padding: 60px 20px 0
    }
    body.home main #top-about .col--left {
        width: 100%
    }
    body.home main #top-about .col--left .txt p {
        font-size: 13px;
        line-height: 21px
    }
    body.home main #top-about .col--right {
        width: 100%;
        margin-top: 60px;
        padding: 0 20px
    }
    body.home main #top-about .col--right li a {
        padding: 15px 20px
    }
    body.home main #top-about .col--right li a p {
        font-size: 13px;
        letter-spacing: .05em
    }
    body.home main #top-about .col--right li a:before {
        position: absolute;
        position: absolute;
        top: 0;
        right: 20px;
        bottom: 0;
        display: inline-block;
        width: 8px;
        height: 8px;
        margin: auto;
        content: "";
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        border-top: 1px solid #fff;
        border-right: 1px solid #fff
    }
    body.home main #top-about .banner {
        width: 100%;
        margin: 10px auto 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px)
    }
    body.home main #top-about .banner a:nth-of-type(n+2) {
        margin-top: 10px
    }
    body.home main #top-about .banner a.min3-keyword {
        width: 100%;
        height: 100px;
        border-radius: 10px
    }
    body.home main #top-about .spbanner {
        width: 100%;
        margin: 10px auto 0;
        -webkit-transform: translateY(50px);
        transform: translateY(50px)
    }
    body.home main #top-about .spbanner a {
        width: 100%;
        height: 100px;
    }
    body.home main #top-about .banner a.min3-keyword .inside .en p {
        font-size: 12px;
        letter-spacing: .05em
    }
    body.home main #top-about .banner a.min3-keyword .inside .ttl {
        margin-top: 10px
    }
    body.home main #top-about .banner a.min3-keyword .inside .ttl p {
        font-size: 22px;
        line-height: 1em
    }
    body.home main #top-about .banner a.min3-keyword .inside .sttl {
        margin-top: 10px
    }
    body.home main #top-about .banner a.min3-keyword .inside .sttl p {
        font-size: 12px;
        line-height: 1em
    }
    body.home main #top-person-work {
        padding: 105px 0 100px
    }
    body.home main #top-person-work .ttl-set {
        padding: 0 20px
    }
    body.home main #top-person-work .h2 img {
        height: 35px
    }
    body.home main #top-person-work .link-person {
        margin-top: 40px;
        padding: 0 20px
    }
    body.home main #top-person-work .link-person li {
        width: 100%
    }
    body.home main #top-person-work .link-person li:nth-of-type(even) {
        margin-left: 0
    }
    body.home main #top-person-work .link-person li:nth-of-type(n+2) {
        margin-top: 20px
    }
    body.home main #top-person-work .link-oneday {
        margin-top: 100px;
        padding: 0 0 0 20px
    }
    body.home main #top-person-work .link-oneday:before {
        display: none
    }
    body.home main #top-person-work .link-oneday .inside {
        width: 100%;
        padding: 0 0 60px 20px;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        border-radius: 20px 0 0 20px
    }
    body.home main #top-person-work .link-oneday .banner--upper {
        margin-bottom: -45px;
        padding-right: 40px;
        -webkit-transform: translateY(-45px);
        transform: translateY(-45px)
    }
    body.home main #top-person-work .link-oneday .banner--upper li {
        width: 47.45%
    }
    body.home main #top-person-work .link-oneday .banner--upper li:nth-of-type(even) {
        margin-left: 5.1%
    }
    body.home main #top-person-work .link-oneday .banner--lower {
        margin-top: 60px
    }
    body.home main #top-person-work .link-oneday .banner--lower .h3 img {
        width: 26px
    }
    body.home main #top-person-work .link-oneday .banner--lower .col--left {
        width: 40px
    }
    body.home main #top-person-work .link-oneday .banner--lower .col--right {
        width: calc(100% - 40px)
    }
    body.home main #top-person-work .link-oneday .banner--lower li:nth-of-type(n+2) {
        margin-top: 15px
    }
    body.home main #top-career-environment {
        padding: 0 20px 50px
    }
    body.home main #top-career-environment .h2 img {
        width: auto;
        height: 123px
    }
    body.home main #top-career-environment .col--left {
        width: 100%;
        margin-bottom: -20px;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    body.home main #top-career-environment .col--right {
        width: 100%;
        padding-top: 20px
    }
    body.home main #top-career-environment .btn-list-banner {
        margin: 40px 0 0
    }
    body.home main #top-career-environment .btn-list-banner li {
        width: 100%
    }
    body.home main #top-career-environment .btn-list-banner li:nth-of-type(even) {
        margin-left: 0
    }
    body.home main #top-career-environment .btn-list-banner li:nth-of-type(n+2) {
        margin-top: 30px
    }
    body.home main #top-career-environment .btn-list {
        margin: 40px 0 0
    }
    body.home main #top-career-environment .btn-list li {
        width: 48.65%
    }
    body.home main #top-career-environment .btn-list li:nth-of-type(even) {
        margin-left: 2.7%
    }
    body.home main #top-career-environment .btn-list li:nth-of-type(n+3) {
        margin-top: 2.7%
    }
    body.home main #top-career-environment .btn-list li a {
        height: 35px
    }
    body.home main #top-career-environment .btn-list li a p {
        font-size: 13px;
        letter-spacing: .025em
    }
    body.home main #top-recruit {
        padding: 80px 20px
    }
    body.home main #top-recruit .h2 img {
        height: 33px
    }
    body.home main #top-recruit .btn-list {
        width: 100%;
        margin: 30px auto 0
    }
    body.home main #top-recruit .btn-list li {
        width: 48.65%
    }
    body.home main #top-recruit .btn-list li:nth-of-type(even) {
        margin-left: 2.7%
    }
    body.home main #top-recruit .btn-list li:nth-of-type(n+3) {
        margin-top: 2.7%
    }
    body.home main #top-recruit .btn-list li a {
        height: 35px
    }
    body.home main #top-recruit .btn-list li a p {
        font-size: 13px;
        letter-spacing: .025em
    }
}
body.graduates.about.min3 main {
    background: #cfe9fc
}
body.graduates.about.min3 main #prologue .h1 {
    padding-top: 100px;
    text-align: center
}
body.graduates.about.min3 main #prologue .h1 h1 {
    color: #1c6ab4;
    font-size: 32px;
    font-weight: 500;
    line-height: 1em;
    letter-spacing: .15em
}
body.graduates.about.min3 main #prologue .video {
    position: relative;
    width: 100%;
    margin-top: 100px;
    padding-bottom: 56.2%
}
body.graduates.about.min3 main #prologue .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 100%;
    height: 100%;
    min-height: 100%
}
body.graduates.about.min3 main #textbody {
    margin-top: 180px
}
body.graduates.about.min3 main #textbody ul {
    -ms-flex-pack: center !important;
    justify-content: center !important
}
body.graduates.about.min3 main #textbody ul > li {
    width: 48.18%;
    margin-left: 3.64%
}
body.graduates.about.min3 main #textbody ul > li:nth-of-type(n+3) {
    margin-top: 3.64%
}
body.graduates.about.min3 main #textbody ul > li.mg--none {
    margin-left: 0
}
body.graduates.about.min3 main #textbody ul > li.size--large {
    width: 100%;
    margin-left: 0
}
body.graduates.about.min3 main #textbody ul > li ol > li:nth-of-type(n+2) {
    margin-top: 7.28%
}
body.graduates.about.min3 main #categorylinks {
    background: #f1f5f6 !important
}
@media only screen and (max-width:767px) {
    body.graduates.about.min3 main #prologue {
        padding: 0 20px
    }
    body.graduates.about.min3 main #prologue .h1 {
        padding-top: 60px
    }
    body.graduates.about.min3 main #prologue .h1 h1 {
        font-size: 18px;
        letter-spacing: .075em
    }
    body.graduates.about.min3 main #prologue .video {
        margin-top: 60px
    }
    body.graduates.about.min3 main #textbody {
        margin-top: 120px;
        padding: 0 30px
    }
    body.graduates.about.min3 main #textbody ul > li {
        width: 100%;
        margin-left: 0
    }
    body.graduates.about.min3 main #textbody ul > li:nth-of-type(n+2) {
        margin-top: 20px
    }
    body.graduates.about.min3 main #textbody ul > li ol > li:nth-of-type(n+2) {
        margin-top: 20px
    }
}
body.graduates.about.project main .txt p {
    font-size: 16px;
    font-weight: 400;
    line-height: 32px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.about.project main #tabs {
    margin: 0 0 100px
}
body.graduates.about.project main #tabs .flex {
    -ms-flex-pack: center;
    justify-content: center
}
body.graduates.about.project main #tabs ul {
    position: relative
}
body.graduates.about.project main #tabs ul:before {
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    content: "";
    background: #bfbfbf
}
body.graduates.about.project main #tabs li {
    width: 280px
}
body.graduates.about.project main #tabs li:nth-of-type(n+2) {
    margin-left: 20px
}
body.graduates.about.project main #tabs li a {
    display: block;
    background: #fff
}
body.graduates.about.project main #tabs li a.act {
    pointer-events: none
}
@media screen and (min-width:768px) {
    body.graduates.about.project main #tabs li a[data-index="01"]:before {
        background: url(../img/graduates/about/project_tab_01_on_pc.png) no-repeat 0 0
    }
    body.graduates.about.project main #tabs li a[data-index="02"]:before {
        background: url(../img/graduates/about/project_tab_02_on_pc.png) no-repeat 0 0
    }
    body.graduates.about.project main #tabs li a:before {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        content: "";
        transition: all .2s cubic-bezier(.39, .575, .565, 1);
        background-size: 100% auto !important
    }
    body.graduates.about.project main #tabs li a:hover:before {
        opacity: 1
    }
}
body.graduates.about.project main #page-mv {
    margin-bottom: 100px
}
body.graduates.about.project main #page-mv:before {
    position: absolute;
    top: 0;
    right: 0;
    width: calc(50% - 500px);
    height: 100%;
    content: "";
    background: #1a6bb4
}
body.graduates.about.project main #page-mv [class*=inner] {
    background: #1a6bb4
}
body.graduates.about.project main #page-mv .col--left {
    width: 360px
}
body.graduates.about.project main #page-mv .col--right {
    display: -ms-flexbox;
    display: flex;
    width: calc(100% - 360px);
    padding-left: 60px;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.graduates.about.project main #page-mv .col--right .ttl-set .shoulder p {
    color: #fff;
    font-family: "EB Garamond", serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.about.project main #page-mv .col--right .ttl-set .ttl {
    margin-top: 20px
}
body.graduates.about.project main #page-mv .col--right .ttl-set .ttl p {
    color: #fff;
    font-size: 30px;
    font-weight: 600;
    line-height: 44px;
    letter-spacing: .05em
}
body.graduates.about.project main #page-mv .col--right .ttl-set .txt {
    margin-top: 25px
}
body.graduates.about.project main #page-mv .col--right .ttl-set .txt p {
    color: #fff;
    font-size: 14px;
    line-height: 28px;
    letter-spacing: .05em
}
@media only screen and (max-width:767px) {
    body.graduates.about.project main .txt p {
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 0
    }
    body.graduates.about.project main #tabs {
        margin: 0 0 50px
    }
    body.graduates.about.project main #tabs ul {
        padding: 0 40px
    }
    body.graduates.about.project main #tabs li {
        width: 48.27%
    }
    body.graduates.about.project main #tabs li:nth-of-type(n+2) {
        margin-left: 3.46%
    }
    body.graduates.about.project main #page-mv {
        margin-bottom: 50px
    }
    body.graduates.about.project main #page-mv:before {
        display: none
    }
    body.graduates.about.project main #page-mv .col--left {
        width: 100px
    }
    body.graduates.about.project main #page-mv .col--right {
        width: calc(100% - 100px);
        padding: 0 30px 0 20px
    }
    body.graduates.about.project main #page-mv .col--right .ttl-set .shoulder p {
        font-size: 12px;
        letter-spacing: .025em
    }
    body.graduates.about.project main #page-mv .col--right .ttl-set .ttl {
        margin-top: 10px
    }
    body.graduates.about.project main #page-mv .col--right .ttl-set .ttl p {
        font-size: 16px;
        line-height: 23px;
        letter-spacing: 0
    }
    body.graduates.about.project main #page-mv .col--right .ttl-set .txt {
        margin-top: 10px
    }
    body.graduates.about.project main #page-mv .col--right .ttl-set .txt p {
        font-size: 12px;
        line-height: 18px;
        letter-spacing: 0
    }
}
body.graduates.about.project.p01 main #page-middle {
    margin-top: 100px;
    padding: 50px 0;
    background: #dabd7a
}
body.graduates.about.project.p01 main #page-middle p {
    color: #fff
}
body.graduates.about.project.p01 main #page-middle .col--left {
    width: 470px;
    padding-top: 20px
}
body.graduates.about.project.p01 main #page-middle .col--left .ttl p {
    font-size: 30px;
    font-weight: 600;
    line-height: 44px;
    letter-spacing: .05em
}
body.graduates.about.project.p01 main #page-middle .col--left .txt {
    margin-top: 40px
}
body.graduates.about.project.p01 main #page-middle .col--right {
    width: calc(100% - 470px);
    padding-left: 60px
}
body.graduates.about.project.p01 main #page-bottom {
    margin-top: 100px
}
body.graduates.about.project.p01 main #page-bottom .txt-set {
    margin-top: 100px;
    padding: 0 150px
}
body.graduates.about.project.p01 main #page-bottom .txt-set .ttl p {
    color: #a18544;
    font-size: 30px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.about.project.p01 main #page-bottom .txt-set .txt {
    margin-top: 50px
}
body.graduates.about.project.p02 main #page-author .col--left, body.graduates.about.project.p02 main #page-author .col--right {
    width: 460px;
    padding-top: 30px;
    border-top: 1px solid #bfbfbf
}
body.graduates.about.project.p02 main #page-author .col--left .txt-set .shoulder p, body.graduates.about.project.p02 main #page-author .col--right .txt-set .shoulder p {
    font-size: 13px;
    line-height: 20px;
    letter-spacing: 0
}
body.graduates.about.project.p02 main #page-author .col--left .txt-set .name, body.graduates.about.project.p02 main #page-author .col--right .txt-set .name {
    margin-top: 15px
}
body.graduates.about.project.p02 main #page-author .col--left .txt-set .name p, body.graduates.about.project.p02 main #page-author .col--right .txt-set .name p {
    font-size: 28px;
    line-height: 1em;
    letter-spacing: 0
}
body.graduates.about.project.p02 main #page-author .col--left {
    padding-right: 40px;
    border-right: 1px solid #bfbfbf
}
body.graduates.about.project.p02 main #page-author .col--left .txt-set {
    padding-left: 20px
}
body.graduates.about.project.p02 main #page-author .col--right {
    margin-left: 80px;
    padding-left: 40px;
    border-left: 1px solid #bfbfbf
}
body.graduates.about.project.p02 main #page-author .col--right .profile {
    text-align: right;
    -ms-flex-pack: end;
    justify-content: flex-end
}
body.graduates.about.project.p02 main #page-author .col--right .txt-set {
    padding-right: 20px
}
body.graduates.about.project.p02 main #page-author .profile {
    display: -ms-flexbox;
    display: flex;
    align-items: flex-start;
    -ms-flex-align: start;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.graduates.about.project.p02 main #page-author .profile .ph {
    width: 160px
}
body.graduates.about.project.p02 main #page-author .profile .txt-set {
    width: calc(100% - 160px);
    padding-top: 20px
}
body.graduates.about.project.p02 main #page-author .txt {
    margin-top: 25px
}
body.graduates.about.project.p02 main #page-author .txt p {
    font-size: 14px;
    line-height: 26px;
    letter-spacing: .05em
}
body.graduates.about.project.p02 main #page-author .align-right {
    margin-top: 50px
}
body.graduates.about.project.p02 main #page-author .align-right p {
    font-size: 12px;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.about.project.p02 main #page-txtbody {
    margin-top: 120px
}
body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(n+2) {
    margin-top: 120px
}
body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(2), body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(4) {
    padding: 120px 0
}
body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(2) .h2 h2, body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(2) p, body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(4) .h2 h2, body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(4) p {
    color: #fff
}
body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(2) {
    background: #3fa9f5
}
body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(4) {
    background: #1a6bb4
}
body.graduates.about.project.p02 main #page-txtbody .h2 {
    margin-bottom: 70px
}
body.graduates.about.project.p02 main #page-txtbody .h2 h2 {
    color: #1a6bb4;
    font-size: 28px;
    font-weight: 600;
    line-height: 44px;
    letter-spacing: .05em
}
body.graduates.about.project.p02 main #page-txtbody .type--right .col--left {
    width: calc(100% - 380px);
    padding-right: 50px
}
body.graduates.about.project.p02 main #page-txtbody .type--right .col--right {
    width: 380px
}
body.graduates.about.project.p02 main #page-txtbody .type--left .col--left {
    width: 380px
}
body.graduates.about.project.p02 main #page-txtbody .type--left .col--right {
    width: calc(100% - 380px);
    padding-left: 50px
}
body.graduates.about.project.p02 main #page-txtbody .type--center {
    padding: 0 150px
}
body.graduates.about.project.p02 main #page-txtbody .txt-bottom {
    margin-top: 90px;
    padding: 0 150px
}
@media only screen and (max-width:767px) {
    body.graduates.about.project.p01 main #page-prologue {
        padding: 0 30px
    }
    body.graduates.about.project.p01 main #page-middle {
        margin-top: 60px;
        padding: 70px 30px
    }
    body.graduates.about.project.p01 main #page-middle .col--left {
        width: 100%;
        padding-top: 0
    }
    body.graduates.about.project.p01 main #page-middle .col--left .ttl p {
        font-size: 16px;
        line-height: 25px;
        letter-spacing: .025em
    }
    body.graduates.about.project.p01 main #page-middle .col--left .txt {
        margin-top: 25px
    }
    body.graduates.about.project.p01 main #page-middle .col--right {
        width: 100%;
        margin-top: 25px;
        padding-left: 0
    }
    body.graduates.about.project.p01 main #page-bottom {
        margin-top: 70px;
        padding: 0 30px
    }
    body.graduates.about.project.p01 main #page-bottom .txt-set {
        margin-top: 25px;
        padding: 0
    }
    body.graduates.about.project.p01 main #page-bottom .txt-set .ttl p {
        font-size: 16px;
        letter-spacing: .025em
    }
    body.graduates.about.project.p01 main #page-bottom .txt-set .txt {
        margin-top: 25px
    }
    body.graduates.about.project.p02 main #page-author {
        padding: 0 30px
    }
    body.graduates.about.project.p02 main #page-author .col--left, body.graduates.about.project.p02 main #page-author .col--right {
        width: 100%;
        padding-top: 15px
    }
    body.graduates.about.project.p02 main #page-author .col--left .txt-set .shoulder p, body.graduates.about.project.p02 main #page-author .col--right .txt-set .shoulder p {
        font-size: 10px;
        line-height: 14px
    }
    body.graduates.about.project.p02 main #page-author .col--left .txt-set .name, body.graduates.about.project.p02 main #page-author .col--right .txt-set .name {
        margin-top: 10px
    }
    body.graduates.about.project.p02 main #page-author .col--left .txt-set .name p, body.graduates.about.project.p02 main #page-author .col--right .txt-set .name p {
        font-size: 19px;
        line-height: 1em
    }
    body.graduates.about.project.p02 main #page-author .col--left {
        padding-right: 25px
    }
    body.graduates.about.project.p02 main #page-author .col--left .txt-set {
        padding-left: 15px
    }
    body.graduates.about.project.p02 main #page-author .col--right {
        margin: 40px 0 0;
        padding-left: 25px
    }
    body.graduates.about.project.p02 main #page-author .col--right .txt-set {
        padding-right: 15px
    }
    body.graduates.about.project.p02 main #page-author .profile .ph {
        width: 100px
    }
    body.graduates.about.project.p02 main #page-author .profile .txt-set {
        width: calc(100% - 100px);
        padding-top: 10px
    }
    body.graduates.about.project.p02 main #page-author .txt {
        margin-top: 15px
    }
    body.graduates.about.project.p02 main #page-author .txt p {
        font-size: 12px;
        line-height: 21px;
        letter-spacing: 0
    }
    body.graduates.about.project.p02 main #page-author .align-right {
        margin-top: 25px
    }
    body.graduates.about.project.p02 main #page-author .align-right p {
        font-size: 9px;
        letter-spacing: .025em
    }
    body.graduates.about.project.p02 main #page-txtbody {
        margin-top: 70px
    }
    body.graduates.about.project.p02 main #page-txtbody .block {
        padding: 0 30px
    }
    body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(n+2) {
        margin-top: 70px
    }
    body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(2), body.graduates.about.project.p02 main #page-txtbody .block:nth-of-type(4) {
        padding: 70px 30px
    }
    body.graduates.about.project.p02 main #page-txtbody .h2 {
        margin-bottom: 20px
    }
    body.graduates.about.project.p02 main #page-txtbody .h2 h2 {
        font-size: 16px;
        line-height: 25px;
        letter-spacing: .025em
    }
    body.graduates.about.project.p02 main #page-txtbody .type--right .col--left {
        width: 100%;
        padding: 0 0 25px
    }
    body.graduates.about.project.p02 main #page-txtbody .type--right .col--right {
        width: 100%
    }
    body.graduates.about.project.p02 main #page-txtbody .type--left .col--left {
        width: 100%
    }
    body.graduates.about.project.p02 main #page-txtbody .type--left .col--right {
        width: 100%;
        padding: 25px 0 0
    }
    body.graduates.about.project.p02 main #page-txtbody .type--center {
        padding: 0
    }
    body.graduates.about.project.p02 main #page-txtbody .txt-bottom {
        margin-top: 25px;
        padding: 0
    }
}
body.graduates.work.career main #prologue p {
    font-size: 16px;
    font-weight: 600;
    line-height: 32px;
    text-align: center
}
body.graduates.work.career main #prologue .h2 {
    margin: 100px 0 60px;
    text-align: center;
    border-top: 1px solid #bfbfbf
}
body.graduates.work.career main #prologue .h2 h2 {
    display: inline-block;
    padding: 30px 0 0;
    font-size: 20px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .2em;
    border-top: 4px solid #1a6bb4
}
body.graduates.work.career main #textbody {
    margin: 100px 0 0
}
body.graduates.work.career main #textbody .block:nth-of-type(n+2) {
    margin: 100px 0 0
}
body.graduates.work.career main #textbody .block .h3 {
    border-top: 1px solid #bfbfbf
}
body.graduates.work.career main #textbody .block .h3 h3 {
    display: -ms-flexbox;
    display: flex;
    width: 300px;
    height: 50px;
    margin: auto;
    border-right: 2px solid #1a6bb4;
    border-bottom: 1px solid #bfbfbf;
    border-left: 2px solid #1a6bb4;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.graduates.work.career main #textbody .block .h3 h3 span {
    font-size: 18px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .2em
}
body.graduates.work.career main #textbody .block .h3 + p {
    margin: 35px 0 0;
    font-size: 16px;
    font-weight: 600;
    line-height: 30px;
    text-align: center;
    letter-spacing: .1em
}
body.graduates.work.career main #textbody .block:nth-of-type(1) .flex {
    margin: 60px 0 0
}
body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col {
    width: 48.1%;
    padding: 0 50px 30px;
    border: 1px solid #1a6bb4
}
body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col:nth-of-type(2) {
    margin-left: 3.8%
}
body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .sttl {
    position: relative;
    padding: 45px 0 0;
    text-align: center
}
body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .sttl:before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    width: 1px;
    height: 40px;
    margin: auto;
    content: "";
    background: #1a6bb4
}
body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .sttl .no {
    color: #1a6bb4;
    font-size: 60px;
    font-weight: 600;
    line-height: 1em
}
body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .sttl .ja {
    margin: 15px 0 0;
    font-size: 18px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .txt {
    margin: 30px 0 0
}
body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .txt p {
    font-size: 14px;
    line-height: 26px;
    text-align: left;
    text-justify: auto;
    letter-spacing: .05em
}
body.graduates.work.career main #textbody .block:nth-of-type(1) .flex + p {
    margin: 40px 0 0;
    padding: 0 150px;
    font-size: 14px;
    line-height: 28px;
    letter-spacing: .05em
}
body.graduates.work.career main #textbody .block:nth-of-type(2) .pic {
    margin: 60px 0 0
}
@media only screen and (max-width:767px) {
    body.graduates.work.career main #prologue {
        padding: 0 30px
    }
    body.graduates.work.career main #prologue p {
        font-size: 14px;
        line-height: 28px
    }
    body.graduates.work.career main #prologue .h2 {
        margin: 60px 0 30px
    }
    body.graduates.work.career main #prologue .h2 h2 {
        padding: 20px 0 0;
        font-size: 15px;
        letter-spacing: .05em
    }
    body.graduates.work.career main #textbody {
        margin: 60px 0 0;
        padding: 0 30px
    }
    body.graduates.work.career main #textbody .block:nth-of-type(n+2) {
        margin: 50px 0 0
    }
    body.graduates.work.career main #textbody .block .h3 h3 {
        width: 200px;
        height: 40px
    }
    body.graduates.work.career main #textbody .block .h3 h3 span {
        font-size: 15px;
        letter-spacing: .1em
    }
    body.graduates.work.career main #textbody .block .h3 + p {
        margin: 25px 0 0;
        font-size: 14px;
        line-height: 28px;
        text-align: left;
        letter-spacing: 0
    }
    body.graduates.work.career main #textbody .block:nth-of-type(1) .flex {
        margin: 25px 0 0
    }
    body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col {
        width: 100%;
        padding: 0 15px 15px
    }
    body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col:nth-of-type(2) {
        margin: 20px 0 0
    }
    body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .sttl {
        padding: 30px 0 0
    }
    body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .sttl:before {
        height: 25px
    }
    body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .sttl .no {
        font-size: 40px;
        line-height: 1em
    }
    body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .sttl .ja {
        margin: 10px 0 0;
        font-size: 15px;
        letter-spacing: 0
    }
    body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .txt {
        margin: 15px 0 0
    }
    body.graduates.work.career main #textbody .block:nth-of-type(1) .flex .col .txt p {
        font-size: 13px;
        line-height: 22px;
        letter-spacing: 0
    }
    body.graduates.work.career main #textbody .block:nth-of-type(1) .flex + p {
        margin: 20px 0 0;
        padding: 0;
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 0
    }
    body.graduates.work.career main #textbody .block:nth-of-type(2) .pic {
        margin: 25px 0 0
    }
}
body.graduates.work.mid main #movie, body.graduates.work.third main #movie {
    width: 1000px;
    margin: 0 auto
}
body.graduates.work.mid main #movie .video, body.graduates.work.third main #movie .video {
    position: relative;
    width: 100%;
    height: auto;
    padding-bottom: 56.2%;
    background: #000
}
body.graduates.work.mid main #movie .video iframe, body.graduates.work.third main #movie .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}
@media only screen and (max-width:767px) {
    body.graduates.work.mid main #movie, body.graduates.work.third main #movie {
        width: 100%;
        padding: 0 20px
    }
}
body.graduates.work.welfare main .h2--center-green {
    border-top: 1px solid #bfbfbf
}
body.graduates.work.welfare main .h2--center-green h2 {
    position: relative;
    display: block;
    width: 400px;
    height: 60px;
    margin: auto;
    border-right: 2px solid #1a6bb4;
    border-bottom: 1px solid #bfbfbf;
    border-left: 2px solid #1a6bb4
}
body.graduates.work.welfare main .h2--center-green h2 span {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 18px;
    font-weight: 600;
    line-height: 58px;
    text-align: center;
    white-space: nowrap;
    letter-spacing: .2em;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}
body.graduates.work.welfare main .h2--center-green.size300 h2 {
    width: 300px
}
body.graduates.work.welfare main .h2--center-green.size440 h2 {
    width: 440px
}
body.graduates.work.welfare main .h2--center-green.size760 h2 {
    width: 760px
}
body.graduates.work.welfare main #prologue p {
    font-size: 18px;
    font-weight: 600;
    line-height: 32px;
    text-align: center
}
body.graduates.work.welfare main #prologue ul {
    margin: 60px 0 0;
    -ms-flex-pack: center;
    justify-content: center
}
body.graduates.work.welfare main #prologue li {
    width: 21%;
    border: 1px solid #d2d2d2
}
body.graduates.work.welfare main #prologue li:nth-of-type(n+2) {
    margin-left: 5.3%
}
body.graduates.work.welfare main #list {
    margin: 120px 0 0
}
body.graduates.work.welfare main #list .h2--center-green + h3 {
    margin: 30px 0 0;
    color: #1a6bb4;
    font-size: 16px;
    font-weight: 600;
    line-height: 30px;
    text-align: center;
    letter-spacing: .1em
}
body.graduates.work.welfare main #list .h2--center-green + h3 + p {
    margin: 40px 0 0
}
body.graduates.work.welfare main #list .h2--center-green + p {
    margin: 50px 0 0
}
body.graduates.work.welfare main #list p {
    font-size: 14px;
    line-height: 28px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.work.welfare main #list ul > li {
    width: 47.2%;
    margin-top: 100px
}
body.graduates.work.welfare main #list ul > li:nth-of-type(even) {
    margin-left: 5.6%
}
body.graduates.work.welfare main #list .pic {
    margin: 20px 0 0
}
body.graduates.work.welfare main #list .pic .sttl {
    margin: 0 0 20px
}
body.graduates.work.welfare main #list .pic .sttl p {
    font-size: 14px;
    font-weight: 700;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.work.welfare main #list .pic .caption {
    margin: 15px 0 0;
    text-align: right
}
body.graduates.work.welfare main #list .pic .caption p {
    display: inline-block;
    font-size: 12px;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.work.welfare main #list .upper .set:nth-of-type(n+2) {
    margin-top: 100px
}
body.graduates.work.welfare main #list .upper h3 + .align-center {
    margin-top: 10px
}
body.graduates.work.welfare main #list .upper h3 + .align-center p {
    display: inline-block;
    font-size: 12px;
    line-height: 24px;
    text-align: center;
    letter-spacing: .05em
}
body.graduates.work.welfare main #list .upper .h4 {
    margin: 0 0 20px
}
body.graduates.work.welfare main #list .upper .h4 h4 {
    position: relative;
    padding: 0 0 0 50px;
    font-size: 18px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.work.welfare main #list .upper .h4 h4:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 1px;
    margin: auto;
    content: "";
    background: #000
}
body.graduates.work.welfare main #list .upper .more-info {
    margin: 50px 0 0
}
body.graduates.work.welfare main #list .upper .more-info .indent {
    margin-left: 1em;
    text-indent: -1em
}
body.graduates.work.welfare main #list .upper .more-info .ph {
    margin: 50px 0 0;
    padding: 0 90px
}
body.graduates.work.welfare main #list .upper .more-info .ph + .line {
    margin: 30px 0 0
}
@media only screen and (max-width:767px) {
    body.graduates.work.welfare main .h2--center-green h2 {
        width: 230px;
        height: 40px
    }
    body.graduates.work.welfare main .h2--center-green h2 span {
        font-size: 15px;
        line-height: 20px;
        letter-spacing: .1em
    }
    body.graduates.work.welfare main .h2--center-green.size300 h2 {
        width: 200px
    }
    body.graduates.work.welfare main .h2--center-green.size440 h2 {
        width: 210px;
        height: 60px
    }
    body.graduates.work.welfare main .h2--center-green.size760 h2 {
        width: 320px;
        height: 60px
    }
    body.graduates.work.welfare main #prologue {
        padding: 0 30px
    }
    body.graduates.work.welfare main #prologue p {
        font-size: 14px;
        line-height: 28px;
        text-align: justify;
        text-justify: inter-ideograph
    }
    body.graduates.work.welfare main #prologue ul {
        margin: 35px 0 0;
        padding: 0 10px
    }
    body.graduates.work.welfare main #prologue li {
        width: 46.6%
    }
    body.graduates.work.welfare main #prologue li:nth-of-type(n+2) {
        margin-left: 0
    }
    body.graduates.work.welfare main #prologue li:nth-of-type(even) {
        margin-left: 6.8%
    }
    body.graduates.work.welfare main #prologue li:nth-of-type(n+3) {
        margin-top: 6.8%
    }
    body.graduates.work.welfare main #list {
        margin: 60px 0 0;
        padding: 0 30px
    }
    body.graduates.work.welfare main #list .h2--center-green + h3 {
        margin: 15px 0 0;
        font-size: 15px;
        line-height: 23px;
        letter-spacing: .05em
    }
    body.graduates.work.welfare main #list .h2--center-green + h3 + p {
        margin: 25px 0 0
    }
    body.graduates.work.welfare main #list .h2--center-green + p {
        margin: 30px 0 0
    }
    body.graduates.work.welfare main #list p {
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 0
    }
    body.graduates.work.welfare main #list ul > li {
        width: 100%;
        margin-top: 50px
    }
    body.graduates.work.welfare main #list ul > li:nth-of-type(even) {
        margin-left: 0
    }
    body.graduates.work.welfare main #list ul > li:nth-of-type(n+2) {
        margin: 50px 0 0
    }
    body.graduates.work.welfare main #list .pic {
        margin: 15px 0 0
    }
    body.graduates.work.welfare main #list .pic .sttl {
        margin: 0 0 15px
    }
    body.graduates.work.welfare main #list .pic .sttl p {
        font-size: 12px;
        line-height: 1em
    }
    body.graduates.work.welfare main #list .pic .caption {
        margin: 10px 0 0
    }
    body.graduates.work.welfare main #list .pic .caption p {
        font-size: 10px;
        line-height: 1em
    }
    body.graduates.work.welfare main #list .upper .set:nth-of-type(n+2) {
        margin-top: 60px
    }
    body.graduates.work.welfare main #list .upper ul > li {
        margin-top: 25px
    }
    body.graduates.work.welfare main #list .upper h3 + .align-center p {
        display: block;
        font-size: 11px;
        line-height: 19px;
        text-align: justify;
        text-justify: inter-ideograph;
        letter-spacing: 0
    }
    body.graduates.work.welfare main #list .upper .h4 {
        margin: 0 0 10px
    }
    body.graduates.work.welfare main #list .upper .h4 h4 {
        padding: 0 0 0 45px;
        font-size: 14px;
        line-height: 1em
    }
    body.graduates.work.welfare main #list .upper .h4 h4:before {
        width: 35px
    }
    body.graduates.work.welfare main #list .upper .more-info {
        margin: 25px 0 0
    }
    body.graduates.work.welfare main #list .upper .more-info .indent {
        margin-left: .9em;
        text-indent: -.9em
    }
    body.graduates.work.welfare main #list .upper .more-info .ph {
        margin: 25px 0 0;
        padding: 0
    }
    body.graduates.work.welfare main #list .upper .more-info .ph + .line {
        margin: 25px 0 0
    }
}
body.graduates.person main #categorylinks .type--cards ul {
    margin: 60px 0 0
}
body.graduates.person main #categorylinks .type--cards li {
    width: 46.29%
}
body.graduates.person main #categorylinks .type--cards li:nth-of-type(even) {
    margin-left: 7.42%
}
body.graduates.person main #categorylinks .type--cards li:nth-of-type(n+3) {
    margin-top: 60px
}
body.graduates.person main #categorylinks .type--cards li a {
    display: block
}
body.graduates.person main #categorylinks .type--cards li a:before {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    content: "";
    border: 5px solid #1a6bb4
}
body.graduates.person main #categorylinks .type--cards li a .ph {
    position: relative;
    z-index: 1
}
body.graduates.person main #categorylinks .type--cards li a.act:before {
    opacity: 1
}
@media screen and (min-width:768px) {
    body.graduates.person main #categorylinks .type--cards li a:before {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.graduates.person main #categorylinks .type--cards li a:hover:before {
        opacity: 1
    }
}
body.graduates.person.category-index main #categorylinks {
    margin: 0;
    padding: 80px 0 100px;
    background: 0 0
}
body.graduates.person.category-index main #categorylinks .h1 {
    text-align: center
}
body.graduates.person.category-index main #categorylinks .h1 h1 {
    position: relative;
    display: inline-block;
    padding: 0 0 60px;
    color: #1a6bb4;
    font-size: 46px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .1em
}
body.graduates.person.category-index main #categorylinks .h1 h1:before {
    position: absolute;
    right: 0;
    bottom: 12px;
    left: 0;
    width: 1px;
    height: 30px;
    margin: auto;
    content: "";
    background: #1a6bb4
}
body.graduates.person.category-index main #categorylinks .h1 p {
    color: #1a6bb4;
    font-size: 28px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .15em
}
body.graduates.person.category-index main #categorylinks ul {
    margin: 100px 0 0
}
@media only screen and (max-width:767px) {
    body.graduates.person main #categorylinks {
        padding: 30px 20px 60px
    }
    body.graduates.person main #categorylinks .type--cards ul {
        margin: 35px 0 0
    }
    body.graduates.person main #categorylinks .type--cards li {
        width: 100%
    }
    body.graduates.person main #categorylinks .type--cards li:nth-of-type(even) {
        margin-left: 0
    }
    body.graduates.person main #categorylinks .type--cards li:nth-of-type(n+2) {
        margin-top: 20px
    }
    body.graduates.person main #categorylinks .type--cards li a:before {
        border: 3px solid #1a6bb4
    }
    body.graduates.person.category-index main #categorylinks {
        padding: 60px 30px 50px
    }
    body.graduates.person.category-index main #categorylinks .h1 h1 {
        padding: 0 0 30px;
        font-size: 23px;
        letter-spacing: .05em
    }
    body.graduates.person.category-index main #categorylinks .h1 h1:before {
        position: absolute;
        right: 0;
        bottom: 6px;
        left: 0;
        height: 15px;
        margin: auto
    }
    body.graduates.person.category-index main #categorylinks .h1 p {
        font-size: 14px;
        letter-spacing: .075em
    }
    body.graduates.person.category-index main #categorylinks ul {
        margin: 60px 0 0
    }
}
body.graduates.person.person-child.person01 main #prologue .graph {
    top: 60px
}
body.graduates.person.person-child.person02 main #prologue .graph {
    top: 60px
}
body.graduates.person.person-child.person03 main #prologue .graph {
    top: 60px
}
body.graduates.person.person-child.person04 main #prologue .graph {
    top: 60px
}
body.graduates.person.person-child.person05 main #prologue .graph {
    top: 60px
}
body.graduates.person.person-child.person06 main #prologue .graph {
    top: 30px
}
body.graduates.person.person-child.person01 main #prologue .profile h2 img {
    height: 152px
}
body.graduates.person.person-child.person01 main #oneday .flow img {
    width: 698px
}
body.graduates.person.person-child.person02 main #oneday .flow img {
    width: 655px
}
body.graduates.person.person-child.person03 main #oneday .flow img {
    width: 598px
}
body.graduates.person.person-child.person04 main #oneday .flow img {
    width: 869px
}
body.graduates.person.person-child.person05 main #oneday .flow img {
    width: 685px
}
body.graduates.person.person-child.person06 main #oneday .flow img {
    width: 560px
}
body.graduates.person.person-child main #prologue {
    position: relative;
    min-height: 1145px;
    padding: 0 0 110px;
    background: linear-gradient(to right, #1e93d1, #1a6bb4)
}
body.graduates.person.person-child main #prologue:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 364px;
    content: "";
    background: #fff
}
body.graduates.person.person-child main #prologue .video {
    position: relative;
    width: 100%;
    height: auto;
    padding-bottom: 56.2%;
    background: #000
}
body.graduates.person.person-child main #prologue .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}
body.graduates.person.person-child main #prologue .caption {
    margin: 25px 0 0;
    text-align: center
}
body.graduates.person.person-child main #prologue .caption p {
    color: #fff;
    font-size: 14px;
    line-height: 1em;
    letter-spacing: .075em
}
body.graduates.person.person-child main #prologue .profile {
    position: relative;
    margin: 75px 0 0;
    padding: 0 30px
}
body.graduates.person.person-child main #prologue .profile h2 img {
    height: 98px
}
body.graduates.person.person-child main #prologue .profile .join {
    margin: 50px 0 0
}
body.graduates.person.person-child main #prologue .profile .join p {
    display: inline-block;
    padding: 0 0 10px;
    font-size: 26px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: 0;
    border-bottom: 5px solid #000
}
body.graduates.person.person-child main #prologue .profile .join p .no {
    padding: 0 5px;
    font-size: 50px;
    line-height: 1em
}
body.graduates.person.person-child main #prologue .profile .name {
    margin: 15px 0 0
}
body.graduates.person.person-child main #prologue .profile .name p {
    font-size: 24px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: 0
}
body.graduates.person.person-child main #prologue .profile .belongs {
    margin: 50px 0 0
}
body.graduates.person.person-child main #prologue .profile .belongs p {
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    line-height: 34px;
    letter-spacing: .05em
}
body.graduates.person.person-child main #prologue .profile .graph {
    position: absolute;
    right: 30px
}
body.graduates.person.person-child main #prologue .profile .graph.type--01 img {
    width: 381px
}
body.graduates.person.person-child main #prologue .profile .graph.type--02 img {
    width: 352px
}
body.graduates.person.person-child main #prologue .profile .graph.type--03 img {
    width: 340px
}
body.graduates.person.person-child main #careerpath {
    background: #323232
}
body.graduates.person.person-child main #careerpath .h2 {
    padding: 0 0 70px;
    text-align: center
}
body.graduates.person.person-child main #careerpath .h2 a {
    display: inline-block;
    width: 600px;
    height: 120px;
    padding: 45px 0 0;
    color: #1e93d1;
    font-size: 24px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .2em;
    border: 1px solid #737373;
    border-top: none
}
body.graduates.person.person-child main #careerpath .h2 a:after, body.graduates.person.person-child main #careerpath .h2 a:before {
    position: absolute;
    top: 0;
    right: 40px;
    bottom: 0;
    width: 40px;
    height: 4px;
    margin: auto;
    content: "";
    background: #1e93d1
}
body.graduates.person.person-child main #careerpath .h2 a:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}
body.graduates.person.person-child main #careerpath .h2 a.open:after {
    display: none
}
@media screen and (min-width:768px) {
    body.graduates.person.person-child main #careerpath .h2 a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.graduates.person.person-child main #careerpath .h2 a:hover {
        background: rgba(255, 255, 255, .1)
    }
}
body.graduates.person.person-child main #careerpath .accordion-body {
    padding: 0 0 100px
}
body.graduates.person.person-child main #careerpath .accordion-body ul {
    border-top: 1px dotted #989898
}
body.graduates.person.person-child main #careerpath .accordion-body li {
    padding: 20px 0;
    border-bottom: 1px dotted #989898
}
body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside {
    background: #00a0e9
}
body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .txt {
    padding-top: 2em
}
body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .tp-box {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    padding: 20px 50px 40px 150px;
    align-items: flex-start;
    -ms-flex-align: start;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .tp-box .tp-shoulder {
    width: 130px;
    height: 130px;
    padding-top: 40px;
    text-align: center;
    background: #1a6bb4
}
body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .tp-box .tp-shoulder p {
    color: #fff;
    font-family: "EB Garamond", serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 26px;
    letter-spacing: .05em
}
body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .tp-box .tp-txt {
    width: calc(100% - 130px);
    padding-left: 30px
}
body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .tp-box .tp-txt p {
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: 28px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.person.person-child main #careerpath .accordion-body li .inside {
    display: -ms-flexbox;
    display: flex;
    align-items: flex-start;
    -ms-flex-align: start;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.graduates.person.person-child main #careerpath .accordion-body li .inside .date {
    display: -ms-flexbox;
    display: flex;
    width: 120px;
    height: 40px;
    background: #000;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.graduates.person.person-child main #careerpath .accordion-body li .inside .date p {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.person.person-child main #careerpath .accordion-body li .inside .txt {
    width: calc(100% - 120px);
    padding: 10px 0 0 30px
}
body.graduates.person.person-child main #careerpath .accordion-body li .inside .txt p {
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.person.person-child main #careerpath .accordion-body li .inside .txt .wline {
    line-height: 1.5em
}
body.graduates.person.person-child main #careerpath .att-cap {
    padding: 20px 0 0 0
}
body.graduates.person.person-child main #careerpath .att-cap p {
    color: #fff;
    font-size: 12px;
    line-height: 1em;
    text-align: right
}
body.graduates.person.person-child main #view {
    margin: 140px 0 0
}
body.graduates.person.person-child main #view .block:nth-of-type(n+2) {
    margin: 140px 0 0
}
body.graduates.person.person-child main #view .block .type--right .col:nth-of-type(1) {
    width: 660px
}
body.graduates.person.person-child main #view .block .type--right .col:nth-of-type(2) {
    width: 400px;
    margin-left: 40px
}
body.graduates.person.person-child main #view .block .type--left .col:nth-of-type(1) {
    width: 400px
}
body.graduates.person.person-child main #view .block .type--left .col:nth-of-type(2) {
    width: 660px;
    margin-left: 40px
}
body.graduates.person.person-child main #view .block .type--center {
    padding: 0 150px
}
body.graduates.person.person-child main #view .block .box:nth-of-type(n+2) {
    margin: 100px 0 0
}
body.graduates.person.person-child main #view .block .h2 {
    width: 300px;
    margin: 0 0 30px;
    padding: 0 0 10px;
    text-align: right;
    border-bottom: 1px solid #1a6bb4
}
body.graduates.person.person-child main #view .block .h2 h2 {
    color: #1a6bb4;
    font-size: 20px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .2em
}
body.graduates.person.person-child main #view .block .h2.large410 {
    width: 410px
}
body.graduates.person.person-child main #view .block .h2.large500 {
    width: 500px
}
body.graduates.person.person-child main #view .block .txt {
    font-size: 16px;
    line-height: 34px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.person.person-child main #view .block .txt .small {
    font-size: 12px
}
body.graduates.person.person-child main #message {
    margin: 140px 0 0
}
body.graduates.person.person-child main #message .box {
    padding: 0 150px 55px;
    border: 1px dotted #1a6bb4
}
body.graduates.person.person-child main #message .box .h2 {
    text-align: center
}
body.graduates.person.person-child main #message .box .h2 h2 {
    display: inline-block;
    width: 400px;
    height: 60px;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    line-height: 58px;
    text-align: center;
    letter-spacing: .2em;
    background: #1a6bb4
}
body.graduates.person.person-child main #message .box .txt {
    margin: 50px 0 0;
    color: #1a6bb4;
    font-size: 16px;
    font-weight: 600;
    line-height: 34px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.person.person-child main #strength {
    margin: 140px 0 0
}
body.graduates.person.person-child main #strength .box {
    padding: 80px 150px 90px;
    border-radius: 20px;
    background: linear-gradient(90deg, #00a0e9 0, #006cb8 100%)
}
body.graduates.person.person-child main #strength .box .shoulder {
    text-align: center
}
body.graduates.person.person-child main #strength .box .shoulder > * {
    display: inline-block;
    vertical-align: middle
}
body.graduates.person.person-child main #strength .box .shoulder p {
    color: #fff;
    font-size: 24px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .05em
}
body.graduates.person.person-child main #strength .box .shoulder span {
    width: 190px;
    height: 40px;
    margin: 0 10px;
    border: 2px solid #fff
}
body.graduates.person.person-child main #strength .box .msg {
    display: -ms-flexbox;
    display: flex;
    width: 640px;
    min-height: 80px;
    margin: 30px auto 0;
    padding: 25px 0;
    text-align: center;
    background: #fff;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.graduates.person.person-child main #strength .box .msg p {
    font-size: 36px;
    font-weight: 500;
    line-height: 1.2em;
    letter-spacing: .05em
}
body.graduates.person.person-child main #strength .box .msg .small {
    font-size: 24px
}
body.graduates.person.person-child main #strength .box .txt {
    margin-top: 30px
}
body.graduates.person.person-child main #strength .box .txt p {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    line-height: 34px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.person.person-child main #oneday {
    margin: 140px 0 0
}
body.graduates.person.person-child main #oneday .h2 {
    text-align: center
}
body.graduates.person.person-child main #oneday .h2 h2 {
    display: inline-block;
    width: 400px;
    height: 60px;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    line-height: 58px;
    text-align: center;
    letter-spacing: .2em;
    background: #000
}
body.graduates.person.person-child main #oneday .flow {
    margin: 40px 0 0;
    text-align: center
}
@media only screen and (max-width:767px) {
    body.graduates.person.person-child.person01 main #prologue h2 img {
        height: 123px
    }
    body.graduates.person.person-child.person02 main #prologue h2 img {
        height: 123px
    }
    body.graduates.person.person-child.person03 main #prologue h2 img {
        height: 123px
    }
    body.graduates.person.person-child.person04 main #prologue h2 img {
        height: 123px
    }
    body.graduates.person.person-child.person05 main #prologue h2 img {
        height: 123px
    }
    body.graduates.person.person-child.person06 main #prologue h2 img {
        height: 123px
    }
    body.graduates.person.person-child.person01 main #prologue .profile h2 img {
        height: 123px
    }
    body.graduates.person.person-child.person01 main #oneday .flow img, body.graduates.person.person-child.person02 main #oneday .flow img, body.graduates.person.person-child.person03 main #oneday .flow img, body.graduates.person.person-child.person04 main #oneday .flow img, body.graduates.person.person-child.person05 main #oneday .flow img, body.graduates.person.person-child.person06 main #oneday .flow img {
        width: 100%
    }
    body.graduates.person.person-child main #prologue {
        min-height: auto;
        padding: 0 20px 40px
    }
    body.graduates.person.person-child main #prologue:before {
        height: 115px
    }
    body.graduates.person.person-child main #prologue .caption {
        margin: 15px 0 0
    }
    body.graduates.person.person-child main #prologue .caption p {
        font-size: 11px;
        letter-spacing: 0
    }
    body.graduates.person.person-child main #prologue .profile {
        margin: 40px 0 0;
        padding: 0 10px
    }
    body.graduates.person.person-child main #prologue .profile .join {
        margin: 25px 0 0
    }
    body.graduates.person.person-child main #prologue .profile .join p {
        padding: 0 0 8px;
        font-size: 17px;
        line-height: 1em;
        border-bottom: 4px solid #000
    }
    body.graduates.person.person-child main #prologue .profile .join p .no {
        font-size: 35px;
        line-height: 1em
    }
    body.graduates.person.person-child main #prologue .profile .name {
        margin: 10px 0 0
    }
    body.graduates.person.person-child main #prologue .profile .name p {
        font-size: 15px;
        line-height: 1em
    }
    body.graduates.person.person-child main #prologue .profile .belongs {
        margin: 25px 0 0
    }
    body.graduates.person.person-child main #prologue .profile .belongs p {
        font-size: 15px;
        line-height: 21px;
        text-align: justify;
        text-justify: inter-ideograph
    }
    body.graduates.person.person-child main #prologue .profile .graph {
        position: relative;
        top: auto !important;
        right: auto !important;
        margin: 25px 0 0;
        text-align: center
    }
    body.graduates.person.person-child main #prologue .profile .graph.type--01 img {
        width: 267px
    }
    body.graduates.person.person-child main #prologue .profile .graph.type--02 img {
        width: 247px
    }
    body.graduates.person.person-child main #careerpath {
        padding: 0 30px
    }
    body.graduates.person.person-child main #careerpath .h2 {
        padding: 0 0 30px
    }
    body.graduates.person.person-child main #careerpath .h2 a {
        width: 100%;
        height: 60px;
        padding: 20px 0 0;
        font-size: 16px;
        line-height: 1em
    }
    body.graduates.person.person-child main #careerpath .h2 a:after, body.graduates.person.person-child main #careerpath .h2 a:before {
        position: absolute;
        top: 0;
        right: 20px;
        bottom: 0;
        width: 20px;
        height: 2px;
        margin: auto
    }
    body.graduates.person.person-child main #careerpath .accordion-body {
        padding: 0 0 40px
    }
    body.graduates.person.person-child main #careerpath .accordion-body li {
        padding: 15px 0
    }
    body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .txt {
        padding: 10px 20px 0 15px
    }
    body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .tp-box {
        width: 100%;
        padding: 15px 20px 25px
    }
    body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .tp-box .tp-shoulder {
        width: 100%;
        height: 30px;
        padding-top: 7px
    }
    body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .tp-box .tp-shoulder p {
        font-size: 15px;
        line-height: 1em;
        letter-spacing: .025em
    }
    body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .tp-box .tp-txt {
        width: 100%;
        margin-top: 10px;
        padding-left: 0
    }
    body.graduates.person.person-child main #careerpath .accordion-body li.turning-point .inside .tp-box .tp-txt p {
        font-size: 13px;
        line-height: 21px;
        letter-spacing: 0
    }
    body.graduates.person.person-child main #careerpath .accordion-body li .inside .date {
        width: 80px;
        height: 30px
    }
    body.graduates.person.person-child main #careerpath .accordion-body li .inside .date p {
        font-size: 14px;
        line-height: 1em
    }
    body.graduates.person.person-child main #careerpath .accordion-body li .inside .txt {
        width: calc(100% - 80px);
        padding: 0 0 0 15px
    }
    body.graduates.person.person-child main #careerpath .accordion-body li .inside .txt p {
        font-size: 13px;
        line-height: 18px;
        letter-spacing: .025em
    }
    body.graduates.person.person-child main #careerpath .att-cap {
        padding: 15px 0 0 0
    }
    body.graduates.person.person-child main #careerpath .att-cap p {
        font-size: 12px;
        line-height: 1em
    }
    body.graduates.person.person-child main #view {
        margin: 90px 0 0;
        padding: 0 30px
    }
    body.graduates.person.person-child main #view .block:nth-of-type(n+2) {
        margin: 50px 0 0
    }
    body.graduates.person.person-child main #view .block .type--right .col:nth-of-type(1) {
        width: 100%
    }
    body.graduates.person.person-child main #view .block .type--right .col:nth-of-type(2) {
        width: 100%;
        margin-top: 25px;
        margin-left: 0
    }
    body.graduates.person.person-child main #view .block .type--left .col:nth-of-type(1) {
        width: 100%;
        margin-top: 25px;
        -ms-flex-order: 2;
        order: 2
    }
    body.graduates.person.person-child main #view .block .type--left .col:nth-of-type(2) {
        width: 100%;
        margin-left: 0;
        -ms-flex-order: 1;
        order: 1
    }
    body.graduates.person.person-child main #view .block .type--center {
        padding: 0
    }
    body.graduates.person.person-child main #view .block .box:nth-of-type(n+2) {
        margin: 50px 0 0
    }
    body.graduates.person.person-child main #view .block .h2 {
        width: 230px;
        margin: 0 0 25px 0;
        padding: 0 0 10px
    }
    body.graduates.person.person-child main #view .block .h2 h2 {
        font-size: 17px;
        line-height: 1em
    }
    body.graduates.person.person-child main #view .block .h2.large410 {
        width: calc(100% - 15px)
    }
    body.graduates.person.person-child main #view .block .h2.large500 {
        width: 100%
    }
    body.graduates.person.person-child main #view .block .h2.large500 h2 {
        letter-spacing: 0
    }
    body.graduates.person.person-child main #view .block .txt {
        font-size: 14px;
        line-height: 24px
    }
    body.graduates.person.person-child main #view .block .txt .small {
        font-size: 12px
    }
    body.graduates.person.person-child main #message {
        margin: 60px 0 0;
        padding: 0 30px
    }
    body.graduates.person.person-child main #message .box {
        padding: 0 0 25px
    }
    body.graduates.person.person-child main #message .box .h2 h2 {
        width: 100%;
        height: 50px;
        font-size: 17px;
        line-height: 48px
    }
    body.graduates.person.person-child main #message .box .txt {
        margin: 25px 0 0;
        padding: 0 30px;
        font-size: 14px;
        font-weight: 400;
        line-height: 24px;
        letter-spacing: 0
    }
    body.graduates.person.person-child main #strength {
        margin: 60px 0 0;
        padding: 0 30px
    }
    body.graduates.person.person-child main #strength .box {
        padding: 30px 20px 25px;
        border-radius: 10px
    }
    body.graduates.person.person-child main #strength .box .shoulder p {
        font-size: 13px;
        letter-spacing: .025em
    }
    body.graduates.person.person-child main #strength .box .shoulder span {
        width: 70px;
        height: 25px;
        margin: 0 5px;
        border: 1px solid #fff
    }
    body.graduates.person.person-child main #strength .box .msg {
        width: 100%;
        min-height: 40px;
        margin: 20px auto 0;
        padding: 15px 0
    }
    body.graduates.person.person-child main #strength .box .msg p {
        font-size: 18px;
        letter-spacing: .025em
    }
    body.graduates.person.person-child main #strength .box .msg .small {
        font-size: 11px
    }
    body.graduates.person.person-child main #strength .box .txt {
        margin-top: 15px
    }
    body.graduates.person.person-child main #strength .box .txt p {
        font-size: 13px;
        line-height: 23px;
        letter-spacing: 0
    }
    body.graduates.person.person-child main #oneday {
        margin: 60px 0 0;
        padding: 0 30px
    }
    body.graduates.person.person-child main #oneday .h2 h2 {
        width: 100%;
        height: 50px;
        font-size: 17px;
        line-height: 48px
    }
    body.graduates.person.person-child main #oneday .flow {
        margin: 30px 0 0
    }
    body.graduates.person.person-child main #oneday .oneday01, body.graduates.person.person-child main #oneday .oneday02, body.graduates.person.person-child main #oneday .oneday03, body.graduates.person.person-child main #oneday .oneday04, body.graduates.person.person-child main #oneday .oneday05, body.graduates.person.person-child main #oneday .oneday06, body.graduates.person.person-child main #oneday .oneday07, body.graduates.person.person-child main #oneday .oneday08 {
        width: 100%
    }
}
body.graduates.person.correlation main #prologue .h2 h2 {
    font-size: 30px;
    font-weight: 500;
    line-height: 54px;
    letter-spacing: .05em
}
body.graduates.person.correlation main #prologue .txt {
    margin-top: 50px;
    padding: 0 150px
}
body.graduates.person.correlation main #prologue .txt p {
    font-size: 16px;
    line-height: 32px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.person.correlation main #anchors-map {
    margin: 100px 0 0
}
body.graduates.person.correlation main #anchors-map .area {
    position: relative;
    display: block
}
body.graduates.person.correlation main #anchors-map .area a {
    z-index: 1;
    display: block;
    opacity: 0;
    background: rgba(255, 255, 255, .3)
}
body.graduates.person.correlation main #anchors-map .area a#anchor-btn01 {
    position: absolute;
    top: 90px;
    left: 0;
    width: 220px;
    height: 560px
}
body.graduates.person.correlation main #anchors-map .area a#anchor-btn02 {
    position: absolute;
    top: 90px;
    left: 460px;
    width: 640px;
    height: 280px
}
body.graduates.person.correlation main #anchors-map .area a#anchor-btn03 {
    position: absolute;
    top: 380px;
    left: 460px;
    width: 640px;
    height: 270px
}
@media screen and (min-width:768px) {
    body.graduates.person.correlation main #anchors-map .area a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.graduates.person.correlation main #anchors-map .area a:hover {
        opacity: 1
    }
}
body.graduates.person.correlation main #anchors {
    margin-top: 100px
}
body.graduates.person.correlation main #anchors .block {
    position: relative;
    display: block
}
body.graduates.person.correlation main #anchors .block:nth-of-type(n+2) {
    margin-top: 100px
}
body.graduates.person.correlation main #anchors .block a.btn {
    z-index: 1;
    display: block;
    opacity: 0;
    border-radius: 10px;
    background: rgba(255, 255, 255, .3)
}
body.graduates.person.correlation main #anchors .block a.btn.size-a {
    width: 176px;
    height: 180px
}
body.graduates.person.correlation main #anchors .block a.btn.size-b {
    width: 240px;
    height: 100px
}
body.graduates.person.correlation main #anchors .block a.btn.size-c {
    width: 280px;
    height: 100px
}
body.graduates.person.correlation main #anchors .block a.btn#btn0101 {
    position: absolute;
    top: 151px;
    left: 70px
}
body.graduates.person.correlation main #anchors .block a.btn#btn0102 {
    position: absolute;
    top: 151px;
    left: 266px
}
body.graduates.person.correlation main #anchors .block a.btn#btn0103 {
    position: absolute;
    top: 151px;
    left: 658px
}
body.graduates.person.correlation main #anchors .block a.btn#btn0104 {
    position: absolute;
    top: 151px;
    left: 854px
}
body.graduates.person.correlation main #anchors .block a.btn#btn0105 {
    position: absolute;
    top: 398px;
    left: 157px
}
body.graduates.person.correlation main #anchors .block a.btn#btn0201 {
    position: absolute;
    top: 151px;
    left: 70px
}
body.graduates.person.correlation main #anchors .block a.btn#btn0202 {
    position: absolute;
    top: 151px;
    left: 410px
}
body.graduates.person.correlation main #anchors .block a.btn#btn0203 {
    position: absolute;
    top: 151px;
    left: 750px
}
body.graduates.person.correlation main #anchors .block a.btn#btn0301 {
    position: absolute;
    top: 351px;
    left: 462px
}
body.graduates.person.correlation main #anchors .block a.btn#btn0302 {
    position: absolute;
    top: 351px;
    left: 658px
}
@media screen and (min-width:768px) {
    body.graduates.person.correlation main #anchors .block a.btn {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.graduates.person.correlation main #anchors .block a.btn:hover {
        opacity: 1
    }
}
@media only screen and (max-width:767px) {
    body.graduates.person.correlation main #prologue {
        padding: 0 30px
    }
    body.graduates.person.correlation main #prologue .h2 h2 {
        font-size: 20px;
        line-height: 35px;
        letter-spacing: .025em
    }
    body.graduates.person.correlation main #prologue .txt {
        margin-top: 30px;
        padding: 0
    }
    body.graduates.person.correlation main #prologue .txt p {
        font-size: 14px;
        line-height: 25px;
        letter-spacing: 0
    }
    body.graduates.person.correlation main #anchors-map {
        width: 315px;
        margin: 60px auto 0
    }
    body.graduates.person.correlation main #anchors-map .area a#anchor-btn01 {
        position: absolute;
        top: 53px;
        left: 0;
        width: 85px;
        height: 560px
    }
    body.graduates.person.correlation main #anchors-map .area a#anchor-btn02 {
        position: absolute;
        top: 53px;
        left: 180px;
        width: 135px;
        height: 226px
    }
    body.graduates.person.correlation main #anchors-map .area a#anchor-btn03 {
        position: absolute;
        top: 284px;
        left: 180px;
        width: 135px;
        height: 329px
    }
    body.graduates.person.correlation main #anchors {
        margin-top: 60px
    }
    body.graduates.person.correlation main #anchors .block {
        width: 315px;
        margin: auto
    }
    body.graduates.person.correlation main #anchors .block:nth-of-type(n+2) {
        margin-top: 60px
    }
    body.graduates.person.correlation main #anchors .block a.btn.size-a {
        width: 49px;
        height: 230px
    }
    body.graduates.person.correlation main #anchors .block a.btn.size-b {
        width: 100px;
        height: 73px
    }
    body.graduates.person.correlation main #anchors .block a.btn.size-c {
        width: 49px;
        height: 230px
    }
    body.graduates.person.correlation main #anchors .block a.btn#btn0101 {
        position: absolute;
        top: 75px;
        left: 25px
    }
    body.graduates.person.correlation main #anchors .block a.btn#btn0102 {
        position: absolute;
        top: 75px;
        left: 79px
    }
    body.graduates.person.correlation main #anchors .block a.btn#btn0103 {
        position: absolute;
        top: 75px;
        left: 187px
    }
    body.graduates.person.correlation main #anchors .block a.btn#btn0104 {
        position: absolute;
        top: 75px;
        left: 241px
    }
    body.graduates.person.correlation main #anchors .block a.btn#btn0105 {
        position: absolute;
        top: 345px;
        left: 25px
    }
    body.graduates.person.correlation main #anchors .block a.btn#btn0201 {
        position: absolute;
        top: 75px;
        left: 35px
    }
    body.graduates.person.correlation main #anchors .block a.btn#btn0202 {
        position: absolute;
        top: 75px;
        left: 133px
    }
    body.graduates.person.correlation main #anchors .block a.btn#btn0203 {
        position: absolute;
        top: 75px;
        left: 231px
    }
    body.graduates.person.correlation main #anchors .block a.btn#btn0301 {
        position: absolute;
        top: 315px;
        left: 133px
    }
    body.graduates.person.correlation main #anchors .block a.btn#btn0302 {
        position: absolute;
        top: 315px;
        left: 187px
    }
}
body.graduates.person.oneday main #movie {
    width: 1000px;
    margin: 0 auto
}
body.graduates.person.oneday main #movie .video {
    position: relative;
    width: 100%;
    height: auto;
    padding-bottom: 56.2%;
    background: #000
}
body.graduates.person.oneday main #movie .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}
@media only screen and (max-width:767px) {
    body.graduates.person.oneday main #movie {
        width: 100%;
        padding: 0 20px
    }
}
body.graduates.person.voice main #prologue p {
    font-size: 16px;
    font-weight: 600;
    line-height: 32px;
    letter-spacing: .05em
}
body.graduates.person.voice main #textbody {
    margin-top: 25px
}
body.graduates.person.voice main #textbody .block:nth-of-type(n+2) {
    margin-top: 100px
}
body.graduates.person.voice main #textbody .block.type--01 .list li:nth-of-type(even) {
    margin-left: 5.46%
}
body.graduates.person.voice main #textbody .block.type--01 .list li:nth-of-type(n+3) {
    margin-top: 100px
}
body.graduates.person.voice main #textbody .block.type--01 .list .ttl {
    border-color: #1c6ab4
}
body.graduates.person.voice main #textbody .block.type--01 .list .ttl:before {
    background: linear-gradient(to top right, rgba(255, 255, 255, 0) 50%, #1c6ab4 50.5%) no-repeat top left/100% 100%
}
body.graduates.person.voice main #textbody .block.type--01 .list .ttl p {
    color: #1c6ab4
}
body.graduates.person.voice main #textbody .block.type--02 .list {
    margin-top: 60px
}
body.graduates.person.voice main #textbody .block.type--02 .list li {
    margin-left: 5.46%
}
body.graduates.person.voice main #textbody .block.type--02 .list li:nth-of-type(odd) {
    margin-left: 5.46%
}
body.graduates.person.voice main #textbody .block.type--02 .list li:nth-of-type(even) {
    margin-left: 0
}
body.graduates.person.voice main #textbody .block.type--02 .list li:nth-of-type(n+4) {
    margin-top: 100px
}
body.graduates.person.voice main #textbody .block.type--02 .list li.size--large {
    width: 100%;
    margin-left: 0
}
body.graduates.person.voice main #textbody .block.type--02 .list .ttl {
    border-color: #006837
}
body.graduates.person.voice main #textbody .block.type--02 .list .ttl:before {
    background: linear-gradient(to top right, rgba(255, 255, 255, 0) 50%, #006837 50.5%) no-repeat top left/100% 100%
}
body.graduates.person.voice main #textbody .block.type--02 .list .ttl p {
    color: #006837
}
body.graduates.person.voice main #textbody .list li {
    width: 47.27%
}
body.graduates.person.voice main #textbody .list .ttl {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    height: 105px;
    margin-bottom: 50px;
    padding: 0 20px;
    border: 1px solid;
    border-radius: 10px;
    background: #fff;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.graduates.person.voice main #textbody .list .ttl:before {
    position: absolute;
    z-index: -1;
    bottom: -21px;
    left: 69px;
    width: 20px;
    height: 21px;
    content: ""
}
body.graduates.person.voice main #textbody .list .ttl:after {
    position: absolute;
    bottom: -19px;
    left: 70px;
    width: 18px;
    height: 20px;
    content: "";
    background: linear-gradient(to top right, rgba(255, 255, 255, 0) 50%, #fff 50.5%) no-repeat top left/100% 100%
}
body.graduates.person.voice main #textbody .list .ttl .no {
    width: 110px
}
body.graduates.person.voice main #textbody .list .ttl .no p {
    font-family: "EB Garamond", serif;
    font-size: 70px;
    font-weight: 400;
    line-height: 1em;
    letter-spacing: 0
}
body.graduates.person.voice main #textbody .list .ttl .no p .en {
    padding-right: 5px;
    font-size: 40px;
    vertical-align: top
}
body.graduates.person.voice main #textbody .list .ttl .txt {
    width: calc(100% - 110px)
}
body.graduates.person.voice main #textbody .list .ttl .txt p {
    font-size: 20px;
    font-weight: 600;
    line-height: 34px;
    letter-spacing: 0
}
body.graduates.person.voice main #message .inside {
    padding: 70px 60px;
    border-radius: 20px;
    background: #bfeae7
}
body.graduates.person.voice main #message .inside .h2 {
    text-align: center
}
body.graduates.person.voice main #message .inside .h2 h2 {
    font-size: 24px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: 0
}
body.graduates.person.voice main #message .inside .ph {
    margin-top: 70px
}
@media only screen and (max-width:767px) {
    body.graduates.person.voice main #prologue p {
        font-size: 14px;
        line-height: 25px;
        letter-spacing: 0
    }
    body.graduates.person.voice main #textbody {
        margin-top: 60px;
        padding: 0 20px
    }
    body.graduates.person.voice main #textbody .block:nth-of-type(n+2) {
        margin-top: 80px
    }
    body.graduates.person.voice main #textbody .block.type--01 .list li:nth-of-type(even) {
        margin-left: 0
    }
    body.graduates.person.voice main #textbody .block.type--01 .list li:nth-of-type(n+2) {
        margin-top: 70px
    }
    body.graduates.person.voice main #textbody .block.type--02 .list {
        margin-top: 60px
    }
    body.graduates.person.voice main #textbody .block.type--02 .list li {
        margin-left: 0
    }
    body.graduates.person.voice main #textbody .block.type--02 .list li:nth-of-type(odd) {
        margin-left: 0
    }
    body.graduates.person.voice main #textbody .block.type--02 .list li:nth-of-type(even) {
        margin-left: 0
    }
    body.graduates.person.voice main #textbody .block.type--02 .list li:nth-of-type(n+2) {
        margin-top: 70px
    }
    body.graduates.person.voice main #textbody .block.type--02 .list li.size--large {
        width: 100%;
        margin-left: 0
    }
    body.graduates.person.voice main #textbody .list li {
        width: 100%
    }
    body.graduates.person.voice main #textbody .list .ttl {
        height: 70px;
        margin-bottom: 45px;
        padding: 0 15px
    }
    body.graduates.person.voice main #textbody .list .ttl:before {
        position: absolute;
        bottom: -18px;
        left: 32px;
        width: 17px;
        height: 17px
    }
    body.graduates.person.voice main #textbody .list .ttl:after {
        position: absolute;
        bottom: -16px;
        left: 33px;
        width: 15px;
        height: 16px
    }
    body.graduates.person.voice main #textbody .list .ttl .no {
        width: 60px
    }
    body.graduates.person.voice main #textbody .list .ttl .no p {
        font-size: 45px;
        line-height: 1em
    }
    body.graduates.person.voice main #textbody .list .ttl .no p .en {
        padding-right: 2px;
        font-size: 23px
    }
    body.graduates.person.voice main #textbody .list .ttl .txt {
        width: calc(100% - 60px)
    }
    body.graduates.person.voice main #textbody .list .ttl .txt p {
        font-size: 16px;
        line-height: 23px
    }
    body.graduates.person.voice main #message {
        padding: 0 20px
    }
    body.graduates.person.voice main #message .inside {
        padding: 40px 20px;
        border-radius: 10px;
        background: #bfeae7
    }
    body.graduates.person.voice main #message .inside .h2 h2 {
        font-size: 18px;
        line-height: 1em
    }
    body.graduates.person.voice main #message .inside .ph {
        margin-top: 30px
    }
}
body.graduates.recruit .h2--center-green {
    border-bottom: 1px solid #bfbfbf
}
body.graduates.recruit .h2--center-green h2 {
    position: relative;
    display: block;
    width: 400px;
    height: 60px;
    margin: auto;
    border-top: 1px solid #bfbfbf;
    border-right: 2px solid #1a6bb4;
    border-left: 2px solid #1a6bb4
}
body.graduates.recruit .h2--center-green h2 span {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 18px;
    font-weight: 600;
    line-height: 58px;
    text-align: center;
    white-space: nowrap;
    letter-spacing: .2em;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}
body.graduates.recruit .h2--center-green.size300 h2 {
    width: 300px
}
body.graduates.recruit .h2--center-green.size440 h2 {
    width: 440px
}
body.graduates.recruit .h2--center-green.size760 h2 {
    width: 760px
}
@media only screen and (max-width:767px) {
    body.graduates.recruit .h2--center-green h2 {
        width: 230px;
        height: 40px
    }
    body.graduates.recruit .h2--center-green h2 span {
        font-size: 15px;
        line-height: 20px;
        letter-spacing: .1em
    }
    body.graduates.recruit .h2--center-green.size300 h2 {
        width: 200px
    }
    body.graduates.recruit .h2--center-green.size440 h2 {
        width: 210px;
        height: 60px
    }
    body.graduates.recruit .h2--center-green.size760 h2 {
        width: 320px;
        height: 60px
    }
}
body.graduates.recruit.message main #prologue .txt {
    margin: 90px 0 0;
    font-size: 18px;
    font-weight: 600;
    line-height: 46px;
    text-align: center;
    letter-spacing: 0
}
body.graduates.recruit.message main #textbody {
    margin: 120px 0 0
}
body.graduates.recruit.message main #textbody .block:nth-of-type(n+2) {
    margin: 100px 0 0
}
body.graduates.recruit.message main #textbody .block .ttl {
    color: #1a6bb4;
    font-size: 20px;
    font-weight: 600;
    line-height: 40px;
    text-align: center;
    letter-spacing: .2em
}
body.graduates.recruit.message main #textbody .block .txt {
    margin: 40px 0 0;
    font-size: 14px;
    line-height: 28px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.recruit.message main #textbody .block .txt .stxt {
    font-size: 12px
}
@media only screen and (max-width:767px) {
    body.graduates.recruit.message main #prologue .txt {
        margin: 45px 0 0;
        font-size: 14px;
        line-height: 28px
    }
    body.graduates.recruit.message main #textbody {
        margin: 50px 0 0;
        padding: 0 30px
    }
    body.graduates.recruit.message main #textbody .block:nth-of-type(n+2) {
        margin: 50px 0 0
    }
    body.graduates.recruit.message main #textbody .block .ttl {
        font-size: 16px;
        line-height: 28px;
        letter-spacing: .025em
    }
    body.graduates.recruit.message main #textbody .block .txt {
        margin: 20px 0 0;
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 0
    }
}
body.graduates.recruit.application main .block:nth-of-type(n+2) {
    margin: 60px 0 0
}
body.graduates.recruit.application main .block:last-of-type {
    margin: 120px 0 0
}
body.graduates.recruit.application main .block .single {
    padding: 35px 0 0
}
body.graduates.recruit.application main .block li, body.graduates.recruit.application main .block p {
    font-size: 14px;
    line-height: 28px;
    letter-spacing: .05em
}
body.graduates.recruit.application main .block li.bold, body.graduates.recruit.application main .block p.bold {
    font-size: 15px;
    font-weight: 600;
    line-height: 28px;
    letter-spacing: .05em
}
body.graduates.recruit.application main .block .talbe ul {
    border-bottom: 1px solid #bfbfbf
}
body.graduates.recruit.application main .block .talbe ul > li {
    display: -ms-flexbox;
    display: flex;
    padding: 25px 0;
    align-items: flex-start;
    -ms-flex-align: start;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.graduates.recruit.application main .block .talbe ul > li:nth-of-type(n+2) {
    border-top: 1px dotted #bfbfbf
}
body.graduates.recruit.application main .block .talbe ul > li .dt {
    width: 200px
}
body.graduates.recruit.application main .block .talbe ul > li .dt p {
    font-weight: 700
}
body.graduates.recruit.application main .block .talbe ul > li .dd {
    width: calc(100% - 200px)
}
body.graduates.recruit.application main .block .talbe ul > li .dd p {
    text-align: justify;
    text-justify: inter-ideograph
}
body.graduates.recruit.application main .block .talbe ul > li a {
    display: inline-block;
    width: 190px;
    height: 40px;
    margin: 25px 0 0;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    line-height: 38px;
    text-align: center;
    letter-spacing: .1em;
    background: #000
}
@media screen and (min-width:768px) {
    body.graduates.recruit.application main .block .talbe ul > li a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.graduates.recruit.application main .block .talbe ul > li a:hover {
        opacity: .7
    }
}
body.graduates.recruit.application main .block2 .h2--center-green {
    margin-bottom: 35px;
    border-bottom: 1px solid #bfbfbf
}
body.graduates.recruit.application main .block2 .h2--center-green h2 {
    position: relative;
    display: block;
    width: 400px;
    height: 60px;
    margin: auto;
    background: #1a6bb4
}
body.graduates.recruit.application main .block2 .h2--center-green h2 span {
    position: absolute;
    top: 50%;
    left: 50%;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    line-height: 58px;
    text-align: center;
    white-space: nowrap;
    letter-spacing: .2em;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}
body.graduates.recruit.application main .block2:nth-of-type(n+2) {
    margin: 60px 0 0
}
body.graduates.recruit.application main .block2:last-of-type {
    margin: 120px 0 0
}
body.graduates.recruit.application main .block2 .single {
    padding: 35px 0 0
}
body.graduates.recruit.application main .block2 li, body.graduates.recruit.application main .block2 p {
    font-size: 14px;
    line-height: 28px;
    text-align: center;
    letter-spacing: .05em
}
body.graduates.recruit.application main .block2 li.bold, body.graduates.recruit.application main .block2 p.bold {
    font-size: 15px;
    font-weight: 600;
    line-height: 28px;
    letter-spacing: .05em
}
@media only screen and (max-width:767px) {
    body.graduates.recruit.application main .block {
        padding: 0 30px
    }
    body.graduates.recruit.application main .block:nth-of-type(n+2) {
        margin: 40px 0 0
    }
    body.graduates.recruit.application main .block:last-of-type {
        margin: 60px 0 0
    }
    body.graduates.recruit.application main .block .single {
        padding: 20px 0 0
    }
    body.graduates.recruit.application main .block li, body.graduates.recruit.application main .block p {
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 0
    }
    body.graduates.recruit.application main .block li.bold, body.graduates.recruit.application main .block p.bold {
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 0
    }
    body.graduates.recruit.application main .block .talbe ul > li {
        padding: 15px 0
    }
    body.graduates.recruit.application main .block .talbe ul > li .dt {
        width: 100px
    }
    body.graduates.recruit.application main .block .talbe ul > li .dd {
        width: calc(100% - 100px)
    }
    body.graduates.recruit.application main .block .talbe ul > li a {
        width: 175px;
        height: 40px;
        margin: 15px 0 0;
        font-size: 12px;
        letter-spacing: .05em
    }
    body.graduates.recruit.application main .block2 {
        padding: 0 30px
    }
    body.graduates.recruit.application main .block2 .h2--center-green h2 {
        width: 230px;
        height: 40px
    }
    body.graduates.recruit.application main .block2 .h2--center-green h2 span {
        font-size: 15px;
        line-height: 20px;
        letter-spacing: .1em
    }
    body.graduates.recruit.application main .block2 .h2--center-green.size300 h2 {
        width: 200px
    }
    body.graduates.recruit.application main .block2 .h2--center-green.size440 h2 {
        width: 210px;
        height: 60px
    }
    body.graduates.recruit.application main .block2 .h2--center-green.size760 h2 {
        width: 320px;
        height: 60px
    }
    body.graduates.recruit.application main .block2:nth-of-type(n+2) {
        margin: 40px 0 0
    }
    body.graduates.recruit.application main .block2:last-of-type {
        margin: 60px 0 0
    }
    body.graduates.recruit.application main .block2 .single {
        padding: 20px 0 0
    }
    body.graduates.recruit.application main .block2 li, body.graduates.recruit.application main .block2 p {
        font-size: 14px;
        line-height: 24px;
        text-align: left;
        letter-spacing: 0
    }
    body.graduates.recruit.application main .block2 li.bold, body.graduates.recruit.application main .block2 p.bold {
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 0
    }
}
body.graduates.recruit.personality main #prologue {
    text-align: center
}
body.graduates.recruit.personality main #prologue p {
    font-size: 16px;
    font-weight: 600;
    line-height: 32px;
    letter-spacing: .05em
}
body.graduates.recruit.personality main #prologue .cards {
    margin-top: 100px
}
body.graduates.recruit.personality main #prologue .cards li {
    width: 30.9%
}
body.graduates.recruit.personality main #prologue .cards li:nth-of-type(n+2) {
    margin-left: 3.65%
}
@media only screen and (max-width:767px) {
    body.graduates.recruit.personality main #prologue {
        padding: 0 30px
    }
    body.graduates.recruit.personality main #prologue p {
        font-size: 14px;
        line-height: 25px;
        letter-spacing: 0
    }
    body.graduates.recruit.personality main #prologue .cards {
        margin-top: 40px
    }
    body.graduates.recruit.personality main #prologue .cards li {
        width: 100%
    }
    body.graduates.recruit.personality main #prologue .cards li:nth-of-type(n+2) {
        margin: 25px 0 0
    }
}
body.graduates.recruit.faq main .block:nth-of-type(n+2) {
    margin: 100px 0 0
}
body.graduates.recruit.faq main .block li {
    border-bottom: 1px solid #bfbfbf
}
body.graduates.recruit.faq main .block .accordion-btn {
    display: block;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 105px;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.graduates.recruit.faq main .block .accordion-btn p:nth-of-type(1) {
    position: relative;
    width: 90px;
    font-size: 48px;
    font-weight: 600;
    line-height: 1em;
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px)
}
body.graduates.recruit.faq main .block .accordion-btn p:nth-of-type(1):before {
    position: absolute;
    top: -5px;
    right: 30px;
    width: 2px;
    height: 70px;
    content: "";
    -webkit-transform: rotate(20deg);
    transform: rotate(20deg);
    background: #04a1e9
}
body.graduates.recruit.faq main .block .accordion-btn p:nth-of-type(2) {
    width: calc(100% - 90px);
    font-size: 16px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .1em
}
body.graduates.recruit.faq main .block .accordion-btn .icon {
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;
    display: block;
    width: 30px;
    height: 30px;
    margin: auto
}
body.graduates.recruit.faq main .block .accordion-btn .icon:after, body.graduates.recruit.faq main .block .accordion-btn .icon:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 30px;
    height: 2px;
    margin: auto;
    content: "";
    background: #1a6bb4
}
body.graduates.recruit.faq main .block .accordion-btn .icon:after {
    transition: all .2s cubic-bezier(.39, .575, .565, 1);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}
body.graduates.recruit.faq main .block .accordion-btn.open .icon:after {
    opacity: 0;
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}
@media screen and (min-width:768px) {
    body.graduates.recruit.faq main .block .accordion-btn {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.graduates.recruit.faq main .block .accordion-btn:hover {
        padding-left: 15px
    }
}
body.graduates.recruit.faq main .block .accordion-body .inside {
    display: -ms-flexbox;
    display: flex;
    padding: 20px 0 40px 90px;
    align-items: flex-start;
    -ms-flex-align: start;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(1) {
    width: 60px
}
body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(1) p {
    width: 60px;
    height: 60px;
    color: #fff;
    font-size: 40px;
    font-weight: 600;
    line-height: 56px;
    text-align: center;
    background: #1a6bb4
}
body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(2) {
    width: calc(100% - 60px);
    padding: 0 0 0 20px
}
body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(2) p {
    font-size: 14px;
    line-height: 26px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(2) .btn {
    margin: 20px 0 0
}
body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(2) .btn a {
    display: inline-block;
    width: 190px;
    height: 40px;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    line-height: 38px;
    text-align: center;
    letter-spacing: .1em;
    background: #000
}
@media screen and (min-width:768px) {
    body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(2) .btn a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(2) .btn a:hover {
        opacity: .7
    }
}
@media only screen and (max-width:767px) {
    body.graduates.recruit.faq main .block {
        padding: 0 30px
    }
    body.graduates.recruit.faq main .block:nth-of-type(n+2) {
        margin: 50px 0 0
    }
    body.graduates.recruit.faq main .block .accordion-btn {
        width: 100%;
        height: 110px
    }
    body.graduates.recruit.faq main .block .accordion-btn p:nth-of-type(1) {
        width: 65px;
        font-size: 35px;
        font-weight: 600;
        line-height: 1em;
        -webkit-transform: translateY(-5px);
        transform: translateY(-5px)
    }
    body.graduates.recruit.faq main .block .accordion-btn p:nth-of-type(1):before {
        position: absolute;
        top: -15px;
        right: 20px
    }
    body.graduates.recruit.faq main .block .accordion-btn p:nth-of-type(2) {
        width: calc(100% - 65px);
        padding: 0 45px 0 0;
        font-size: 14px;
        line-height: 20px;
        letter-spacing: .05em
    }
    body.graduates.recruit.faq main .block .accordion-btn .icon {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 25px;
        height: 25px;
        margin: auto
    }
    body.graduates.recruit.faq main .block .accordion-btn .icon:after, body.graduates.recruit.faq main .block .accordion-btn .icon:before {
        width: 25px;
        height: 2px
    }
    body.graduates.recruit.faq main .block .accordion-body .inside {
        padding: 0 0 20px 65px
    }
    body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(1) {
        width: 100%
    }
    body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(1) p {
        width: 40px;
        height: 40px;
        font-size: 30px;
        line-height: 36px
    }
    body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(2) {
        width: 100%;
        padding: 10px 0 0
    }
    body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(2) p {
        font-size: 13px;
        line-height: 24px;
        letter-spacing: 0
    }
    body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(2) .btn {
        margin: 10px 0 0
    }
    body.graduates.recruit.faq main .block .accordion-body .inside .col:nth-of-type(2) .btn a {
        width: 175px;
        height: 40px;
        font-size: 12px;
        line-height: 36px;
        letter-spacing: .05em
    }
}
body.graduates.recruit.voice main .block:nth-of-type(n+2) {
    margin: 100px 0 0
}
body.graduates.recruit.voice main .block .h2 {
    text-align: center;
    border-bottom: 1px solid #bfbfbf
}
body.graduates.recruit.voice main .block .h2 a {
    display: -ms-flexbox;
    display: flex;
    width: 800px;
    height: 60px;
    margin: auto;
    padding: 0 0 0 40px;
    text-align: left;
    background: #1a6bb4;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.graduates.recruit.voice main .block .h2 a span {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .1em
}
body.graduates.recruit.voice main .block .h2 a:after, body.graduates.recruit.voice main .block .h2 a:before {
    position: absolute;
    top: 0;
    right: 40px;
    bottom: 0;
    width: 22px;
    height: 2px;
    margin: auto;
    content: "";
    background: #fff
}
body.graduates.recruit.voice main .block .h2 a:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}
body.graduates.recruit.voice main .block .h2 a.open:after {
    display: none
}
@media screen and (min-width:768px) {
    body.graduates.recruit.voice main .block .h2 a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.graduates.recruit.voice main .block .h2 a:hover {
        opacity: .8
    }
}
body.graduates.recruit.voice main .block .accordion-body {
    padding: 100px 0 0
}
body.graduates.recruit.voice main .block .accordion-body ul li {
    position: relative;
    width: 45.4%;
    padding: 0 0 25px 30px;
    border-bottom: 1px solid #bfbfbf;
    border-left: 1px solid #bfbfbf
}
body.graduates.recruit.voice main .block .accordion-body ul li:nth-of-type(even) {
    margin-left: 9.2%
}
body.graduates.recruit.voice main .block .accordion-body ul li:nth-of-type(n+3) {
    margin-top: 80px
}
body.graduates.recruit.voice main .block .accordion-body ul li p {
    font-size: 14px;
    line-height: 28px;
    text-align: justify;
    text-justify: inter-ideograph;
    letter-spacing: .05em
}
body.graduates.recruit.voice main .block .accordion-body ul li .icon {
    position: absolute;
    right: 60px;
    bottom: -34px;
    overflow: hidden;
    width: 34px;
    height: 34px;
    background: #fff
}
body.graduates.recruit.voice main .block .accordion-body ul li .icon:after, body.graduates.recruit.voice main .block .accordion-body ul li .icon:before {
    width: 1px;
    height: 34px;
    content: "";
    background: #bfbfbf
}
body.graduates.recruit.voice main .block .accordion-body ul li .icon:before {
    position: absolute;
    top: 0;
    left: 0
}
body.graduates.recruit.voice main .block .accordion-body ul li .icon:after {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 50px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left
}
@media only screen and (max-width:767px) {
    body.graduates.recruit.voice main .block {
        padding: 0 30px
    }
    body.graduates.recruit.voice main .block:nth-of-type(n+2) {
        margin: 60px 0 0
    }
    body.graduates.recruit.voice main .block .h2 {
        padding: 0 20px
    }
    body.graduates.recruit.voice main .block .h2 a {
        width: 100%;
        height: 80px;
        padding: 0 0 0 15px
    }
    body.graduates.recruit.voice main .block .h2 a span {
        font-size: 14px;
        line-height: 20px;
        letter-spacing: 0
    }
    body.graduates.recruit.voice main .block .h2 a:after, body.graduates.recruit.voice main .block .h2 a:before {
        position: absolute;
        top: 0;
        right: 15px;
        bottom: 0;
        width: 20px;
        height: 2px;
        margin: auto
    }
    body.graduates.recruit.voice main .block .accordion-body {
        padding: 50px 0 0
    }
    body.graduates.recruit.voice main .block .accordion-body ul li {
        width: 100%;
        padding: 0 0 20px 20px
    }
    body.graduates.recruit.voice main .block .accordion-body ul li:nth-of-type(even) {
        margin-left: 0
    }
    body.graduates.recruit.voice main .block .accordion-body ul li:nth-of-type(n+2) {
        margin-top: 55px
    }
    body.graduates.recruit.voice main .block .accordion-body ul li p {
        font-size: 14px;
        line-height: 24px;
        letter-spacing: 0
    }
    body.graduates.recruit.voice main .block .accordion-body ul li .icon {
        position: absolute;
        right: 40px;
        bottom: -26px;
        width: 26px;
        height: 26px
    }
}
body .overview {
    color: #000;
    display: inline-block;
    font-family: "Noto Serif JP", serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 25px;
    text-align: left;
}
@media only screen and (max-width:767px) {
    body .overview {
        color: #000;
        display: inline-block;
        font-family: "Noto Serif JP", serif;
        font-size: 13px;
        font-weight: 400;
        line-height: 25px;
        text-align: left;
    }
}
body.internship main {
    padding: 90px 0 0
}
body.internship main .banner {
    text-align: center;
    margin-bottom: 40px;
}
body.internship main #archive .h3, body.internship main #onnow .h3 {
    border-top: 1px solid #c7c7c7
}
body.internship main #archive .h3 h3, body.internship main #onnow .h3 h3 {
    display: -ms-flexbox;
    display: flex;
    width: 420px;
    height: 50px;
    margin: auto;
    background: #000;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.internship main #archive .h3 h3 span, body.internship main #onnow .h3 h3 span {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    line-height: 1em;
    text-align: center;
    letter-spacing: .075em
}
body.internship main #archive .h4, body.internship main #onnow .h4 {
    text-align: center
}
body.internship main #archive .h4 h4, body.internship main #onnow .h4 h4 {
    position: relative;
    display: inline-block;
    padding: 0 0 5px;
    font-size: 20px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .075em
}
body.internship main #archive .h4 h4:before, body.internship main #onnow .h4 h4:before {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    margin: auto;
    content: "";
    background: #1a6bb4
}
body.internship main #archive .inside, body.internship main #onnow .inside {
    margin: 60px 0 0;
    padding: 0 50px
}
body.internship main #archive .inside ul, body.internship main #onnow .inside ul {
    border-bottom: 1px dotted #393939
}
body.internship main #archive .inside ul > li, body.internship main #onnow .inside ul > li {
    display: -ms-flexbox;
    display: flex;
    padding: 25px 0;
    border-top: 1px dotted #393939;
    align-items: flex-start;
    -ms-flex-align: start;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.internship main #archive .inside ul > li .td, body.internship main #archive .inside ul > li .th, body.internship main #archive .inside ul > li a, body.internship main #archive .inside ul > li ol > li, body.internship main #archive .inside ul > li p, body.internship main #onnow .inside ul > li .td, body.internship main #onnow .inside ul > li .th, body.internship main #onnow .inside ul > li a, body.internship main #onnow .inside ul > li ol > li, body.internship main #onnow .inside ul > li p {
    font-size: 14px;
    line-height: 28px;
    letter-spacing: .05em
}
body.internship main #archive .inside ul > li p, body.internship main #onnow .inside ul > li p {
    text-align: justify;
    text-justify: inter-ideograph
}
body.internship main #archive .inside ul > li p + ol, body.internship main #onnow .inside ul > li p + ol {
    margin: 5px 0 0
}
body.internship main #archive .inside ul > li ol + p, body.internship main #onnow .inside ul > li ol + p {
    margin: 15px 0 0
}
body.internship main #archive .inside ul > li .font--size12, body.internship main #archive .inside ul > li .font--size12 > *, body.internship main #onnow .inside ul > li .font--size12, body.internship main #onnow .inside ul > li .font--size12 > * {
    font-size: 12px;
    line-height: 24px;
    letter-spacing: .05em
}
body.internship main #archive .inside ul > li .th, body.internship main #onnow .inside ul > li .th {
    width: 130px
}
body.internship main #archive .inside ul > li .th p, body.internship main #onnow .inside ul > li .th p {
    font-size: 16px;
    font-weight: 600;
    line-height: 28px;
    letter-spacing: .05em
}
body.internship main #archive .inside ul > li .td, body.internship main #onnow .inside ul > li .td {
    width: calc(100% - 130px)
}
body.internship main #archive .inside ul > li .td .blue-txt, body.internship main #onnow .inside ul > li .td .blue-txt {
    color: #1a6bb4;
    font-size: 15px;
    font-weight: 600;
    line-height: 28px;
    letter-spacing: .05em
}
body.internship main #archive .inside ul > li .banner-app, body.internship main #onnow .inside ul > li .banner-app {
    margin: 20px 0
}
body.internship main #archive .inside ul > li .banner-app .col:nth-of-type(1), body.internship main #onnow .inside ul > li .banner-app .col:nth-of-type(1) {
    width: 136px
}
body.internship main #archive .inside ul > li .banner-app .col:nth-of-type(2), body.internship main #onnow .inside ul > li .banner-app .col:nth-of-type(2) {
    width: 169px;
    margin-left: 10px
}
body.internship main #archive .inside .size--large, body.internship main #onnow .inside .size--large {
    font-size: 16px
}
body.internship main #archive .inside .size--large18, body.internship main #onnow .inside .size--large18 {
    font-size: 18px
}
body.internship main #archive .inside p + p, body.internship main #onnow .inside p + p {
    margin: 10px 0 0
}
body.internship main #archive .inside .txt-only, body.internship main #onnow .inside .txt-only {
    margin: 60px 0 0;
    padding: 40px 50px;
    border: 1px solid #c7d1dd;
    background: #f0f4f7
}
body.internship main #archive .inside .txt-only + ul, body.internship main #onnow .inside .txt-only + ul {
    margin-top: 60px
}
body.internship main #archive .boxes, body.internship main #onnow .boxes {
    margin: 40px 0 0
}
body.internship main #archive .boxes .box:nth-of-type(n+2), body.internship main #onnow .boxes .box:nth-of-type(n+2) {
    margin: 60px 0 0
}
body.internship main #onnow {
    margin: 180px 0 0
}
body.internship main #onnow .h2 {
    height: 100px;
    margin: 0 0 80px;
    padding: 35px 0 0;
    text-align: center;
    background-color: #fff
}
body.internship main #onnow .h2.involve-sttl {
    margin-bottom: 40px !important
}
body.internship main #onnow .h2.involve-sttl + .sttl {
    margin: 0 auto 80px;
    text-align: center
}
body.internship main #onnow .h2.involve-sttl + .sttl p {
    font-size: 20px;
    font-weight: 600;
    line-height: 2em;
    letter-spacing: 0
}
body.internship main #onnow .h2 h2 {
    color: #1a6bb4;
    font-size: 28px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .075em
}
body.internship main #onnow .block:nth-of-type(n+2) {
    margin: 120px 0 0
}
body.internship main #onnow .block .pamphlet {
    margin: 80px 0 0
}
body.internship main #onnow .block .pamphlet a {
    display: -ms-flexbox;
    display: flex;
    width: 560px;
    height: 230px;
    margin: auto;
    padding: 25px 40px;
    border: 1px solid #cbcbcb;
    background: #f7f7f7;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.internship main #onnow .block .pamphlet a p {
    padding: 0 25px 0 0;
    font-size: 16px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .075em
}
body.internship main #onnow .block .pamphlet a .pic img {
    width: 227px
}
body.internship main #onnow .block .pamphlet a:before {
    position: absolute;
    position: absolute;
    top: 0;
    right: 15px;
    bottom: 0;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: auto;
    content: "";
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: 1px solid #008ed2;
    border-right: 1px solid #008ed2
}
@media screen and (min-width:768px) {
    body.internship main #onnow .block .pamphlet a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.internship main #onnow .block .pamphlet a:hover {
        background: rgba(26, 107, 180, .1)
    }
}
body.internship main #onnow .btn {
    margin: 60px 0 0
}
body.internship main #onnow .btn a {
    display: -ms-flexbox;
    display: flex;
    width: 400px;
    height: 80px;
    margin: auto;
    border: 1px solid #1a6bb4;
    background: #1a6bb4;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.internship main #onnow .btn a p {
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    line-height: 1em;
    text-align: center;
    letter-spacing: .05em
}
body.internship main #onnow .btn a.cs {
    opacity: 1 !important;
    border: 1px solid #a5a5a5 !important;
    background: #a5a5a5 !important
}
@media screen and (min-width:768px) {
    body.internship main #onnow .btn a {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.internship main #onnow .btn a p {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.internship main #onnow .btn a:hover {
        background: #fff
    }
    body.internship main #onnow .btn a:hover p {
        color: #1a6bb4
    }
}
body.internship main #onnow .btn-cs {
    margin: 60px 0 0 0
}
body.internship main #onnow .btn-cs span {
    display: -ms-flexbox;
    display: flex;
    width: 400px;
    height: 80px;
    margin: auto;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    border: 1px solid #a5a5a5;
    background: #a5a5a5;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center
}
body.internship main #archive {
    margin: 140px 0 0;
    padding: 0 0 100px;
    background: #1e93d1
}
body.internship main #archive .h2 {
    margin: 0 0 100px;
    padding: 110px 0 0;
    text-align: center;
    border-right: 1px solid #fff;
    border-left: 1px solid #fff
}
body.internship main #archive .h2 h2 {
    color: #fff;
    font-size: 28px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .075em
}
body.internship main #archive .h4 h4 {
    color: #fff
}
body.internship main #archive .h4 h4:before {
    background: #fff
}
body.internship main #archive .boxes {
    margin: 60px 0 0
}
body.internship main #archive .boxes .box:nth-of-type(n+2) {
    margin: 40px 0 0
}
body.internship main #archive .accordion-btn {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: 80px;
    padding: 0 0 0 50px;
    background: #fff;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-pack: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start
}
body.internship main #archive .accordion-btn p {
    color: #1a6bb4;
    font-size: 20px;
    font-weight: 600;
    line-height: 1em;
    letter-spacing: .075em
}
body.internship main #archive .accordion-btn .icon {
    position: absolute;
    top: 0;
    right: 0;
    width: 80px;
    height: 80px;
    background: #000
}
body.internship main #archive .accordion-btn .icon:after, body.internship main #archive .accordion-btn .icon:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 26px;
    height: 2px;
    margin: auto;
    content: "";
    background: #fff
}
body.internship main #archive .accordion-btn .icon:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}
body.internship main #archive .accordion-btn.open .icon:after {
    display: none
}
@media screen and (min-width:768px) {
    body.internship main #archive .accordion-btn {
        transition: all .2s cubic-bezier(.39, .575, .565, 1)
    }
    body.internship main #archive .accordion-btn:hover {
        padding: 0 0 0 70px
    }
}
body.internship main #archive .accordion-body {
    padding: 60px 0 80px;
    background: #fff
}
body.internship main #archive .inside {
    margin-top: 0
}
body.internship main #archive .block:nth-of-type(n+2) {
    margin: 100px 0 0
}
@media only screen and (max-width:767px) {
    body.internship main {
        padding: 60px 0 0
    }
    body.internship main .banner img {
        height: 80px
    }
    body.internship main #archive .h3, body.internship main #onnow .h3 {
        padding: 0 50px
    }
    body.internship main #archive .h3 h3, body.internship main #onnow .h3 h3 {
        width: 100%
    }
    body.internship main #archive .h3 h3 span, body.internship main #onnow .h3 h3 span {
        font-size: 14px;
        line-height: 1em
    }
    body.internship main #archive .h4 h4, body.internship main #onnow .h4 h4 {
        font-size: 15px;
        line-height: 1em
    }
    body.internship main #archive .inside, body.internship main #onnow .inside {
        margin: 20px 0 0;
        padding: 0
    }
    body.internship main #archive .inside ul > li, body.internship main #onnow .inside ul > li {
        padding: 20px 0
    }
    body.internship main #archive .inside ul > li .td, body.internship main #archive .inside ul > li .th, body.internship main #archive .inside ul > li a, body.internship main #archive .inside ul > li ol > li, body.internship main #archive .inside ul > li p, body.internship main #onnow .inside ul > li .td, body.internship main #onnow .inside ul > li .th, body.internship main #onnow .inside ul > li a, body.internship main #onnow .inside ul > li ol > li, body.internship main #onnow .inside ul > li p {
        font-size: 13px;
        line-height: 22px;
        letter-spacing: 0
    }
    body.internship main #archive .inside ul > li p + ol, body.internship main #onnow .inside ul > li p + ol {
        margin: 5px 0 0
    }
    body.internship main #archive .inside ul > li ol + p, body.internship main #onnow .inside ul > li ol + p {
        margin: 15px 0 0
    }
    body.internship main #archive .inside ul > li .font--size12, body.internship main #archive .inside ul > li .font--size12 > *, body.internship main #onnow .inside ul > li .font--size12, body.internship main #onnow .inside ul > li .font--size12 > * {
        font-size: 11px;
        line-height: 18px;
        letter-spacing: 0
    }
    body.internship main #archive .inside ul > li .th, body.internship main #onnow .inside ul > li .th {
        width: 80px
    }
    body.internship main #archive .inside ul > li .th p, body.internship main #onnow .inside ul > li .th p {
        font-size: 13px;
        line-height: 18px;
        letter-spacing: 0
    }
    body.internship main #archive .inside ul > li .td, body.internship main #onnow .inside ul > li .td {
        width: calc(100% - 80px)
    }
    body.internship main #archive .inside ul > li .td .blue-txt, body.internship main #onnow .inside ul > li .td .blue-txt {
        color: #1a6bb4;
        font-size: 14px;
        font-weight: 600;
        line-height: 28px;
        letter-spacing: .05em
    }
    body.internship main #archive .inside ul > li .banner-app, body.internship main #onnow .inside ul > li .banner-app {
        margin: 15px 0
    }
    body.internship main #archive .inside ul > li .banner-app img, body.internship main #onnow .inside ul > li .banner-app img {
        width: 128px !important
    }
    body.internship main #archive .inside ul > li .banner-app .col:nth-of-type(1), body.internship main #onnow .inside ul > li .banner-app .col:nth-of-type(1) {
        width: 100%
    }
    body.internship main #archive .inside ul > li .banner-app .col:nth-of-type(2), body.internship main #onnow .inside ul > li .banner-app .col:nth-of-type(2) {
        width: 100%;
        margin: 15px 0 0
    }
    body.internship main #archive .inside .size--large, body.internship main #onnow .inside .size--large {
        font-size: 14px
    }
    body.internship main #archive .inside .size--large18, body.internship main #onnow .inside .size--large18 {
        font-size: 14px
    }
    body.internship main #archive .inside p + p, body.internship main #onnow .inside p + p {
        margin: 10px 0 0
    }
    body.internship main #archive .inside .txt-only, body.internship main #onnow .inside .txt-only {
        margin: 30px 0 0;
        padding: 20px 25px
    }
    body.internship main #archive .inside .txt-only + ul, body.internship main #onnow .inside .txt-only + ul {
        margin-top: 30px
    }
    body.internship main #archive .boxes, body.internship main #onnow .boxes {
        margin: 30px 0 0
    }
    body.internship main #archive .boxes .box:nth-of-type(n+2), body.internship main #onnow .boxes .box:nth-of-type(n+2) {
        margin: 40px 0 0
    }
    body.internship main #onnow {
        margin: 60px 0 0;
        padding: 0 30px
    }
    body.internship main #onnow .h2 {
        margin: 0 0 50px;
        padding: 30px 0 0
    }
    body.internship main #onnow .h2.involve-sttl {
        margin-bottom: 20px !important
    }
    body.internship main #onnow .h2.involve-sttl + .sttl {
        margin: 0 auto 50px
    }
    body.internship main #onnow .h2.involve-sttl + .sttl p {
        font-size: 13px;
        line-height: 24px
    }
    body.internship main #onnow .h2 h2 {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: 0
    }
    body.internship main #onnow .block:nth-of-type(n+2) {
        margin: 50px 0 0
    }
    body.internship main #onnow .block .pamphlet {
        margin: 25px 0 0;
        padding: 0 10px
    }
    body.internship main #onnow .block .pamphlet a {
        width: 100%;
        height: 115px;
        padding: 10px 35px 10px 20px
    }
    body.internship main #onnow .block .pamphlet a p {
        padding: 0 15px 0 0;
        font-size: 14px;
        line-height: 18px
    }
    body.internship main #onnow .block .pamphlet a .pic img {
        width: 80px
    }
    body.internship main #onnow .btn {
        margin: 40px 0 0
    }
    body.internship main #onnow .btn a {
        width: 250px;
        height: 60px
    }
    body.internship main #onnow .btn a p {
        font-size: 13px;
        letter-spacing: .025em
    }
    body.internship main #onnow .btn-cs {
        margin: 40px 0 0 0
    }
    body.internship main #onnow .btn-cs span {
        display: -ms-flexbox;
        display: flex;
        width: 250px;
        height: 60px;
        margin: auto;
        color: #fff;
        font-size: 13px;
        font-weight: 700;
        border: 1px solid #a5a5a5;
        background: #a5a5a5;
        align-items: center;
        -ms-flex-align: center
    }
    body.internship main #archive {
        margin: 70px 0 0;
        padding: 0 30px 60px
    }
    body.internship main #archive .h2 {
        margin: 0 0 60px;
        padding: 55px 0 0
    }
    body.internship main #archive .h2 h2 {
        font-size: 16px;
        line-height: 1em
    }
    body.internship main #archive .h4 h4 {
        color: #fff
    }
    body.internship main #archive .h4 h4:before {
        background: #fff
    }
    body.internship main #archive .boxes {
        margin: 30px 0 0
    }
    body.internship main #archive .boxes .box:nth-of-type(n+2) {
        margin: 20px 0 0
    }
    body.internship main #archive .accordion-btn {
        width: 100%;
        height: 40px;
        padding: 0 0 0 20px
    }
    body.internship main #archive .accordion-btn p {
        font-size: 14px;
        line-height: 1em
    }
    body.internship main #archive .accordion-btn .icon {
        width: 40px;
        height: 40px
    }
    body.internship main #archive .accordion-btn .icon:after, body.internship main #archive .accordion-btn .icon:before {
        width: 13px;
        height: 1px
    }
    body.internship main #archive .accordion-body {
        padding: 30px 20px 40px
    }
    body.internship main #archive .block:nth-of-type(n+2) {
        margin: 100px 0 0
    }
}
.upcoming_events {
    border-collapse: collapse;
    table-layout: fixed;
    width: 100%;
    background: #fff;
    border: none;
}
.upcoming_events th, .upcoming_events td {
    font-size: 14px;
    background: #fff;
    border: 1px solid #ccc;
    padding: 8px;
    vertical-align: middle;
    box-sizing: border-box;
    line-height: 1.5em
}
.upcoming_events th {
    font-weight: 700;
    text-align: left;
}
.upcoming_events thead th {
    color: #fff;
    background: #1a6bb4;
}
.upcoming_events tbody td:last-child {
    text-align: left;
}
.upcoming_events thead th:first-child {
    width: 40%;
}
.upcoming_events thead th:last-child {
    width: 30%;
}
@media screen and (max-width: 767px) {
    .upcoming_events thead {
        display: none;
    }
    .upcoming_events tr {
        background-color: unset;
    }
    .upcoming_events th, .ex_upcoming_events td {
        display: block;
        width: 100%;
        border: 0;
        border-bottom: 1px solid #ccc;
    }
    .upcoming_events tbody th {
        background: #1a6bb4;
        color: #fff;
        text-align: center;
    }
    .upcoming_events tbody tr td {
        display: flex;
        flex-direction: column;
        gap: 5px;
    }
    .upcoming_events tbody tr td::before {
        content: attr(data-label);
        width: fit-content;
        padding: 0.2em 1em;
        border-radius: 100vw;
        font-size: 12px;
        background: #eee;
    }
    .upcoming_events tbody td:last-child::before {
        content: attr(data-label);
        display: inline-block;
        margin-right: 10px;
    }
    .upcoming_events tbody td:last-child {
        display: flex;
        justify-content: space-between;
    }
}