@charset "utf-8";
/* CSS Document */
.titlenavigation, .breadcrumb /*,
.main_menu*/ {
 display: none !important;
}
.contentsframe {
 background-color: #000;
}
.sp {
 display: none;
}
.pc {
 display: block;
}
/*for sp*/
@media only screen and (max-width:640px) and (max-device-width:1280px) {
 #page {
  background-color: #000;
 }
 html, body {
  min-width: auto !important;
 }
 /*#sectionContents{
  display: none;
 }*/
 .ga2012_breadcrumbs {
  display: none;
 }
 #globalNav {
  width: 100%;
  height: auto;
  padding: 0 10px;
  background-color: #000 !important;
  box-sizing: border-box;
 }
 #globalNav ul {
  position: relative !important;
 }
 #globalNav > ul {
  display: none;
 }
 #globalNav ul li {
  float: none;
  width: 100%;
  height: auto !important;
  margin: 0 0 1px;
  text-align: left;
 }
 #globalNav ul li a {
  display: block;
  width: 100% !important;
  height: auto !important;
  padding: 10px !important;
  background-color: #424242 !important;
  font-size: 14px !important;
  text-align: left;
  line-height: 1.6em !important;
  vertical-align: baseline;
 }
 #globalNav ul li > a {
  display: none;
 }
 #globalNav ul li > ul {
  top: auto;
  left: auto;
 }
 #globalNav > ul > li:nth-child(9) > ul > li:nth-child(1) {
  display: block;
 }
 #globalNav > ul > li:nth-child(8) > a, #globalNav > ul > li:nth-child(9) > a {
  pointer-events: none;
  display: block;
  margin-bottom: 1px;
  background: none;
  text-indent: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  text-decoration: none;
 }
 #globalNav > ul > li:nth-child(8) > a:after, #globalNav > ul > li:nth-child(9) > a:after {
  content: "";
  position: absolute;
  top: 17px;
  right: 20px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 0.35s ease;
  -moz-transition: all 0.35s ease;
  -ms-transition: all 0.35s ease;
  -o-transition: all 0.35s ease;
  transition: all 0.35s ease;
 }
 #globalNav > ul > li.open:nth-child(8) > a:after, #globalNav > ul > li.open:nth-child(9) > a:after {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
 }
 #globalNav > ul > li:nth-child(8) > a + ul, #globalNav > ul > li:nth-child(9) > a + ul {
  display: none;
 }
 #globalNav > ul > li:nth-child(8) > a + ul > li > a, #globalNav > ul > li:nth-child(9) > a + ul > li > a {
  padding-left: 24px !important;
 }
 #globalNav p.switch {
  display: table;
  table-layout: fixed;
  width: 100% !important;
  height: auto !important;
  margin: 0 0 1px 0 !important;
  padding: 10px 14px 10px 10px !important;
  background-color: #424242 !important;
  box-sizing: border-box;
  font-size: 14px !important;
  color: #fff;
  text-align: left;
  line-height: 1.6em !important;
  vertical-align: baseline;
 }
 #globalNav p.switch span {
  display: table-cell;
 }
 #globalNav p.switch span:last-child {
  width: 14px;
 }
 #globalNav p.switch span:last-child img {
  width: 14px;
 }
 #pviblack {
  width: 100%;
 }
 .pagesection {
  background-color: #000;
 }
 #fs01-main-content {
  width: 100%;
 }
 .basic-page .pagesection {
  padding: 0;
 }
 /* 202109追記 */
 nav#navi {
  width: 100%;
  justify-content: flex-end;
 }
 nav#navi > ul {
  display: none;
 }
 nav#navi > p {
  margin-right: 20px;
 }
 nav#navi > p a {
  margin-bottom: 0;
  padding-bottom: 0;
 }
 nav#navi .sitemap {
  padding: 40px 20px;
 }
 nav#navi .sitemap ul {
  border-bottom: 1px dotted #666;
 }
 nav#navi .sitemap ul li:first-child a {
  border: none;
 }
 .pagetop {
  padding: 40px 10px;
 }
 /*index*/
 #visualPannel {
  float: none;
  width: 100%;
 }
 .box_skitter .info_slide {
  filter: alpha(opacity=0.75) !important;
  -moz-opacity: 0.75 !important;
  opacity: 0.75 !important;
 }
 h2#catchcopy {
  width: 100%;
  padding: 31px 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #visualPannel #skitter {
  float: none;
  width: 100%;
  height: auto;
  margin: 0 0 8px;
 }
 #visualPannel #skitter .box_skitter_large {
  width: 100% !important;
 }
 #visualPannel #skitter .container_skitter {
  width: 100% !important;
  height: auto !important;
 }
 #visualPannel #skitter .image {
  width: 100% !important;
  height: auto;
 }
 #visualPannel #skitter img {
  width: 100%;
 }
 #visualPannel .images .link_image.sp {
  width: 100%;
  padding: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #main .slide {
  float: none;
  width: 100%;
  height: auto;
  margin: 0 0 8px;
 }
 #bnrAreaBg {
  float: none;
  clear: both;
  width: 100%;
 }
 #bnrAreaBg ul li {
  width: 50%;
  height: auto;
  margin: 0 0 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #bnrAreaBg ul li:nth-child(even) {
  float: right;
  padding: 0 10px 0 4px;
 }
 #bnrAreaBg ul li:nth-child(odd) {
  clear: left;
  float: left;
  padding: 0 4px 0 10px;
 }
 #bnrAreaBg ul li img {
  width: 100%;
 }
 /* 202109追記 */
 #bgwhite .slick_slide {
  margin-top: 20px;
 }
 #bgwhite .slick-prev {
  left: -7vw;
 }
 #bgwhite .slick-next {
  right: -7vw;
 }
 #bgwhite #project, #bgwhite #news, #bgwhite #works, #bgwhite #access, #bgwhite #contact, #bgwhite #recruit {
  flex-direction: column;
  padding: 20px;
 }
 #bgwhite h2 {
  margin-bottom: 20px;
 }
 #bgwhite h2 + div {
  width: 100%;
 }
 #bgwhite #project > div > ul li {
  width: calc(50% - 10px);
 }
 #bgwhite #works > div > ul li {
  width: calc(50% - 10px);
 }
 #bgwhite #access .branch {
  flex-direction: column;
 }
 #bgwhite #access .branch div {
  width: 100%;
  margin-bottom: 20px;
 }
 #bgwhite #access .branch div iframe {
  width: 100%;
  height: calc(100vw - 40px);
 }
 #bgwhite #fs01-main-content .black_contents.service .title .left, #bgwhite #fs01-main-content .black_contents.film .title .left, #bgwhite #fs01-main-content .black_contents.support .title .left {
  background-color: transparent;
 }
 #bgwhite #fs01-main-content .black_contents.bd p.right {
  width: auto;
 }
 #bgwhite #fs01-main-content .black_contents.bd .bodytext.left, #bgwhite #fs01-main-content .black_contents.common .bodytext {
  width: auto;
  padding: 0 20px 20px;
 }
 #bgwhite #fs01-main-content .black_contents.china .title .left {
  background-color: transparent;
 }
 #bgwhite #fs01-main-content .black_contents.company .title h1 {
  color: #000;
 }
 /* PROJECT 202109 */
 #bgwhite #sectionContents.project {
  background-position: center 70px;
 }
 #bgwhite #sectionContents.project::after {
  width: 100%;
  bottom: 0;
 }
 #bgwhite #sectionContents.project2 {
  background-position: center 70px;
 }
 #bgwhite #sectionContents.project2::after {
  width: 100%;
  bottom: 0;
 }
 .bnrmgn{
	margin-bottom:20px;
  margin-top:20px;
}
 #bgwhite .project_page {
  padding: 60px 60px 0;
 }
 #bgwhite .project_page > ul li {
  width: 100%;
  margin-bottom: 20px;
 }
 #bgwhite .project_page p.pagination {
  margin: 20px -40px 40px;
 }
 #bgwhite .project_page p.pagination a {
  font-size: 22px;
  white-space: nowrap;
 }
 #bgwhite .project_page p.pagination a:first-child {
  margin-right: 0.7em;
 }
 #bgwhite .project_page p.pagination a:last-child {
  margin-left: 0.7em;
 }
 #bgwhite .project_page p.pagination a:first-child i {
  margin-right: 0.5em;
 }
 #bgwhite .project_page p.pagination a:last-child i {
  margin-left: 0.5em;
 }
 #bgwhite .project_page p:last-child {
  margin: 0 -40px;
 }
 /* 制作実績 jQuery version 3.4.1対応 */
 #movie4col .category_title {
  margin: 0 10px;
 }
 #movie4col .slider {
  width: 80vw;
  margin: 0 10vw 20px;
 }
 #movie4col .slick-slide img {
  width: 100%;
 }
 /*service*/
 #fs01-main-content .black_contents.service .title {
  position: relative;
  height: 375px;
  background-size: 100%;
  background-position: 0 -20%;
 }
 #fs01-main-content .black_contents.service .title::before {
  display: none;
 }
 #fs01-main-content .black_contents.service .title .left {
  position: absolute;
  bottom: 10px;
  width: 100%;
  padding: 10px;
  background-color: #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.common .title .left h2 {
  font-size: 20px;
 }
 #fs01-main-content .black_contents.common .title .left p {
  font-size: 14px;
 }
 #fs01-main-content .black_contents.service .sp.list .photo img {
  vertical-align: middle;
 }
 #fs01-main-content .black_contents.service .sp.list .textarea {
  padding: 10px 15px 20px;
  background-color: #ddd;
 }
 #fs01-main-content .black_contents.service .sp.list .textarea h3 {
  padding: 0;
  border: 0;
  font-size: 16px;
  line-height: 1.4em;
 }
 #fs01-main-content .black_contents.service .sp.list .textarea p {
  font-size: 14px;
  line-height: 1.4em;
 }
 #fs01-main-content .black_contents.service .bejing_table {
  width: 100% !important;
 }
 #fs01-main-content .black_contents.service table.bejing_table th {
  width: 5em;
  white-space: nowrap;
 }
 #fs01-main-content .black_contents.service .access {
  width: 100%;
 }
 #fs01-main-content .black_contents.service .access img {
  float: none;
  width: 100%;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.service .access .textarea {
  float: none;
  width: 100%;
  padding: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 /*film*/
 #fs01-main-content .black_contents.film .title {
  position: relative;
  height: 400px;
  background-size: 100%;
  background-position: 0 -20%;
 }
 #fs01-main-content .black_contents.film .title::before {
  display: none;
 }
 #fs01-main-content .black_contents.film .title .left {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 10px;
  background-color: #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.common .title .left h2 {
  font-size: 20px;
 }
 #fs01-main-content .black_contents.common .title .left p {
  font-size: 14px;
 }
 #fs01-main-content .black_contents.common p a.leftarrow {
  padding-left: 10px;
  background-image: url(/pvi/images/icon_leftarrow.png);
  background-position: center left;
  background-repeat: no-repeat;
  color: #013C6F;
  font-weight: bold;
  text-decoration: none;
 }
 #fs01-main-content .black_contents.film .sp.list .photo img {
  vertical-align: middle;
 }
 #fs01-main-content .black_contents.film .sp.list .textarea {
  padding: 10px 15px 20px;
  background-color: #ddd;
 }
 #fs01-main-content .black_contents.film .sp.list .textarea h3 {
  padding: 0;
  border: 0;
  font-size: 16px;
  line-height: 1.4em;
 }
 #fs01-main-content .black_contents.film .sp.list .textarea p {
  font-size: 14px;
  line-height: 1.4em;
 }
 #fs01-main-content .black_contents.film .bejing_table {
  width: 100% !important;
 }
 #fs01-main-content .black_contents.film table.bejing_table th {
  width: 5em;
  white-space: nowrap;
 }
 #fs01-main-content .black_contents.film .access {
  width: 100%;
 }
 #fs01-main-content .black_contents.film .access img {
  float: none;
  width: 100%;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.film .access .textarea {
  float: none;
  width: 100%;
  padding: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 /*support*/
 #fs01-main-content .black_contents.support .title {
  position: relative;
  height: 440px;
  background-size: 100%;
  background-position: 0 -20%;
 }
 #fs01-main-content .black_contents.support .title::before {
  display: none;
 }
 #fs01-main-content .black_contents.support .title .left {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 10px;
  background-color: #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.common .title .left h2 {
  font-size: 20px;
 }
 #fs01-main-content .black_contents.common .title .left p {
  font-size: 14px;
 }
 #fs01-main-content .black_contents.support .sp.list .photo img {
  vertical-align: middle;
 }
 #fs01-main-content .black_contents.support .sp.list .textarea {
  padding: 10px 15px 20px;
  background-color: #ddd;
 }
 #fs01-main-content .black_contents.support .sp.list .textarea h3 {
  padding: 0;
  border: 0;
  font-size: 16px;
  line-height: 1.4em;
 }
 #fs01-main-content .black_contents.support .sp.list .textarea p {
  font-size: 14px;
  line-height: 1.4em;
 }
 #fs01-main-content .black_contents.support .bejing_table {
  width: 100% !important;
 }
 #fs01-main-content .black_contents.support table.bejing_table th {
  width: 5em;
  white-space: nowrap;
 }
 #fs01-main-content .black_contents.support .access {
  width: 100%;
 }
 #fs01-main-content .black_contents.support .access img {
  float: none;
  width: 100%;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.support .access .textarea {
  float: none;
  width: 100%;
  padding: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 /*company*/
 #fs01-main-content .black_contents.company .title {
  height: 34vw;
  background-size: 120%;
 }
 #fs01-main-content .black_contents.company .title h1 {
  font-size: 20px;
 }
 #fs01-main-content .black_contents.company .introduction {
  margin: 10px 10px 0;
  font-size: 14px;
  line-height: 1.4em;
 }
 #fs01-main-content .black_contents.company h2 {
  margin: 30px 0 0;
 }
 #fs01-main-content .black_contents.company .company_table {
  width: 100%;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.company .company_table th {
  width: 8em;
 }
 #fs01-main-content .black_contents.company .last_update_date {
  margin-top: 10px;
 }
 #fs01-main-content .black_contents.company .company_table a[href^="tel:"] {
  pointer-events: painted;
  color: #A7CEEF;
 }
 /*china*/
 #fs01-main-content .black_contents.china .title {
  position: relative;
  height: 440px;
  background-size: 100%;
  background-position: 0 -20%;
 }
 #fs01-main-content .black_contents.china .title::before {
  display: none;
 }
 #fs01-main-content .black_contents.china .title .left {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 10px;
  background-color: #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.common .title .left h2 {
  font-size: 20px;
 }
 #fs01-main-content .black_contents.common .title .left p {
  font-size: 14px;
 }
 #fs01-main-content .black_contents.china .sp.list .photo img {
  vertical-align: middle;
 }
 #fs01-main-content .black_contents.china .sp.list .textarea {
  padding: 10px 15px 20px;
  background-color: #ddd;
 }
 #fs01-main-content .black_contents.china .sp.list .textarea h3 {
  padding: 0;
  border: 0;
  font-size: 16px;
  line-height: 1.4em;
 }
 #fs01-main-content .black_contents.china .sp.list .textarea p {
  font-size: 14px;
  line-height: 1.4em;
 }
 #fs01-main-content .black_contents.china .bejing_table {
  width: 100% !important;
 }
 #fs01-main-content .black_contents.china table.bejing_table th {
  width: 5em;
  white-space: nowrap;
 }
 #fs01-main-content .black_contents.china .access {
  width: 100%;
 }
 #fs01-main-content .black_contents.china .access img {
  float: none;
  width: 100%;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.china .access .textarea {
  float: none;
  width: 100%;
  padding: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 /*access*/
 div#wide_770 {
  width: auto;
 }
 #ga2012_content {
  width: 100% !important;
 }
 #ga2012_content table {
  font-size: 13px;
 }
 /*recruit*/
 .recruit .font_color_white {
  padding: 0 10px;
 }
 .recruit .font_color_white table {
  width: 100% !important;
 }
 /*movie*/
 #video-wrapper {
  width: auto;
 }
 .video-wrapper-inner {
  width: auto;
  margin: 0 !important;
 }
 .movieFrame {
  width: 100%;
  height: auto;
  margin-bottom: 20px;
 }
 .video-wrapper-inner p.movtitle {
  margin-top: 10px;
  line-height: 1.4em;
 }
 .btnList {
  width: 100%;
 }
 .btnList p.btnWork {
  float: none;
  width: 100%;
  margin-bottom: 10px;
 }
 .btnList p.btnContact {
  float: none;
  width: 100%;
 }
 .movieFrame iframe {
  height: calc((100vw - 20px) * 0.5625);
 }
 /*privacy*/
 .privacy .font_color_white {
  padding: 0 10px;
 }
 /*common*/
 .pc {
  display: none !important;
 }
 .sp {
  display: block;
 }
 /*suport list*/
 #fs01-main-content .black_contents.list {
  zoom: 0.5;
  width: auto;
 }
 #fs01-main-content .black_contents.common table.list {
  width: auto;
 }
 /*lab*/
 .black_contents.lab .menu {
  float: none;
  width: auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 10px;
 }
 .black_contents.lab .menu ul {
  width: 49%;
 }
 .black_contents.lab .menu ul li {
  width: 100%;
  margin: 0 0 5px !important;
  list-style-type: none;
 }
 .black_contents.lab .menu ul li a {
  display: block;
  width: 100%;
  border: 1px solid #72B8FF;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  text-align: center;
 }
 .black_contents.lab .items {
  float: none;
  width: auto;
  margin-top: 20px;
 }
 .black_contents.lab .items .item {
  padding: 10px;
 }
 .black_contents.lab .items .item .title {
  line-height: 1.4em;
 }
 .black_contents .items .item .article .photo {
  float: none;
  width: auto;
  text-align: center;
 }
 .black_contents.lab .items .item .article .textarea {
  float: none;
  width: auto;
  margin-top: 10px;
 }
 .black_contents.lab .items .blog {
  margin-left: 10px;
  margin-right: 10px;
 }
 .black_contents.lab .items .blog .title {
  line-height: 1.4em;
 }
 .black_contents.lab .items .blog p.photo img {
  margin: 10px 0 0;
  max-width: 100%;
 }
 .black_contents.lab .items .blog p.photo img:first-child {
  margin-top: 0;
 }
 .black_contents.lab .items .blog .frame01 {
  display: block;
  border-bottom: 1px dashed #666;
 }
 .black_contents.lab .items .blog .frame01 *:first-child img {
  width: 100%;
 }
 .black_contents.lab .items .blog .frame01 figure:first-child {
  margin-bottom: 10px;
 }
 .black_contents.lab .items .blog .frame01 > *:nth-child(2) {
  margin-left: 0 !important;
 }
 .black_contents.lab .items .blog .frame01 > *:nth-child(2) figure {
  display: block;
  margin-bottom: 10px;
  text-align: center;
 }
 .black_contents.lab .items .blog .frame01 > *:nth-child(2) figure img:first-child {
  margin-right: 0;
 }
 .black_contents.lab .items .blog .frame01.brazile p {
  margin-bottom: 0 !important;
 }
 .black_contents.lab .items .blog .movie iframe {
  height: 59.375vw;
 }
 /*sitemap*/
 #page.sitemap .font_color_white {
  margin: 0 10px;
 }
 /*projection mapping*/
 .black_contents.projection {
  position: relative;
 }
 .black_contents.projection map.links {
  position: absolute;
  display: block;
  left: 8vw;
  top: 50vw;
  height: 60vw;
  width: 20vw;
 }
 .black_contents.projection map.links area {
  width: 100%;
  height: 20vw;
  display: block;
 }
 .black_contents.projection .btnList table {
  width: 90%;
 }
 .black_contents.projection .case_study {
  display: block;
  width: 100%;
  padding: 0 5px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 .black_contents.projection .case_study a {
  display: block;
  width: 100%;
  margin: 5px 0 0;
  padding: 10px;
  border: 1px solid #444;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 .black_contents.projection .case_study a img {
  max-width: 100%;
  width: 100%;
  margin: 5px 0 0;
 }
 .black_contents.projection div.title:first-child {
  margin-top: 0;
 }
 .black_contents.projection div.title img {
  max-width: 120vw;
  margin-left: -8.5vw;
 }
 .black_contents.projection .products {
  width: auto;
  margin: 5px 5px 20px;
 }
 .black_contents.projection .products .product {
  display: block;
 }
 .black_contents.projection .products .product p {
  text-align: center;
 }
 .black_contents.projection .products .product img {
  width: 50%;
 }
 /*tsr*/
 #fs01-main-content .black_contents.tsr .title {
  background-size: 100vw;
 }
 #fs01-main-content .black_contents.tsr .title .left {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 10px;
  background-color: #000;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.tsr .title p {
  font-size: 12px;
  letter-spacing: 1px;
 }
 #fs01-main-content .black_contents.tsr .title a:last-child {
  top: -38px;
 }
 #fs01-main-content .black_contents.tsr .title a:last-child::after {
  left: calc(50% - 14px);
  border-width: 20px 14px 14px;
 }
 #fs01-main-content .black_contents.tsr .tsr_contents .contents_list {
  display: block;
 }
 #fs01-main-content .black_contents.tsr .tsr_contents .contents_list > * {
  display: block;
  width: 100%;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #fs01-main-content .black_contents.tsr .tsr_contents .contents_list > a > span {
  height: auto;
 }
 #fs01-main-content .black_contents.tsr .tsr_contents .contents_list > a > img {
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
 }
 #ytplayer {
  left: 0 !important;
  width: 100vw !important;
  height: 56.25vw !important;
 }
 #fs01-main-content .black_contents.tsr .tsr_contents .close_button {
  left: auto !important;
  right: 0 !important;
 }
 #fs01-main-content .black_contents.tsr .tsr_contents .inquiry {
  margin: 0 10px;
  font-size: 14px;
 }
 #fs01-main-content .black_contents.tsr .tsr_contents .inquiry a.sp {
  display: inline-block;
 }
 #fs01-main-content .black_contents.tsr .tsr_contents .inquiry span.attention {
  float: none;
  display: block;
 }
 /* privacy policy 202203 */
 #bgwhite .privacy-policy {
  padding: 0 10px;
 }
 #bgwhite .privacy-policy h1 {
  font-size: 20px;
 }
 #bgwhite .privacy-policy ul.navi {
  flex-direction: column;
  align-items: center;
 }
 #bgwhite .privacy-policy ul.navi li {
  width: 16em;
  padding: 0.5em 0;
  border-left: none;
  border-top: 1px solid #666;
  text-align: center;
 }
 #bgwhite .privacy-policy ul.navi li:first-child {
  border-top: none;
 }
 #bgwhite .privacy-policy > div li {
  font-size: 14px;
 }
 #bgwhite .privacy-policy > div p {
  font-size: 14px;
 }
 #bgwhite .privacy-policy > div h2 {
  margin-bottom: 0.5em;
  font-size: 17px;
 }
 #bgwhite .privacy-policy > div .chart img {
		width: 100%;
	}
	#bgwhite .privacy-policy > div.public h3, #bgwhite .privacy-policy > div.public h4 {
  font-size: 14px;
 }
 #bgwhite .privacy-policy > div.procedure h3 {
  font-size: 15px;
 }
 #bgwhite .privacy-policy > div.procedure h4 {
  font-size: 16px;
 }
}