@charset "UTF-8";

/* CSS Document */
html,body{min-width:450px;}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo,"HG明朝E", 'ＭＳ Ｐゴシック', 'MS PGothic',"游明朝", YuMincho, sans-serif;
    vertical-align: baseline;
}

body {
    -webkit-text-size-adjust: 100%;
    background: #FFF;
    max-width: 2000px;
    margin: 0 auto;
    word-break:break-all;
    /*word-wrap: break-word;
    overflow-wrap: break-word;*/
}
p{
    font-family:HG明朝E;
}
img {
    border: 0;
    vertical-align: text-bottom;
}
input[type="text"], input[type="submit"], input[type="button"] {
    -webkit-appearance: none;
    border-radius: 0;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
.hide, .hide-980, .hide-900, .smt, .icon-hide, .hide-400 {
    display: none;
}

/* specify the text decoration of anchors */
a {
    color:#0a88f3;
    text-decoration: none;
}

/* specify the coloring of form elements */
button,
input,
select,
textarea {
    background-color: transparent;
    color: inherit;
}
/* specify the list style of nav lists */
nav ol,
nav ul {
    list-style: none;
}

/* ----------------------------------------------------
    clearfix
---------------------------------------------------- */
.clearfix {
    zoom: 1; /* IE5.5～E7 */
}
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
    font-size: 0;
    line-height: 0;
}

.pc, img[src*="pc"]{display:block !important;}
.smt, img[src*="smt"]{display:none !important;}

html.frozen-1 #contents{
    width:100%;
    min-width:100%;
    box-sizing: border-box;
}

#contents * {
    box-sizing: border-box;
}


/* ----------------------------------------------------
    Base Style
---------------------------------------------------- */
body {
    min-width: 950px; /* 950px以下の際に横スクロールバー出現 */
}
header {
    width: 1200px;
    height: 50px;
    text-align: left;
}


/* ----------------------------------------------------
    head Style
---------------------------------------------------- */
.header_logo {
    height: 60px;
    padding: 8px 0 0 10px;
}
.mv {
    height: 620px;
    background: url(../images/bg.png)center 0 no-repeat;
}
.wrap {
    background-color: #f2f2f2;
    text-align: center !important;
    margin: 0 auto !important;
}
.pt_24 {
    font-size: 24px;
    color: #fff;
    line-height: 1.8;
    text-align: center;
    padding-top: 100px;
}
.pt_24_ye{
    font-size: 24px;
    color: #fff;
    line-height: 1.8;
    text-align: center;
    padding-top: 100px;
}
.yellow{
    color:#FBD101;
    font-family:HG明朝E;
    font-size: 34px;
}
/* ----------------------------------------------------
    body Style
---------------------------------------------------- */
.wrap_inner {
    width: 1000px;
    margin: 0 auto;
}
.content-box_back {
    background-color: #f2f2f2;
}
.block01 p {
    padding-top:80px;
    color: #fff;
    font-size: 26px;
    line-height: 1.8;
}
.block01 p:first-child {
    padding-top:100px;
}
.block01 p:nth-child(2) {
    font-size: 40px;
    line-height: 1.5;
}
.block01 p:last-child {
    padding-bottom:100px;
}

.block01 p span {
    font-size: 40px;
    color:#FBD101;
    font-family:HG明朝E;
}
.w_26,
.w_24_bla,
.w_26_wh,
.w_14, {
    font-family:HG明朝E;
}
.w_26 {
    font-size: 26px;
    color:#100d89;
    line-height: 1.3;
}
.w_24_bla,
.w_26_wh {
    font-size: 24px;
    line-height: 1.8;
}
.w_24_bla {
    color:#000;
}
.w_26_wh {
    padding-top: 100px;
}
.w_14 {
    font-size: 14px;
    color:#fff;
}
.big {
    font-size: 40px;
    color:#100d89;
    font-family:HG明朝E;
}
.posi_01 {
    padding: 10px 0 0 62px;
}
.posi_02 {
    padding: 90px 0 0 35px;
}
.posi_03 {
    padding: 90px 0 0;
}
.bn_shigoto {
    width: 154px !important;
    margin: -120px 0 0 790px !important;
}
.square,
.square02,
.square03,
.square04 {
    width: 960px;
    background: #fff;
    position: relative;
    box-shadow:0px 0px 7px 3px #e9e9e9;
}
.square {
    height: 375px;
    margin: 80px auto 0; 
}
.square02 {
    height: 900px;
    margin: 120px auto 0;
}
.square03 {
    height: 830px;
    margin: 120px auto 100px;
}
.square04 {
    height: 300px;
    margin: 120px auto 100px;
    padding: 80px 20px 70px;
    box-sizing: border-box;
}
.square-box_icon:before,
.square-box02_icon:before,
.square-box03_icon:before,
.square-box04_icon:before {
    position: absolute;
    display: block;
    background-repeat: no-repeat;
    content: "";
}
.square-box_icon:before {
    top: -50px;
    left: -20px;
    width: 131px;
    height: 131px;
}
.square-box02_icon:before {
    top: -30px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 500px;
    height: 60px;
}
.square-box03_icon:before {
    top: -30px;
    left: 245px;
    width: 500px;
    height: 60px;
}
.square-box04_icon:before {
    top: -30px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 500px;
    height: 60px;
}

.square-box_icon01:before {
    background-image: url(../images/parts_01.png);
}
.square-box02_icon01:before {
    background-image: url(../images/parts_04.png);
}
.square-box03_icon01:before {
    background-image: url(../images/parts_05.png);
}
.square-box04_icon01:before {
    background-image: url(../images/parts_06.png);
}

.square-box_icon:after {
    position: absolute;
    top: -20px;
    right: 0;
    left: 0;
    margin: 0 auto;
    display: block;
    width: 120px;
    height: 45px;
    background-repeat: no-repeat;
    content: "";
}
.square-box_icon03:after {
    background-image: url(../images/parts_03.png);
}
.triangle {
    width: 0px;
    height: 0px;
    background: transparent;
    border-bottom: 150px solid black;
    border-left: 100px solid transparent;
    border-right: 100px solid transparent;
}
.title-border-blu,
.title-border-bla{
    text-align: center;
}
.title-border-blu i,
.title-border-bla i {
    display: block;
    width: 50px;
    padding-top: 50px;
}
.title-border-blu i {
    border-top: 1px solid #100d89;
    margin: 20px auto 0;
}
.title-border-bla i {
    border-top: 1px solid #000;
    margin: 100px auto 0;
}
.block01 {
    background-color: #1a155e;
    text-align: center !important;
    margin: 0 auto !important;
    height: 665px;;
}
.square04 ul li {
    display: inline-block;
}
.square04 ul li + li {
    margin: 0 0 20px 20px;
}
.square04 ul {
    font-size: 0;
}
.toptop {
    position: fixed;
    bottom: 10px;
    right: 10px;
    padding: 10px 10px;
}
.fixed_btn {
    position: fixed;
    bottom: 10px;
    right: 10px;
    padding: 10px 10px;
}

.footer {
    background-color: #1a155e;
    text-align: center !important;
    margin: 0 auto !important;
    height: 80px;
    padding-top: 65px;
}

.main-container *{padding:10px;background:#aaa; border:dashed 5px #000;}
.main-container * + *{margin-top:20px;}


.main-footer{position:-webkit-sticky; position:sticky; bottom:0; border-color:red;}