/*土佐鶴CSS*/

/* 

土佐鶴ブルー：#1c305c
土佐鶴グレイシュブルー：#507ea4

*/

@charset 'utf-8';

/*全デバイス/画面サイズに共通
かつ 480：スマートフォン縦*/

article h2,
.btnBox,
.grid3 .box,
.grid2by2 .box1 span {
  font-family: serif;
}

.naviUL li a:hover,
.btnBox:hover {
  text-decoration: none;
  background: rgba(80, 124, 164, 0.5);
  color: #fff;
}

.bgNami {
  background: url(../img/top/bg_nami.gif) repeat-y;
  background-size: contain;
}

.bgRestrant {
  background-color: #fffffc;
}

html {
  font-size: 75%;
}

#adminBox,
.acms-admin-box {
  margin-bottom: 0 !important;
}

.hNavi a:visited {
  color: #fff !important;
}
a.btnBox:visited {
  color: #333 !important;
}
#lineup a.btnBox:visited {
  color: #fff !important;
}

.topicpath-item,
.topicpath-item a {
  font-size: 0.8rem;
}
.topicpath-list li:after {
  color: #aaa;
}

.page-title-filter {
  background: rgba(0, 0, 0, 0.2);
}

#Entry h3 {
  border-left: 6px solid #1c305c;
  margin-bottom: 1rem;
  text-indent: 0.5rem;
}
#Entry h3.UL {
  border-bottom: 2px solid #1c305c;
  margin-bottom: 1rem;
  border-left: none;
  text-indent: 0;
}

ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

#Outer {
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
}

main {
  /*padding-top: 4rem;*/
  position: relative;
}

#top main {
  padding-top: 4rem;
}

img.imgFit,
.imgFit img {
  width: 100%;
  height: auto;
}

.vPC,
.vPCILB {
  display: none;
}

.mB0 {
  margin-bottom: 0 !important;
}

.mB2 {
  margin-bottom: 2rem !important;
}

.mB3 {
  margin-bottom: 3rem !important;
}

.p0 {
  padding: 0 !important;
}

article {
  padding: 2rem 0;
}

article h2 {
  text-align: center;
  font-size: 1.6rem;
  color: #d0af4c;
  margin-bottom: 1rem;
}

article section {
  padding: 2rem;
}

.clearfix::after {
  display: table;
  clear: both;
  content: "";
}

/*layout*/

footer {
  padding: 0.1rem 0 0;
  color: #fff;
  background: #1c305c;
  position: relative;
}

.entry {
  margin-bottom: 0;
  border-style: none;
}

/*---------------header*/

header article:nth-of-type(1) {
  padding: 0.5rem 0;
  position: block;
  width: 100%;
  max-width: 1920px;
  z-index: 2000;
  position: fixed;
  height: 4rem;
  background: rgba(80, 126, 164, 0.8);
}

header article h1 {
  display: inline-block;
  margin-bottom: 0;
  padding-left: 2rem;
  transition: padding-left 0.3s ease;
}

header article h1 .logo {
  height: 2.45rem;
}

header article nav {
  display: none;
  float: right;
}

header article nav,
#btn_menu {
  margin-top: 0.65rem;
}

header article ul {
  list-style-type: none;
}

header article ul.hNavi li {
  float: left;
}

header article nav a {
  font-family: serif;
  font-size: 1rem;
  line-height: 1;
  display: inline-block;
  padding: 0 3rem;
  text-align: center;
  color: #fff;
  transition: opacity 0.3s ease;
}

header article nav a:hover {
  color: #fff;
  text-decoration: none;
  opacity: 0.5;
}

header article ul.hNavi li:before {
  font-size: 1rem;
  content: "|";
  color: #fff;
}

header article ul li:nth-of-type(1):before {
  display: none;
}

/**/

#btn_menu {
  position: relative;
  top: -0.1rem;
  display: inline-block;
  float: right;
  width: 2rem;
  height: auto;
  margin-right: 2rem;
  cursor: pointer;
  transition: margin-right 0.3s ease;
}

#btn_menu:hover {
  opacity: 0.5;
}

#btn_menu img {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
  transition: opacity 0.3s ease;
}

img#btn_close {
  opacity: 0;
}

/*---------------footer*/

footer .logo {
  display: block;
  width: auto;
  height: 4.4rem;
  margin: 1rem auto;
}

.credit {
  font-size: 0.9rem;
  margin-bottom: 0;
  padding: 0.3rem 0;
  text-align: center;
  color: #333;
  display: block;
}

.caution {
  text-align: center;
  font-size: 0.9rem;
  line-height: 1.2;
  color: #1c305c;
  display: block;
}

/*-----------------gNavi*/

.gNaviOuter {
  background: rgba(25, 48, 92, 0.95);
  padding: 2rem 0 3rem;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 15;
  top: -54rem;
  transition: top 0.5s ease;
}

.gNavi {
  width: 100%;
  margin: 0 auto;
}

.naviUL {
  position: relative;
  margin: 0 0.25rem;
}

.naviUL li {
  width: calc(100%-4rem);
  margin: 0 2rem;
}

.naviUL li a {
  font-family: serif;
  line-height: 1;
  display: block;
  padding: 1rem 0.5rem;
  color: #fff;
  border-bottom: 1px solid #fff;
}

.naviUL li a.iconPD:after {
  display: inline-block;
  float: right;
  margin-right: 0;
  content: "▼";
}

/*---------------------btnBox*/
.btnBox {
  display: block;
  line-height: 1;
  padding: 0.4em 0;
  width: 8em;
  text-align: center;
  border: 2px solid #000;
  margin: 0 auto;
  color: #000;
  font-size: 1rem;
}

.btnBox:hover {
  background: ;
}

/*----------------------gNaviオープン*/
.open .gNaviOuter {
  top: 4rem;
  position: fixed;
}

.open #btn_menu img#btn_open {
  opacity: 0;
}

.open #btn_menu img#btn_close {
  opacity: 1;
}

.parallax.tosa {
  background: url(../img/parallax_kura.jpg) repeat-y center top;
}

/*----------------------パララックス*/
.parallax {
  height: 12rem;
  overflow: hidden;
}

.parallax {
  width: 100%;
  text-align: center;
  background: url(../img/top/parallax02+.jpg) repeat-y center top;
  background-size: cover;
}

.grid2by2 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
}

.grid2by2 .box {
  flex: 0 0 100%;
  position: relative;
}

.grid2by2 .box1 {
  background: #d0af4c;
  min-height: 6rem;
}

.grid2by2 .box1 span {
  display: inline-block;
  width: 11rem;
  font-size: 1.2rem;
  line-height: 1.2;
  color: #fff;
  position: relative;
  top: calc(50% - 0.6rem);
  left: calc(50% - 5.5rem);
  text-align: center;
}

.grid2by2 .box1 span br {
  display: none;
}

.grid2by2 .box img.over {
  position: absolute;
  top: 0;
  left: 0;
}

.grid3 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
  position: relative;
  padding: 2rem 0;
}

.grid3 .box {
  flex: 0 0 40%;
  position: relative;
  display: block;
  text-align: center;
  padding: 0.8rem 0;
  line-height: 1.6;
  font-size: 1.2rem;
}

.grid3 .box:nth-of-type(2) {
  border-left: 1px solid #000;
  border-right: 1px solid #000;
}

.grid3 .box img {
  position: absolute;
  right: 2%;
  top: 2.2rem;
  height: 4rem;
  width: auto;
}

.grid3 .box:nth-of-type(1) img {
  right: 13%;
}

.grid3 .box small {
  display: inline-block;
  line-height: 1.4;
  margin-top: 0.3rem;
}
.grid3 .box .btnBox {
  margin-top: 0.6rem;
}

.clip130 {
  position: relative;
  overflow: hidden;
}

.clip130 img {
  width: 140% !important;
  position: relative;
  left: -20%;
}

/**/
#rightTab {
  display: block;
  position: fixed;
  width: 3rem;
  height: 9rem;
  top: 18vw;
  right: 0;
  overflow: hidden;
  z-index: 16;
}

#rightTab img {
  width: 200%;
  height: auto;
  position: relative;
}

#rightTab:hover img {
  left: -100%;
}

/*---------------スライド*/
#slideBlock {
  padding: 0 0 0 !important;
  min-height: 12rem;
}

/*---------------News & Topics*/
.headline li {
  border-bottom: 1px dotted #999;
  vertical-align: middle;
  width: 100%;
  position: relative;
  font-size: 1.2rem;
}
.headline li .label {
  display: inline-block;
  background: #d0af4c;
  color: #fff;
  width: 6rem;
  text-align: center;
  font-family: serif;
  font-size: 0.9rem;
  position: relative; /*top: -1rem;*/
  vertical-align: middle;
}
.headline a {
  /*border-bottom: 1px dotted #999;*/
  display: inline-block;
  width: calc(100% - 7rem);
  margin-left: 1rem;
  padding: 0.5rem 1.5rem 0.3rem 0;
  color: #666;
  transition: background 0.3s ease;
  vertical-align: middle;
}
.headline li:hover {
  background-color: rgba(80, 126, 164, 0.5);
  text-decoration: none;
}
.headline a .date {
  font-size: 0.9rem;
  font-family: serif;
  display: block;
  margin-left: 5px;
}
.headline a .date + span {
  margin-left: 5px;
  font-family: serif;
}
.headline a:after {
  content: "▲";
  position: absolute;
  right: 0.25rem;
  color: #d0af4c;
  transform: rotate(90deg);
  top: 48%;
}

/*---------------noDate*/
.company .headline li {
  vertical-align: middle;
  width: 100%;
  position: relative;
  font-size: 1.2rem;
}
.company .headline li .label {
  display: none;
}
.company .headline a {
  border-bottom: 1px dotted #999;
  display: inline-block;
  width: 100%;
  margin-left: 0;
  padding: 0.8rem 1.5rem 0.5rem 1.5rem;
  color: #666;
  transition: background 0.3s ease;
}
.company .headline a:hover {
  background-color: rgba(80, 126, 164, 0.5);
  text-decoration: none;
}
.company .headline a .date,
.company article #Entry h2 time {
  display: none;
}
.company .headline a:after {
  top: 32%;
}
.company .headline .acms-label {
  top: 36%;
  left: -2rem;
}
.company .bgNami {
  padding-top: 0;
}

.products .headline li {
  vertical-align: middle;
  width: 100%;
  position: relative;
  font-size: 1.2rem;
}
.products .headline li .label {
  display: none;
}
.products .headline a {
  border-bottom: 1px dotted #999;
  display: inline-block;
  width: 100%;
  margin-left: 0;
  padding: 0.8rem 1.5rem 0.5rem 1.5rem;
  color: #666;
  transition: background 0.3s ease;
}
.products .headline a:hover {
  background-color: rgba(80, 126, 164, 0.5);
  text-decoration: none;
}
.products .headline a .date,
.products article #Entry h2 time {
  display: none;
}
.products .headline a:after {
  top: 32%;
}
.products .headline .acms-label {
  top: 36%;
  left: -2rem;
}
.products .bgNami {
  padding-top: 0;
}

.recruit .headline li {
  vertical-align: middle;
  width: 100%;
  position: relative;
  font-size: 1.2rem;
}
.recruit .headline li .label {
  display: none;
}
.recruit .headline a {
  border-bottom: 1px dotted #999;
  display: inline-block;
  width: 100%;
  margin-left: 0;
  padding: 0.8rem 1.5rem 0.5rem 1.5rem;
  color: #666;
  transition: background 0.3s ease;
}
.recruit .headline a:hover {
  background-color: rgba(80, 126, 164, 0.5);
  text-decoration: none;
}
.recruit .headline a .date,
.recruit article #Entry h2 time {
  display: none;
}
.recruit .headline a:after {
  top: 32%;
}
.recruit .headline .acms-label {
  top: 36%;
  left: -2rem;
}
.recruit .bgNami {
  padding-top: 0;
}

/*-----------------第2階層*/
.L2 .bgNami.top {
  padding-top: 3rem;
  padding-bottom: 4rem;
}

.L3 h2.docTit {
  color: #333;
  width: 90%;
  margin: 0 auto;
  text-align: left;
  font-size: 1.8rem;
  line-height: 1.2;
}
.L3 {
  padding-top: 1rem;
}
.tips {
  font-size: 0.9rem;
}
section.doc {
  width: 86%;
  padding: 2rem;
  margin: 3rem auto;
  border: 1px solid #ccc;
}

/*------------------#Entry*/
.acms-page-header {
  border-style: none;
  margin-top: 1rem;
}

article #Entry {
  border: 1px solid #f0f0f0;
  padding: 1rem;
}
article #Entry h2 {
  color: #333;
  background: url(../img/top/bg_nami.gif) repeat-y right center;
  text-align: left;
  font-size: 1.2rem;
  padding: 0　1rem;
  line-height: 1.2;
  position: relative;
  background-size: 180%;
}

article #Entry h2 time {
  font-size: 1rem;
  position: absolute;
  right: 0.5rem;
  top: -1.25rem;
  font-family: sans-serif;
  font-weight: normal;
}

article #Entry h2 a {
  width: calc(100% - 1rem);
  display: inline-block;
  padding: 0.5rem 0;
  color: #333;
}
article #Entry h2 a:hover {
  text-decoration: none;
  color: #333;
}
article #Entry p {
  font-size: 1.2rem;
}
.acms-pager {
  position: relative;
  text-align: center;
  display: block;
}
.acms-pager li {
  float: none;
  display: inline-block;
}

.headline .acms-label {
  position: absolute;
  top: 0;
  left: 13rem;
}
.headline a {
  font-family: serif;
  font-weight: bold;
}

article section > h2 {
  color: #333;
  font-size: 1.6rem;
  text-align: center;
}

#L2 .topicpath {
  margin-bottom: 0;
  padding: 0.5rem 2rem;
}
#L2 .topicpath .topicpath-list {
  max-width: 100%;
  padding: 0;
}
#L2 .topicpath .topicpath-list li {
  padding: 0 0.3rem 0 0;
}
#L2 .topicpath .topicpath-list li a:hover {
  text-decoration: none;
  background: rgba(80, 126, 164, 0.5);
  color: #fff;
}
#L2 .topicpath .topicpath-list li:after {
  content: "/";
}
#L2 .topicpath .topicpath-list li:last-of-type:after {
  content: "";
}

#L2 .acms-container {
  max-width: 100%;
  padding-left: 2rem;
}

/*------------------詳細ページ*/
.acms-pager li.cur button,
.acms-pager li.cur span,
.acms-pager li > a,
.acms-pager li > button,
.acms-pager li span > a {
  font-size: 0.8rem;
}
.acms-pager li.cur button,
.acms-pager li.cur span,
.acms-pager li > a,
.acms-pager li > button,
.acms-pager li span > a {
  padding: 4px;
}
.acms-pager {
  margin-top: 1rem;
}

/*メニュー改造*/
.naviUL li {
  float: left;
  width: calc(50% - 0.5rem);
  margin: 0 0.25rem;
}

.open .gNaviOuter {
  height: 100vh;
}

.gNavi {
  width: 100%;
  margin: 0 auto;
  padding: 0 1rem 2rem;
  font-variant: normal;
}

.contact .dotList {
  margin-left: 2rem;
}
.contact .dotList li {
  list-style-type: disc;
  margin-bottom: 0.5rem;
}
.contact .hideBlock {
  font-size: 1rem;
  padding: 2rem;
  border: 1px solid #999;
  margin-bottom: 2rem;
  margin: 1rem 0 2rem;
  display: none;
}
.contact .closedH:after {
  content: "開く＋";
  display: inline-block;
  font-size: 0.9rem;
  padding: 0.5rem 1rem;
  background: #ccc;
  border-radius: 1rem;
  margin-left: 1rem;
  position: relative;
  top: -0.1rem;
  line-height: 1;
}
.contact .closedH.open:after {
  content: "閉じるー";
  color: #fff;
  background: #000;
}
.contact .closedH {
  cursor: pointer;
  margin: 2rem 0;
}

.page-title {
  font-size: 1.4rem;
}

.bottomArea {
  padding: 0.5rem 1rem;
  background: #fff;
}

/*---------------------------------youtube*/
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin: 0 auto 2rem;
}
.youtube + p {
  width: 100%;
  margin: 0 auto;
  margin-top: 0.5rem;
  font-size: 1.2rem;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/*------------------SNSボタン*/
#headerSNS {
  float: right;
  display: inline-block;
  margin: 0.45rem 1.5rem 0 1rem;
}
#footerSNS {
  position: absolute;
  top: -3.5rem;
  right: 1rem;
  display: inline-block;
}
footer .logo {
  height: 2.8rem;
}
.gNavi {
  position: relative;
}
.btnSNS {
  display: inline-block;
  top: 0;
  position: relative;
  transition: opacity 0.3s ease;
}
.btnSNS img {
  width: 26px;
  height: auto;
  margin: 0 0.5rem;
}
/*.btnSNS.btnFB{display: none;
}*/
.btnSNS.btnFB img {
  width: 30px;
}
.btnSNS:hover {
  opacity: 0.5;
}
.gNaviOuter #footerSNS {
  display: none;
}

header article nav a {
  padding: 0 2rem;
}
header article ul.hNavi li:after {
  font-size: 1rem;
  content: "|";
  color: #fff;
}
header article ul.hNavi li:before {
  display: none;
}

/*------------------プレビュー*/
#acms-preview-area {
  top: 4.5rem;
}

.acms-entry a {
  word-break: break-all;
}

@media screen and (min-width: 767px), print {
  .youtube {
    position: relative;
    width: 90%;
    padding-top: 47.81%;
  }
  .youtube + p {
    width: 90%;
  }
}

/*スマートフォン横|タブレット縦-----------------*/

@media screen and (min-width: 400px), print {
  .naviUL li {
    float: left;
    width: calc(50% - 0.5rem);
    margin: 0 0.25rem;
  }
  .page-title {
    font-size: 1.5rem;
  }
  /**/
}

@media screen and (min-width: 640px), print {
  .page-title {
    font-size: 1.6rem;
  }
  #slideBlock {
    padding: 0 !important;
  }
  #L2 .topicpath {
    margin-bottom: 0;
    padding: 0.5rem 4rem;
  }
  #L2 .acms-container {
    padding-left: 4rem;
  }
  article h2 {
    font-size: 2rem;
  }
  /*------------------SNSボタン*/
  #headerSNS {
    margin: 0.35rem 1.5rem 0 1rem;
  }
  #footerSNS {
    right: 0.5rem;
  }
  footer .logo {
    height: 3.2rem !important;
  }
  .gNavi {
    top: 0;
  }
}

/*タブレット横---------------------*/

@media screen and (min-width: 767px), print {
  .page-title {
    font-size: 1.8rem;
  }

  #top main {
    padding-top: 0;
  }

  .contact .contact-box {
    width: 80%;
    margin: 0 auto;
  }

  .contact .contact-box h2 {
    color: #333;
    background: url(../img/top/bg_nami.gif) repeat-y;
    text-align: left;
    padding: 0　1rem;
  }

  article section {
    padding: 2rem 4rem;
  }

  .vSP {
    display: none;
  }

  .vPC {
    display: block;
  }

  .vPCILB {
    display: inline-block;
  }

  header article nav {
    display: inline-block;
  }

  header article h1 {
    padding-left: 4rem;
  }

  #btn_menu {
    top: -0.1rem;
    margin-right: 4rem;
  }

  .gNavi {
    width: calc(100% - 6rem); /*top: -24rem;*/
    padding-bottom: 3rem;
  }

  .naviUL {
    position: relative;
    float: left;
    width: 28%;
    margin: 0;
  }

  .naviUL:nth-of-type(2) {
    margin: 0 8%;
  }

  .naviUL li {
    float: none;
    width: 100%;
    margin: 0;
  }

  .grid2by2 .box {
    flex: 0 0 50%;
  }

  .grid2by2 .box1 span {
    font-size: 2rem;
    top: calc(50% - 2rem);
  }

  .grid2by2 .box1 span br {
    display: inline-block;
  }

  /*.grid3{padding: 2rem 4rem;
}*/
  .grid3 .box {
    font-size: 1.4rem;
  }
  .grid3 .box img {
    right: 15%;
    top: 2.5rem;
    height: 5rem;
  }

  .grid3 .box:nth-of-type(1) img {
    right: 15%;
  }

  .grid3 .box:nth-of-type(2) img {
    right: 10%;
    top: 2.5rem;
  }

  .grid3 .box:nth-of-type(3) img {
    right: 18%;
    top: 2.5rem;
    height: 4.8rem;
  }

  .clip130 img {
    width: 100% !important;
    position: relative;
    left: 0;
  }

  /*---------------------btnBox*/
  .btnBox {
    width: 12em;
  }

  /*---------------------btnBox*/
  .btnBox {
    font-size: 1.2rem;
  }

  /*---------------------News & Topics*/

  /*-----------------第2階層*/
  .L2 .bgNami.top {
    padding-top: 3rem;
  }

  .L3 h2.docTit {
    width: 80%;
    margin: 0 auto;
    text-align: center;
    font-size: 2rem;
  }
  .headline a {
  }

  .parallax {
    height: 16rem;
  }

  article #Entry {
    border: 1px solid #f0f0f0;
    padding: 2rem;
  }
  article #Entry h2 {
    color: #333;
    background: url(../img/top/bg_nami.gif) repeat-y;
    text-align: left;
    padding: 0　1rem;
    font-size: 1.6rem;
    background-size: contain;
  }

  article #Entry h2 time {
    font-size: 1rem;
    right: 1rem;
    top: calc(50% - 0.5rem);
  }

  article #Entry h2 a {
    width: calc(100% - 11rem);
    padding: 1rem 0;
  }

  #L2 .topicpath {
    margin-bottom: 0;
    padding: 0.5rem 6rem;
  }
  #L2 .acms-container {
    padding-left: 6rem;
  }

  .headline .acms-label {
    position: absolute;
    top: 0.5rem;
    left: 13rem;
  }

  .company .headline .acms-label {
    top: 36%;
    left: -0.8rem;
  }

  .bottomArea div {
    display: table;
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 0 1.5rem 0 1rem;
  }
  .credit,
  .caution {
    display: table-cell;
    vertical-align: bottom;
    padding: 0;
  }
  .caution {
    width: 65%;
    text-align: left;
  }
  .credit {
    text-align: right;
    width: 35%;
  }

  /**/
}

/*タブレット横|デスクトップ---------------------*/

@media screen and (min-width: 981px), print {
  html {
    font-size: 87.5%;
  }

  article section {
    padding: 2rem 6rem;
  }

  header article h1 {
    padding-left: 6rem;
  }

  #btn_menu {
    top: -0.1rem;
    margin-right: 6rem;
  }

  .gNavi {
    width: calc(100% - 12rem);
  }

  /*.grid3{padding: 2rem 6rem;
}*/

  .btnBox {
    font-size: 1rem;
    padding: 0.5em 0;
    width: 10em;
  }

  .grid3 .box img {
    position: absolute;
    right: 20%;
    top: 2rem;
    height: 5rem;
    width: auto;
  }

  .grid3 .box:nth-of-type(1) img {
    right: 20%;
    top: 2.3rem;
  }

  .grid3 .box:nth-of-type(2) img {
    right: 13.5%;
    top: 2.3rem;
  }

  .grid3 .box:nth-of-type(3) img {
    right: 20%;
    top: 2.2rem;
    height: 5rem;
  }

  .bottomArea div {
    padding: 0 4rem 0 3.5rem;
  }

  #headerSNS {
    margin: 0.65rem 1.5rem 0 1rem;
  }
  /**/
}

/*デスクトップ---------------------*/

@media screen and (min-width: 1024px), print {
  html {
    font-size: 87.5%;
  }
  .page-title {
    font-size: 2rem;
  }

  /**/
}

/*デスクトップ---------------------*/

@media screen and (min-width: 1280px), print {
  html {
    font-size: 100%;
  }

  .bottomArea div {
    padding: 0 6rem 0 5.5em;
  }

  /**/
}

/*デスクトップ---------------------*/

@media screen and (min-width: 1600px), print {
  html {
    font-size: 110%;
  }

  #wrap #box1 {
    background-size: contain;
  }

  /**/
}

/*デスクトップ---------------------*/

@media screen and (min-width: 1920px), print {
  html {
    font-size: 120%;
  }

  #rightTab {
    right: calc(50% - 960px);
    top: 16rem;
  }

  .open .gNaviOuter {
    max-width: 1920px;
    margin: 0 calc(50% - 960px);
  }

  /**/
}
