@charset "utf-8";

@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500&display=swap');
/*------------------
共通
------------------*/
html{
    scroll-behavior: smooth;
}
/** {
  transition: all 0.8s 0s ease-in;
}*/
body {
  width: 100%; /*ページ全体の幅は100%と指定する*/
  height: 100%;
  color: #fff;
  /*background-color: rgb(2, 2, 233);*/
  background-color: #4d4d4d;
  font-size: 11pt;
  /*font-family:"ヒラギノ角ゴ ProN W3",
    "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo,sans-serif;*/
    
  font-family:'Playfair Display',"Noto Sans JP", sans-serif;
    
  padding:0;
  margin:0;
}
img {
  max-width: 100%;
}
.main {
  position: relative;
  margin: 0 auto;
  padding-top:15px;
  padding-bottom:150px;
  text-align: left; /* 中身を左側表示に戻す */
  max-width: 960px; /* 幅を決定する */
  background-color: #4d4d4d;
  min-height:calc(100vh - 80px);
  height: 100%;
  /*border:5px solid red;*/
}



 
 
a {
text-underline-offset: 0.2em;
}

a:link {
  color: #fff;
}
a:visited {
  color: #fff;
}
a:active {
  color: #09f;
}
a:hover {
  color: #09f;
}
.clear {
  clear: both;
}
.f_left {
  float: left;
}
.f_right {
  float: right;
}
.page_title {
  margin: 10px 0 0 0;
}
.sub_title_label1 {
  margin: 0 10px 10px 0;
  padding: 5px;
  background: #fff;
  color: #000;
  line-height: 1.3em;
  border-left: 5px solid #000;
  border-bottom: 2px solid #000;
}
.sub_title_label2 {
  margin: 10px;
  padding: 5px;
  background: #2772fd;
  color: #fff;
  line-height: 1.3em;
  font-weight: bold;
  border-left: 5px solid #1c0dab;
  border-right: 5px solid #1c0dab;
}
.sub_title_label2_95 {
  margin: 0 0 10px 0;
  padding: 5px;
  background: #2772fd;
  color: #fff;
  line-height: 1.3em;
  font-weight: bold;
  border-left: 5px solid #1c0dab;
  border-right: 5px solid #1c0dab;
  width: 95%;
}
.sub_title_label3 {
  margin: 10px;
  padding: 5px;
  background: #2772fd;
  color: #fff;
  line-height: 1.3em;
  font-weight: bold;
}
.small_text1 {
  color: #4622ce;
  font-size: 10pt;
}
.f10pt_blue {
  /*color: #6d88f9;
  color: #66b4ff;*/
  font-size: 11pt;
}
.text_blue {
  /*color: #5d70d9;*/
}
.kadomaru1 {
  min-width: 160px;
  min-height: 90px;
  background: #ececec;
  color: #000;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
  padding: 10px;
  line-height: 1.5em;
  margin: 5px;
  float: left;
  font-family:"Noto Sans JP", sans-serif;
}
.kadomaru2 {
  min-width: 160px;
  min-height: 90px;
  background: #fdfce8;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
  padding: 10px;
  border: 1px dotted #cecece;
  line-height: 1.5em;
  margin: 5px;
  float: left;
}
.kadomaru3 {
  width: 270px;
  min-height: 90px;
  background: #ececec;
  color: #000;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
  padding: 10px;
  line-height: 1.5em;
  margin: 5px;
  float: left;
}
.kadomaru1_3 {
  max-width: 280px;
  min-height: 90px;
  background: #ececec;
  border-radius: 10px; /* CSS3草案 */
  -webkit-border-radius: 10px; /* Safari,Google Chrome用 */
  -moz-border-radius: 10px; /* Firefox用 */
  padding: 10px;
  border: 1px dotted #6d88f9;
  line-height: 1.5em;
  margin: 5px;
  float: left;
  color:black;
}
.label_black100 {
  background: #555;
  font-size: 12pt;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.07em;
  padding: 5px;
  margin:10px;
  border-left: 5px solid #000;
  border-right: 5px solid #000;
}
.label_black {
  background: #000;
  font-size: 12pt;
  color: #fff;
  font-weight: bold;
  padding: 5px;
  float: left;
}
.label_red {
  background: #ff000c;
  font-size: 12pt;
  color: #fff;
  font-weight: bold;
  padding: 5px;
}
.label_per {
  width: 96%;
  background: #9090f9;
  font-size: 12pt;
  color: #fff;
  font-weight: bold;
  padding: 5px;
}
.label_orange {
  width: 96%;
  background: #f49001;
  font-size: 12pt;
  color: #fff;
  font-weight: bold;
  padding: 5px;
}
.label_gray {
  width: 96%;
  background: #ededed;
  font-size: 12pt;
  color: #fff;
  font-weight: bold;
  padding: 5px;
}
.label_green {
  width: 96%;
  background: #0f6903;
  font-size: 12pt;
  color: #fff;
  font-weight: bold;
  padding: 3px;
}
.list_midasi {
  font-size: 13pt;
  /*color: #5d70d9;*/
  font-weight: bold;
  margin: 5px 5px 10px 10px;
}
.mar20 {
  margin: 10px 10px 10px 20px;
}
/*------------------
共通　コンテンツ ブロック
------------------*/
.block1_3 {
  min-width: 280px;
  max-width: 315px;
  line-height: 1.3em;
  float: left;
  margin: 10px;
}
.block2_3 {
  max-width: 600px;
  min-width: 280px;
  line-height: 1.3em;
  float: left;
  margin: 10px;
}
.block1 {
  max-width: 960px;
  min-width: 150px;
  line-height: 1.3em;
  float: left;
  margin: 20px 10px 20px 10px;
}
.block1_2 {
  max-width: 460px;
  min-width: 150px;
  line-height: 1.3em;
  float: left;
  margin: 10px;
}
.block1_2R {
  max-width: 460px;
  min-width: 150px;
  line-height: 1.3em;
  float: right;
  margin: 2px;
}
/*------------------
共通　コンテンツ ブロック センター
------------------*/
.block1_3_center {
  min-width: 280px;
  max-width: 315px;
  line-height: 1.3em;
  float: left;
  margin: 10px 2px 2px 2px;
  background-color: #ff0000;
  text-align: center;
}
.block2_3_center {
  max-width: 630px;
  min-width: 280px;
  line-height: 1.3em;
  float: left;
  margin: 10px 2px 2px 2px;
  background-color: #ffffff;
  text-align: center;
}
.block1_center {
  max-width: 960px;
  min-width: 150px;
  line-height: 1.3em;
  float: left;
  margin: 10px 2px 2px 2px;
  background-color: #ffffff;
  text-align: center;
}
.block1_center2 {
  max-width: 960px;
  min-width: 150px;
  float: left;
  margin: 0px;
  background-color: #ffffff;
  text-align: center;
}
*/------------------
  共通　コンテンツ
  枠付ブロック
  ------------------*/
  .waku2_3 {
  max-width: 600px;
  min-width: 150px;
  line-height: 1.3em;
  float: left;
  margin: 10px 2px 2px 2px;
  padding: 5px;
  border: 1px dotted #fff;
}
.waku600 {
  width: 97%;
  max-width: 600px;
  min-width: 150px;
  line-height: 1.3em;
  float: left;
  margin: 10px 0 5px 2px;
  padding: 5px;
  border: 1px dotted #fff;
}
.waku1 {
  max-width: 960px;
  min-width: 150px;
  line-height: 1.3em;
  float: left;
  margin: 10px 10px 5px 10px;
  padding: 5px;
  border: 1px dotted #fff;
}
.waku1_2 {
  position: relative;
  max-width: 430px;
  min-height:160px;
  line-height: 1.3em;
  float: left;
  margin: 10px 2px 2px 10px;
  padding: 10px;
  border: 1px dotted #fff;
}
.waku_block1_2 {
  position: relative;
  max-width: 450px;
  width: 95%;
  line-height: 1.3em;
  float: left;
  margin: 10px 2px 2px 2px;
  padding: 5px;
}
.waku320 {
  width: 320px;
  line-height: 1.3em;
  float: left;
  margin: 10px 2px 2px 2px;
  padding: 5px;
  border: 1px dotted #fff;
}
.waku1_3 {
  width: 320px;
  line-height: 1.3em;
  float: left;
  margin: 10px 0px 0px 10px;
  padding: 5px;
  border: 1px dotted #fff;
}
/*------------------
写真　コンテンツ ブロック
------------------*/
.photo_f_left {
  max-width: 100%;
  float: left;
  color: #000;
  font-size: 9pt;
  line-height: 1.3em;
  padding: 5px;
}

/*------------------
サブメニュー置き場
------------------*/
.sub_menu_bace {
  width: 300px;
  float: left;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 120px;
  padding: 10px;
  /*background-color:#e1f3fd;*/
  text-align: center;
}
/*------------------
トップ
------------------*/
.main dt {
  width: 95%;
  /*color: #031e85;*/
  /*font-weight: bold;*/
  line-height: 1.5em;
  padding: 0;
  margin: 0;
}
.main dd {
  width: 95%;
  line-height: 1.5em;
  padding: 0;
  margin: 0 0 0 20px;
}
.top_topics1 {
  position: relative;
  max-width: 445px;
  width: 95%;
  line-height: 1.3em;
  float: left;
  margin: 3px;
  padding: 10px 10px 10px 10px;
  border: 2px dotted #453696;
  color: #333;
  text-align: left;
  list-style-type: none;
}
.top_topics2 {
  position: relative;
  max-width: 445px;
  line-height: 1.3em;
  float: left;
  margin: 10px 10px 3px 10px;
  padding: 10px 10px 10px 10px;
  border: 1px dotted #fff;
  text-align: left;
  list-style-type: none;
}
.product_bnr {
  min-width: 370px;
  text-align: center;
}
.product_bnr img{
  max-width: 220px;
}
/*------------------
会社概要
------------------*/
.gaiyou_list {
  max-width: 960px;
  min-width: 280px;
  line-height: 1.3em;
  float: left;
  margin: 15px 0 15px 10px;

}
.gaiyou_list th {
  width: 20%;
  line-height: 1em;
  margin: 0 0 0 3px;

}
.gaiyou_list td {
  line-height: 1.3em;
  margin: 0 0 0 3px;
}
.gaiyou_list2 td {
  line-height: 1.3em;
  margin: 0 0 0 3px;
  border: 0px;
}
.gaiyou_list li {
  list-style: square outside;
  margin: 0;
}
.gaiyou_list ul {
  margin: 0;
  padding: 0 0 0 15px;
}
.map {
  max-width: 610px;
  min-width: 150px;
  line-height: 1.5em;
  float: left;
  margin: 2px;
  padding: 1px;
  text-align: center;
}
.enkaku_list {
  max-width: 960px;
  min-width: 280px;
  line-height: 1.3em;
  /*float: left;*/
  margin: 15px 0 15px 10px;
}
.enkaku_list th {
  width: 70px;
  line-height: 1em;
  margin: 0 0 0 3px;
  font-weight: bold;
  text-align: center;
}
.enkaku_list td {
  line-height: 1.3em;
  margin: 0 0 0 3px;
}
.form_list {
  position: relative;
  margin: 0 auto;
  width: 80%;
  min-width: 320px;
  line-height: 1.3em;
  margin: 15px 0 15px 0px;
  background-color:white;
  color:black;
  padding:15px;
}

.form_list th {
  color: #0346a0;
  line-height: 1.3em;
  margin: 0 0 0 3px;
  background-color: #efefef;
  font-weight: bold;
  text-align: left;
  width: 80%;
}
.form_list td {
  line-height: 1.3em;
  padding: 10px;
  text-align: left;
  width: 80%;
}
/*------------------
OGM FAQ
------------------*/
.faq1 {

  padding-left: 10pt;
  margin: 10px;
  line-height: 20px;
  color: #000;
  background-color: #fff;
  max-width:945px;
}
.faq2 {
  padding-left: 20px;
  margin-right: 10px;
  line-height: 18px;
  color: #fff;
  margin-top: 10px;
}
/*------------------
OGM 
------------------*/
.table1 {
  width: 90%;
  max-width: 920px;
}

.table1 th {
  width: 14%;
  border: 1px solid #aaafe6;
}
.table1 td {
  width: 43%;
  border: 1px solid #aaafe6;
}

.table2 {
  width: 90%;
  max-width: 920px;
}

.table2 th {
  width: 20%;
  border: 1px solid #cecece;
  /*background-color: #b7cfe6;*/
}
.table2 td {
  width: 100%;
  border: 1px solid #cecece;
}
/*------------------
DIGTAL FASHION SHOW
------------------*/
.dfs_img {
  float: left;
  width: 130px;
  margin: 2px;
  text-align: center;
}
.dfs_img img {
  border: 1px solid #cecece;
}
/*------------------
ビジョン　マジックミラー
------------------*/
.dt_blue {
  width: 96%;
  padding-left: 10pt;
  margin-top: 5px;
  line-height: 20px;
  color: #444;
  background-color: #ddf0ff;
}

.dt_blue a{
    color: #444;
}

.dt_darkblue {
  width: 96%;
  padding-left: 10pt;
  margin-top: 5px;
  line-height: 20px;
  color: #444;
  background-color: #cccffe;
}
.dt_pink {
  width: 96%;
  padding-left: 10pt;
  margin-top: 5px;
  line-height: 22px;
  color: #444;
  background-color: #f7d4fe;
}
.dt_pink a{
    color: #444;
}
.dd2 {
  padding-left: 20pt;
  line-height: 18px;
  color: #fff;
  margin-top: 5px;
}
/*-----------------------
テーブル
--------------------------*/

.table_body table {
  width: 100%;
  max-width: 960px;
  line-height: 1.3em;
}
.table_body th {
  width: 19%;
  font-weight: bold;
}
.table_body td {
  width: 9%;
  text-align: center;
}
.table_body tr1 {
  background-color: #eee;
}
.table_dousa table {
  width: 100%;
  max-width: 960px;
  line-height: 1.3em;
}
/*-----------------------
追加
--------------------------*/
.ssfooter {
text-align:center;
/*margin-top:25px;*/
position: absolute;
bottom:20px;
left:calc(50% - 150px);
}
.ssfooter a{
font-size:12px;
font-weight:bold;
text-decoration: none;
display:inline-block;
margin:5px 5px;
}

.ssTopLeftLogo{
margin-left:5px;
}

.ssTopMainVisual{
margin:100px 10px 10px 10px ;
}



.ssMainTitle{
font-size:28px;
color:#fff;
margin-left:10px;
margin-top:18px;
margin-bottom:18px;
}
.ssProductTitle{
  font-size:26px;
  color:#fff;
  padding-bottom:20px;
  display: inline-block;
  }
.ssFusenTag {
    text-decoration: none;
    padding: 0.1rem;
    background: #000;
    border-left: solid 6px #eee;
    color: #fff;
    font-size:18px;
    font-weight:bold;
    padding-left:4px;
    margin-left:10px;
    margin-top:10px;
    margin-bottom:5px;
    /*box-shadow: 2px 2px 2px rgba(254, 254, 254, 0.11);*/
    width:290px;
    max-width:90vw;
    line-height:1.5rem;
}
.topSubTitle{
	display:inline-block;
	font-size:22px;
	border-left:8px solid #ddd;
	border-bottom:2px solid #cdcdcd;
	margin-left:10px;
	padding-left:5px;
	padding-right:5px;
	margin-top:20px;
	min-width:140px;
	
}

.ssToiawase {
    /*text-decoration: solid underline #444 2px;*/
	/*text-underline-offset: 0.3em;*/
}

.ssSendButton {
	cursor:pointer;
	border:2px solid #cdcdcd;
	max-width:200px;
	line-height:2rem;
	border-radius:1.5rem;
  text-align:center;
}
.ssSendButton:hover {
		border:2px solid #888;
}



.ssLargeBtn {
	display:inline-block;
	text-decoration: none;
	cursor:pointer;
	border:2px solid #1e90ff;
	min-width:290px;
	line-height:3rem;
	border-radius:1.5rem;
  font-size:1.3rem;
	font-weight:bold;

}
.ssLargeBtn:hover {
	border:2px solid #66b4ff;
    color:dodgerblue;
    background-color:#333;
}
.ssLargeFont{
  font-size:1.2rem;
	font-weight:bold;
  color:#fff;
}
.ssLSXBtn {
 display:inline-block;
 width:260px;
 height:3rem;
 background-color:#fff;
 text-decoration: none;
 line-height:3rem;
 color:#444;
 font-size:1.2rem;
 font-weight:bold;
 border-radius:5px;
 margin:3px;
 box-shadow: 1px 1px 1px 1px rgba(255,255,255,0.88);
}
.ssLSXBtn:visited,.ssLSXBtn:link {
 color:#444;
}
.ssLSXBtn:hover {
 text-decoration: underline;
 text-underline-offset: 0.25em;
}


.ssLSCBtn {
 display:inline-block;
 width:140px;
 height:2rem;
 background-color:#fff;
 text-decoration: none;
 line-height:2rem;
 color:#444;
 font-size:0.8rem;
 font-weight:bold;
 border-radius:5px;
 margin:3px;
 box-shadow: 1px 1px 1px 1px rgba(255,255,255,0.88);
}
.ssLSCBtn:visited,.ssLSCBtn:link {
 color:#444;
}
.ssLSCBtn:hover {
 text-decoration: underline;
 text-underline-offset: 0.25em;
}



.ssLSCSubBtn {
 display:inline-block;
 min-width:140px;
 height:2rem;
 line-height:2rem;
 background-color:#fff;
 text-decoration: none;
 color:#444;
 font-size:0.8rem;
 font-weight:bold;
 margin:1px 0px;
 padding:0px 3px;
 box-shadow: 1px 1px 1px 1px rgba(255,255,255,0.88);
}
.ssLSCSubBtn:visited,.ssLSCSubBtn:link {
 color:#444;
}
.ssLSCSubBtn:hover {
 text-decoration: underline;
 text-underline-offset: 0.25em;
}















.center {
  text-align:center;
  /*margin:0 auto;*/
}
.left {
  text-align:left;
}
.right {
  text-align:right;
}
.fcenter {
  display: flex;
  justify-content: center;
}

.block3 {
margin: 10px;
}
.block3 img{
  margin: 10px;
  }
/* */
.block3,.topics_write,.gaiyou_list,.zoomAnim {
  animation: zoomIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
}


@keyframes zoomIn {
  0% {
    transform: scale(0.8);
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
/* */
.form_list {
  animation: slideIn 1s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
}
 
@keyframes slideIn {
  0% {
    transform: translateX(180px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
  }
  40%,100% {
    opacity: 1;
  }
}
 

/*
body {
    background: linear-gradient(270deg, #e1faf4, #e2e5fb, #fae7f4);
    background-size: 600% 600%;

    -webkit-animation: AnimationName 10s ease infinite;
    -moz-animation: AnimationName 10s ease infinite;
    animation: AnimationName 10s ease infinite;
}

@-webkit-keyframes AnimationName {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@-moz-keyframes AnimationName {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
@keyframes AnimationName {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
*/


.gotop{
    display: block;
    width: 40px;
    height: 40px;
    box-sizing: border-box;
    background: #FFF;
    border: 1px solid #999;
    border-radius:40px;
    padding-top: 30px;
    text-align: center;
    letter-spacing: -1px;
    font-size: 85%;
    text-decoration: none;
    color: #333;
    opacity: 0.5;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 10000;
}
.gotop::before{
    content: "";
    display: block;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    width: 25%;
    height: 25%;
    top: 43%;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    transform: rotate(-45deg);
}
.gotop:hover{
    opacity: 1;
}
@media(max-width:500px){
    .gotop{
        width: 40px;
        height: 40px;
        text-indent: -9999px;
        opacity: 1;
        border: none;
        background: none;
        bottom: 10px;
        right: 10px;
    }
    .gotop::before{
        bottom: 0;
    }
}