@charset "UTF-8";
/* CSS Document */



/*////////////////////////////////
reset
////////////////////////////////*/
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

body {
    line-height: 1;
}

html[lang="ja"] .en,
html[lang="ja"] .zh-Hans,
html[lang="en"] .ja,
html[lang="en"] .zh-Hans,
html[lang="zh-Hans"] .ja,
html[lang="zh-Hans"] .en {
    display: none !important;
}


article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

.show {
    display: block !important;
}

.hide {
    display: none !important;
}

nav ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

/* change colours to suit your needs */
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}

/* change colours to suit your needs */
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

input,
select {
    vertical-align: middle;
}


/*////////////////////////////////
 common
////////////////////////////////*/

html {}

body {
    background: #fff !important;
    box-sizing: border-box;
    margin: 0;
    font-family: "Noto Sans Japanese", "NotoSansCJKjp-Light", "NotoSansCJKjp-Regular",
        "NotoSansCJKjp-Bold",
        "Noto Sans",
        "Noto Sans CJK JP",
        "Noto Sans",
        "Helvetica",
        "Arial",
        "メイリオ",
        "Meiryo",
        sans-serif;
    /*    width: 100vw;*/
}

a:hover {
    opacity: 0.5;
}

p {
    font-size: 16px;
    line-height: 1.4;
    letter-spacing: 0.05em;
}

:focus {
    outline: none;
}

.text-s {
    font-size: 12px;
}

@font-face {
    font-family: 'NotoSansCJKjp-Light';
    font-style: normal;
    font-weight: 300;
    src: url('../fonts/NotoSansJP/NotoSansCJKjp-Light.woff') format('woff');
    font-display: swap;
}

@font-face {
    font-family: 'NotoSansCJKjp-Regular';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/NotoSansJP/NotoSansCJKjp-Regular.woff') format('woff');
    font-display: swap;
}

@font-face {
    font-family: 'NotoSansCJKjp-Medium';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/NotoSansJP/NotoSansCJKjp-Medium.woff') format('woff');
    font-display: swap;
}

@font-face {
    font-family: 'NotoSansCJKjp-Bold';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/NotoSansJP/NotoSansCJKjp-Bold.woff') format('woff');
    font-display: swap;
}

@font-face {
    font-family: 'NotoSansCJKjp-Black';
    font-style: normal;
    font-weight: 900;
    src: url('../fonts/NotoSansJP/NotoSansCJKjp-Black.woff') format('woff');
    font-display: swap;
}

.atrament_sb {
    font-family: "atrament-web", sans-serif;
    font-weight: 600;
    font-style: normal;
}

.black {
    font-weight: 900;
    font-family: "NotoSansCJKjp-Black", sans-serif;
    /* src: url('../fonts/NotoSansJP/NotoSerifJP-Black.woff') format('woff'); */
}

.bold {
    font-weight: 700;
    font-family: "NotoSansCJKjp-Bold", sans-serif;
    /* src: url("../fonts/NotoSansJP/NotoSerifJP-Bold.woff") format('woff'); */
}

.medium {
    font-weight: 500;
    font-family: "NotoSansCJKjp-Medium", sans-serif;
    /* src: url('../fonts/NotoSansJP/NotoSerifJP-Medium.woff') format('woff'); */
}

.regular {
    font-weight: 400;
    font-family: "NotoSansCJKjp-Regular", sans-serif;
    /* src: url('../fonts/NotoSansJP/NotoSerifJP-Regular.woff') format('woff'); */
}

.demilight {
    font-weight: 350;
    font-family: "NotoSansCJKjp-DemiLight", sans-serif;
    /* src: url('../fonts/NotoSansJP/NotoSerifJP-Regular.woff') format('woff'); */
}

.light {
    font-weight: 300;
    font-family: "NotoSansCJKjp-Light", sans-serif;
    /* src: url('../fonts/NotoSansJP/NotoSansCJKjp-Light.woff') format('woff'); */
}

.bold_en {
    font-family: "brandon-grotesque", sans-serif;
    font-weight: 700;
    font-style: normal;
}




/*////////////////////////////////
header
////////////////////////////////*/
#top.header {
    position: fixed;
    width: 100%;
    top: 0;
}

.top_vimeo_video {
    padding: 65% 0 0 0;
    position: relative;
}


.header {
    background: #fff;
    position: relative;
    z-index: 100;
    border-bottom: 2px solid #d8d8d9;
}

.header .header_top_menu {
    max-width: 75%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1% 0;
}

.header .header_top_menu .logo {
    width: 20%;
    margin-right: 4em;
    padding-top: 0.5em;
}

.header .header_top_menu .contact_logo {
    width: 17%;
    margin-right: 20px;
}

.header .header_top_menu .logo img {
    vertical-align: bottom;
}

.header .header_top_menu .g-nav {
    width: 75%;
    /* width: 59%; */

}

.header .header_top_menu .g-nav .nav_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.header .header_top_menu .g-nav li {
    margin-left: 4%;
}

.header .header_top_menu .g-nav li:first-child {
    margin-left: 0;
}

.header .header_top_menu .g-nav li a {
    display: inline-block;
    font-size: 14px;
}

.header .header_top_menu .lang {
    width: 134px;

}


.lang-menue-active {
    opacity: 1 !important;
}


/*////////////////////////////////
main
////////////////////////////////*/

.pc {
    display: block !important;
}

.sp {
    display: none !important;
}

.main {}

.kv_area {
    background: url(../img/bg_movie.jpg)no-repeat;
    padding: 25em 0 35em;
    margin-top: -77px;
    background-size: cover;
}

.kv_area .tit {
    font-size: 60px;
    text-align: center;
}

footer {
    background: #80a6b2;
    position: relative;
    z-index: 4;

}

#foot_wrapper {
    clear: both;
}

#foot {
    max-width: 75%;
    margin: 0 auto;
    padding: 5em 0 2em;
}

.foot {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    margin-bottom: 4em;
}

.foot .foot_sns_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    width: 14%;
}

.btn-twitter {
    background: #00ACEE;
    color: #fff;
    border-width: 0;
    border-style: solid;
    border-color: #0075a2;
    padding: 10px 16px;
    font-size: 18px;
    line-height: 1.3333333;
    border-radius: 6px;
}

.btn-twitter:link,
.btn-twitter:visited {
    color: #fff;
}

.btn-twitter:active,
.btn-twitter:hover {
    background: #0075a2;
    color: #fff;

}



.foot .foot_sns_area .footer_logo {
    width: 100%;
}

.foot .foot_sns_area .l-link_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 62%;
    margin: 1.5em 0;
    align-items: center;
}

.foot .foot_sns_area .l-link_area li {
    margin-right: 10%;
}

.foot .foot_sns_area .l-link_area li:last-child {
    margin-right: 0;
}

.foot .foot_sns_area .used_link {
    width: 100%;
}

.foot .foot_sns_area .used_link li {
    margin-bottom: 6%;
}

.foot .foot_sns_area .used_link li:last-child {
    margin-bottom: 0;
}

.foot .foot_sns_area .used_link li a {
    color: #fff;
    font-size: 14px;
}

.foot .footer_nav .footbox {
    width: 15%;
}

.foot .footer_nav .footbox:first-child {
    margin-left: 0;
    width: 20%;
}

.foot .footer_nav .footbox:last-child .blank a {
    padding-right: 18%;
}

.foot .footer_nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    justify-content: space-between;
}

.foot .footer_nav .footbox p {
    color: #fff;
    font-size: 18px;
    margin-bottom: 1.5em;
}

.foot .footer_nav .footbox li {
    margin-bottom: 12%;
}

.foot .footer_nav .footbox li:last-child {
    margin-bottom: 0;
}

.foot .footer_nav .footbox .blank a {
    position: relative;
    padding-right: 13%;
    line-height: 1.4;
}

.foot .footer_nav .footbox .blank a:after {
    content: "";
    width: 12px;
    height: 14px;
    background: url(../img/icon_blank_link.png)no-repeat center right;
    position: absolute;
    right: 0;
    bottom: 0.15em;
}

.foot .footer_nav .footbox a {
    font-size: 14px;
    color: #fff;
}

.coppy_right {
    font-size: 12px;
    color: #fff;
    text-align: center;
    padding-bottom: 3em;
}

.tit_en {
    font-size: 42px;
    color: #00a9e0;
    letter-spacing: 0.09em;
}

.sub_jp {
    font-size: 18px;
    letter-spacing: 0.09em;
    margin-top: 0.6em;
}

.visionarea {
    text-align: center;
    background: url(../img/bg_vision.png)no-repeat center;
    padding: 20em 0 0em;
    /* margin-top: 4em; */
}

.visionarea .inner {
    top: -10em;
    position: relative;
    max-width: 1500px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.visionarea .titbox {
    text-align: left;
}

.visionarea img {
    /* position: relative;
    top: 6em; */
    width: 42%;
}

.visionarea .area {
    width: 54%;
    display: inline-block;
}

.visionarea .txt {
    text-align: left;
    margin: 4em 0 0;
    font-size: 18px;
    line-height: 1.6;
}

.product {
    background: url(../img/bg_product.png)no-repeat center;
    /* height: 105em; */
    background-position: 100% 100%;
    padding: 10em 0 12em;
}

.product .inner {
    max-width: 1500px;
    margin: 0 auto;
}

.product .cubismbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: end;
}

.product .cubismbox .cubismtxt {
    max-width: 500px;
    margin: 0 auto;
}

.product .cubismbox .subinner {
    width: 50%;
    display: inline-block;
    background: #f08b5e;
    position: relative;
    top: 6em;
    border-radius: 20px 0 20px 20px;
    padding: 3em 2em;
}

.product .cubismbox .subinner .full_w {
    margin: 0;
    height: 60px;
}

.product .cubismbox .subinner .full_w .link_btn {
    height: 60px;
    border: none;

    background: #fff;
}

.product .cubismbox .subinner .full_w .link_box {
    right: 50%;
    margin-right: -200px;
}

.product .cubismbox .subinner .full_w .link_btn_eff {
    height: 60px;
    background: #ef8b5e;
    color: #fff;
}

.product .cubismbox .subinner .full_w .link_btn a span {
    background: url(../img/icon_blank_link_hover.png)no-repeat center right;
    background-position: 7.8em 0.9em;
    background-size: 8%;
    padding-right: 1.5em;
    display: inline-block;
    width: auto;
}

.product .cubismbox .subinner .full_w .link_btn:hover a span {
    background: url(../img/icon_blank_link.png)no-repeat center right;
    background-position: 7.8em 0.9em;
    background-size: 8%;
}

.product .cubismbox .subinner .full_w .link_btn_eff span {
    height: 60px;
}

.product .cubismbox .subinner .full_w .link_btn a {
    color: #ef8b5e;
    background-image: none;
    padding: 0.3em 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    letter-spacing: 0.2em;
}

.product .cubismbox .subinner .full_w .link_btn:hover a {
    color: #fff;
}

.product .cubismbox .imgbox {
    width: 50%;
}

.product .cubismbox .imgbox img {
    border-radius: 20px 20px 20px 0;
}

.product .cubismbox .subinner .tit {
    font-size: 34px;
    color: #fff;
}

.product .cubismbox .subinner .txt {
    color: #fff;
    font-size: 16px;
    margin: 2em 0 3em;
    line-height: 1.6;
}

.product .cubismbox .subinner a {
    color: #fff;
    font-size: 20px;
    border: 2px solid #fff;
    width: 100%;
    display: block;
    text-align: center;
    padding: 0.8em 0;
    border-radius: 10px;
    letter-spacing: 0.3em;
}

.product .cubismbox .subinner a span {
    background: url(../img/icon_blank_link.png)no-repeat center right;
    padding-right: 1em;
    padding: 0;
}

.product .inner .product_list_area {
    margin-top: 10em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 5%;
    max-width: 1500px;
    margin: 12em auto 0;
}

.product .inner .product_list_area > div:nth-of-type(n+4) {
    margin-top: 5%;
}

.product .inner .product_list_area .box {
    color: #fff;
    width: 30%;
    border-radius: 20px;
    box-shadow: 0px 4px 23px 10px #0000003d;
}

.product .inner .product_list_area .box_f {
    background: #ec95b2;
}

.product .inner .product_list_area .box_s {
    background: #858585;
}

.product .inner .product_list_area .box_t {
    background: #8cc476;
}

.product .inner .product_list_area .box_nl {
    background: #6A48F3;
}

.product .inner .product_list_area .box_lj {
    background: #f93866;
}

.product .inner .product_list_area .box .con {
    padding: 8% 6%;
    border-radius: 0 0 20px 20px;
}

.product .inner .product_list_area .box .con dt {
    font-size: 20px;
    letter-spacing: 0.04em;
    line-height: 1.4;
}

.product .inner .product_list_area .box .con dd {
    font-size: 14px;
    padding: 1em 0 0;
    line-height: 1.6;
}

.scale .imgwrap {
    overflow: hidden;
    border-radius: 20px 20px 0 0;
}

.scale .imgeff {
    position: relative;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition-duration: 0.3s;
}

.scale .imgeff:before {
    /* content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: radial-gradient(rgba(255, 255, 255, 0.1), rgb(255, 255, 255));
    transition-duration: 0.3s;
    opacity: 0; */
}

.scale:hover {
    overflow: hidden;
}

.scale:hover .imgeff {
    transform: scale(1.1);
}

.scale:hover .imgeff:before {
    opacity: 1;
}

.showcase {
    text-align: center;
    max-width: 1500px;
    margin: 0 auto;
}

.showcase .showbox {
    margin: 5em 0 0;
}

.showcase .showbox .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.showcase .showbox .list li {
    width: 24%;
    margin-bottom: 5em;
}

.showcase .showbox .list li span {
    border: 1px solid #000;
    display: inline-block;
}

.showcase .showbox .list li img {
    vertical-align: bottom;
}

.showcase .showbox .list li .tit {
    font-size: 16px;
    margin: 1em 0;
}

.showcase .showbox .list li .txt {
    font-size: 14px;
    margin: 0 auto;
    color: #8c8c8c;
}

.news {
    background: url(../img/bg_news.png)no-repeat center;
    height: 75em;
}

.news .inner {
    max-width: 1500px;
    margin: 0 auto;
}

.news .inner .titbox {
    padding-top: 10em;
}

.news .inner .inner_conts {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 4em;
}

.news .post_choice {
    width: 68%;
}

.news .twbox {
    width: 28%;
}

.news_panel {
    display: none;
}

.news .post_choice .choice_list .is-active span {
    border-bottom: 2px solid #000;
    opacity: 1;
    font-weight: 700;
    font-family: "NotoSansCJKjp-Bold", sans-serif;
    padding-bottom: 6px;
    display: inline-block
}

.news .post_choice .choice_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    margin-bottom: 3em;
}

.news .post_choice .choice_list li {
    margin-right: 2em;
    padding-right: 2em;
    position: relative;
}

.news .post_choice .choice_list li span {
    font-size: 18px;
    display: block;
    line-height: 1;
    padding-bottom: 8px;
    background: none;
    transition: none;
    cursor: pointer;
}

.news .post_choice .choice_list li:last-child {
    margin-right: 0;
    padding-right: 0;
}

.news .post_choice .choice_list li:after {
    content: "";
    background: #000;
    position: absolute;
    width: 2px;
    height: 18px;
    right: 0;
    top: 50%;
    margin-top: -9px;
}

.news .post_choice .choice_list li:last-child:after {
    display: none;
}

.news .main_post .post_list li {
    margin-bottom: 1.5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    border-bottom: 2px solid #bfbfbf;
    padding-bottom: 1.5em;
}

.news .main_post .post_list li:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.news .main_post .post_list li .icon_post {
    font-size: 14px;
    border-radius: 20px;
    padding: 0.8em 0;
    display: inline-block;
    width: 25%;
    text-align: center;
    color: #fff;
}

.news .main_post .post_list li .icon_color1 {
    background: #22a038;
}

.news .main_post .post_list li .icon_color2 {
    background: #e65651;
}

.news .main_post .post_list li .icon_color3 {
    background: #0068b7;
}

.news .main_post .post_list li .icon_color4 {
    background: #f19149;
}

.news .main_post .post_list li .data {
    margin: 0 2em;
    font-size: 14px;
    text-align: center;
}

.news .main_post .post_list li p {
    font-size: 18px;
    width: 100%;
    display: inline-block;
    line-height: 1.7;
}

.news .main_post .more_link {
    text-align: right;
    margin-top: 5em;
}

.news .main_post .more_link a {
    font-size: 22px;
    border-bottom: 1px solid #000;
    padding-bottom: 0.3em;
}

.recruit {
    max-width: 1500px;
    margin: 0 auto;
}

.recruit .titbox {
    text-align: center;
}

.recruit .titbox.entrytit {
    padding: 4em 0 1em;
}

.recruit .sub_txt {
    width: 74%;
    margin: 2em auto 4em;
    line-height: 1.8;
    font-size: 18px;
}

.recruit .bnr_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
}

.recruit .bnr_list li {
    width: 48%;
    border-radius: 10px;
    box-shadow: 0px 2px 13px 3px #0000003d;
}

.recruit .bnr_list li.box .box_tit {
    background: #b6dae5;
    text-align: center;
    padding: 1.8em 0;
    border-radius: 10px 10px 0 0;
}

.recruit .bnr_list li.box .box_tit .bold_en {
    color: #fff;
    font-weight: 900;
    font-size: 18px;
    letter-spacing: 0.3em;
}

.recruit .bnr_list li.box .box_tit > p {
    font-size: 20px;
    letter-spacing: 0.14em;
    padding-top: 0.3em;
}

.recruit .bnr_list li.box.scale .imgeff,
.recruit .bnr_list li.box.scale .imgeff:before {
    height: 100%;
}

.recruit .bnr_list li.box.scale img {
    vertical-align: bottom;
}

.recruit .bnr_list li.box.scale .imgwrap {
    border-radius: 0 0 10px 10px;
    ;
}

.recruit .subbox {
    max-width: 75%;
    margin: 7em auto;
    position: relative;
}

.recruit .subbox .tit {
    color: #fff;
    background: #000;
    text-align: center;
    font-size: 20px;
    padding: 0.4em 0;
    width: 40%;
    margin: 0 auto;
    position: relative;
}

.recruit .subbox .border {
    border: 1px solid #000;
    padding: 2em 3em;
    position: relative;
    z-index: 10;
    background: #fff;
}

.recruit .subbox:before {
    content: "";
    width: 214px;
    height: 217px;
    position: absolute;
    background: url(../img/touch04.gif)no-repeat center;
    top: -4.4em;
    right: 6em;
    background-size: 100%;
    transform: rotate(10deg);
}

.recruit .subbox .border .list li {
    border-bottom: 1px solid #000;
    padding-bottom: 2em;
    margin-bottom: 2em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
}

.recruit .subbox .border .list li:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.recruit .subbox .border .list li .inner_txt a {
    font-size: 18px;
    line-height: 1.5;
}

.recruit .subbox .border .list li .inner_txt {
    width: 100%;
}

.recruit .subbox .border .list li .date {
    font-size: 18px;
    /* width: 16%; */
    display: inline-block;
}

.recruit .subbox .border .list li .icon {
    font-size: 16px;
    border-radius: 8px;
    width: 60%;
    text-align: center;
    margin: 0 2em;
    padding: 0.5em 2%;
}

.recruit .subbox .border .list li .icon_color1 {
    background: #6ec9f5;
}

.recruit .subbox .border .list li .icon_color2 {
    background: #f08b5e;
}

.recruit .link_btn {
    text-align: center;
    position: relative;
    z-index: 10;
    ;
}

.recruit .link_btn:before {
    content: "";
    width: 100px;
    height: 100px;
    position: absolute;
    background: url(../img/buruburu.gif)no-repeat center;
    top: -3.4em;
    left: 50%;
    margin-left: -12em;
    background-size: 100%;
    transform: rotate(-12deg);
}

.recruit .Introductionbox {
    margin: 5em 0 6em;
}

.recruit .Introductionbox #acnav {
    background: #b6dae5;
    border-radius: 10px;
    padding: 1em 0.5em;
    margin-bottom: 0.5em;
}

.recruit .Introductionbox .tab_tit {
    font-size: 18px;
    position: relative;
    padding: 1em 0 1em 1em;
    cursor: pointer;
}

.recruit .Introductionbox .tab_tit:after {
    content: "";
    width: 40px;
    height: 40px;
    position: absolute;
    background: url(../img/icon_op.png)no-repeat center right;
    right: 1em;
    top: 50%;
    margin-top: -20px;
}

.recruit .Introductionbox .tab_tit.acopen:after {
    background: url(../img/icon_cl.png)no-repeat center right;
}

.recruit .Introductionbox .tab_cont {
    display: none;
    background: #fff;
    margin-top: 1em;
    padding: 2em 1.8em;
}

.recruit .Introductionbox .tab_cont ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.recruit .Introductionbox .tab_cont li {
    width: 48%;
    margin-bottom: 1.5em;
}

.recruit .Introductionbox .tab_cont li:nth-last-child(-n+2) {
    margin-bottom: 0;
}

/* .recruit .Introductionbox .tab_cont li:nth-child(even) {
    padding-left: 2em;
} */
.recruit .Introductionbox .tab_cont li a .icon {
    display: inline-block;
    padding: 6px 12px;
    font-size: 12px;
    vertical-align: middle;
    border-radius: 4px;
    margin: 0 0 0 8px;
    color: #fff;
}

.recruit .Introductionbox .tab_cont li a .icon_c1,
.careertit .shoucase_icon li.icon_c1 {
    background: #00a9e0;
}

.recruit .Introductionbox .tab_cont li a .icon_c2,
.careertit .shoucase_icon li.icon_c2 {
    background: #22a038;
}

.recruit .Introductionbox .tab_cont li a .icon_c3,
.careertit .shoucase_icon li.icon_c3 {
    background: #f19149;
}

.recruit .Introductionbox .tab_cont li a .icon_c4,
.careertit .shoucase_icon li.icon_c4 {
    background: #eb6877;
}

.recruit .Introductionbox .tab_cont li a {
    display: inline-block;
    line-height: 1.5;
    letter-spacing: 0.001em;
}

.recruit .full_w .link_box,
.showcase .full_w .link_box {
    position: relative;
    margin: 0 auto;
}

.showcase .full_w {
    margin: 2em 0 0;
}

.recruit .full_w,
.showcase .full_w {
    position: relative;
}

.recruit .full_w:before {
    content: "";
    width: 100px;
    height: 100px;
    position: absolute;
    background: url(../img/buruburu.gif)no-repeat center;
    top: -3.4em;
    left: 50%;
    margin-left: -12em;
    background-size: 100%;
    transform: rotate(-12deg);
}

.recruit .full_w :before {
    display: none;
}

.recruit.sec .full_w .link_btn a,
.sec.showcase .full_w .link_btn a {
    justify-content: center;
    background-image: none;
}

.recruit.sec .full_w .link_btn a span {
    width: auto;
    background: url(../img/link_arrow.png)no-repeat center right;
    padding-right: 5.1em;
    padding-left: 0;
    background-position: 8em;
    background-size: initial;
}

.recruit.sec .full_w .link_btn:hover a span {
    background: url(../img/hover_link_arrow.png)no-repeat center right;
    background-position: 8em;
}

.letter {
    max-height: 67em;
    position: relative;
    z-index: 2;
}

.letter .bg_letter {
    background: url(../img/bg_letter.png)no-repeat center;
    height: 80em;
    position: relative;
    top: -11em;
}

.letter .bg_letter .conts {
    text-align: center;
    padding-top: 30em;
}

.letter .bg_letter .conts .txt {
    margin: 3em 0 5em;
    line-height: 1.8;
}

.letter .bg_letter .conts .letter_link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    max-width: 540px;
    margin: 0 auto 5em;
    justify-content: space-around;
}

.letter .bg_letter .conts .letter_link span {
    display: inline-block;
    margin-top: 1.5em;
}

.letter .bg_letter .conts .mailform {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 860px;
    margin: 0 auto;
}

.letter .bg_letter .conts .mailform .inputarea {
    width: 100%;
    margin-right: 0.4em;
    border: 1px solid #000;
    padding: 0 1em;
}

.letter .bg_letter .conts .mailform .inputarea::placeholder {
    color: #c4c4c4;
}

.letter .bg_letter .conts .mailform form {
    width: 20%;
}

.letter .bg_letter .conts .mailform form input {
    width: 100%;
    background: #00a9e0;
    color: #fff;
    padding: 1em;
    border: none;
    box-shadow: 0px 6px 18px 0px #00000040;
    border: 2px solid #00a9e0;
    cursor: pointer;
}

.letter .bg_letter .conts .mailform form input:hover {
    color: #00a9e0;
    background: #e0edf3;
    border: 2px solid #00a9e0;
}

.foot .foot_rightbox {
    width: 80%;
}

.globalMenuSp,
.navToggle {
    display: none;
}

.conts_width {
    max-width: 75%;
    margin: 0 auto;
}

.box_link {
    position: relative;
    z-index: 1;
}

.box_link a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent: -999px;
    z-index: 2;
}

.relative {
    position: relative;
}

.full_w {
    margin: 6em 0 0;
    position: relative;
    height: 80px;
}

.full_w .link_box {
    position: absolute;
    right: 0;
    max-width: 400px;
    min-width: 200px;
    width: 400px;
}

.full_w .link_btn {
    width: 100%;
    height: 80px;
    border: 2px solid #00a9e0;
    float: left;
    text-align: center;
    cursor: pointer;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    border-radius: 10px;
    /* background: #fff; */
    background: #00a9e0;
    box-shadow: 4px 6px 13px 3px #0000003d;
}

.full_w .link_btn a {
    font-family: arial;
    font-size: 18px;
    /* color:#00a9e0; */
    color: #fff;
    text-decoration: none;
    line-height: 50px;
    transition: all .5s ease;
    transition: all .5s ease;
    z-index: 2;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 100%;
    /* background-image: url(../img/hover_link_arrow.png); */
    background-image: url(../img/link_arrow.png);
    background-repeat: no-repeat;
    background-position: 16em;
    width: 100%;

}

.full_w .link_btn a span {
    padding-left: 3em;
}

.full_w .link_btn_eff {
    width: 400px;
    height: 80px;
    left: -400px;
    /* background: #00a9e0; */
    background: #fff;
    position: absolute;
    transition: all .5s ease;
    z-index: 2;

}

.full_w .link_btn_eff span {
    position: relative;
    transition: all .5s ease;
    width: 400px;
    height: 80px;
    z-index: 10;
    display: block;
}

.full_w .link_btn:hover .link_btn_eff span:after {
    content: "";
    width: 86px;
    height: 14px;
    position: absolute;
    /* background-image: url(../img/link_arrow.png); */
    background-image: url(../img/hover_link_arrow.png);
    background-repeat: no-repeat;
    background-position: 18em;
    z-index: 11;
    right: 0;
}

.full_w .link_btn:hover .link_btn_eff {
    left: 0;
}

.full_w .link_btn:hover a {
    /* color:#fff; */
    color: #00a9e0;
    opacity: 1;
}

.full_w .link_btn a:hover {
    opacity: 1;
    /* background-image: url(../img/link_arrow.png); */
    background-image: url(../img/hover_link_arrow.png);
    background-repeat: no-repeat;
    /* background-position: 16em; */
}

.visionarea img.sp_vision {
    display: none;
}

#wrapper {
    display: none;
}


/* 下層 */

/* 下層header */
.header_detail {
    background: #b6dae5;
}


.header_detail .titbox {
    text-align: center;
    padding-bottom: 2%;
}

.header_detail .titbox .sub_tit {
    color: #fff;
    padding-top: 1em;
}

.header_detail .pc_navToggle {
    display: block;
    position: relative;
}

.header_detail .pc_navToggle .cl {
    display: none;
}

.header_detail .left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    align-items: center;
}

.header_detail .contact_left {
    width: 83%;
    justify-content: flex-end;
}

.header.header_detail .header_top_menu {
    padding: 0
}

.header_detail .left .lang {
    margin-right: 1.5em;
}

.header_detail .contact_left .lang {
    margin-right: auto;
}

.header_detail .g-nav {
    display: none;
}

.header_detail .g-nav.active {
    display: block;
}

.header_detail .pc_navToggle .g-nav {
    position: absolute;
    top: 85px;
    right: 0;
    width: 300px;
    background: #535353;
    /* padding: 3em 4em; */
    box-shadow: 0px 0px 16px 8px #00000017;
    z-index: -10;
}

.header_detail .pc_navToggle .g-nav .nav_list {
    flex-wrap: wrap;
    margin-bottom: 2em;
}

.header_detail .pc_navToggle .g-nav .nav_list li {
    width: 100%;
    margin: 0;
}

.header_detail .pc_navToggle .g-nav .nav_list li a {
    color: #fff;
    font-size: 16px;
    width: 100%;
    padding: 2em 2em 1em;
}

.header_detail .pc_navToggle .g-nav .nav_list li:last-child a {
    padding-bottom: 1em;
}

.header_detail .img_btn {
    /* width: 110px;
    height: 110px; */
    width: 78px;
    height: 86px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 1.0s;
    padding-top: 1em;
}

.header_detail .img_btn.bg {
    background: #000;
}

.header_detail .img_btn .op.on {
    display: block
}

.header_detail .img_btn .cl.on {
    display: block
}

.header_detail .l-link_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0em 4em 3em;
}

.header_detail .header_top_menu .lang {
    padding-top: 0.5em;
}




.bg_detaile {
    background: url(../img/web_background.png)no-repeat center center;
    background-size: cover;
    background-position: 0 6em;
}

.nav_detaile {
    background: #e0edf3;
}

.nav_detaile .list {
    padding: 2em 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    max-width: 75%;
    margin: 0 auto;
}

.nav_detaile li:last-child {
    margin-right: 0;
}

.nav_detaile li a {
    font-size: 16px;
    transition: none;
}

.nav_detaile li a:hover {
    color: #3678ba;
}

.nav_detaile li.current a {
    font-weight: 700;
    font-family: "NotoSansCJKjp-Bold", sans-serif;
    border-bottom: 1px solid #000;
    padding-bottom: 2px;
}

.nav_detaile li a:hover {
    opacity: 1;
}

.f14 {
    font-size: 14px;
}

.other .privacytxt {
    line-height: 1.8;
    letter-spacing: 0.09em;
    margin-bottom: 0.4em;

}

.other .mgb2 {
    margin-bottom: 2em;
}

.pd_tb {
    padding: 6em 0;
}

.other .usedbox dt {
    font-size: 26px;
    line-height: 1.8;
    letter-spacing: 0.09em;
    margin-bottom: 0.6em;
}

.other .usedbox dd {
    font-size: 18px;
    line-height: 2.8;
    letter-spacing: 0.09em;
    margin: 0 0 3em 2em;
}

.other .usedbox dd a {
    color: #00a9e0;
    display: inline-block;
    line-height: 1.5;
}

.brand .other .h3_tit {
    font-size: 24px;
    text-align: center;
    margin-bottom: 1.5em;
    letter-spacing: 0.09em;
}

.brand .other .brand_txt {
    line-height: 1.8;
}

.brand .other .doing {
    margin: 4em 0;
}

.brand .other .doing .img_list {
    text-align: center;
    margin-bottom: 5em;
}

.brand .other .doing .img_list li {
    margin-bottom: 2em;
}

.brand .other .doing .outlist {
    padding-left: 3em;
    margin-top: 0.3em;
}

.brand .other .doing .outlist li {
    margin-bottom: 0.4em;
}

.brand .other .doing p {
    line-height: 1.8;
}

.brand .other .doing .h3_tit {
    font-size: 24px;
    text-align: left;
    margin-bottom: 0.6em;
}

.other .link_box {
    margin-bottom: 4em;
    text-align: center;
}

.representativebox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 10em;
}

.about .representativebox > img {
    width: 30%;
}

.about .representativebox .box {
    width: 100%;
    text-align: left;
    margin-bottom: 0;
}

.representativebox .box .txt {
    margin-top: 2em;
}

.about_profile {
    margin-top: 5em;
}

.about_profile .box2 {
    text-align: center;
}

.about_profile .about_table {
    table-layout: fixed;
    width: 100%;
    border: 1px solid #313131;
    margin: 3em 0;
}

.about_profile .about_table tr {
    border-bottom: 1px solid #313131;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: inherit;
}

.about_profile .about_table tr:last-child {
    border-bottom: none;
}

.about_profile .about_table th {
    background: #c3dfef;
    font-size: 18px;
    text-align: center;
    width: 26%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2em 0;
}

.about_profile .about_table td {
    font-size: 14px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 80%;
    padding-left: 3em;
    line-height: 1.6;
    background: #fff;
}

.about_profile .about_table td span {
    font-size: 16px;
    display: contents;
}

.about .titbox {
    text-align: center;
    margin-bottom: 5em;
}

.about_map .map {
    margin-bottom: 3em;
}

.about_map .map iframe {
    width: 100%;
    height: 25em;
    ;
}

/* MANAGEMENT */
.president {
    padding-bottom: 45px;
    margin-inline-start: -30px;
}

@media all and (min-width: 0) and (max-width: 767px) {
    .president {
        width: 100%;
        padding: 0 2em 6em;
        margin-inline: auto;
        margin-inline-start: 0;
    }
}

.president_inner {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 60px;
}

@media all and (min-width: 0) and (max-width: 767px) {
    .president_inner {
        flex-direction: column-reverse;
        gap :20px;
    }
}

.president_img {
    width: 280px;
}

@media all and (min-width: 0) and (max-width: 767px) {
    .president_img {
        width: 100%;
        margin-inline: auto;
    }
}

.president_img img {
    width: 100%;
}

.member {
    font-size: 14px;
}

.member_inner {
    display: flex;
    flex-direction: column;
    gap : 14px;
}

.member_position {
    font-family: 'NotoSansCJKjp-Regular',sans-serif;
    font-size: 14px;
}

@media all and (min-width: 0) and (max-width: 767px) {
    .member_position {
        font-size: clamp(13px,3.4vw,16px);
    }
}


.member_name {
    font-family: 'NotoSansCJKjp-Medium',sans-serif;
    font-size: 22px;
    font-weight: bold;
    padding-bottom: 4px;
}

@media all and (min-width: 0) and (max-width: 767px) {
    .member_name {
        font-size: clamp(20px,5.3vw,26px);
        line-height: 1.2;
    }
}

.member_en {
    color: #00a9e0;
    font-size: 18px;
    letter-spacing: 0.02em;
}

@media all and (min-width: 0) and (max-width: 767px) {
    .member_en {
        font-size: clamp(14px,4.2vw,22px);
    }
}

.member_belong {
    font-family: 'NotoSansCJKjp-Regular',sans-serif;
    font-size: 14px;
    line-height: 1.4;
}

@media all and (min-width: 0) and (max-width: 767px) {
    .member_belong {
        font-size: clamp(13px,3.4vw,16px);
    }
}

@media all and (min-width: 0) and (max-width: 1024px) {
    .officer {
        padding: 0 2em;
    }
}

.officer_inner{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 70px 60px;
}

@media all and (min-width: 0) and (max-width: 767px) {
    .officer_inner{
        grid-template-columns: 1fr;
        gap: 20px; 
        padding: 0;
    }
}

.officer .member {
    border-bottom: 2px solid #000;
    padding-bottom: 12px;
}


.access_map {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 4em auto 5em;
}

.access_map > p {
    font-size: 18px;
    width: 85%;
}

.access_map > p span {
    font-size: 16px;
}

.access_map .full_w {
    width: 45%;
    margin: 0 0 0 4em;
}

.access_map .full_w .link_box {
    width: 100%;
}

.access_map .full_w .link_btn a span {
    width: auto;
    font-size: 20px;
    letter-spacing: 0.09em;
    background: url(../img/icon_newwindow.png)no-repeat center right;
    padding: 0 2em 0 0;
}

.access_map .full_w .link_btn a {
    background-image: none;
    justify-content: center;
}

.access_map .full_w .link_btn:hover a span {
    background: url(../img/icon_newwindow1.png)no-repeat center right;
}

.about_map .outside {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 3em 0 10em;
}

.about_map .outside img {
    width: 48%;
    max-width: 100%;
}

.about_history .historybox {
    background: #ffffff91;
    margin: 0 3em;
    padding: 2em;
}

.about_history .historybox .year_en {
    font-size: 42px;
    color: #00a9e0;
    letter-spacing: 0.02em;
    position: relative;
    top: -0.7em;
}

.about_history .historybox .box {
    max-width: 800px;
	margin: 0 auto 3em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-start;
    align-items: baseline;
}

.about_history .historybox .box .list {
    line-height: 2;
    position: relative;
    padding: 4em 0 0 4em;
	list-style: disc;
}

.about_history .historybox .box .list:before {
    content: "";
    position: absolute;
    width: 300px;
    height: 1px;
    border-top: 2px solid #cecece;
    top: 2.5em;
    left: 2em;
}

.about_history .historybox .box li {
    font-size: 14px;
}

.servicebox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.servicebox .tit {
    font-size: 28px;
    color: #00a9e0;
    line-height: 1.6;
}

.servicebox .txt {
    margin-top: 1.5em;
    line-height: 1.6;
    letter-spacing: 0.09em;
    text-align: justify;

}

.servies_top {
    margin-bottom: 8em;
}

.service_area {
    width: 90%;
    margin: 0 5em auto auto;
    padding: 2em 0;
}

.service_area.service1 {
    background: #fff0ea;
    /* margin: 0 5em 5em auto; */
    margin: 0 4% 10% auto;
    width: 84%;
}

.service_area.service2 {
    margin: auto auto 0 3em;
    background: #fdeaf1;
}

.service_area.service3 {
    background: #eaeaea;
    margin: 0 8% 0 16%;
}

/* .service_area.service3 .service_lcs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-end;
    width: 100%;
} */
.service_area.service4 {
    background: #eaf7f0;
    margin: auto auto 5em 5em;
}

.service .service_area.service4 .full_w .link_btn a span {
    padding-right: 0;
}

.service_area .txt_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
    position: relative;
    z-index: 3;
    padding-left: 2em;
}

.service1 .service_area .txt_area {
    /* width: 90%; */
    /* width: 100%; */
    padding-left: 0;
    justify-content: space-between;
    margin: auto 0 0 auto;
    padding: 0;
    width: 90%;
    display: inline-block;
}

.service_cubism .service_area.left,
.service_lcs .service_area.left,
.service_nijima .service_area.right,
.service_program .service_area.right {
    position: relative;
}

.service1 .service_cubism .service_area.left .titbox {
    position: absolute;
    font-size: 52px;
    top: -1.5em;
    width: 100%;
}

.service1 .service_cubism .service_area.left .titbox .subtit {
    font-size: 26px;
    margin-bottom: 1em;
}

.service1 .service_cubism .service_area.left .titbox .h3tit {
    font-size: 48px;
}

.service_area.right {
    margin: auto auto 5em 0;
}

.service2 .service_area.right .inner {
    margin: 5em auto auto 0;
}

.service_nijima .service_area.right:after {
    content: "";
    width: 84%;
    height: 100%;
    background: url(../img/img_service3.png)no-repeat right;
    position: absolute;
    z-index: 10;
    right: -70%;
    position: absolute;
    top: 50%;
    margin-top: -160px;
    /* margin-right: -14%; */
    background-size: 100%;
    min-height: 320px;
    max-width: 500px;
}

.service_program .service_area.right:after {
    content: "";
    width: 84%;
    height: 100%;
    background: url(../img/img_service5.png)no-repeat right;
    position: absolute;
    z-index: 10;
    right: -50%;
    position: absolute;
    top: 50%;
    margin-top: -160px;
    margin-right: -14%;
    background-size: 100%;
    min-height: 320px;
    max-width: 500px;
}

.service_lcs .service_area.left:after {
    content: "";
    width: 84%;
    height: 100%;
    background: url(../img/img_service4.png)no-repeat left;
    position: absolute;
    z-index: 10;
    right: -50%;
    position: absolute;
    top: 50%;
    margin-top: -160px;
    margin-right: -14%;
    background-size: 100%;
    min-height: 320px;
    max-width: 500px;
}

.service_cubism {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-end;
}

.service_cubism .service_area.left:after {
    content: "";
    width: 84%;
    height: 320px;
    background: url(../img/img_service2.png)no-repeat left;
    position: absolute;
    z-index: 10;
    left: -32em;
    position: absolute;
    top: 50%;
    margin-top: -160px;
    background-size: contain;
}

.service_lcs .service_area.left {
    /* width: 67.2%;
    margin: 0 0 0 auto; */
    /* width: 64%;
    display: inline-block;
    margin: 0 0 auto 0;
    padding: 2em 4em 2em 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-end;
    margin: 0;
    width: 69.2%; */
    width: 67.2%;
    padding: 2em 0;
    margin: 0 3em auto auto;
}

.service_area.service_lcs .txt_area:after {
    content: "";
    width: 80%;
    height: 320px;
    background: #eaeaea;
    position: absolute;
    z-index: -1;
    right: 0;
}

.service_area.service_nijima .txt_area:after {
    content: "";
    width: 80%;
    height: 320px;
    background: #fdeaf1;
    position: absolute;
    z-index: -1;
    left: 0;
}

.service_area.service_program .txt_area:after {
    content: "";
    width: 80%;
    height: 320px;
    background: #eaf7f0;
    position: absolute;
    z-index: -1;
    left: 0;
}

.service_area .txt_area > img,
.service_area .right_img {
    width: 40%;
}

.service_nijima .txt_area,
.service_program .txt_area {
    left: 5%;
}

.service_area .txt_area .inner {
    width: 86%;
    padding: 0;
    margin: 5em 0 auto auto;
}

.service1 .service_area .txt_area .inner {
    /* width: 90%; */
    width: 100%;
    /* margin: 0 0 auto auto; */
    margin: 2em auto 0;
    /* overflow: hidden; */
}

.service_area .txt_area .inner .txt {
    line-height: 1.8;
}

.service_area .service_lcs .txt_area .inner {
    /* width: 100%;
    margin: 4em 0 0 auto; */
    width: 81%;
    margin: 5em 0 auto auto;
}

.service_area.right .txt_area .inner {
    margin: auto auto 0 0;
    width: 54%;
}

.service3 .service_area .txt_area {
    /* width: 100%;
    margin: 0 0 auto auto; */
    /* width: 90%; */
    /* display: inline-block; */
    padding-left: 0;
    width: 100%;
}

.service2 .service_area.right .txt_area .inner,
.service4 .service_area.right .txt_area .inner {
    width: 95%;
    margin: 5em auto auto 0;
}

.service2 .service_area.right,
.service4 .service_area.right {
    margin: 0;
    width: 68.2%;
}

.service_area .txt_area .titbox {
    position: absolute;
    top: -5em;
    width: 78%;
}

.service_area .txt_area .titbox .subtit {
    font-size: 26px;
    margin-bottom: 1em;
}

.service_area .txt_area .titbox .h3tit {
    font-size: 42px;
}

.service_cubism .txt_area .titbox {
    top: -5em;
}

.service_cubism .txt_area .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    margin-top: 4em;
}

.service_cubism .txt_area .list li {
    width: 44%;
}

.service_cubism .txt_area .list li:first-child {
    position: relative;
}

.service_cubism .txt_area .list li:first-child:after {
    content: "";
    position: absolute;
    width: 2px;
    height: 80%;
    background: #959595;
    margin-right: -14%;
    right: 0;
    top: 0;
}

.service_cubism .txt_area .list .tit {
    font-size: 24px;
}

.service_cubism .txt_area .list .txt {
    line-height: 1.6;
    text-align: justify;
}

.service_cubism .service_area.left {
    /* width: 67.2%; */
    margin: 0;
    display: inline-block;
    width: 80%;
    padding: 2em 4em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 2em 2em 1em 0;
}

.service #sec2,
.service #sec3,
.service #sec4,
.service #sec5 {
    padding-top: 2em;
}

.service .full_w {
    margin: 2em 0 0;
    height: 60px;
}

.service .full_w .link_box {
    position: relative;
    width: 240px;
    right: 0;
    height: 100%;
}

.service .service1 .full_w .link_box {
    width: 100%;
}

.service .service3 .full_w .link_box {
    position: absolute;

}

.service .full_w .link_btn {
    height: 60px;
    width: 100%;
    border-radius: 4px;
}

.service .service1 .full_w .link_btn {
    background: #ff6e2d;
    border: 1px solid #ff6e2d;
}

.service .service2 .full_w .link_btn {
    background: #ee3271;
    border: 1px solid #ee3271;
}

.service .service3 .full_w .link_btn {
    background: #34393b;
    border: 1px solid #34393b;
    width: 100%;
}

.service .service4 .full_w .link_btn {
    background: #097c25;
    border: 1px solid #097c25;
}

.service .service1 .full_w .link_btn:hover a {
    color: #ff6e2d;
}

.service .service2 .full_w .link_btn:hover a {
    color: #ee3271;
}

.service .service3 .full_w .link_btn:hover a {
    color: #34393b;
}

.service .service4 .full_w .link_btn:hover a {
    color: #097c25;
}

.service .full_w .link_btn a {
    font-size: 14px;
    background-image: none;
    justify-content: center;

}

.service .full_w .link_btn a span {
    width: auto;
    background: url(../img/icon_newwindow.png)no-repeat center right;
    background-position: 8.7em;
    background-size: initial;

}

.service .service1 .full_w .link_btn a {
    font-size: 14px;
    background-image: none;
    justify-content: center;
}

.service .service1 .service_area .full_w .link_btn a span {
    width: auto;
    display: inline-block;
    line-height: 1.2;
    text-align: left;
    background-image: url(../img/icon_newwindow.png);
    background-position: 10em;
    justify-content: center;
    background-repeat: no-repeat;
    padding: 0 3em 0 1.4em;
    background-size: 10%;
}

.service .full_w .link_btn_eff {
    height: 60px;
    width: auto;
}

.service .service4 .full_w .link_btn a {
    background-image: none;
    justify-content: center;
}

.service .full_w .link_btn_eff span {
    height: 60px;
}

.service .full_w .link_btn a span {
    padding-left: 4em;
}

.service .service_area .full_w .link_btn a span {
    width: auto;
    padding-left: 0;
    padding-right: 2em;
}

.service1 .full_w .link_btn a span {
    padding-left: 2em;
}

.scnav.nav_detaile .list {
    padding: 2em 0 0;
    flex-wrap: wrap;
    max-width: 50%;
    justify-content: center;
}

.scnav.nav_detaile .list li {
    width: 20%;
    padding: 0 0 2em 0;
    text-align: center;
}

/* .scnav.nav_detaile .list li:nth-child(5) */
.scnav.nav_detaile .list li:last-child {
    padding-right: 0;
}

.showcase_area {
    background: #ffffff80;
    padding-bottom: 4em;
}

.showcase_area .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 3em;
}

.showcase_area .list::before {
    content: "";
    display: block;
    width: 23%;
    order: 1;
}

.showcase_area .list::after {
    content: "";
    display: block;
    width: 23%;
}

.showcase_area .list li {
    width: 22%;
    margin-bottom: 4em;
}

.showcase_area .list li span {
    border: 1px solid #000;
    display: inline-block;
}

.showcase_area .list li span img {
    display: -webkit-box;
    vertical-align: bottom;
}

.showcase_area .list li .tit {
    padding: 1em 0;
}

.showcase_area .list li .txt {
    color: #8c8c8c;
    font-size: 14px;
}

/* ページャー */
.pager ul.pagination {
    text-align: center;
    margin: 0;
    padding: 0;
}

.pager .pagination li {
    display: inline;
    margin: 0 2px;
    padding: 0;
    display: inline-block;
    border: 2px solid #000;
    width: 40px;
    height: 40px;
    text-align: center;
    position: relative;
    background: #fff;
}

.pager .pagination li a {
    vertical-align: middle;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-align: center;
    display: table;
    color: #3e3e3e;
    text-decoration: none;
}

.pager .pagination li a span {
    display: table-cell;
    vertical-align: middle;
    font-size: 18px;
}

.pager .pagination li a:hover,
.pager .pagination li a.active {
    color: #fff;
    background: #3e3e3e;
    opacity: 1;
}

.pager .pagination li a.active span {
    font-weight: 700;
    font-family: "NotoSansCJKjp-Bold", sans-serif;
}

.pager .pagination li.next img {
    transform: scale(-1, 1);
}

.main_detail .news {
    height: 100%;
}

.main_detail .news_detail_area .pd_tb {
    padding: 0em 0 3em;
}

.news_area {
    background: #ffffff8c;
    padding: 3em 3em 4em;
}

.news_area .list {
    margin-bottom: 6em;
}

.news_area .list li {
    border-bottom: 1px solid #cecece;
    padding: 2em 0;
    line-height: 1.6;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
}

.news_area .list li .data {
    width: 84px;
}

.news_area .list li > p {
    width: 70%;
}

.icon_bgc1 {
    background: #0068b7;
}

.icon_bgc2 {
    background: #e65651;
}

.icon_bgc3 {
    background: #22ac38;
}

.icon_bgc4 {
    background: #f19149;
}

.news .news_area .icon_post {
    color: #fff;
    width: 140px;
    display: inline-block;
    text-align: center;
    padding: 0.3em;
    border-radius: 20px;
    margin: 0 2em;
}

.recruit_top .h2_tit {
    font-size: 42px;
    color: #00a9e0;
}

.recruit_top .txt {
    font-size: 18px;
    line-height: 1.6;
    margin: 2em 0;
}

/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
.kv_space {
    height: 0;
    padding-top: 25.2%;
    background: url(../img/kv_recruitTop.png) 0 0 no-repeat;
    background-size: contain;
}

.recruit_intviewarea {
    height: 0;
    padding-top: 23%;
}

.recruit_intview1 {
    background: url(../img/img_recruit3.png) 0 0 no-repeat;
    background-size: contain;
    background-size: 100%;
}

.recruit_intview2 {
    background: url(../img/img_recruit4.png) 0 0 no-repeat;
    background-size: contain;
    background-size: 100%;
}

.recruit_intview3 {
    background: url(../img/img_recruit5.png) 0 0 no-repeat;
    background-size: contain;
    background-size: 100%;
}

.recruit_intview4 {
    background: url(../img/img_recruit6.png) 0 0 no-repeat;
    background-size: contain;
    background-size: 100%;
}

.recruit_intview5 {
    background: url(../img/img_recruit7.png) 0 0 no-repeat;
    background-size: contain;
    background-size: 100%;
}

.recruit_intview6 {
    background: url(../img/img_recruit8.png) 0 0 no-repeat;
    background-size: contain;
    background-size: 100%;
}

.interviewbox_tb {
    max-width: 85%;
    margin: 0 auto;
}

.pd_tb.recruit_pd {
    padding-bottom: 2em;
}

.p_recruit .recruit .subbox:before {
    display: none;
}

.p_recruit .landscape .img_box {
    margin-top: 4em;
}

.p_recruit .landscape .img_box .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.p_recruit .landscape .img_box .list:after {
    content: "";
    width: 23%;
    display: block;
}

.p_recruit .landscape .img_box .list li {
    width: 23%;
    margin-bottom: 1.8em;
}

.p_recruit .landscape .titbox {
    text-align: center;
}

.p_recruit .interview .block.link_box {
    position: relative;
    width: 100%;
}

.p_recruit .interview .block.link_box a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent: -999px;
}

.p_recruit .interview {
    margin-bottom: 5em;
}

.p_recruit .interview .box {
    margin-bottom: 1.5em;
    position: relative;
    overflow: hidden;
    background: #eef3f6;
}

.p_recruit .interview .box .recruit_intviewarea {
    cursor: pointer;
    transition-duration: 0.3s;
    /* max-width: 1520px; */
    max-height: 350px;
    overflow: hidden;
    width: 100%;
    height: 100px;
}

.p_recruit .interview .box .recruit_intviewarea:before {
    content: "";
    max-width: 1520px;
    max-height: 350px;
    width: 100%;
    height: 100%;
    background: radial-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.5));
    transition-duration: 0.3s;
    opacity: 0;
}

.p_recruit .interview .box .recruit_intviewarea:hover

/* .p_recruit .interview .box .block:hover */
    {
    transform: scale(1.1);
}

.p_recruit .interview .box .recruit_intviewarea:hover:before {
    content: "";
    opacity: 0;
}

.p_recruit .interview .box .intview_info {
    position: absolute;
    right: 5%;
    bottom: 10%;
    text-align: right;
    cursor: pointer;
}

.p_recruit .interview .box .intview_info_left {
    left: 5%;
    right: auto;
    text-align: left;
    cursor: pointer;
}

.p_recruit .interview .box .intview_info .namebox {
    display: inline-block;
    text-align: center;
}

.p_recruit .interview .box .intview_info .namebox .icon {
    color: #fff;
    border-radius: 30px;
    font-size: 20px;
    padding: 0.4em 1em;
    /* width: 223px; */
    width: 100%;
    display: inline-block;
    line-height: 1;
    text-align: center;
}

.p_recruit .interview .box .intview_info .namebox .icon_eng {
    background: #00b7ee;
}

.p_recruit .interview .box .intview_info .namebox .icon_e {
    background: #eb6877;
}

.p_recruit .interview .box .intview_info .namebox .icon_d {
    background: #f19149;
}

.p_recruit .interview .box .intview_info .namebox .icon_m {
    background: #32b16c;
}

.p_recruit .interview .box .intview_info .namebox .name {
    font-size: 46px;
    color: #fff;
    color: #fff;
    text-shadow: #000 1px 1px 0, #000 -1px -1px 0,
        /*右下、左上*/
        #000 -1px 1px 0, #000 1px -1px 0,
        /*右上、左下*/
        #000 0px 1px 0, #000 0 -1px 0,
        /*右、左*/
        #000 -1px 0 0, #000 1px 0 0;
    /*上、下*/
    display: inline-block;
    padding: 0.2em 0 0;
}

.p_recruit .interview .box .intview_info .txt {
    color: #fff;
    color: #fff;
    text-shadow: #000 1px 1px 0, #000 -1px -1px 0,
        /*右下、左上*/
        #000 -1px 1px 0, #000 1px -1px 0,
        /*右上、左下*/
        #000 0px 1px 0, #000 0 -1px 0,
        /*右、左*/
        #000 -1px 0 0, #000 1px 0 0;
    /*上、下*/
    font-size: 22px;
    letter-spacing: -0.1px;
}

.recruit_info {
    background: #ffffffa6;
    padding: 0 5em;
}

.recruit_info .table {
    table-layout: fixed;
    width: 100%;
}

.recruit_info .table tr {
    padding: 2em 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: flex-start;
    border-bottom: 1px solid #b5b5b5;
    line-height: 1.4;
    justify-content: space-between;
}

.recruit_info .table tr:last-child {
    border-bottom: none;
}

.recruit_info .table th {
    width: 20%;
    text-align: right;
    font-size: 18px;
    color: #00a9e0;
}

.recruit_info .table td {
    padding-left: 4em;
    width: 80%;
}

.recruit_info .table td p {
    font-size: 14px;
}

.recruit_info .table td strong {
    font-weight: bold;
}

.recruit .tit_en.f-size {
    font-size: 32px;
}

.p_recruit .process {
    width: 86%;
    margin: 3em auto 0;
}

.p_recruit .process li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    margin-bottom: 5em;
    align-items: center;
}

.p_recruit .process li .step_fllow {
    width: 20%;
    text-align: center;
    background: #2e5273;
    color: #fff;
    padding: 0.4em 0;
    font-size: 12px;
    position: relative;
}

.p_recruit .process li .step_fllow:after {
    content: "";
    position: absolute;
    width: 33px;
    height: 50px;
    background: url(../img/icon_recruitarrow.png)no-repeat;
    bottom: -5.5em;
    left: 50%;
    margin-left: -16.5px;
}

.p_recruit .process li:last-child .step_fllow:after {
    display: none;
}

.p_recruit .process li .step_fllow p {
    font-size: 18px;
}

.p_recruit .process li .step_fllow .step {
    font-size: 12px;
}

.p_recruit .process li .step_fllow_txt {
    width: 74%;
}

.p_recruit .process li .step_fllow_txt p {
    font-size: 14px;
}

.p_recruit .process li .step_fllow_txt a {
    text-decoration: underline;
}

.recruit .w_bg {
    background: #ffffff96;
    padding: 3em 7em;
    margin-bottom: 6em;
}

.recruit .table_entry {
    table-layout: fixed;
    width: 100%;
}

.recruit .table_entry tr {
    margin-bottom: 1.5em;
    width: 100%;
    display: flex;
    align-items: center;
}

.recruit .table_entry th {
    text-align: right;
    width: 40%;
    padding-right: 2em;
    font-size: 16px;
}

.recruit .table_entry th span {
    color: #fff;
    background: #ec4451;
    border-radius: 6px;
    font-size: 12px;
    display: inline-block;
    /* width: 40px; */
    padding: 5px;
    text-align: center;
    margin-right: 0.8em;
}

.recruit .table_entry td {
    width: 60%;
}

.recruit .table_entry td.file_choice label {
    color: #000;
    background: #eee;
    border-radius: 20px;
    font-size: 14px;
    padding: 0.4em 2em;
    font-weight: 400;
    font-family: "NotoSansCJKjp-Regular", sans-serif;
}

.recruit .table_entry td.file_choice span {
    padding-left: 1.5em;
    vertical-align: top;
}

.recruit .table_entry td .caution {
    font-size: 12px;
    color: #888888;
    margin-top: 5px;
}

.recruit .table_entry a {
    color: #119ecc;
    font-size: 16px;
}

.recruit .button {
    text-align: center;
    margin: 3em 0 0;
}

.w300 {
    width: 350px;
    padding: 0.4em;
    border-radius: 4px;
    border: 2px solid #b5b5b5;
}

.w100 {
    padding: 0.4em;
    width: 100%;
    border: 2px solid #b5b5b5;
    border-radius: 4px;
}

.recruit select.w300 {
    background: #fff;
    height: 40px;
}

.recruit .radio_privecy {
    margin-right: 0.4em;
    vertical-align: bottom;
    display: inline-block;
}

.recruit textarea {
    height: 200px;
}

.recruit .table_entry tr.top {
    align-items: flex-start;
}

.recruit .table_entry tr.top th {
    padding-top: 1em;
}

.p_recruit .recruit {
    max-width: 75%;
}

.p_recruit .recruit .subbox {
    margin: 0;
    max-width: 100%;
}

.p_recruit .recruit .subbox .border .list li .date {
    display: inline-block;
    width: auto;
}

.p_recruit .recruit .subbox .border .list li .icon {
    width: 10em;
    display: inline-block;
    padding: 0.5em;
}

.p_recruit .recruit .subbox .border .list li .inner_txt {
    width: 61%;
}

.p_recruit .recruit .subbox .border .list li .inner_txt a {
    font-size: 18px;
    line-height: 1.4;
}

.p_recruit .recruit_dog {
    position: relative;
}

.p_recruit .recruit_dog:before {
    content: "";
    width: 108px;
    height: 100px;
    position: absolute;
    background: url(../img/img_recruit1.png)no-repeat;
    left: -10em;
    top: 35%;
    background-size: 100%;
}

.p_recruit .recruit_dog:after {
    content: "";
    width: 108px;
    height: 100px;
    position: absolute;
    background: url(../img/img_recruit2.png)no-repeat;
    right: -10em;
    bottom: 20%;
    transform: rotate(20deg);
}

.p_recruit .recruit .Introductionbox {
    margin: 4em 0 6em;
}

.recruit_programmer {
    height: 0;
    padding-top: 14.68%;
    background: url(../img/img_recruit9.png)0 0 no-repeat;
    background-size: contain;
}

.p_recruit .recruit.recruit_detail {
    max-width: 100%;
}

.p_recruit .recruit .service {
    margin: 5em 0 0;
    overflow: hidden;
}

.p_recruit .recruit .full_w:before {
    display: none;
}

.p_recruit .service .full_w .link_box {
    width: 400px;
}

.p_recruit .service .full_w .link_btn {
    background: #ff6e2d;
    border: 2px solid #ff6e2d;
}

.p_recruit .service .full_w .link_btn a {
    /* background: url(../img/icon_newwindow.png)no-repeat;
    background-position: 21em;
    display: inline-block;
    padding-right: 2em; */
    background: none;
    background-image: none;
    justify-content: center;
    width: 100%;

}

.p_recruit .service .full_w .link_btn a span {
    font-size: 18px;
    width: 100%;
    padding-left: 0;
    vertical-align: middle;
    width: auto;
    background: url(../img/icon_newwindow.png)no-repeat center right;
    background-position: 8.5em;
    padding-right: 2.5em;
}

.p_recruit .service .full_w:hover .link_btn a {
    font-size: 14px;
    background: none;
    background-image: none;
    /* background-position: 21em;
    background-size: inherit; */
    color: #ff6e2d;
}

.p_recruit .service .full_w:hover .link_btn a span {
    background: url(../img/icon_newwindow2.png)no-repeat center right;

}

.contact .importanttxt {
    vertical-align: middle;
    font-size: 18px;

}

.contact .importanttxt span {
    font-size: 12px;
    color: #fff;
    display: inline-block;
    vertical-align: middle;
    background: #ec4451;
}

.contact .contact_area .importanttxt span {
    padding: 0.2% 0.8%;
    border-radius: 6px;
    margin-right: 1.5em;
    vertical-align: middle;
}

.contact_area {
    padding: 4em 0;
}

.notice-msg{
}
.notice-msg p {
    color: red;
    font-weight: bold;
	padding-bottom: 2em;
}

.contact_area .box {
    margin-bottom: 6em;
    overflow: hidden;
}

.contact_area .box.subbox {
    margin-bottom: 3em;
}

.contact_area .box .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-around;
    max-width: 60%;
    margin: 2em auto;
}

.contact_area .box .list li {
    width: 46%;
    background: #fff;
    border: 3px solid #00a9e0;
    border-radius: 10px;
    /* padding: 1.4em 0; */
    font-size: 16px;
    text-align: center;
    color: #00a9e0;
    cursor: pointer;
}

.contact_area .box .list li .check {
    width: 100%;
    height: 100%;
    display: block;
    padding: 1.4em 0;
}

.contact_area .box .list li.current {
    color: #fff;
    background: #00a9e0;
}

.contact_area .box .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 60%;
    margin: 2em auto;
    justify-content: space-between;
    flex-wrap: wrap;
}

.contact_area .box .list.list_no li.current .txt {
    color: #fff;
}

.contact_area .box .list.list_no {
    max-width: 90%;
}

.contact_area .box .list.list_no li {
    width: 31%;
    margin-bottom: 1em;
    padding: 2.4em 1.2em;
    word-wrap: break-word;
}


#js-nizima-cat a {
    display: block;
    padding: 2.4em 1.2em;
    height: 100%;
    width: 100%;
}

.contact_area .box .list.list_no:after {
    content: "";
    display: block;
    width: 31%;
}

.contact_area .box .list.list_no li .tit {
    font-size: 18px;
    margin-bottom: 1em;
    display: inline-block;
}

.contact_area .box .list.list_no li .txt {
    font-size: 12px;
    text-align: left;
    color: #000;
    line-height: 1.8;
}

.contact_area .box.subbox .tit,
.panel-block-list .tit {
    text-align: center;
    color: #00a9e0;
    font-size: 24px;
}

.contact_area .box.subbox .txt,
.panel-block-list .txt {
    text-align: center;
    font-size: 18px;
    margin: 1em 0 2.5em;
}

.panel-block-list .txt {
    line-height: 1.8;
}

.contact_area .box.subbox .imgbox {
    text-align: center;
}

.contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_box {
    margin: 0 auto;
}

.contact_area .box.subbox .imgbox.p_recruit .service .full_w {
    height: 80px;
    margin: 3em auto 2em;
    max-width: 400px;
}

.contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_btn,
.contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_btn_eff,
.contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_btn_eff span {
    height: 80px;
    border-radius: 10px;
}

.contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_btn a span {
    background: url(../img/icon_newwindow.png)no-repeat center right;
    background-position: right;
    width: 87%;
    display: inline-block;
    line-height: 1.4;
    padding-right: 1.5em;
}

.contact_area .box.subbox .imgbox.p_recruit .service .full_w:hover .link_btn a span {
    background: url(../img/icon_newwindow2.png)no-repeat center right;
}

/* .contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_btn:hover a span {
    background: url(../img/icon_blank_link_hover.png)no-repeat center right;

} */

/* .contact_area .box.subbox .imgbox.p_recruit .service .full_w:hover .link_btn a {
    color: #fff;
} */

.contact_area .contact_txt {
    font-size: 18px;
    text-align: center;
}

/*
.contact .contact_form {
    padding: 4em 0 7em;
} */

.table_entry .selectWrap {
    position: relative;
    display: inline-block;
}

.contact .table_entry td.selectWrap {
    width: auto;
}

/* .table_entry .selectWrap::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 1em;
    margin-top: -4px;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border: 10px solid transparent;
    border-top: 10px solid #000;
} */


.table_entry .select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    height: 40px;
    background: transparent;
    position: relative;
    z-index: 1;
    padding: 0 40px 0 10px;
    border: 1px solid #b4b3b3;
    border-radius: 2px;
}

/* .table_entry .selectWrap span select {
    -webkit-appearance: none;
} */

.table_entry select::-ms-expand {
    display: none;
}

.table_entry td input::placeholder {
    color: #b0b0b0;
}

.submitbtn.service .full_w:before {
    display: none;
}

.submitbtn.service .full_w .btn button {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    width: 100%;
    height: 60px;
    display: block;
    cursor: pointer;
    border-width: 0;
    background: none;
    height: 100%;
    transition: all .5s ease;
    transition: all .5s ease;
    z-index: 2;
    position: relative;
    line-height: 55px;
}

.submitbtn.service .full_w .link_box {
    width: 400px;
}

.submitbtn.service .full_w .link_btn:hover .btn {
    position: relative;
    z-index: 3;
}

.submitbtn.service .full_w .link_btn:hover .btn button {
    color: #00a9e0;
}

/* .confirm .contact_area {
    padding: 4em 0 0;
} */

.confirm.contact .contact_form {
    padding: 0 0 4em;
}

.confirm.contact .contact_form td {
    font-size: 20px;
    line-height: 1.2;
}

.confirm .service.submitbtn {
    display: flex;
    justify-content: center;
    width: 820px;
    margin: 0 auto;
}

.confirm .full_w.backpage .link_btn {
    background: #b5b5b5;
    border: 1px solid #b5b5b5;
}

.submitbtn.service .full_w.backpage .link_btn:hover .btn button {
    color: #b5b5b5;
}

.confirm.contact .contact_form .caution {
    color: #dc3232;
    padding-top: 5px;
}

.confirm.contact .contact_area .box {
    text-align: center;
    margin: 0 auto;
    width: 100%;
    display: flex;
    align-items: center;
}

.confirm.contact .importanttxt {
    text-align: right;
    width: 40%;
    padding-right: 2em;
    font-size: 16px;
}

.confirm.contact .contact_area .box .list {
    width: 60%;
    font-size: 20px;
    line-height: 1.2;
    margin: 1em 0;
}

.confirm.contact .contact_area .box.subbox {
    text-align: center;
    display: block;
    margin-bottom: 2em;
}

.confirm.contact .contact_area .box .list li {
    font-size: 20px;
    line-height: 1.2;
    border: none;
    text-align: left;
    color: #000;
    font-family: "NotoSansCJKjp-Regular", sans-serif;
    font-weight: 500;
    cursor: inherit;
}

.complate.confirm .service.submitbtn {
    justify-content: center;
    width: 100%;
}

.complate .img_box {
    padding: 0 0 1em;
}

.sns_sc.snsarea {
    max-width: 85%;
    margin: 2em auto 0;
    text-align: right;
    padding-bottom: 6em;
}

.sns_sc.snsarea .iframe_wrap {
    margin: 4px 0 4px 0;
    display: inline-block;
}

.showcase_detail .sns_sc iframe,
.recruit_detail .sns_sc iframe,
.news_detail_main .sns_sc iframe,
.news_detail .sns_sc iframe {
    vertical-align: bottom;
}

.showcase_detail .sns_sc .list,
.news_detail_main .sns_sc .list,
.news_detail .sns_sc .list,
.recruit_detail .sns_sc .list {
    text-align: right;
}

.showcasebox {
    padding-bottom: 4em;
}

.showcasetit {
    padding-bottom: 3em;
}

.showcasetit .date {
    font-size: 22px;
    margin-bottom: 0.6em;
}

.showcasetit .shoucase_icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    margin-bottom: 2.6em;
}

.careertit .shoucase_icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
    margin-bottom: 2.6em;
}

.showcasetit .shoucase_icon li,
.careertit .shoucase_icon li {
    font-size: 18px;
    color: #fff;
    width: 12%;
    border-radius: 30px;
    padding: 0.4em 0;
    margin-right: 1em;
}

.showcasetit .shoucase_icon li:last-child,
.careertit .shoucase_icon li:last-child {
    margin-right: 0;
}

.showcasetit .mobile {
    background: #eb6877;
}

.showcasetit .console {
    background: #0075a9;
}

.showcasetit .arcade {
    background: #f29c9f;
}

.showcasetit .web {
    background: #00a9e0;
}

.showcasetit .pc {
    background: #8957a1;
}

.showcasetit .movie {
    background: #313131;
}

.showcasetit .event {
    background: #22a038;
}

.showcasetit .h2_name {
    font-size: 42px;
    color: #00a9e0;
    margin-bottom: 0.5em;
    line-height: 1.4;
}

.showcasetit .detaile_txt {
    font-size: 24px;
}

.showcasebox .sec {
    margin-bottom: 50px;
}

.showcasebox .sc2 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    max-width: 90%;
    margin: 0 auto 1em;
}

.showcasebox .sc2 ul li {
    width: 30%;
}

.showcasebox .sc2 p {
    text-align: right;
    font-size: 12px;
    color: #8e8e8e;
}

.showcasebox .sc3 p {
    text-align: left;
    font-size: 18px;
    font-weight: 400;
    font-family: "NotoSansCJKjp-Regular", sans-serif;
}

.showcasebox .sc4 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    margin: 0 auto 1em;
    flex-wrap: wrap;
}

.showcasebox .sc4 ul li {
    width: 32.5%;
    margin-bottom: 0.8em;
}

.showcasebox .sc4 p {
    text-align: right;
    font-size: 12px;
    color: #8e8e8e;
}

.showcasebox .full_w .link_box {
    width: 50%;
    height: 80px;
}

.showcasebox .full_w .link_btn a {
    background-image: none;
    width: 100%;
    justify-content: center;
}

.showcasebox .full_w .link_btn a span {
    width: auto;
    font-size: 18px;
    letter-spacing: 0.09em;
    background: url(../img/icon_newwindow.png)no-repeat center right;
    background-position: 10.7em;
    padding: 0 3em 0 1em;
}

.showcasebox .full_w .link_btn:hover a span {
    background: url(../img/icon_newwindow1.png)no-repeat right;
    background-position: 10.7em;
}

.showcase.showcase_detail .showcasebox > p > img {
    width: 100%;
    height: auto;
}

.showcase.showcase_detail .showcasebox .gallery-columns-3 {
    flex-wrap: wrap;
    margin: 2em auto 1em;
    max-width: 75%;
}

.showcase.showcase_detail .showcasebox .gallery-columns-3:after {
    content: "";
    display: block;
    width: 32.5%;
    height: 0;
}

.showcase.showcase_detail .showcasebox .gallery-columns-3 .gallery-item {
    width: 32.5%;
    padding: 0;
    margin-bottom: 1em;
}

.showcase.showcase_detail .showcasebox p {
    margin-bottom: 2em;
    font-weight: 500;
    font-family: "NotoSansCJKjp-Medium", sans-serif;
}

.showcase.showcase_detail strong {
    font-weight: 700;
    font-family: "NotoSansCJKjp-Bold", sans-serif;
}

.showcase.showcase_detail .full_w {
    margin: 4em 0;
}

.sec.showcase .full_w .link_btn a {
    background-image: none;
    justify-content: center;
}

.sec.showcase .full_w .link_btn a span {
    width: auto;
    background: url(../img/link_arrow.png)no-repeat center right;
    padding-right: 5.1em;
    background-position: 10em;
    background-size: initial;
    padding-left: 0;
}

.sec.showcase .full_w .link_btn:hover a span {
    background: url(../img/hover_link_arrow.png)no-repeat center right;
    background-position: 10em;
}

.link_allbox {
    position: relative;
    z-index: 1;
}

.link_allbox a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent: -999px;
    z-index: 2;
}

.program_list .titbox .tit_en {
    font-size: 32px;
    text-align: center;
}

.scsupport .region_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    margin: 4em 0 3em;
    justify-content: center;
}

.scsupport .region_list .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.scsupport .region_list .txt {
    width: 144px;
}

.scsupport .region_list .list li {
    border: 1px solid #b6dae5;
    margin-right: 1em;
}

.scsupport .region_list .list li:last-child {
    margin-right: 0;
}

.scsupport .region_list .list li a {
    padding: 0.7em 1.5em;
    display: inline-block;
}

.scsupport .region_list .list li.current {
    background: #b6dae5;
}

.scsupport .region_list .list li a:hover {
    background: #b6dae5;
    opacity: 1;
}

.scsupport .scsupportarea .full_w {
    margin: 4em 0 0;
}

.scsupport .scsupportarea .full_w .link_box {
    position: relative;
    margin: 0 auto;
    width: 60%;
}

.scsupport .scsupportarea .full_w .link_box a {
    justify-content: center;
    background-image: none;
    font-size: 100%;
}

.scsupport .scsupportarea .full_w .link_box a span {
    width: auto;
    padding: 0 2.1em 0 0;
    background: url(../img/icon_newwindow.png)no-repeat center right;
}

.scsupport .scsupportarea .full_w .link_btn:hover a span {
    background: url(../img/icon_newwindow1.png)no-repeat right;
}

.scsupport .scsupportarea .box dt {
    font-size: 32px;
    margin-bottom: 0.8em;
}

.scsupport .scsupportarea .box dd {
    line-height: 1.6;
}

.scsupport .scsupportarea .box {
    border-top: 1px solid #bfbfbf;
    border-bottom: 1px solid #bfbfbf;
    padding: 3em 0;
}

.scsupport .scsupportarea .box:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.scsupport .scsupportarea .caution_txt {
    color: #f43737;
    margin-top: 1.4em;
    line-height: 1.5;
}

.scsupport .scsupportarea .txt {
    margin: 3em 0;
    line-height: 1.5;
}

/* 20210224追加 教育機関対応新フロー案対応 ここから */

.scsupport a.linktext {
    color: #119ecc;
    text-decoration: underline;
}

.scsupport a.linktext:hover {
    text-decoration: none;
}

.scsupport .aligncenter {
    text-align: center;
}

.scsupport .mt20 {
    margin-top: 20px;
}

/* ここまで */

.region_table {
    width: 100%;
    border: 1px solid #aaaaaa;
    display: none;
}

.region_table tr {
    border-bottom: 1px solid #aaaaaa;
    background: #fff;
}

.region_table tr:nth-child(odd) {
    background: #eee;
}

.region_table tr th {
    border-right: 1px solid #aaaaaa;
    text-align: center;
    background: #b6dae5;
    padding: 1em 0;
    width: 200px;
}

.region_table tr td {
    border-right: 1px solid #aaaaaa;
    text-align: center;
    padding: 1.4em 1em;
    line-height: 1.3;
    vertical-align: middle;
    width: 14%;
}

.region_table tr td span {
    width: 100px;
    height: 1px;
    background: #000;
    display: inline-block;
    vertical-align: middle;
}

.region_table tr td:nth-child(2) {
    width: 32%;
}

.region_table tr td:nth-child(3) {
    width: 28%;
}

.region_table tr td:nth-child(4) {
    width: 30%;
}

.region_table tr td a {
    color: #119ecc;
}

.kv_recruit_int {
    height: 0;
    padding-top: 33.97%;
    background: url(../img/kv_recruit_int.jpg) 0 0 no-repeat;
    background-size: contain;
}

.kv_interview {
    position: relative;
}

.kv_interview .kvtxt {
    position: absolute;
    bottom: 2em;
    left: 0;
    /* width: 42%; */
    text-align: right;
}

.kv_interview .kvtxt > p {
    background: #fff;
    font-size: 26px;
    padding: 0.2em 0.5em 0.2em 1.2em;
}

.kv_interview .kvtxt > p:last-child {
    margin-top: 0.6em;
}

.pd_tb.recruit_pd.interview_tit {
    text-align: center;
    margin-bottom: 0;
}

.p_recruit .box_line dl {
    padding-left: 5em;
    padding-top: 4em;
    margin-left: 2em;
    position: relative;
}

.qrcode{
  text-align: center;
  display: flex;
  justify-content: center;
}

.qr_creativestudio{
  margin:0 30px;
  width: 120px;
  height: 120px;
}

.qr_proddev{
  margin:0 30px;
  width: 120px;
  height: 120px;
}

.p_recruit .box_line dl .qfont {
    font-size: 120px;
    color: #e0edf3;
    line-height: 1;
    position: absolute;
    left: 0;
    top: -0.18em;
    z-index: 1;
}

.p_recruit .box_line dl dt > span {
    position: relative;
    z-index: 2;
}

.p_recruit .box_line img {
    max-width: 453px;
    height: 100%;
    width: 40%;
}

.p_recruit .box_line .icon1 {
    background: url(../img/icon_recruit_int1.png)no-repeat;
}

.p_recruit .box_line .icon2 {
    background: url(../img/icon_recruit_int2.png)no-repeat;
}

.p_recruit .box_line .icon3 {
    background: url(../img/icon_recruit_int3.png)no-repeat;
}

.p_recruit .box_line .icon4 {
    background: url(../img/icon_recruit_int4.png)no-repeat;
}

.p_recruit .box_line .icon5 {
    background: url(../img/icon_recruit_int5.png)no-repeat;
}

.p_recruit .box_line dt {
    font-size: 18px;
    color: #00a9e0;
}

.p_recruit .box_line dd {
    margin-top: 1em;
    line-height: 1.5;
}

.p_recruit .box_line p {
    line-height: 1.8;
}

.p_recruit .box_line {
    margin-bottom: 4em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.p_recruit .box_line:last-child {
    margin-bottom: 0;
}

.p_recruit .box_line.box_line_img dl {
    margin: 0 2em 0 0;
}

.p_recruit .recruitment_form {
    margin: 3em 0 5em;
}

.p_recruit .recruitment_form.confirm .service.submitbtn {
    flex-wrap: wrap;
    width: 500px;
    justify-content: center;
}

.p_recruit .recruitment_form .service .full_w {
    width: 80%;
}

.p_recruit .recruitment_form .submitbtn.service .full_w .link_box {
    width: 100%;
}

.p_recruit .recruitment_form .service .full_w.backpage {
    width: 60%;
}

.p_recruit .recruitment_form .service .full_w:first-child .link_btn {
    border: 2px solid #00a9e0;
    background: #00a9e0;
}

.p_recruit .recruitment_form.confirm .service.submitbtn .full_w.backpage .link_btn a span,
.p_recruit .recruitment_form.confirm .service.submitbtn .full_w .link_btn a span {
    background: none;
    padding-right: 0;
}

.p_recruit .recruitment_form.confirm .service.submitbtn .full_w.backpage .link_btn:hover a {
    color: #b5b5b5;
}

.p_recruit .recruitment_form.confirm .service.submitbtn .full_w .link_btn:hover a {
    color: #00a9e0;
}

.p_recruit .recruitment_form.confirm .service.submitbtn .full_w .link_btn:hover a span {
    background: none;
}

.p_recruit .recruitment_form.confirm .service.submitbtn .full_w.backpage .link_btn:hover a span {
    color: #b5b5b5;
    padding-right: 0;
    background: none;
}

.p_recruit .recruitment_form.confirm .service.submitbtn .full_w.backpage .link_btn .btn {
    height: 60px;
}

.p_recruit .other_int {
    background: #e0edf3;
    padding: 4em 0;
}

.p_recruit .other_int .other_tit {
    font-size: 28px;
    color: #00a9e0;
    margin-bottom: 1.5em;
}

.p_recruit .other_int .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    /* width: 88%; */
    margin: 0 auto;
    width: 100%;
}

.p_recruit .other_int .list li {
    width: 23%;
    padding: 0.6em;
}

.p_recruit .other_int .list li a {
    display: inline-block;
    box-shadow: 2px 2px 7px 1px #0000003d;
    /* padding: 0 1em; */
    border-radius: 10px;
}

.p_recruit .other_int .list li .txt {
    width: 100%;
    background: #fff;
    display: inline-block;
    text-align: center;
    padding: 1em 0;
    border-radius: 0px 0 10px 10px;
    font-size: 18px;
    height: 64px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
}

.p_recruit .other_int .list .slick-arrow {
    width: 16%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
}

.p_recruit .other_int .list .slick-arrow:first-child {
    padding-right: 1em;
}

.p_recruit .other_int .list .slick-arrow:last-child {
    padding-left: 1em;
}

.bg_detaile.bg_int {
    background: none;
}

.sitemap .sitemap_box {
    background: #fff;
    padding: 1em 1em 3em;
}

.sitemap .sitemap_box .tit {
    font-size: 24px;
    /*font-family: '小塚ゴシック Pro L','Kozuka Gothic Pro Light',sans-serif;*/
    font-family: '小塚ゴシック Pro', 'Kozuka Gothic Pro', sans-serif;
    margin-bottom: 0.5em;
}

.sitemap .sitemap_box .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: initial;
    margin-bottom: 3em;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.sitemap .sitemap_box .list:last-child {
    margin-bottom: 0;
}

.sitemap .sitemap_box .list li {
    width: 24%;
    background: #eeeeee;
    position: relative;
    margin-bottom: 1em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    margin: 0 0.8em 1em 0;
}

.sitemap .sitemap_box .list li .link_box {
    width: 100%;
}

.sitemap .sitemap_box .list li .link_btn {
    width: 100%;
    border: 2px solid #eee;
    float: left;
    text-align: center;
    cursor: pointer;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    background: #eee;
    box-shadow: none;
    height: 80px;
}

.sitemap .sitemap_box .list li .link_btn a {
    font-family: arial;
    text-decoration: none;
    line-height: 50px;
    transition: all .5s ease;
    transition: all .5s ease;
    z-index: 2;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 100%;
    background-image: url(../img/link_arrow.png);
    background-repeat: no-repeat;
    background-position: 16em;
    width: 100%;

}

.sitemap .sitemap_box .list li .link_btn a span {
    padding-left: 1em;
    color: #00a9e0;
    font-size: 14px;
    line-height: 1.5;
    text-align: left;
}

.sitemap .sitemap_box .list li .link_btn a span.outlink {
    background: url(../img/icon_newwindow1.png)no-repeat right;
    width: auto;
    padding: 0 2.1em 0 1em;
}

.sitemap .sitemap_box .list li .link_btn_eff {
    width: 100%;
    height: 100%;
    left: -101%;
    background: #fff;
    position: absolute;
    transition: all .5s ease;
    z-index: 2;
    height: 80px;
}

.sitemap .sitemap_box .list li .link_btn_eff span {
    position: relative;
    transition: all .5s ease;
    z-index: 10;
    display: block;
    width: 100%;
    height: auto;
}

.sitemap .sitemap_box .list li .link_btn a {
    font-family: arial;
    text-decoration: none;
    line-height: 50px;
    transition: all .5s ease;
    transition: all .5s ease;
    z-index: 2;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 100%;
    font-size: 14px;
    padding: 1.6em 1em;
    color: #00a9e0;
    height: 80px;
}

.sitemap .sitemap_box .list li .link_btn:hover .link_btn_eff {
    left: 0;
}

.sitemap .sitemap_box .list li .link_btn:hover a {
    color: #00a9e0;
    opacity: 1;
}

.sitemap .sitemap_box .list li .link_btn a,
.sitemap .sitemap_box .list li .link_btn:hover a {
    background: url(../img/icon_linkimg.png)no-repeat center right;
    right: 0.8em;
}

.sitemap .sitemap_box .list li:nth-child(4n) {
    margin-right: 0;
}

.p_recruit .recruit .confirm .service.submitbtn {
    margin: 6em auto 4em;
    overflow: initial;
}

.brand .pd_tb.conts_width {
    max-width: 65%;
    padding: 6em 2em;
}

.dl_bland .full_w {
    margin: 1em 0 8em;
}

.dl_bland.service .full_w .link_box {
    text-align: center;
    margin: 0 auto;
    width: 40%;
}

.dl_bland.service .full_w .link_btn a span {
    background: none;
    padding: 0;
}

.bg_white {
    background: #fff;
    padding: 2em 3em;
}

.brand .pd_tb.conts_width .bg_white {
    background: none;
    padding: 0;
}

.btn_privacy.confirm {
    margin: 2em 0 3em;
}

.news_detail {
    margin-bottom: 2em;
}

.news_detail .tit {
    font-size: 28px;
    color: #00a9e0;
    line-height: 1.6;
}

.news_detail .sec_day {
    margin-bottom: 2.5em;
}

.news_detail .sec_day .icon {
    color: #fff;
    padding: 0.2em 1.4em;
    border-radius: 20px;
}

.news_detail .sec_day .date {
    padding-left: 1em;
    font-size: 22px;
}

.news_detail_main {
    overflow: hidden;
}

.news_detail_box {
    text-align: center;
    margin-top: 2em;
}

.news_detail_box iframe {
    max-width: 500px;
    width: 100%;
}

.news_detail_box p {
    text-align: left;
    line-height: 1.5;
    font-weight: 400;
    font-family: "NotoSansCJKjp-Regular", sans-serif;
    padding: 10px 0;
}


/* ハンバーガー矢印 */
.navToggle {
    /* position: fixed;
    right: 13px;
    top: 12px;
    width: 42px;
    height: 51px; */
    cursor: pointer;
    /* z-index: 3; */
    text-align: center;
}

.navToggle span {
    display: block;
    position: absolute;
    /* .navToggleに対して */
    width: 40px;
    border-bottom: solid 3px #fff;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 6px;
    left: 50%;
    margin-left: -20px;
}

.navToggle span:nth-child(1) {
    top: 30px;
}

.navToggle span:nth-child(2) {
    top: 42px;
}

.navToggle span:nth-child(3) {
    top: 54px;
}

.navToggle span:nth-child(4) {
    border: none;
    color: #fff;
    font-size: 9px;
    font-weight: bold;
    top: 65px;
}

/* 最初のspanをマイナス45度に */
.navToggle.active1 span:nth-child(1) {
    top: 40px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
    left: 50%;
    margin-left: -20px;
}

/* 2番目と3番目のspanを45度に */
.navToggle.active1 span:nth-child(2),
.navToggle.active1 span:nth-child(3) {
    top: 40px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
    left: 50%;
    margin-left: -20px;
}

/* service再調整分 */
.udservice_area.udservice.cubism .list li .tit {
    font-size: 24px;
    margin-bottom: 0.5em;
}

.udinner.bg1 {
    background: #fff0ea;
}

.service .udservice.cubism .full_w .link_btn:hover a,
.service .udservice.cubism .full_w .link_btn:hover a span {
    color: #ff6e2d;
    opacity: 1;
}

.service .udservice.cubism .full_w .link_btn a span {
    width: auto;
    display: inline-block;
    line-height: 1.2;
    text-align: left;
    background-image: url(../img/icon_newwindow.png);
    background-position: right;
    justify-content: center;
    background-repeat: no-repeat;
    padding: 0 2.3em 0 0.6em;
    background-size: 15px;
}

.udservice_area.udservice.cubism .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
}

.udservice_area.udservice.cubism .list li {
    width: 48%;
    position: relative;
}

.udservice_area.udservice.cubism .list li:first-child:after {
    content: "";
    width: 1px;
    height: 16em;
    background: #959595;
    position: absolute;
    right: -0.5em;
    top: 0;

}

.service .udservice_area.udservice.cubism .full_w .link_box {
    width: 96%;
}

.service .udservice_area.udservice.cubism .full_w .link_btn {
    background: #ff6e2d;
    border: 1px solid #ff6e2d;
}

.udservice_area.udservice.cubism .inner_img {
    left: 0;
    top: 50%;
    margin-top: -180px;
}

.inner_img.img1 .bg_img {
    right: auto;
    background: url(../img/img_service2.png)no-repeat;
    background-position: center center;
    background-size: 74%;
    top: 0;
    position: absolute;
    width: 60%;
    height: 100%;
    width: 50%;
    /*left: -3em;*/
}

.inner_img.img4 .bg_img {
    right: auto;
    background: url(../img/img_service6.png)no-repeat;
    background-position: center center;
    background-size: 74%;
    top: 0;
    position: absolute;
    width: 60%;
    height: 100%;
    width: 50%;
    /*left: -3em;*/
}

.inner_img.img5 .bg_img {
    right: auto;
    background: url(../img/img_service7.png)no-repeat;
    background-position: center center;
    background-size: 74%;
    top: 0;
    position: absolute;
    width: 60%;
    height: 100%;
    width: 50%;
    /*left: -3em;*/
}


.service_area.service1 {
    margin-bottom: 3em;
}

.service_lcs .service_area.left:after {
    display: none;
}

.udservice .full_w .link_btn {
    background: #097c25;
    border: 1px solid #097c25;
}

.udservice.nijima .full_w .link_btn {
    background: #ee3271;
    border: 1px solid #ee3271;

}

.udservice.nijima .full_w .link_btn {
    background: #ee3271;
    border: 1px solid #ee3271;

}

.service .udservice .full_w .link_btn a span {
    width: auto;
    display: inline-block;
    line-height: 1.2;
    text-align: left;
    background-image: url(../img/icon_newwindow.png);
    background-position: 8em;
    justify-content: center;
    background-repeat: no-repeat;
    padding: 0 3em 0 1.4em;
    background-size: 15px;
}

.service .udservice.program .full_w .link_btn a span {
    background-image: none;
    padding: 0;
}

.service_nijima .txt_area,
.service_program .txt_area {
    left: 0;
}

.udservice {
    position: relative;
}

.udservice .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -20px;
    margin-left: -20px;
}

.service_program .service_area.right:after {
    display: none;
}

.udservice_area {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 3em;
    align-items: center;
}

.inner_img {
    width: 100%;
    height: 90%;
    position: absolute;
    max-height: 450px;
}

.inner_img .bg_img {
    right: 0;
    background: url(../img/img_service5.png)no-repeat;
    background-position: center center;
    background-size: 74%;
    top: 0;
    position: absolute;
    width: 60%;
    height: 100%;
    width: 50%;
}

.inner_img.img2 .bg_img {
    right: 0;
    background: url(../img/img_service3.png)no-repeat;
    background-position: center center;
    background-size: 74%;
    top: 0;
    position: absolute;
    width: 60%;
    height: 100%;
    width: 50%;
}

.inner_img.img3 .bg_img {
    right: 0;
    background: url(../img/img_service4.png)no-repeat;
    background-position: center center;
    background-size: 74%;
    top: 0;
    position: absolute;
    width: 60%;
    height: 100%;
    width: 50%;
}

.inner_img.img3.img2 .bg_img {
    left: 0;
}

.bg_img.left {
    aspect-ratio: 2/1;
    max-width: 600px;
    right: 55% !important; 
}

.bg_img.right {
    aspect-ratio: 2/1;
    max-width: 600px;
    left: 55%;
}

.udinner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -20px;
    margin-left: -20px;
    background: #eaf7f0;
    padding: 1em 2em;
    width: 90%;
    max-width: 1600px;
}

.udinner.right {
    margin: 0 0 0 auto;
}

.udinner.right .box {
    margin: 0 0 0 auto;
}

.udinner.bg2 {
    background: #fdeaf1;
}

.udinner.bg3 {
    background: #e5e5e5;
}

.udinner.bg4 {
    background: #bcafee;
}

.udinner.bg5 {
    background: #f8b9c8;
}

.udinner .box {
    width: 64%;
    padding: 2em 0;
}

.udinner .box .titbox {
    /* line-height: 11em; */
    margin: -4em 0 2em;
    ;
}

.udinner .box .titbox .h3tit {
    font-size: 42px;
}

.udinner .box .titbox .subtit {
    font-size: 26px;
    line-height: 1.2;
    margin-bottom: 4em;
    margin-bottom: 1em;
}

.udinner .box .txt {
    font-size: 16px;
    line-height: 1.6;
}

.udservice.l2d .full_w .link_btn {
    background: #34393b;
    border: 1px solid #34393b;
}

.udservice.nijimal .full_w .link_btn {
    background: #6A48F3;
    border: 1px solid #6A48F3;
}

.udservice.l2djuku .full_w .link_btn {
    background: #f93866;
    border: 1px solid #f93866;
}

.udservice_area.nijimal .full_w,
.udservice_area.l2djuku .full_w {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-end;
}

.service .nijima .full_w .link_btn:hover a {
    color: #ee3271;
}

.service .l2d .full_w .link_btn:hover a {
    color: #34393b;
}

.service .program .full_w .link_btn:hover a {
    color: #1e7c24;
}

.service .nijimal .full_w .link_btn:hover a {
    color: #6A48F3;
}

.service .l2djuku .full_w .link_btn:hover a {
    color: #f93866;
}

.service .udservice.cubism li .full_w .link_btn:hover a span {
    background-image: url(../img/icon_newwindow2.png);
}

.service .udservice.nijima .full_w .link_btn:hover a span {
    background-image: url(../img/icon_newwindow4.png);
}

.service .udservice.l2d .full_w .link_btn:hover a span {
    background-image: url(../img/icon_newwindow3.png);
}

.service .udservice.nijimal .full_w .link_btn:hover a span {
    background-image: url(../img/icon_newwindow5.png);
}

.service .udservice.l2djuku .full_w .link_btn:hover a span {
    background-image: url(../img/icon_newwindow6.png);
}

.scsupport .scsupportarea > img {
    width: 100%;
}

/* モーダル */
.modalArea {
    display: none;
    position: fixed;
    z-index: 999;
    /*サイトによってここの数値は調整 */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.modalBg {
    width: 100%;
    height: 100%;
    background-color: rgba(30, 30, 30, 0.9);
}

.modalWrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 1000px;
    padding: 10px 30px;
}

.brand .modalWrapper {
    max-width: 900px;
    ;
}

.closeModal {
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    cursor: pointer;
    color: #fff;
    font-size: 20px;
    margin-left: 4em;
    display: inline-block;
    right: 0em;
}

.openModal {
    cursor: pointer;
}

.p_recruit .interview_comment {
    background: #fff;
    padding: 8em 2em 4em;
}

.p_recruit #sec1.interview_comment {
    padding: 1.4em 2em 4em;
}

.p_recruit #sec1.interview_comment .sns_sc.snsarea {
    margin: 0 auto;
    max-width: 100%;
    padding-bottom: 4em;
}

.p_recruit .recruitment_form.sub_detail {
    margin: 0 auto;
    width: 100%;
    max-width: 50%;
    background: none;
    width: 400px;
    padding-bottom: 2em;
}

.p_recruit .recruitment_form.sub_detail .service.sub_detailbtn .full_w {
    max-width: 100%;
    margin: 0 auto 3em;
    width: 100%;
}

.p_recruit .recruitment_form.sub_detail .service.sub_detailbtn .full_w .link_box {
    width: 100%;
}

.p_recruit .recruitment_form.sub_detail .service.sub_detailbtn .full_w .link_btn a span {
    background: none;
    padding: 0;
    line-height: 1.4;
}

.p_recruit .recruitment_form.sub_detail .service.sub_detailbtn .full_w:hover .link_btn a {
    color: #00a9e0;
}

.p_recruit .recruitment_form.sub_detail .service.sub_detailbtn .full_w.bg_back .link_btn {
    background: #b5b5b5;
    border: 1px solid #b5b5b5;
}

.p_recruit .recruitment_form.sub_detail .service.sub_detailbtn .full_w.bg_back .link_btn:hover a {
    color: #b5b5b5;
}

.p_recruit .recruitment_form.sub_detail .service.sub_detailbtn .full_w.bg_back {
    max-width: 80%;
}

.bg_fff {
    background: #fff;
}

.p_recruit .recruitment_form.sub_detail.rede .service .full_w .link_btn {
    background: #ff6e2d;
    border: 2px solid #ff6e2d;
}

.p_recruit .recruitment_form.sub_detail.rede .service .full_w .link_btn a span {
    font-size: 18px;
    width: 100%;
    padding-left: 0;
    vertical-align: middle;
    width: auto;
    background: url(../img/icon_newwindow.png)no-repeat center right;
    background-position: 8.5em;
    padding-right: 2.5em;
}

.p_recruit .recruitment_form.sub_detail.rede .service .full_w:hover .link_btn a span {
    background: url(../img/icon_newwindow2.png)no-repeat center right;
}

.p_recruit .recruitment_form.sub_detail.rede .service .full_w .link_btn:hover a {
    color: #ff6e2d;
}

.bg_teamofuse {
    background: #ffffffa1;
    padding: 2em 3em;
}

.bg_privacy {
    background: #ffffffa1;
    padding: 2em 3em;
    margin-bottom: 3em;
}

/* TOPフォーム修正 */
.toppage_formarea #mc_embed_signup {
    width: 860px;
    margin: 0 auto;
}

.toppage_formarea #mc_embed_signup .mc-field-group {
    width: 82%;
    display: inline-block;
    vertical-align: -webkit-baseline-middle;
    padding-right: 2%;
}

.toppage_formarea #mc_embed_signup .clear {
    display: inline-block;
    vertical-align: top;
}

.toppage_formarea #mc_embed_signup .mc-field-group input {
    height: 50px;
    border-color: #282828;
    border-radius: 0;
}

.toppage_formarea #mc_embed_signup .button {
    height: 50px;
    background: #00a9e0;
    border-radius: 2px;
    box-shadow: 0px 6px 18px 0px #00000040;
    border: 2px solid #00a9e0;
    cursor: pointer;
}

.toppage_formarea #mc_embed_signup .button:hover {
    background-color: #e0edf3;
    color: #00a9e0;
    border: 2px solid #00a9e0;
}

/* TOP動画 */
.kv_video {
    padding-top: 68px;
}

.movie-wrap {
    position: relative;
    padding-bottom: 56.25%;
    /*アスペクト比 16:9の場合の縦幅*/
    height: 0;
    overflow: hidden;
}

.movie-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/* ニュースページ調整 */
.news_detail_box {
    text-align: left;
}

.news_detail_box p {
    line-height: 1.5;
    font-size: 16px;
    letter-spacing: 50;
}

.news_detail_box strong {
    font-weight: 700;
    font-family: "NotoSansCJKjp-Bold", sans-serif;
}

.news_detail_box strike {
    text-decoration: line-through;
}

.news_detail_box pre {}

.news_detail_box a {
    font-size: 16px;
    color: #00a9e0;
    font-weight: 700;
    font-family: "NotoSansCJKjp-Bold", sans-serif;
}

.news_detail_box h2 {
    margin: 40px 0;
    color: #00a9e0;
    font-size: 32px;
    font-weight: 800;
    font-family: "NotoSansCJKjp-Medium", sans-serif;
    line-height: 1.2;
}

.news_detail_box h3 {
    margin: 30px 0;
    font-size: 26px;
    border-bottom: 2px solid #000;
    font-weight: 800;
    font-family: "NotoSansCJKjp-Medium", sans-serif;
    display: inline-block;
    padding-bottom: 0.8em;
    line-height: 1.3;
}

.news_detail_box h4 {
    margin: 25px 0;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.5;
}

.news_detail_box h5 {
    margin: 25px 0;
    font-weight: bold;
    font-size: 16px;
}

.news_detail_box h6 {
    margin: 20px 0;
    font-size: 14px;
    font-weight: bold;
}

.news_detail_box ul li {
    line-height: 1.5;
    margin: 1em 0em;
    font-family: "NotoSansCJKjp-Regular", sans-serif;
}

.news_detail_box ul {
    list-style: disc;
    padding-left: 1.2em;
}

.news_detail_box ul li ul {
    list-style: circle;
}

.news_detail_box ul li ul li ul li {
    position: relative;
}

.news_detail_box ul li ul li ul {
    list-style: none;
}

.news_detail_box ul li ul li ul li:before {
    content: "";
    position: absolute;
    top: .1em;
    left: -1em;
    -webkit-transform: rotate(50deg);
    -ms-transform: rotate(50deg);
    transform: rotate(50deg);
    width: 5px;
    height: 10px;
    border-right: 3px solid #000;
    border-bottom: 3px solid #000;

}

.news_detail_box ol {
    counter-reset: section;
    list-style-type: none;
}

.news_detail_box ol li:before {
    counter-increment: section;
    content: counters(section, "-") ".";
}

.news_detail_box ol li {
    margin: 1em 2em;
}

.news_detail_box blockquote {
    position: relative;
    padding: 90px 5em;
    box-sizing: border-box;
    font-style: italic;
    color: #4e4e4e;
    background: #e0ecf3;
    margin: 45px auto;
    max-width: 75%;
    border: 2px solid #80a6b2;
}

.news_detail_box blockquote:before {
    display: inline-block;
    position: absolute;
    top: 50px;
    left: 40px;
    content: "";
    background: url(../img/icon_quote.png)no-repeat;
    background-size: 100%;
    width: 40px;
    height: 38px;
    line-height: 1;
    transform: rotate(-180deg);
}

.news_detail_box blockquote:after {
    display: inline-block;
    position: absolute;
    bottom: 50px;
    right: 40px;
    text-align: center;
    content: "";
    background: url(../img/icon_quote.png)no-repeat;
    background-size: 100%;
    width: 40px;
    height: 38px;
    line-height: 1;
}

.news_detail_box blockquote p {
    position: relative;
    padding: 0;
    margin: 10px 0;
    z-index: 3;
    line-height: 1.7;
}

.news_detail_box table {
    width: 100%;
    max-width: 100%;
    margin: 45px auto;
    border: 2px solid #80a6b2;
    display: block;
    -webkit-overflow-scrolling: touch;
    font-weight: 400;
    font-family: "NotoSansCJKjp-Regular", sans-serif;
}

.news_detail_box table tbody {
    width: 100%;
    display: table;
    table-layout: fixed;
}


.news_detail_box table tr:nth-child(odd) {
    background: #eee;
}

.news_detail_box table tr:nth-child(even) {
    background: #fff;
}

.news_detail_box table tr:nth-child(even) td,
.news_detail_box table tr:nth-child(odd) td {
    padding: 1em;
}

.news_detail_box table tr:first-child {
    background: #b6dae5;
    color: #000;
}

.news_detail_box table tr:first-child td {
    text-align: center;
}

.news_detail_box table td {
    border-right: 2px solid #80a6b2;
    border-bottom: 2px solid #80a6b2;
    font-size: 15px;
    word-break: break-all;
    line-height: 1.5em;
}

.news_detail_box table td:last-child {
    border-right: none;
}

.news_detail_box table tr:last-child td {
    border-bottom: none;
}

/* ニュースページ調整 ここまで*/

/* kv */
#video iframe {
    position: fixed;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.iframe_software {
    background: #ffffffa8;
}

.iframe_software iframe {
    width: 100%;
    height: 100vw;
}

iframe#parentframe {
    width: 100%;
}

#myVideo {
    padding-top: 80px;
}

html[lang="en"] .iframe_software .ja,
html[lang="en"] .iframe_link.ja {
    display: none;
}

html[lang="ja"] .iframe_software .en,
html[lang="ja"] .iframe_link.en {
    display: none;
}

.gallery .gallery-item {
    padding-right: 1%;
}

.gallery .gallery-item:last-child {
    padding-right: 0;
}

.gallery-item .gallery-icon img {
    width: 100%;
    height: auto;
}

.gallery {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.iframe_link {
    margin-top: 4em;
    text-align: right;
}

.iframe_link a {
    color: #00a9e0;
    background: url(../img/icon_newwindow1.png)no-repeat center right;
    padding-right: 1.8em;
}

/* タイポグラフィ用CSS */
.typography h1 {
    font-size: 60px;
    font-family: "brandon-grotesque",
        sans-serif;
    font-weight: 700;
    font-style: normal;
    color: #00a9e0;
}

.typography .subtitle {
    font-size: 26px;
    color: #fff;
    font-weight: 700;
    font-family: "NotoSansCJKjp-Bold",
        sans-serif;

}

.typography h2 {
    font-size: 52px;
    font-family: "brandon-grotesque",
        sans-serif;
    font-weight: 700;
    font-style: normal;
    color: #00a9e0;
}

.typography .s_subtitle {
    font-size: 18px;
    color: #000;
    font-weight: 700;
    font-family: "NotoSansCJKjp-Regular",
        sans-serif;

}

.typography h3 {
    font-size: 34px;
    font-family: "brandon-grotesque",
        sans-serif;
    font-weight: 700;
    font-style: normal;
    color: #00a9e0;
}

.typography .full_w {
    position: relative;
    margin: 3em auto;
}

.typography .full_w .link_box {
    max-width: 400px;
    width: 100%;
    margin: 0 auto;
    position: relative;
}

.typography .full_w .link_btn a {
    background: none;
    justify-content: center;
}

.typography .full_w .link_btn a span {
    padding: 0;
}


/* 英語ボタン調整 */
html[lang="en"] .sec.product .inner > .full_w .link_btn a span {
    padding: 0;
    width: 100%;
}

html[lang="en"] .sec.product .inner > .full_w .link_btn a {
    background: none !important;
}

html[lang="en"] .sec.showcase .full_w .link_btn a span {
    background: none !important;
    padding: 0;
}

html[lang="en"] .recruit.sec .full_w .link_btn a span {
    background: none !important;
    padding: 0;
}


/* =WordPress Core
-------------------------------------------------------------- */
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
    /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
    background-color: #eee;
    clip: auto !important;
    clip-path: none;
    color: #444;
    display: block;
    font-size: 1em;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
}

.select_lang_area {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.select_lang_area::before {
    position: absolute;
    content: '▼';
    right: 8px;
    color: #00a9e0;
    font-size: 12px;
    font-family: "Yu Gothic", 游ゴシック, YuGothic, 游ゴシック体, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Noto Sans JP", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif !important;
}

.select_lang {
    padding: 7px 25px 7px 10px;
    border: 1px solid #00a9e0;
    border-radius: 4px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    line-height: 1;
    outline: none;
    font: 400 13.3333px Arial;
}

.support-contents-list {
    margin-top: 2rem;
}

.support-contents-list > li {
    padding-bottom: 30px;
    border-top: 2px solid #a8a9a9;
}

.support-contents-list > li:nth-last-of-type(1) {
    border-bottom: 2px solid #a8a9a9;
}

.support-content-title {
    position: relative;
    display: flex;
    align-items: center;
    margin-top: 30px;
    padding: 0 53px 0 15px;
    color: #2c97d7;
    font-size: 22px;
    cursor: pointer;
}

.support-content-title::after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    border-right: 4px solid #2c97d7;
    border-bottom: 4px solid #2c97d7;
    transform: rotate(45deg);
    margin-bottom: 14px;
    right: 15px;
}

.support-content-title.displayed::after {
    margin-top: 14px;
    transform: rotate(-135deg);
}

.support-content-position {
    display: none;
}

.support-contents-list > li:nth-of-type(1) .support-content-position,
.support-contents-list > li:nth-of-type(2) .support-content-position {
    display: block;
}

.support-content {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 20px;
    margin-bottom: 10px;
}

.support-content > li {
    display: flex;
    align-items: center;
    width: calc((100% - 36px) / 3);
    padding: 15px;
    border: 1px solid #c9c9c9;
    border-radius: 3px;
    cursor: pointer;
    line-height: 1.5;
}

.support-content > li:hover {
    opacity: 0.5;
}

.support-content > li > span {
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 20px;
}

.support-content > li > span::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 10px;
    border-color: transparent transparent transparent #2c97d7;
    left: 0;
}

.support-content > li.selected {
    color: #ffffff;
    background-color: #379bd8;
    border: 1px solid #379bd8;
}

.support-content > li.selected:hover {
    opacity: 1;
}

.support-content > li.selected > span::before {
    border-color: transparent transparent transparent #ffffff;
}

.panel-block,
#formArea {
    display: none;
}

.panel-block .txt > p {
    font-size: 18px;
    line-height: 1.8;
    text-align: center;
}

.panel-block-list > li {
    padding-bottom: 80px;
    margin-bottom: 80px;
    border-bottom: 1px solid #d9d9d9;
}

.manual-btn-area {
    width: 90%;
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
    margin: 2.5em auto 0;
}

.manual-btn-area > a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc((100% - 30px) / 2);
    border-radius: 10px;
    border: 2px solid #ff6e2d;
    color: #ff6e2d;
    font-size: 18px;
    line-height: 1.4;
    text-align: center;
    cursor: pointer;
    opacity: 1 !important;
    padding: 20px 54px;
}

.manual-btn-area > a::after {
    content: '';
    position: absolute;
    width: 24px;
    height: 19px;
    background: url(../img/manual-icon-orange.png) no-repeat center center;
    right: 15px;
}

.manual-btn-area > a:hover {
    color: #ffffff;
    background-color: #ff6e2d;
}

.manual-btn-area > a:hover::after {
    background: url(../img/manual-icon-white.png) no-repeat center center;
}

.panel-caution {
	color: red;
}

.form-caution {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.8;
    color: red;
    text-align: center;
    margin-top: 30px;
    margin-bottom: 20px;
}

#formArea > p:nth-of-type(n+2) {
    text-align: center;
    line-height: 1.8;
    margin-top: 30px;
}

.display-form-check-area {
    text-align: center;
}

.display-form-check-area > label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.display-form-check-area input {
    display: none;
}

.display-form-check {
    position: relative;
}

.display-form-check::before {
    content: '';
    width: 30px;
    height: 30px;
    margin-right: 10px;
    border: 1px solid #b2b2b2;
}

.display-form-check > input[type=checkbox]:checked + p::before {
    content: '';
    position: absolute;
    width: 15px;
    height: 30px;
    border-right: 5px solid #2c97d7;
    border-bottom: 5px solid #2c97d7;
    transform: rotate(40deg);
    left: 13px;
    bottom: 8px;
    z-index: 2;
}

.display-form-check > input[type=checkbox]:checked + p::after {
    content: '';
    position: absolute;
    width: 17px;
    height: 28px;
    border-right: 12px solid #ffffff;
    border-bottom: 5px solid #ffffff;
    transform: rotate(40deg);
    left: 16px;
    bottom: 10px;
}

.display-form-check-area p {
    font-size: 20px;
}

.progress-area {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 71px;
}

.progress-figure {
    position: relative;
    width: 40%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0;
    margin: 0;
    list-style: none;
}

.progress-figure::before {
    content: '';
    position: absolute;
    width: 98%;
    height: 5px;
    background-color: #b5b5b5;
}

.progress-figure > li {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}

.progress-num {
    width: 70px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 35px;
    font-size: 20px;
    color: #ffffff;
    background-color: #d9d9d9ff;
}

.progress-num.active {
    background-color: #00A8E0;
}

.progress-explanation {
    position: absolute;
    width: 90px;
    top: 78px;
    font-size: 14px;
    text-align: center;
}

.user-type-area {
    display: none;
    align-items: center;
    justify-content: space-between;
}

.user-type-btn {
    position: relative;
    width: calc((100% - 2px) / 2);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 0;
    color: #ffffff;
    background-color: #bebcbc;
    cursor: pointer;
}

.user-type-btn::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 20px 0 20px;
    border-color: #bebcbc transparent transparent transparent;
    bottom: -20px;
}

.user-type-btn.active {
    background-color: #369ad8;
}

.user-type-btn-single {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 0;
    color: #ffffff;
    background-color: #369ad8;
}

.user-type-btn.active::after,
.user-type-btn-single::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 20px 0 20px;
    border-color: #369ad8 transparent transparent transparent;
    bottom: -20px;
}

.form-table {
    width: 92%;
    margin: 0 auto;
}

.form-table > li {
    display: none;
}

.form-table > li > div:nth-of-type(1) {
    width: 45%;
    font-size: 15px;
    line-height: 1.5;
    vertical-align: top;
}

.form-table > li > div:nth-of-type(1) span.form-table-title {
    display: block;
    margin-top: 7px;
    font-size: 17px;
    font-weight: bold;
    font-family: "NotoSansCJKjp-Bold", sans-serif;
}

.form-table > li > div:nth-of-type(2) {
    width: 10%;
}

.form-table > li > div:nth-of-type(3) {
    width: 45%;
}

.form-table > li > div:nth-of-type(3) input,
.form-table > li > div:nth-of-type(3) select {
    width: 80%;
}

.form-table > li > div:nth-of-type(3) textarea {
    width: 100%;
    resize: none;
}

.form-table > li > div:nth-of-type(3) label {
    color: #ffffff;
    background: #4f4d4d;
    border-radius: 20px;
    font-size: 14px;
    padding: 0.63em 2em;
    font-weight: 400;
    font-family: "NotoSansCJKjp-Regular", sans-serif;
}

.form-table > li > div:nth-of-type(3) .wpcf7-radio {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    margin-top: 11px;
}

.form-table > li > div:nth-of-type(3) .wpcf7-radio > span {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-left: 0;
}

.form-table > li > div:nth-of-type(3) .wpcf7-radio > span:nth-of-type(n+2) {
    margin-top: 16px;
}

.confirm_area .form-table > li > div:nth-of-type(3) .wpcf7-radio > span {
    margin-top: 0;
}

.form-table > li > div:nth-of-type(3) .wpcf7-radio label {
    display: inline-flex;
    align-items: center;
    background: none;
    color: #000000;
    padding: 0;
    font-size: 16px;
    cursor: pointer;
}

.confirm_area .form-table > li > div:nth-of-type(3) label {
    display: none !important;
}

.confirm_area .form-table > li > div:nth-of-type(3) .wpcf7-radio label {
    display: block !important;
    cursor: inherit;
    font-family: inherit;
    font-weight: normal;
}

.form-table > li > div:nth-of-type(3) .wpcf7-radio label input[type="radio"] {
    display: none;
}

.form-table > li > div:nth-of-type(3) .wpcf7-radio label input[type="radio"] + span {
    display: inline-flex;
    align-items: flex-start;
}

.form-table > li > div:nth-of-type(3) .wpcf7-radio label input[type="radio"] + span::before {
    content: '';
    width: 18px;
    height: 18px;
    border-radius: 9px;
    border: 1px solid #b5b5b5;
    margin-right: 8px;
}

.form-table > li > div:nth-of-type(3) .wpcf7-radio label input[type="radio"]:checked + span::after {
    content: '';
    position: absolute;
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 6px;
    background-color: #369ad8;
    top: 3px;
    left: 3px;
}

.confirm_area .form-table > li > div:nth-of-type(3) .wpcf7-radio label input[type="radio"] + span {
    display: none !important;
}

.confirm_area .form-table > li > div:nth-of-type(3) .wpcf7-radio label input[type="hidden"] + span {
    padding-left: 0.4em;
}

.label_text {
    display: none;
}

.confirm_area .label_text {
    display: block;
}

.form-table > li > div {
    padding-bottom: 30px;
}

.required-icon {
    width: 60%;
    color: #ffffff;
    background-color: #da4a4a;
    margin: 7px auto 0;
    font-weight: bold;
    text-align: center;
    padding: 5px 0;
    line-height: 1;
    border-radius: 3px;
}

.required-icon-en {
    width: 75%;
    color: #ffffff;
    background-color: #da4a4a;
    font-size: 12px;
    margin: 7px auto 0 0;
    font-weight: bold;
    text-align: center;
    padding: 5px 0;
    line-height: 1;
    border-radius: 3px;
}

.agree-table .required-icon-en {
    margin: 7px auto 0;
}

.vertical-middle {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
}

.log-file-link {
    margin-top: 10px;
}

.log-file-link a {
    color: #00a9e0;
}

.agree-table {
    width: 100%;
    margin: 30px auto 0;
}

.agree-table tr {
    display: flex;
    align-items: center;
    justify-content: center;
}

.agree-table tr td:nth-of-type(1) {
    width: 10%;
}

.agree-table tr td:nth-of-type(2) .required-icon {
    margin-top: 0;
}

.agree-table tr td:nth-of-type(2) a {
    color: #119ecc;
}

.subscriber-caution {
    display: none;
    color: red;
    margin-top: 5px;
}

.confirm_area input[type="text"],
.confirm_area input[type="email"] {
    box-shadow: 0 0 0 1000px #f9f9f9 inset;
}

.confirm_area ::placeholder {
    color: #f9f9f9 !important;
}

.confirm_area ::-webkit-input-placeholder {
    color: #f9f9f9 !important;
}

.confirm_area ::-ms-input-placeholder {
    color: #f9f9f9 !important;
}
.confirm_area :-ms-input-placeholder {
    color: #f9f9f9 !important;
}

.confirm_area textarea {
    border: 0;
}

.confirm_area select {
    padding: 0.4em !important;
    color: #000000;
    opacity: 1;
}

.contact div.wpcf7 .ajax-loader {
    margin: 30px auto 0;
    display: block;
    width: 25px;
    height: 25px;
    background-size: cover;
}

.file-err-txt {
    display: none;
    font-size: 15px;
    color: red;
    margin-bottom: 8px;
}

.external-link-header > a::after {
    content: '';
    position: relative;
    display: inline-block;
    width: 14px;
    height: 14px;
    background-image: url('../img/icon_blank_link_black.png');
    background-size: cover;
    top: 1.5px;
    margin-left: 10px;
}

.external-link-header-under > a::after,
.external-link-footer > p::after,
.external-link-footer > a::after {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    background-image: url('../img/icon_blank_link_white.png');
    background-size: cover;
    margin-left: 10px;
}

.contact-notice-area {
    width: 100%;
    max-height: calc((24px * 5) - 20px);
    box-sizing: border-box;
    padding: 10px 20px;
    border: 1px solid #000000;
    overflow-y: scroll;
    margin-top: 4em;
}

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

    .contact_area {
        padding: 2em 0;
    }

    .contact .importanttxt {
        font-size: 4.6vw !important;
    }

    .support-content-title {
        margin-top: 20px;
    }

    .support-content-title {
        margin-top: 20px;
        padding: 0 45px 0 0;
    }

    .support-content-title::after {
        right: 4px;
    }

    .support-contents-list > li {
        padding-bottom: 20px;
    }

    .support-content {
        margin-bottom: 0;
    }

    .support-content > li {
        width: 100%;
    }

    .panel-block {
        padding: 0 6%;
    }

    .panel-block-list .txt {
        text-align: left;
        margin: 20px 0;
    }

    .manual-btn-area {
        width: 100%;
        margin-top: 0;
        gap: 15px;
    }

    .manual-btn-area > a {
        width: 100%;
    }

    .panel-block-list > li {
        padding-bottom: 3em;
        margin-bottom: 3em;
    }

    .display-form-check::before {
        margin-right: 12px;
    }

    .display-form-check-area p {
        width: calc(100% - 42px);
        font-size: 18px;
    }

    .display-form-check > input[type=checkbox]:checked + p::before {
        bottom: 18px;
    }

    .display-form-check > input[type=checkbox]:checked + p::after {
        bottom: 20px;
    }

    #formArea {
        padding: 0 6%;
    }

    .form-caution {
        font-size: 22px;
        line-height: 1.6;
    }

    .form-caution + p {
        text-align: left;
        font-size: 16px;
    }

    .contact .bg_formbox {
        width: 100%;
        max-width: 100%;
    }

    .progress-figure {
        width: 100%;
    }

    .user-type-btn {
        font-size: 18px;
        padding: 10px 0;
    }

    .form-table {
        width: 100%;
        padding: 30px 4% 0;
        margin: 0;
        background-color: #f9f9f9;
    }

    .form-table > li {
        flex-wrap: wrap;
    }

    .form-table > li > div:nth-of-type(1) {
        width: 100%;
        padding-bottom: 10px;
    }

    .form-table > li.required-box > div:nth-of-type(1),
    .form-table > li.required-mark > div:nth-of-type(1) {
        width: auto;
        max-width: calc(100% - 60px);
    }

    .form-table > li > div:nth-of-type(1) span.form-table-title {
        font-size: 20px;
    }

    .form-table > li > div:nth-of-type(2) {
        display: none;
    }

    .form-table > li.required-box > div:nth-of-type(2),
    .form-table > li.required-mark > div:nth-of-type(2) {
        display: block;
        width: 50px;
        padding-bottom: 10px;
        margin-left: 10px;
    }

    .required-icon {
        width: auto;
        font-size: 15px;
        margin: 8px auto 0;
        padding: 5px;
    }

    .required-icon-en {
        width: 100%;
        font-size: 10px;
        margin: 13px auto 0 0;
    }

    .form-table li > div:nth-of-type(3) {
        width: 100%;
    }

    .form-table > li > div:nth-of-type(3) input,
    .form-table > li > div:nth-of-type(3) select {
        width: 100%;
    }

    .form-table > li > div:nth-of-type(3) label {
        font-size: 16px;
    }

    .log-file-link {
        font-size: 15px;
        margin-top: 10px;
    }

    .agree-table {
        margin: 30px auto;
    }

    .agree-table tr td:nth-of-type(1) {
        width: 50px;
        margin-right: 10px;
    }

    .agree-table .required-icon {
        font-size: 14px;
        margin: 5px auto 0;
    }

    .contact-notice-area {
        width: 88%;
        max-height: calc((24px * 5) - 20px);
        margin: 2em auto 0;
        padding: 10px;
    }

}

@media all and (min-width: 0) and (max-width: 1550px) {

    .service_area.service1 {
        width: 85%;
    }

    .service_cubism .service_area.left {
        width: 70%;
    }

    .service2 .service_area.right .txt_area .inner,
    .service4 .service_area.right .txt_area .inner {
        width: 88%;
    }

}

@media all and (min-width: 0) and (max-width: 1520px) {

    .service .full_w .link_btn a {
        font-size: 13px;
    }

}

@media all and (min-width: 0) and (max-width: 1519px) {

    .link_box {
        max-width: 100%;
    }

    .full_w .link_box {
        width: 34%;
    }

    .product .link_btn {
        width: 100%
    }

    .product .cubismbox .subinner .full_w .link_box {
        width: 70%;
        right: 50%;
        margin-right: -35%;
    }

}


@media all and (min-width: 0) and (max-width: 1500px) {

    .news .inner .titbox {
        padding: 10em 0 0;
    }

    .showcase .full_w .link_btn a {
        background-position: 15em;
        background-size: 20%;

    }

    .product .cubismbox .subinner .txt {
        margin: 1em 0 2em;
    }

    .service1 .full_w .link_btn a span {
        padding-left: 1em;

    }

    .scsupport .region_list .list {
        width: 86.5%;
        justify-content: space-between;
    }

    .scsupport .region_list .list li {
        margin-right: 0;
    }

    .full_w .link_btn a span {
        padding-left: 2em;
    }

    .full_w .link_btn a {
        background-position: 15em;
    }

    .service_cubism .txt_area .list {}

}

@media all and (min-width: 0) and (max-width: 1440px) {

    .foot .footer_nav .footbox a {
        font-size: 13px;
    }

    .service .udservice.cubism .full_w .link_btn a span {
        padding: 0 2.1em 0 0.5em;
    }

}

@media all and (min-width: 0) and (max-width: 1430px) {

    .service_area.service3 .txt_area .inner .txt,
    .service_area.service4 .txt_area .inner .txt {
        margin-top: 4em;

    }

}

@media all and (min-width: 0) and (max-width: 1420px) {

    .service .full_w .link_btn a {
        font-size: 13px;
    }

    .service .udservice.cubism .full_w .link_btn a span {
        padding: 0 2em 0 0.3em;
    }

}

@media all and (min-width: 0) and (max-width: 1400px) {

    .product .cubismbox .subinner {
        padding: 2em;
    }

    .service_area.service1 {
        width: 90%;
        margin: 0 auto 5em 7%;
    }

    .service_cubism .service_area.left {
        padding: 2em;
        width: 64%;
    }

    .product .inner .product_list_area .box .con dt {
        font-size: 19px;
    }

    .recruit .Introductionbox .tab_cont li a {
        font-size: 15px;
    }

    .service1 .service_area .txt_area {
        width: 100%;
    }

    .udservice_area.udservice.cubism .list {
        flex-wrap: wrap;
    }

    .udservice_area.udservice.cubism .list li {
        width: 100%;
    }

    .udservice_area.udservice.cubism .list li .full_w {
        margin: 1em 0 0;
    }

    .udservice_area.udservice.cubism .list li:first-child .full_w {
        margin-bottom: 20px;
    }

    .udservice_area.udservice.cubism .list li:first-child:after {
        content: "";
        width: 90%;
        height: 1px;
        background: #959595;
        position: absolute;
        right: 50%;
        bottom: -1em;
        top: auto;
        margin-right: -40%;
        display: block;
    }

    .udservice_area.udservice.cubism .list li:last-child {
        margin-top: 2em;
    }

    .inner_img.img1 .bg_img {
        background: url(../img/img_service2.png)no-repeat;
        background-position: center center;
        background-size: contain;
        width: 52%;
        left: -8em;
    }

    .inner_img.img4 .bg_img {
        background: url(../img/img_service6.png)no-repeat;
        background-position: center center;
        background-size: contain;
        width: 52%;
        left: -8em;
    }

    .inner_img.img5 .bg_img {
        background: url(../img/img_service7.png)no-repeat;
        background-position: center center;
        background-size: contain;
        width: 52%;
        left: -8em;
    }

    .service .full_w .link_btn a {
        font-size: 16px;
    }

    .service .udservice.cubism .full_w .link_btn a span {
        padding: 0 2em 0 0.5em;
    }

}

@media all and (min-width: 0) and (max-width: 1350px) {

    .showcase .full_w .link_btn a {
        background-position: 14.5em;
    }

    .p_recruit .process .step dt {
        font-size: 18px;
    }

    .p_recruit .process .step:last-child dl {
        width: 87%;
    }

    .foot .footer_nav .footbox a {
        font-size: 12px;
    }

    .foot .footer_nav .footbox p {
        font-size: 17px;
    }

    .full_w .link_btn a span {
        padding-left: 1.5em;
    }

    .udinner {
        width: 80%;
    }

    .inner_img.img1 .bg_img {
        background: url(../img/img_service2.png)no-repeat;
        background-position: center center;
        background-size: contain;
        width: 55%;
        left: -6em;
    }

    .inner_img.img2 .bg_img {
        background: url(../img/img_service3.png)no-repeat;
        background-position: center center;
        background-size: contain;
    }

    .inner_img.img3 .bg_img {
        background: url(../img/img_service4.png)no-repeat;
        background-position: center center;
        background-size: contain;
    }

    .inner_img.img4 .bg_img {
        background: url(../img/img_service6.png)no-repeat;
        background-position: center center;
        background-size: contain;
        width: 55%;
        left: -6em;
    }

    .inner_img.img5 .bg_img {
        background: url(../img/img_service7.png)no-repeat;
        background-position: center center;
        background-size: contain;
        width: 55%;
        left: -6em;
    }

    .inner_img .bg_img {
        background: url(../img/img_service5.png)no-repeat;
        background-position: center center;
        background-size: contain;
    }

    .udinner .box .titbox .h3tit {
        font-size: 32px;
    }

    .udinner .box .titbox .subtit {
        font-size: 22px;
        margin-bottom: 0.7em;
    }

    .udservice_area.udservice.cubism .list li .tit {
        font-size: 22px;
    }

}

@media all and (min-width: 0) and (max-width: 1320px) {

    .product .cubismbox .subinner {
        padding: 2em;
    }

    .product .cubismbox .subinner .txt {
        margin: 0.8em 0 1.4em;
    }

    .service_cubism .service_area.left:after {
        left: -30em;
    }

    .full_w .link_btn a {
        font-size: 0.98em;
    }

    .product .inner .product_list_area .box .con dt {
        font-size: 1.09em;
    }

    .recruit .Introductionbox .tab_cont li a {
        font-size: 14px;
    }

    .recruit .Introductionbox .tab_cont li a .icon {
        font-size: 11px;
    }

}

@media all and (min-width: 0) and (max-width: 1300px) {

    .visionarea .area {
        margin-left: 4em;
    }

    .visionarea .inner {
        align-items: center;
        justify-content: center;
    }

    .visionarea img {
        /* width: 42%;
        top: 1em; */
    }

    .service .service1 .full_w .link_box {
        min-width: auto;
    }

    .service1 .full_w .link_btn a {
        font-size: 12px;
    }

    .service1 .full_w .link_btn a span {
        width: 100%;
        padding: 0;
    }

    .showcase .full_w .link_btn a {
        background-position: 15.5em;
    }

    .service .service1 .full_w .link_btn a {
        font-size: 12px;
    }

    .product .cubismbox .subinner .full_w .link_btn a {
        font-size: 16px;
    }

    .product .cubismbox .subinner .full_w .link_btn a span {
        background: url(../img/icon_blank_link_hover.png)no-repeat center right;
        background-position: 7.9em 1em;
        padding-right: 1.8em;
    }

    .product .cubismbox .subinner .full_w .link_btn:hover a span {
        background: url(../img/icon_blank_link.png)no-repeat center right;
        background-position: 7.9em 1em;
    }

    .p_recruit .other_int .list li .txt {
        font-size: 16px;
    }

    .foot .footer_nav .footbox p {
        font-size: 16px;
    }

    .foot .foot_sns_area .used_link li a {
        font-size: 12px;
    }

    .service_cubism .txt_area .list {
        margin-top: 7em;
    }

}

@media all and (min-width: 0) and (max-width: 1240px) {

    .news .post_choice .choice_list li {
        margin-right: 1.6em;
        padding-right: 1.6em;
    }

    .scsupport .region_list .list li a {
        padding: 0.7em 1.2em;
    }

    .service_cubism .service_area.left:after {
        left: -28em;
    }

    .foot .footer_nav .footbox a {
        font-size: 11px;
    }

    .recruit .Introductionbox .tab_cont {
        padding: 1.5em;
    }

    .recruit .Introductionbox .tab_cont li a {
        font-size: 13px;
    }

}

@media all and (min-width: 0) and (max-width: 1220px) {

    .cubism .udinner.right .box {
        width: 68%;
    }

}

@media all and (min-width: 0) and (max-width: 1200px) {

    .foot .footer_nav .footbox p {
        font-size: 15px;
    }

}

@media all and (min-width: 0) and (max-width: 1190px) {

    .full_w .link_btn a span {
        padding-left: 1em;
    }

    .full_w .link_btn a {
        background-position: 14em;
    }

    .product .inner .product_list_area .box .con dt {
        font-size: 1em;
    }

    .recruit .subbox .border .list li .inner_txt {
        width: 60%;
    }

}

@media all and (min-width: 0) and (max-width: 1142px) {

    .news .main_post .post_list li .icon_post {
        font-size: 0.75em;
    }

    .full_w .link_btn a,
    .full_w .link_btn a:hover {
        background-position: 13.4em;
    }

    .full_w .link_btn a span {
        padding-left: 0.8em;
    }

    .product .cubismbox .subinner {
        padding: 1.6em;
    }

    .product .cubismbox .subinner .txt {
        font-size: 0.9rem;
        margin: 0.6em 0 1em;
    }

    .showcase .full_w .link_btn a {
        background-position: 15em;
    }

    .service .service1 .service_area .full_w .link_btn a span {
        padding: 0 2.5em 0 1.4em;
        line-height: 1.6;
    }

    .news .post_choice .choice_list li {
        margin-right: 1.2em;
        padding-right: 1.2em;
    }

    .foot .footer_nav .footbox a {
        font-size: 10px;
    }

    .header .header_top_menu .logo {
        width: 17%;
        margin-right: 3em;
    }

    .header .header_top_menu .contact_logo {
        margin-right: 20px;
    }

}

@media all and (min-width: 0) and (max-width: 1130px) {

    .foot .footer_nav .footbox p {
        font-size: 14px;
    }

}

@media all and (min-width: 0) and (max-width: 1100px) {

    .header .header_top_menu .logo {
        margin-right: 2em;
    }

    .header .header_top_menu .contact_logo {
        margin-right: 20px;
    }

    .full_w .link_btn a {
        background-size: 20%;
    }

    .service1 .service_area .txt_area .inner {
        width: 95%;
    }

    .showcase .full_w .link_btn a {
        background-position: 14em;
    }

    .scsupport .region_list .list li a {
        padding: 0.7em 1em;
    }

    .p_recruit .recruit .subbox .border .list li .icon {
        width: 12em;
    }

    .p_recruit .other_int .list li .txt {
        font-size: 12px;
        padding: 1em 0;
    }

    .service_cubism .service_area.left:after {
        left: -25em;
    }

    .product .inner .product_list_area .box .con dt {
        font-size: 0.93em;
    }

    .foot .footer_nav .footbox p {
        font-size: 13px;
    }

    .recruit .Introductionbox .tab_cont {
        padding: 1em;
    }

    .recruit .Introductionbox .tab_cont li a {
        font-size: 12px;
    }

    .recruit .Introductionbox .tab_cont li a .icon {
        font-size: 10px;
    }

}

@media all and (min-width: 0) and (max-width: 1048px) {

    .news .post_choice .choice_list li span {
        font-size: 1.2em;
    }

    .service_area {
        width: 86%;
    }

    .showcase .full_w .link_btn a {
        background-position: 13.5em;
    }

    .news .post_choice .choice_list li {
        margin-right: 0.8em;
        padding-right: 0.8em;
    }

    .full_w .link_btn a {
        font-size: 0.94em;
    }

    .header .header_top_menu .logo {
        margin-right: 1em;
    }

}

@media all and (min-width: 0) and (max-width: 1024px) {

    .header:after {
        font-display: none;
    }

    .header--fixed .header:after {
        display: none;
    }

    #myVideo {
        padding-top: 60px;
    }

    .tit_en {
        font-size: 40px;
    }

    .service .service1 .service_area .full_w .link_btn a span {
        background-image: url(../img/icon_newwindow.png);
        background-position: 18em;
        background-size: 6%;
    }

    .service .service1 .service_area li:last-child .full_w .link_btn a span {
        background-position: 16.5em;
    }

    .product .cubismbox .subinner .tit {
        font-size: 2em;
    }

    .product .cubismbox .subinner {
        padding: 3em 2em;
    }

    .showcase .showbox .list li .tit {
        font-size: 0.9em;
    }

    .showcase .showbox .list li .txt {
        font-size: 0.8em;
    }

    .news .main_post .post_list li .icon_post {
        font-size: 0.7em;
    }

    .header .header_top_menu .logo {
        margin-right: 1em;
    }

    .header .header_top_menu .g-nav li {
        margin-left: 3%;
    }

    .foot .foot_rightbox {
        width: 76%;
    }

    .foot .footer_nav .footbox p {
        font-size: 16px;
    }

    .news .post_choice .choice_list li:nth-child(3) {
        margin-right: 0;
        padding-right: 0;
    }

    .news .post_choice .choice_list li:nth-child(3):after {
        display: none;
    }

    .kv_space {
        height: 0;
        padding-top: 65%;
        background: url(../img/kvsp_recruitTop.png) 0 0 no-repeat;
        background-size: contain;
    }

    .pc {
        display: none !important;
    }

    .sp {
        display: block !important;
    }

    /* 0107 update */
    .SNS_links {
        display: flex;
        justify-content: space-between;
        width: 100%;
        width: 96%;
        margin: 0 auto 2em;
        flex-wrap: wrap;
    }

    .SNS_links a {
        display: block;
        width: 42.667vw;
        width: 48%;
        margin-top: 3.3%;
    }

    .SNS_links a:nth-of-type(- n + 2) {
        margin-top: 1%;
    }

    .SNS_links img {
        display: block;
        width: 100%;
    }

    /* html[lang="ja"] .SNS_links .ja,
    html[lang="en"] .SNS_links .en {
        display: block;
    }
    html[lang="ja"] .SNS_links .en,
    html[lang="en"] .SNS_links .ja {
        display: none !important;
    } */
    .news_detail_snscover {
        padding: 0 6%;
    }

    .kv_area {
        background: url(../img/bg_movie.jpg)no-repeat;
        background-size: 100%;
        margin-top: 0;
        padding: 14em 0 19em;
    }

    .kv_area .tit {
        font-size: 6vw;
    }

    .foot_rightbox {
        display: none;
    }

    .header_detail .shadow {
        box-shadow: 4px 0px 13px 12px #0000000f;
        position: relative;
    }

    .header_detail .left {
        display: none;
    }

    .header.header_detail .header_top_menu {
        background: #fff;
        padding: 0;
        box-shadow: 8px 8px 10px 4px #00000021;
        height: 60px;
    }

    .header_detail .titbox {
        padding: 4em 0 3em;
        background: #b6dae5;
    }

    #wrapper {
        position: relative;
        width: 100%;
        display: block;
    }

    #wrapper:before {
        content: "";
        /* display: block; */
        padding-top: 56.25%;
        /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
    }

    #content {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .conts_width {
        max-width: 100%;
    }

    .pd_tb {
        /* padding: 3em 0; 0107 */
        padding: 0;
    }

    body {
        position: relative;
    }

    .header {
        width: 100%;
    }

    .navToggle img {
        width: 3.5em;
        vertical-align: bottom;
    }

    .globalMenuSp.active {
        display: block;
        overflow-y: scroll;
        height: 96vh;
    }

    .globalMenuSp {
        display: block;
        background: #59676d;
        position: absolute;
        width: 100%;
        height: 100vh;
        padding: 1em 0 3em;
        text-align: center;
        right: -100%
    }

    .globalMenuSp.active .lang {
        /* position: absolute;
        left: 50%;
        margin-left: -104px;
        width: 208px; */
    }

    .footlang {
        margin: 1em 0 3em;
        width: 100%;
    }

    .footlang .lang {
        width: 208px;
        height: 100%;
        margin: 0 auto;
    }

    .globalMenuSp .nav_logo {
        width: 70%;
        margin: 0 auto;
        text-align: left;
    }

    .globalMenuSp .footer_lang {
        margin: 3em 0 4em;
    }

    .globalMenuSp .footer_lang #pref {
        width: 200px;
        padding: 0.2em 0.5em;
    }

    .globalMenuSp .list {
        text-align: center;
        padding: 9em 12% 5em;
    }

    .globalMenuSp .list li {
        border-bottom: 3px solid #7f878b;
        text-align: left;
    }

    .globalMenuSp .list li a {
        color: #fff;
        letter-spacing: 0.09em;
        padding: 2em 0 2em 1em;
        width: 100%;
        display: inline-block;
    }

    .globalMenuSp .list li:last-child {
        border-bottom: none;
    }

    .globalMenuSp .foot_sns_area {
        width: 50%;
        margin: 0 auto 3em;
    }

    .globalMenuSp .foot_sns_area .l-link_area {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .navToggle {
        display: block;
    }

    .navToggle > img {
        height: 60px;
    }

    .header .header_top_menu .g-nav {
        display: none;
    }

    .fixed {
        position: fixed;
        width: 100%;
        top: 0;
    }

    .sp_topmenu_bg {
        background: #59686d;
    }

    /* .sp_topmenu_bg .logo p {
        display: none;
    } */
    .btn_nav .cl {
        display: none;
    }

    .btn_nav.cl_btn .cl {
        display: block;
    }

    .btn_nav.cl_btn .op {
        display: none;
    }

    .header .header_top_menu {
        padding: 0;
        max-width: 100%;
        background: #fff;
        height: 58px;
    }

    .header .header_top_menu .logo {
        width: auto;
        margin-left: 2em;
        padding-top: 0;
    }

    .header .header_top_menu .logo img {
        width: 100%;
    }

    .kv_area {
        background: url(../img/bg_movie.jpg)no-repeat;
        padding: 14em 0 19em;
        background-size: 100%;
        margin-top: 3.6em;
        background: none;
        padding: 0;
        margin: 0;
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-content: center;
    }

    .kv_area .tit {
        font-size: 6vw;
        position: absolute;
        top: 50%;
        z-index: 9;
        margin-top: -25px;
    }

    .visionarea {
        margin-top: 0;
        padding: 13em 0 8em;
        background: url(../img/bgsp_vision.png)no-repeat center bottom;
        background-size: 100%;
    }

    .visionarea img {
        /* top: 0; */
        width: 90%;
        margin: 2em auto 0;
    }

    .sec.showcase .full_w .link_btn a span {
        font-size: 16px;
    }

    .showcase .full_w .link_btn a {
        background-position: 15.5em;
    }

    .pc_vision {
        display: none;
    }

    .visionarea img.sp_vision {
        display: block;
    }

    .visionarea .inner {
        top: 0em;
        padding: 0 3em;
    }

    .visionarea .area {
        width: 100%;
        margin-left: 0;
    }

    .visionarea .titbox {
        text-align: center;
    }

    .visionarea .txt {
        margin-top: 1em;
    }

    .product {
        background: none;
        height: auto;
    }

    .product > .conts_width {
        max-width: 100%;
    }

    .product .titbox {
        padding: 0 3em;
    }

    .product .cubismbox {
        flex-wrap: wrap;
        margin-top: 3em;
        padding: 0 3em;
    }

    .product .cubismbox .subinner {
        order: 2;
        width: 100%;
        top: 0;
        border-radius: 0 0 20px 20px;
        padding: 2em 0;
    }

    .product .cubismbox img {
        order: 1;
        width: 100%;
        border-radius: 20px 20px 0 0;
    }

    .product .cubismbox .subinner .tit {
        text-align: center;
    }

    .product .cubismbox .subinner .txt {
        margin: 2em 0;
    }

    .product .cubismbox .subinner a {
        background: #fff;
        color: #ef8b5e;
        width: 80%;
        margin: 0 auto;
    }

    .product .cubismbox .subinner a span {
        background: url(../img/spicon_blank_link.png)no-repeat center right;
        padding-right: 1.6em;
        background-size: 10%;
    }

    .product .cubismbox .imgbox {
        width: 100%;
    }

    .product .cubismbox .cubismtxt {
        max-width: 100%;
        padding: 0 5em;
    }

    .product .inner .area_product {
        background: url(../img/spbg_area_product.png)no-repeat center;
        background-size: 100%;
    }

    .product .inner .spbg {
        background: url(../img/spbg_product_list_area.png)no-repeat center bottom;
        background-size: 100%;
    }

    .product .inner .product_list_area {
        margin: 4em 0 0;
        flex-wrap: wrap;
        padding-bottom: 8em;
        padding: 0 3em 8em;
        gap: 4%;
    }

    .product .inner .product_list_area > div:nth-of-type(n+4) {
        margin-top: 0;
    }

    .product .inner .product_list_area .box {
        width: 48%;
        margin-bottom: 2em;
    }

    .product .inner .product_list_area .box .con {
        padding: 1em;
    }

    .product .inner .product_list_area .box .con dd {
        font-size: 18px;
    }

    .product .inner .product_list_area .box_sp {
        background: #59676d;
        text-align: center;
        position: relative;
    }

    .product .inner .product_list_area .box_sp:after {
        content: "";
        position: absolute;
        width: 60px;
        height: 60px;
        background: url(../img/spimg_product3.png)no-repeat center bottom;
        bottom: 1em;
        right: 1em;
    }

    .product .inner .product_list_area .box .box_list {
        position: relative;
        height: 100%;
        padding: 1em;
        display: flex;
        justify-content: center;
        align-items: center;
        padding-bottom: 4em;

    }

    .product .inner .product_list_area .box .box_list:after {
        content: "";
        width: 86px;
        height: 14px;
        position: absolute;
        background: url(../img/link_arrow.png)no-repeat center right;
        left: 50%;
        margin-left: -43px;
        top: 50%;
    }

    .showcase {
        padding-bottom: 9em;
    }

    .showcase .showbox .list li {
        width: 48%;
    }

    .showcase .showbox .list {
        justify-content: space-between;
        padding: 0 2em;
    }

    .showcase .showbox .list li .txt {
        width: auto;
    }

    /* .showcase .showbox .list li img {
        width: 90%;
    } */

    .showcase .showbox .list li:nth-last-child(-n+2) {
        margin-bottom: 0;
    }

    .link_btn_showcase {
        background: #000;
        width: 60%;
        margin: 0 auto;
    }

    .link_btn_showcase a {
        color: #fff;
        padding: 1em 0;
        display: block;
        position: relative;
        padding: 1em 3em 1em 0;
        text-align: center;
    }

    .link_btn_showcase a:after {
        content: "";
        width: 60px;
        height: 14px;
        position: absolute;
        background: url(../img/link_arrow.png)no-repeat center right;
        background-size: 100%;
        right: 2em;
    }

    .news {
        background: url(../img/spbg_news.png)no-repeat center;
        height: auto;
        background-size: 100% 100%;
        padding: 6em 0 10em;
        background-position: 0 -4em;
    }

    .news .inner .titbox {
        padding: 0 2em;
    }

    .news .post_choice {
        margin: 0;
        width: 100%;
    }

    .news .post_choice .main_post {
        padding: 0 5em;
    }

    .news .post_choice .choice_list {
        width: 90%;
        margin: 0 auto 1em;
        justify-content: center;
        flex-wrap: wrap;
    }

    .news .post_choice .choice_list li {
        margin-right: 1em;
        padding-right: 1em;
        width: 25%;
        margin-bottom: 2em;
    }

    .news .main_post .post_list li {
        flex-wrap: wrap;
        margin-bottom: 1em;
        padding-bottom: 1em;
    }

    .news .main_post .post_list li p {
        display: block;
        width: 100%;
        padding-top: 0.6em;
    }

    .news .main_post .post_list li .data {
        width: 10%;
        margin: 0 0 0 1em;
    }

    .news .main_post .post_list li .icon_post {
        width: 12%;
    }

    .news .main_post .more_link {
        margin-top: 2em;
    }

    .news .twbox {
        display: none;
    }

    .recruit .sub_txt {
        width: 100%;
        padding: 0 2em;
        margin: 1.4em auto 2em;
    }

    .recruit .bnr_list {
        flex-wrap: wrap;
    }

    .recruit .bnr_list li {
        width: 100%;
        margin: 0 5em 3em;
    }

    .recruit .bnr_list li img {
        width: 100%;
    }

    .recruit .subbox {
        width: 100%;
        padding: 0 2em;
        margin: 2em auto 0;
        max-width: 100%;
    }

    .recruit .subbox:before {
        content: "";
        width: 100px;
        height: 90px;
        position: absolute;
        background: url(../img/touch04.gif)no-repeat center;
        top: -1.4em;
        right: 2em;
        background-size: 100%;
    }

    .recruit .subbox .tit {
        width: 65%;
    }

    .recruit .subbox .border {
        padding: 1em 2em;
    }

    .recruit .subbox .border .list li {
        flex-wrap: wrap;
    }

    .recruit .subbox .border .list li .inner_txt {
        width: 100%;
        margin-top: 1em;
    }

    .recruit .subbox .border .list li .date {
        display: inline-block;
        width: auto;
        padding-right: 1em;
    }

    .recruit .subbox .border .list li .icon {
        margin: 0;
        font-size: 16px;
        display: inline-block;
        width: auto;
        padding: 0.2em 3%;
    }

    .recruit .subbox .border .list li a {
        padding-top: 1em;
        line-height: 1.4;
    }

    .recruit .Introductionbox {
        margin: 3em 0 4em;
    }

    .recruit .Introductionbox .tab_tit:after {
        content: "";
        width: 26px;
        height: 26px;
        position: absolute;
        background: url(../img/icon_op.png)no-repeat center right;
        right: 1em;
        top: 50%;
        margin-top: -13px;
        background-size: 100%;
    }

    .recruit .Introductionbox .tab_tit {
        padding: 0.4em 0 0.4em 0.4em;
    }

    .recruit .Introductionbox .tab_tit.acopen:after {
        background: url(../img/icon_cl.png)no-repeat center right;
        background-size: 100%;
    }

    .recruit .Introductionbox .tab_cont li {
        width: 100%;
    }

    .recruit .Introductionbox .tab_cont {
        padding: 2em 1.5em;
    }

    .recruit .link_btn_showcase {
        position: relative;
        z-index: 4;
    }

    .recruit .link_btn_showcase:before {
        content: "";
        width: 80px;
        height: 80px;
        position: absolute;
        background: url(../img/img_recruit2.png)no-repeat center;
        top: -3.4em;
        left: 50%;
        margin-left: -160px;
        background-size: 100%;
        z-index: 2;
    }

    .letter {
        margin-top: 0;
        max-height: 100%;
    }

    .letter .bg_letter {
        background: url(../img/spbg_letter.png)no-repeat center;
        top: 0;
        background-size: 100% 124%;
        padding: 12em 0 8em;
        height: 100%;
        background-position: 0 -7em;
    }

    .letter .bg_letter .conts {
        padding: 0 5% 0;
    }

    .letter .bg_letter .conts .letter_link {
        width: 90%;
        margin: 0 auto 2em;
    }

    .letter .bg_letter .conts .letter_link li {
        width: 33%;
    }

    .letter .bg_letter .conts .letter_link li a img {
        width: 50%;
    }

    .letter .bg_letter .conts .txt {
        margin: 3em 0;
    }

    .letter .bg_letter .conts .mailform {
        padding: 0;
        flex-wrap: wrap;
        justify-content: center;
        margin-top: 4em;
        max-width: 100%;
    }

    .letter .bg_letter .conts .mailform form {
        margin-top: 2em
    }

    .letter .bg_letter .conts .mailform .inputarea {
        height: 60px;
        margin-right: 0;
    }

    #foot {
        padding: 3em 0 2em;
    }

    .foot {
        flex-wrap: wrap;
        margin-bottom: 0;
    }

    .foot .foot_sns_area {
        width: 100%;
        align-items: center;
        justify-content: center;
    }

    .foot .foot_sns_area .footer_logo {
        text-align: center;
    }

    .foot .foot_sns_area .footer_logo a {
        display: inline-block;
        width: 40%;
    }

    .foot .footer_nav {
        width: 100%;
        margin-bottom: 6em;
    }

    .footer_spinner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-content: space-between;
    }

    .foot .footer_nav .footbox {
        width: 70%;
        margin-left: 0;
    }

    .foot .footer_nav .footbox:first-child {
        width: 70%;
    }

    .foot .footer_nav .sp_footerbox {
        width: 36%;
    }

    .foot .footer_nav .sp_footerbox .footbox {
        width: 100%;
        margin-bottom: 2em;
    }

    .foot .under_link .used_link {
        color: #fff;
        font-size: 3.2vw;
        display: flex;
        justify-content: space-between;
        width: 100%;
    }

    .foot .under_link .used_link a {
        font-size: 16px;
    }

    .foot .under_link {
        width: 100%;
    }

    .foot .under_link .used_link li {
        width: 31%;
        text-align: center;
    }

    .foot .footer_nav .footbox .blank a {
        padding-right: 1.6em;
        font-size: 14px;
    }

    .foot .footer_lang {
        width: 100%;
        text-align: center;
        margin-bottom: 3em;
    }

    .footer_lang #pref {
        font-size: 2vw;
        background: #fff;
        width: 140px;
        border-radius: 0;
        padding: 0.2em 0.5em;
    }

    .footer_lang .pref {
        position: relative;
        display: inline-block;
    }

    .footer_lang .pref:after {
        content: "";
        right: 0.6em;
        position: absolute;
        box-sizing: border-box;
        width: 8px;
        height: 8px;
        border: 8px solid transparent;
        border-top: 8px solid #000;
        top: 50%;
        margin-top: -4px;
    }

    .foot_sns_area .l-link_area {
        justify-content: center;
    }

    .foot .foot_sns_area .l-link_area {
        justify-content: space-between;
        width: 35%;
    }

    /* 下層 */
    .other.pd_tb {
        padding: 4em 0;
        margin: 0 2em;
    }

    .other.pd_tb .bg_white {
        background: #fff;
        padding: 3em 0 2em;
    }

    .other .usedbox {
        padding: 0 2em;
    }

    .other.pd_tb.brand {
        background: none;
    }

    .bg_detaile.brand {
        background: url(../img/bg_logobrand.png);
        background-size: 100%;
        background-position: 0em -3em;
    }

    .brand .other.pd_tb {
        background: none;
    }

    .pager .pagination li {
        width: 6%;
        height: 4em;
    }

    .pager .pagination li.pre a,
    .pager .pagination li.next a {
        width: 100%;
        text-align: center;
    }

    .service_area.service1 {
        margin: 0 0 7em;
        width: 100%;
    }

    .service_nijima .service_area.right:after,
    .service_lcs .service_area.left:after,
    .service_program .service_area.right:after,
    .service_cubism .service_area.left:after {
        display: none;
    }

    .servicebox .dlbox {
        width: 100%;
        padding: 0 4%;
    }

    .servicebox .tit {
        line-height: 1.8;
        text-align: center;
    }

    .servicebox .txt span {
        padding-top: 2em;
        display: inline-block;
    }

    .servicebox .txt > img {
        margin: 0 auto;
    }

    .service_cubism .service_area.left {
        width: 100%;
    }

    .service1 .service_area .txt_area {
        width: 100%;
        padding: 0 6%;
        flex-wrap: wrap;
        justify-content: center;
    }

    .service1 .service_area .txt_area .inner {
        width: 100%;
        padding: 2em 0;
    }

    .service_cubism .txt_area .list {
        flex-wrap: wrap;
        margin-top: 1em;
    }

    .service_cubism .txt_area .list li {
        width: 100%;
    }

    .service_area .txt_area > img {
        width: 86%;
        margin: 0 auto;
    }

    .service_cubism .txt_area .list .tit {
        text-align: center;
    }

    .service_cubism .txt_area .list li:first-child:after {
        content: "";
        position: absolute;
        width: 660px;
        height: 2px;
        background: #959595;
        right: 50%;
        top: auto;
        bottom: 0;
        margin-right: -330px;
    }

    .service .service1 .full_w .link_box {
        margin: 0 auto;
    }

    .service_cubism .txt_area .list li:first-child {
        margin-bottom: 4em;
        padding-bottom: 4em;
    }

    .service1 .service_cubism .service_area.left .titbox {
        top: -2.5em;
        left: 6%;
    }

    .service_area.service2 {
        width: 100%;
        margin: 0 0 7em;
    }

    .service2 .service_area.right {
        margin: 0 auto;
        width: 100%;
    }

    .service_nijima .txt_area,
    .service_program .txt_area {
        left: 0;
        padding-left: 0;
        flex-wrap: wrap;
        padding: 0 6%;
    }

    .service2 .service_area.right .txt_area .inner,
    .service4 .service_area.right .txt_area .inner {
        width: 100%;
        margin: 0;
        padding: 2em 0;
    }

    .service_area .right_img {
        width: 86%;
        margin: 0 auto;
    }

    .service_area .txt_area .inner .txt {
        padding: 2% 0 0;
    }

    .service .full_w .link_box {
        margin: 0 auto;
        width: 70%;
    }

    .service_area .txt_area .titbox {
        right: 6%;
        top: -5.8em;
    }

    .service2 .service_area .txt_area .titbox,
    .service3 .service_area .txt_area .titbox {
        top: -7.5em;
    }

    .service_area .txt_area .titbox .h3tit {
        text-align: right;
    }

    .service3 .service_area .txt_area .titbox .h3tit {
        text-align: left;
    }

    .service_area.service3 {
        width: 100%;
        padding: 2em 0;
        margin: 0 0 7em;
    }

    .service_lcs .service_area.left {
        width: 100%;
    }

    .service3 .service_area .txt_area {
        width: 100%;
        margin: 0;
        padding-left: 0;
        flex-wrap: wrap;
        padding: 0 6%;
    }

    .service_area .txt_area .inner,
    .service_area .service_lcs .txt_area .inner {
        margin: 0;
        width: 100%;
        padding: 2em 0;
    }

    .service .service3 .full_w .lin,
    .service .service3 .full_w .link_box {
        position: relative;
    }

    .service_area.service4 {
        width: 100%;
        margin: 0;
    }

    .service4 .full_w .link_btn a span {
        width: 100%;
        padding-left: 0;
    }

    .service4 .service_area.right {
        width: 100%;
        padding: 0;
    }

    .service_program .txt_area {
        flex-wrap: wrap;
    }

    .service4 .service_program .txt_area {
        padding: 2em 6%;
        ;
    }

    .scnav.nav_detaile .list {
        max-width: 100%;
        align-items: flex-start;
        /* padding: 1.5em 1em 0; */
        padding: 1.5em 1em 0.8em;
    }

    .scnav.nav_detaile .list li a {
        display: inline-block;
    }

    .nav_detaile .list {
        flex-wrap: wrap;
        max-width: 100%;
        align-items: stretch;
        padding: 2em 0 1em;
    }

    .nav_detaile .list li {
        margin: 0 0.5em 1em;
    }

    .scnav.nav_detaile .list li {
        padding: 0;
    }

    .scnav.nav_detaile .list li:nth-child(4) {
        padding-right: 0;
    }

    .nav_detaile .list li:last-child {
        margin-bottom: 0;
    }

    .service1 .full_w .link_btn a {
        background: none;
    }

    .service .full_w .link_btn a span {
        padding-left: 1em;
        font-size: 14px;
        width: 100%;
        padding: 0 1em 0 0;
        background-image: url(../img/icon_newwindow.png);
        background-size: initial;
        background-repeat: no-repeat;
        background-position: 21em 1.2em;
    }

    .service4 .full_w .link_btn a span {
        padding: 0;
    }

    .service3 .service_area .txt_area .titbox {
        right: auto;
        left: 6%;
    }

    .service4 .full_w .link_btn a span,
    .service .full_w .link_btn a {
        background-image: none;
    }

    .service .full_w .link_btn a {
        justify-content: center;
    }

    .service .service_area .full_w .link_btn a span {
        width: auto;
        background-position: 9em 1.2em;
        padding: 0 3em 0 0;
    }

    .service .service4.service_area .full_w .link_btn a span {
        padding: 0;
    }

    .contact .importanttxt {
        text-align: center;
    }

    .recruit .w_bg {
        padding: 3em 6%;
    }

    .recruit .table_entry tr {
        padding: 0em;
        flex-wrap: wrap;
        max-width: 75%;
        margin: 0 auto 2em;
    }

    .recruit .table_entry th {
        width: 100%;
        padding-right: 0;
        text-align: left;
        margin: 0 0 0.5em 0;
    }

    .contact .table_entry td.selectWrap,
    .contact .table_entry td,
    .contact .table_entry td select.w300,
    .contact .table_entry td .w300 {
        width: 100%;
    }

    .confirm .service.submitbtn {
        flex-wrap: wrap;
    }

    .confirm .service.submitbtn .full_w {
        width: 100%;
        order: 1;
    }

    .confirm .service.submitbtn .full_w.backpage .link_box {
        width: 40%;
    }

    .confirm .service.submitbtn .full_w.backpage {
        order: 2;
    }

    .confirm.contact .contact_area .box {
        display: block;
        max-width: 68%;
        padding: 0 6%;
        margin: 0 auto;
    }

    .confirm.contact .importanttxt {
        width: 100%;
        text-align: left;
        padding-right: 0;
    }

    .confirm.contact .contact_area .box .list {
        width: 100%;
        margin: 0.2em 0 0.6em;
        max-width: 100%;
    }

    .header_detail .titbox {
        padding: 3em 0 3em;
    }

    .access_map {
        padding: 0 3em;
        flex-wrap: wrap;
        justify-content: center;
    }

    .access_map > p {
        text-align: left;
        width: 100%;
    }

    .access_map .full_w {
        margin: 3em auto 0;
    }

    .about_history .historybox {
        padding: 2em 1em;
        margin: 0 2em;
    }

    .about_history .historybox .box li {
        line-height: 1.6;
    }

    .about .representativebox {
        padding: 0 2em;
        margin-bottom: 5em;
    }

    .about .representativebox .box {
        width: 100%;
    }

    .about .representativebox .box img {
        margin: 2em auto;
        width: 40%;
    }

    .about_profile {
        padding: 0 2em;
    }

    .showcasebox .sec {
        padding: 0 2em;
    }

    .product .cubismbox .subinner .full_w .link_box {
        margin-right: 0;
        margin: 0 auto;
        text-align: center;
        right: 0;
        position: relative;
    }

    .scsupport {
        padding: 0 2em;
    }

    .scsupport.bg_detaile {
        background: url(../img/web_background.png)no-repeat center center;
        background-size: cover;
        background-position: 0 6em;
    }

    .region_area.recruit .Introductionbox .tab_tit {
        padding: 1.2em 1em;
        font-size: 24px;
    }

    .region_area.recruit .Introductionbox #acnav {
        padding: 0;
        margin-bottom: 0.2em;
    }

    .region_area.recruit .Introductionbox .tab_cont {
        margin-top: 0;
        padding: 0;
    }

    .region_area.recruit .Introductionbox .tab_cont ul {
        border-right: 1px solid #d1d1d1;
        border-left: 1px solid #d1d1d1;
    }

    .region_area.recruit .Introductionbox .tab_cont li {
        border-bottom: 1px solid #d1d1d1;
        margin-bottom: 0;
    }

    .region_area.recruit .Introductionbox .tab_cont li:nth-child(even) {
        background: #f4f4f4;
    }

    .region_area.recruit .Introductionbox .tab_cont li a {
        width: 100%;
        padding: 1.5em 2em;
        background: none;
        font-size: 18px;
        color: #119ecc;
    }

    .region_area.recruit .Introductionbox .tab_cont li:nth-child(even) {
        padding: 0;
    }

    .region_area.recruit .Introductionbox .tab_cont li:nth-last-child(-n+2) {
        margin-bottom: 0;
    }

    .region_area.recruit .Introductionbox .tab_cont li:last-child,
    .region_area.recruit .Introductionbox .tab_cont ul {
        border-radius: 0 0 10px 10px;
    }

    .p_recruit .recruit_dog:after {
        bottom: auto;
        top: 0;
        right: 4em;
    }

    .p_recruit .recruit_dog:before {
        top: 0;
        left: 5em;
    }

    .pd_tb.recruit_pd {
        padding: 3em 2em 0;
    }

    .p_recruit .recruit {
        max-width: 100%;

    }

    .p_recruit .recruit .subbox .border .list li .inner_txt {
        width: 100%;
    }

    .p_recruit .landscape .img_box {
        padding: 0 2em;
    }

    .p_recruit .interview .box .recruit_intviewarea {
        height: 0;
        padding-top: 50%;
    }

    .recruit_intview1 {
        background: url(../img/imgsp_recruit3.png) 0 0 no-repeat;
        background-size: contain;
        background-size: 100%;
    }

    .recruit_intview2 {
        background: url(../img/imgsp_recruit4.png) 0 0 no-repeat;
        background-size: contain;
        background-size: 100%;
    }

    .recruit_intview3 {
        background: url(../img/imgsp_recruit5.png) 0 0 no-repeat;
        background-size: contain;
        background-size: 100%;
    }

    .recruit_intview4 {
        background: url(../img/imgsp_recruit6.png) 0 0 no-repeat;
        background-size: contain;
        background-size: 100%;
    }

    .recruit_intview5 {
        background: url(../img/imgsp_recruit7.png) 0 0 no-repeat;
        background-size: contain;
        background-size: 100%;
    }

    .recruit_intview6 {
        background: url(../img/imgsp_recruit8.png) 0 0 no-repeat;
        background-size: contain;
        background-size: 100%;
    }

    .p_recruit .interview .box .intview_info {
        margin-top: 0;
        top: auto;
        bottom: 2em;
        width: 90%;
    }

    .interviewbox_tb {
        max-width: 100%;
        padding: 0 2em;
    }

    .p_recruit .recruit .subbox .border .list li .date {
        width: auto;
    }

    .p_recruit .recruit .subbox .border .list li .icon {
        width: 10em;
    }

    .p_recruit .landscape .img_box .list li {
        width: 48%;
    }

    .p_recruit .landscape .img_box .list li img {
        width: 100%;
    }

    .recruit_info .table tr {
        padding: 0;
        flex-wrap: wrap;
        border-bottom: none;
    }

    .recruit_info .table th {
        width: 100%;
        text-align: center;
        background: #c3dfef;
        padding: 1em 0;
    }

    .recruit_info .table td {
        background: #fff;
        width: 100%;
        padding: 2em 2em 3em;
    }

    .sec.showcase .full_w .link_btn a span {
        background: url(../img/link_arrow.png)no-repeat center right;
        padding-right: 6em;
        padding-left: 0;
        background-position: 7em;
        background-size: 36%;
    }

    .recruit.sec .full_w .link_btn a span {
        background: url(../img/link_arrow.png)no-repeat center right;
        padding-right: 5.5em;
        padding-left: 0;
        background-position: 8em;
        background-size: 36%;
    }

    .kv_recruit_int {
        height: 0;
        padding-top: 79.94%;
        background: url(../img/kvsp_recruit_int.jpg) 0 0 no-repeat;
        background-size: contain;
    }

    .kv_interview .kvtxt {
        text-align: left;
        width: auto;
    }

    .kv_interview .kvtxt > p {
        display: inline-block;
        padding: 0.4em 1em 0.4em 2em;
    }

    .kv_interview .kvtxt > p:last-child {
        padding-right: 0;
    }

    .bg_detaile.bg_int {
        background: url(../img/web_background.png)no-repeat center center;
        background-size: contain;
        background-position: 0 6em;
    }

    .p_recruit .interview_comment {
        padding: 0 1em 6em 1em;
        background: #fff;
        margin: 0 2em;
    }

    .p_recruit .box_line {
        flex-wrap: wrap;
        justify-content: center;
    }

    .p_recruit .box_line > img {
        order: 2;
    }

    .p_recruit .box_line dl {
        width: 100%;
        order: 1;
        margin: 0 0 2em 2em;
        padding: 3em 0 0 3em;
    }

    .p_recruit .box_line dt {
        padding-left: 1.5em;
    }

    .p_recruit .box_line dd {
        margin-top: 2em;
    }

    .p_recruit .recruitment_form {
        background: #fff;
        margin: 0;
        padding: 2em 0;
    }

    .p_recruit .other_int .other_tit {
        text-align: center;
    }

    .p_recruit .other_int .conts_width {
        /* margin: 0 0 0 2em; */
    }

    .slide-item .slick-list {
        padding: 0 14% 0 0;
    }

    footer .footer_lang.globalMenuSp {
        background: none;
        width: 64%;
        ;
        position: relative;
        margin: 0 auto;
        height: auto;
        display: inline-block;
    }

    .sitemap .sitemap_box {
        padding: 1em 2em 3em;
    }

    .sitemap .sitemap_box .list li {
        width: 100%;
        margin: 0 0 1em 0;
    }

    .news_area {
        background: none;
        padding: 0 6%;
    }

    .news_area .list li a {
        width: 100%;
    }

    .recruit.recruit_detail .confirm .service.submitbtn {
        width: 100%;
    }

    .p_recruit .process .step:last-child dl {
        width: 100%;
        padding-bottom: 1em;
    }

    .p_recruit .recruit .confirm .service.submitbtn {
        margin: 1em auto 4em;
    }

    .p_recruit .recruit .confirm .service.submitbtn .full_w.backpage .link_box {
        width: 30%;
    }

    .p_recruit .recruit .confirm {
        padding: 0 6%;
    }

    .brand .pd_tb.conts_width {
        max-width: 100%;
        padding: 3em 6%;
        margin: 0;
    }

    .brand .pd_tb.conts_width .bg_white {
        background: #ffffffcf;
        padding: 3em 1em 2em;
    }

    .sitemap .sitemap_box .list li .link_btn a span.outlink {
        background: none;
    }

    .contact_area .box .list {
        max-width: 100%;
        padding: 0 6%;
    }

    .contact_area .box {
        margin-bottom: 3em;
    }

    .contact_area .box .list.list_no li {
        width: 100%;
    }

    .contact_area .box.subbox {
        padding: 0 6%;
    }

    .contact_area .box .list li {
        width: 48%;
    }

    .contact_area .box .list.list_no li .txt {
        text-align: center;
    }

    .contact_area .contact_txt {
        padding: 0 6%;
    }

    .contact_area .box {
        padding: 0 6%;
    }

    .contact_area .box .list.list_no {
        max-width: 100%;
    }

    .contact .contact_form {
        padding: 3em 6% 7em;
    }

    .contact_area .box .list.list_no li .tit {
        line-height: 1.5;
    }

    .news_detail {
        padding: 0 6%;
    }

    .news_detail_main {
        padding: 0 6%;
    }

    .service1 .service_cubism .service_area.left .titbox .subtit {
        margin-bottom: 0.3em;
    }

    .service_area .txt_area .titbox .subtit {
        margin-bottom: 0.3em;
    }

    .product .inner .product_list_area .box .con dt {
        font-size: 20px;
    }

    .foot .footer_nav .footbox a {
        font-size: 16px;
    }

    .foot .footer_nav .footbox li {
        margin-bottom: 10%;
    }

    .recruit .Introductionbox #acnav {
        margin-bottom: 0.2em;
    }

    .recruit .Introductionbox .tab_cont li:nth-child(even) {
        padding-left: 0;
    }

    .recruit .Introductionbox .tab_cont li:nth-last-child(-n+2) {
        margin-bottom: 1.5em;
    }

    .recruit .Introductionbox .tab_cont li:last-child {
        margin-bottom: 0;
    }

    input[type="submit"] {
        -webkit-appearance: none;
        border-radius: 0;
    }

    .scroll-prevent {
        /*動き固定*/
        position: fixed;
        /*奥行きを管理*/
        z-index: -1;
        /*下2つで背景を元のサイズのまま表示することができる*/
        width: 100%;
        height: 100%;
    }

    .service_area.service3 .txt_area .inner .txt {
        margin-top: 0;
    }

    .recruit .Introductionbox .tab_cont li a {
        font-size: 15px;
    }

    .recruit .Introductionbox .tab_cont li a span {
        /* font-weight: 500;
        font-family: "NotoSansCJKjp-Medium", sans-serif; */
        font-weight: 700;
        font-family: "NotoSansCJKjp-Bold", sans-serif;
    }

    .service1 .service_cubism .service_area.left .titbox .h3tit {
        text-align: left;
    }

    .service1 .service_cubism .service_area.left .titbox {
        width: auto;
    }

    .inner_img {
        display: none;
    }

    .service_nijima .txt_area,
    .service_program .txt_area {
        padding: 0;
    }

    .udinner {
        width: 100%;
        margin: 0;
    }

    .udinner .box,
    .cubism .udinner.right .box {
        width: 100%;
    }

    .udinner .box img {
        margin: 0 auto;
        width: 55%;
        padding: 0 2em;
    }

    .udinner .box .titbox {
        text-align: right;
    }

    .udinner .box .txt {
        margin: 2em 0 3em;
    }

    .l2d .udinner .box .titbox {
        text-align: left;
    }

    .udservice_area.udservice.cubism .list {
        flex-wrap: wrap;
        margin: 2em 0;
    }

    .udservice_area.udservice.cubism .list li {
        width: 100%;
    }

    .udservice_area.udservice.cubism .list li:first-child {
        padding-bottom: 0em;
        margin-bottom: 5em;
    }

    .udservice_area.udservice.cubism .list li:first-child:after {
        content: "";
        width: 80%;
        height: 1px;
        background: #959595;
        position: absolute;
        right: 50%;
        bottom: -3em;
        top: auto;
        margin-right: -40%;
        display: block;
    }

    .udservice_area.udservice.cubism .list li .tit {
        text-align: center;
        font-size: 3.2vw;
    }

    .p_recruit .process li {
        position: relative;
        flex-wrap: wrap;
    }

    .p_recruit .process li .step_fllow:after {
        display: none;
    }

    .p_recruit .process li:after {
        content: "";
        position: absolute;
        width: 33px;
        height: 50px;
        background: url(../img/icon_recruitarrow.png)no-repeat;
        bottom: -4em;
        left: 50%;
        margin-left: -16.5px;
        background-size: contain;
    }

    .p_recruit .process li .step_fllow {
        margin: 0 auto;
        width: 40%;
    }

    .p_recruit .process li .step_fllow_txt {
        width: 100%;
        margin-top: 1em;
    }

    .p_recruit .process li .step_fllow_txt p {
        text-align: center;
    }

    .dl_bland.service .full_w .link_box {
        width: 80%;
    }

    .recruit_programmer {
        height: 0;
        padding-top: 46%;
        background: url(../img/spimg_recruit9.png) 0 0 no-repeat;
        background-size: contain;
    }

    .p_recruit .process li:last-child:after {
        display: none;
    }

    .confirm .full_w.backpage .link_btn {
        height: 60px;
    }

    .confirm .full_w.backpage .link_btn .btn {
        height: 100%;
    }

    .confirm .full_w.backpage .link_btn .btn a {
        height: 100%;
    }

    .confirm .full_w.backpage .link_btn:hover .btn a:hover {
        color: #b5b5b5;
    }

    .p_recruit .confirm .service.submitbtn .full_w.backpage .link_btn a span {
        background: none;
        padding: 0;
        font-size: 16px;
    }

    .p_recruit .recruitment_form.sub_detail.rede .service .full_w.bg_back .link_btn a span {
        background: none;
        padding: 0;

    }

    .bg_teamofuse {
        padding: 0;
    }

    .p_privacy {
        margin-top: 3em;
    }

    .bg_privacy {
        padding: 2em 0;
    }

    .toppage_formarea #mc_embed_signup {
        width: 100%;
    }

    .toppage_formarea #mc_embed_signup .mc-field-group {
        width: 100%;
        padding-right: 0;
    }

    .toppage_formarea #mc_embed_signup .clear {
        width: 100%;
        text-align: center;
    }

    .toppage_formarea #mc_embed_signup form {
        padding: 0;
    }

    .lang #google_language_translator select.goog-te-combo {
        width: 200px;
    }

    .kv_video {
        padding-top: 60px;
    }

    /* news追記 */
    .news_detail_box table {
        max-width: 100%;
    }

    .news_detail_box blockquote {
        max-width: 85%;
    }

    .news_detail_box h3 {
        font-size: 16px;
    }

    .iframe_software {
        max-width: 85%;
        margin: 0 auto;
    }

    .pd_tb.recruit_pd {
        padding: 6em 2em 0;
    }

    .p_recruit .process {
        text-align: center;
    }

    .p_recruit .other_int .list li a {
        border-radius: 20px;
    }

    .p_recruit .other_int .list li .txt {
        border-radius: 0px 0 20px 20px;
    }

    .product .cubismbox .imgbox img {
        border-radius: 20px 20px 0 0;
    }

    .globalMenuSp .lang > div {
        width: 250px;
        margin: 1em auto 0;
    }

    .globalMenuSp .lang select.list {
        background: #fff;
        padding: 0;
    }

    .iframe_link {
        max-width: 85%;
        margin: 4em auto 0;
    }

    .external-link-header > a::after {
        background-image: url('../img/icon_blank_link_white.png');
    }

}

@media all and (min-width: 0) and (max-width: 767px) {
    .top_vimeo_video {
        padding: 86% 0 0 0;
        position: relative;
    }

    .tit_en.thankyou {
        font-size: 18px;
        padding: 0 4%;
        line-height: 1.4;
    }

    .visionarea {
        padding: 5em 0 2em;
    }

    .visionarea img {
        width: 90%;
    }

    .news {
        padding: 5em 0 9em;
    }

    .news .inner .titbox {
        padding: 0 2em 0;
    }

    .showcase {
        padding-bottom: 6em;
    }

    .letter .bg_letter {
        padding: 12em 0;
    }

    .letter .bg_letter .conts .mailform form {
        width: 35%;
    }

    .service_cubism .txt_area .list li:first-child:after {
        width: 80%;
        margin-right: -40%;
    }

    .service_cubism .txt_area .list {
        margin-top: 0;
    }

    .product .cubismbox .cubismtxt {
        padding: 0 3em;
    }

    .product .cubismbox .subinner .full_w .link_btn:hover a {
        width: 100%;
        color: #fff;
        background: none;
        background-image: none;
    }

    .product .cubismbox .subinner .full_w .link_box {
        height: 100%;
        width: 90%;
        /* margin-right: -45%; */
    }

    .product .cubismbox .subinner .full_w .link_btn a {
        width: 90%;
    }

    .showcase .full_w .link_box {
        width: 100%;
    }

    .showcase .full_w .link_btn a {
        background-position: 17.5em;
    }

    .showcase .full_w,
    .recruit .full_w {
        height: 70px;
    }

    .showcase .full_w .link_btn,
    .recruit .full_w .link_btn {
        height: 70px;
    }

    .product .inner .product_list_area {
        padding-bottom: 0;
    }

    .recruit .full_w .link_box {
        width: 100%;
    }

    .recruit .full_w .link_btn a {
        background-position: 17.4em;
        font-size: 16px;
    }

    .recruit .bnr_list li {
        margin: 0 3em 3em;
    }

    .about_map .outside {
        flex-wrap: wrap;
        padding: 0 2em;
        margin: 3em 0 5em;
    }

    .about_map .outside img {
        width: 100%;
        margin-bottom: 1em;
    }

    .showcase_area .list li {
        width: 48%;
    }

    .pager .pagination li {
        width: 10%;
        height: 4em;
    }

    .showcasetit .date {
        font-size: 3.6vw;
    }

    .showcasetit .h2_name {
        font-size: 6vw;
    }

    .showcasetit .detaile_txt {
        font-size: 4vw;
    }

    .access_map .full_w {
        width: 60%;
    }

    .scsupport .scsupportarea .full_w .link_box {
        width: 100%;
    }

    .region_area.recruit .Introductionbox #acnav {
        padding: 0;
    }

    .region_area.recruit .Introductionbox .tab_tit {
        padding: 1em;
    }

    .program_list .titbox .tit_en {
        font-size: 4vw;
    }

    .region_area.recruit .Introductionbox .tab_tit {
        font-size: 20px;
    }

    .region_area.recruit .Introductionbox .tab_cont li a {
        font-size: 16px;
    }

    .p_recruit .recruit_dog:after {
        background: url(../img/img_recruit2.png)no-repeat;
        background-size: 100%;
    }

    .p_recruit .interview .box .intview_info .namebox .icon {
        font-size: 16px;
        width: 180px;
        display: inline-block;
        padding: 0.4em 0 0.5em;
    }

    .p_recruit .interview .box .intview_info .namebox .name {
        font-size: 34px;
    }

    .p_recruit .interview .box .intview_info .txt {
        font-size: 16px;
        line-height: 1.1;
    }

    .p_recruit .interview .box:nth-child(odd) .intview_info .txt {
        padding: 0 0 0 2em;
    }

    .recruit_top .h2_tit {
        font-size: 30px;
        line-height: 1.4;
    }

    .p_recruit .recruit_dog .tit_en,
    .p_recruit .landscape .tit_en {
        font-size: 38px;
    }

    .p_recruit .recruit_dog:after,
    .p_recruit .recruit_dog:before {
        top: -2em;
    }

    .news .main_post .post_list li .icon_post {
        width: 26%;
    }

    .news .post_choice .main_post {
        padding: 0 2em;
    }

    .p_recruit .other_int .list li .txt {
        font-size: 14px;
    }

    .p_recruit .box_line > img {
        width: 70%;
    }

    .p_recruit .recruitment_form .service .full_w.backpage .link_box {
        width: 100%;
    }

    .scsupport.bg_detaile {
        background: url(../img/web_background.png)no-repeat center center;
        background-position: 0 6em;
    }

    .news_area .list li {
        flex-wrap: wrap;
    }

    .news_area .list li > p {
        width: 100%;
        margin-top: 1em;
    }

    .main_detail .news {
        padding: 0 0 5em;
    }

    .confirm .service.submitbtn {
        justify-content: space-between;
    }

    .brand .other .doing .img_list {
        margin-bottom: 2em;
    }

    .recruit .table_entry tr {
        max-width: 100%;
    }

    .recruit .titbox.entrytit .tit_en {
        font-size: 30px;
    }

    .contact .table_entry td {
        max-width: 80%;
    }

    .contact .table_entry td.mw_full {
        max-width: 100%;
    }

    .about_history .historybox .box {
        margin: 0 auto 2em;
    }

    .foot .foot_sns_area .l-link_area {
        width: 45%;
    }

    .product .inner .product_list_area .box .con dt {
        font-size: 18px;
    }

    .product .inner .product_list_area .box .con dd {
        font-size: 16px;
    }

    .recruit .subbox .border .list li .icon {
        padding: 0.4em 20px;
    }

    .news .inner .inner_conts {
        margin-top: 2em;
    }

    .product .inner .product_list_area .box {
        box-shadow: 0px 6px 9px 2px #0000003d;
    }

    .globalMenuSp .list {
        padding: 2em 12%;
    }

    .globalMenuSp.active {
        display: block;
        max-height: 92vh;
        -webkit-overflow-scrolling: auto;
        overflow-scrolling: auto;
        overflow-y: scroll;
    }

    .nav_detaile .list li:last-child {
        margin-bottom: 0.5em;
    }

    .recruit_info {
        padding: 0 4%;
    }

    .p_recruit .recruit .confirm .service.submitbtn .full_w.backpage .link_box {
        width: 65%;
    }

    .p_recruit .recruitment_form.sub_detail {
        max-width: 100%;
        padding: 0;
    }

    .bg_fff {
        background: #fff;
        margin: 0 4%;
        padding-bottom: 1em;
    }

    .p_recruit .recruitment_form.sub_detail .service.sub_detailbtn .full_w.bg_back {
        max-width: 60%;
    }

    .p_recruit .recruitment_form.sub_detail .service.sub_detailbtn .full_w {
        max-width: 80%;
        margin: 0 auto 1.5em;
    }

    .p_recruit .recruitment_form.sub_detail .service.sub_detailbtn .full_w .link_box {
        max-width: 100%;
    }

    .showcase_area .list {
        padding: 0 1.4em;
    }

    .news_detail_box table {
        overflow: scroll;
    }

    .news_detail_box table td {
        width: 200px;
    }

    /* タイポグラフィ用CSS */
    .typography h1 {
        font-size: 6vw;
    }

    .typography h2 {
        font-size: 5vw;
    }

    .typography h3 {
        font-size: 4vw;
    }

    .typography .subtitle {
        font-size: 3.4vw;
    }

    .typography .s_subtitle {
        font-size: 3vw;
    }

    .typography .full_w {
        margin: 2em auto;
        height: 60px;
    }

    .typography .full_w .link_btn {
        height: auto;
    }

    .typography .full_w .link_btn a span {
        font-size: 3.6vw;
    }

    .news_detail .tit {
        font-size: 18px;
    }

    .sns_sc.snsarea {
        max-width: 96%;
        padding-bottom: 2em;
    }

    .news_detail_area .sns_sc.snsarea {
        max-width: 100%;
    }

    .showcasebox > p {
        padding: 0 6%;
    }


    .showcase.showcase_detail .showcasebox .gallery-columns-3 {
        width: 90%;
        margin: 2em auto 0;
        max-width: 100%;
    }

    .showcase.showcase_detail .showcasebox p > img {
        height: auto;
    }

    .p_recruit #sec1.interview_comment .sns_sc.snsarea {
        padding-bottom: 2em;
    }

    .p_recruit .box_line dl .qfont {
        font-size: 90px;
    }

    .about .representativebox .box img {
        width: 70%;
    }

    .news_detail_box .size-large,
    .news_detail_box .size-full {
        height: auto;
    }

}

@media all and (min-width: 0) and (max-width: 600px) {
    .news {
        padding: 5em 0;
    }

    .letter .bg_letter {
        padding: 10em 0;
    }

    .service_area .txt_area .titbox .subtit,
    .service1 .service_cubism .service_area.left .titbox .subtit {
        font-size: 22px;
    }

    .service_area .txt_area .titbox .h3tit,
    .service1 .service_cubism .service_area.left .titbox .h3tit {
        font-size: 38px;
    }

    .service_area .txt_area .titbox {
        top: -5em;
    }

    .about_history .historybox .box li {
        font-size: 2.7vw;
    }

    .showcasetit {
        padding-bottom: 2em;
    }

    .showcasetit .shoucase_icon li,
    .careertit .shoucase_icon li {
        font-size: 3vw;
    }

    .access_map .full_w,
    .access_map .full_w .link_btn {
        height: 60px;
    }

    .about_profile .about_table td {
        padding: 1em;
    }

    .p_recruit .recruit_dog:before {
        left: 3em;
        width: 90px;
        height: 90px;
    }

    .p_recruit .recruit_dog:after {
        width: 90px;
        height: 90px;
    }

    .p_recruit .interview .box .intview_info {
        bottom: 1em;
    }

    .p_recruit .other_int .list li .txt {
        font-size: 2.4vw;
        height: 40px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .p_recruit .recruitment_form.confirm .service.submitbtn {
        width: 100%;
    }

    .p_recruit .box_line.box_line_img dl {
        margin: 0 2em 1em 0;
    }

    .p_recruit .box_line {
        align-items: baseline;
    }

    .kv_interview .kvtxt > p {
        font-size: 20px;
    }

    .p_recruit .box_line dl {
        margin: 0 0 1em;
        padding: 2.4em 1em 0;
    }

    .dl_bland .full_w {
        margin: 1em 0 6em;
    }

    .about_history .historybox .year_en {
        font-size: 38px;
    }

    .about_history .historybox .box .list:before {
        width: 200px;
    }

    .foot .under_link .used_link a {
        font-size: 14px;
    }

    .product .inner .product_list_area .box .con dt {
        font-size: 16px;
    }

    .product .inner .product_list_area .box .con dd {
        font-size: 14px;
    }

    .service .udservice.cubism .full_w .link_btn a span {
        padding: 0 1.9em 0 0.4em;
    }



}

@media all and (min-width: 0) and (max-width: 481px) {

    .foot_rightbox {
        display: none;
    }

    body {
        position: relative;
    }

    .header {
        width: 100%;
    }

    .navToggle img {
        width: 3.5em;
    }

    .globalMenuSp.active {
        display: block;
        overflow: scroll;
    }

    .globalMenuSp {
        display: block;
        background: #59676d;
        position: absolute;
        width: 100%;
        height: 100vh;
        padding: 1em 0 3em;
        text-align: center;
        right: -100%
    }

    .globalMenuSp .nav_logo {
        width: 70%;
        margin: 0 auto;
        text-align: left;
    }

    .globalMenuSp .footer_lang #pref {
        width: 200px;
        padding: 0.2em 0.5em;
    }

    .globalMenuSp .list {
        text-align: center;
    }

    .globalMenuSp .list li a {
        color: #fff;
        font-size: 3.4vw;
        letter-spacing: 0.09em;
    }

    .globalMenuSp .foot_sns_area {
        width: 50%;
        margin: 0 auto 3em;
    }

    .globalMenuSp .foot_sns_area .l-link_area {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0;
    }

    .globalMenuSp .foot_sns_area .l-link_area li {
        width: 20%;
    }

    .navToggle {
        display: block;
    }

    .fixed {
        position: fixed;
        width: 100%;
        top: 0;
    }

    .sp_topmenu_bg {
        background: #59686d;
    }

    /* .sp_topmenu_bg .logo p {
        display: none;
    } */
    .btn_nav .cl {
        display: none;
    }

    .btn_nav.cl_btn .cl {
        display: block;
    }

    .btn_nav.cl_btn .op {
        display: none;
    }

    .header .header_top_menu {
        padding: 0;
        height: 60px;
    }

    .header .header_top_menu .logo {
        width: 28%;
        margin-left: 4%;
    }

    .header .header_top_menu .logo img {
        width: 100%;
    }

    .tit_en {
        font-size: 9vw;
    }

    .sub_jp {
        font-size: 3.2vw;
    }

    .kv_area {
        /* background: url(../img/bg_movie.jpg)no-repeat; */
        /* background-size: 100%; */
        margin-top: 3.6em;
    }

    .kv_area .tit {
        font-size: 6vw;
    }

    .visionarea {
        margin-top: 0;
        padding: 4em 0 0;
        background: url(../img/bgsp_vision.png)no-repeat center bottom;
        background-size: 100%;
    }

    .visionarea img {
        /* top: 0; */
        width: 90%;
        margin: 1em auto 0;
    }

    .visionarea .inner {
        top: 0;
        padding: 0 4%;
    }

    .visionarea .area {
        width: 100%;
        padding: 0;
        margin-left: 0;
    }

    .visionarea .titbox {
        text-align: center;
    }

    .visionarea .txt {
        margin-top: 1em;
        font-size: 3vw
    }

    .product {
        background: none;
        height: auto;
        padding: 6em 0 3em;
    }

    .product .titbox {
        padding: 0 6%;
    }

    .product .cubismbox {
        flex-wrap: wrap;
        margin-top: 2em;
        padding: 0 4%;
    }

    .product .cubismbox .cubismtxt {
        padding: 0 2em;
    }

    .product .cubismbox .subinner {
        order: 2;
        width: 100%;
        top: 0;
        border-radius: 0 0 20px 20px;
        padding: 2em 0;
    }

    .product .cubismbox img {
        order: 1;
        width: 100%;
    }

    .product .cubismbox .subinner .tit {
        text-align: center;
    }

    .product .cubismbox .subinner .txt {
        margin: 2em 0;
    }

    .product .cubismbox .subinner a {
        background: #fff;
        color: #ef8b5e;
        width: 80%;
        margin: 0 auto;
    }

    .product .cubismbox .subinner a span {
        background: url(../img/spicon_blank_link.png)no-repeat center right;
        padding-right: 1.6em;
        background-size: 10%;
        font-size: 4vw;
        letter-spacing: 0.09em;
    }

    .product .cubismbox .subinner .full_w .link_btn a span {
        background-position: right;
        padding-right: 1.5em;
    }

    .product .cubismbox .subinner .full_w .link_btn:hover a span {
        background-position: right;
    }

    .product .cubismbox .subinner .full_w .link_btn a {
        background-image: none;
        justify-content: center;
        width: 100%;
        background: none;
    }

    .product .inner .area_product {
        background: url(../img/spbg_area_product.png)no-repeat center;
        background-size: 100%;
    }

    .product .inner .product_list_area {
        padding: 0 6%;
        margin: 4em 0;
        flex-wrap: wrap;
        background: url(../img/spbg_product_list_area.png)no-repeat center bottom;
        background-size: 100%;
        padding-bottom: 8em;
        padding: 0 4%;
    }

    .product .inner .product_list_area .box {
        width: 48%;
        margin-bottom: 2em;
    }

    .product .inner .product_list_area .box .con {
        padding: 8% 6%;
    }

    .product .inner .product_list_area .box .con dd {
        font-size: 2.6vw;
    }

    .product .inner .product_list_area .box_sp {
        background: #59676d;
        text-align: center;
        position: relative;
    }

    .product .inner .product_list_area .box_sp:after {
        content: "";
        position: absolute;
        width: 60px;
        height: 60px;
        background: url(../img/spimg_product3.png)no-repeat center bottom;
        bottom: 1em;
        right: 1em;
    }

    .product .inner .product_list_area .box .box_list {
        position: relative;
        height: 100%;
        padding: 1em;
        display: flex;
        justify-content: center;
        align-items: center;
        padding-bottom: 4em;

    }

    .product .inner .product_list_area .box .box_list:after {
        content: "";
        width: 86px;
        height: 14px;
        position: absolute;
        background: url(../img/link_arrow.png)no-repeat center right;
        left: 50%;
        margin-left: -43px;
        top: 50%;
    }

    /* .product .inner .product_list_area .box .con dt {
        font-size: 4vw;
    } */
    .showcase {
        padding-bottom: 0;
    }

    .showcase .showbox .list li {
        width: 48%;
        margin-bottom: 2em;
    }

    .showcase .showbox .list {
        justify-content: space-between;
        padding: 0 1.4em;
    }

    .showcase .showbox .list li .txt {
        width: auto;
    }

    /* .showcase .showbox .list li img {
        width: 90%;
    } */

    .showcase .showbox .list li:nth-last-child(-n+2) {
        margin-bottom: 0;
    }

    .link_btn_showcase {
        background: #000;
        width: 60%;
        margin: 0 auto;
    }

    .link_btn_showcase a {
        color: #fff;
        padding: 1em 0;
        display: block;
        position: relative;
        padding: 1em 3em 1em 0;
        text-align: center;
    }

    .link_btn_showcase a:after {
        content: "";
        width: 60px;
        height: 14px;
        position: absolute;
        background: url(../img/link_arrow.png)no-repeat center right;
        background-size: 100%;
        right: 2em;
    }

    .news {
        background: url(../img/spbg_news.png)no-repeat center;
        height: auto;
        background-size: 100%;
        padding-bottom: 10em;
    }

    .news .inner .titbox {
        padding: 2em 4% 0;
    }

    .news .post_choice {
        margin: 0;
        padding: 0 4%;
    }

    .news .post_choice .choice_list li {
        margin-right: 1em;
        padding-right: 1em;
    }

    .news .post_choice .main_post {
        padding: 0;
    }

    .news .main_post .post_list li {
        flex-wrap: wrap;
        margin-bottom: 1em;
        padding-bottom: 1em;
    }

    .news .main_post .post_list li p {
        display: block;
        width: 100%;
        padding-top: 0.6em;
        font-size: 3.5vw;
    }

    .news .main_post .more_link a {
        font-size: 4vw;
    }

    .news .main_post .post_list li .data {
        width: 21%;
        margin: 0 0 0 1em;
        font-size: 3.2vw;
    }

    .news .main_post .post_list li .icon_post {
        width: 32%;
    }

    .news .main_post .more_link {
        margin-top: 2em;
    }

    .news .post_choice .choice_list li span {
        font-size: 3.2vw;
    }

    .news .post_choice .choice_list {
        width: 100%;
    }

    .recruit .sub_txt {
        width: 100%;
        padding: 0 4%;
        margin: 1.4em auto 2em;
    }

    .recruit .bnr_list {
        flex-wrap: wrap;
    }

    .recruit .subbox {
        width: 100%;
        padding: 0 5%;
        margin: 2em auto 0;
    }

    .recruit .subbox:before {
        content: "";
        width: 100px;
        height: 90px;
        position: absolute;
        background: url(../img/touch04.gif)no-repeat center;
        top: -1.4em;
        right: 1.5em;
        background-size: 100%;
    }

    .recruit .subbox .tit {
        width: 65%;
        font-size: 3.8vw;
    }

    .recruit .subbox .border {
        padding: 1em 2em;
    }

    .recruit .subbox .border .list li {
        flex-wrap: wrap;
    }

    .recruit .subbox .border .list li .date {
        width: 34%;
        display: inline-block;
        font-size: 3.3vw;
    }

    .recruit .subbox .border .list li .icon {
        width: 45%;
        margin: 0;
        padding: 0.2em 0;
        display: inline-block;
        font-size: 3.3vw;
    }

    .recruit .subbox .border .list li .inner_txt {
        margin-top: 0.6em;
    }

    .recruit .subbox .border .list li a {
        padding-top: 1em;
        line-height: 1.4;
    }

    .recruit .Introductionbox {
        margin: 3em 0 4em;
    }

    .recruit .Introductionbox .tab_tit:after {
        content: "";
        width: 26px;
        height: 26px;
        position: absolute;
        background: url(../img/icon_op.png)no-repeat center right;
        right: 1em;
        top: 50%;
        margin-top: -13px;
        background-size: 100%;
    }

    .recruit .Introductionbox .tab_tit {
        font-size: 3.2vw;
    }

    .recruit .Introductionbox .tab_tit.acopen:after {
        background: url(../img/icon_cl.png)no-repeat center right;
        background-size: 100%;
    }

    .recruit .Introductionbox .tab_cont li {
        width: 100%;
    }

    .recruit .Introductionbox .tab_cont {
        padding: 1em;
    }

    .recruit .link_btn_showcase {
        position: relative;
        z-index: 4;
    }

    .recruit .link_btn_showcase:before {
        content: "";
        width: 80px;
        height: 80px;
        position: absolute;
        background: url(../img/img_recruit2.png)no-repeat center;
        top: -3.4em;
        left: 50%;
        margin-left: -160px;
        background-size: 100%;
        z-index: 2;
    }

    .recruit .link_btn_showcase a:after {
        right: 1em;
    }

    .recruit .bnr_list li {
        margin: 0 2em 2em;
    }

    .letter {
        margin-top: 0;
        max-height: 40em;
    }

    .letter .bg_letter {
        background: url(../img/spbg_letter.png)no-repeat center;
        top: 0;
        background-size: 100%;
        padding: 0em 0;
    }

    .letter .bg_letter .conts {
        padding: 5em 4%;
    }

    .letter .bg_letter .conts .letter_link {
        width: 100%;
        margin: 0 auto 2em;
        padding: 0 5%;
    }

    .letter .bg_letter .conts .letter_link li {
        width: 33%;
    }

    .letter .bg_letter .conts .letter_link li img {
        width: 60%;
    }

    .letter .bg_letter .conts .letter_link span {
        font-size: 2.9vw
    }

    .letter .bg_letter .conts .letter_link li a img {
        width: 50%;
    }

    .letter .bg_letter .conts .txt {
        margin: 3em 0;
        font-size: 3.1vw;
    }

    .letter .bg_letter .conts .mailform {
        margin-top: 2em;
    }

    .letter .bg_letter .conts .mailform form {
        width: 50%;
        margin: 1em 0 2em;
    }

    .letter .bg_letter .conts .mailform .inputarea {
        height: 50px;
        margin-right: 0;
    }

    #foot {
        max-width: 100%;
        padding: 3em 3em 2em;
    }

    .foot {
        flex-wrap: wrap;
        margin-bottom: 0;
    }

    .foot .foot_sns_area {
        width: 100%;
        align-items: center;
        justify-content: center;
    }

    .foot .foot_sns_area .footer_logo {
        text-align: center;
    }

    .foot .foot_sns_area .footer_logo a {
        display: inline-block;
        width: 40%;
    }

    .foot .footer_nav {
        width: 100%;
        margin-bottom: 4em;
    }

    .footer_spinner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-content: space-between;
    }

    .foot .footer_nav .footbox {
        width: 70%;
        margin-left: 0;
    }

    .foot .footer_nav .footbox:first-child {
        width: 70%;
    }

    .foot .footer_nav .sp_footerbox {
        width: 36%;
    }

    .foot .footer_nav .sp_footerbox .footbox {
        width: 100%;
        margin-bottom: 2em;
    }

    .foot .under_link .used_link {
        color: #fff;
        font-size: 3.2vw;
        display: flex;
        justify-content: space-between;
        width: 100%;
    }

    .foot .under_link ul.used_link + ul.used_link{
        margin-top: 8px;
    }

    .foot .under_link .used_link a {
        font-size: 3vw;
    }

    .foot .under_link {
        width: 100%;
    }

    .foot .under_link .used_link li {
        width: auto;
    }

    .foot .footer_nav .footbox .blank a {
        padding-right: 12%;
    }

    .foot .footer_lang {
        width: 100%;
        text-align: center;
        margin-bottom: 3em;
    }

    .footer_lang #pref {
        font-size: 3vw;
        background: #fff;
        width: 140px;
        border-radius: 0;
        padding: 0.2em 0.5em;
    }

    .footer_lang .pref {
        position: relative;
        display: inline-block;
    }

    .footer_lang .pref:after {
        content: "";
        right: 0.6em;
        position: absolute;
        box-sizing: border-box;
        width: 8px;
        height: 8px;
        border: 8px solid transparent;
        border-top: 8px solid #000;
        top: 50%;
        margin-top: -4px;
    }

    .foot_sns_area .l-link_area {
        justify-content: center;
    }

    .foot .foot_sns_area .l-link_area {
        justify-content: space-between;
    }

    .service2 .service_area .txt_area .titbox,
    .service3 .service_area .txt_area .titbox {
        top: -6.4em;
        right: 6%;
    }

    .service_area .txt_area .titbox {
        top: -4.5em;
    }

    .showcase .full_w {
        max-width: 80%;
        margin: 3em auto 0;
    }

    .sec.showcase .full_w .link_btn a span {
        font-size: 3.4vw;
        background: url(../img/link_arrow.png)no-repeat center right;
        padding-right: 5.2em;
        background-position: 6.5em;
        background-size: 36%;
    }

    .recruit .full_w .link_box {
        max-width: 80%;
    }

    .recruit .full_w .link_btn a {
        background-position: 15.4em;
    }

    .recruit .full_w .link_btn a span {
        font-size: 3.4vw;
    }

    .recruit .subbox .border .list li .date {
        font-size: 3.4vw;
    }

    .recruit .subbox .border .list li .inner_txt a {
        font-size: 3vw;
    }

    .product .inner .product_list_area .box .con dt {
        font-size: 3.2vw;
    }

    .recruit .bnr_list li.box .box_tit > p {
        font-size: 3.6vw;
    }

    .service_area .txt_area .titbox .subtit,
    .service1 .service_cubism .service_area.left .titbox .subtit {
        font-size: 3.8vw;
    }

    .service_area .txt_area .titbox .h3tit,
    .service1 .service_cubism .service_area.left .titbox .h3tit {
        font-size: 6vw;
    }

    .service1 .service_cubism .service_area.left .titbox {
        top: -1.4em;
    }

    .service .service_area .full_w .link_btn a span {
        font-size: 3.4vw;
        padding: 0 2.4em 0 0;
    }

    .pager .pagination li {
        width: 10%;
        height: 3.4em;
    }

    .careertit .shoucase_icon li,
    .showcasetit .shoucase_icon li {
        width: 14%;
        margin-right: 0.5em;
    }

    .careertit .shoucase_icon,
    .showcasetit .shoucase_icon {
        margin-bottom: 1.6em;
    }

    .showcase.showcase_detail .full_w {
        max-width: 100%;
        padding: 0 2em;
        margin: 4em 0 3em;
    }

    .showcasebox .full_w .link_btn a span {
        font-size: 3.6vw;
    }

    .about_history .historybox .year_en {
        font-size: 7vw;
    }

    .about .titbox {
        margin-bottom: 3em;
    }

    .access_map .full_w {
        width: 100%;
    }

    .about_profile .about_table th {
        font-size: 3.6vw;
    }

    .about_profile .about_table td span {
        font-size: 3.4vw;
    }

    .access_map > p {
        font-size: 3.6vw;
    }

    .access_map > p span {
        font-size: 3.4vw;
    }

    .region_area.recruit .Introductionbox .tab_tit {
        font-size: 4vw;
        padding: 1.2em;
    }

    .region_area.recruit .Introductionbox .tab_cont li a {
        font-size: 3.5vw;
    }

    .scsupport .scsupportarea .box dt {
        font-size: 4.8vw;
    }

    .program_list .titbox .tit_en {
        font-size: 4.2vw;
    }

    .scsupport .scsupportarea .full_w {
        height: 60px;
        margin: 3em 0 0;
    }

    .scsupport .scsupportarea .full_w .link_btn {
        height: 60px;
    }

    .scsupport .scsupportarea .full_w .link_box a {
        font-size: 3.4vw;
    }

    .recruit_top .h2_tit {
        font-size: 6vw;
        line-height: 1.5;
    }

    .p_recruit .interview .box .intview_info .namebox .icon {
        font-size: 3vw;
        width: 124px;
        padding: 0.4em 0;
    }

    .p_recruit .interview .box .intview_info .namebox .name {
        /* font-size: 4.8vw; */
        width: 54%;
        text-align: center;
        margin: 0 auto;
        padding: 0;
        line-height: 1;
    }

    .p_recruit .interview .box.interview_long .intview_info .namebox {
        text-align: right;
    }

    .p_recruit .interview .box.interview_long .intview_info .namebox .name {
        margin: 0 0 auto auto;
    }

    .p_recruit .interview .box .intview_info .namebox {
        text-align: right;
    }

    .p_recruit .interview .box .intview_info .txt {
        font-size: 3.2vw;
        /* width: 85%; */
        width: 100%;
    }

    .p_recruit .interview .box:nth-child(odd) .intview_info .txt {
        margin: auto 0 auto auto;
        padding: 0;
    }

    .p_recruit .recruit_dog .tit_en,
    .p_recruit .landscape .tit_en {
        font-size: 6vw;
    }

    .p_recruit .other_int .other_tit {
        font-size: 4.4vw;
    }

    .p_recruit .interview_comment {
        padding-bottom: 3em;
        margin: 0 4%;
        padding: 3em 1em;
    }

    .p_recruit .recruitment_form {
        padding: 0 2em 2em;
    }

    .p_recruit .recruitment_form .service .full_w.backpage {
        width: 65%;
        margin: 2em 0 0;
    }

    .kv_interview .kvtxt > p {
        font-size: 3.4vw;
        padding-left: 0.5em;
    }

    .kv_interview .kvtxt > p:last-child {
        padding-right: 1em;
    }

    .p_recruit .box_line dd {
        font-size: 3.2vw;
    }

    .p_recruit .box_line dt {
        font-size: 3.8vw;
        line-height: 1.5;
    }

    .p_recruit .box_line.box_line_img dl {
        margin: 0 0 1em;
    }

    .p_recruit .confirm.recruitment_form .submitbtn.service .full_w .btn button {
        font-size: 3.8vw;
    }

    .recruit_top .txt {
        margin: 0.5em 0 2em;
        font-size: 3.2vw;
    }

    .p_recruit .box_line .icon1 {
        background: url(../img/icon_recruit_int1.png)no-repeat;
        background-size: 30%;
    }

    .p_recruit .box_line .icon2 {
        background: url(../img/icon_recruit_int2.png)no-repeat;
        background-size: 30%;
    }

    .p_recruit .box_line .icon3 {
        background: url(../img/icon_recruit_int3.png)no-repeat;
        background-size: 30%;
    }

    .p_recruit .box_line .icon4 {
        background: url(../img/icon_recruit_int4.png)no-repeat;
        background-size: 30%;
    }

    .p_recruit .box_line .icon5 {
        background: url(../img/icon_recruit_int5.png)no-repeat;
        background-size: 30%;
    }

    .sitemap .sitemap_box .tit {
        font-size: 3.8vw;
    }

    .sitemap .sitemap_box .list li .link_btn a,
    .sitemap .sitemap_box .list li .link_btn:hover a {
        /* padding: 1em; */
        font-size: 3.2vw;
        height: 60px;
        padding: 0 1em;
    }

    .sitemap .sitemap_box .list li .link_btn_eff {
        height: 60px;
    }

    .sitemap .sitemap_box .list li .link_btn {
        height: 60px;
    }

    .news .news_area .icon_post {
        font-size: 3vw;
        width: 24%;
    }

    .other .usedbox dd a {
        font-size: 3.4vw;
        line-height: 1.6;
    }

    .brand .other .h3_tit {
        font-size: 4vw;
    }

    .brand .other .brand_txt,
    .brand .other .doing p {
        font-size: 3.2vw;
    }

    .brand .other p {
        font-size: 3.2vw;
    }

    .brand .other .doing .h3_tit {
        font-size: 4vw;
    }

    .f14 {
        font-size: 3vw;
    }

    .recruit .table_entry th span {
        font-size: 2.4vw;
    }

    .recruit .table_entry th {
        font-size: 3.6vw;
    }

    .contact .table_entry td.selectWrap,
    .contact .table_entry td,
    .contact .table_entry td select.w300,
    .contact .table_entry td .w300 {
        font-size: 3.6vw;
    }

    .contact .table_entry td {
        max-width: 100%;
    }

    .contact .table_entry tr .file_choice {
        margin-top: 0.8em;
    }

    .contact .service.submitbtn .full_w {
        height: 100%;
    }

    .contact .service.submitbtn .full_w .link_btn {
        height: 60px;
    }

    .contact .submitbtn.service .full_w .btn button {
        height: 100%;
        font-size: 4vw;
        padding: 0;
        ;
    }

    .recruit .titbox.entrytit .tit_en {
        font-size: 6vw;
    }

    .about_history .historybox .box {
        margin: 0 auto 1em;
    }

    .foot .foot_sns_area .l-link_area {
        width: 60%;
    }

    .foot .foot_sns_area .l-link_area li {
        margin-right: 15%;
    }

    .foot .footer_nav .footbox p,
    .foot .footer_nav .footbox a {
        font-size: 3vw;
    }

    .foot .footer_nav .footbox .blank a {
        font-size: 2.6vw;
    }

    .recruit .Introductionbox .tab_cont li a {
        font-size: 3vw;
    }

    .globalMenuSp.active {
        display: block;
        max-height: 84vh;
        -webkit-overflow-scrolling: auto;
        overflow-scrolling: auto;
        overflow-y: scroll;
    }

    .news .main_post .post_list li .icon_post {
        padding: 0.6em 0;
    }

    .service1 .service_area .txt_area {
        padding: 0;
    }

    .service .service1 .service_area .full_w .link_btn a span {
        padding: 0;
    }

    .service_cubism .service_area.left {
        padding: 2em 4%;
    }

    .service4 .service_program .txt_area {
        padding: 2em 4%;
    }

    .service_nijima .txt_area,
    .service_program .txt_area {
        padding: 0 4%;
    }

    .service3 .service_area .txt_area {
        padding: 0 4%;
    }

    .service .udservice.cubism .full_w .link_btn a span {
        padding: 0 1.6em 0 0.3em;
    }





}

@media all and (min-width: 0) and (max-width: 414px) {
    p {
        font-size: 3.4vw;
    }

    .brand .other .brand_txt,
    .brand .other .doing p,
    .brand .other p {
        font-size: 3.4vw;
    }

    .product .cubismbox .subinner a {
        font-size: 4vw;
    }

    .product .cubismbox .subinner .tit {
        font-size: 5vw;
    }

    .product .cubismbox .subinner .txt {
        font-size: 3vw;
    }

    .product .inner .product_list_area .box .con dt {
        font-size: 3.2vw;
    }

    .product .inner .product_list_area .box .con dd {
        font-size: 2.7vw;
    }

    .showcase .showbox .list li .txt {
        font-size: 3vw;
    }

    .showcase .showbox .list li .tit {
        font-size: 3vw;
    }

    .news .main_post .post_list li p {
        font-size: 3.4vw;
    }

    .news .main_post .post_list li .icon_post {
        font-size: 2.8vw;
    }

    .recruit .sub_txt {
        font-size: 3vw;
    }

    .news .main_post .more_link a {
        font-size: 3.4vw;
    }

    .recruit .subbox .tit {
        font-size: 3.4vw;
    }

    .recruit .subbox .border .list li .icon {
        font-size: 3vw;
        padding: 0.5em 0;
        width: 34%;
    }

    .recruit .subbox .border .list li a {
        font-size: 3.4vw;
    }

    .recruit .subbox .border .list li .date {
        font-size: 3vw;
        width: 28%;
    }

    .recruit .bnr_list li.box .box_tit .bold_en {
        font-size: 3.3vw;
    }

    .news .post_choice .choice_list li a {
        font-size: 3vw;
    }

    .recruit .Introductionbox .tab_tit {
        font-size: 3.6vw;
    }

    .letter .bg_letter .conts .letter_link li a {
        font-size: 3.2vw;
    }

    .servicebox .tit {
        font-size: 4.4vw;
    }

    .service1 .service_cubism .service_area.left .titbox .subtit,
    .service_area .txt_area .titbox .subtit,
    .service_area .txt_area .titbox .subtit {
        font-size: 3.6vw;
    }

    .service_cubism .txt_area .list li {
        margin-bottom: 0;
        padding-bottom: 0;
        padding-right: 4%;
        padding-left: 4%;
    }

    .service1 .service_area .txt_area .inner {
        padding: 0em 0 2em;
    }

    .service2 .service_area.right .txt_area .inner {
        padding: 2em 0;
    }

    .nav_detaile li a {
        font-size: 3.2vw;
    }

    .pd_tb {
        padding: 3em 0;
    }

    .servicebox .txt span {
        font-size: 3vw;
    }

    .service1 .service_cubism .service_area.left .titbox {
        top: -1.3em;
        left: 0.5em;
    }

    .servies_top {
        margin-bottom: 6em;
    }

    .service_cubism .service_area.left {
        padding: 0;
    }

    .service_area .txt_area .inner {
        padding: 2em 0;
    }

    .service_area .txt_area .inner .txt {
        padding: 0;
        font-size: 3.2vw;
    }

    .service_cubism .txt_area .list .tit {
        font-size: 4vw;
    }

    .service .service1 .full_w {
        width: 75%;
        height: 50px;
        margin: 2em auto 0;
    }

    .service .full_w .link_btn {
        height: 100%;
    }

    .service1 .full_w .link_btn a {
        background-image: url(../img/icon_newwindow.png);
        background-position: 12.5em;
        background: none;
    }

    .service1 .full_w .link_btn a span {
        padding-left: 1em;
        font-size: 3vw;
        width: 100%;
        padding: 0 1em 0 0;
        background-image: url(../img/icon_newwindow.png);
        background-size: initial;
        background-repeat: no-repeat;
        background-position: 15em 1.2em;
    }

    .service_cubism .txt_area .list li:first-child {
        padding-bottom: 3em;
        margin-bottom: 3em;
    }

    .service_area.service1 {
        margin-bottom: 5em;
    }

    .service_area .txt_area .titbox {
        top: -4.2em;
    }

    .service2 .service_area.right {
        padding: 0;
    }

    .service_area.service2 {
        margin-bottom: 5em;
    }

    .service_nijima .txt_area,
    .service_program .txt_area {
        padding: 0 4%;
    }

    .service3 .service_area .txt_area {
        padding: 0 4%;
    }

    .service3 .service_area .txt_area .inner {
        padding-bottom: 0;
    }

    .service3 .service_area .txt_area .titbox {
        right: auto;
    }

    .service3 .service_area .txt_area .titbox .h3tit {
        text-align: left;
    }

    .service_lcs .service_area.left {
        padding: 0 0 2em;
    }

    .service4 .full_w .link_btn a span {
        width: 100%;
        padding-left: 0;
    }

    .recruit .bnr_list li.box .box_tit {
        padding: 1em 0;
    }

    .recruit .subbox .border .list li .icon {
        width: 48%;
        margin-left: 0.5em;
    }

    .contact_form .service .full_w {
        width: 100%;
    }

    .contact .contact_form {
        padding: 0;
    }

    .contact.table_entry {
        padding: 0 6%;
    }

    .contact .table_entry tr {
        max-width: 100%;
        padding: 0;
    }

    .contact .conts_width .wpcf7 {
        padding: 0 6%;
    }

    .contact_area .box .list {
        max-width: 100%;
        padding: 0 10%;
        margin: 1em 0 2em;
    }

    .contact_area .box .list li {
        width: 48%;
    }

    .contact_area .box .list li .check {
        padding: 0.8em 0;
    }

    .contact_area .box {
        margin-bottom: 3em;
    }

    .contact_area .box .list.list_no {
        max-width: 100%;
        padding: 0 6%;
        margin-bottom: 0;
    }

    .contact_area .box .list.list_no li {
        width: 100%;
        padding: 1.2em 1em;
    }

    .contact .importanttxt {
        font-size: 3.8vw;
    }

    .contact_area .box .list li {
        font-size: 3.5vw;
    }

    .contact_area .box .list.list_no li .tit {
        font-size: 3.5vw;
        line-height: 1.6;
    }

    .contact_area .box .list.list_no li .txt {
        font-size: 3vw;
    }

    .contact_area .box.subbox .txt {
        font-size: 3.5vw;
    }

    .contact_area .box.subbox .tit {
        font-size: 4.2vw;
    }

    .contact_area .box.subbox {
        padding: 0 6%;
    }

    .contact_area .box.subbox .imgbox.p_recruit .service .full_w {
        width: 100%;
        height: 60px;
    }

    .contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_box {
        width: 100%;
    }

    .contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_btn {
        height: 100%;
    }

    .contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_btn .link_btn_eff,
    .contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_btn .link_btn_eff span {
        height: 100%;
    }

    .contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_btn a span {
        background: url(../img/icon_newwindow.png)no-repeat center right;
        padding-right: 2em;
        background-size: 6%;
    }

    .contact_area .box.subbox .imgbox.p_recruit .service .full_w .link_btn a {
        padding: 0;
    }

    .contact_area .service .full_w .link_btn a span {
        font-size: 3.5vw;
    }

    .contact_area .contact_txt {
        font-size: 3.5vw;
        padding: 0 6%;
    }

    .recruit.contact_form .table_entry {
        padding: 0 6%;
        width: auto;
        margin: 0 auto;
    }

    .recruit.contact_form .table_entry th {
        font-size: 3.4vw;
    }

    .recruit.contact_form .table_entry th span {
        font-size: 2.3vw;
    }

    .recruit.contact_form .table_entry a {
        font-size: 3.5vw;
    }

    .contact .contact_form {
        padding-bottom: 4em;
    }

    .submitbtn.service .full_w .link_box {
        height: auto;
        width: 100%;
        padding: 0 6%;
    }

    .submitbtn.service .full_w .link_btn_eff span {
        height: auto;
    }

    .submitbtn.service .full_w .btn button {
        height: auto;
        padding: 0.6em 0;
    }

    .submitbtn.service .table_entry tr:last-child td {
        font-size: 3.5vw;
    }

    .contact .recruit select.w300 {
        height: auto;
        font-size: 3.4vw;
    }

    .contact .table_entry td input::placeholder {
        font-size: 3.3vw;
    }

    .confirm .service.submitbtn {
        width: auto;
    }

    .confirm .service.submitbtn .full_w.backpage .link_box {
        width: 70%;
    }

    .confirm.contact .contact_form {
        padding: 0 6% 4em;
    }

    .confirm.contact .contact_form td {
        font-size: 4vw;
    }

    .confirm.contact .importanttxt {
        width: 100%;
        text-align: left;
        font-size: 3.4vw;
    }

    .confirm.contact .contact_area .box {
        padding: 0 6%;
        display: block;
    }

    .confirm.contact .contact_area .box .list {
        padding: 0;
        margin: 0.2em 0 0.6em;
    }

    .confirm.contact .contact_area .box .list li {
        font-size: 4vw;
        background: none;
    }

    .complate.confirm.contact .contact_area .box.subbox {
        max-width: 100%;
    }

    .showcase .full_w .link_btn a {
        background-position: 15.5em;
    }

    .recruit .full_w .link_btn a {
        background-position: 14em;
    }

    .showcase .full_w .link_btn,
    .recruit .full_w .link_btn {
        height: 60px;
    }

    .product .cubismbox .subinner .full_w .link_btn a span {
        background: url(../img/icon_blank_link_hover.png)no-repeat center right;
        background-size: 12%;
        padding-right: 1.9em;
        font-size: 3.4vw;
    }

    .service2 .service_area .txt_area .titbox {
        top: -4.4em;
    }

    .service3 .service_area .txt_area .titbox {
        top: -4.6em;
    }

    .about_history .historybox {
        padding: 2em 0.5em;
    }

    .scsupport .scsupportarea .box dd {
        font-size: 3.4vw;
    }

    .p_recruit .recruit_dog:before,
    .p_recruit .recruit_dog:after {
        width: 60px;
        height: 60px;
        top: -1em;
    }

    .about_history .historybox .box .list:before {
        width: 100px;
    }

    .about_history .historybox .box {
        margin: 0 auto;
    }

    .letter .bg_letter .conts .letter_link span {
        font-size: 2.6vw;
    }

    .udinner .box .titbox .subtit {
        font-size: 3.7vw;
    }

    .udinner .box .titbox .h3tit {
        font-size: 6vw;
    }

    .udservice_area.udservice.cubism .list li .tit {
        font-size: 4vw;
    }

    .cubism .udinner .box .txt {
        margin: 1em 0 3em;
    }

    .udinner .box .txt {
        font-size: 3.2vw;
    }

    .udservice_area.udservice.cubism .list li:first-child {
        margin-bottom: 2em;
    }

    .udservice_area.udservice.cubism .list li:first-child:after {
        bottom: -1.8em;
    }

    .udinner .box .titbox {
        margin: -3.7em 0 2em;
    }

    .udservice_area {
        margin-bottom: 1.6em;
    }

    .service .udservice.cubism .full_w .link_btn a span,
    .service .udservice .full_w .link_btn a span {
        font-size: 3.4vw;
    }

    .service .udservice.cubism .full_w .link_btn a span,
    .service .udservice .full_w .link_btn a span {
        background-image: url(../img/icon_newwindow.png);
        background-size: 13px;
    }

    .service .udservice .full_w {
        height: 50px;
    }

    .p_recruit .recruit .subbox .border .list li .inner_txt a {
        font-size: 3vw;
    }

    .p_recruit .process li .step_fllow .step {
        font-size: 2.8vw;
    }

    .p_recruit .process li .step_fllow p {
        font-size: 3.4vw;
    }

    .p_recruit .process li .step_fllow_txt p {
        font-size: 3vw;
        line-height: 1.6;
    }

    .p_recruit .service .full_w .link_btn a span {
        font-size: 3.4vw;
        background: url(../img/icon_newwindow.png)no-repeat center right;
        background-position: 8.2em;
    }

    .submitbtn.service .full_w .btn button {
        font-size: 3vw;
        padding: 1.5em 0;
    }

    .p_recruit .recruit .confirm .service.submitbtn {
        margin-bottom: 0;
    }

    .p_recruit .service .confirm .full_w .link_btn a span {
        font-size: 3vw;
    }

    .p_recruit .confirm .service.submitbtn .full_w.backpage .link_btn a span {
        font-size: 3vw;
    }

    .recruit_info .table th {
        font-size: 3.4vw;
    }

    .recruit_info .table td {
        font-size: 3vw;
        line-height: 1.8;
    }

    .p_recruit .recruitment_form.sub_detail.rede .service .full_w .link_btn a span {
        font-size: 3.4vw;
    }

    .p_recruit .recruitment_form.sub_detail.rede .service .full_w.bg_back .link_btn a span {
        font-size: 3vw;
    }

    .p_recruit .recruitment_form.sub_detail.rede .service .full_w .link_btn a span {
        background-position: 8em;
    }

    .udinner .box img {
        padding: 0;
        width: 90%;
    }

    .showcase_area .list li {
        width: 47%;
        margin-bottom: 2em;
    }

    .showcase_area .list li .txt {
        font-size: 2.8vw;
    }

    .news_detail_box h2 {
        font-size: 6vw;
    }

    .news_detail_box p {
        font-size: 3.4vw;
    }

    .wpcf7c-elm-step2 {
        height: 60px;
        margin-bottom: 2em;
    }

    .wpcf7c-elm-step2:last-child {
        margin-bottom: 0;
    }

    .news_detail_box ul li,
    .news_detail_box ul li a {
        font-size: 3.4vw;
    }

    .showcase.showcase_detail .showcasebox p > a > img {
        height: auto;
    }

    .showcase.showcase_detail .showcasebox p.detaile_txt {
        margin-bottom: 0;
    }

    .other .usedbox dt {
        font-size: 4.2vw;
    }

    .other .usedbox dd {
        font-size: 3.6vw;
    }

}

@media all and (min-width: 0) and (max-width: 375px) {
    .udinner .box .titbox .subtit {
        font-size: 3.6vw;
    }

    .udinner .box .titbox .h3tit {
        font-size: 5vw;
    }

    .udservice_area.udservice.cubism .list li:first-child:after {
        bottom: -1.4em;
    }

    .udservice_area.udservice.cubism .list li:last-child {
        margin-top: 1em;
    }

    .service .udservice.cubism .full_w .link_btn a span,
    .service .udservice .full_w .link_btn a span {
        background-image: url(../img/icon_newwindow.png);
        background-size: 12px;
    }

    .service .udservice.cubism .full_w .link_btn a span {
        padding: 0 1.7em 0 0.4em;
    }

    .udservice_area.udservice.cubism .list li:first-child .full_w .link_btn a span {
        padding: 0 1.7em 0 0.3em;
    }

}

@media all and (min-width: 0) and (max-width: 320px) {
    .showcase .full_w .link_btn a {
        background-position: 12.5em;
    }

    .recruit .full_w .link_btn a {
        background-position: 11em;
    }

    .service .service1 .full_w {
        width: 80%;
    }

    .service3 .service_area .txt_area .titbox {
        top: -4.8em;
    }

    .service2 .service_area .txt_area .titbox {
        top: -4em;
    }

    .letter .bg_letter .conts .letter_link {
        padding: 0 2%;
    }

    .service .udservice.cubism .full_w .link_btn a span {
        font-size: 3.2vw;
    }

    .service .full_w {
        height: 50px;
    }

    .udservice_area.udservice.cubism .list li:first-child {
        margin-bottom: 1em;
    }

    .udservice_area.udservice.cubism .list li:first-child:after {
        bottom: -1em;
    }

    .cubism .udinner .box,
    .cubism .udinner.right .box {
        padding-bottom: 0;
    }

    .service .udservice .full_w .link_btn a span {
        font-size: 3.2vw;
    }

    .p_recruit .interview .box .intview_info .namebox .icon {
        width: 94px;
        font-size: 2vw;
    }

    .p_recruit .interview .box .intview_info {
        bottom: 0.4em;
    }

    .p_recruit .interview .box .intview_info .namebox .name {
        width: 48%;
    }

}
