@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;
    text-align: center;
    font-size: 4.8rem; }
    @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: url(../img/bg_main_01.png) repeat center top; }
  @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: 14px;
      left: 14px;
      width: 77px;
      position: absolute;
      z-index: 500; }
      @media screen and (min-width: 768px) {
        #header .headerInner .siteLogo {
          top: 38px;
          left: 0;
          width: 110px; } }
      @media screen and (min-width: 1024px) {
        #header .headerInner .siteLogo {
          left: 48px;
          width: 140px; } }
      @media screen and (orientation: landscape) and (max-height: 480px) {
        #header .headerInner .siteLogo {
          top: 14px;
          left: 14px;
          width: 77px; } }
      #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; }
      @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: 4px solid transparent;
              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%); }
  @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: 14px;
      left: 14px;
      width: 50px;
      position: absolute;
      z-index: 500; }
      @media screen and (min-width: 768px) {
        #globalNav .globalNavInner .siteLogo {
          top: 10px;
          left: 0;
          width: 62px; } }
      @media screen and (orientation: landscape) and (max-height: 480px) {
        #globalNav .globalNavInner .siteLogo {
          top: 14px;
          left: 14px;
          width: 50px; } }
      #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: 4px solid transparent;
              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 {
  padding-top: 7.2rem;
  background: url(../img/bg_main_01.png) repeat center top; }
  @media screen and (min-width: 768px) {
    #footer {
      padding-top: 11.2rem; } }
  #footer .footerLogo {
    width: 34%;
    margin: 0 auto 7.2rem; }
    @media screen and (min-width: 768px) {
      #footer .footerLogo {
        width: 205px;
        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; }
  #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; }

.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.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; } }

#mainVisualPC {
  display: none;
  width: 100%;
  height: 40vh;
  background: url(../img/bg_main_01.png) repeat center center; }
  @media screen and (min-width: 768px) {
    #mainVisualPC {
      display: block;
      height: 100vh; } }
  #mainVisualPC #youtube,
  #mainVisualPC #youtubeWrap {
    position: absolute;
    width: 100%;
    height: 40vh; }
    @media screen and (min-width: 768px) {
      #mainVisualPC #youtube,
      #mainVisualPC #youtubeWrap {
        height: 100vh; } }
  #mainVisualPC #youtubeWrap {
    background-size: 106.66vh 60vh;
    background-attachment: inherit !important; }
    @media screen and (min-width: 768px) {
      #mainVisualPC #youtubeWrap {
        background-size: calc(177.77vh * 1.2) calc(100vh * 1.2) !important; } }
    @media screen and (min-width: 177.77vh) {
      #mainVisualPC #youtubeWrap {
        background-size: 100% 56.25vw !important;
        background-position: center top -10vh !important; } }
  #mainVisualPC #iframe_youtube {
    margin-top: -10vh !important;
    margin-left: calc(((106.66vh - 100%) / 2) * -1) !important;
    width: 106.66vh !important;
    height: 60vh !important; }
    @media screen and (min-width: 768px) {
      #mainVisualPC #iframe_youtube {
        width: calc(177.77vh * 1.2) !important;
        height: calc(100vh * 1.2) !important;
        margin-left: calc((((177.77vh * 1.2) - 100%) / 2) * -1) !important; } }
    @media screen and (min-width: 177.77vh) {
      #mainVisualPC #iframe_youtube {
        width: calc(100vw * 1.2) !important;
        height: calc(56.25vw * 1.2) !important;
        margin-left: calc(((( 100vw * 1.2 ) - 100vw ) / 2 ) * -1 ) !important; } }
  #mainVisualPC .loading {
    position: relative;
    width: 100%;
    height: 40vh;
    background: url(../img/bg_main_01.png) repeat center top;
    z-index: 50; }
    @media screen and (min-width: 768px) {
      #mainVisualPC .loading {
        height: 100vh; } }
    #mainVisualPC .loading .spinner {
      position: absolute;
      top: calc(20vh - 40px);
      left: calc(50% - 40px);
      height: 80px;
      width: 80px;
      text-align: center;
      display: inline-block;
      vertical-align: top; }
      @media screen and (min-width: 768px) {
        #mainVisualPC .loading .spinner {
          top: 50vh; } }
  #mainVisualPC #ttl__fadeIn {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 40vh; }
    @media screen and (min-width: 768px) {
      #mainVisualPC #ttl__fadeIn {
        height: 100vh; } }
    #mainVisualPC #ttl__fadeIn .ttl__fadeInJA,
    #mainVisualPC #ttl__fadeIn .ttl__fadeInEN {
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      display: flex;
      justify-content: center;
      flex-direction: column;
      align-items: center;
      width: 82%;
      margin: auto;
      opacity: 0; }
    #mainVisualPC #ttl__fadeIn .ttl__fadeInJA {
      transform: translateY(-30%); }
    #mainVisualPC #ttl__fadeIn .ttl__fadeInEN {
      transform: translateY(90%); }
  #mainVisualPC #ttl__arrow {
    position: absolute;
    bottom: calc(60vh + 3vh);
    left: 0;
    right: 0;
    margin: auto;
    width: 2.35rem;
    height: 2.35rem;
    z-index: 90; }
    @media screen and (min-width: 768px) {
      #mainVisualPC #ttl__arrow {
        bottom: 6vh; } }
    #mainVisualPC #ttl__arrow img {
      width: 100%; }
  #mainVisualPC.rel .loading {
    display: none; }
  #mainVisualPC.rel #ttl__fadeIn .ttl__fadeInJA,
  #mainVisualPC.rel #ttl__fadeIn .ttl__fadeInEN {
    opacity: 1; }

#mainVisualSP {
  display: block;
  width: 100%;
  height: 100vh;
  background: url(../img/bg_main_01.png) repeat center top;
  /* mainVisual SP用 */
  /* FV箇所レイアウト */ }
  @media screen and (min-width: 768px) {
    #mainVisualSP {
      display: none; } }
  #mainVisualSP .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; }
  #mainVisualSP .headerTypeFV-Ttl {
    position: absolute;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0; }
    #mainVisualSP .headerTypeFV-Ttl .Ttlsenter .ttl__img02 {
      width: 100%;
      opacity: 0; }
    #mainVisualSP .headerTypeFV-Ttl .Ttlsenter .ttl__img03 {
      width: 100%;
      opacity: 0; }
  #mainVisualSP .headerTypeFV-Logo {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 2; }
    #mainVisualSP .headerTypeFV-Logo .kvType-fade-back {
      width: 100%;
      height: 100vh;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1; }
    #mainVisualSP .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; }
  #mainVisualSP .vegas-animation-kenburns {
    animation: kenburns linear; }

@keyframes kenburns {
  0% {
    transform: scale(7); }
  60% {
    transform: scale(4); }
  100% {
    transform: scale(1); } }
  #mainVisualSP #ttl__arrow {
    position: absolute;
    bottom: 3vh;
    left: 0;
    right: 0;
    margin: auto;
    width: 2.35rem;
    height: 2.35rem;
    z-index: 90; }
    @media screen and (min-width: 768px) {
      #mainVisualSP #ttl__arrow {
        bottom: 6vh; } }
    #mainVisualSP #ttl__arrow img {
      width: 100%; }
  #mainVisualSP.rel .headerTypeFV-Ttl .Ttlsenter .ttl__img02,
  #mainVisualSP.rel .headerTypeFV-Ttl .Ttlsenter .ttl__img03 {
    opacity: 1; }

body.noJs #mainVisualPC .loading {
  display: none; }

body.noJs #mainVisualPC #ttl__fadeIn .ttl__fadeInJA,
body.noJs #mainVisualPC #ttl__fadeIn .ttl__fadeInEN {
  -webkit-animation: fade-in 2s ease 2s 1 forwards;
  animation: fade-in 2s ease 2s 1 forwards; }

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

body.noJs #mainVisualSP .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 > *,
  #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 > *,
  #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: 7px;
    width: 54px; }
  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; }
