@charset "UTF-8";
body {
  font-size: 18px;
  line-height: 2.0;
}
.sp_br {
  display: none;
}
/* ------------ CONTENTS ------------ */
#contents section {
  margin-bottom: 180px;
}
#contents .content-width {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
}
#contents h2 {
  font-size: 56px;
  letter-spacing: 0.1em;
  margin-bottom: 80px;
}
#contents h2 small {
  font-size: 18px;
}
#contents .link {
	display: inline-block;
  position: relative;
  font-size: 12px;
  line-height: 1.2;
  padding-left: 30px;
}
#contents .link:before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  background: url("../img/creative/icon_link.svg") no-repeat center top/contain;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
#contents .link span {
  font-size: 28px;
  font-weight: bold;
}
#contents .link::after {
    content: "";
    display: block;
    position: relative;
    left: 2%;
    width: 98%;
    height: 10px;
    z-index: -1;
    transition: left 0.2s;
    top: -0.5em;
    background: #fca400;
}
#contents .link:hover::after{
	left: 2em;
}
/* ------------ PAGE - TITLE ------------ */
#pageSubTitle {
  position: absolute;
  right: 3.68vw;
  top: 50px;
  font-size: 14px;
  border-right: solid 2px #000000;
  padding-right: 1rem;
}
#pageTitle {
  font-size: 72px;
}
#pageTitle small {
  font-size: 18px;
}
/* ------------ INTRO ------------ */
#contents #intro p {
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.1em;
}
/* ------------ SURVEY ------------ */
#contents #survey .survey-blk {
    width: 820px;
    margin: 0 auto;
    position: relative;
}
#contents #survey ol li {
    display: flex;
}
#contents #survey li .l-clm {
    width: 215px;
}
#contents #survey li .r-clm {
    width: 545px;
    position: relative;
     margin-left: 20px;
}
#contents #survey li:first-child .r-clm {
    padding-bottom: 40px;
}
#contents #survey li .r-clm:before {
  content: "";
  display: block;
  width: 10px;
  height: 85%;
  position: absolute;
  left: 0;
  top: 40px;
  background: url("../img/marketing/survey_line.png") repeat-y center top;
}
#contents #survey li:last-child .r-clm:after {
  content: "";
    display: block;
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #7f7f7f;
  border-right: solid 2px #7f7f7f;
  -ms-transform:rotate(135deg);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  position: absolute;
  left: 1px;
    bottom: 5px;
}
#contents #survey li:first-child div div {
    border: solid 2px #000000;
    border-radius: 50%;
    width: 120px;
    height: 120px;
    font-weight: bold;
    position: relative;
    margin: 0 auto;
}
#contents #survey li:first-child div div:after {
    content: '';
    display: block;
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #000000;
  border-right: solid 2px #000000;
  -ms-transform: translateX(-50%) rotate(135deg);
  -webkit-transform:translateX(-50%)  rotate(135deg);
  transform:translateX(-50%)  rotate(135deg);
  position: absolute;
  left: 50%;
    bottom: 24px;
}
#contents #survey li:first-child .txt {
    display: block;
    font-size: 14px;
    position: relative;
    top: 50%;
    transform: translateY(-45%);
    line-height: 1.4;
}
#contents #survey li:first-child .txt span {
    font-size: 12px;
}

#contents #survey li .attitude span  {
    display: block;
    height: 50px;
    background-color: #FFF;
    position: relative;
    font-size: 16px;
    letter-spacing: 0.05em;
    font-weight: bold;
    line-height: 50px;
}
#contents #survey li .attitude span:after  {
    content: "";
    display: block;
    width: 0;
height: 0;
border-style: solid;
border-width: 7px 0 7px 7px;
border-color: transparent transparent transparent #ffffff;
    position: absolute;
    right: -7px;
    top: 50%;
    transform: translateY(-50%);
}

#contents #survey li dl.product {
    text-align: left;
    padding-bottom: 90px;
}

#contents #survey li dl.product dt {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0.05em;
    position: relative;
    padding-left: 25px;
	white-space: nowrap;
}
#contents #survey li dl.product dt span {
  background: linear-gradient(transparent 60%, #FFF 0%);
}
#contents #survey li dl.product dt small{
	font-size: 65%;
}
#contents #survey li dl.product dt:before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 50px;
    border: solid 2px #000000;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
#contents #survey li.examination dl.product {
    padding-bottom: 35px;
}
#contents #survey li.examination dl.product dt:before {
    border: none;
    background-color: #000000;
    left: 2px;
}
#contents #survey li dl.product dt.l-dt {
    margin-top: 40px;
}
#contents #survey li dl.product dt.l-dt:before {
    display: none;
}
#contents #survey li dl.product dd {
    font-size: 14px;
    padding-left: 25px;
}
#contents #survey .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 760px;
}
#contents #survey .image li {
    position: absolute;
}
#contents #survey .image li:nth-child(1) {
    left: 640px;
    top: 230px;
    width: 150px;
}
#contents #survey .image li:nth-child(2) {
    left: 700px;
    top: 470px;
    width: 200px;
}
#contents #survey .image li:nth-child(2) {
    left: 450px;
    top: 680px;
    width: 270px;
}
#contents #survey .image li:nth-child(3) {
    left: 640px;
    top: 1310px;
    width: 180px;
}
#contents #survey .image li:nth-child(4) {
    left: -40px;
    top: 1580px;
    width: 220px;
}
#contents #survey .image li img {
    width: 100%;
    height: auto;
}
/* ------------ MARKETING EXAMPLE ------------ */
/*
#contents #marketing-example h2 {
  font-size: 42px;
  font-weight: bold;
  border-bottom: solid 2px #000000;
  padding: 0 40px 10px;
  margin-bottom: 40px;
}
*/
#contents #marketing-example h2 span {
  font-size: 16px;
}
#contents #marketing-example .example-blk {
    width: 760px;
    margin: 0 auto 130px;
}
#contents #marketing-example .example-blk .ttl {
    display: flex;
    justify-content: space-between;
}
#contents #marketing-example .example-blk .ttl h3 {
    font-size: 14px;
    font-weight: bold;
}
#contents #marketing-example .example-blk .ttl h3 span {
    font-family: "Avenir Next", Verdana, Geneva, "sans-serif";
    font-size: 16px;
}
#contents #marketing-example .example-blk .ttl ul {
    display: flex;
}
#contents #marketing-example .example-blk .ttl ul li span {
    display: block;
    background-color: #000000;
    color: #FFF;
    font-size: 15px;
    line-height: 40px;
    height: 40px;
    padding: 0 20px;
}
#contents #marketing-example .example-blk .ttl ul li:first-child {
    padding-right: 32px;
    margin-right: 12px;
    position: relative;
}
#contents #marketing-example .example-blk .ttl ul li:first-child:after {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background: url("../img/marketing/example_mark.svg") no-repeat center top/cover;
    position: absolute;
    top: 11px;
    right: 0;
}
#contents #marketing-example .example-blk dl {
    text-align: left;
    font-size: 16px;
}
#contents #marketing-example .example-blk dt {
    font-size: 34px;
    font-weight: bold;
    letter-spacing: 0.05em;
    margin: 10px 0;
}
#contents #marketing-example .example-blk dt span {
  font-weight: bold;
  background: linear-gradient(transparent 70%, #FFF 0%);
}

/* CONTACT LINK */
#contents #marketing-example .linkContact .link {
	font-size: 24px;
}
#contents #marketing-example .linkContact small {
	display: block;
	font-size: 16px;
}


/* ------------ SELF INSPECTION ------------ */
#contents #self-inspection .inspection-blk {
    width: 640px;
    background: url("../img/marketing/inspection_icon.svg") no-repeat left 40px/22%;
    padding-left: 160px;  
    text-align: left;
    box-sizing: border-box;
    margin: 0 auto;
}
#contents #self-inspection .inspection-blk h2 {
    font-size: 18px;
    margin-bottom: 0;
}
#contents #self-inspection .inspection-blk p {
    font-size: 14px;
}
/* ------------ CREATIVE ------------ */
#contents #creative {
    padding-bottom: 100px;
}

#contents #creative .link {
  display: inline-block;
  padding-left: 40px;
  margin-bottom: 50px;
}
#contents #creative .link span {
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
#contents #creative .inner {
  display: flex;
  justify-content: space-around;
}
#contents #creative .image {
  width: 280px;
  position: relative;
}
#contents #creative .image .pic01 {
	position: absolute;
	left: 90px;
	top: -10px;
	width: 240px;
	z-index: 1;
}
#contents #creative .image .pic02 {
	position: absolute;
	right: -120px;
	top: 135px;
	width: 180px;
}
#contents #creative .txt {
  width: 500px;
  text-align: left;
  font-weight: bold;
  font-size: 18px;
}
#contents #creative .txt span {
  font-size: 24px;
}

/*---------------------------------------------
  SmatrPhone/Tablet
---------------------------------------------*/
@media screen and (max-width:1100px) {
	#contents #creative .image{
		width: 35vw;
	}
	#contents #creative .image .pic01{
		left: auto;
		right: 5vw;
	}
	#contents #creative .image .pic02{
		left: auto;
		right: -2vw;
	}
	#contents #creative .txt{
		width: 55vw;
	}
}
@media screen and (max-width:1000px) {
  #contents .content-width {
    width: 90%;
  }
    #pageTitle {
    margin: 12vh auto 6vh auto;
    line-height: 1.3;
    font-size: 10vw;
    letter-spacing: 0.05em;
	}
	#contents #marketing-example .example-blk{
		width: auto;
	}
}
@media screen and (max-width:800px) {
    .pc_br {
  display: none;
}
  .sp_br {
    display: inline;
  }
  #contents section {
    margin-bottom: 25vw;
  }
      #contents h2 {
    font-size: 10vw;
    margin-bottom: 5%;
  }
  #contents h2 small {
    font-size: 3vw;
  }
  #contents .blk {
    width: 100%;
  }
  /* ------------ PAGE - TITLE ------------ */
  #pageTitle small {
    font-size: 2.25vw;
  }
  #pageSubTitle {
    top: 0;
  }
    /* ------------ SURVEY ------------ */
#contents #survey .survey-blk {
    width: 100%;
}
    #contents #survey li .attitude span  {
    height: inherit;
    line-height: 1.2;
    padding: 10px;
}
    #contents #survey li dl.product dt:before {
    top: 0.85em;
    transform:none;
}
    #contents #survey .image {
        display: none;
    }
/* ------------ MARKETING EXAMPLE ------------ */
  #contents #marketing-example h2 {
    font-size: 7vw;
    padding: 0 0.8em 10px;
      margin-bottom: 5%;
  }
  #contents #marketing-example h2 span {
    font-size: 2vw;
  }
#contents #marketing-example .example-blk {
    width: 100%;
    margin: 0 auto 16%;
}
#contents #marketing-example .example-blk .ttl {
    display: block;
}
#contents #marketing-example .example-blk .ttl h3 {
    font-size: 16px;
    text-align: left;
    margin-bottom: 1%;
}
#contents #marketing-example .example-blk dt {
    font-size: 26px;
    line-height: 1.6;
}

	/* CONTACT LINK */
#contents #marketing-example .linkContact .link {
	font-size: 4.2vw;
}
#contents #marketing-example .linkContact small {
	font-size: 3.5vw;
}

    /* ------------ SELF INSPECTION ------------ */
    #contents #self-inspection .inspection-blk {
    width: 100%;
        padding-left: 30%;  
}
  /* ------------ CREATIVE ------------ */
	#contents #creative{
		margin-bottom: 0;
	}
  #contents #creative .link {
    padding-left: 5%;
    margin-bottom: 6.25%;
  }
     #contents #creative .link span {
  background: linear-gradient(transparent 60%, #fca400 0%);
}
    #contents #creative .link::after {
        display:none;
    }
  #contents #creative .inner {
    display: block;
  }
  #contents #creative .image {
	width: 100%;
	height: auto;
	  min-height: none;
	position: relative;
	display: flex;
	justify-content: space-between;
	  align-items: flex-start;
	margin-bottom: 3.75%;
  }
  #contents #creative .image img {
	 width: 43vw !important;
    height: 28.5vw !important;
	}
  #contents #creative .image .pic01 {
		position: relative;
		left: 0;
		top: 0;
  }
  #contents #creative .image .pic02 {
		position: relative;
		right: 0;
		top: 0;
  }
  #contents #creative .txt {
    width: 100%;
    text-align: center;
  }
}
@media screen and (max-width:480px) {
    #contents #creative .link span {
        font-size: 25px;
    }
	#contents #marketing-example .example-blk dl,
	#contents #self-inspection .inspection-blk p{
		font-size: 3.5vw;
	}
    /* ------------ INTRO ------------ */
#contents #intro p {
  font-size: 18px;
}
   /* ------------ SURVEY ------------ */
#contents #survey .survey-blk {
    width: 100%;
}
#contents #survey ol li {
    display: block;
}
#contents #survey li .l-clm {
    width: 100%;
}
#contents #survey li .r-clm {
    width: 100%;
     margin-left: 0;
}
#contents #survey li:first-child {
    display: none;
}
#contents #survey li .r-clm:before {
    display: none;
}
    #contents #survey li:last-child .r-clm:after {
        display: none;
    }
#contents #survey li .attitude span  {
	width: 12em;
	height: inherit;
	margin: 0 auto;
	padding: 10px;
	line-height: 1.2;
}
#contents #survey li .attitude span:after  {
border-width: 10px 7px 0 7px;
border-color: #ffffff transparent transparent transparent;
    right: 50%;
    top: 96%;
    transform: translateX(50%) translateY(0);
}
    #contents #survey li.examination .attitude {
        margin-bottom: 10%;
    }
#contents #survey li.examination .attitude span:after  {
    display: none;
}
#contents #survey li dl.product {
    margin-top: 2%;
    padding-bottom: 10%;
}
#contents #survey li dl.product dt {
    font-size: 7vw;
    padding-left: 0;
    text-align: center;
    line-height: 1.8;
    margin-bottom: 2%;
}
#contents #survey li dl.product dt:before {
    display: none;
}
#contents #survey li.examination dl.product {
    display: none;
}
#contents #survey li dl.product dt.l-dt {
    margin-top: 5%;
}
#contents #survey li dl.product dd {
    padding-left: 0;
}
/* ------------ MARKETING EXAMPLE ------------ */
#contents #marketing-example .example-blk .ttl ul li span {
    line-height: 1.4;
    height: inherit;
    padding: 10px 10px;
}
    /* ------------ SELF INSPECTION ------------ */
	#contents #self-inspection .inspection-blk {
		width: 100%;
		padding-left: 0;
		background-position: 0 0;
		background-size: 15vw;
	}
	#contents #self-inspection .inspection-blk h2 {
		 margin: 5vw 0 7vw 17vw;
	}
  /* ------------ CREATIVE ------------ */
  #contents #creative .link {
      font-size: 32px;
    padding-left: 12%;
      text-align: left;
  }
  #contents #creative .txt {
    text-align: center;
      line-height: 1.6;
      font-size: 3.5vw;
  }
    #contents #creative .txt span {
        font-size: 4.5vw;
    }
  
}