@charset "utf-8";

/*==========================================
 font
===========================================*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Poppins:wght@200;600&display=swap');

html {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 62.5%;
  font-weight: 400;
  color: #79797B;
}
/* font-family: 'Poppins', sans-serif; */

/* link */
a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
}
a { outline: none; text-decoration: none; }
a:link    { color: #79797B; text-decoration: none; }
a:visited { color: #79797B; text-decoration: underline; }
a:hover   { color: #79797B; text-decoration: underline; }
a:active  { color: #79797B; text-decoration: underline; }



/*==========================================
 body
===========================================*/

html {
  background: #FFF;
  overflow: auto;
}
body {
  overflow: hidden;
	min-width: 1250px;
  -webkit-text-size-adjust: 100%;
}
@media only screen and (max-width: 1266px) {
  body {
    overflow: auto;
  	min-width: auto;
  }
}
@media only screen and (max-width: 767px) {
  body {
  	min-width: auto;
  }
}

/*==========================================
 clearfix
===========================================*/
.clearfix {
	zoom: 1;
}
.clearfix:before, .clearfix:after {
	content: "";
	display: table;
}
.clearfix:after {
	clear: both;
}

/*==========================================
 画像切替
===========================================*/
/* PC、スマートフォン表示分岐 */
.pcView {
  display: block;
}
.spView {
  display: none;
}
@media only screen and (max-width: 767px) {
  .pcView {
    display: none;
  }
  .spView {
    display: block;
  }
}

/*==========================================
 ヘッダーのスタイル
===========================================*/
header {
  position: fixed;
  z-index: 1000;
  top: 0;
  width: 100%;
  height: 120px;
  background-color: rgba(255, 255, 255, 1.0);
  transition: all 0.3s ease;
}
header.down {
  height: 80px;
}
header #header {
  position: relative;
  z-index: 30;
  width: 1250px;
  margin: 0 auto;
  padding: 0 25px;
  box-sizing: border-box;
}
header #headerLogoArea {
  position: absolute;
  left: 20px;
  top: 20px;
  transition: all 0.3s ease;
}
header.down #headerLogoArea {
  top: 13px;
}
header #headerLogoArea img {
  width: 124px;
  height: auto;
  transition: all 0.3s ease;
}
header.down #headerLogoArea img {
  width: 112px;
  height: auto;
}
header #header_SpIcon,
header #header_SpMenu {
  display: none;
}
@media only screen and (max-width: 767px) {
  header {
    position: fixed;
    top: 0;
    height: 54px;
  }
  header.down {
    height: 54px;
  }
  header #header {
    width: 100%;
  }
  header #headerLogoArea {
    left: 20px;
    top: 10px;
  }
  header #headerLogoArea img {
    width: 150px;
  }
  header.down #headerLogoArea img {
    width: 150px;
  }
  header #header_SpIcon {
    display: block;
    z-index: 60;
    position: absolute;
    right: 0;
    top: 0;
    width: 54px;
    height: 54px;
    padding: 15px 0 0;
    box-sizing: border-box;
    background-color: rgba(0, 0, 0, 0.5);
  }
  header #header_SpIcon .menu-trigger,
  header #header_SpIcon .menu-trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
  }
  header #header_SpIcon .menu-trigger {
    display: block;
    position: relative;
    width: 30px;
    height: 22px;
    margin: 0 auto;
  }
  header #header_SpIcon .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #FFF;
  }
  header #header_SpIcon .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  header #header_SpIcon .menu-trigger span:nth-of-type(2) {
    top: 10px;
  }
  header #header_SpIcon .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }

  header #header_SpIcon .menu-trigger.active span:nth-of-type(1) {
    transform: translateY(10px) rotate(-45deg);
  }
  header #header_SpIcon .menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
  }
  header #header_SpIcon .menu-trigger.active span:nth-of-type(3) {
    transform: translateY(-10px) rotate(45deg);
  }

  header #header_SpMenu {
    display: block;
    position: absolute;
    z-index: 50;
    left: -100vw;
    top: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.8);
    opacity: 0;
    overflow: scroll;
  }
  header #header_SpScroll {
    width: 100%;
    height: auto;
  }
  header #header_SpMenu #header_SpLink {
    margin:  90px 5% 10px;
  }
  header #header_SpMenu #header_SpLink  ul li {
    padding: 0 0 25px;
  }
  header #header_SpMenu #header_SpLink  ul li a {
    position: relative;
    font-family: 'Poppins', sans-serif;
    font-size: 3.4rem;
    font-weight: 100;
    color: #FFF;
  }
  header #header_SpMenu #header_SpLink  ul li a:hover {
    text-decoration: none;
  }
  header #header_SpMenu #header_SpLink  ul li:nth-child(6) a::after {
    position: absolute;
    right: -32px;
    top: 50%;
    width: 21px;
    height: 17px;
    margin: -9px 0 0;
    background-image: url("../img/icon09.svg");
    background-size: cover;
    content: "";
  }
  header #header_SpMenu #header_SpContact01 {
    position: relative;
    width: 90%;
    height: auto;
    margin: 0 5% 20px;
    padding: 20px 0 20px;
    border-radius: 8px;
    background-color: #00ABD3;
    text-align: center;
  }
  header #header_SpMenu #header_SpContact01::before {
    position: absolute;
    left: 50%;
    top: 23px;
    width: 15px;
    height: 20px;
    margin: 0 0 0 -70px;
    background-image: url("../img/icon05.svg");
    background-size: cover;
    content: "";
  }
  header #header_SpMenu #header_SpContact01 a:hover {
    text-decoration: none;
  }
  header #header_SpMenu #header_SpContact01 h3 {
    font-size: 2.2rem;
    font-weight: 100;
    color: #FFF;
  }
  header #header_SpMenu #header_SpContact01 p {
    padding: 15px 0 0;
    font-size: 1.4rem;
    font-weight: 700;
    color: #FFF;
    line-height: 1.4;
  }

  header #header_SpMenu #header_SpContact02 {
    position: relative;
    width: 90%;
    height: auto;
    margin: 0 5%;
    padding: 20px 0 20px;
    border-radius: 8px;
    background-color: #00ABD3;
    text-align: center;
  }
  header #header_SpMenu #header_SpContact02::before {
    position: absolute;
    left: 50%;
    top: 26px;
    width: 21px;
    height: 16px;
    margin: 0 0 0 -95px;
    background-image: url("../img/icon06.svg");
    background-size: cover;
    content: "";
  }
  header #header_SpMenu #header_SpContact02 a:hover {
    text-decoration: none;
  }
  header #header_SpMenu #header_SpContact02 h3 {
    font-size: 2.2rem;
    font-weight: 100;
    color: #FFF;
  }
  header #header_SpMenu #header_SpContact02 p {
    padding: 15px 0 0;
    font-size: 1.4rem;
    font-weight: 700;
    color: #FFF;
    line-height: 1.4;
  }

  header #header_SpMenu #header_SpSns {
    margin:  40px 5%;
  }
  header #header_SpMenu #header_SpSns ul {
    display: flex;
    width: 200px;
    margin: 0 auto;
    list-style-type: none;
  }
  header #header_SpMenu #header_SpSns ul li {
    width: 48px;
    margin: 0 28px 0 0;
  }
  header #header_SpMenu #header_SpSns ul li:nth-child(3) {
    margin: 0;
  }
  header #header_SpMenu #header_SpSns ul li img {
    width: 48px;
    height: 48px;
    ]
  }
}


/*グローバルナビゲーション ////////////////////////////////// */
header #headerGlobalArea {
  position: absolute;
  left: 220px;
  top: 60px;
  transition: all 0.3s ease;
}
header.down #headerGlobalArea {
  top: 34px;
}
header #headerGlobalArea ul {
  display: flex;
  width: 100%;
}
header #headerGlobalArea li {
  margin: 0 25px 0 0;
}
header #headerGlobalArea li:nth-child(4) {
  margin: 0 50px 0 0;
}
header #headerGlobalArea li:nth-child(5) {
  margin: 0;
}
header #headerGlobalArea li a {
  position: relative;
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  color: #323232;
  transition: all 0.3s;
}
header #headerGlobalArea li.active a {
  text-decoration: none;
  color: #00ABD3;
  font-weight: 700;
}
header #headerGlobalArea li a:hover {
  text-decoration: underline;
  color: #00ABD3;
  transition: all 0.3s;
}
header #headerGlobalArea li:nth-child(5) a::after {
  position: absolute;
  right: -20px;
  top: 50%;
  width: 14px;
  height: 11px;
  margin: -6px 0 0;
  background-image: url("../img/icon08.svg");
  content: "";
}
@media only screen and (max-width: 767px) {
  header #headerGlobalArea {
    display: none;
  }
}

header #headerSubArea {
  position: absolute;
  right: 25px;
  top: 5px;
  transition: all 0.3s ease;
}  
header.down #headerSubArea {
  top: 5px;
}
header #headerSubArea ul {
  display: flex;
}
header #headerSubArea ul li {
  margin: 0 0 0 22px;
}
header #headerSubArea ul li:nth-child(1) {
  margin: 0 0 0 27px;
}
header #headerSubArea li a {
  position: relative;
  display: block;
  padding: 5px 0;
  font-size: 1.4rem;
  font-weight: 400;
  color: #323232;
  transition: all 0.3s;
}
body#top header #headerSubArea li a {
  color: #FFF;
}
header #headerSubArea li:nth-child(2) a::before {
  position: absolute;
  left: -11px;
  top: -5px;
  width: 1px;
  height: 24px;
  background-color: #323232;
  content: "";
}
body#top header #headerSubArea li:nth-child(2) a::before {
  background-color: #FFF;
}
header #headerSubArea li a:hover {
  text-decoration: none;
  color: #00ABD3;
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  header #headerSubArea {
    display: none;
  }
}

header #headerContactArea {
  position: absolute;
  right: 177px;
  top: 61px;
  transition: all 0.3s ease;
}
header.down #headerContactArea {
  top: 35px;
}
header #headerContactArea ul {
  display: flex;
}
header #headerContactArea ul li {
  margin: 0 0 0 20px;
}
header #headerContactArea li a {
  position: relative;
  padding: 5px 15px 5px 28px;
  background-color: #00ABD3;
  border-radius: 3px;
  font-size: 1.4rem;
  font-weight: 700;
  color: #FFF;
  transition: all 0.3s ease;
}
header #headerContactArea li:nth-child(1) a::before {
  position: absolute;
  left: 10px;
  top: 7px;
  width: 12px;
  height: 16px;
  background-image: url("../img/icon05.svg");
  background-size: cover;
  content: "";
}
header #headerContactArea li:nth-child(2) a::before {
  position: absolute;
  left: 8px;
  top: 10px;
  width: 15px;
  height: 11px;
  background-image: url("../img/icon06.svg");
  background-size: cover;
  content: "";
}
header #headerContactArea li a:hover {
  text-decoration: none;
  background-color: #00B4D8;
}
@media only screen and (max-width: 767px) {
  header #headerContactArea {
    display: none;
  }
}
/*==========================================
 フッターのスタイル
===========================================*/
#footerContact {
  width: 816px;
  height: 162px;
  margin: 100px auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#footerContact .column {
  width: 388px;
  height: 162px;
}
#footerContact .column a {
  display: block;
  position: relative;
  width: 388px;
  height: 162px;
  padding: 50px 0 0;
  box-sizing: border-box;
  border-radius: 8px;
  background-color: #00ABD3;
  text-align: center;
  box-shadow: 3px 3px 6px 3px rgba(0, 0, 0, 0.1);
  transition: all 0.3s;
}
#footerContact .column a:hover {
  background-color: #00B4D8;
  opacity: 0.7;
  text-decoration: none;
  transition: all 0.3s;
}
#footerContact .column:nth-child(1) a::before {
  position: absolute;
  left: 120px;
  top: 52px;
  width: 18px;
  height: 24px;
  background-image: url("../img/icon05.svg");
  background-size: cover;
  content: "";
}
#footerContact .column:nth-child(2) a::before {
  position: absolute;
  left: 89px;
  top: 56px;
  width: 25px;
  height: 18px;
  background-image: url("../img/icon06.svg");
  background-size: cover;
  content: "";
}
#footerContact .column h3 {
  padding: 0 0 0 20px;
  font-size: 2.6rem;
  font-weight: 700;
  color: #FFF;
}
#footerContact .column p {
  padding: 20px 0 0;
  font-size: 1.6rem;
  font-weight: 700;
  color: #FFF;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  #footerContact {
    width: calc(100% - 40px);
    height: auto;
    margin: 80px auto 0;
  }
  #footerContact .column {
    width: 100%;
    height: 100px;
    margin: 0 0 20px;
  }
  #footerContact .column a {
    width: 100%;
    height: 100px;
    padding: 25px 0 0;
  }
  #footerContact .column:nth-child(1) a::before {
    left: 50%;
    top: 27px;
    width: 16px;
    height: 21px;
    margin: 0 0 0 -61px;
  }
  #footerContact .column:nth-child(2) a::before {
    left: 50%;
    top: 31px;
    width: 20px;
    height: 15px;
    margin: 0 0 0 -85px;
  }
  #footerContact .column h3 {
    font-size: 2.2rem;
  }
  #footerContact .column p {
    padding: 15px 0 0;
    font-size: 1.4rem;
  }
}
footer {
  width: 100%;
  margin: 100px 0 0;
  padding: 90px 25px 0;
  box-sizing: border-box;
  background-color: #949495;
}
footer #footerBody {
  position: relative;
  width: 1200px;
  margin: 0 auto
}
footer #footerBody h2 img {
  position: absolute;
  left: 0;
  top: 0;
  width: 192px;
  height: auto;
  transition: all 0.3s;
}
footer #footerBody h2 img:nth-child(1) {
  opacity: 0;
}
footer #footerBody h2:hover img:nth-child(1) {
  opacity: 1;
}
footer #footerBody h2:hover img:nth-child(2) {
  opacity: 0;
}

footer #footerBody #footerSns {
  position: absolute;
  right: 0;
  top: 0;
}
footer #footerBody #footerSns ul {
  display: flex;
  list-style-type: none;
}
footer #footerBody #footerSns ul li {
  position: relative;
  width: 48px;
  height: 48px;
  margin: 0 0 0 28px;
}
footer #footerBody #footerSns ul li:nth-child(1) {
  margin: 0;
}
footer #footerBody #footerSns ul li img {
  position: absolute;
  left: 0;
  top: 0;
  width: 48px;
  height: 48px;
  transition: all 0.3s;
}

footer #footerBody #footerLink {
  display: flex;
  padding: 120px 0 0;
}
footer #footerBody #footerLink .column:nth-child(1) {
  width: 284px;
}
footer #footerBody #footerLink .column:nth-child(2) {
  width: 333px;
}
footer #footerBody #footerLink .column:nth-child(3) {
  width: 256px;
}
footer #footerBody #footerLink .column:nth-child(4) {
  width: 225px;
}
footer #footerBody #footerLink .column:nth-child(5) {
  width: 102px;
}
footer #footerBody #footerLink .column ul {
  list-style-type: none;
}
footer #footerBody #footerLink .column ul li {
  padding: 0 0 22px;
}
footer #footerBody #footerLink .column ul li a {
  position: relative;
  font-size: 1.6rem;
  line-height: 1.4;
  color: #FFF;
}
footer #footerBody #footerLink .column ul li:nth-child(1) {
  padding: 0 0 50px;
}
footer #footerBody #footerLink .column ul li:nth-child(1) a {
  font-size: 1.8rem;
  font-weight: 400;
}
footer #footerBody #footerLink .column:nth-child(5) {
  padding: 75px 0 0 0;
}
footer #footerBody #footerLink .column:nth-child(5) ul li:nth-child(1) {
  padding: 0 0 22px;
}
footer #footerBody #footerLink .column:nth-child(5) ul li:nth-child(1) a {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1.6rem;
}
footer #footerBody #footerLink .column ul li a:hover {
  text-decoration: none;
  opacity: 0.9999;
}
footer #footerBody #footerLink .column ul li a:hover::before {
  position: absolute;
  z-index: -1;
  left: -15px;
  top: -6px;
  width: 100%;
  height: 38px;
  padding: 0 30px 0 0;
  box-sizing: content-box;
  background-color: #787878;
  content: "";
}
footer #footerBody #footerLink .column ul li:nth-child(1) a:hover::before {
  top: -8px;
}
footer #footerBody #footerLink .column:nth-child(5) ul li:nth-child(1) a:hover::before {
  top: -6px;
}
footer #footerBody #footerLink .column ul li.typ02 a:hover::before {
  height: 60px;
}

footer #footerBody #footerUtility {
  width: 280px;
  margin: 0 auto;
  padding: 65px 0 0;
}
footer #footerBody #footerUtility ul {
  display: flex;
  justify-content: space-between;
  list-style-type: none;
}
footer #footerBody #footerUtility ul li a {
  font-size: 1.3rem;
  font-weight: 500;
  color: #FFF;
}

footer #footerBody small {
  display: block;
  padding: 40px 0 100px;
  font-size: 1.8rem;
  color: #FFF;
  text-align: center;
}
@media only screen and (max-width: 1266px) {
  footer {
    width: 100%;
    margin: 100px 0 0;
    padding: 90px 25px 0;
    box-sizing: border-box;
    background-color: #949495;
  }
  footer #footerBody {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  footer {
    width: 100%;
    margin: 50px 0 0;
    padding: 40px 0 0 !important;
  }
  footer #footerBody {
    width: 100%;
  }
  footer #footerBody h2  {
    display: none;
  }

  footer #footerBody #footerSns {
    position: static;
    width: 100%;
  }
  footer #footerBody #footerSns ul {
    display: flex;
    width: 200px;
    margin: 0 auto;
  }

  footer #footerBody #footerLink {
    display: none;
  }

  footer #footerBody #footerUtility {
    width: 260px;
    padding: 50px 0 0;
  }
  footer #footerBody #footerUtility ul li a {
    font-size: 1.2rem;
  }

  footer #footerBody small {
    padding: 40px 0 50px;
    font-size: 1.2rem;
  }
}

/*==========================================
 ページアップ
===========================================*/
footer #footerBody #pageup {
  position : absolute;
  top : -120px;
  right : 0;
}
footer #footerBody #pageup a {
  position: relative;
  display: block;
  width: 60px;
  height: 60px;
}
footer #footerBody #pageup a img {
  position: absolute;
  left: 0;
  top: 0;
  width: 60px;
  height: 60px;
  transition: all 0.3s;
}
footer #footerBody #pageup a img:nth-child(1) {
  opacity: 0;
}
footer #footerBody #pageup a:hover img:nth-child(1) {
  opacity: 1;
}
footer #footerBody #pageup a:hover img:nth-child(2) {
  opacity: 0;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  footer #footerBody #pageup {
    display: none;
  }
}

/*==========================================
 コンテンツのスタイル 共通
===========================================*/
#mainContents {
  min-height: 500px;
  margin-top: 120px;
}
#mainContents.pt_0 {
  margin-top: 0;
}
#mainContents section.w_full {
  width: 100%;
  margin: 0;
}
#mainContents section.w_1200 {
  width: 1200px;
  margin: 0 auto;
}
#mainContents section.bc_G01 {
  background-color: #949495;
}
#mainContents section.bc_G02 {
  background-color: #f4f4f4;
}
#mainContents section.bc_G03 {
  background-color: #F4F4F0;
}
#mainContents section.bt_white {
  border-top: 1px solid #FFF;
}

@media only screen and (max-width: 767px) {
  #mainContents {
    min-height: 1500px;
    margin-top: 54px;
  }
  #mainContents section.w_1200 {
    width: 90%;
    margin: 0 5%;
  }
  #mainContents section.w_5no {
    width: 100%;
    margin: 0;
  }
}

/* 余白調整  /////////////////////////////*/
#mainContents .pt_10 { padding-top: 10px; }
#mainContents .pt_20 { padding-top: 20px; }
#mainContents .pt_30 { padding-top: 30px; }
#mainContents .pt_40 { padding-top: 40px; }
#mainContents .pt_50 { padding-top: 50px; }
#mainContents .pt_60 { padding-top: 60px; }
#mainContents .pt_80 { padding-top: 80px; }
#mainContents .pt_100 { padding-top: 100px; }
#mainContents .pt_130 { padding-top: 130px; }
#mainContents .pt_150 { padding-top: 150px; }
#mainContents .pt_200 { padding-top: 200px; }

#mainContents .pb_10 { padding-bottom: 10px; }
#mainContents .pb_20 { padding-bottom: 20px; }
#mainContents .pb_30 { padding-bottom: 30px; }
#mainContents .pb_40 { padding-bottom: 40px; }
#mainContents .pb_50 { padding-bottom: 50px; }
#mainContents .pb_60 { padding-bottom: 60px; }
#mainContents .pb_80 { padding-bottom: 80px; }
#mainContents .pb_100 { padding-bottom: 100px; }
#mainContents .pb_130 { padding-bottom: 130px; }
#mainContents .pb_150 { padding-bottom: 150px; }

#mainContents .mt_20 { margin-top: 20px; }
#mainContents .mt_30 { margin-top: 30px; }
#mainContents .mt_40 { margin-top: 40px; }
#mainContents .mt_50 { margin-top: 50px; }

@media only screen and (max-width: 767px) {
  /* #mainContents .pt_10 { padding-top: 5px; }
  #mainContents .pt_20 { padding-top: 10px; }
  #mainContents .pt_30 { padding-top: 15px; }
  #mainContents .pt_40 { padding-top: 20px; } */
  #mainContents .pt_50 { padding-top: 25px; }
  #mainContents .pt_60 { padding-top: 30px; }
  #mainContents .pt_80 { padding-top: 40px; }
  #mainContents .pt_100 { padding-top: 50px; }
  #mainContents .pt_130 { padding-top: 65px; }
  #mainContents .pt_150 { padding-top: 75px; }
  #mainContents .pt_200 { padding-top: 100px; }

  /* #mainContents .pb_10 { padding-bottom: 5px; }
  #mainContents .pb_20 { padding-bottom: 10px; }
  #mainContents .pb_30 { padding-bottom: 15px; }
  #mainContents .pb_40 { padding-bottom: 20px; } */
  #mainContents .pb_50 { padding-bottom: 25px; }
  #mainContents .pb_60 { padding-bottom: 30px; }
  #mainContents .pb_80 { padding-bottom: 40px; }
  #mainContents .pb_100 { padding-bottom: 50px; }
  #mainContents .pb_130 { padding-bottom: 65px; }
  #mainContents .pb_150 { padding-bottom: 750px; }

  #mainContents .mt_20 { margin-top: 10px; }
  #mainContents .mt_30 { margin-top: 15px; }
  #mainContents .mt_40 { margin-top: 20px; }
  #mainContents .mt_50 { margin-top: 25px; }

  #mainContents .plr_5p { padding-left: 5%; padding-right: 5%; }
}

/* layout  /////////////////////////////*/
#mainContents .t_center { text-align: center;}


/*==========================================
 共通スクロールフェード
===========================================*/
.fade_off {
  opacity: 0;
  transform: translateY(70px);
  transition: all 1.8s;
}
.fade_on {
  opacity: 1;
  transform: translateY(0px);
}
@media only screen and (max-width: 767px) {
  /* .fade_off {
    opacity: 1;
  } */
}

/*==========================================
 共通 P
===========================================*/
#mainContents p.f_13 { font-size: 1.3rem; }
#mainContents p.f_14 { font-size: 1.4rem; }
#mainContents p.f_15 { font-size: 1.5rem; }
#mainContents p.f_16 { font-size: 1.6rem; }
#mainContents p.f_18 { font-size: 1.8rem; }
#mainContents p.f_20 { font-size: 2.0rem; }
#mainContents p.f_22 { font-size: 2.2rem; }
#mainContents p.f_24 { font-size: 2.4rem; }
#mainContents p.f_26 { font-size: 2.6rem; }

#mainContents p.fl_14 { line-height: 1.4; }
#mainContents p.fl_16 { line-height: 1.6; }
#mainContents p.fl_18 { line-height: 1.8; }

#mainContents p.center { text-align: center; }
#mainContents p.right { text-align: right; }

#mainContents p.fc_red { color: #B41E1E; }
#mainContents p.fc_white { color: #FFF; }


@media only screen and (max-width: 767px) {
  #mainContents p.f_sp_14 { font-size: 1.4rem; }
}

/*==========================================
 共通 img
===========================================*/
#mainContents img.img_full {
  width: 100%;
  height: auto;
}

/*==========================================
 共通リンク
===========================================*/
#mainContents .linkTyp01 a {
  position: relative;
  display: block;
  width: 235px;
  height: 60px;
  margin: 0 auto;
  padding: 19px 10px 0 0px;
  box-sizing: border-box;
  border: 1px solid #484848;
  background-color: #484848;
  font-size: 2.0rem;
  color: #FFF;
  text-align: center;
  transition: all 0.3s;
}
#mainContents .linkTyp01 a.w_360 {
  width: 360px;
}
#mainContents .linkTyp01 a.w_390 {
  width: 390px;
}
#mainContents .linkTyp01 a.w_450 {
  width: 450px;
}
#mainContents .linkTyp01 a::after {
  position: absolute;
  right: 15px;
  top: 15px;
  width: 40px;
  height: 30px;
  background-image: url("../img/icon03.svg");
  background-size: cover;
  content: "";
}
#mainContents .linkTyp01 a:hover {
  text-decoration: none;
  background-color: #00ABD3;
  border: 1px solid #00ABD3;
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  #mainContents .linkTyp01 a.w_390 {
    width: 260px;
  }
  #mainContents .linkTyp01 a.w_450 {
    width: 240px;
  }
}

/*==========================================
 共通レイアウト
===========================================*/
#mainContents .layoutTyp01 {
  position: relative;
  width: 600px;
  margin: 0 auto;
  padding: 200px 0 0;
}
#mainContents .layoutTyp01::before {
  position: absolute;
  left: -275px;
  top: -11px;
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 10.0rem;
  color: #F4F4F0;
  content: "Who we are";
}
#mainContents .layoutTyp01 h1 {
  padding: 0 0 20px;
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 3.8rem;
  color: #000000;
}
#mainContents .layoutTyp01 p {
  padding: 0 0 30px;
  font-weight: 700;
  font-size: 2.2rem;
  color: #000000;
  line-height: 2.0;
}
@media only screen and (max-width: 767px) {
  #mainContents .layoutTyp01 {
    width: calc(100% - 40px);
    margin: 0 auto;
    padding: 100px 0 0;
  }
  #mainContents .layoutTyp01::before {
    left: -20px;
    top: -5px;
    font-size: 5.8rem;
  }
  #mainContents .layoutTyp01 h1 {
    padding: 0 0 50px;
    font-size: 3.6rem;
    line-height: 1.2;
  }
  #mainContents .layoutTyp01 p {
    padding: 0 0 30px;
    font-size: 2.0rem;
  }
}


#mainContents .layoutTyp02 {
  position: relative;
  width: 600px;
  margin: 0 auto;
  padding: 200px 0 0;
}
#mainContents .layoutTyp02::before {
  position: absolute;
  left: -275px;
  top: -11px;
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 10.0rem;
  color: #FFF;
  content: "What we do";
}
#mainContents .layoutTyp02 h2 {
  padding: 0 0 70px;
  font-weight: 600;
  font-size: 3.4rem;
  color: #000000;
}
#mainContents .layoutTyp02 p {
  padding: 0 0 30px;
  font-weight: 700;
  font-size: 2.0rem;
  color: #000000;
  line-height: 2.0;
}
@media only screen and (max-width: 767px) {
  #mainContents .layoutTyp02 {
    width: calc(100% - 40px);
    margin: 0 auto;
    padding: 130px 0 0;
  }
  #mainContents .layoutTyp02::before {
    left: -20px;
    top: -5px;
    font-size: 5.8rem;
  }
  #mainContents .layoutTyp02 h2 {
    padding: 0 0 50px;
    font-size: 2.7rem;
    line-height: 1.2;
  }
  #mainContents .layoutTyp02 p {
    padding: 0 0 30px;
    font-size: 2.0rem;
  }
}


#mainContents .layoutTyp03 {
  position: relative;
  width: 1146px;
  margin: 0 auto;
}
#mainContents .layoutTyp03 h2 {
  font-size: 1.4rem;
  color: #000;
  font-weight: 400;
}
#mainContents .layoutTyp03 h3 {
  padding: 15px 0 0;
  font-family: 'Poppins', sans-serif;
  font-size: 3.8rem;
  color: #000;
}
#mainContents .layoutTyp03 .columnBox {
  width: 816px;
  margin: 0 auto;
  padding: 50px 0 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#mainContents .layoutTyp03 .columnBox .column {
  width: 388px;
  height: 135px;
  margin: 0 0 40px;
  text-align: center;
}
#mainContents .layoutTyp03 .columnBox .column:hover {
  opacity: 0.8;
}
#mainContents .layoutTyp03 .columnBox .column a {
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid #C7C7BB;
  border-radius: 8px;
  box-sizing: border-box;
  box-shadow: 3px 3px 6px 3px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}
#mainContents .layoutTyp03 .columnBox .column a:hover {
  text-decoration: none;
  border: 1px solid #00ABD3;
}
#mainContents .layoutTyp03 .columnBox .column h4 {
  padding: 32px 0 0;
  font-size: 2.0rem;
  font-weight: 700;
  color: #000;
  transition: all 0.3s ease;
}
#mainContents .layoutTyp03 .columnBox .column a:hover h4 {
  color: #00ABD3;
}
#mainContents .layoutTyp03 .columnBox .column p {
  padding: 15px 0 0;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.6;
  color: #000;
}
@media only screen and (max-width: 1266px) {
#mainContents .layoutTyp03 {
    width: calc(100% - 40px);
    margin: 0 auto;
  }
}
@media only screen and (max-width: 767px) {
#mainContents .layoutTyp03 {
    width: calc(100% - 40px);
    margin: 0 auto;
  }
  #mainContents .layoutTyp03 h3 {
    padding: 15px 0 0;
    font-size: 3.6rem;
  }
  #mainContents .layoutTyp03 .columnBox {
    width: 100%;
    padding: 40px 0 0;
  }
  #mainContents .layoutTyp03 .columnBox .column {
    width: 100%;
    height: 100px;
    margin: 0 0 25px;
  }
  #mainContents .layoutTyp03 .columnBox .column h4 {
    padding: 20px 0 0;
    font-size: 1.6rem;
  }
  #mainContents .layoutTyp03 .columnBox .column p {
    padding: 10px 0 0;
    font-size: 1.2rem;
  }
}





#mainContents .layoutTyp04 {
  position: relative;
  width: 1146px;
  margin: 0 auto;
}
#mainContents .layoutTyp04 h2 {
  font-size: 1.4rem;
  color: #000;
  font-weight: 400;
}
#mainContents .layoutTyp04 h3 {
  padding: 15px 0 0;
  font-family: 'Poppins', sans-serif;
  font-size: 3.8rem;
  color: #000;
}
#mainContents .layoutTyp04 .layoutTyp04_Inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding: 50px 0 0;
}
#mainContents .layoutTyp04 .layoutTyp04_Inner .column {
  position: relative;
  width: 346px;
  height: 322px;
  margin: 0 54px 0 0;
  border-radius: 8px;
  background-color: #FFF;
  box-shadow: 3px 3px 6px 3px rgba(0, 0, 0, 0.1);
}
#mainContents .layoutTyp04 .layoutTyp04_Inner .column:nth-child(3n) {
  margin: 0;
}
#mainContents .layoutTyp04 .layoutTyp04_Inner .column a {
  display: block;
}
#mainContents .layoutTyp04 .layoutTyp04_Inner .column a:hover {
  text-decoration: none;
}
#mainContents .layoutTyp04 .layoutTyp04_Inner .column img {
  width: 100%;
  height: 178px;
  border-radius: 8px 8px 0 0;
  object-fit: cover;
}
#mainContents .layoutTyp04 .layoutTyp04_Inner .column h4 {
  padding: 30px 30px 0;
  font-size: 1.4rem;
  color: #555555;
}
#mainContents .layoutTyp04 .layoutTyp04_Inner .column p {
  padding: 15px 30px 0;
  font-size: 1.6rem;
  color: #323232;
  line-height: 1.8;
}
@media only screen and (max-width: 1266px) {
  #mainContents .layoutTyp04 {
    width: 100%;
    padding: 0 25px;
    box-sizing: border-box;
  }
  #mainContents .layoutTyp04 .layoutTyp04_Inner .column {
    width: 30%;
    margin: 0 5% 0 0;
  }
  #mainContents .layoutTyp04 .layoutTyp04_Inner .column h4 {
    padding: 30px 30px 10px;
  }
}
@media only screen and (max-width: 767px) {
  #mainContents .layoutTyp04 .layoutTyp04_Inner {
    padding: 40px 0 0;
  }
  #mainContents .layoutTyp04 .layoutTyp04_Inner .column {
    float: none;
    width: 100%;
    height: auto;
    margin: 0 0 40px;
  }
  #mainContents .layoutTyp04 .layoutTyp04_Inner .column:nth-child(3n) {
    margin: 0;
  }
  #mainContents .layoutTyp04 .layoutTyp04_Inner .column p {
    padding: 0 30px 30px;
  }
}


#mainContents .layoutTyp05 {
  position: relative;
  width: 1146px;
  margin: 0 auto;
}
#mainContents .layoutTyp05 h2 {
  font-size: 1.4rem;
  color: #000;
  font-weight: 400;
}
#mainContents .layoutTyp05 h3 {
  padding: 15px 0 0;
  font-family: 'Poppins', sans-serif;
  font-size: 3.8rem;
  color: #000;
}


#mainContents .layoutTyp06 {
  width: 1146px;
  margin: 0 auto;
}
#mainContents .layoutTyp06 h2 {
  font-size: 1.4rem;
  color: #000;
  font-weight: 400;
}
#mainContents .layoutTyp06 h3 {
  padding: 15px 0 0;
  font-family: 'Poppins', sans-serif;
  font-size: 3.8rem;
  color: #000;
}
#mainContents .layoutTyp06 .layoutTyp06_Inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding: 60px 0 0;
}
#mainContents .layoutTyp06 .layoutTyp06_Inner .column {
  position: relative;
  width: 346px;
  height: 322px;
  margin: 0 54px 65px 0;
  border-radius: 8px;
  background-color: #FFF;
  box-shadow: 3px 3px 6px 3px rgba(0,0,0,0.1);
}
#mainContents .layoutTyp06 .layoutTyp06_Inner .column:nth-child(3n) {
  margin: 0 0 80px 0;
}
#mainContents .layoutTyp06 .layoutTyp06_Inner .column a {
  display: block;
}
#mainContents .layoutTyp06 .layoutTyp06_Inner .column a:hover {
  text-decoration: none;
}
#mainContents .layoutTyp06 .layoutTyp06_Inner .column img {
  width: 100%;
  height: 178px;
  border-radius: 8px 8px 0 0;
  object-fit: cover;
}
#mainContents .layoutTyp06 .layoutTyp06_Inner .column p {
  padding: 30px 30px 0;
  font-size: 1.6rem;
  color: #323232;
  line-height: 1.8;
}
@media only screen and (max-width: 1266px) {
  #mainContents .layoutTyp06 {
    width: 100%;
    padding: 0 25px;
    box-sizing: border-box;
  }
  #mainContents .layoutTyp06 .layoutTyp06_Inner .column {
    width: 30%;
    margin: 0 5% 80px 0;
  }
  #mainContents .layoutTyp06 .layoutTyp06_Inner .column:nth-child(3n) {
    margin: 0 0 80px 0;
  }
}
@media only screen and (max-width: 767px) {
  #mainContents .layoutTyp06 {
    width: calc(100% - 40px) !important;
    padding: 0;
  }
  #mainContents .layoutTyp06 h3 {
    padding: 15px 0 0;
    font-size: 3.6rem;
  }
  #mainContents .layoutTyp06 .layoutTyp06_Inner {
    padding: 40px 0 0;
  }
  #mainContents .layoutTyp06 .layoutTyp06_Inner .column {
    float: none;
    width: 100%;
    height: auto;
    margin: 0 0 40px 0;
  }
  #mainContents .layoutTyp06 .layoutTyp06_Inner .column:nth-child(3n) {
    margin: 0 0 40px;
  }
  #mainContents .layoutTyp06 .layoutTyp06_Inner .column p {
    padding: 20px 30px 30px;
  }
}



#mainContents .layoutTyp07 {
  width: 1200px;
  margin: 0 auto;
}
#mainContents .layoutTyp07 h2 {
  font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: left;
    letter-spacing: 0;
}
#mainContents .layoutTyp07 h3 {
  padding: 15px 0 0;
  font-family: 'Poppins', sans-serif;
  font-size: 3.8rem;
  color: #000;
}
#mainContents .layoutTyp07 .layoutTyp07_Inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding: 30px 0 0;
}
#mainContents .layoutTyp07 .layoutTyp07_Inner .column {
  position: relative;
  width: 346px;
  height: 467px;
  margin: 0 54px 65px 0;
  border-radius: 8px;
  background-color: #FFF;
  box-shadow: 3px 3px 6px 3px rgba(0, 0, 0, 0.1);
}
#mainContents .layoutTyp07 .layoutTyp07_Inner .column:nth-child(3n) {
  margin: 0 0 80px 0;
}
#mainContents .layoutTyp07 .layoutTyp07_Inner .column a {
  display: block;
}
#mainContents .layoutTyp07 .layoutTyp07_Inner .column a:hover {
  text-decoration: none;
}
#mainContents .layoutTyp07 .layoutTyp07_Inner .column img {
  width: 100%;
  height: auto;
  border-radius: 8px 8px 0 0;
}
#mainContents .layoutTyp07 .layoutTyp07_Inner .column h3 {
  padding: 30px 30px 20px;
  font-size: 1.6rem;
  font-weight: 700;
  color: #323232;
  line-height: 1.8;
}
#mainContents .layoutTyp07 .layoutTyp07_Inner .column p {
  padding: 0 30px;
  font-size: 1.6rem;
  color: #323232;
  line-height: 1.8;
}
@media only screen and (max-width: 1266px) {
  #mainContents .layoutTyp07 {
    width: 100%;
    padding: 0 25px;
    box-sizing: border-box;
  }
  #mainContents .layoutTyp07 .layoutTyp07_Inner .column {
    width: 30%;
    margin: 0 5% 80px 0;
  }
  #mainContents .layoutTyp07 .layoutTyp07_Inner .column:nth-child(3n) {
    margin: 0 0 80px 0;
  }
}
@media only screen and (max-width: 767px) {
  #mainContents .layoutTyp07 {
    width: calc(100% - 40px) !important;
    padding: 0;
  }
  #mainContents .layoutTyp07 h2 {
    font-size: 2.0rem;
  }
  #mainContents .layoutTyp07 h2 span {
    font-size: 1.8rem;
  }
  #mainContents .layoutTyp07 .layoutTyp07_Inner {
    padding: 20px 0 0;
  }
  #mainContents .layoutTyp07 .layoutTyp07_Inner .column {
    float: none;
    width: 100%;
    height: auto;
    margin: 0 0 40px 0;
  }
  #mainContents .layoutTyp07 .layoutTyp07_Inner .column:nth-child(3n) {
    margin: 0 0 40px;
  }
  #mainContents .layoutTyp07 .layoutTyp07_Inner .column p {
    padding: 0 30px 30px;
  }
}
#mainContents .layoutTyp07_Inner #brandingMv {
  opacity: 0;
}
#mainContents .layoutTyp07_Inner .bx-wrapper {
  box-shadow: none !important;
  border: none !important;
  background: none !important;
}
#mainContents .layoutTyp07_Inner .bx-wrapper .bx-viewport {
  width: 101% !important;
  height: 490px !important;
}
@media only screen and (max-width: 767px) {
  #mainContents .layoutTyp07_Inner #brandingMv {
    opacity: 1;
  }
}




#mainContents .layoutTyp08 {
  position: relative;
  width: 1200px;
  margin: 60px auto 0;
  padding: 100px 0;
  background-color: #FFF;
  border-radius: 8px;
  box-shadow: 3px 3px 6px 3px rgba(0,0,0,0.1);
  color: #323232;
}
#mainContents .layoutTyp08_Title {
  position: relative;
  width: 825px;
  margin: 0 auto;
}
#mainContents .layoutTyp08_Title h1 {
  font-size: 3.0rem;
  font-weight: 700;
  line-height: 1.4;
}
#mainContents .layoutTyp08_Title p {
  position: absolute;
  right: 0;
  top: -40px;
  font-size: 1.4rem;
}
#mainContents .layoutTyp08 .layoutTyp08_Inner {
  width: 660px;
  margin: 0 auto;
  padding: 100px 0 0;
}
#mainContents .layoutTyp08 .layoutTyp08_Inner blockquote {
  position: relative;
  margin: 30px 0 30px;
  padding: 35px 35px 15px;
  border-left: 5px solid #e6e6e6;
  box-sizing: border-box;
  background-color: #f5f5f5;
}
#mainContents .layoutTyp08 .layoutTyp08_Sns {
  position: fixed;
  right: 15px;
  top: 120px;
}
#mainContents .layoutTyp08 .layoutTyp08_Sns.up {
  position: fixed;
  right: 15px;
  top: 120px;
}
#mainContents .layoutTyp08 .layoutTyp08_Sns a {
  display: block;
}
#mainContents .layoutTyp08 .layoutTyp08_Sns a img {
  width: 48px;
  height: 48px;
}

#mainContents .layoutTyp08 .layoutTyp08_bottom {
  position: relative;
  width: 660px;
  margin: 100px auto 0;
}
#mainContents .layoutTyp08 .layoutTyp08_bottom h2 {
  font-size: 1.8rem;
}
#mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_link01 {
  position: absolute;
  right: 0;
  top: 0;
}
#mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_link01 a {
  font-size: 1.8rem;
  text-decoration: underline;
  color: #323232;
}
#mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_link01 a:hover {
  opacity: 0.7;
}
#mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_List {
  padding: 30px 0 0;
}
#mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_List ul li {
  padding: 10px 0;
  border-bottom: 1px dotted #949495;
}
#mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_List ul li:last-child {
  padding: 10px 0 0;
  border-bottom: none;
}
#mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_List ul li a {
  font-size: 1.8rem;
  line-height: 1.8;
  color: #323232;
}
#mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_List ul li a br {
display: none;
}
@media only screen and (max-width: 767px) {
  #mainContents .layoutTyp08 {
    width: calc(100% - 40px) !important;
    margin: 40px auto 0;
    padding: 50px 0;
  }
  #mainContents .layoutTyp08_Title {
    width: 90%;
  }
  #mainContents .layoutTyp08_Title h1 {
    font-size: 2.4rem;
  }
  #mainContents .layoutTyp08_Title p {
    top: -25px;
    font-size: 1.3rem;
  }
  #mainContents .layoutTyp08 .layoutTyp08_Inner {
    width: 90%;
    padding: 50px 0;
  }
  #mainContents .layoutTyp08 .layoutTyp08_Sns {
    position: static;
    display: flex;
    justify-content: center;
  }

  #mainContents .layoutTyp08 .layoutTyp08_bottom {
    width: 90%;
    margin: 50px auto;
  }
  #mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_List {
    padding: 30px 0 0;
  }
  #mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_List ul li {
    padding: 0 0 15px;
  }
  #mainContents .layoutTyp08 .layoutTyp08_bottom .layoutTyp08_List ul li a {
    font-size: 1.4rem;
  }
}



#mainContents .layoutTyp09 {
  width: 1200px;
  margin: 0 auto;
}
#mainContents .layoutTyp09 ul {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
#mainContents .layoutTyp09 ul li {
  margin: 0 10px 10px 0;
}
#mainContents .layoutTyp09 ul li a {
  display: block;
  padding: 8px 16px 10px;
  border: 1px solid #949495;
  border-radius: 4px;
  background-color: #FFF;
  font-size: 1.7rem;
  text-align: center;
}
#mainContents .layoutTyp09 ul li a:hover {
  text-decoration: none;
  opacity: 0.7;
}
#mainContents .layoutTyp09 ul li.active a {
  background-color: #949495;
  color: #FFF;
}
@media only screen and (max-width: 767px) {
  #mainContents .layoutTyp09 {
    width: calc(100% - 20px);
    margin: 0 0 0 20px;
    overflow: scroll;
  }
  #mainContents .layoutTyp09 ul {
    width: 3500px;
    flex-wrap: nowrap;
  }
  #mainContents .layoutTyp09 ul li {
    margin: 0 10px 10px 0;
  }
  #mainContents .layoutTyp09 ul li a {
    display: block;
    padding: 5px 10px;
    border: 1px solid #949495;
    border-radius: 4px;
    font-size: 1.4rem;
    text-align: center;
  }
  #mainContents .layoutTyp09 ul li a:hover {
    text-decoration: none;
    opacity: 0.7;
  }
  #mainContents .layoutTyp09 ul li.active a {
    background-color: #949495;
    color: #FFF;
  }
}


#mainContents .layoutTyp10 {
  width: 1200px;
  margin: 0 auto;
}
#mainContents .layoutTyp10 h2 {
  font-size: 1.4rem;
  color: #000;
  font-weight: 400;
}
#mainContents .layoutTyp10 h3 {
  padding: 15px 0 0;
  font-family: 'Poppins', sans-serif;
  font-size: 3.8rem;
  color: #000;
}
#mainContents .layoutTyp10 .layoutTyp10_Inner {
  display: flex;
  justify-content: space-between;
  padding: 60px 0 0;
}
#mainContents .layoutTyp10 .layoutTyp10_Inner .column {
  width: 520px;
}
#mainContents .layoutTyp10 .layoutTyp10_Inner h4 {
  padding: 10px 0 20px;
  font-size: 2.0rem;
  font-weight: 700;
  color: #000000;
}
#mainContents .layoutTyp10 .layoutTyp10_Inner iframe {
  width: 520px;
  height: 520px;
  filter: grayscale(1);
}
#mainContents .layoutTyp10 .layoutTyp10_Inner h2 {
  padding: 20px 0 0;
  font-size: 1.6rem;
  font-weight: 700;
  color: #000000;
}
#mainContents .layoutTyp10 .layoutTyp10_Inner p {
  padding: 15px 0 0;
  font-size: 1.6rem;
  line-height: 1.8;
  color: #000000;
}
@media only screen and (max-width: 1266px) {
  #mainContents .layoutTyp10 {
    width: 100%;
    padding: 0 25px;
    box-sizing: border-box;
  }
  #mainContents .layoutTyp10 .layoutTyp10_Inner .column {
    width: 44%;
  }
  #mainContents .layoutTyp10 .layoutTyp10_Inner iframe {
    width: 100%;
    height: 520px;
  }
}
@media only screen and (max-width: 767px) {
  #mainContents .layoutTyp10 {
    width: 90%;
    padding: 50px 0 0;
  }
  #mainContents .layoutTyp10 .layoutTyp10_Inner {
    flex-wrap: wrap;
    padding: 40px 0 0;
  }
  #mainContents .layoutTyp10 .layoutTyp10_Inner .column {
    width: 100%;
    padding: 0 0 60px;
  }
  #mainContents .layoutTyp10 .layoutTyp10_Inner .column:last-child {
    padding: 0;
  }
  #mainContents .layoutTyp10 .layoutTyp10_Inner h4 {
    padding: 10px 0 20px;
    font-size: 2.0rem;
    font-weight: 700;
    color: #000000;
  }
  #mainContents .layoutTyp10 .layoutTyp10_Inner iframe {
    width: 100%;
    height: 400px;
  }
  #mainContents .layoutTyp10 .layoutTyp10_Inner p {
    padding: 20px 0 0;
    font-size: 1.4rem;
  }
}


/*==========================================
 共通表組み
===========================================*/
#mainContents .table_typ01 {
  width: 100%;
}
#mainContents .table_typ01 table {
  width: 100%;
  border-bottom: 1px solid #E6E6E6;
}
#mainContents .table_typ01 table tr {
  border-top: 1px solid #E6E6E6;
}
#mainContents .table_typ01 table tr th {
  width: 122px;
  padding: 20px 5px;
  box-sizing: border-box;
  font-size: 1.4rem;
  font-weight: normal;
  text-align: left;
  line-height: 1.8;
}
#mainContents .table_typ01 table tr td {
  padding: 20px 20px;
  font-size: 1.4rem;
  background-color: #FFF;
  vertical-align: middle;
  line-height: 1.8;
}

@media only screen and (max-width: 767px) {
  #mainContents .table_typ01 {
    padding: 20px 0 30px;
  }
  #mainContents .table_typ01 table tr th {
    width: 95px;
    padding: 10px 15px;
    font-size: 1.3rem;
  }
  #mainContents .table_typ01 table tr td {
    padding: 10px 10px;
    font-size: 1.3rem;
  }
}


/*==========================================
 目次
===========================================*/
#mainContents .indexTyp01 {
  width: 100%;
  margin: 0 0 30px;
  padding: 40px;
  box-sizing: border-box;
  background-color: #f0f0f0;
}
#mainContents .indexTyp01 h3 {
  font-size: 1.6rem;
  font-weight: 400;
}
#mainContents .indexTyp01 ul li {
  padding: 10px 0;
  border-bottom: 1px dotted #949495;
}
#mainContents .indexTyp01 ul li:last-child {
  padding: 10px 0 0;
  border-bottom: none;
}
.detail__main_cont .indexTyp01 {
  line-height: 1.4;
}
#mainContents .indexTyp01 ul li a {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.4;
  color: #323232;
}
@media only screen and (max-width: 767px) {
  #mainContents .indexTyp01 {
    padding: 20px;
  }
  #mainContents .indexTyp01 ul li a {
    line-height: 1.2;
  }
}


/*==========================================
 プロフィール
===========================================*/
#mainContents .profileType01 {
  width: 100%;
  margin: 30px 0 30px;
  padding: 40px;
  box-sizing: border-box;
  border: 1px solid #949495;
}
.detail__main_cont .profileType01 {
  line-height: 1.4;
}
#mainContents .profileType01 p.text01 {
  margin: 0;
  padding: 0 0 5px;
  font-size: 1.4rem;
}
#mainContents .profileType01 h3 {
  margin: 0;
  padding: 0 0 10px;
  font-size: 1.8rem;
  font-weight: 700;
}
#mainContents .profileType01 h4 {
  margin: 0;
  padding: 0 0 20px;
  font-size: 1.4rem;
  font-weight: 400;
}
#mainContents .profileType01 p.text02 {
  margin: 0;
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  #mainContents .profileType01 {
    margin: 20px 0;
    padding: 20px;
  }
}



/*==========================================
 Top
===========================================*/
#topMv {
  width: 100%;
  height: auto;
  padding: 120px 0 0;
}
#topMv .videoArea {
  display: block;
  width: 100%;
  height: auto;
}
#topMv .videoArea video {
  width: 100%;
  height: auto;
}
#topMv .videoArea_Sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  #topMv {
    padding: 54px 0 0;
  }
  #topMv .videoArea {
    display: none;
  }
  #topMv .videoArea_Sp {
    display: block;
    width: 100%;
    height: auto;
  }
  #topMv .videoArea_Sp video {
    width: 100%;
    height: auto;
  }
}


/*==========================================
 Top/branding_tokyo
===========================================*/
#topMv_LP {
  position: relative;
  width: 100%;
  height: 857px;
  margin-top: -107px;
  background-image: url("/branding_tokyo/topMv01.jpg");
  background-size: cover;
  background-position: center top;
}

#topMv_LP {
  position: relative;
  width: 100%;
  height: 857px;
  margin-top: -107px;
  background-image: url("/branding_tokyo/topMv01.jpg");
  background-size: cover;
  background-position: center top;
}
#topMv_LP #topLogo {
  position: relative;
  width: 1250px;
  height: 750px;
  margin: 0 auto;
  padding: 0 25px;
  box-sizing: border-box;
}
#topMv_LP #topLogo h2 img {
  position: absolute;
  left: 20px;
  top: 54px;
  width: 142px;
  height: auto;
}
#topMv_LP #topBk_sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  #topMv_LP {
    position: static;
    width: 100%;
    height: auto;
    margin-top: 0;
    background-image: none;
  }
  #topMv_LP #topLogo {
    display: none;
  }
  #topMv_LP #topBk_sp {
    display: block;
  }
  #topMv_LP #topBk_sp img {
    width: 100%;
    height: auto;
  }
}


/*==========================================
 Services
===========================================*/
#mainContents .serviceTyp01 {
  width: 800px;
  margin: 0 auto;
  padding: 70px 0 70px;
}
#mainContents .serviceTyp01 h1 {
  font-size: 2.0rem;
  font-weight: 700;
  text-align: center;
  color: #C7C7BB;
}
#mainContents .serviceTyp01 h2 {
  padding: 20px 0 0;
  font-family: 'Poppins', sans-serif;
  font-size: 6.4rem;
  font-weight: 700;
  text-align: center;
  color: #C7C7BB;
}
#mainContents .serviceTyp01 p {
  width: 640px;
  margin: 0 auto;
  padding: 70px 0 0;
  font-size: 1.8rem;
  font-weight: 700;
  color: #000000;
  line-height: 2.0;
  text-align: justify;
}
@media only screen and (max-width: 767px) {
#mainContents .serviceTyp01 {
    width: calc(100% - 40px);
    padding: 50px 0 0;
  }
  #mainContents .serviceTyp01 h1 {
    font-size: 1.8rem;
  }
  #mainContents .serviceTyp01 h2 {
    padding: 20px 0 0;
    font-size: 5.6rem;
  }
  #mainContents .serviceTyp01 p {
    width: 100%;
    padding: 50px 0 0;
    font-size: 1.6rem;
  }
}

#mainContents .serviceTyp02 {
  width: 1146px;
  margin: 0 auto;
  padding: 120px 0 40px;
}
#mainContents .serviceTyp02 a {
  position: relative;
  display: block;
  width: 100%;
  height: 200px;
  padding: 80px 0 0 90px;
  border: 10px solid #F4F4F0;
  box-sizing: border-box;
  font-size: 2.4rem;
  font-weight: 700;
  color: #000;
  transition: all 0.3s ease;
}
#mainContents .serviceTyp02 a span {
  padding: 0 0 0 30px;
  font-size: 1.8rem;
}
#mainContents .serviceTyp02 a:hover {
  text-decoration: none;
  background-color: #F4FBFD;
}
#mainContents .serviceTyp02 a::after {
  position: absolute;
  right: 70px;
  top: 50%;
  width: 50px;
  height: 50px;
  margin: -25px 0 0;
  background-image: url("../img/icon04.svg");
  background-size: cover;
  content: "";
}
@media only screen and (max-width: 767px) {
#mainContents .serviceTyp02 {
    width: calc(100% - 40px);
    padding: 40px 0 40px;
  }
  #mainContents .serviceTyp02 a {
    height: 272px;
    padding: 40px 10px 0;
    box-sizing: border-box;
    font-size: 2.0rem;
    text-align: center;
  }
  #mainContents .serviceTyp02 a span {
    display: block;
    padding: 25px 0 0 0;
    font-size: 1.8rem;
    line-height: 1.6;
  }
  #mainContents .serviceTyp02 a::after {
    position: absolute;
    right: auto;
    left: 50%;
    top: auto;
    bottom: 30px;
    margin: 0 0 0 -25px;
  }
}



#mainContents .serviceTyp03 {
  width: 640px;
  margin: 0 auto;
  padding: 70px 0 100px;
}
#mainContents .serviceTyp03 h2 {
  font-family: 'Poppins', sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
  color: #C7C7BB;
}
#mainContents .serviceTyp03 h1 {
  padding: 20px 0 0;
  font-size: 4.0rem;
  font-weight: 700;
  text-align: center;
  color: #C7C7BB;
}
@media only screen and (max-width: 767px) {
  #mainContents .serviceTyp03 {
    width: calc(100% - 40px);
    padding: 50px 0 0;
  }
  #mainContents .serviceTyp03 h2 {
    font-size: 1.2rem;
  }
  #mainContents .serviceTyp03 h1 {
    padding: 20px 0 0;
    font-size: 3.6rem;
  }
}


#mainContents .serviceTyp04 {
  width: 640px;
  margin: 0 auto;
}
#mainContents .serviceTyp04 h3 {
  padding: 0 0 40px;
  font-size: 2.6rem;
  font-weight: 700;
  color: #000;
  text-align: center;
  line-height: 1.6;
}
#mainContents .serviceTyp04 .indexList {
  width: 100%;
  margin: 0 0 30px;
  padding: 40px;
  box-sizing: border-box;
  background-color: #f0f0f0;
}
#mainContents .serviceTyp04 .indexList p {
  padding: 0 0 20px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #000;
}
#mainContents .serviceTyp04 .indexList ul li {
  position: relative;
  padding: 15px 0;
  border-bottom: 1px dotted #949495;
  font-size: 1.6rem;
  font-weight: 400;
  color: #000;
}
#mainContents .serviceTyp04 .indexList ul li:last-child {
  padding: 10px 0 0;
  border-bottom: none;
}
#mainContents .serviceTyp04 .indexList ul li a {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.4;
  color: #000;
}
#mainContents .serviceTyp04 h4 {
  padding: 20px 0 40px;
  font-size: 2.0rem;
  font-weight: 700;
  color: #000;
  line-height: 1.4;
}
#mainContents .serviceTyp04 h5 {
  padding: 0 0 10px;
  font-size: 2.0rem;
  font-weight: 700;
  color: #000;
  line-height: 1.4;
}
#mainContents .serviceTyp04 img {
  width: 100%;
  height: auto;
  padding: 0 0 30px;
}
#mainContents .serviceTyp04 p.text01 {
  padding: 0 0 40px;
  font-size: 1.6rem;
  color: #000;
  line-height: 2.2;
  text-align: justify;
}
#mainContents .serviceTyp04 p.text02 {
  padding: 0 0 40px;
  font-size: 1.6rem;
  color: #000;
  line-height: 1.6;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  #mainContents .serviceTyp04 {
    width: calc(100% - 40px);
  }
  #mainContents .serviceTyp04 h3 {
    padding: 50px 0 40px;
    font-size: 2.3rem;
  }
  #mainContents .serviceTyp04 .indexList {
    padding: 20px;
  }
  #mainContents .serviceTyp04 .indexList p {
    padding: 0;
    font-size: 1.4rem;
  }
  #mainContents .serviceTyp04 .indexList ul li a {
    font-size: 1.4rem;
  }
  #mainContents .serviceTyp04 h4 {
    padding: 20px 0 30px;
    font-size: 1.8rem;
    text-align: justify;
  }
  #mainContents .serviceTyp04 h5 {
    padding: 0 0 10px;
    font-size: 1.8rem;
    text-align: justify;
  }
  #mainContents .serviceTyp04 img {
    width: 100%;
    height: auto;
    padding: 0 0 30px;
  }
  #mainContents .serviceTyp04 p.text01 {
    padding: 0 0 30px;
    font-size: 1.4rem;
  }
  #mainContents .serviceTyp04 p.text02 {
    padding: 0 0 30px;
    font-size: 1.4rem;
  }
}



#mainContents .serviceTyp05 {
  width: 100%;
  padding: 50px 0;
}
#mainContents .serviceTyp05 img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
#mainContents .serviceTyp05 {
    padding: 20px 0;
  }
}


#mainContents .serviceTyp06 {
  width: 640px;
  margin: 0 auto;
  padding: 50px 0 0;
  border-top: 1px dotted #949495;
}
#mainContents .serviceTyp06 p {
  padding: 0 0 40px;
  font-size: 1.6rem;
  color: #000;
  line-height: 2.2;
  text-align: justify;
}
@media only screen and (max-width: 767px) {
#mainContents .serviceTyp06 {
    width: calc(100% - 40px);
    padding: 30px 0 0;
  }
  #mainContents .serviceTyp06 p {
    padding: 0 0 30px;
    font-size: 1.4rem;
  }
}


#mainContents .serviceTyp07 {
  width: 100%;
  height: 900px;
  margin: 30px auto 0;
  padding: 130px 0 0;
  background-size: cover;
  background-position: center;
}
#mainContents .serviceTyp07.bk01 { background-image: url("../img/service/service_bk01.jpg"); }
#mainContents .serviceTyp07.bk02 { background-image: url("../img/service/service_bk02.jpg"); }
#mainContents .serviceTyp07.bk03 { background-image: url("../img/service/service_bk03.jpg"); }
#mainContents .serviceTyp07.bk04 { background-image: url("../img/service/service_bk04.jpg"); }
#mainContents .serviceTyp07.bk05 { background-image: url("../img/service/service_bk05.jpg"); }
#mainContents .serviceTyp07.bk06 { background-image: url("../img/service/service_bk06.jpg"); }
#mainContents .serviceTyp07.bk07 { background-image: url("../img/service/service_bk07.jpg"); }
#mainContents .serviceTyp07.bk08 { background-image: url("../img/service/service_bk08.jpg"); }

#mainContents .serviceTyp07 h3 {
  padding: 0 0 60px;
  font-family: 'Poppins', sans-serif;
  font-size: 4.0rem;
  font-weight: 700;
  text-align: center;
  color: #C7C7BB;
}
#mainContents .serviceTyp07 ul {
  width: 640px;
  margin: 0 auto;
  list-style-type: none;
}
#mainContents .serviceTyp07 ul li {
  position: relative;
  padding: 0 0 20px 25px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #FFF;
  line-height: 1.6;
}
#mainContents .serviceTyp07 ul li::before {
  position: absolute;
  left: 0;
  top: 0;
  font-size: 1.8rem;
  color: #FFF;
  content: "●";
}
#mainContents .serviceTyp07 p {
  display: block;
  width: 640px;
  margin: 0 auto;
  padding: 60px 0 0;
  font-size: 1.6rem;
  color: #FFF;
  line-height: 2.2;
}
@media only screen and (max-width: 767px) {
#mainContents .serviceTyp07 {
    height: auto;
    margin: 30px auto 0;
    padding: 70px 0;
  }
  #mainContents .serviceTyp07 h3 {
    padding: 0 0 30px;
    font-size: 3.6rem;
  }
  #mainContents .serviceTyp07 ul {
    width: calc(100% - 40px);
  }
  #mainContents .serviceTyp07 ul li {
    font-size: 1.6rem;
  }
  #mainContents .serviceTyp07 p {
    width: calc(100% - 40px);
    padding: 30px 0 0;
    font-size: 1.4rem;
  }
}



#mainContents .serviceTyp08 {
  width: 640px;
  margin: 0 auto;
  padding: 130px 0 100px;
}
#mainContents .serviceTyp08 h3 {
  padding: 0 0 60px;
  font-family: 'Poppins', sans-serif;
  font-size: 4.0rem;
  font-weight: 700;
  text-align: center;
  color: #C7C7BB;
}
#mainContents .serviceTyp08 h4 {
  padding: 20px 0 40px;
  font-size: 2.0rem;
  font-weight: 700;
  color: #000;
  line-height: 1.4;
}
#mainContents .serviceTyp08 img {
  width: 100%;
  height: auto;
  padding: 0 0 30px;
}
#mainContents .serviceTyp08 p {
  padding: 0 0 40px;
  font-size: 1.6rem;
  color: #000;
  line-height: 2.2;
  text-align: justify;
}
@media only screen and (max-width: 767px) {
#mainContents .serviceTyp08 {
    width: calc(100% - 40px);
    padding: 70px 0 50px;
  }
  #mainContents .serviceTyp08 h3 {
    padding: 0 0 30px;
    font-size: 3.6rem;
  }
  #mainContents .serviceTyp08 h4 {
    padding: 20px 0 20px;
    font-size: 1.8rem;
  }
  #mainContents .serviceTyp08 img {
    padding: 0 0 20px;
  }
  #mainContents .serviceTyp08 p {
    padding: 0 0 30px;
    font-size: 1.4rem;
  }
}



#mainContents .serviceTyp09 {
  width: 640px;
  margin: 0 auto;
  padding: 130px 0 100px;
}
#mainContents .serviceTyp09 h3 {
  padding: 0 0 60px;
  font-family: 'Poppins', sans-serif;
  font-size: 4.0rem;
  font-weight: 700;
  text-align: center;
  color: #C7C7BB;
}
#mainContents .serviceTyp09 .columnBox {
  width: 100%;
  border-top: 1px solid #C7C7BB;
}
#mainContents .serviceTyp09 .columnBox .column {
  width: 100%;
  padding: 30px 0;
  border-bottom: 1px solid #C7C7BB;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#mainContents .serviceTyp09 .columnBox .column .column_L {
  width: 215px;
  display: flex;
  align-items: center;
}
#mainContents .serviceTyp09 .columnBox .column .column_L h4 {
  position: relative;
  padding: 0 0 0 63px;
  font-size: 1.6rem;
  font-weight: 400;
  color: #000;
  line-height: 1.4;
}
#mainContents .serviceTyp09 .columnBox .column .column_L h4::before {
  position: absolute;
  left: 0;
  top: 50%;
  width: 48px;
  height: 48px;
  margin: -24px 0 0;
  padding: 11px 0 0;
  box-sizing: border-box;
  border: 1px solid #000;
  border-radius: 24px;
  background-color: #F4F4F0;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
}
#mainContents .serviceTyp09 .columnBox .column:nth-child(1) .column_L h4::before {content: "01";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(2) .column_L h4::before {content: "02";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(3) .column_L h4::before {content: "03";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(4) .column_L h4::before {content: "04";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(5) .column_L h4::before {content: "05";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(6) .column_L h4::before {content: "06";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(7) .column_L h4::before {content: "07";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(8) .column_L h4::before {content: "08";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(9) .column_L h4::before {content: "09";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(10) .column_L h4::before {content: "10";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(11) .column_L h4::before {content: "11";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(12) .column_L h4::before {content: "12";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(13) .column_L h4::before {content: "13";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(14) .column_L h4::before {content: "14";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(15) .column_L h4::before {content: "15";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(16) .column_L h4::before {content: "16";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(17) .column_L h4::before {content: "17";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(18) .column_L h4::before {content: "18";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(19) .column_L h4::before {content: "19";}
#mainContents .serviceTyp09 .columnBox .column:nth-child(20) .column_L h4::before {content: "20";}

#mainContents .serviceTyp09 .columnBox .column .column_R {
  width: 396px;
  display: flex;
  align-items: center;
}
#mainContents .serviceTyp09 .columnBox .column .column_R p {
  font-size: 1.4rem;
  line-height: 1.6;
  color: #000;
}
@media only screen and (max-width: 767px) {
  #mainContents .serviceTyp09 {
    width: calc(100% - 40px);
    padding: 70px 0 50px;
  }
  #mainContents .serviceTyp09 h3 {
    padding: 0 0 30px;
    font-size: 3.6rem;
  }
  #mainContents .serviceTyp09 .columnBox {
    width: 100%;
  }
  #mainContents .serviceTyp09 .columnBox .column {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  #mainContents .serviceTyp09 .columnBox .column .column_L {
    width: 100%;
    padding: 0 0 0 63px;
    box-sizing: border-box;
  }
  #mainContents .serviceTyp09 .columnBox .column .column_L h4 {
    padding: 0 0 10px;
    font-size: 1.6rem;
  }
  #mainContents .serviceTyp09 .columnBox .column .column_L h4::before {
    left: -60px;
    margin: -28px 0 0;
  }

  #mainContents .serviceTyp09 .columnBox .column .column_R {
    width: 100%;
    padding: 0 0 0 63px;
    box-sizing: border-box;
  }
}


/*==========================================
 TCD added for DESART 
===========================================*/

#mainContents .serviceTyp10 {
  width: 640px;
  margin: 0 auto;
  padding: 0 0 100px;
}
#mainContents .serviceTyp10 .columnBox {
  width: 100%;
  border-top: 1px solid #C7C7BB;
}
#mainContents .serviceTyp10 .columnBox .column {
  width: 100%;
  padding: 30px 0;
  border-bottom: 1px solid #C7C7BB;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#mainContents .serviceTyp10 .columnBox .column .column_L {
  width: 215px;
  display: flex;
  /*align-items: center; */
  padding-top: 5px;
	}
#mainContents .serviceTyp10 .columnBox .column .column_R {
  width: 400px;
  align-items: center;
}
#mainContents .serviceTyp10 .columnBox .column .column_L h4, .column_R h4 {
  position: relative;
  padding: 0 0 0 20px;
  font-size: 1.4rem;
  font-weight: 400;
  color: #000;
  line-height: 1.0;
	}


#mainContents .serviceTyp10 .columnBox .column .column_L h4::before {
  position: absolute;
  left: 0;
  top: 50%;
  width: 48px;
  height: 48px;
  margin: -24px 0 0;
  padding: 11px 0 0;
  box-sizing: border-box;
  border: 1px solid #000;
  border-radius: 24px;
  background-color: #F4F4F0;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
}
#mainContents .serviceTyp10 .columnBox .column .column_R {
  width: 396px;
  display: flex;
  align-items: center;
}
#mainContents .serviceTyp10 .columnBox .column .column_R p {
  font-size: 1.4rem;
  line-height: 1.6;
  color: #000;
}
@media only screen and (max-width: 767px) {
  #mainContents .serviceTyp10 {
    width: calc(100% - 40px);
    padding: 70px 0 50px;
  }
  #mainContents .serviceTyp10 h3 {
    padding: 0 0 30px;
    font-size: 3.6rem;
  }
  #mainContents .serviceTyp10 .columnBox {
    width: 100%;
  }
  #mainContents .serviceTyp10 .columnBox .column {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  #mainContents .serviceTyp10 .columnBox .column .column_L {
    width: 100%;
    padding: 0 0 0 15px;
    box-sizing: border-box;
  }
  #mainContents .serviceTyp10 .columnBox .column .column_L h4 {
    padding: 0 0 10px;
    font-size: 1.46rem;
  }
  #mainContents .serviceTyp10 .columnBox .column .column_L h4::before {
    left: -60px;
    margin: -28px 0 0;
  }

  #mainContents .serviceTyp10 .columnBox .column .column_R {
    width: 100%;
    padding: 0 0 0 15px;
    box-sizing: border-box;
  }
}




#mainContents .serviceTyp11 {
  width: 640px;
  margin: 0 auto;
  padding: 0 0 30px;
}
#mainContents .serviceTyp11 h4{
	padding: 40px 0 20px 20px;
	font-size: 2.0rem;
    font-weight: 700;
    color: #000;
	line-height: 1.4;
	}
#mainContents .serviceTyp11 .columnBox {
  width: 100%;
  border-top: 1px solid #C7C7BB;
}
#mainContents .serviceTyp11 .columnBox .column {
  width: 100%;
  padding: 30px 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#mainContents .serviceTyp11 .columnBox .column .column_L {
  width: 430px;
  display: flex;
  align-items: center;
	}
#mainContents .serviceTyp11 .columnBox .column .column_R {
  width: 180px;
  align-items: center;
}
#mainContents .serviceTyp11 .columnBox .column .column_L h4, .column_R h4 {
  position: relative;
  padding: 0 0 0 20px;
  font-size: 1.4rem;
  font-weight: 400;
  color: #000;
  line-height: 2.0;
}


#mainContents .serviceTyp11 .columnBox .column .column_L h4::before {
  position: absolute;
  left: 0;
  top: 50%;
  width: 48px;
  height: 48px;
  margin: -24px 0 0;
  padding: 11px 0 0;
  box-sizing: border-box;
  border: 1px solid #000;
  border-radius: 24px;
  background-color: #F4F4F0;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
}
#mainContents .serviceTyp11 .columnBox .column .column_R {
  width: 180px;
  align-items: center;
}
#mainContents .serviceTyp11 .columnBox .column .column_R p {
  font-size: 1.4rem;
  line-height: 1.6;
  color: #000;
}
@media only screen and (max-width: 767px) {
  #mainContents .serviceTyp11 {
    width: calc(100% - 40px);
    padding: 0px 0 20px;
  }
  #mainContents .serviceTyp11 h3 {
    padding: 0 0 30px;
    font-size: 3.6rem;
  }
  #mainContents .serviceTyp11 .columnBox {
    width: 100%;
  }
  #mainContents .serviceTyp11 .columnBox .column {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  #mainContents .serviceTyp11 .columnBox .column .column_L {
    width: 100%;
    padding: 0 0 0 15px;
    box-sizing: border-box;
  }
  #mainContents .serviceTyp11 .columnBox .column .column_L h4 {
    padding: 0 0 10px;
    font-size: 1.4rem;
  }
  #mainContents .serviceTyp11 .columnBox .column .column_L h4::before {
    left: -60px;
    margin: -28px 0 0;
  }

  #mainContents .serviceTyp11 .columnBox .column .column_R {
    width: 100%;
    padding: 0 0 0 15px;
    box-sizing: border-box;
  }
}




/*==========================================
 TCD added for DESART END
===========================================*/


#mainContents .serviceTyp12 {
  position: relative;
  width: 100%;
  height: 550px;
}
#mainContents .serviceTyp12 .mvArea {
  opacity: 0;
}
#mainContents .serviceTyp12 .mvArea {
  margin-left: calc((100vw - 880px) / 2);
  overflow: visible !important;
  opacity: 0;
}
#mainContents .serviceTyp12 .bx-wrapper {
  max-width: 100% !important;
  margin: 0 !important;
  -moz-box-shadow: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  border: none !important;
  background: none !important;
}
#mainContents .serviceTyp12 .mvArea img {
   width: 880px;
   height: 550px;
}
#mainContents .serviceTyp12 .mvAreaText {
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 880px;
  height: 550px;
  margin: 0 0 0 -440px;
}
#mainContents .serviceTyp12 .mvAreaText img {
  width: 880px;
  height: 550px;
}
@media only screen and (max-width: 767px) {
  #mainContents .serviceTyp12 {
    height: auto;
  }
  #mainContents .serviceTyp12 .mvArea {
    margin-left: 0;
  }
  #mainContents .serviceTyp12 .mvArea img {
     width: 100%;
     height: auto;
  }
  #mainContents .serviceTyp12 .mvAreaText {
    left: 0;
    bottom: auto;
    top: 0;
    width: 100%;
    height: auto;
    margin: 0;
  }
  #mainContents .serviceTyp12 .mvAreaText img {
    width: 100%;
    height: auto;
  }
}

/*==========================================
 About
===========================================*/
.about_copy {
  width: 640px;
  margin: 0 auto;
  padding: 130px 0 70px;

}
.about_copy h2 {
  font-size: 3.4rem;
  font-weight: bold;
  background-color: #FFF;
  color: #323232;
  margin: 0;
  padding: 0 0 70px;
  border: none;
}
.about_copy p {
  padding: 0 0 40px;
  font-size: 2.0rem;
  color: #000;
  line-height: 2.0;
}
.about_copy p br {
  display: block;
}
@media only screen and (max-width: 767px) {
  .about_copy {
    width: calc(100% - 40px);
    padding: 60px 0 30px;
  }
  .about_copy h2 {
    font-size: 2.7rem;
    padding: 0 0 50px;
  }
  .about_copy p {
    padding: 0 0 30px;
    font-size: 1.6rem;
    line-height: 2.0;
  }
  .about_copy p br {
    display: none;
  }
}

.about_img {
  width: 100%;
  padding: 0 0 120px;
}
.about_img img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 767px) {
.about_img {
  width: 100%;
  padding: 0;
}
}



#AboutArea01 {
  width: 100%;
  margin: 0 auto;
}
#AboutArea01 .AboutNavi {
  width: 850px;
  height: 38px;
  margin: 0 auto;
}
#AboutArea01 .AboutNavi ul {
  width: 100%;
  height: 38px;
  display: flex;
  border-radius: 4px;
}
#AboutArea01 .AboutNavi ul li {
  width: 33.333%;
  height: 38px;
  text-align: center;
}
#AboutArea01 .AboutNavi ul li a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 13px 0 0;
  box-sizing: border-box;
  background-color: #EFEFEF;
  font-size: 1.3rem;
}
#AboutArea01 .AboutNavi ul li.active a,
#AboutArea01 .AboutNavi ul li a:hover {
  background-color: #CCCCCC;
  text-decoration: none;
}
#AboutArea01 .AboutTyp01 {
  width: 850px;
  margin: 0 auto;
  padding: 40px 0 0;
}
#AboutArea01 .AboutTyp01 h3 {
  font-size: 1.8rem;
}
#AboutArea01 .AboutTyp01 p {
  padding: 20px 0 0;
  font-size: 1.6rem;
  line-height: 1.8;
}


#AboutArea02 {
  width: 100%;
  margin: 0 auto;
  padding: 20px 0 0;
}
#AboutArea02 .AboutTyp02 {
  width: 100%;
  height: 307px;
}
#AboutArea02 .AboutTyp02 .bx-wrapper {
  max-width: 100% !important;
  margin: 0 !important;
  -moz-box-shadow: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  border: none !important;
  background: none !important;
}
#AboutArea02 .AboutTyp02 .AboutMv01 {
  opacity: 0;
}
#AboutArea02 .AboutTyp03 {
  width: 690px;
  margin: 0 auto;
  padding: 60px 0 0;
}

@media only screen and (max-width: 767px) {
  #AboutArea01 {
    width: 100%;
  }
  #AboutArea01 .AboutNavi {
    width: calc(100% - 40px );
    height: 24px;
    margin: 0 auto;
  }
  #AboutArea01 .AboutNavi ul {
    width: 100%;
    height: 100%;
  }
  #AboutArea01 .AboutNavi ul li {
    height: 100%;
  }
  #AboutArea01 .AboutNavi ul li a {
    padding: 8px 0 0;
    font-size: 1.0rem;
  }
  #AboutArea01 .AboutTyp01 {
    width: calc(100% - 40px)!important;
    margin: 0 auto;
    padding: 30px 0 0;
  }
  #AboutArea01 .AboutTyp01 h3 {
    font-size: 1.6rem;
  }
  #AboutArea01 .AboutTyp01 p {
    padding: 15px 0 0;
    font-size: 1.4rem;
  }
  #AboutArea02 .AboutTyp03 {
    width: calc(100% - 40px)!important;
    margin: 0 auto;
    padding: 60px 0 0;
  }
}


#AboutArea01 .AboutTyp02 {
  width: 850px;
  margin: 0 auto;
  padding: 60px 0 0;
}
#AboutArea01 .AboutTyp02 .AboutTyp02_Box {
  width: 100%;
  padding: 0 0 60px;
  display: flex;
  justify-content: space-between;
}
#AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L {
  width: 439px;
  display: flex;
  justify-content: flex-start;
}
#AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L .column_Sub_L {
  width: 252px;
  margin: 0 28px 0 0;
  box-sizing: border-box;
}
#AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L .column_Sub_L img {
  width: 100%;
  height: auto;
}
#AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L .column_Sub_R p {
  font-size: 1.6rem;
  line-height: 1.4;
}
#AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L .column_Sub_R p.text01 {
  font-size: 1.6rem;
  line-height: 1.4;
}
#AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L .column_Sub_R h4 {
  padding: 15px 0;
  font-size: 2.0rem;
  font-weight: 700;
  color: #505050;
}
#AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_R {
  width: 415px;
  padding: 0 0 0 30px;
  border-left: 1px solid #00ABD3;
}
#AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_R p {
  font-size: 1.6rem;
  line-height: 1.8;
  color: #505050;
}
@media only screen and (max-width: 767px) {
  #AboutArea01 .AboutTyp02 {
    width: 90%;
    padding: 30px 0 0;
  }
  #AboutArea01 .AboutTyp02 .AboutTyp02_Box {
    padding: 0 0 40px;
    flex-wrap: wrap;
  }
  #AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L {
    width: 100%;
    padding: 0 0 10px;
  }
  #AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L .column_Sub_L {
    width: 140px;
    margin: 0 25px 0 0;
  }
  #AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L .column_Sub_R p {
    font-size: 1.3rem;
  }
  #AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L .column_Sub_R p.text01 {
    font-size: 1.2rem;
  }
  #AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_L .column_Sub_R h4 {
    padding: 10px 0;
    font-size: 1.6rem;
  }
  #AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_R {
    width: 100%;
    padding: 0;
    border-left: none;
  }
  #AboutArea01 .AboutTyp02 .AboutTyp02_Box .column_R p {
    font-size: 1.2rem;
    line-height: 1.8;
  }
}


#AboutArea01 .AboutTyp03 {
  width: 1140px;
  margin: 0 auto;
  padding: 50px 0 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#AboutArea01 .AboutTyp03 .AboutTyp03_Box {
  width: 530px;
  padding: 0 0 60px;
  display: flex;
  justify-content: space-between;
}
#AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L {
  width: 314px;
  display: flex;
  justify-content: flex-start;
}
#AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L .column_Sub_L {
  width: 168px;
  margin: 0 12px 0 0;
  box-sizing: border-box;
}
#AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L .column_Sub_L img {
  width: 100%;
  height: auto;
}
#AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L .column_Sub_R {
  width: 110px;
}
#AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L .column_Sub_R p {
  font-size: 1.2rem;
  line-height: 1.4;
}
#AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L .column_Sub_R p.text01 {
  font-size: 1.4rem;
  line-height: 1.4;
}
#AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L .column_Sub_R h4 {
  padding: 10px 0 10px;
  font-size: 1.6rem;
  font-weight: 700;
  color: #505050;
}
#AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_R {
  width: 217px;
  padding: 0 0 0 23px;
  border-left: 1px solid #00ABD3;
}
#AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_R p {
  font-size: 1.4rem;
  line-height: 1.8;
  color: #505050;
}
@media only screen and (max-width: 767px) {
  #AboutArea01 .AboutTyp03 {
    width: calc(100% - 40px);
    padding: 0;
  }
  #AboutArea01 .AboutTyp03 .AboutTyp03_Box {
    width: 100%;
    padding: 0 0 40px;
    flex-wrap: wrap;
  }
  #AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L {
    width: 100%;
    padding: 0 0 10px;
  }
  #AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L .column_Sub_L {
    width: 140px;
    margin: 0 25px 0 0;
  }
  #AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L .column_Sub_R p {
    font-size: 1.3rem;
  }
  #AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L .column_Sub_R p.text01 {
    font-size: 1.2rem;
  }
  #AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_L .column_Sub_R h4 {
    padding: 10px 0;
    font-size: 1.6rem;
  }
  #AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_R {
    width: 100%;
    padding: 0;
    border-left: none;
  }
  #AboutArea01 .AboutTyp03 .AboutTyp03_Box .column_R p {
    font-size: 1.2rem;
    line-height: 1.8;
  }
}




#AboutArea01 .AboutTyp04 {
  width: 100%;
  margin: 0 auto;
  padding: 60px 0 100px;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Text {
  width: 850px;
  margin: 0 auto;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Text h3 {
  padding: 0 0 15px;
  border-bottom: 1px solid #949495;
  font-size: 1.8rem;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Text p {
  padding: 20px 0 0;
  font-size: 1.6rem;
  line-height: 1.8;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Box_Area {
  width: 1140px;
  margin: 0 auto;
  padding: 80px 0 0;
  display: flex;
  justify-content: start;
  flex-wrap: wrap;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Box_Area .AboutTyp04_Box {
  width: 350px;
  margin: 0 45px 40px 0;
  display: flex;
  justify-content: space-between;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Box_Area .AboutTyp04_Box:nth-child(3n) {
  margin: 0 0 40px 0;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Box .column:nth-child(1) {
  width: 185px;
  margin: 0 20px 0 0;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Box .column:nth-child(1) img {
  width: 100%;
  height: auto;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Box .column:nth-child(2) {
  width: 143px;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Box .column p {
  font-size: 1.2rem;
  line-height: 1.4;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Box .column p.text01 {
  font-size: 1.4rem;
  line-height: 1.4;
}
#AboutArea01 .AboutTyp04 .AboutTyp04_Box .column h4 {
  padding: 10px 0 10px;
  font-size: 1.6rem;
  font-weight: 700;
  color: #505050;
}
@media only screen and (max-width: 767px) {
  #AboutArea01 .AboutTyp04 {
    width: calc(100% - 40px);
    padding: 40px 0 0;
  }
  #AboutArea01 .AboutTyp04 .AboutTyp04_Text {
    width: 100%;
  }
  #AboutArea01 .AboutTyp04 .AboutTyp04_Text h3 {
    padding: 0 0 10px;
    font-size: 1.4rem;
  }
  #AboutArea01 .AboutTyp04 .AboutTyp04_Text p {
    padding: 10px 0 0;
    font-size: 1.4rem;
  }
  #AboutArea01 .AboutTyp04 .AboutTyp04_Box_Area {
    width: 100%;
    padding: 40px 0 0;
  }
  #AboutArea01 .AboutTyp04 .AboutTyp04_Box_Area .AboutTyp04_Box {
    width: 100%;
    margin: 0 0 40px 0;
    justify-content: start;
  }
  #AboutArea01 .AboutTyp04 .AboutTyp04_Box .column:nth-child(1) {
    width: 140px;
    margin: 0 25px 0 0;
  }
  #AboutArea01 .AboutTyp04 .AboutTyp04_Box .column:nth-child(2) {
    width: auto;
  }
  #AboutArea01 .AboutTyp04 .AboutTyp04_Box .column p {
    font-size: 1.3rem;
  }
  #AboutArea01 .AboutTyp04 .AboutTyp04_Box .column p.text01 {
    font-size: 1.2rem;
  }
  #AboutArea01 .AboutTyp04 .AboutTyp04_Box .column h4 {
    padding: 10px 0;
    font-size: 1.6rem;
  }
}




.worksTyp01 {
  width: calc(100vw - 220px);
  margin: 160px auto 0;
}
.worksTyp01 ul {
  width: 1115px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
@media only screen and (max-width: 1280px) {
  .worksTyp01 ul {
    width: 100%;
  }
}
.worksTyp01 ul li {
  position: relative;
  padding: 0 12px 20px 0;
}
/* .worksTyp01 ul li::before {
  position: absolute;
  right: 15px;
  top: 2px;
  content: "／"
} */
.worksTyp01 ul li:first-child::before,
.worksTyp01 ul li:last-child::before {
  display: none;
}
.worksTyp01 ul li a {
  display: block;
  padding: 6px 7px 8px;
  border: 1px solid #CECACA;
  border-radius: 6px;
  font-size: 1.3rem;
  color: #323232;
  transition: all 0.3s ease;
}
.worksTyp01 ul li a:hover {
  text-decoration: none;
  border: 1px solid #00ABD3;
  color: #00ABD3;
}
.worksTyp01 ul li.active a {
  border: 1px solid #00ABD3;
  color: #00ABD3;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .worksTyp01 {
    width: calc(100% - 40px);
    margin: 100px auto 0;
  }
  .worksTyp01 ul li {
    position: relative;
    padding: 0 12px 10px 0;
  }
  .worksTyp01 ul li::before {
    top: 0px;
  }
  .worksTyp01 ul li a {
    padding: 5px 7px 6px;
    font-size: 1.1rem;
  }
}

.worksTyp02 {
  /* width: calc(100% - 220px); */
  width: 1025px;
  margin: 40px auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.worksTyp02 .column {
  width: 50%;
  padding: 0 25px 65px 0;
  box-sizing: border-box;
}
.worksTyp02 .column:nth-child(2n) {
  padding: 0 0 65px 25px;
}
.worksTyp02 .column a:hover {
  text-decoration: none;
}
.worksTyp02 .column .over {
  position: relative;
}
.worksTyp02 .column .over::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.15);
	opacity: 0.3;
	mix-blend-mode: multiply;
  content: '';
}
.worksTyp02 .column img {
  width: 488px;
  height: 274px;
  object-fit: cover;
}
.worksTyp02 .column p {
  padding: 15px 0 0;
  font-size: 1.4rem;
  line-height: 1.4;
  color: #555555;
}
.worksTyp02 .column h3 {
  width: 85%;
  padding: 12px 0 0;
  font-size: 1.6rem;
  line-height: 1.6;
  color: #323232;
}
@media only screen and (max-width: 767px) {
  .worksTyp02 {
    width: calc(100% - 40px);
    margin: 20px auto 0;
  }
  .worksTyp02 .column {
    width: 100%;
    padding: 0 0 40px 0;
  }
  .worksTyp02 .column:nth-child(2n) {
    padding: 0 0 40px 0;
  }
  .worksTyp02 .column img {
    width: 100%;
    height: 28vh;
    object-fit: cover;
  }
  .worksTyp02 .column h3 {
    width: 85%;
  }
}


.worksTyp03 {
  position: relative;
  width: 100%;
  height: 720px;
  margin: 40px 0 120px;
  background-color: #EFEFEF;
}
.worksTyp03 .preLink {
  position: absolute;
  left: 50%;
  top: 0;
  width: 960px;
  height: 720px;
  margin: 0 0 0 -1430px;
  cursor: pointer;
}
.worksTyp03 .column {
}
.worksTyp03 .column .column_MV {
  margin-left: calc((100vw - 960px) / 2);
  overflow: visible !important;
  opacity: 0;
}
.worksTyp03 .column .bx-wrapper {
  max-width: 100% !important;
  margin: 0 !important;
  -moz-box-shadow: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  border: none !important;
  background: none !important;
}
.worksTyp03 .column .bx-wrapper .bx-pager {
  padding-top: 30px !important;
}
.worksTyp03 .column .bx-wrapper .bx-pager.bx-default-pager a {
  background: #B2B2B2 !important;
}
.worksTyp03 .column .bx-wrapper .bx-pager.bx-default-pager a:hover,
.worksTyp03 .column .bx-wrapper .bx-pager.bx-default-pager a.active,
.worksTyp03 .column .bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #000 !important;
}
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  bottom: -40px !important;
}
.worksTyp03 .column .column_MV img {
   width: 960px;
   height: 720px;
}
.worksTyp03 .column .column_MV a {
   cursor: pointer;
}
.worksTyp03 .column .column_MV_NO {
  text-align: center;
}
.worksTyp03 .column .column_MV_NO img {
   width: 960px;
   height: 720px;
}
@media only screen and (max-width: 767px) {
  .worksTyp03 {
    height: auto;
    margin: 20px 0 70px;
  }
  .worksTyp03 .column {
  }
  .worksTyp03 .column .column_MV {
    margin-left: 0;
    overflow: visible !important;
    opacity: 0;
  }
  .worksTyp03 .column .bx-wrapper .bx-pager {
    padding-top: 20px !important;
  }
  .worksTyp03 .column .column_MV img {
     width: 100%;
     height: auto;
  }
  .worksTyp03 .column .column_MV_NO img {
     width: 100%;
     height: auto;
  }
}

.worksTyp04 {
  width: 690px;
  margin: 0 auto 120px;
}
.worksTyp04 .titleBox p {
  font-size: 1.2rem;
  line-height: 1.4;
  color: #555555;
}
.worksTyp04 .titleBox h3 {
  padding: 5px 0 0;
  font-size: 2.0rem;
  line-height: 1.4;
  color: #000;
}
.worksTyp04 .entryBox {
  padding: 30px 0 0;
}
.worksTyp04 .entryBox p {
  padding: 0 0 30px;
  font-size: 1.6rem;
  line-height: 2.0;
  color: #000;
}
.worksTyp04 .entryBox p a:visited {
  color: #79797B;
  text-decoration: underline;
}
.worksTyp04 .link01 {
  width: 200px;
  height: 50px;
  margin: 120px auto 0;
}
.worksTyp04 .link01 a {
  position: relative;
  display: block;
  width: 200px;
  height: 50px;
  padding: 17px 0 0;
  box-sizing: border-box;
  background-color: #484848;
  font-size: 1.6rem;
  color: #FFF;
  text-align: center;
  transition: all 0.3s;
}
.worksTyp04 .link01 a::before {
  position: absolute;
  left: 16px;
  top: 17px;
  width: 9px;
  height: 18px;
  background-image: url("../img/icon02.svg");
  background-size: 100% 100%;
  content: "";
}
.worksTyp04 .link01 a:hover {
  text-decoration: none;
  opacity: 0.7;
  background-color: #00ABD3;
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  .worksTyp04 {
    width: calc(100% - 40px);
    margin: 0 auto 60px;
  }
  .worksTyp04 .titleBox p {
    font-size: 1.2rem;
  }
  .worksTyp04 .titleBox h3 {
    font-size: 1.6rem;
  }
  .worksTyp04 .entryBox {
    padding: 30px 0 0;
  }
  .worksTyp04 .entryBox p {
    font-size: 1.4rem;
  }
  .worksTyp04 .link01 {
    margin: 60px auto 0;
  }
}


.worksTyp05 {
  width: 684px;
  margin: 0 auto;
  padding: 60px 0 0;
}
.worksTyp05 ul {
  width: 100%;
  height: 38px;
  display: flex;
  border-radius: 4px;
}
.worksTyp05 ul li {
  width: 33.333%;
  height: 38px;
  text-align: center;
}
.worksTyp05 ul li a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 13px 0 0;
  box-sizing: border-box;
  background-color: #EFEFEF;
  font-size: 1.3rem;
}
.worksTyp05 ul li.active a,
.worksTyp05 ul li a:hover {
  background-color: #CCCCCC;
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .worksTyp05 {
    width: 95%;
    height: 68px;
    margin: 0 0 0 5%;
    padding: 30px 0 0;
    overflow: scroll;
  }
  .worksTyp05 ul {
    width: 450px;
  }
}


.worksTyp06 {
  width: 920px;
  margin: 0 auto;
  padding: 80px 0 0;
}
.worksTyp06 .column {
  width: 100%;
  margin: 0 0 40px;
  padding: 0 0 40px;
  border-bottom: 1px solid #C8C8C8;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.worksTyp06 .column .column_L {
  width: 280px;
  height: 188px;
  border: 1px solid #C8C8C8;
  box-sizing: border-box;
}
.worksTyp06 .column .column_L img {
  width: 100%;
  height: 100%;
}
.worksTyp06 .column .column_R {
  width: 600px;
}
.worksTyp06 .column .column_R h3 {
  font-size: 2.0rem;
  line-height: 1.4;
  color: #000;
}
.worksTyp06 .column .column_R p {
  padding: 10px 0 0;
  font-size: 1.6rem;
  line-height: 2.0;
  color: #000;
}
@media only screen and (max-width: 767px) {
  .worksTyp06 {
    width: 90%;
    padding: 40px 0 0;
  }
  .worksTyp06 .column {
    width: 100%;
    margin: 0 0 40px;
    padding: 0 0 40px;
  }
  .worksTyp06 .column .column_L {
    width: 100%;
    height: auto;
    margin: 0 0 20px;
  }
  .worksTyp06 .column .column_R {
    width: 100%;
  }
  .worksTyp06 .column .column_R h3 {
    font-size: 1.8rem;
  }
  .worksTyp06 .column .column_R p {
    font-size: 1.4rem;
  }
}



/*==========================================
 ページネーションのスタイル
===========================================*/
nav#pagination {
  padding: 60px 0 120px;
}
nav#pagination ul {
  text-align: center;
}
nav#pagination ul li {
  width: 40px;
  height: 40px;
  margin: 0 5px;
  vertical-align: middle;
  display: inline-block;
}
nav#pagination ul li a {
  width: 40px;
  height: 40px;
  padding: 11px 0 0 0;
  font-size: 1.6rem;
  text-align: center;
  display: block;
  text-decoration: none;
  color: #949495;
  background: #FFF;
  border: 1px solid #949495;
  box-sizing: border-box;
  position: relative;
}
nav#pagination ul li.Active a,
nav#pagination ul li a:hover {
  background: #949495;
  color: #FFF;
}

nav#pagination ul li.prev {
  margin: 0 20px 0 0;
}
nav#pagination ul li.prev a {
  border: none;
  background-color: transparent;
}
nav#pagination ul li.prev a:before {
  content: "";
  height: 16px;
  width: 16px;
  display: block;
  border: 2px solid #949495;
  border-left-width: 0;
  border-top-width: 0;
  position: absolute;
  top: 50%;
  left: 20px;
  margin: -8px 0 0 0;
  transform: rotate(-225deg);
}
nav#pagination ul li.next {
  margin: 0 0 0 20px;
}
nav#pagination ul li.next a {
  border: none;
  background-color: transparent;
}
nav#pagination ul li.next a:after {
  content: "";
  height: 16px;
  width: 16px;
  display: block;
  border: 2px solid #949495;
  border-left-width: 0;
  border-top-width: 0;
  position: absolute;
  top: 50%;
  left: 11px;
  margin: -8px 0 0 0;
  transform: rotate(-45deg);
}

nav#pagination .flLink {
  width: 100%;
  padding: 40px 0 0;
  display: flex;
  justify-content: center;
}
nav#pagination .flLink a {
  position: relative;
  display: block;
  padding: 0 30px;
  width: 180px;
  font-size: 1.7rem;
  text-align: center;
}
nav#pagination .flLink a:nth-child(1)::before {
  position: absolute;
  right: 0;
  top: 1px;
  width: 1px;
  height: 17px;
  background-color: #949495;
  content: "";
}
nav#pagination .flLink a:hover {
  opacity: 0.7;
  text-decoration: none;
}


/* スマホ用 */
@media only screen and (max-width: 767px) {
  nav#pagination {
    padding: 30px 0 60px;
  }
  nav#pagination ul li {
    width: 30px;
    height: 30px;
    margin: 0 3px;
  }
  nav#pagination ul li a {
    width: 30px;
    height: 30px;
    padding: 7px 0 0 0;
    font-size: 1.4rem;
  }

  nav#pagination ul li.prev {
    margin: 0 10px 0 0;
  }
  nav#pagination ul li.next {
    margin: 0 0 0 10px;
  }
  nav#pagination ul li.next a:after {
    left: -5px;
  }
  nav#pagination .flLink {
    padding: 20px 0 0;
  }
  nav#pagination .flLink a {
    padding: 0 20px;
    font-size: 1.4rem;
  }
}


/*==========================================
 Contact
===========================================*/
#mainContents .contactTyp01 {
  width: 640px;
  margin: 0 auto;
  padding: 70px 0 70px;
}
#mainContents .contactTyp01 h1 {
  padding: 0 0 50px;
  font-size: 4.0rem;
  font-weight: 700;
  text-align: center;
  color: #C7C7BB;
  line-height: 1.4;
}
#mainContents .contactTyp01 h2 {
  padding: 40px 0 10px;
  font-size: 1.6rem;
  font-weight: 700;
  color: #000;
}
#mainContents .contactTyp01 p {
  font-size: 1.6rem;
  line-height: 1.8;
  color: #000000;
}
#mainContents .contactTyp01 .textBox {
  width: 100%;
  margin: 30px 0 0;
  padding: 20px 25px;
  border: 5px solid #F4F4F0;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#mainContents .contactTyp01 .textBox .column {
  width: 47%
}
#mainContents .contactTyp01 .textBox .column p {
  font-size: 1.4rem;
  line-height: 1.8;
  color: #000000;
}
#mainContents .contactTyp01 .link01 {
  width: 235px;
  height: 60px;
  margin: 50px auto 0;
}
#mainContents .contactTyp01 .link01 a {
  display: block;
  width: 235px;
  height: 60px;
  padding: 22px 0 0;
  box-sizing: border-box;
  background-color: #00ABD3;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
  font-size: 1.6rem;
  color: #FFF;
  text-align: center;
  transition: all 0.3s;
}
#mainContents .contactTyp01 .link01 a:hover {
  text-decoration: none;
  opacity: 0.7;
  transition: all 0.3s;
}
@media only screen and (max-width: 767px) {
  #mainContents .contactTyp01 {
    width: calc(100% - 40px);
    padding: 50px 0;
  }
  #mainContents .contactTyp01 h1 {
    font-size: 3.6rem;
    line-height: 1.6;
  }
  #mainContents .contactTyp01 p {
    font-size: 1.4rem;
    line-height: 1.8;
  }
  #mainContents .contactTyp01 .textBox {
    margin: 20px 0 0;
    padding: 20px 20px 0;
  }
  #mainContents .contactTyp01 .textBox .column {
    width: 100%;
    padding: 0 0 20px;
  }
}

#mainContents .contactTyp02 {
  width: 640px;
  margin: 0 auto;
  padding: 0 0 50px;
}
#mainContents .contactTyp02 h2 {
  padding: 0 0 40px;
  font-size: 2.6rem;
  font-weight: 700;
  color: #000000;
}
#mainContents .contactTyp02 h3 {
  padding: 0 0 5px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
  color: #000000;
}
#mainContents .contactTyp02 p {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2.0;
  color: #000000;
}
#mainContents .contactTyp02 p a {
  text-decoration: underline;
  color: #000000;
}
#mainContents .contactTyp02 p a:hover {
  opacity: 0.7;
}
#mainContents .contactTyp02 .download_Select {
  margin: 30px 0 0;
  padding: 30px 0 0;
  border-top: 1px solid #B4B4B4;
}
#mainContents .contactTyp02 .checkBox02 {
  padding: 20px 0 30px 0;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.4;
  color: #000000;
}
#mainContents .contactTyp02 .checkBox02 span {
  padding: 0 0 15px;
}
#mainContents .contactTyp02 .checkBox02 span.error {
  padding: 5px 0 0;
  font-size: 1.6rem;
  color: #B70000;
  display: block;
}
#mainContents .contactTyp02 .checkBox02 input[type="checkbox"] {
  margin: -2px 7px 0 0;
}

#mainContents .contactTyp02 table {
  width: 100%;
  margin: 0 0 15px;
  border-bottom: 1px solid #B4B4B4;
}
#mainContents .contactTyp02 table tr {
}
#mainContents .contactTyp02 table th {
  position: relative;
  width: 240px;
  padding: 0 0 20px;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: left;
  vertical-align: middle;
  line-height:  1.4;
  color: #000000;
}
#mainContents .contactTyp02 table th span {
  margin: 0 0 0 10px;
  padding: 2px 15px 3px;
  border-radius: 30px;
  background-color: #E17E5E;
  font-size: 1.4rem;
  font-weight: 700;
  color: #FFF;
}
#mainContents .contactTyp02 table td {
  padding: 0 0 20px;
  font-size: 1.5rem;
  line-height: 1.4;
  /* font-weight: 700; */
  color: #000000;
}
#mainContents .contactTyp02 table td span.mwform-checkbox-field label,
#mainContents .contactTyp02 table td span.mwform-radiozX-field label {
  display: block;
  padding: 0 0 10px;
}
#mainContents .contactTyp02 table td input[type="text"],
#mainContents .contactTyp02 table td input[type="email"],
#mainContents .contactTyp02 table td input[type="tel"] {
  -webkit-appearance: none;
  display: block;
  width: 100%;
  height: 60px;
  padding: 0 20px;
  border: 1px solid #B4B4B4;
  background-color: #F3F4F5;
  box-sizing: border-box;
  border-radius: 3px;
  font-size: 1.6rem;
  font-weight: 400;
}
#mainContents .contactTyp02 table td input[type="text"]::placeholder,
#mainContents .contactTyp02 table td input[type="email"]::placeholder,
#mainContents .contactTyp02 table td input[type="tel"]::placeholder {
  color: #B4B4B4;
}
#mainContents .contactTyp02 table td .formBox {
  position: relative;
}
#mainContents .contactTyp02 table td .formBox::after {
  position: absolute;
  right: 20px;
  top: 27px;
  width: 17px;
  height: 9px;
  background-image: url("../img/icon07.svg");
  background-size: cover;
  content: "";
}
#mainContents .contactTyp02 table td select {
  -webkit-appearance: none;
  display: block;
  width: 100%;
  height: 60px;
  padding: 0 20px;
  border: 1px solid #B4B4B4;
  background-color: #F3F4F5;
  box-sizing: border-box;
  border-radius: 3px;
  font-size: 1.8rem;
  font-weight: 700;
}
#mainContents .contactTyp02 table td select::placeholder {
  color: #B4B4B4;
}
#mainContents .contactTyp02 table td textarea {
  -webkit-appearance: none;
  display: block;
  width: 100%;
  height: 210px;
  padding: 10px 20px;
  border: 1px solid #B4B4B4;
  background-color: #F3F4F5;
  box-sizing: border-box;
  border-radius: 3px;
  resize: none;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
}
#mainContents .contactTyp02 table td textarea.typ02 {
  height: 100px;
}
#mainContents .contactTyp02 table td textarea::placeholder {
  color: #B4B4B4;
}
#mainContents .contactTyp02 table td p {
  padding: 10px 0 0;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 1.4;
  color: #000000;
}
#mainContents .contactTyp02 table td p span {
  display: block;
  color: #E17E5E;
  font-weight: 700;
}

#mainContents .contactTyp02 .checkBox {
  padding: 20px 0 30px 328px;
}
#mainContents .contactTyp02 .checkBox label {
  font-size: 1.3rem;
  line-height: 1.4;
  color: #000000;
}
#mainContents .contactTyp02 .checkBox input[type="checkbox"] {
  margin: -2px 7px 0 0;
}
#mainContents .contactTyp02 .submitArea {
  width: 235px;
  margin: 0 auto;
  padding: 40px 0 0;
}
#mainContents .contactTyp02 .submitArea input[type="submit"] {
  -webkit-appearance: none;
  width: 100%;
  height: 60px;
  background-color: #00B4D8;
  border: none;
  font-size: 2.0rem;
  color: #FFF;
  cursor: pointer;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}
#mainContents .contactTyp02 .submitArea input[type="submit"]:hover {
  text-decoration: none;
  opacity: 0.7;
}
#mainContents .contactTyp02 input:focus,
#mainContents .contactTyp02 select:focus,
#mainContents .contactTyp02 textarea:focus {
  outline: none;
}
@media only screen and (max-width: 767px) {
  #mainContents .contactTyp02 {
    width: calc(100% - 40px);
  }
  #mainContents .contactTyp02 h2 {
    padding: 40px 0 20px;
    font-size: 2.3rem;
  }
  #mainContents .contactTyp02 p {
    font-size: 1.4rem;
  }
  #mainContents .contactTyp02 .download_Select {
    margin: 30px 0 0;
    padding: 30px 0 0;
    border-top: 1px solid #B4B4B4;
  }
  #mainContents .contactTyp02 .checkBox02 {
    padding: 20px 0 30px 0;
  }
  #mainContents .contactTyp02 .checkBox02 span {
    padding: 0 0 10px;
    font-size: 1.4rem;
  }
  #mainContents .contactTyp02 table th {
    display: block;
    width: 100%;
    padding: 0 0 10px;
  }
  #mainContents .contactTyp02 table td {
    display: block;
    width: 100%;
    padding: 0 0 30px;
  }
  #mainContents .contactTyp02 .checkBox {
    padding: 20px 0 30px 0;
  }
}

/* MW WP FORM関連 */
#mainContents .mw_wp_form_preview .preview_None {
  display: none;
}
#mainContents .mw_wp_form_input .input_None {
  display: none;
}
#mainContents .mw_wp_form_preview .contactTyp01 {
  padding: 70px 0 20px;
}
#mainContents .mw_wp_form .error {
  padding: 5px 0 0;
  font-size: 1.6rem;
  color: #B70000;
  display: block;
}
#mainContents .mw_wp_form_preview .contactTyp02 table {
  border-top: 1px solid #B4B4B4;
}
#mainContents .mw_wp_form_preview .contactTyp02 table th span {
  display: none;
}
#mainContents .mw_wp_form_preview .contactTyp02 table tr {
  border-bottom: 1px solid #B4B4B4;
}
#mainContents .mw_wp_form_preview .contactTyp02 table tr th,
#mainContents .mw_wp_form_preview .contactTyp02 table tr td {
  padding: 20px 0;
  font-size: 1.8rem;
  vertical-align: middle;
  line-height: 1.6;
}
#mainContents .mw_wp_form_preview .contactTyp02 table td .formBox::after {
  display: none;
}
#mainContents .contactTyp01 h3 {
  margin: 60px 0 0;
  padding: 20px 0;
  border-top: 1px solid #B4B4B4;
  font-size: 1.6rem;
  font-weight: 700;
  color: #000000;
}
@media only screen and (max-width: 767px) {
  #mainContents .mw_wp_form_preview .contactTyp02 table tr th {
    padding: 20px 0 10px;
  }
  #mainContents .mw_wp_form_preview .contactTyp02 table tr td {
    padding: 0 0 20px;
  }
}

#mainContents .utilityLayout01 {
  width: 850px;
  margin: 0 auto;
  padding: 50px 0 0;
}
#mainContents .utilityLayout01 h2 {
  padding: 0 0 35px;
  font-size: 2.0rem;
  font-weight: 700;
}
#mainContents .utilityLayout01 h3 {
  padding: 0 0 15px;
  font-size: 2.0rem;
  font-weight: 700;
}
#mainContents .utilityLayout01 p {
  padding: 0 0 50px;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 2.0;
}
#mainContents .utilityLayout01 p.text_Right {
  padding: 0 0 70px;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2.0;
  text-align: right;
}
#mainContents .utilityLayout01 .textBox {
  padding: 0 0 0 80px;
}
#mainContents .utilityLayout01 h4 {
  padding: 0 0 15px;
  font-size: 2.0rem;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  #mainContents .utilityLayout01 {
    width: calc(100% - 40px);
    padding: 50px 0 0;
  }
  #mainContents .utilityLayout01 h2 {
    padding: 0 0 30px;
    font-size: 1.6rem;
  }
  #mainContents .utilityLayout01 h3 {
    padding: 0 0 10px;
    font-size: 1.6rem;
  }
  #mainContents .utilityLayout01 p {
    padding: 0 0 40px;
    font-size: 1.4rem;
  }
  #mainContents .utilityLayout01 p.text_Right {
    padding: 0 0 40px;
    font-size: 1.3rem;
  }
  #mainContents .utilityLayout01 .textBox {
    padding: 0 0 0 20px;
  }
  #mainContents .utilityLayout01 h4 {
    padding: 0 0 10px;
    font-size: 1.6rem;
  }
}


/*==========================================
 Download
===========================================*/
#mainContents .downloadTyp01 {
  width: 800px;
  margin: 0 auto;
  padding: 70px 0 70px;
}
#mainContents .downloadTyp01 h1 {
  font-size: 2.0rem;
  font-weight: 700;
  text-align: center;
  color: #C7C7BB;
}
#mainContents .downloadTyp01 h2 {
  padding: 20px 0 0;
  font-family: 'Poppins', sans-serif;
  font-size: 6.4rem;
  font-weight: 700;
  text-align: center;
  color: #C7C7BB;
}
#mainContents .downloadTyp01 p {
  width: 640px;
  margin: 0 auto;
  padding: 40px 0 0;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2.0;
  color: #000000;
}
#mainContents .downloadTyp01 .columnBox {
  width: 770px;
  margin: 0 auto;
  padding: 40px 0 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#mainContents .downloadTyp01 .columnBox .column {
  width: 360px;
  padding: 0 0 35px;
}
#mainContents .downloadTyp01 .columnBox .column img {
  width: 360px;
  height: auto;
}
#mainContents .downloadTyp01 .columnBox .column h3 {
  padding: 15px 0 0;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.6;
  color: #000000;
}
#mainContents .downloadTyp01 .columnBox .column p {
  width: auto;
  padding: 15px 0 0;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.8;
  color: #000000;
}
#mainContents .downloadTyp01 .pageDownLink {
  display: none;
}
@media only screen and (max-width: 767px) {
  #mainContents .downloadTyp01 {
    width: calc(100% - 40px);
    padding: 50px 0 0;
  }
  #mainContents .downloadTyp01 h1 {
    font-size: 1.8rem;
  }
  #mainContents .downloadTyp01 h2 {
    padding: 20px 0 0;
    font-size: 5.6rem;
  }
  #mainContents .downloadTyp01 p {
    width: 100%;
    font-size: 1.6rem;
  }
  #mainContents .downloadTyp01 .columnBox {
    width: 100%;
    padding: 40px 0 0;
  }
  #mainContents .downloadTyp01 .columnBox .column {
    width: 100%;
    padding: 0 0 35px;
  }
  #mainContents .downloadTyp01 .columnBox .column img {
    width: 100%;
  }
  #mainContents .downloadTyp01 .columnBox .column h3 {
    padding: 15px 0 0;
    font-size: 1.6rem;
  }
  #mainContents .downloadTyp01 .columnBox .column p {
    padding: 10px 0 0;
    font-size: 1.2rem;
  }
  #mainContents .downloadTyp01 .pageDownLink {
    display: block;
    position: fixed;
    z-index: 100;
    right: 7px;
    bottom: 75px;
    width: 80px;
    height: 80px;
  }
  #mainContents .downloadTyp01 .pageDownLink img {
    width: 80px;
    height: 80px;
  }
}



/*==========================================
 LP
===========================================*/
#mainContents .serviceTyp04 .LP_tit {
    padding: 5px 10px 5px;
    margin: 0 0 20px;
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.4;
    color: #354573;
    outline-color: #354573;
    background-color: #dbe0ed;
    outline-style: solid;
    outline-width: 1px;
}

#mainContents .serviceTyp05,.serviceTyp04 h1{
font-size: 4.0rem;
color: #304574;
line-height: 1.5;
text-align: center;
margin-bottom: 0px;
}

#mainContents .serviceTyp04 .Lp_tit2 {
    padding: 0;
    font-size: 2.6rem;
    font-weight: 700;
    color: #304574;
    text-align: center;
    line-height: 1.6;
    border-bottom: 1px solid #354573;
    padding-bottom: 10px;
}


/* For LP */