@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Lato:wght@700;900&display=swap");

@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.3.1/dist/css/yakuhanjp_s.min.css");

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

/*-------------------------------------
リセットCSS
--------------------------------------*/
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, a,
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;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    box-sizing: border-box;
}

body {
    line-height: 1;
}

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

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: #333333;
    text-decoration: none;
}

/* change colours to suit your needs */
mark {
    background-color: #ff9;
    color: #333333;
    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 #1A1A1A;
    margin: 1em 0;
    padding: 0;
}

input, select {
    vertical-align: middle;
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

/*-------------------------------------
全体設定
--------------------------------------*/
html {
    font-size: 50%;
  /* 【typekit】読み込み後にbodyを表示 */
  /*	
	&.wf-active {
		body {
			@include animationValue(fade-in, 1, ease, 0 , 1, forwards);
		}
	}
*/
  /* 【typekit】Javascriptが無効時は最初からbodyを表示 */
  /*
	body.noJs {
		@include animationValue(fade-in, 1, ease, 0 , 1, forwards);
	}*/
}

@media screen and (min-width: 768px) {
    html {
        font-size: 56.25%;
    }
}

@media screen and (min-width: 1024px) {
    html {
        font-size: 62.5%;
    }
}

html.scrollFixed body {
    width: 100%;
    height: 100vh;
    overflow: hidden;
}

body {
    font-family: YakuHanJPs, "Midashi Go MB31", sans-serif;
    font-weight: 600;
    font-style: normal;
    font-size: 2rem;
    -webkit-font-smoothing: antialiased;
  /* 【typekit】初期状態はbodyを非表示 */
  /*	opacity: 0;*/
  /*	transition: linear 0.3s;*/
}

html,
body {
    height: 100%;
    margin: 0;
    padding: 0;
    word-wrap: break-word;
    background-color: #FFF;
    color: #1A1A1A;
  /*	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;*/
}

main {
    box-sizing: border-box;
    min-height: calc(100vh - 69px);
}

main.scrollFixed {
    position: fixed;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -100;
}

main #pageTitle {
    padding: 90px 0 40px;
    /*background: url(../img/bg_main_01.png) repeat center top;  202108-logo */
    text-align: center;
    font-size: 4.8rem;
    background-color: #000;
 /* 202108-logo */
    color: #fff;
 /* 202108-logo */
}

@media screen and (min-width: 768px) {
    main #pageTitle {
        font-size: 6rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    main #pageTitle {
        font-size: 4.8rem;
    }
}

main #pageTitle.eng {
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.14em;
    font-weight: 900;
      /*  padding-left: 0.14em;*/
    font-size: 5.2rem;
}

@media screen and (min-width: 768px) {
    main #pageTitle.eng {
        font-size: 6.9rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    main #pageTitle.eng {
        font-size: 5.2rem;
    }
}

@media screen and (min-width: 768px) {
    main #pageTitle {
        padding: 163px 0 123px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    main #pageTitle {
        padding: 90px 0 40px;
    }
}

main #pageTitle .sub {
    display: block;
    font-size: 2.4rem;
    font-family: YakuHanJPs, "Midashi Go MB31", sans-serif;
    font-weight: 600;
}

@media screen and (min-width: 768px) {
    main #pageTitle .sub {
        font-size: 3rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    main #pageTitle .sub {
        font-size: 2.4rem;
    }
}

img, video, object {
    max-width: 100%;
    height: auto;
    border: none;
    vertical-align: bottom;
}

p,
h1,
h2,
h3,
h4,
h5,
h6,
ul, ol, li,
dl, dt, dd,
table,
tr,
th,
td {
    line-height: 2;
    color: #1A1A1A;
    box-sizing: border-box;
}

a {
    color: #1A1A1A;
    text-decoration: none;
}

a:visited {
    color: #8E8E8E;
}

a:hover {
    text-decoration: underline;
}

.br01 {
    display: none;
}

@media screen and (min-width: 768px) {
    .br01 {
        display: inline;
    }
}

@media screen and (min-width: 768px) {
    .forSP {
        display: none;
    }
}

.forPC {
    display: none;
}

@media screen and (min-width: 768px) {
    .forPC {
        display: block;
    }
}

@media (max-width: 768px) {
    body#error #header {
        height: 64px;
    }

    body#error #header .headerInner .siteLogo {
        top: 7px;
        width: 54px;
    }

    body#error body#article.article main.article {
        padding-top: 64px;
    }
}

#error {
    font-family: YakuHanJPs, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
    font-weight: bold;
}

#error main.error {
    padding-top: 4.8rem;
}

@media screen and (min-width: 768px) {
    #error main.error {
        padding-top: 178px;
    }
}

@media screen and (min-width: 1024px) {
    #error main.error {
        padding-top: 206px;
    }
}

@media screen and (min-width: 768px) {
    #error main.error .section {
        padding: 11.2rem 0;
    }
}

#error main.error .sectionInner {
    margin-bottom: 11.2rem;
}

#error main.error .section:last-of-type {
    padding-bottom: 11.2rem;
}

#error main.error .sectionTitle {
    font-size: 3rem;
}

@media screen and (min-width: 768px) {
    #error main.error .sectionTitle {
        font-size: 4.2rem;
    }
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

#header {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 99px;
    background-color: #000;
 /* 202108-logo */
  /* background: url(../img/bg_main_01.png) repeat center top;  202108-logo */
}

@media screen and (min-width: 768px) {
    #header {
        height: 178px;
    }
}

@media screen and (min-width: 1024px) {
    #header {
        height: 206px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header {
        height: 99px;
    }
}

#header .headerInner {
    position: relative;
}

@media screen and (min-width: 768px) {
    #header .headerInner {
        min-width: auto;
        max-width: 1120px;
        width: 90% !important;
        margin: 0 auto;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner {
        min-width: auto;
        max-width: auto;
        width: auto;
    }
}

#header .headerInner .siteLogo {
    top: 10px;
    left: 14px;
    width: 162px; /* 202108-logo */
    position: absolute;
    z-index: 500;
}

    #article #header .headerInner .siteLogo {
        top: 26px; /* 202108-logo */
    }

@media screen and (min-width: 768px) {
    #header .headerInner .siteLogo {
        top: 42px; /* 202108-logo */
        left: 0;
        width: 162px; /* 202108-logo */
    }
    #article #header .headerInner .siteLogo {
        top: 46px; /* 202108-logo */
        width: 300px;  /* 202108-logo */
    }
}

@media screen and (min-width: 850px) {
    #header .headerInner .siteLogo {
        top: 42px; /* 202108-logo */
        left: 0;
        width: 162px; /* 202108-logo */
    }
    #article #header .headerInner .siteLogo {
        top: 46px; /* 202108-logo */
        width: 300px;  /* 202108-logo */
    }
}

@media screen and (min-width: 1024px) {
    #header .headerInner .siteLogo {
        top: 40px; /* 202108-logo */
        left: 48px;
        width: 200px; /* 202108-logo */
    }
    #article #header .headerInner .siteLogo {
        top: 60px; /* 202108-logo */
        width: 300px;  /* 202108-logo */
    }
}

@media screen and (min-width: 1148px) {
 /* 202108-logo */
    #header .headerInner .siteLogo {
        top: 40px;
        width: 200px;
    }
    #article #header .headerInner .siteLogo {
        top: 60px; /* 202108-logo */
        width: 300px;  /* 202108-logo */
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .siteLogo {
        top: 10px; /* 202108-logo */
        left: 14px;
        width: 162px; /* 202108-logo */
    }
}

#header .headerInner .siteLogo a {
    display: block;
    transition: linear 0.3s opacity;
}

#header .headerInner .headerNav {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    filter: invert(100%);
 /* 202108-logo */
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav {
        top: 20px;
        left: auto;
        right: 0;
        width: calc(100% - 110px);
    }
}

@media screen and (min-width: 1024px) {
    #header .headerInner .headerNav {
        right: 48px;
        width: calc((100% - 140px) - 96px);
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav {
        top: 0;
        left: 0;
        width: 100%;
    }
}

#header .headerInner .headerNav #btnMenuToggle {
    display: none;
}

#header .headerInner .headerNav #menuOpen {
    position: absolute;
    top: 14px;
    right: 14px;
    display: block;
    width: 40px;
    height: 40px;
    margin: 0;
    border: none;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 28px 28px;
    background-image: url(../img/icon_hamburger.svg);
    z-index: 150;
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav #menuOpen {
        display: none;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav #menuOpen {
        display: block;
    }
}

#header .headerInner .headerNav #menuClose {
    display: none;
}

#header .headerInner .headerNav #btnMenuToggle:checked ~ #menuOpen {
    display: none;
}

#header .headerInner .headerNav #btnMenuToggle:checked ~ #menuClose {
    position: absolute;
    display: block;
    width: 40px;
    height: 40px;
    top: 14px;
    right: 14px;
    margin: 0;
    border: none;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 22px 22px;
    background-image: url(../img/icon_close.svg);
    z-index: 200;
}

#header .headerInner .headerNav #headerNavArea {
    display: none;
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav #headerNavArea {
        display: block;
        height: auto;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav #headerNavArea {
        display: none;
    }
}

#header .headerInner .headerNav #btnMenuToggle:checked ~ #headerNavArea {
    position: relative;
    display: block;
    width: 100%;
    height: 100vh;
    min-height: 100vh;
    padding-top: 90px;
    padding-bottom: 100px;
    background: #fff;
    opacity: 1;
    overflow: scroll;
    z-index: 100;
    animation-duration: 0.6s;
    animation-name: fade-in;
    -moz-animation-duration: 0.6s;
    -moz-animation-name: fade-in;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-name: fade-in;
}

#header .headerInner .headerNav .langNav {
    position: absolute;
    top: 20px;
    right: 80px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    margin-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav .langNav {
        position: relative;
        top: auto;
        right: auto;
        justify-content: flex-end;
        margin-bottom: 1rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav .langNav {
        position: absolute;
        top: 20px;
        right: 80px;
        justify-content: center;
        margin-bottom: 2.8rem;
    }
}

#header .headerInner .headerNav .langNav .navItem {
    list-style-type: none;
    font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav .langNav .navItem {
        font-size: 1.3rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav .langNav .navItem {
        font-size: 1.6rem;
    }
}

#header .headerInner .headerNav .langNav .navItem .link {
    color: #8E8E8E;
    text-decoration: none;
}

#header .headerInner .headerNav .langNav .navItem .link.current {
    color: #1A1A1A;
}

#header .headerInner .headerNav .langNav .navItem .link:hover {
    color: #1A1A1A;
}

#header .headerInner .headerNav .langNav .navItem.langJP:after {
    display: inline;
    content: "/";
    margin: 0 1rem;
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav .langNav .navItem.langJP:after {
        margin: 0 0.5rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav .langNav .navItem.langJP:after {
        margin: 0 1rem;
    }
}

#header .headerInner .headerNav .headerGlobalNav {
    padding: 0 7.5vw;
    text-align: center;
    margin-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav .headerGlobalNav {
        display: block;
        padding: 0;
        text-align: left;
        margin-bottom: 0;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav .headerGlobalNav {
        padding: 0 7.5vw;
        text-align: center;
        margin-bottom: 4.8rem;
    }
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav .headerGlobalNav .navList {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav .headerGlobalNav .navList {
        display: block;
    }
}

#header .headerInner .headerNav .headerGlobalNav .navList .navItem {
    list-style-type: none;
    margin-bottom: 2.8rem;
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav .headerGlobalNav .navList .navItem {
        margin-left: 2.4rem;
        margin-bottom: 0;
        padding: 0.7rem 0;
        font-size: 1.6rem;
        line-height: 1;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav .headerGlobalNav .navList .navItem {
        margin-left: auto;
        margin-bottom: 2.8rem;
        padding: 0;
        font-size: 2rem;
    }
}

#header .headerInner .headerNav .headerGlobalNav .navList .navItem.mainItem {
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.14em;
    font-weight: 900;
            /*  padding-left: 0.14em;*/
}

#header .headerInner .headerNav .headerGlobalNav .navList .navItem.mainItem .link {
    padding: 0.2rem 0;
    border-bottom: 2px solid transparent;
 /* 202108-logo */
    transition: linear 0.3s;
}

#header .headerInner .headerNav .headerGlobalNav .navList .navItem.mainItem .link:hover {
    border-bottom-color: #1A1A1A;
}

#header .headerInner .headerNav .headerGlobalNav .navList .navItem.corpCustomer {
    display: none;
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav .headerGlobalNav .navList .navItem.corpCustomer {
        display: block;
        padding: 0;
    }

    #header .headerInner .headerNav .headerGlobalNav .navList .navItem.corpCustomer .link {
        display: block;
        padding: 0 3rem 0 1.5rem;
        border: 2px solid #1A1A1A;
        font-size: 1.4rem;
        line-height: 30px;
        background: url(../img/icon_blank_02.svg) no-repeat right 10px center;
        background-size: 12px 12px;
        white-space: nowrap;
    }

    #header .headerInner .headerNav .headerGlobalNav .navList .navItem.corpCustomer .link:visited {
        color: #1A1A1A;
    }

    #header .headerInner .headerNav .headerGlobalNav .navList .navItem.corpCustomer .link:hover {
        background-color: #1A1A1A;
        background-image: url(../img/icon_blank_04.svg);
        color: #fff;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav .headerGlobalNav .navList .navItem.corpCustomer {
        display: none;
    }
}

#header .headerInner .headerNav .headerGlobalNav .navList .navItem .link {
    text-decoration: none;
    transition: linear 0.3s;
}

#header .headerInner .headerNav .headerGlobalNav .navList .navItem .link:visited {
    color: #1A1A1A;
}

@media screen and (min-width: 768px) {
    #header .headerInner .headerNav .globalSubNavArea {
        display: none;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .headerInner .headerNav .globalSubNavArea {
        display: block;
    }
}

@media screen and (min-width: 768px) {
    body#home #header {
        background: transparent;
    }
}

#globalNav {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 76px;
    background-color: #fff;
    opacity: 0;
    transition: linear 0.3s;
    transform: translateY(-100%);
    filter: invert(100%);
 /* 202108-logo */
}

@media screen and (min-width: 768px) {
    #globalNav.blog {
        height: 121px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #globalNav.blog {
        height: 76px;
    }
}

#globalNav .globalNavInner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

@media screen and (min-width: 768px) {
    #globalNav .globalNavInner {
        position: relative;
        top: auto;
        left: auto;
        width: auto;
        margin: 0 3rem 17.6rem;
    }
}

@media screen and (min-width: 1024px) {
    #globalNav .globalNavInner {
        min-width: auto;
        max-width: 1120px;
        width: 90%;
        margin: 0 auto;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #globalNav .globalNavInner {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        max-width: auto;
        margin: auto;
    }
}

#globalNav .globalNavInner .siteLogo {
    top: 10px;
 /* 202108-logo */
    left: 14px;
    width: 162px;
 /* 202108-logo */
    position: absolute;
    z-index: 500;
    filter: invert(100%);
 /* 202108-logo */
}

@media screen and (min-width: 768px) {
    #globalNav .globalNavInner .siteLogo {
        top: 14px;
 /* top: 10px; 202108-logo */
        left: 0;
        width: 162px;
 /* 202108-logo */
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #globalNav .globalNavInner .siteLogo {
        top: 10px;
 /* top: 14px; 202108-logo */
        left: 14px;
        width: 162px;
 /* width: 50px; 202108-logo */
    }
}

#globalNav .globalNavInner .siteLogo a {
    display: block;
    transition: linear 0.3s opacity;
}

#globalNav .globalNavInner #btnNavToggle {
    display: none;
}

#globalNav .globalNavInner #menuNavOpen {
    position: absolute;
    top: 14px;
    right: 14px;
    display: block;
    width: 40px;
    height: 40px;
    margin: 0;
    border: none;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 28px 28px;
    background-image: url(../img/icon_hamburger.svg);
    z-index: 150;
}

@media screen and (min-width: 768px) {
    #globalNav .globalNavInner #menuNavOpen {
        display: none;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #globalNav .globalNavInner #menuNavOpen {
        display: block;
    }
}

#globalNav .globalNavInner #menuNavClose {
    display: none;
}

#globalNav .globalNavInner #btnNavToggle:checked ~ #menuNavOpen {
    display: none;
}

#globalNav .globalNavInner #btnNavToggle:checked ~ #menuNavClose {
    position: absolute;
    display: block;
    width: 40px;
    height: 40px;
    top: 14px;
    right: 14px;
    margin: 0;
    border: none;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 22px 22px;
    background-image: url(../img/icon_close.svg);
    z-index: 200;
}

#globalNav .globalNavInner #globalNavArea {
    display: none;
}

@media screen and (min-width: 768px) {
    #globalNav .globalNavInner #globalNavArea {
        display: block;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #globalNav .globalNavInner #globalNavArea {
        display: none;
    }
}

#globalNav .globalNavInner #btnNavToggle:checked ~ #globalNavArea {
    display: block;
    width: 100%;
    height: 100vh;
    min-height: 100vh;
    padding-top: 90px;
    padding-bottom: 100px;
    background: #fff;
    opacity: 1;
    overflow: scroll;
    z-index: 100;
    animation-duration: 0.6s;
    animation-name: fade-in;
    -moz-animation-duration: 0.6s;
    -moz-animation-name: fade-in;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-name: fade-in;
}

#globalNav .globalNavInner .globalNav {
    text-align: center;
    margin-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
    #globalNav .globalNavInner .globalNav {
        min-height: 80px;
        padding-top: 24px;
        margin: 0 0 0 62px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #globalNav .globalNavInner .globalNav {
        min-height: auto;
        padding-top: 0;
        margin: 0 0 4.8rem;
    }
}

#globalNav .globalNavInner .globalNav .navList {
    padding: 0 7.5vw;
}

@media screen and (min-width: 768px) {
    #globalNav .globalNavInner .globalNav .navList {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
        padding: 0;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #globalNav .globalNavInner .globalNav .navList {
        display: block;
        padding: 0 7.5vw;
    }
}

#globalNav .globalNavInner .globalNav .navList .navItem {
    list-style-type: none;
    margin-bottom: 2.8rem;
    font-size: 2rem;
}

@media screen and (min-width: 768px) {
    #globalNav .globalNavInner .globalNav .navList .navItem {
        margin-left: 2.4rem;
        padding: 0.7rem 0;
        font-size: 1.6rem;
        line-height: 1;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #globalNav .globalNavInner .globalNav .navList .navItem {
        margin-left: 0;
        padding: 0;
        font-size: 2rem;
    }
}

#globalNav .globalNavInner .globalNav .navList .navItem.mainItem {
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.14em;
    font-weight: 900;
            /*  padding-left: 0.14em;*/
}

#globalNav .globalNavInner .globalNav .navList .navItem.mainItem .link {
    padding: 0.2rem 0;
    border-bottom: 2px solid transparent;
 /* 202108-logo */
    transition: linear 0.3s;
}

#globalNav .globalNavInner .globalNav .navList .navItem.mainItem .link:hover {
    border-bottom-color: #1A1A1A;
}

#globalNav .globalNavInner .globalNav .navList .navItem.corpCustomer {
    display: none;
}

@media screen and (min-width: 768px) {
    #globalNav .globalNavInner .globalNav .navList .navItem.corpCustomer {
        display: block;
        padding: 0;
    }

    #globalNav .globalNavInner .globalNav .navList .navItem.corpCustomer .link {
        display: block;
        padding: 0 3rem 0 1.5rem;
        border: 2px solid #1A1A1A;
        font-size: 1.4rem;
        line-height: 30px;
        background: url(../img/icon_blank_02.svg) no-repeat right 10px center;
        background-size: 12px 12px;
        white-space: nowrap;
    }

    #globalNav .globalNavInner .globalNav .navList .navItem.corpCustomer .link:visited {
        color: #1A1A1A;
    }

    #globalNav .globalNavInner .globalNav .navList .navItem.corpCustomer .link:hover {
        background-color: #1A1A1A;
        background-image: url(../img/icon_blank_04.svg);
        color: #fff;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #globalNav .globalNavInner .globalNav .navList .navItem.corpCustomer {
        display: none;
    }
}

#globalNav .globalNavInner .globalNav .navList .navItem .link {
    text-decoration: none;
    transition: linear 0.3s;
}

#globalNav .globalNavInner .globalNav .navList .navItem .link:visited {
    color: #1A1A1A;
}

@media screen and (min-width: 768px) {
    #globalNav .globalNavInner .globalSubNavArea {
        display: none;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #globalNav .globalNavInner .globalSubNavArea {
        display: block;
    }
}

#globalNav.fixed {
    opacity: 1;
    transform: translateY(0);
}

.blogArchive {
    transition: linear 0.3s;
    animation-duration: 0.6s;
    animation-name: fade-in;
    -moz-animation-duration: 0.6s;
    -moz-animation-name: fade-in;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-name: fade-in;
}

@media screen and (min-width: 768px) {
    .blogArchive {
        position: absolute;
        display: block;
        top: 70px;
        right: 0;
        font-size: 1.4rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .blogArchive {
        position: relative;
        top: auto;
        right: auto;
    }
}

.blogArchiveCategory,
  .blogArchiveYear {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    padding-left: 32px;
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 18px 16px;
    /*		&:before {
			display: block;
			width: 18px;
			height: 16px;
			margin-right: 15px;
			background-position: center center;
			background-repeat: no-repeat;
			background-size: 18px 16px;
			content: "";
		}*/
}

.blogArchiveCategory .item,
    .blogArchiveYear .item {
    list-style-type: none;
    margin-right: 30px;
    margin-bottom: 8px;
    line-height: 16px;
}

.blogArchiveCategory .item:last-child,
      .blogArchiveYear .item:last-child {
    margin-right: 0;
}

.blogArchiveCategory .item a:visited,
      .blogArchiveYear .item a:visited {
    color: #1A1A1A;
}

.blogArchiveCategory {
    /*		&:before {
			background-image: url(../img/icon_blog_folder.svg);
		}*/
    background-image: url(../img/icon_blog_folder.svg);
}

.blogArchiveYear {
    /*		&:before {
			background-image: url(../img/icon_blog_inbox.svg);
		}*/
    background-image: url(../img/icon_blog_inbox.svg);
}

.blogArchiveYear .item .more {
    font-size: 1rem;
    border: 2px solid #1A1A1A;
    background: #1A1A1A;
    padding: 0.2rem 0.6rem;
    color: #fff;
    transition: linear 0.3s;
    cursor: pointer;
}

.blogArchiveYear .item .more:hover {
    text-decoration: none;
        /*					opacity: 0.5;*/
}

.blogArchiveYear .item .more:after {
    display: inline;
    content: "＋ もっと見る";
}

.blogArchiveYear .item .more:visited {
    color: #fff;
}

.blogArchiveYear .item:nth-child(n+4) {
    display: none;
}

.blogArchiveYear .item.itemMore {
    display: block !important;
}

.blogArchiveYear.is-more .item:nth-child(n+4) {
    display: block;
    opacity: 1;
    animation-duration: 0.5s;
    animation-name: fade-in;
    -moz-animation-duration: 0.5s;
    -moz-animation-name: fade-in;
    -webkit-animation-duration: 0.5s;
    -webkit-animation-name: fade-in;
}

.blogArchiveYear.is-more .item .more:after {
    display: inline;
    content: "−　元に戻す";
}

#header .blogArchive,
#globalNav .blogArchive {
    display: none;
}

@media screen and (min-width: 768px) {
    #header .blogArchive,
    #globalNav .blogArchive {
        display: block;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .blogArchive,
    #globalNav .blogArchive {
        display: none;
    }
}

@media screen and (min-width: 768px) {
    #header .blogArchive {
        display: none;
        top: 80px;
    }
}

@media screen and (min-width: 768px) {
    #header .blogArchive.open {
        display: block;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #header .blogArchive.open {
        display: none;
    }
}

#blogList .blogArchive {
    margin-top: -30px;
    margin-bottom: 40px;
}

@media screen and (min-width: 768px) {
    #blogList .blogArchive {
        display: none;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #blogList .blogArchive {
        display: block;
    }
}

#blogList .blogArchive.archive {
    margin-top: 70px;
}

#blogList .blogArchiveCategory,
  #blogList .blogArchiveYear {
    flex-wrap: wrap;
    margin-bottom: 2.8rem;
    line-height: 2;
    font-size: 1.6rem;
}

#blogList .blogArchiveCategory .item,
    #blogList .blogArchiveYear .item {
    margin-bottom: 2rem;
}

#blogList .blogArchiveCategory .item a.more,
      #blogList .blogArchiveYear .item a.more {
    font-size: 1.2rem;
    border: 2px solid #1A1A1A;
    background: #1A1A1A;
    padding: 0.4rem 0.8rem;
    color: #fff;
    transition: linear 0.3s;
}

#blogList .blogArchiveCategory .item a.more:hover,
        #blogList .blogArchiveYear .item a.more:hover {
    text-decoration: none;
          /*						opacity: 0.5;*/
}

#blog #header .navList .itemBlog .link,
#blog #globalNav .navList .itemBlog .link,
#news #header .navList .itemNews .link,
#news #globalNav .navList .itemNews .link,
#service #header .navList .itemService .link,
#service #globalNav .navList .itemService .link {
    border-bottom-color: #1A1A1A;
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

#footer {
    filter: invert(100%);
 /* 202108-logo */
    padding-top: 7.2rem;
  /* background: url(../img/bg_main_01.png) repeat center top; 202108-logo  */
    background-color: #fff;
 /* 202108-logo */
}

@media screen and (min-width: 768px) {
    #footer {
        padding-top: 11.2rem;
    }
}

#footer .footerLogo {
    width: 34%;
    margin: 0 auto 7.2rem;
    filter: invert(100%);
 /* 202108-logo */
}

@media screen and (min-width: 768px) {
    #footer .footerLogo {
        width: 400px;
 /* 202108-logo */
        text-align: center;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #footer .footerLogo {
        width: 12%;
    }
}

#footer .snsButton {
    margin-bottom: 2.8rem;
    text-align: center;
}

#footer .snsButton li {
    display: inline-block;
    margin: 0 2.5px;
}

#footer .snsButton li#fb-button iframe {
    width: 70px !important;
}

#footer .globalSubNavArea {
    display: none;
}

@media screen and (min-width: 768px) {
    #footer .globalSubNavArea {
        display: block;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #footer .globalSubNavArea {
        display: none;
    }
}

#footer #copyright {
    padding: 2.8rem 0;
    background-color: #fff;
    text-align: center;
    line-height: 1;
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.07em;
    font-weight: 700;
    /*  padding-left: 0.07rem;*/
    font-size: 1rem;
}

@media screen and (min-width: 768px) {
    #footer #copyright {
        font-size: 1.3rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #footer #copyright {
        font-size: 1rem;
    }
}

#footer.app {
    padding-top: 0;
}

#footer.app #copyright {
      /* background: url(../img/bg_main_01.png) repeat center top; 202108-logo */
}

#footer.fixed {
    position: fixed;
    bottom: 0;
    left: 0;
}

body.noJs #footer .snsButton {
    display: none;
}

.globalSubNavArea .globalSubNav_Link {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    margin-bottom: 2.8rem;
}

@media screen and (min-width: 768px) {
    .globalSubNavArea .globalSubNav_Link {
        margin-bottom: 7.2rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .globalSubNavArea .globalSubNav_Link {
        margin-bottom: 2.8rem;
    }
}

.globalSubNavArea .globalSubNav_Link .btn {
    list-style-type: none;
    width: calc((100% - 36px) / 2);
    margin: 0 6px;
    line-height: 1;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .globalSubNavArea .globalSubNav_Link .btn {
        width: 206px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .globalSubNavArea .globalSubNav_Link .btn {
        width: calc((100% - 36px) / 2);
    }
}

.globalSubNavArea .globalSubNav_Link .btn .link {
    display: block;
    border: 2px solid #1A1A1A;
    padding: 12px 0;
    padding-right: 1.2rem;
    background-image: url(../img/icon_arrowRight_02.svg);
    background-repeat: no-repeat;
    background-position: calc(100% - 12px) calc(50% + 1px);
    background-size: 12px 12px;
    font-size: 1.6rem;
    text-decoration: none;
    transition: linear 0.3s background-color;
    transition: linear 0.3s color;
}

@media screen and (min-width: 768px) {
    .globalSubNavArea .globalSubNav_Link .btn .link {
        padding: 17px 0;
        padding-right: 2rem;
        background-position: calc(100% - 5.5rem) calc(50% + 1px);
    }
}

@media screen and (min-width: 1024px) {
    .globalSubNavArea .globalSubNav_Link .btn .link {
        background-position: calc(100% - 4.5rem) calc(50% + 1px);
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .globalSubNavArea .globalSubNav_Link .btn .link {
        padding: 12px 0;
        padding-right: 1.2rem;
        background-position: calc(100% - 12px) calc(50% + 1px);
    }
}

.globalSubNavArea .globalSubNav_Link .btn .link:visited {
    color: #1A1A1A;
}

.globalSubNavArea .globalSubNav_Link .btn .link:hover {
    background-color: #1A1A1A;
    color: #fff;
    background-image: url(../img/icon_arrowRight_04.svg);
}

.globalSubNavArea .globalSubNav_Link .btn .link[target="_blank"] {
    background-position: calc(100% - 12px) calc(50% + 1px);
    background-image: url(../img/icon_blank_02.svg);
}

@media screen and (min-width: 768px) {
    .globalSubNavArea .globalSubNav_Link .btn .link[target="_blank"] {
        background-position: calc(100% - 4.6rem) calc(50% + 1px);
    }
}

@media screen and (min-width: 1024px) {
    .globalSubNavArea .globalSubNav_Link .btn .link[target="_blank"] {
        background-position: calc(100% - 3.6rem) calc(50% + 1px);
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .globalSubNavArea .globalSubNav_Link .btn .link[target="_blank"] {
        background-position: calc(100% - 12px) calc(50% + 1px);
    }
}

.globalSubNavArea .globalSubNav_Link .btn .link[target="_blank"]:hover {
    background-image: url(../img/icon_blank_04.svg);
}

.globalSubNavArea .globalSubNav_SNSList {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 220px;
    margin: 0 auto 2.8rem;
}

@media screen and (min-width: 768px) {
    .globalSubNavArea .globalSubNav_SNSList {
        flex-wrap: nowrap;
        width: auto;
        margin: 0 auto 4.8rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .globalSubNavArea .globalSubNav_SNSList {
        flex-wrap: wrap;
        width: 220px;
        margin: 0 auto 2.8rem;
    }
}

.globalSubNavArea .globalSubNav_SNSList .item {
    list-style-type: none;
    width: 27px;
    margin: 0 9px 6px;
}

@media screen and (min-width: 768px) {
    .globalSubNavArea .globalSubNav_SNSList .item {
        margin: 0 9px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .globalSubNavArea .globalSubNav_SNSList .item {
        margin: 0 9px 6px;
    }
}

.globalSubNavArea .globalSubNav_SNSList .item .link {
    transition: linear 0.3s opacity;
}
/* 202108-logo  START */
.globalSubNavArea .globalSubNav_SNSList li.item:nth-child(3),
.globalSubNavArea .globalSubNav_SNSList li.item:nth-child(4),
.globalSubNavArea .globalSubNav_SNSList li.item:nth-child(5),
.globalSubNavArea .globalSubNav_SNSList li.item:nth-child(6) {
    display: none;
}
/* 202108-logo END */

.globalSubNavArea .globalSubNav_TextLink {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 5rem;
}

@media screen and (min-width: 768px) {
    .globalSubNavArea .globalSubNav_TextLink {
        flex-wrap: nowrap;
        margin: 0 auto 7.2rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .globalSubNavArea .globalSubNav_TextLink {
        flex-wrap: wrap;
        margin: 0 5rem;
    }
}

.globalSubNavArea .globalSubNav_TextLink .item {
    display: inline-block;
    margin: 0 1.3rem;
    font-size: 1.6rem;
    line-height: 2;
}

@media screen and (min-width: 768px) {
    .globalSubNavArea .globalSubNav_TextLink .item {
        font-size: 1.3rem;
        line-height: 1.4;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .globalSubNavArea .globalSubNav_TextLink .item {
        font-size: 1.6rem;
        line-height: 2;
    }
}

.globalSubNavArea .globalSubNav_TextLink .item .link {
    color: #9B9B9B;
    white-space: nowrap;
}

.globalSubNavArea .globalSubNav_TextLink .item .link:hover {
    text-decoration: none;
}

body.en .globalSubNavArea .globalSubNav_Link {
    display: block;
}

@media screen and (min-width: 768px) {
    body.en .globalSubNavArea .globalSubNav_Link {
        display: flex;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    body.en .globalSubNavArea .globalSubNav_Link {
        display: block;
    }
}

body.en .globalSubNavArea .globalSubNav_Link .btn {
    width: 80%;
    margin: 0 auto 1.2rem;
}

@media screen and (min-width: 768px) {
    body.en .globalSubNavArea .globalSubNav_Link .btn {
        width: 260px;
        margin: 0 6px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    body.en .globalSubNavArea .globalSubNav_Link .btn {
        width: 80%;
        margin: 0 auto 1.2rem;
    }
}

body.en .globalSubNavArea .globalSubNav_Link .btn .link {
    padding: 12px 0;
    background-position: calc(100% - 12px) calc(50% + 1px);
}

@media screen and (min-width: 768px) {
    body.en .globalSubNavArea .globalSubNav_Link .btn .link {
        padding-right: 2rem;
        background-position: calc(100% - 8rem) calc(50% + 1px);
    }
}

@media screen and (min-width: 1024px) {
    body.en .globalSubNavArea .globalSubNav_Link .btn .link {
        background-position: calc(100% - 7rem) calc(50% + 1px);
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    body.en .globalSubNavArea .globalSubNav_Link .btn .link {
        padding: 12px 0;
        background-position: calc(100% - 12px) calc(50% + 1px);
    }
}

body.en .globalSubNavArea .globalSubNav_Link .btn .link[target="_blank"] {
    background-position: calc(100% - 12px) calc(50% + 1px);
}

@media screen and (min-width: 768px) {
    body.en .globalSubNavArea .globalSubNav_Link .btn .link[target="_blank"] {
        background-position: calc(100% - 4rem) calc(50% + 1px);
    }
}

@media screen and (min-width: 1024px) {
    body.en .globalSubNavArea .globalSubNav_Link .btn .link[target="_blank"] {
        background-position: calc(100% - 3rem) calc(50% + 1px);
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    body.en .globalSubNavArea .globalSubNav_Link .btn .link[target="_blank"] {
        background-position: calc(100% - 12px) calc(50% + 1px);
    }
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

.section {
    padding: 90px 0 70px;
}

@media screen and (min-width: 768px) {
    .section {
        padding: 0 0 17.6rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section {
        padding: 90px 0 70px;
    }
}

@media screen and (min-width: 768px) {
    .section:first-of-type {
        padding: 17.6rem 0;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section:first-of-type {
        padding: 48px 0 70px;
    }
}

.section:last-of-type {
    padding-bottom: 17.6rem;
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section:last-of-type {
        padding-bottom: 7.2rem;
    }
}

.sectionMain02 {
    background: url(../img/bg_main_01.png) repeat center top;
}

.sectionInner {
    margin-bottom: 17.6rem;
}

.sectionInner:last-child {
    margin-bottom: 0;
}

@media screen and (min-width: 1024px) {
    .sectionInner:last-child {
        margin-bottom: 0;
    }
}

.sectionInner > * {
    margin-right: 7.5vw !important;
    margin-left: 7.5vw !important;
}

@media screen and (min-width: 768px) {
    .sectionInner > * {
        width: 90% !important;
        margin-right: auto !important;
        margin-left: auto !important;
    }
}

@media screen and (min-width: 1024px) {
    .sectionInner > * {
        width: 850px !important;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .sectionInner > * {
        width: auto !important;
        margin-right: 7.5vw !important;
        margin-left: 7.5vw !important;
    }
}

.sectionTitle {
    margin-bottom: 2.8rem;
    font-size: 5.2rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .sectionTitle {
        width: 100%;
        margin-left: auto;
        font-size: 6rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .sectionTitle {
        width: auto;
        margin-left: 0;
        font-size: 5.2rem;
    }
}

.sectionTitle .familyBrandLogo {
    display: block;
    width: 140px;
}


.sectionTitle.eng {
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.14em;
    font-weight: 900;
      /*  padding-left: 0.14em;*/
    font-size: 6rem;
}

.sectionTitleSub {
    margin-top: 11.2rem;
    margin-bottom: 4.8rem;
    font-size: 4.2rem;
    line-height: 1.4;
}

.sectionTitleSub.eng {
    font-size: 6rem;
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.14em;
    font-weight: 900;
        /*  padding-left: 0.14em;*/
}

.sectionTitleSub.nowrap {
    margin-left: auto !important;
}

@media screen and (min-width: 768px) {
    .sectionTitleSub.nowrap {
        width: auto;
        margin-left: auto !important;
    }
}

.sectionTitleSub02 {
    margin-top: 11.2rem;
    margin-bottom: 2.8rem;
    font-size: 4.2rem;
    line-height: 1.4;
}

.sectionTitleSub03 {
    margin-top: 4.8rem;
    margin-bottom: 1.2rem;
    font-size: 3rem;
    text-align: left;
    line-height: 1.4;
}

.sectionTitleSub04 {
    margin: 2.8rem 0 1.2rem;
    font-size: 2.2rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .sectionTitleSub04 {
        font-size: 2.5rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .sectionTitleSub04 {
        font-size: 2.2rem;
    }
}

.sectionBody {
    word-break: break-word;
}

.sectionBody .contentDescription {
    margin-bottom: 2.8rem;
}

.sectionBody .contentDescription.date {
    margin-top: 7.2rem;
}

.sectionBody .contentUList,
    .sectionBody .contentOList {
    margin-bottom: 2.8rem;
}

.sectionBody .contentUList .item,
      .sectionBody .contentOList .item {
    margin-bottom: 1.2rem;
    margin-left: 3rem !important;
    line-height: 1.4;
}

.sectionBody .contentUList .item .contentUList,
        .sectionBody .contentOList .item .contentUList {
    margin-top: 2.8rem;
}

.sectionBody .contentUList {
    position: relative;
    list-style-type: none;
}

.sectionBody .contentUList .item:before {
    position: absolute;
    left: 0;
    display: block;
    content: "・";
}

.sectionBody .contentOList > .item {
    margin-bottom: 4.8rem;
}

.sectionBody .contentOList .contentOList li {
    list-style-type: none;
    list-style-position: insde;
    counter-increment: cnt;
}

.sectionBody .contentOList .contentOList li:before {
    display: marker;
    margin-right: .5em;
    content: "(" counter(cnt) ")";
}

.sectionBody .contentOList .contentOList .contentOList li {
    list-style-type: lower-alpha;
    list-style-type: outside;
    counter-increment: none;
}

.sectionBody .contentOList .contentOList .contentOList li:before {
    display: none;
}

.sectionBody .contentOList .contentOList .contentOList li li {
    list-style-type: lower-roman;
}

.sectionBody .embeddedVideo {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    text-align: center;
}

.sectionBody .embeddedVideo iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.sectionBody .twitterBox {
    margin: 2.8rem 0;
    border: 1px solid #C9C9C9;
}

.sectionBody a:visited {
    color: #8E8E8E;
}

.sectionBody em,
    .sectionBody .emphasis-text {
    padding: 0 0.2em;
    font-style: normal;
    background: linear-gradient(#fff 55%, #ffff66 85%);
}

.section .shoulderTitle {
    margin-bottom: 2.8rem;
    font-size: 2rem;
}

.section .contentImgMain {
    margin-bottom: 2.8rem;
}

.section .contentHead .contentHeading01 {
    font-size: 3rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .section .contentHead .contentHeading01 {
        font-size: 4.2rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section .contentHead .contentHeading01 {
        font-size: 3rem;
    }
}

.section .contentHead .footnote {
    margin-top: 2.8rem;
    font-size: 1.6rem;
    line-height: 1.4;
}

.section .contentHeading02 {
    margin: 7.2rem 0 4.8rem;
    font-size: 2.4rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .section .contentHeading02 {
        font-size: 3rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section .contentHeading02 {
        font-size: 2.4rem;
    }
}

@media screen and (min-width: 768px) {
    .section .dList {
        display: flex;
        flex-wrap: wrap;
    }
}

.section .dList .dTerm {
    margin-bottom: 0.9rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .section .dList .dTerm {
        width: 19.4rem;
        margin-bottom: 2.8rem;
    }
}

.section .dList .dTerm:last-of-type {
    margin-bottom: 0;
}

.section .dList .dDescription {
    margin-bottom: 2.8rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .section .dList .dDescription {
        width: calc(100% - 19.4rem);
    }
}

.section .dList .dDescription:last-of-type {
    margin-bottom: 0;
}

.section .contents-block {
    margin-bottom: 11.2rem;
}

.section .contents-block:last-of-type {
    margin-bottom: 0;
}

.section .imgArea li {
    list-style-type: none;
    margin-left: 0 !important;
    margin-bottom: 2.8rem !important;
    border: 1px solid #F0F0F0;
}

.section .imgArea li .link {
    display: block;
    overflow: hidden;
}

@media screen and (min-width: 768px) {
    .section .imgArea li .link:hover img {
        opacity: 1;
        transform: scale(1.1);
    }
}

.section .imgArea li img {
    width: 100%;
    transition: linear 0.3s;
}

.section .imgArea li:before {
    display: none !important;
}

@media screen and (min-width: 768px) {
    .section .imgArea.col2 {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
}

@media screen and (min-width: 768px) {
    .section .imgArea.col2 li {
        width: 48%;
        margin-right: 4%;
    }
}

@media screen and (min-width: 768px) {
    .section .imgArea.col2 li:nth-child(2n) {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px) {
    .section .imgArea.col3 {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
}

@media screen and (min-width: 768px) {
    .section .imgArea.col3 li {
        width: 30.75%;
        margin-right: 3.875%;
    }
}

@media screen and (min-width: 768px) {
    .section .imgArea.col3 li:nth-child(3n) {
        margin-right: 0;
    }
}

.section .imgArea.noborder .item {
    border: none;
}

.section table,
  .section table.article-table {
    width: 100%;
    word-break: break-word;
    font-size: 1.6rem;
    margin-bottom: 2.8rem;
    border-bottom: 1px solid #F8F8F8;
}

.section table tr,
    .section table.article-table tr {
    display: block;
}

@media screen and (min-width: 768px) {
    .section table tr,
        .section table.article-table tr {
        display: table-row;
    }
}

.section table tr:nth-child(odd),
      .section table.article-table tr:nth-child(odd) {
    background-color: #F8F8F8;
}

.section table tr th,
      .section table.article-table tr th {
    display: block;
    padding: 2rem 2rem 0;
    text-align: left;
}

@media screen and (min-width: 768px) {
    .section table tr th,
          .section table.article-table tr th {
        display: table-cell;
        padding: 3.4rem 3rem;
        white-space: nowrap;
    }
}

.section table tr td,
      .section table.article-table tr td {
    display: block;
    padding: 0 2rem 2rem;
}

.section table tr td p li,
        .section table tr td ul li,
        .section table.article-table tr td p li, .section table.article-table tr td ul li {
    margin-left: 2rem;
}

.section table tr td p:last-child,
        .section table tr td ul:last-child,
        .section table.article-table tr td p:last-child, .section table.article-table tr td ul:last-child {
    margin-bottom: 0 !important;
}

@media screen and (min-width: 768px) {
    .section table tr td,
          .section table.article-table tr td {
        display: table-cell;
        padding: 3.4rem 3rem;
    }
}

.section table tr + td,
      .section table.article-table tr + td {
    padding: 2rem;
}

.section table.article-table02,
  .section table.article-table03,
  .section table.article-table04 {
    border-bottom: 1px solid #8E8E8E;
}

.section table.article-table02 thead,
    .section table.article-table03 thead,
    .section table.article-table04 thead {
    display: none;
}

@media screen and (min-width: 768px) {
    .section table.article-table02 thead,
        .section table.article-table03 thead,
        .section table.article-table04 thead {
        display: table-row-group;
    }
}

.section table.article-table02 tr,
    .section table.article-table03 tr,
    .section table.article-table04 tr {
    background-color: #F8F8F8;
    border: 1px solid #8E8E8E;
    border-bottom: none;
}

@media screen and (min-width: 768px) {
    .section table.article-table02 tr,
        .section table.article-table03 tr,
        .section table.article-table04 tr {
        padding: 0;
    }
}

.section table.article-table02 tr:nth-child(odd),
      .section table.article-table03 tr:nth-child(odd),
      .section table.article-table04 tr:nth-child(odd) {
    background-color: none;
}

.section table.article-table02 tr th,
      .section table.article-table03 tr th,
      .section table.article-table04 tr th {
    padding: 2rem;
    background-color: #1A1A1A;
    color: #fff;
}

@media screen and (min-width: 768px) {
    .section table.article-table02 tr th,
          .section table.article-table03 tr th,
          .section table.article-table04 tr th {
        border: 1px solid #8E8E8E;
    }
}

.section table.article-table02 tr td,
      .section table.article-table03 tr td,
      .section table.article-table04 tr td {
    padding: 0 2rem;
    background-color: #F8F8F8;
}

@media screen and (min-width: 768px) {
    .section table.article-table02 tr td,
          .section table.article-table03 tr td,
          .section table.article-table04 tr td {
        padding: 3.4rem 3rem;
        background-color: #fff;
        border: 1px solid #8E8E8E;
        border-bottom: none;
    }
}

.section table.article-table02 tr td:first-child,
        .section table.article-table03 tr td:first-child,
        .section table.article-table04 tr td:first-child {
    padding-top: 2rem;
}

.section table.article-table02 tr td:last-child,
        .section table.article-table03 tr td:last-child,
        .section table.article-table04 tr td:last-child {
    padding-bottom: 2rem;
}

@media screen and (min-width: 768px) {
    .section table.article-table03 tr {
        margin-bottom: 0;
    }
}

.section table.article-table03 tr th + td {
    padding-top: 2rem;
}

.section table.article-table03 tr td {
    padding: 0px 2rem;
}

.section table.article-table03 tr td:last-child {
    padding-bottom: 2rem;
}

.section table.article-table04 {
    border-bottom: none;
}

.section table.article-table04 tr {
    margin-bottom: 2.8rem;
    border: 1px solid #8E8E8E;
    padding: 0;
    padding: 0;
}

.section table.article-table04 tr th {
    padding: 2rem;
}

.section table.article-table04 tr td {
    padding: 2rem;
}

.section table.article-table05 {
    width: 100%;
    word-break: break-all;
    font-size: 1.6rem;
    margin-bottom: 2.8rem;
    border-bottom: none;
}

.section table.article-table05 tr {
    margin: 0 0 2rem;
    padding: 0;
}

.section table.article-table05 tr:nth-child(odd) {
    background-color: transparent;
}

.section table.article-table05 tr th {
    margin-bottom: 0.9rem;
    padding: 0;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .section table.article-table05 tr th {
        width: 19.4rem;
        padding-bottom: 2.8rem;
    }
}

.section table.article-table05 tr th:last-of-type {
    margin-bottom: 0;
}

.section table.article-table05 tr td {
    margin-bottom: 2.8rem;
    padding: 0;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .section table.article-table05 tr td {
        width: calc(100% - 19.4rem);
        padding-bottom: 2.8rem;
    }
}

.section table.article-table05 tr td:last-of-type {
    margin-bottom: 0;
}

.section .contentDescription a,
  .section .contentUList a,
  .section .contentOList a,
  .section table a {
    text-decoration: underline;
}

.section .contentDescription a[target="_blank"]:after,
    .section .contentDescription a[href^="mailto:"]:after,
    .section .contentDescription a[href$=".zip"]:after,
    .section .contentUList a[target="_blank"]:after,
    .section .contentUList a[href^="mailto:"]:after,
    .section .contentUList a[href$=".zip"]:after,
    .section .contentOList a[target="_blank"]:after,
    .section .contentOList a[href^="mailto:"]:after,
    .section .contentOList a[href$=".zip"]:after,
    .section table a[target="_blank"]:after,
    .section table a[href^="mailto:"]:after,
    .section table a[href$=".zip"]:after {
    display: inline-block;
    width: 15px;
    height: 15px;
    margin-left: 1rem;
    content: "";
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 15px 15px;
    vertical-align: middle;
}

.section .contentDescription a[target="_blank"]:after,
    .section .contentUList a[target="_blank"]:after,
    .section .contentOList a[target="_blank"]:after,
    .section table a[target="_blank"]:after {
    background-image: url(../img/icon_blank_01.svg);
}

.section .contentDescription a[href^="mailto:"]:after,
    .section .contentUList a[href^="mailto:"]:after,
    .section .contentOList a[href^="mailto:"]:after,
    .section table a[href^="mailto:"]:after {
    background-image: url(../img/icon_mail_01.svg);
}

.section .contentDescription a[href$=".zip"]:after,
    .section .contentUList a[href$=".zip"]:after,
    .section .contentOList a[href$=".zip"]:after,
    .section table a[href$=".zip"]:after {
    background-image: url(../img/icon_zip_01.svg);
}

.section #pagenavi {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.section #pagenavi .item {
    list-style-type: none;
    margin: 0 7px;
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.14em;
    font-weight: 900;
      /*  padding-left: 0.14em;*/
    font-size: 2.4rem;
    line-height: 2.4rem;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .section #pagenavi .item {
        margin: 0 10px;
    }
}

.section #pagenavi .item .link,
      .section #pagenavi .item .nolink {
    display: block;
    width: 24px;
    height: 24px;
}

.section #pagenavi .item.current .nolink {
    color: #1A1A1A;
    background: linear-gradient(#fff 55%, #ffff66 85%);
}

.section #pagenavi .item .link {
    color: #1A1A1A;
    transition: linear 0.3s color;
}

.section #pagenavi .item .link:hover {
    color: #1A1A1A;
    text-decoration: none;
}

.section #pagenavi .item.prev .icon,
      .section #pagenavi .item.next .icon {
    display: block;
    width: 15px;
    height: 24px;
}

.section #pagenavi .item.prev .icon img,
        .section #pagenavi .item.next .icon img {
    display: block;
}

.section #pagenavi .item.prev .icon svg,
        .section #pagenavi .item.next .icon svg {
    fill: #1A1A1A;
}

.section #pagenavi .item.prev .icon.nolink svg,
        .section #pagenavi .item.next .icon.nolink svg {
    fill: #C9C9C9;
}

.section #pagenavi .item.prev .link,
      .section #pagenavi .item.next .link {
    transition: linear 0.3s opacity;
}

.section #pagenavi .item.prev {
    margin: 0 1.6rem 0 0;
}

@media screen and (min-width: 768px) {
    .section #pagenavi .item.prev {
        margin: 0 40px 0 0;
    }
}

.section #pagenavi .item.next {
    margin: 0 0 0 1.6rem;
}

@media screen and (min-width: 768px) {
    .section #pagenavi .item.next {
        margin: 0 0 0 40px;
    }
}

.section .mgnB {
    margin-bottom: 7.2rem;
}

.section .mgnBL {
    margin-bottom: 11.2rem;
}

.section.mgnT {
    margin-top: 7.2rem;
}

.section.mgnTL {
    margin-top: 11.2rem;
}

body.noJs .section .swiperBox .swiperButtonNext,
body.noJs .section .swiperBox .swiperButtonPrev,
body.noJs .section .swiperBox .swiperPagination {
    display: none;
}

body.noJs .section .swiperBox .swiper-wrapper {
    display: block !important;
}

body.noJs .section .swiperBox .swiper-wrapper .swiper-slide {
    margin-bottom: 2.8rem;
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

#mainVisual {
    display: block;
    width: 100%;
    height: 100vh;
    background-color:#000;
    
  /* mainVisual SP用 */
  /* FV箇所レイアウト */
}

/* @media screen and (min-width: 768px) {
    #mainVisual {
        display: none;
    }
} */


#mainVisual .headerTypeFVBack {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100vh;
    /* background: url(../img/top/back@2x.png); */
    background-repeat: repeat;
    background-size: 408px 408px;
}

#mainVisual .headerTypeFV-Ttl {
    position: absolute;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
}

#mainVisual .headerTypeFV-Ttl .Ttlsenter {
    padding-bottom: 60px;
}
    @media screen and (min-width:1024px) {
        #mainVisual .headerTypeFV-Ttl .Ttlsenter {
            padding-bottom: 0;
            width: 80%;
            margin: 0 auto;
        }
}


#mainVisual .headerTypeFV-Ttl .Ttlsenter .ttl__img02 {
    width: 100%;
    opacity: 0;
}

#mainVisual .headerTypeFV-Ttl .Ttlsenter .ttl__img03 {
    width: 100%;
    opacity: 0;
}

#mainVisual .headerTypeFV-Logo {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 2;
}

#mainVisual .headerTypeFV-Logo .kvType-fade-back {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

#mainVisual .headerTypeFV-Logo .kvType-fade-Logo {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 28rem;
    height: 18.1rem;
    z-index: 2;
    opacity: 0;

    width: 60%;
    width: 80%;
    height: 60%;
    display: flex;
    justify-content: center;
    align-items: center;
}

#mainVisual .headerTypeFV-Logo .kvType-fade-Logo img {
    padding-bottom: 60px;
    animation: testFadeIn 6s ease 0s 1 normal;
}
    @media screen and (min-width:1024px) {
        #mainVisual .headerTypeFV-Logo .kvType-fade-Logo img {
            padding-bottom: 30px;
        }
    }


@keyframes testFadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}


#mainVisual .vegas-animation-kenburns {
    animation: kenburns linear;
}

@keyframes kenburns {
    0% {
        transform: scale(7);
    }

    60% {
        transform: scale(4);
    }

    100% {
        transform: scale(1);
    }
}

#mainVisual #ttl__arrow {
    position: absolute;
    bottom: 3vh;
    left: 0;
    right: 0;
    margin: auto;
    width: 2.35rem;
    height: 2.35rem;
    z-index: 90;
    filter: invert(100%);
}

@media screen and (min-width: 768px) {
    #mainVisual #ttl__arrow {
        bottom: 6vh;
    }
}

#mainVisual #ttl__arrow img {
    width: 100%;
}

#mainVisual.rel .headerTypeFV-Ttl .Ttlsenter .ttl__img02,
  #mainVisual.rel .headerTypeFV-Ttl .Ttlsenter .ttl__img03 {
    opacity: 1;
}

body.noJs #mainVisual .headerTypeFV-Ttl .Ttlsenter .ttl__img02 {
    -webkit-animation: fade-in 2s ease 2s 1 forwards;
    animation: fade-in 2s ease 2s 1 forwards;
}

body.noJs #mainVisual .headerTypeFV-Ttl .Ttlsenter .ttl__img03 {
    -webkit-animation: fade-in 2s ease 2s 1 forwards;
    animation: fade-in 2s ease 2s 1 forwards;
}

.section {
  /*	
	&Title {
		width: 100%;
		margin-left: auto !important;
		&Sub {
			width: 100%;
			margin-left: auto !important;
		}
	}
*/
}

.section .swiperBox {
    margin-top: 7.2rem;
    position: relative;
}

.section .swiperBoxWrap {
    position: relative;
}

.section .swiperBoxInner {
    position: relative;
    overflow: hidden;
}

.section .swiperBox .swiper-slide {
      /*				.data {
					@include sizeM($point-M) {
						display: none;
					}
					.title {
						margin-bottom: 0.8rem;
						font-size: 1.6rem;
					}
					.date_platform {
						font-size: 1.3rem;
					}
				}*/
}

.section .swiperBox .swiper-slide a {
    display: block;
}

.section .swiperBox .swiper-slide a:hover {
    text-decoration: none;
}

.section .swiperBox .swiper-slide a:hover .img img {
    opacity: 0.5;
}

@media screen and (min-width: 768px) {
    .section .swiperBox .swiper-slide a:hover .img img {
        opacity: 1;
        transform: scale(1.1);
    }
}

.section .swiperBox .swiper-slide .img {
        /*					margin-bottom: 1.2rem;*/
    overflow: hidden;
}

@media screen and (min-width: 768px) {
    .section .swiperBox .swiper-slide .img {
        margin: 0;
    }
}

.section .swiperBox .swiper-slide .img img {
    display: block;
    width: 100%;
    transition: linear 0.3s;
}

.section .swiperBox .swiperButtonPrev,
    .section .swiperBox .swiperButtonNext {
    top: 50%;
    width: 32px;
    height: 50px;
    margin-top: -25px;
    transition: linear 0.3s all;
    background-size: 32px 50px;
    background-position: center center;
    background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
    .section .swiperBox .swiperButtonPrev,
        .section .swiperBox .swiperButtonNext {
        width: 15px;
        height: 24px;
        margin-top: -12px;
        background-size: 15px 24px;
    }

    .section .swiperBox .swiperButtonPrev:hover,
          .section .swiperBox .swiperButtonNext:hover {
        opacity: 0.5;
    }
}

.section .swiperBox .swiperButtonPrev {
    left: 1rem;
    background-image: url(/assets/img/icon_swiperPrev_01.png);
}

@media screen and (min-width: 768px) {
    .section .swiperBox .swiperButtonPrev {
        left: -3rem;
        background-image: url(/assets/img/icon_arrowLeft_01.svg);
    }
}

@media screen and (min-width: 1024px) {
    .section .swiperBox .swiperButtonPrev {
        left: -5rem;
    }
}

.section .swiperBox .swiperButtonNext {
    right: 1rem;
    background-image: url(/assets/img/icon_swiperNext_01.png);
}

@media screen and (min-width: 768px) {
    .section .swiperBox .swiperButtonNext {
        right: -3rem;
        background-image: url(/assets/img/icon_arrowRight_01.svg);
    }
}

@media screen and (min-width: 1024px) {
    .section .swiperBox .swiperButtonNext {
        right: -5rem;
    }
}

.section .swiperBox .swiperPagination {
    margin-top: 1.6rem;
    text-align: center;
}

.section .swiperBox .swiperPagination .swiper-pagination-bullet {
    margin: 0 0.6rem;
    transition: linear 0.3s all;
}

.section .swiperBox .swiperPagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: #1A1A1A;
}

.section#topPurpose {
    padding-top: 6.8rem;
}

@media screen and (min-width: 768px) {
    .section#topPurpose {
        padding-top: 17.6rem;
    }
}

.section#topPurpose .sectionTitle {
    font-size: 6.9rem;
}

.section .purpose .contentDescription {
    margin-bottom: 3.3rem;
    font-size: 2.2rem;
    line-height: 2;
}

.section .purpose .contentDescription br {
    display: none;
}

@media screen and (min-width: 768px) {
    .section .purpose .contentDescription br {
        display: inline;
    }
}

.section .purpose .contentUList {
    font-size: 2.2rem;
}

.section .purpose .contentUList .item {
    margin-left: 2.8rem;
}

.section .visionWordJP {
    width: 100%;
    margin-left: auto !important;
    white-space: nowrap;
    text-align: center;
    font-size: 5.5rem;
    line-height: 1.25;
}

@media screen and (min-width: 768px) {
    .section .visionWordJP {
        width: 100%;
        margin-left: auto;
        text-align: left;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section .visionWordJP {
        text-align: center;
        margin-left: 7.5vw !important;
    }
}

.section .visionWordJP .kanji {
    font-size: 108%;
}

.section .visionWordJP .pmark {
    letter-spacing: -2.5rem;
}

@media screen and (min-width: 768px) {
    .section .visionWordJP br {
        display: none;
    }
}

.section .visionWordEN {
    width: 100%;
    margin-left: auto !important;
    text-align: center;
    font-size: 1.475rem;
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.14em;
    font-weight: 900;
    /*  padding-left: 0.14em;*/
    letter-spacing: 0.4rem;
}

@media screen and (min-width: 768px) {
    .section .visionWordEN {
        width: 100%;
        margin-left: auto;
        text-align: left;
        font-size: 2.6rem;
        letter-spacing: 1.1rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section .visionWordEN {
        text-align: center;
        font-size: 1.475rem;
        letter-spacing: 0.4rem;
        margin-left: 7.5vw !important;
    }
}

.section .valueList {
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .section .valueList {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        text-align: left;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section .valueList {
        display: block;
        margin-left: 7.5vw;
        margin-right: 7.5vw;
        text-align: center;
    }
}

.section .valueList .EN {
    font-size: 2.275rem;
    line-height: 1.4;
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.14em;
    font-weight: 900;
      /*  padding-left: 0.14em;*/
}

@media screen and (min-width: 768px) {
    .section .valueList .EN {
        width: 240px;
        font-size: 3rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section .valueList .EN {
        width: auto;
        font-size: 2.275rem;
    }
}

.section .valueList .JP {
    width: 100%;
    margin-left: auto;
    margin-bottom: 4.8rem;
    font-size: 2.8rem;
    line-height: 1.2;
}

@media screen and (min-width: 768px) {
    .section .valueList .JP {
        width: calc(100% - 240px);
        margin-left: auto;
        margin-bottom: 2.8rem;
        font-size: 3.1rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section .valueList .JP {
        width: auto;
        margin-bottom: 4.8rem;
        font-size: 2.8rem;
    }
}

.section .valueList .JP .kanji {
    font-size: 108%;
}

.section .valueList .JP .pmark {
    letter-spacing: -1rem;
}

.section#topService .sectionTitleSub {
    width: 100%;
    margin-top: 7.2rem;
    margin-left: auto !important;
}

@media screen and (min-width: 768px) {
    .section#topService .sectionTitleSub {
        width: auto;
        margin-left: auto;
    }
}

@media screen and (min-width: 768px) {
    .section#topService,
    .section#topRecruit,
    .section#topNews,
    .section#topCompany {
        padding: 17.6rem 0;
    }
}

@media screen and (min-width: 768px) {
    .section#topService .sectionInner > *,
    .section#topRecruit .sectionInner > *,
    .section#topNews .sectionInner > *,
    .section#topCompany .sectionInner > * {
        min-width: auto;
        max-width: 1120px;
        width: 90% !important;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section#topService .sectionInner > *,
    .section#topRecruit .sectionInner > *,
    .section#topNews .sectionInner > *,
    .section#topCompany .sectionInner > * {
        width: auto !important;
        max-width: auto;
    }
}

.section#topPurpose .sectionTitle,
  .section#topService .sectionTitle,
  .section#topRecruit .sectionTitle,
  .section#topNews .sectionTitle,
  .section#topCompany .sectionTitle {
    width: 100%;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .section#topPurpose .sectionTitle,
      .section#topService .sectionTitle,
      .section#topRecruit .sectionTitle,
      .section#topNews .sectionTitle,
      .section#topCompany .sectionTitle {
        text-align: left;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section#topPurpose .sectionTitle,
      .section#topService .sectionTitle,
      .section#topRecruit .sectionTitle,
      .section#topNews .sectionTitle,
      .section#topCompany .sectionTitle {
        text-align: center;
        margin-left: 7.5vw !important;
        margin-right: 7.5vw !important;
    }
}

.section#topPurpose .sectionTitleSub,
    .section#topService .sectionTitleSub,
    .section#topRecruit .sectionTitleSub,
    .section#topNews .sectionTitleSub,
    .section#topCompany .sectionTitleSub {
    width: 100%;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center;
}

@media screen and (min-width: 768px) {
    .section#topPurpose .sectionTitleSub,
        .section#topService .sectionTitleSub,
        .section#topRecruit .sectionTitleSub,
        .section#topNews .sectionTitleSub,
        .section#topCompany .sectionTitleSub {
        text-align: left;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .section#topPurpose .sectionTitleSub,
        .section#topService .sectionTitleSub,
        .section#topRecruit .sectionTitleSub,
        .section#topNews .sectionTitleSub,
        .section#topCompany .sectionTitleSub {
        text-align: center;
        margin-left: 7.5vw !important;
        margin-right: 7.5vw !important;
    }
}

@media screen and (min-width: 768px) {
    body.en .section#topService {
        padding-bottom: 0;
    }
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

.linkBtn {
    margin-top: 4.8rem;
  /*	@include sizeM($point-M) {
		max-width: 850px;
		margin-right: auto;
		margin-left: auto;
	}*/
}

@media screen and (min-width: 768px) {
    .linkBtn.col3 {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .linkBtn.col3 .bnr {
        margin-right: 33px;
        margin-bottom: 33px;
    }

    .linkBtn.col3 .bnr:nth-child(3n) {
        margin-right: 0;
    }
}

@media screen and (min-width: 768px) {
    .linkBtn.col2 {
        justify-content: space-between !important;
    }
}

.linkBtn.col2 .btn {
    margin-bottom: 2.8rem;
}

@media screen and (min-width: 768px) {
    .linkBtn.col2 .btn {
        margin-bottom: 0;
    }
}

@media screen and (min-width: 768px) {
    .linkBtn.btn01,
    .linkBtn.btn02,
    .linkBtn.btn03 {
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
    }
}

.linkBtn.btn01 .btn,
  .linkBtn.btn02 .btn,
  .linkBtn.btn03 .btn {
    position: relative;
    height: 72px !important;
}

@media screen and (min-width: 768px) {
    .linkBtn.btn01 .btn,
      .linkBtn.btn02 .btn,
      .linkBtn.btn03 .btn {
        width: 48%;
        height: 100px !important;
    }
}

.linkBtn.btn01 .btnText,
    .linkBtn.btn02 .btnText,
    .linkBtn.btn03 .btnText {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    transform: translate(-50%, -50%);
}

.linkBtn.btn01 .btn .main,
    .linkBtn.btn02 .btn .main,
    .linkBtn.btn03 .btn .main {
    display: block;
}

.linkBtn.btn01 .btn .sub,
    .linkBtn.btn02 .btn .sub,
    .linkBtn.btn03 .btn .sub {
    display: block;
    margin-top: 0.6rem;
    font-size: 1.6rem;
}

.linkBtn.btn01 .btn .main {
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.07em;
    font-weight: 700;
    /*  padding-left: 0.07rem;*/
}

.linkBtn.btn02 .btnText .main {
    width: calc(100% - 6rem);
    padding-left: 4rem;
}

.linkBtn.btn02 .btnText .sub {
    width: calc(100% - 6rem);
    padding-left: 4rem;
}

.linkBtn.btn03 .btn,
  .linkBtn.btn04 .btn {
    padding: 1.9rem 4rem;
}

.linkBtn.btn03 .btnText,
    .linkBtn.btn04 .btnText {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    line-height: 1.4;
}

.linkBtn.btn03 .btn {
    height: auto !important;
    background-position: right 2rem center;
    line-height: 1.4;
}

.linkBtn.btn04 .btn {
    background-position: right 2rem center;
}

@media screen and (min-width: 768px) {
    .linkBtn.btn04 .btn {
        height: 76px !important;
        padding: 1.9rem 6rem 1.9rem 4rem;
        background-position: right 3rem center;
    }
}

.linkBtn.mgnB {
    margin-bottom: 7.2rem;
}

.linkBtn.mgnBL {
    margin-bottom: 11.2rem;
}

.linkBtn.mgnT {
    margin-top: 7.2rem;
}

.linkBtn.mgnTL {
    margin-top: 11.2rem;
}

.linkBtn .btn {
    position: relative;
    display: block;
    border: 4px solid #1A1A1A;
    padding: 0 6rem 0 4rem;
    background: url(../img/icon_arrowRight_02.svg) no-repeat right 3rem center;
    background-size: 12px 18px;
    text-align: center;
    color: #1A1A1A;
    text-decoration: none;
    transition: linear 0.3s all;
}

@media screen and (min-width: 768px) {
    .linkBtn .btn {
        display: inline-block;
        padding: 0 6rem 0 4rem;
        border-width: 5px;
    }
}

.linkBtn .btn:visited {
    color: #1A1A1A;
}

.linkBtn .btn:hover {
    background-image: url(../img/icon_arrowRight_04.svg);
    background-color: #1A1A1A;
    color: #fff;
}

.linkBtn .btn[target="_blank"] {
    background-image: url(../img/icon_blank_01.svg);
    background-size: 15px 15px;
}

.linkBtn .btn[target="_blank"]:hover {
    background-image: url(../img/icon_blank_03.svg);
}

.linkBtn .btn.btn_secondary {
    border-color: #8E8E8E;
    background-image: url(../img/icon_arrowRight_06.svg);
    color: #8E8E8E;
}

.linkBtn .btn.btn_secondary:hover {
    background-color: #8E8E8E;
    background-image: url(../img/icon_arrowRight_04.svg);
    color: #fff;
}

.linkBtn .bnr {
    display: block;
}

@media screen and (min-width: 768px) {
    .linkBtn .bnr {
        width: calc((100% - 66px) / 3);
        transition: linear 0.3s opacity;
    }
}

.linkBtn .bnr img {
    width: 100%;
    border: 1px solid #F0F0F0;
}

.linkBtn .bnr:hover {
    opacity: 0.5;
}

.linkBtn.bnrSingle {
    text-align: center;
}

.linkBtn.bnrSingle .bnr {
    display: inline-block;
}

@media screen and (min-width: 768px) {
    .linkBtn.bnrSingle .bnr {
        width: 48%;
    }
}

.linkBtn.bnrDouble {
    text-align: center;
}

@media screen and (min-width: 768px) {
    .linkBtn.bnrDouble {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
    }
}

.linkBtn.bnrDouble .bnr {
    margin-bottom: 1.2rem;
}

@media screen and (min-width: 768px) {
    .linkBtn.bnrDouble .bnr {
        width: 48%;
        margin-bottom: 0;
    }
}

#serviceAnchor .anchorLink {
    border-style: solid;
    border-color: #1A1A1A;
    border-width: 2px 0;
}

@media screen and (min-width: 768px) {
    #serviceAnchor .anchorLink {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        border-width: 0;
    }
}

#serviceAnchor .anchorLink .item {
    list-style-type: none;
}

@media screen and (min-width: 768px) {
    #serviceAnchor .anchorLink .item {
        width: 33.33%;
    }
}

#serviceAnchor .anchorLink .item .link {
    display: block;
    border-style: solid;
    border-width: 2px 4px;
    border-color: #1A1A1A;
    padding: 2.2rem 2rem 2.2rem 0;
    background: url(../img/icon_arrowDown_01.svg) no-repeat right 2rem center;
    background-size: 15px 24px;
    text-align: center;
    color: #1A1A1A;
    text-decoration: none;
    transition: linear 0.3s color;
    transition: linear 0.3s background-color;
}

@media screen and (min-width: 768px) {
    #serviceAnchor .anchorLink .item .link {
        padding: 2rem 2rem 2rem 0;
        border-width: 4px 0 4px 4px;
    }
}

#serviceAnchor .anchorLink .item .link:hover {
    background-image: url(../img/icon_arrowDown_03.svg);
    background-color: #1A1A1A;
    color: #fff;
}

@media screen and (min-width: 768px) {
    #serviceAnchor .anchorLink .item:last-child .link {
        border-right-width: 4px;
    }
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

body#blog.article main.blog {
    padding-top: 4.8rem;
}

@media screen and (min-width: 768px) {
    body#blog.article main.blog {
        padding-top: 178px;
    }
}

@media screen and (min-width: 1024px) {
    body#blog.article main.blog {
        padding-top: 206px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    body#blog.article main.blog {
        padding-top: 64px;
    }
}

body#blog.archive main.blog {
    padding-top: 4.8rem;
}

@media screen and (min-width: 768px) {
    body#blog.archive main.blog {
        padding-top: 178px;
    }
}

@media screen and (min-width: 1024px) {
    body#blog.archive main.blog {
        padding-top: 206px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    body#blog.archive main.blog {
        padding-top: 64px;
    }
}

.blogEntryList {
    margin-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
    .blogEntryList {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
}

.blogEntryList .link:hover .blogEntryThumbnail img {
    opacity: 0.5;
}

@media screen and (min-width: 768px) {
    .blogEntryList .link:hover .blogEntryThumbnail img {
        opacity: 1;
        transform: scale(1.1);
    }
}

.blogEntryList .link:visited {
    color: #1A1A1A;
}

.blogEntryListItem {
    margin-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
    .blogEntryListItem {
        position: relative;
        width: calc((100% - 66px) / 3);
        margin-right: 33px;
        padding-bottom: 5rem;
    }

    .blogEntryListItem:nth-child(3n) {
        margin-right: 0;
    }
}

.blogEntryListItem .link:hover {
    text-decoration: none;
}

.blogEntryListItem .blogEntryThumbnail {
    margin-bottom: 1rem;
    overflow: hidden;
}

.blogEntryListItem .blogEntryThumbnail img {
    display: block;
    width: 100%;
    transition: linear 0.3s;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.blogEntryListItem .blogEntryTitle {
    margin-bottom: 2.8rem;
    font-size: 1.6rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .blogEntryListItem .blogEntryTitle {
        margin-bottom: 0;
    }
}

.blogEntryListItem .blogEntryData {
    font-size: 1.2rem;
}

@media screen and (min-width: 768px) {
    .blogEntryListItem .blogEntryData {
        position: absolute;
        bottom: 0;
        left: 0;
    }
}

.blogEntryListItem .blogEntryData .blogEntryDate {
    display: inline-block;
    margin-right: 1rem;
    letter-spacing: 0.07rem;
}

.blogEntryListItem .blogEntryData .blogBadge {
    display: inline-block;
}

.blogEntryListItem .blogEntryData .blogBadge .link {
    display: block;
    padding: 0.8rem 1.2rem;
    background-color: #1A1A1A;
    color: #fff;
    text-decoration: none;
    transition: linear 0.3s;
}

.blogEntryListItem .blogEntryData .blogBadge .link:visited {
    color: #fff;
}

.blog #blogList .sectionTitle {
    margin-bottom: 4.8rem;
}

.blog #blogArchiveList .contentUList {
    margin-bottom: 11.2rem;
}

@media screen and (min-width: 768px) {
    .blog #blogArchiveList .contentUList {
        margin-bottom: 17.6rem;
    }
}

.blog #blogEntry {
    padding-bottom: 0;
    margin-bottom: 17.6rem;
}

.blog #blogEntry .contentImgMain {
    margin-bottom: 4.8rem;
}

.blog #blogEntry .contentImgMain img {
    width: 100%;
}

.blog #blogEntry .contentHead {
    margin-bottom: 11.2rem;
}

.blog #blogEntry .contentHead .contentHeading01 {
    font-size: 3.6rem;
}

@media screen and (min-width: 768px) {
    .blog #blogEntry .contentHead .contentHeading01 {
        font-size: 4.8rem;
    }
}

.blog #blogEntry .sectionBody p {
    margin-bottom: 2.8rem;
}

.blog #blogEntry .sectionBody ul,
  .blog #blogEntry .sectionBody ol {
    margin-bottom: 2.8rem;
}

.blog #blogEntry .sectionBody ul li,
    .blog #blogEntry .sectionBody ol li {
    margin-bottom: 0.8rem;
    margin-left: 7.5vw;
    line-height: 1.4;
}

.blog #blogEntry .sectionBody em,
  .blog #blogEntry .sectionBody .emphasis-text {
    padding: 0 0.2em;
    font-style: normal;
    background: linear-gradient(#fff 55%, #ffff66 85%);
}

.blog #blogEntry .sectionBody .contentImg {
    margin: 4.8rem 0 7.2rem;
    border: 1px solid #F0F0F0;
}

.blog #blogEntry .sectionBody .contentImg img {
    width: 100%;
}

.blog #blogEntry .sectionBody .interview {
    margin-bottom: 4.8rem;
}

.blog #blogEntry .sectionBody .interviewName {
    display: inline-block;
    margin-right: 1rem;
    padding: 0.08em 0.8em;
    background-color: #1A1A1A;
    color: #fff;
}

@media screen and (min-width: 768px) {
    .blog #blogEntry .sectionBody .interviewName {
        display: inline;
    }
}

.blog #blogEntry .sectionBody .interviewContent {
    display: block;
}

@media screen and (min-width: 768px) {
    .blog #blogEntry .sectionBody .interviewContent {
        display: inline;
    }
}

.blog #blogEntry .sectionBody .interviewContent br {
    display: block;
    width: 100%;
    height: 2.8rem;
    content: "";
}

.blog #blogEntry .sectionBody .interview + .contentDescription {
    margin-bottom: 4.8rem;
}

.blog #blogEntry .sectionBody .contentHeading02 {
    font-size: 3.2rem;
    margin: 11.2rem 0 4.8rem;
}

@media screen and (min-width: 768px) {
    .blog #blogEntry .sectionBody .contentHeading02 {
        font-size: 4.2rem;
    }
}

.blog #blogEntry .profileArea {
    margin: 0 auto 17.6rem;
}

@media screen and (min-width: 768px) {
    .blog #blogEntry .profileArea {
        padding: 0;
    }
}

.blog #blogEntry .profileArea:first-of-type {
    margin: 17.6rem auto 7.2rem;
}

.blog #blogEntry .profileAreaInner {
    margin-bottom: 7.2rem;
    align-items: center;
}

@media screen and (min-width: 768px) {
    .blog #blogEntry .profileAreaInner {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        width: 90%;
    }
}

@media screen and (min-width: 1024px) {
    .blog #blogEntry .profileAreaInner {
        width: 850px;
        margin-left: auto;
        margin-right: auto;
    }
}

.blog #blogEntry .profileAreaInner:last-child {
    margin-bottom: 0;
}

.blog #blogEntry .profileImg {
    width: 62%;
    margin: 0 auto 2.8rem;
    padding: 0;
    border: solid 4px #1A1A1A;
    border-radius: 50%;
    overflow: hidden;
}

@media screen and (min-width: 768px) {
    .blog #blogEntry .profileImg {
        width: 18rem;
        margin: 0;
        border: solid 5px #1A1A1A;
    }
}

.blog #blogEntry .profileText {
    text-align: center;
}

@media screen and (min-width: 768px) {
    .blog #blogEntry .profileText {
        width: calc(100% - 18rem - 7.2rem);
        text-align: left;
    }
}

.blog #blogEntry .profileName {
    margin-bottom: 1.2rem;
    font-size: 2.4rem;
}

.blog #blogEntry .profilePosition {
    display: inline-block;
    margin-bottom: 2.8rem;
    padding: 0.25em 0.8em;
    background-color: #1A1A1A;
    font-size: 1.6rem;
    line-height: 1.4;
    color: #fff;
}

@media screen and (min-width: 768px) {
    .blog #blogEntry .profilePosition {
        margin-bottom: 1.2rem;
    }
}

.blog #blogEntry .profileDescription {
    font-size: 1.6rem;
    line-height: 1.4;
    text-align: left;
}

@media screen and (min-width: 768px) {
    #blogEntry.responsive .sectionInner > *,
  #blogList .sectionInner > * {
        min-width: auto;
        max-width: 1120px;
        width: 90% !important;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #blogEntry.responsive .sectionInner > *,
  #blogList .sectionInner > * {
        width: auto !important;
        max-width: auto !important;
    }
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

.service .section .contentHead {
    margin-bottom: 7.2rem;
    text-align: center;
}

.service .section .contentHead .contentHeading01 {
    font-size: 4.2rem;
}

@media screen and (min-width: 768px) {
    .service .section .contentHead .contentHeading01 {
        font-size: 6rem;
    }
}

.service .section .storeLink {
    margin-bottom: 7.2rem;
    text-align: center;
    display: flex;
}

@media screen and (min-width: 768px) {
    .service .section .storeLink {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
    }
}

.service .section .storeLink .item {
    list-style-type: none;
    /*				margin-bottom: $mg_EX-Small2;*/
    margin: 0;
    margin-right: 0.8rem;
}

.service .section .storeLink .item:last-of-type {
    margin-right: 0;
}

@media screen and (min-width: 768px) {
    .service .section .storeLink .item {
        margin-right: 8px;
        margin-bottom: 0;
    }
}

.service .section .storeLink .item .link {
    transition: linear 0.3s;
}

.service .section .storeLink .item .link:hover {
    opacity: 0.5;
}

@media screen and (min-width: 768px) {
    .service .section .storeLink .item img {
        height: 40px;
    }
}

.service .sectionBody .gameData {
    margin-bottom: 11.2rem;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .gameData .dTerm {
        width: 28rem;
    }
}

@media screen and (min-width: 768px) {
    .service .sectionBody .gameData .dDescription {
        width: calc(100% - 28rem);
    }
}

.service .sectionBody .embeddedVideo {
    margin-bottom: 17.6rem;
}

.service .sectionBody .socialmediaAccount {
    margin-bottom: 11.2rem;
}

.service .sectionBody .socialmediaAccountTitle {
    margin-bottom: 4.8rem;
    font-size: 3rem;
    text-align: center;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .socialmediaAccountTitle {
        font-size: 4.2rem;
    }
}

.service .sectionBody .socialmediaAccountList {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
}

.service .sectionBody .socialmediaAccountList .item {
    display: inline-block;
    list-style-type: none;
    margin: 0 1.2rem;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .socialmediaAccountList .item {
        margin: 0 2.8rem;
    }
}

.service .sectionBody .socialmediaAccountList .item .link {
    transition: linear 0.3s;
}

.service .sectionBody .socialmediaAccountList .item .link:hover {
    opacity: 0.5;
}

.service .sectionBody .socialmediaAccountList .item .link img {
    width: 40px;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .socialmediaAccountList .item .link img {
        width: 72px;
    }
}

.service .sectionBody .col2List .item.bnr img,
.service .sectionBody .col3List .item.bnr img,
.service .sectionBody .col4List .item.bnr img {
    border-width: 1px;
    border-style: solid;
}

.service .sectionBody .col2List {
    margin-bottom: 2.8rem;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col2List {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
}

.service .sectionBody .col2List .item {
    list-style-type: none;
    margin-bottom: 7.5vw;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col2List .item {
        width: 48%;
        margin-right: 4%;
        margin-bottom: 3rem;
    }
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col2List .item:nth-child(2n) {
        margin-right: 0;
    }
}

.service .sectionBody .col2List .item.bnr img {
    border-color: #1A1A1A;
}

.service .sectionBody .col3List {
    margin-bottom: 2.8rem;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col3List {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
}

.service .sectionBody .col3List .item {
    list-style-type: none;
    margin-bottom: 7.5vw;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col3List .item {
        width: 30.75%;
        margin-right: 3.875%;
        margin-bottom: 3rem;
    }
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col3List .item:nth-child(3n) {
        margin-right: 0;
    }
}

.service .sectionBody .col3List .item .link {
    display: block;
    overflow: hidden;
}

.service .sectionBody .col3List .item .link img {
    display: block;
    width: 100%;
    transition: linear 0.3s;
}

.service .sectionBody .col3List .item .link:hover img {
    opacity: 0.5;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col3List .item .link:hover img {
        opacity: 1;
        transform: scale(1.1);
    }
}

.service .sectionBody .col4List {
    margin-bottom: 2.8rem;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col4List {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
}

.service .sectionBody .col4List .item {
    list-style-type: none;
    margin-bottom: 2rem;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col4List .item {
        width: 23.5%;
        margin-right: 2%;
    }
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col4List .item:nth-child(4n) {
        margin-right: 0;
    }
}

.service .sectionBody .col4List .item.bnr img {
    border-color: #707070;
}

.service .sectionBody .col4List .item.blank {
    display: none;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .col4List .item.blank {
        display: block;
        background-color: #EDEDED;
    }
}

.service .sectionBody .appBottomContent {
    margin-bottom: 11.2rem;
}

.service .sectionBody .appBottomContent h2 {
    margin: 11.2rem 0 4.8rem;
    font-size: 3rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .appBottomContent h2 {
        font-size: 4.2rem;
    }
}

.service .sectionBody .appBottomContent h3 {
    margin: 4.8rem 0 2.8rem;
    font-size: 2.4rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .appBottomContent h3 {
        font-size: 3rem;
    }
}

.service .sectionBody .appBottomContent h4 {
    margin: 2.8rem 0 1.2rem;
    font-size: 2.2rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .appBottomContent h4 {
        font-size: 2.5rem;
    }
}

.service .sectionBody .appBottomContent p {
    margin-bottom: 4.8rem;
}

.service .sectionBody .appBottomContent ul, .service .sectionBody .appBottomContent ol {
    margin-bottom: 4.8rem;
}

.service .sectionBody .appBottomContent ul li, .service .sectionBody .appBottomContent ol li {
    margin-bottom: 2rem;
    margin-left: 3rem;
    line-height: 1.4;
}

.service .sectionBody .appBottomContent ul li:last-child, .service .sectionBody .appBottomContent ol li:last-child {
    margin-bottom: 0;
}

.service .sectionBody .appBottomContent ul li ul, .service .sectionBody .appBottomContent ol li ul {
    margin-top: 2.8rem;
}

.service .sectionBody .appBottomContent ul {
    position: relative;
    list-style-type: disc;
}

.service .sectionBody .appBottomContent ul li {
      /*					&:before {
							position: absolute;
							display: block;
							content: "・";
							left: 0;
						}*/
}

.service .sectionBody .appBottomContent ul li ul {
    list-style-type: circle;
}

.service .sectionBody .appBottomContent ul li ul ul {
    list-style-type: square;
}

.service .sectionBody .appBottomContent ol ol {
    margin-top: 1.2rem;
}

.service .sectionBody .appBottomContent ol ol li {
    list-style-type: none;
    list-style-position: inside;
    counter-increment: cnt;
    margin-left: 2rem;
}

.service .sectionBody .appBottomContent ol ol li:before {
    display: marker;
    margin-right: .5em;
    content: "(" counter(cnt) ")";
}

.service .sectionBody .appBottomContent ol ol ol {
    margin-left: 2rem;
}

.service .sectionBody .appBottomContent ol ol ol li {
    list-style-type: lower-alpha;
    list-style-position: outside;
    counter-increment: none;
}

.service .sectionBody .appBottomContent ol ol ol li:before {
    display: none;
}

.service .sectionBody .appBottomContent ol ol ol li li {
    list-style-type: lower-roman;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .appBottomContent dl {
        display: flex;
        flex-wrap: wrap;
    }
}

.service .sectionBody .appBottomContent dl dt {
    margin-bottom: 0.9rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .appBottomContent dl dt {
        width: 19.4rem;
        margin-bottom: 2.8rem;
    }
}

.service .sectionBody .appBottomContent dl dd {
    margin-bottom: 2.8rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .service .sectionBody .appBottomContent dl dd {
        width: calc(100% - 19.4rem);
    }
}

.service .sectionBody .appBottomContent a {
    text-decoration: underline;
    word-break: break-all;
}

.service .sectionBody .appBottomContent a:visited {
    color: #8E8E8E;
}

.service .sectionBody .appBottomContent em,
  .service .sectionBody .appBottomContent .emphasis-text {
    padding: 0 0.2em;
    font-style: normal;
    background: linear-gradient(#fff 55%, #ffff66 85%);
}

.service .sectionBody .appBottomContent a[target="_blank"]:after,
  .service .sectionBody .appBottomContent a[href^="mailto:"]:after,
  .service .sectionBody .appBottomContent a[href$=".zip"]:after {
    display: inline-block;
    width: 30px;
    height: 15px;
    content: "";
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 15px 15px;
    vertical-align: middle;
}

.service .sectionBody .appBottomContent a[target="_blank"]:after {
    background-image: url(../img/icon_blank_01.svg);
}

.service .sectionBody .appBottomContent a[href^="mailto:"]:after {
    background-image: url(../img/icon_mail_01.svg);
}

.service .sectionBody .appBottomContent a[href$=".zip"]:after {
    background-image: url(../img/icon_zip_01.svg);
}

.service .sectionBody .appBottomContent pre {
    white-space: pre-wrap;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    #serviceAnchor .sectionInner > *,
  #correlationDiagram .sectionInner > *,
  #contentBusiness .sectionInner > *,
  #solutionBusiness .sectionInner > *,
  #platformBusiness .sectionInner > * {
        min-width: auto;
        max-width: 1120px;
        width: 90% !important;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #serviceAnchor .sectionInner > *,
  #correlationDiagram .sectionInner > *,
  #contentBusiness .sectionInner > *,
  #solutionBusiness .sectionInner > *,
  #platformBusiness .sectionInner > * {
        width: auto !important;
        max-width: auto !important;
    }
}

#gameDetail {
    padding-top: calc(7.2rem + 99px);
}

@media screen and (min-width: 768px) {
    #gameDetail {
        padding-top: calc(11.2rem + 206px);
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #gameDetail {
        padding-top: calc(7.2rem + 99px);
    }
}

@media screen and (min-width: 1024px) {
    #gameDetail .contentHead {
        min-width: auto;
        max-width: 1120px;
        width: 90% !important;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #gameDetail .contentHead {
        width: auto !important;
        max-width: auto !important;
    }
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

body#article {
    font-family: sans-serif;
    font-weight: bold;
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    body#article.app #header {
        height: 64px;
    }

    body#article.app #header .headerInner .siteLogo {
        top: 10px;
 /* 202108-logo */
        width: 162px;
 /* 202108-logo */
    }

    body#article.app body#article.article main.article {
        padding-top: 64px;
    }
}

body#page.article main.article,
body#article.article main.article {
    padding-top: 64px;
}

@media screen and (min-width: 768px) {
    body#page.article main.article,
    body#article.article main.article {
        padding-top: 178px;
    }
}

@media screen and (min-width: 1024px) {
    body#page.article main.article,
    body#article.article main.article {
        padding-top: 206px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    body#page.article main.article,
    body#article.article main.article {
        padding-top: 64px;
    }
}

.article .sectionArticle .articleHead {
    margin-bottom: 11.2rem;
    line-height: 1.4;
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .article .sectionArticle .articleHead {
        margin-bottom: 2.8rem;
    }
}

.article .sectionArticle .articleHead .articleHeading01 {
    font-size: 4.2rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .article .sectionArticle .articleHead .articleHeading01 {
        font-size: 6rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .article .sectionArticle .articleHead .articleHeading01 {
        font-size: 4.2rem;
    }
}

.article .sectionArticle .articleImgMain {
    margin-bottom: 2.8rem;
}

.article .sectionArticle .articleBody {
    word-break: break-word;
}

.article .sectionArticle .articleBody .article-item {
    margin-bottom: 11.2rem;
}

.article .sectionArticle .articleBody .article-item:last-child {
    margin-bottom: 0;
}

.article .sectionArticle .articleBody h1 {
    margin-bottom: 11.2rem;
    font-size: 4.2rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .article .sectionArticle .articleBody h1 {
        font-size: 6rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .article .sectionArticle .articleBody h1 {
        font-size: 4.2rem;
    }
}

.article .sectionArticle .articleBody h2 {
    margin: 11.2rem 0 4.8rem;
    font-size: 3rem;
    line-height: 1.4;
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .article .sectionArticle .articleBody h2 {
        margin-top: 2.8rem;
    }
}

@media screen and (min-width: 768px) {
    .article .sectionArticle .articleBody h2 {
        font-size: 4.2rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .article .sectionArticle .articleBody h2 {
        font-size: 3rem;
    }
}

.article .sectionArticle .articleBody h3 {
    margin: 4.8rem 0 2.8rem;
    font-size: 2.4rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .article .sectionArticle .articleBody h3 {
        font-size: 3rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .article .sectionArticle .articleBody h3 {
        font-size: 2.4rem;
    }
}

.article .sectionArticle .articleBody h4 {
    margin: 2.8rem 0 1.2rem;
    font-size: 2.2rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .article .sectionArticle .articleBody h4 {
        font-size: 2.5rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .article .sectionArticle .articleBody h4 {
        font-size: 2.2rem;
    }
}

.article .sectionArticle .articleBody p {
    margin-bottom: 4.8rem;
}

.article .sectionArticle .articleBody ul, .article .sectionArticle .articleBody ol {
    margin-bottom: 4.8rem;
}

.article .sectionArticle .articleBody ul li, .article .sectionArticle .articleBody ol li {
    margin-bottom: 2rem;
    margin-left: 3rem;
    line-height: 1.4;
}

.article .sectionArticle .articleBody ul li:last-child, .article .sectionArticle .articleBody ol li:last-child {
    margin-bottom: 0;
}

.article .sectionArticle .articleBody ul li ul, .article .sectionArticle .articleBody ol li ul {
    margin-top: 2.8rem;
}

.article .sectionArticle .articleBody ul {
    position: relative;
    list-style-type: disc;
}

.article .sectionArticle .articleBody ul li {
      /*					&:before {
						position: absolute;
						display: block;
						content: "・";
						left: 0;
					}*/
}

.article .sectionArticle .articleBody ul li ul {
    list-style-type: circle;
}

.article .sectionArticle .articleBody ul li ul ul {
    list-style-type: square;
}

.article .sectionArticle .articleBody ol ol {
    margin-top: 1.2rem;
}

.article .sectionArticle .articleBody ol ol li {
    list-style-type: none;
    list-style-position: inside;
    counter-increment: cnt;
    margin-left: 2rem;
}

.article .sectionArticle .articleBody ol ol li:before {
    display: marker;
    margin-right: .5em;
    content: "(" counter(cnt) ")";
}

.article .sectionArticle .articleBody ol ol ol {
    margin-left: 2rem;
}

.article .sectionArticle .articleBody ol ol ol li {
    list-style-type: lower-alpha;
    list-style-position: outside;
    counter-increment: none;
}

.article .sectionArticle .articleBody ol ol ol li:before {
    display: none;
}

.article .sectionArticle .articleBody ol ol ol li li {
    list-style-type: lower-roman;
}

@media screen and (min-width: 768px) {
    .article .sectionArticle .articleBody dl {
        display: flex;
        flex-wrap: wrap;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .article .sectionArticle .articleBody dl {
        display: block;
    }
}

.article .sectionArticle .articleBody dl dt {
    margin-bottom: 0.9rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .article .sectionArticle .articleBody dl dt {
        width: 19.4rem;
        margin-bottom: 2.8rem;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .article .sectionArticle .articleBody dl dt {
        width: auto;
        margin-bottom: 0.9rem;
    }
}

.article .sectionArticle .articleBody dl dd {
    margin-bottom: 2.8rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .article .sectionArticle .articleBody dl dd {
        width: calc(100% - 19.4rem);
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .article .sectionArticle .articleBody dl dd {
        width: auto;
    }
}

.article .sectionArticle .articleBody a {
    text-decoration: underline;
    word-break: break-all;
}

.article .sectionArticle .articleBody a:visited {
    color: #8E8E8E;
}

.article .sectionArticle .articleBody em,
  .article .sectionArticle .articleBody .emphasis-text {
    padding: 0 0.2em;
    font-style: normal;
    background: linear-gradient(#fff 55%, #ffff66 85%);
}

.article .sectionArticle .articleBody .embeddedVideo {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    text-align: center;
}

.article .sectionArticle .articleBody .embeddedVideo iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.article .sectionArticle .articleBody a[target="_blank"]:after,
  .article .sectionArticle .articleBody a[href^="mailto:"]:after,
  .article .sectionArticle .articleBody a[href$=".zip"]:after {
    display: inline-block;
    width: 15px;
    height: 15px;
    margin-left: 1rem;
    content: "";
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 15px 15px;
    vertical-align: middle;
}

.article .sectionArticle .articleBody a[target="_blank"]:after {
    background-image: url(../img/icon_blank_01.svg);
}

.article .sectionArticle .articleBody a[href^="mailto:"]:after {
    background-image: url(../img/icon_mail_01.svg);
}

.article .sectionArticle .articleBody a[href$=".zip"]:after {
    background-image: url(../img/icon_zip_01.svg);
}

.article .sectionArticle .articleBody pre {
    white-space: pre-wrap;
    line-height: 1.4;
}

/* 20200625追記 */
body#article.app .article .sectionArticle p, body#article.app .article .sectionArticle h1, body#article.app .article .sectionArticle h2, body#article.app .article .sectionArticle h3, body#article.app .article .sectionArticle h4, body#article.app .article .sectionArticle h5, body#article.app .article .sectionArticle h6, body#article.app .article .sectionArticle ul, body#article.app .article .sectionArticle ol, body#article.app .article .sectionArticle li, body#article.app .article .sectionArticle dl, body#article.app .article .sectionArticle dt, body#article.app .article .sectionArticle dd, body#article.app .article .sectionArticle table, body#article.app .article .sectionArticle tr, body#article.app .article .sectionArticle th, body#article.app .article .sectionArticle td {
    letter-spacing: 0.05em;
}

body#article.app .article .sectionArticle li {
    margin-bottom: 2.8rem;
    line-height: 1.6;
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@media screen and (min-width: 768px) {
    #newsList .sectionInner > * {
        min-width: auto;
        max-width: 1120px;
        width: 90% !important;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #newsList .sectionInner > * {
        width: auto !important;
        max-width: auto !important;
    }
}

body#news.article main.news,
body#news.archive main.news,
body#public-notice.archive main.news {
    padding-top: 64px;
}

@media screen and (min-width: 768px) {
    body#news.article main.news,
    body#news.archive main.news,
    body#public-notice.archive main.news {
        padding-top: 178px;
    }
}

@media screen and (min-width: 1024px) {
    body#news.article main.news,
    body#news.archive main.news,
    body#public-notice.archive main.news {
        padding-top: 206px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    body#news.article main.news,
    body#news.archive main.news,
    body#public-notice.archive main.news {
        padding-top: 64px;
    }
}

.newsList {
    margin-bottom: 11.2rem;
}

.newsListItem {
    margin-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
    .newsListItem {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
    }
}

.newsListItem .newsData {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    margin-bottom: 1rem;
}

@media screen and (min-width: 768px) {
    .newsListItem .newsData {
        width: 35.9rem;
    }
}

.newsListItem .newsData .newsDate {
    display: block;
    margin-right: 0.5rem;
    padding-top: 0.4rem;
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.07em;
    font-weight: 700;
        /*  padding-left: 0.07rem;*/
}

@media screen and (min-width: 768px) {
    .newsListItem .newsData .newsDate {
        margin-right: 7.2rem;
    }
}

.newsListItem .newsData .newsBadge {
    box-sizing: border-box;
    width: 10.4rem;
    text-align: center;
    font-size: 1.3rem;
}

.newsListItem .newsData .newsBadge .link {
    display: block;
    padding: 0.8rem 1.2rem;
    background-color: #1A1A1A;
    color: #fff;
    text-decoration: none;
    transition: linear 0.3s;
}

.newsListItem .newsTitle {
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    .newsListItem .newsTitle {
        width: calc(100% - 35.9rem);
    }
}

.newsListItem .newsTitle .link {
    text-decoration: underline;
}

.newsListItem .newsTitle .link[target="_blank"]:after {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    margin-left: 1rem;
    content: "";
    background: url(../img/icon_blank_01.svg) no-repeat center center;
    background-size: 15px 15px;
}

.newsListItem .newsTitle .link:visited {
    color: #8E8E8E;
}

@media screen and (min-width: 768px) {
    .newsListItem.pnotice .newsData {
        width: 18.3rem;
    }
}

@media screen and (min-width: 768px) {
    .newsListItem.pnotice .newsTitle {
        width: calc(100% - 18.3rem);
    }
}

#newsList .sectionTitle {
    margin-bottom: 4.8rem;
}

#newsDetail .contentHead {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 11.2rem;
}

#newsDetail .contentHead .contentHeading01 {
    order: 3;
    font-size: 3.6rem;
}

@media screen and (min-width: 768px) {
    #newsDetail .contentHead .contentHeading01 {
        font-size: 4.8rem;
    }
}

#newsDetail .contentHead .newsDate {
    display: block;
    width: 100%;
    margin-top: 2.8rem;
    margin-bottom: 1.2rem;
    line-height: 1.4;
    text-align: right;
    margin-top: 0;
    margin-bottom: 2.8rem;
    order: 2;
    font-size: 1.6rem;
}

#newsDetail .contentHead .companyName {
    line-height: 1.4;
    text-align: right;
    width: 100%;
    margin-bottom: 0.4rem;
    font-size: 1.6rem;
}

#newsDetail .sectionBody {
    margin-bottom: 11.2rem;
}

#newsDetail .sectionBody h2 {
    margin: 11.2rem 0 4.8rem;
    font-size: 3rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    #newsDetail .sectionBody h2 {
        font-size: 4.2rem;
    }
}

#newsDetail .sectionBody h3 {
    margin: 4.8rem 0 2.8rem;
    font-size: 2.4rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    #newsDetail .sectionBody h3 {
        font-size: 3rem;
    }
}

#newsDetail .sectionBody h4 {
    margin: 2.8rem 0 1.2rem;
    font-size: 2.2rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    #newsDetail .sectionBody h4 {
        font-size: 2.5rem;
    }
}

#newsDetail .sectionBody p {
    margin-bottom: 4.8rem;
}

#newsDetail .sectionBody ul, #newsDetail .sectionBody ol {
    margin-bottom: 4.8rem;
}

#newsDetail .sectionBody ul li, #newsDetail .sectionBody ol li {
    margin-bottom: 2rem;
    margin-left: 3rem;
    line-height: 1.4;
}

#newsDetail .sectionBody ul li:last-child, #newsDetail .sectionBody ol li:last-child {
    margin-bottom: 0;
}

#newsDetail .sectionBody ul li ul, #newsDetail .sectionBody ol li ul {
    margin-top: 2.8rem;
}

#newsDetail .sectionBody ul {
    position: relative;
    list-style-type: disc;
}

#newsDetail .sectionBody ul li {
      /*					&:before {
							position: absolute;
							display: block;
							content: "・";
							left: 0;
						}*/
}

#newsDetail .sectionBody ul li ul {
    list-style-type: circle;
}

#newsDetail .sectionBody ul li ul ul {
    list-style-type: square;
}

#newsDetail .sectionBody ol ol {
    margin-top: 1.2rem;
}

#newsDetail .sectionBody ol ol li {
    list-style-type: none;
    list-style-position: inside;
    counter-increment: cnt;
    margin-left: 2rem;
}

#newsDetail .sectionBody ol ol li:before {
    display: marker;
    margin-right: .5em;
    content: "(" counter(cnt) ")";
}

#newsDetail .sectionBody ol ol ol {
    margin-left: 2rem;
}

#newsDetail .sectionBody ol ol ol li {
    list-style-type: lower-alpha;
    list-style-position: outside;
    counter-increment: none;
}

#newsDetail .sectionBody ol ol ol li:before {
    display: none;
}

#newsDetail .sectionBody ol ol ol li li {
    list-style-type: lower-roman;
}

@media screen and (min-width: 768px) {
    #newsDetail .sectionBody dl {
        display: flex;
        flex-wrap: wrap;
    }
}

#newsDetail .sectionBody dl dt {
    margin-bottom: 0.9rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    #newsDetail .sectionBody dl dt {
        width: 19.4rem;
        margin-bottom: 2.8rem;
    }
}

#newsDetail .sectionBody dl dd {
    margin-bottom: 2.8rem;
    line-height: 1.4;
}

@media screen and (min-width: 768px) {
    #newsDetail .sectionBody dl dd {
        width: calc(100% - 19.4rem);
    }
}

#newsDetail .sectionBody a {
    text-decoration: underline;
    word-break: break-all;
}

#newsDetail .sectionBody em,
  #newsDetail .sectionBody .emphasis-text {
    padding: 0 0.2em;
    font-style: normal;
    background: linear-gradient(#fff 55%, #ffff66 85%);
}

#newsDetail .sectionBody .embeddedVideo {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    text-align: center;
}

#newsDetail .sectionBody .embeddedVideo iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#newsDetail .sectionBody a[target="_blank"]:after,
  #newsDetail .sectionBody a[href^="mailto:"]:after,
  #newsDetail .sectionBody a[href$=".zip"]:after {
    display: inline-block;
    width: 30px;
    height: 15px;
    content: "";
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 15px 15px;
    vertical-align: middle;
}

#newsDetail .sectionBody a[target="_blank"]:after {
    background-image: url(../img/icon_blank_01.svg);
}

#newsDetail .sectionBody a[href^="mailto:"]:after {
    background-image: url(../img/icon_mail_01.svg);
}

#newsDetail .sectionBody a[href$=".zip"]:after {
    background-image: url(../img/icon_zip_01.svg);
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

#topMap {
    background: url(../img/bg_main_01.png) repeat center top;
}

#topMap iframe {
    filter: grayscale(0.9);
    width: 100%;
    height: 376px;
}

@media screen and (min-width: 768px) {
    #topMap iframe {
        height: 470px;
    }
}

body.noJs #topMap {
    display: none;
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@media screen and (min-width: 768px) {
    #peopleList .sectionInner > * {
        min-width: auto;
        max-width: 1120px;
        width: 90% !important;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #peopleList .sectionInner > * {
        width: auto !important;
        max-width: auto !important;
    }
}

@media screen and (min-width: 768px) {
    #peopleList .peopleList {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
}

#peopleList .peopleList .item {
    list-style-type: none;
    margin-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
    #peopleList .peopleList .item {
        width: 30.75%;
        margin-right: 3.875%;
    }
}

@media screen and (min-width: 768px) {
    #peopleList .peopleList .item:nth-child(3n) {
        margin-right: 0;
    }
}

#peopleList .peopleList .item .link .peopleThumbnail {
    margin-bottom: 1.2rem;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

#peopleList .peopleList .item .link .peopleThumbnail img {
    transition: linear 0.3s opacity;
}

#peopleList .peopleList .item .link .peopleData {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    margin-bottom: 1.2rem;
}

#peopleList .peopleList .item .link .peopleData .peopleShoulder {
    height: 2.6rem;
    margin-right: 0.6rem;
    padding: 0 1.2rem;
    background: #EBEAE1 url(../img/bg_main_01.png) repeat center center;
    border: 1px solid #EBEAE1;
    font-size: 1.2rem;
    line-height: 2.6rem;
}

#peopleList .peopleList .item .link .peopleData .peopleName {
    line-height: 2.6rem;
}

#peopleList .peopleList .item .link .peopleWord {
    font-size: 1.6rem;
    line-height: 1.4;
}

#peopleList .peopleList .item .link:hover {
    text-decoration: none;
}

#peopleList .peopleList .item .link:hover .peopleThumbnail img {
    opacity: 0;
}

#peopleDetail {
  /*		.contentDescription {
			margin-bottom: $mg_Large;
		}*/
}

@media screen and (min-width: 768px) {
    #peopleDetail .sectionInner > * {
        min-width: auto;
        max-width: 1120px;
        width: 90% !important;
    }
}

#peopleDetail .contentHead {
    margin-bottom: 4.8rem;
}

#peopleDetail .contentHead .contentHeading01 {
    font-size: 4.8rem;
}

@media screen and (min-width: 768px) {
    #peopleDetail .contentHead .contentHeading01 {
        font-size: 6rem;
    }
}

#peopleDetail .contentHeading02 {
    font-size: 4.2rem;
    margin-bottom: 2.8rem;
    margin-top: 11.2rem;
}

#peopleDetail .contentImgMain {
    margin-bottom: 4.8rem;
    overflow: hidden;
    position: relative;
}

#peopleDetail .contentImgMain img {
    width: 190%;
    max-width: none;
    margin-left: -90%;
}

@media screen and (min-width: 768px) {
    #peopleDetail .contentImgMain img {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }
}

#peopleDetail .contentImgMain.center img {
    margin-left: -45%;
}

@media screen and (min-width: 768px) {
    #peopleDetail .contentImgMain.center img {
        margin-left: 0;
    }
}

#peopleDetail .contentImgMain.left img {
    margin-left: 0;
}

@media screen and (min-width: 768px) {
    #peopleDetail .contentImgMain.left img {
        margin-left: 0;
    }
}

#peopleDetail .contentFootnote {
    font-size: 1.6rem;
    margin-bottom: 11.2rem;
}

#peopleDetail .peopleData {
    margin-bottom: 11.2rem;
}

@media screen and (min-width: 768px) {
    #peopleDetail .peopleData {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
    }
}

#peopleDetail .peopleData .peopleShoulder {
    display: inline-block;
    height: 4.2rem;
    margin-right: 2.8rem;
    margin-bottom: 1.2rem;
    padding: 0 1.2rem;
    background: #EBEAE1 url(../img/bg_main_01.png) repeat center center;
    border: 1px solid #EBEAE1;
    line-height: 4.2rem;
}

@media screen and (min-width: 768px) {
    #peopleDetail .peopleData .peopleShoulder {
        display: block;
        margin-bottom: 0;
        padding: 0 2.8rem;
    }
}

#peopleDetail .peopleData .peopleName {
    font-size: 4.2rem;
    line-height: 4.2rem;
}

#peopleDetail .sectionBody a[target="_blank"]:after,
  #peopleDetail .sectionBody a[href^="mailto:"]:after,
  #peopleDetail .sectionBody a[href$=".zip"]:after {
    display: inline-block;
    width: 30px;
    height: 15px;
    content: "";
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 15px 15px;
    vertical-align: middle;
}

#peopleDetail .sectionBody a[target="_blank"]:after {
    background-image: url(../img/icon_blank_01.svg);
}

#peopleDetail .sectionBody a[href^="mailto:"]:after {
    background-image: url(../img/icon_mail_01.svg);
}

#peopleDetail .sectionBody a[href$=".zip"]:after {
    background-image: url(../img/icon_zip_01.svg);
}

/**************************************
追記　20200604
***************************************/
@media screen and (min-width: 768px) {
    #peopleDetail .contentDescription {
        max-width: 850px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #peopleDetail .contentDescription {
        max-width: auto !important;
    }
}

@media screen and (min-width: 768px) {
    #peopleDetail .contentDescription:first-of-type {
        max-width: none;
        margin-bottom: 17.6rem;
    }
}

@media screen and (min-width: 768px) {
    #peopleDetail .contentHeading02 {
        max-width: 850px;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    #peopleDetail .contentHeading02 {
        max-width: auto !important;
    }
}

#peopleDetail .peopleData {
    margin-bottom: 2.8rem;
}

@media screen and (min-width: 768px) {
    .fix-850 #peopleDetail .sectionInner > * {
        min-width: auto;
        max-width: 850px;
        width: 90% !important;
    }
}

@media screen and (orientation: landscape) and (max-height: 480px) {
    .fix-850 #peopleDetail .sectionInner > * {
        width: auto !important;
        max-width: auto !important;
    }
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

#recruit .section#recruitMovie {
    margin-bottom: -20px;
    padding-bottom: 0;
}

@media screen and (min-width: 768px) {
    #recruit .section#recruitMovie {
        margin-bottom: 0;
        padding-bottom: 17.6rem;
    }
}

#recruit .section#recruitment .sectionBody {
    margin-bottom: 17.6rem;
}

#recruit .section#recruitment .sectionBody .contentUList .item .link {
    text-decoration: underline;
}

#recruit .section#makeGames .imgMakeGames {
    margin-bottom: 7.2rem;
}

#recruit .section#makeGames .imgMakeGames a {
    display: block;
    transition: linear 0.3s;
}

#recruit .section#makeGames .imgMakeGames a:hover {
    opacity: 0.5;
}

@media screen and (min-width: 768px) {
    #recruit .section#wantedly .sectionTitle {
        text-align: center;
    }
}

#recruit .section#wantedly .wantedlyWrap iframe {
    display: block;
    margin-right: auto;
    margin-left: auto;
    width: 100% !important;
}

@media screen and (min-width: 768px) {
    #recruit .section#wantedly .wantedlyWrap iframe {
        width: 500px !important;
    }
}

.section#faq .faq_q {
    position: relative;
    padding-left: 4.8rem;
    text-align: left;
}

.section#faq .faq_q:before {
    position: absolute;
    left: 0;
    display: inline-block;
    content: "Q";
    padding: 0.6rem 0.8rem 1rem;
    background-color: #1A1A1A;
    color: #fff;
    font-family: 'Lato', sans-serif;
    letter-spacing: 0.07em;
    font-weight: 700;
    /*  padding-left: 0.07rem;*/
    font-size: 2.6rem;
    line-height: 1;
}

@keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-moz-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@-webkit-keyframes fade-in {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        display: block;
        opacity: 0;
    }

    100% {
        display: block;
        opacity: 1;
    }
}

@keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-moz-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

@-webkit-keyframes fade-out {
    100% {
        display: block;
        opacity: 1;
    }

    1% {
        display: block;
        opacity: 0;
    }

    0% {
        display: none;
        opacity: 0;
    }
}

body#contact main.contact {
    padding-top: 99px;
}

@media screen and (min-width: 768px) {
    body#contact main.contact {
        padding-top: 178px;
    }
}

@media screen and (min-width: 1024px) {
    body#contact main.contact {
        padding-top: 206px;
    }
}

@media screen and (min-width: 768px) {
    body#contact main.contact #contactList .sectionInner > * {
        min-width: auto;
        max-width: 1120px;
        width: 90% !important;
    }
}

body#contact main.contact .gamesTitle {
    position: relative;
    margin-bottom: 11.2rem;
    padding-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
    body#contact main.contact .gamesTitle {
        padding-bottom: 0;
    }
}

body#contact main.contact .gamesTitleImg {
    margin-bottom: 1.2rem;
}

body#contact main.contact .gamesTitleText {
    font-size: 3rem;
}

body#contact main.contact .gamesTitle .selectLanguage {
    position: absolute;
    bottom: 0;
    left: 0;
}

@media screen and (min-width: 768px) {
    body#contact main.contact .gamesTitle .selectLanguage {
        left: auto;
        right: 0;
    }
}

body#contact main.contact .gamesTitle .selectLanguage .selectControl {
    height: 28px;
    padding: 0 32px 0 18px;
    font-size: 1.4rem;
    border: 2px solid #1A1A1A;
    background: #fff url(../img/icon_pulldown.svg) no-repeat right 20px center;
    background-size: 6px 12px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
}