@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

body {
  margin: 0;
  font-family: 'Noto Sans JP', sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  line-height: 0;
  background: hsl(0, 0%, 100%);
}

h1, h2, h3, h4, h5, h6, p {
  margin: 0;
}

ul, ol, dl, menu {
  list-style: none;
  margin: 0; padding: 0;
}

ol {
  counter-reset: counter;
}
ol > li {
  counter-increment: counter;
}

em {
  font-style: normal;
}



header {
  display: grid;
  grid-template: auto / auto auto;
  align-content: center;
  width: 100%; height: calc(116 / 750 * 100vw);
  box-sizing: border-box;
  position: sticky;
  inset: 0 auto auto 0; z-index: 1;
  padding: 0 calc(35 / 750 * 100vw) 0 calc(46 / 750 * 100vw);
  background: hsl(0, 0%, 100%);
}

header > h1 {
  display: flex;
  align-content: center;
  width: calc(100 / 750 * 100vw);
}
header > h1 > img {
  width: 100%; height: auto;
}

header > p {
  display: none;
}

header > menu {
  display: flex;
  gap: calc(15 / 750 * 100vw);
  justify-self: end;
}
header > menu > li > a {
  display: flex;
  height: calc(72 / 750 * 100vw);
  box-sizing: border-box;
  overflow: hidden;
  line-height: 1;
  white-space: nowrap;
  text-indent: 100%;
  border-radius: calc(72 / 2 / 750 * 100vw);
  box-shadow: 0 calc(3 / 750 * 100vw) calc(8 / 750 * 100vw) hsla(25, 90%, 56%, 0.3);
}
header > menu > li:nth-of-type(1) > a {/* -- 資料ダウンロード */
  width: calc(90 / 750 * 100vw);
  background: hsl(25, 90%, 56%) url('../image/index_header_02_1.svg') center / calc(32 / 750 * 100vw) no-repeat;
}
header > menu > li:nth-of-type(2) > a {/* -- お問い合わせ */
  width: calc(90 / 750 * 100vw);
  background: hsl(0, 0%, 100%) url('../image/index_header_02_2.svg') center / calc(32 / 750 * 100vw) no-repeat;
  border: calc(3 / 750 * 100vw) solid hsl(25, 90%, 56%);
}



#cover {
  width: 100%;
  padding: calc(260 / 750 * 100vw) 0 0;
  background: url('../image/index_cover_02_sp.webp') right top / calc(624 / 750 * 100vw) no-repeat,
    linear-gradient(hsl(219, 100%, 63%), hsl(0, 0%, 100%) calc(912 / 1289 * 100%)),
    hsl(0, 0%, 100%);
}

#cover > hgroup {
  margin: 0 0 0 calc(35 / 750 * 100vw);
}
#cover > hgroup > p {
  font-weight: 900;
  color: hsl(220, 100%, 64%);
}
#cover > hgroup > p:nth-of-type(1) {/* -- 品質の“症状”を診断し、改善策を明確にする。 */
  position: relative;
  padding: 0 0 0 calc(10 / 750 * 100vw);
  z-index: 0;
  font-size: calc(50 / 750 * 100vw); line-height: calc(90 / 750 * 100vw);
}
#cover > hgroup > p:nth-of-type(1)::before {
  content: '';
  display: block;
  width: calc(618 / 750 * 100vw); height: calc(175 / 750 * 100vw);
  position: absolute;
  inset: calc(8 / 750 * 100vw) auto auto 0; z-index: -1;
  background: hsl(0 , 0%, 100%);
  clip-path: polygon(0% 0%, 100% 0%, 100% calc(92 / 175 * 100%), calc(550 / 618 * 100%) calc(92 / 175 * 100%), calc(550 / 618 * 100%) 100%, 0% 100%);
}
#cover > hgroup > p:nth-of-type(1) > em {
  font-size: calc(60 / 750 * 100vw);
}
#cover > hgroup > p:nth-of-type(2) {/* -- ソフトウェアテストのプロによる品質診断サービス */
  width: fit-content;
  margin:calc(5 / 750 * 100vw) 0 0; padding: 0 calc(20 / 750 * 100vw);
  font-size: calc(28 / 750 * 100vw); line-height: calc(51 / 750 * 100vw);
  background: hsl(0 , 0%, 100%);
}
#cover > hgroup > h2 {
  width: calc(680 / 750 * 100vw);
  margin: calc(59 / 750 * 100vw) 0 0;
}
#cover > hgroup > h2 > img {
  width: 100%; height: auto;
}

#cover > ul {
  display: flex;
  flex-wrap: wrap;
  gap: calc(28 / 750 * 100vw);
  justify-content: center;
  width: calc(680 / 750 * 100vw);
  margin: calc(32 / 750 * 100vw) auto 0;
}
#cover > ul > li {
  width: calc(324 / 750 * 100vw);
}
#cover > ul > li > img {
  width: 100%; height: auto;
}

#cover > menu {
  display: flex;
  flex-wrap: wrap;
  gap: calc(50 / 750 * 100vw);
  justify-content: center;
  width: calc(680 / 750 * 100vw);
  margin: calc(56 / 750 * 100vw) auto 0;
}
#cover > menu > li > a {
  display: flex;
  gap: calc(26 / 750 * 100vw);
  justify-content: center; align-items: center;
  width: calc(543 / 750 * 100vw); height: calc(132 / 750 * 100vw);
  box-sizing: border-box;
  font-weight: 700;
  font-size: calc(37 / 750 * 100vw); line-height: 1;
  text-decoration: none;
  border-radius: calc(132 / 2 / 750 * 100vw);
}
#cover > menu > li:nth-of-type(1) > a {/* -- 資料ダウンロード */
  color: hsl(0, 0%, 100%);
  background: hsl(25, 90%, 56%);
}
#cover > menu > li:nth-of-type(1) > a::before {
  content: '';
  display: inline-block;
  width: calc(52 / 750 * 100vw); height: calc(44 / 750 * 100vw);
  background: url('../image/index_cover_05_1.svg') center / calc(52 / 750 * 100vw) no-repeat;
}
#cover > menu > li:nth-of-type(2) > a {/* -- お問い合わせ */
  color: hsl(25, 90%, 56%);
  background: hsl(0, 0%, 100%);
  border: calc(4 / 750 * 100vw) solid hsl(25, 90%, 56%);
}
#cover > menu > li:nth-of-type(2) > a::before {
  content: '';
  display: inline-block;
  width: calc(53 / 750 * 100vw); height: calc(42 / 750 * 100vw);
  background: url('../image/index_cover_05_2.svg') center / calc(53 / 750 * 100vw) no-repeat;
}



#issue {
  width: 100%;
  padding: calc(137 / 750 * 100vw) 0 0;
}

#issue > h3 {
  font-weight: 500;
  font-size: calc(24 / 750 * 100vw); line-height: calc(30 / 750 * 100vw);
  text-align: center;
  color: hsl(220, 100%, 20%);
}
#issue > h3 > em {
  display: inline-block;
  position: relative;
  font-weight: 700;
  font-size: calc(36 / 750 * 100vw); line-height: calc(68 / 750 * 100vw);
}
#issue > h3 > em::before {
  content: '';
  display: block;
  width: calc(19 / 750 * 100vw); height: calc(19 / 750 * 100vw);
  position: absolute;
  inset: calc(-2 / 750 * 100vw) auto auto calc(-17 / 750 * 100vw);
  background: url('../image/index_issue_01.svg') center / calc(19 / 750 * 100vw) no-repeat;
}

#issue > ul {
  display: flex;
  flex-wrap: wrap;
  gap: calc(43 / 750 * 100vw);
  justify-content: center;
  width: calc(680 / 750 * 100vw);
  margin: calc(34 / 750 * 100vw) auto 0;
}
#issue > ul > li {
  width: calc(478 / 750 * 100vw); height: calc(125 / 750 * 100vw);
  box-sizing: border-box;
  position: relative;
  padding: calc(18 / 750 * 100vw) 0;
  font-weight: 400;
  font-size: calc(26 / 750 * 100vw); line-height: calc(42 / 750 * 100vw);
  text-align: center;
  background: hsl(0, 0%, 100%);
  border: calc(3 / 750 * 100vw) solid hsl(220, 100%, 20%);
  border-radius: calc(42 / 750 * 100vw);
}
#issue > ul > li::before {
  content: '';
  display: block;
  width: calc(27 / 750 * 100vw); height: calc(26 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-26 / 750 * 100vw) calc(50% - 27 / 2 / 750 * 100vw);
  background: hsl(220, 100%, 20%);
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
}
#issue > ul > li::after {
  content: '';
  display: block;
  width: calc(27 / 750 * 100vw); height: calc(26 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc((-26 + 3) / 750 * 100vw) calc(50% - 27 / 2 / 750 * 100vw);
  background: hsl(0, 0%, 100%);
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
}
#issue > ul > li > em {
  font-weight: 700;
  color: hsl(220, 100%, 20%);
}

#issue > p {
  width: calc(680 / 750 * 100vw);
  margin: calc(41 / 750 * 100vw) auto 0;
  font-weight: 700;
  font-size: calc(36 / 750 * 100vw); line-height: 1;
  text-align: center;
  color: hsl(220, 100%, 20%);
}



#solution {
  width: calc(680 / 750 * 100vw);
  position: relative;
  margin: calc(178 / 750 * 100vw) auto 0; padding: calc(109 / 750 * 100vw) 0 calc(156 / 750 * 100vw);
  background: hsl(210, 17%, 98%);
}
#solution::before {
  content: '';
  display: block;
  width: calc(30 / 750 * 100vw); height: calc(691 / 750 * 100vw);
  position: absolute;
  inset: calc(14 / 750 * 100vw) auto auto calc(-30 / 750 * 100vw); z-index: -1;
  background: linear-gradient(hsl(219, 100%, 73%), hsl(0, 0%, 100%));
  clip-path: polygon(0% calc(2 / 691 * 100%), 100% 0%, 100% 100%);
}
#solution::after {
  content: '';
  display: block;
  width: calc(30 / 750 * 100vw); height: calc(691 / 750 * 100vw);
  position: absolute;
  inset: auto calc(-30 / 750 * 100vw) calc(8 / 750 * 100vw) auto; z-index: -1;
  background: linear-gradient(hsl(218, 100%, 75%), hsl(217, 100%, 89%));
  clip-path: polygon(0% 0%, 100% calc((691 - 2) / 691 * 100%), 0% 100%);
}

#solution > p:nth-of-type(1) {/* -- そこで！ */
  width: calc(296 / 750 * 100vw);
  position: absolute;
  inset: calc(-99 / 750 * 100vw) auto auto calc(50% - 160 / 750 * 100vw);
}
#solution > p:nth-of-type(1)::before {
  content: '';
  display: block;
  width: calc(323 / 750 * 100vw); height: calc(14 / 750 * 100vw);
  position: absolute;
  inset: calc(85 / 750 * 100vw) auto auto calc(147 / 750 * 100vw); z-index: -1;
  background: linear-gradient(to right, hsl(220, 100%, 67%), hsl(220, 100%, 63%));
  clip-path: polygon(0% 100%, calc(322 / 323 * 100%) 0%, 100% 100%);
}
#solution > p:nth-of-type(1) > img {
  width: 100%;  height: auto;
}

#solution > h3 {
  width: calc(680 / 750 * 100vw);
  position: relative;
  font-weight: 700;
  font-size: calc(28 / 750 * 100vw); line-height: calc(40 / 750 * 100vw);
  text-align: center;
  color: hsl(0, 0%, 25%);
}
#solution > h3::before {
  content: '';
  display: block;
  width: calc(189 / 750 * 100vw); height: calc(220 / 750 * 100vw);
  position: absolute;
  inset: calc(-226 / 750 * 100vw) auto auto calc(-14 / 750 * 100vw);
  background: url('../image/index_solution_02.svg') center / calc(189 / 750 * 100vw) no-repeat;
}
#solution > h3 > em {
  display: inline-block;
  position: relative;
  z-index: 0;
  font-weight: 900;
  font-size: calc(40 / 750 * 100vw); line-height: calc(54 / 750 * 100vw);
}
#solution > h3 > em::before {
  content: '';
  display: block;
  width: calc(569 / 750 * 100vw); height: calc(32 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-4 / 750 * 100vw) calc(-26 / 750 * 100vw); z-index: -1;
  background: url('../image/index_solution_03.svg') center / calc(569 / 750 * 100vw) no-repeat;
}

#solution > p:nth-of-type(2) {/* -- 近年、アプリケーション開発の現場では、 */
  width: calc(600 / 750 * 100vw);
  box-sizing: border-box;
  position: relative;
  margin: calc(53 / 750 * 100vw) auto 0; padding: calc(32 / 750 * 100vw) 0;
  font-weight: 400;
  font-size: calc(22 / 750 * 100vw); line-height: calc(36 / 750 * 100vw);
  text-align: center;
  color: hsl(0, 0%, 0%);
  background: hsl(0, 0%, 100%);
  border: solid calc(10 / 750 * 100vw) hsl(25, 90%, 56%);
  border-radius: calc(18 / 750 * 100vw);
}
#solution > p:nth-of-type(2)::before {
  content: '';
  display: block;
  width: calc(30 / 750 * 100vw); height: calc(70 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-70 / 750 * 100vw) calc(285 / 750 * 100vw);
  background: url('../image/index_solution_04_sp.svg') center / calc(30 / 750 * 100vw) no-repeat;
}

#solution > p:nth-of-type(3) {/* -- このような現場のお客様の声から */
  margin: calc(92 / 750 * 100vw) auto 0;
  font-weight: 700;
  font-size: calc(40 / 750 * 100vw); line-height: calc(54 / 750 * 100vw);
  text-align: center;
  color: hsl(25, 90%, 56%);
}

#solution > p:nth-of-type(4) {/* -- ドクターQA by PTW */
  width: calc(531 / 750 * 100vw);
  margin: calc(42 / 750 * 100vw) auto 0;
}
#solution > p:nth-of-type(4) > em > img {
  width: 100%; height: auto;
}

#solution > p:nth-of-type(5) {/* -- 「問題の根本原因が分からない」「改善の優先度を決められない」といったニーズから、 */
  margin: calc(39 / 750 * 100vw) auto 0;
  font-weight: 400;
  font-size: calc(22 / 750 * 100vw); line-height: calc(38 / 750 * 100vw);
  text-align: center;
  color: hsl(0, 0%, 0%);
}
#solution > p:nth-of-type(5) > em {
  font-weight: 700;
  font-size: calc(30 / 750 * 100vw); line-height: calc(42 / 750 * 100vw);
  color: hsl(25, 90%, 56%);
}
#solution > p:nth-of-type(5) > em > br:nth-of-type(2) {/* -- ・特定し、<br>改善の方向 */
  display: none;
}

#solution > div {
  width: calc(206 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-89 / 750 * 100vw) calc(50% - 206 / 2 / 750 * 100vw);
}
#solution > div::before {
  content: '';
  display: block;
  width: calc(457 / 750 * 100vw); height: calc(20 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc((89 - 20) / 750 * 100vw) calc(-207 / 750 * 100vw); z-index: -1;
  background: linear-gradient(to right, hsl(240, 100%, 99%), hsl(216, 100%, 93%));
  clip-path: polygon(0% 0%, 100% 0%, calc(1 / 457 * 100%) 100%);
}
#solution > div > img {
  width: 100%;  height: auto;
}



#feature {
  width: 100%;
  margin: calc(89 / 750 * 100vw) 0 0; padding: calc(120 / 750 * 100vw) 0 0;
}

#feature > h3 {
  display: flex;
  justify-content: center; align-items: center;
  width: calc(684 / 750 * 100vw); height: calc(137 / 750 * 100vw);
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  font-weight: 700;
  font-size: calc(50 / 750 * 100vw); line-height: 1;
  color: hsl(25, 90%, 56%);
  background: hsl(0, 0%, 100%);
  border: solid calc(4 / 750 * 100vw) hsl(25, 90%, 56%);
}
#feature > h3::before {
  content: '';
  display: block;
  width: calc(25 / 750 * 100vw); height: calc(33 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-33 / 750 * 100vw) calc(50% - ((25 / 2 - 4) / 750 * 100vw));
  background: hsl(25, 90%, 56%);
  clip-path: polygon(0% 0, 100% 0%, calc(4 / 25 * 100%) 100%, 0% calc(30 / 33 * 100%));
}
#feature > h3::after {
  content: '';
  display: block;
  width: calc(25 / 750 * 100vw); height: calc(33 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-33 / 750 * 100vw) calc(50% - (25 / 2 / 750 * 100vw));
  background: hsl(0, 0%, 100%);
  clip-path: polygon(0% 0, 100% 0%, calc(4 / 25 * 100%) 100%, 0% calc(30 / 33 * 100%));
}

#feature > p:nth-of-type(1) {/* -- 開発の上流～下流に現場に赴き、第三者視点根本原因を特定。 */
  margin: calc(62 / 750 * 100vw) auto 0;
  font-weight: 700;
  font-size: calc(30 / 750 * 100vw); line-height: calc(60 / 750 * 100vw);
  text-align: center;
  color: hsl(0, 0%, 25%);
}
#feature > p:nth-of-type(1) > em {
  font-size: calc(40 / 750 * 100vw); line-height: calc(68 / 750 * 100vw);
}

#feature > ol {
  display: flex;
  flex-wrap: wrap;
  gap: calc(20 / 750 * 100vw);
  width: calc(680 / 750 * 100vw);
  margin: calc(33 / 750 * 100vw) auto 0;
}
#feature > ol > li {
  display: grid;
  grid-template: auto / auto;
  width: calc(680 / 750 * 100vw);
  box-sizing: border-box;
  padding: calc(27 / 750 * 100vw) calc(32 / 750 * 100vw) calc(22 / 750 * 100vw) calc(130 / 750 * 100vw);
  border-radius: calc(9 / 750 * 100vw);
  box-shadow: 0 0 calc(6 / 750 * 100vw) hsla(0, 0%, 0%, 0.3);
}
#feature > ol > li:nth-of-type(1) {/* -- Point1 */
  background: url('../image/index_feature_01_1.svg') calc(24 / 750 * 100vw) center / calc(64 / 750 * 100vw) no-repeat,
    linear-gradient(to right, hsl(25, 90%, 56%) calc(110 / 680 * 100%), hsl(0, 0%, 100%) calc(110 / 680 * 100%)),
    hsl(0, 0%, 100%);
}
#feature > ol > li:nth-of-type(2) {/* -- Point2 */
  background: url('../image/index_feature_01_2.svg') calc(20 / 750 * 100vw) center / calc(70 / 750 * 100vw) no-repeat,
    linear-gradient(to right, hsl(25, 90%, 56%) calc(110 / 680 * 100%), hsl(0, 0%, 100%) calc(110 / 680 * 100%)),
    hsl(0, 0%, 100%);
}
#feature > ol > li:nth-of-type(3) {/* -- Point3 */
  background: url('../image/index_feature_01_3.svg') calc(17 / 750 * 100vw) center / calc(76 / 750 * 100vw) no-repeat,
    linear-gradient(to right, hsl(25, 90%, 56%) calc(110 / 680 * 100%), hsl(0, 0%, 100%) calc(110 / 680 * 100%)),
    hsl(0, 0%, 100%);
}
#feature > ol > li:nth-of-type(4) {/* -- Point4 */
  background: url('../image/index_feature_01_4.svg') calc(35 / 750 * 100vw) center / calc(41 / 750 * 100vw) no-repeat,
    linear-gradient(to right, hsl(25, 90%, 56%) calc(110 / 680 * 100%), hsl(0, 0%, 100%) calc(110 / 680 * 100%)),
    hsl(0, 0%, 100%);
}
#feature > ol > li:nth-of-type(5) {/* -- Point5 */
  background: url('../image/index_feature_01_5.svg') calc(20 / 750 * 100vw) center / calc(70 / 750 * 100vw) no-repeat,
    linear-gradient(to right, hsl(25, 90%, 56%) calc(110 / 680 * 100%), hsl(0, 0%, 100%) calc(110 / 680 * 100%)),
    hsl(0, 0%, 100%);
}
#feature > ol > li > p:nth-of-type(1) {/* -- Point */
  display: inline-flex;
  align-items: center;
  font-weight: 900;
  font-size: calc(20 / 750 * 100vw); line-height: 1;
  color: hsl(0 ,0%, 25%);
}
#feature > ol > li > p:nth-of-type(1)::after {
  content: counter(counter);
  margin: 0 0 0 0.15em;
  font-weight: 700;
  font-size: calc(30 / 750 * 100vw);
}
#feature > ol > li > h4 {
  margin: calc(15 / 750 * 100vw) 0 0;
  font-weight: 700;
  font-size: calc(26 / 750 * 100vw); line-height: 1;
  color: hsl(25, 90%, 56%);
}
#feature > ol > li > p:nth-of-type(2) {/* -- 説明 */
  margin: calc(11 / 750 * 100vw) 0 0;
  font-weight: 400;
  font-size: calc(22 / 750 * 100vw); line-height: calc(36 / 750 * 100vw);
  color: hsl(0, 0%, 0%);
}
#feature > ol > li > p:nth-of-type(2) > br {
  display: none;
}

#feature > p:nth-of-type(2) {/* -- 品質課題の“現在地”を正しく捉えることが、改善の起点です。 */
  margin: calc(43 / 750 * 100vw) auto 0;
  font-weight: 700;
  font-size: calc(30 / 750 * 100vw); line-height: calc(60 / 750 * 100vw);
  text-align: center;
  color: hsl(0, 0%, 25%);
}

#feature > p:nth-of-type(2) > em {
  font-size: calc(40 / 750 * 100vw);
}

#feature > div {
  width: 100%;
  margin: calc(32 / 750 * 100vw) 0 0; padding: calc(60 / 750 * 100vw) 0 calc(70 / 750 * 100vw);
  background: url('../image/index_feature_02_1_sp.svg') left calc(26 / 750 * 100vw) / calc(294 / 750 * 100vw) no-repeat,
    url('../image/index_feature_02_2_sp.svg') right bottom / calc(401 / 750 * 100vw) no-repeat,
    linear-gradient(to right, hsl(217, 100%, 86%), hsl(217, 0%, 100%), hsl(217, 100%, 86%));
}
#feature > div > h4 {
  font-weight: 700;
  font-size: calc(30 / 750 * 100vw); line-height: calc(50 / 750 * 100vw);
  text-align: center;
  color: hsl(0, 0%, 25%);
}
#feature > div > h4 > span {
  line-height: calc(60 / 750 * 100vw);
}
#feature > div > h4 > span > em {
  font-weight: 900;
  font-size: calc(40 / 750 * 100vw);
  color: hsl(25, 90%, 56%);
}
#feature > div > h4 > span > em > small {
  font-size: calc(30 / 750 * 100vw);
}
#feature > div > p:nth-of-type(1) {/* -- ポールトゥウィンが蓄積してきた品質保証（QA）の専門知見をもとに、 */
  margin: calc(38 / 750 * 100vw) auto 0;
  font-weight: 400;
  font-size: calc(22 / 750 * 100vw); line-height: calc(36 / 750 * 100vw);
  text-align: center;
  color: hsl(0, 0%, 0%);
}
#feature > div > p:nth-of-type(2) {/* -- グラフ */
  width: calc(674 / 750 * 100vw);
  margin: calc(55 / 750 * 100vw) auto 0;
}
#feature > div > p:nth-of-type(2) > img {
  width: 100%; height: auto;
}



#flow {
  width: 100%;
  padding: calc(120 / 750 * 100vw) 0 0;
}

#flow > h3 {
  display: flex;
  justify-content: center; align-items: center;
  width: calc(684 / 750 * 100vw); height: calc(137 / 750 * 100vw);
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  font-weight: 700;
  font-size: calc(50 / 750 * 100vw); line-height: 1;
  color: hsl(25, 90%, 56%);
  background: hsl(0, 0%, 100%);
  border: solid calc(4 / 750 * 100vw) hsl(25, 90%, 56%);
}
#flow > h3::before {
  content: '';
  display: block;
  width: calc(25 / 750 * 100vw); height: calc(33 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-33 / 750 * 100vw) calc(50% - ((25 / 2 - 4) / 750 * 100vw));
  background: hsl(25, 90%, 56%);
  clip-path: polygon(0% 0, 100% 0%, calc(4 / 25 * 100%) 100%, 0% calc(30 / 33 * 100%));
}
#flow > h3::after {
  content: '';
  display: block;
  width: calc(25 / 750 * 100vw); height: calc(33 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-33 / 750 * 100vw) calc(50% - (25 / 2 / 750 * 100vw));
  background: hsl(0, 0%, 100%);
  clip-path: polygon(0% 0, 100% 0%, calc(4 / 25 * 100%) 100%, 0% calc(30 / 33 * 100%));
}

#flow > ol {
  display: flex;
  flex-wrap: wrap;
  gap: calc(30 / 750 * 100vw);
  width: calc(680 / 750 * 100vw);
  margin: calc(78 / 750 * 100vw) auto 0;
}
#flow > ol > li {
  width: calc(680 / 750 * 100vw);
  box-sizing: border-box;
  position: relative;
  padding: calc(25 / 750 * 100vw) 0 calc(22 / 750 * 100vw) calc(168 / 750 * 100vw);
  background: hsl(0, 0%, 100%);
  border-radius: calc(9 / 750 * 100vw);
  box-shadow: 0 0 calc(6 / 750 * 100vw) hsla(0, 0%, 0%, 0.3);
}
#flow > ol > li::after {
  content: '';
  position: absolute;
}
#flow > ol > li:nth-of-type(1)::after {/* -- 問診 */
  width: calc(142 / 750 * 100vw); height: calc(97 / 750 * 100vw);
  inset: calc(-42 / 750 * 100vw) calc(20 / 750 * 100vw) auto auto;
  background: url('../image/index_flow_01_1.webp') center / calc(142 / 750 * 100vw) no-repeat;
}
#flow > ol > li:nth-of-type(2)::after {/* -- 診察 */
  width: calc(149 / 750 * 100vw); height: calc(133 / 750 * 100vw);
  inset: calc(-26 / 750 * 100vw) calc(17 / 750 * 100vw) auto auto;
  background: url('../image/index_flow_01_2.webp') center / calc(149 / 750 * 100vw) no-repeat;
}
#flow > ol > li:nth-of-type(3)::after {/* -- 診断 */
  width: calc(136 / 750 * 100vw); height: calc(126 / 750 * 100vw);
  inset: calc(-29 / 750 * 100vw) calc(23 / 750 * 100vw) auto auto;
  background: url('../image/index_flow_01_3.webp') center / calc(136 / 750 * 100vw) no-repeat;
}
#flow > ol > li:nth-of-type(4)::after {/* -- 処方箋 */
  width: calc(59 / 750 * 100vw); height: calc(107 / 750 * 100vw);
  inset: calc(-17 / 750 * 100vw) calc(34 / 750 * 100vw) auto auto;
  background: url('../image/index_flow_01_4.webp') center / calc(59 / 750 * 100vw) no-repeat;
}
#flow > ol > li > hgroup {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(9 / 750 * 100vw);
  width: calc(140 / 750 * 100vw); height: calc(100% - 8 * 2 / 750 * 100vw);
  position: absolute;
  inset: calc(8 / 750 * 100vw) auto auto calc(8 / 750 * 100vw);
  background: hsl(25, 90%, 56%);
  border-radius: calc(9 / 750 * 100vw);
}
#flow > ol > li > hgroup::before {
  content: '';
  display: block;
  width: calc(41 / 750 * 100vw); height: calc(21 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-21 / 750 * 100vw) calc(50% - 41 / 2 / 750 * 100vw);
  background: hsl(25, 90%, 56%);
  clip-path: polygon(0% 0, 100% 0%, 50% 100%);
}
#flow > ol > li:last-of-type > hgroup::before {
  display: none;
}
#flow > ol > li > hgroup > p {
  display: flex;
  align-self: end;
  justify-content: center; align-items: center;
  width: 100%;
  font-weight: 900;
  font-size: calc(18 / 750 * 100vw); line-height: 1;
  color: hsl(0 ,0%, 100%);
}
#flow > ol > li > hgroup > p::after {
  content: counter(counter);
  margin: 0 0 0.15em 0.15em;
  font-weight: 700;
  font-size: calc(30 / 750 * 100vw);
}
#flow > ol > li > hgroup > h4 {
  font-weight: 700;
  font-size: calc(30 / 750 * 100vw); line-height: 1;
  color: hsl(0 ,0%, 100%);
}
#flow > ol > li > p:nth-of-type(1) {/* -- オレンジ字 */
  font-weight: 700;
  font-size: calc(26 / 750 * 100vw); line-height: calc(36 / 750 * 100vw);
  color: hsl(25, 90%, 56%);
}
#flow > ol > li > p:nth-of-type(2) {/* -- 黒字 */
  margin: calc(15 / 750 * 100vw) 0 0; padding: 0 calc(24 / 750 * 100vw) 0 0;
  font-weight: 400;
  font-size: calc(22 / 750 * 100vw); line-height: calc(36 / 750 * 100vw);
  color: hsl(0, 0%, 0%);
}

#flow > div {
  width: 100%;
  margin: calc(-50 / 750 * 100vw) 0 0; padding: calc(109 / 750 * 100vw) 0 calc(62 / 750 * 100vw);
  background: url('../image/index_flow_02_1_sp.svg') left calc(38 / 750 * 100vw) / calc(135 / 750 * 100vw) no-repeat,
    url('../image/index_flow_02_2_sp.svg') right bottom calc(45 / 750 * 100vw) / calc(135 / 750 * 100vw) no-repeat,
    linear-gradient(to right, hsl(219, 100%, 70%), hsl(219, 100%, 60%), hsl(219, 100%, 70%));
}
#flow > div > h4 {
  font-weight: 900;
  font-size: calc(40 / 750 * 100vw); line-height: calc(60 / 750 * 100vw);
  text-align: center;
  color: hsl(0, 0%, 100%);
}
#flow > div > p {
  margin: calc(31 / 750 * 100vw) auto 0;
  font-weight: 400;
  font-size: calc(22 / 750 * 100vw); line-height: calc(36 / 750 * 100vw);
  text-align: center;
  color: hsl(0, 0%, 100%);
}



#experience {
  width: 100%;
  padding: calc(137 / 750 * 100vw) 0 0;
}

#experience > h3 {
  display: flex;
  justify-content: center; align-items: center;
  width: calc(684 / 750 * 100vw); height: calc(137 / 750 * 100vw);
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  font-weight: 700;
  font-size: calc(50 / 750 * 100vw); line-height: 1;
  color: hsl(25, 90%, 56%);
  background: hsl(0, 0%, 100%);
  border: solid calc(4 / 750 * 100vw) hsl(25, 90%, 56%);
}
#experience > h3::before {
  content: '';
  display: block;
  width: calc(25 / 750 * 100vw); height: calc(33 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-33 / 750 * 100vw) calc(50% - ((25 / 2 - 4) / 750 * 100vw));
  background: hsl(25, 90%, 56%);
  clip-path: polygon(0% 0, 100% 0%, calc(4 / 25 * 100%) 100%, 0% calc(30 / 33 * 100%));
}
#experience > h3::after {
  content: '';
  display: block;
  width: calc(25 / 750 * 100vw); height: calc(33 / 750 * 100vw);
  position: absolute;
  inset: auto auto calc(-33 / 750 * 100vw) calc(50% - (25 / 2 / 750 * 100vw));
  background: hsl(0, 0%, 100%);
  clip-path: polygon(0% 0, 100% 0%, calc(4 / 25 * 100%) 100%, 0% calc(30 / 33 * 100%));
}

#experience > ol {
  display: flex;
  flex-wrap: wrap;
  gap: calc(50 / 750 * 100vw);
  width: calc(680 / 750 * 100vw);
  margin: calc(79 / 750 * 100vw) auto 0;
}
#experience > ol > li {
  display: grid;
  grid-template: auto / auto;
  width: 100%;
  box-sizing: border-box;
  position: relative;
  padding: calc(359 / 750 * 100vw) 0 calc(50 / 750 * 100vw);
  background: hsl(210, 17%, 98%);
  border-radius: calc(9 / 750 * 100vw);
}
#experience > ol > li::before {
  content: '';
  display: block;
  width: calc(270 / 750 * 100vw); height: calc(271 / 750 * 100vw);
  position: absolute;
  inset: calc(50 / 750 * 100vw) auto auto calc(50% - 270 / 2 / 750 * 100vw);
}
#experience > ol > li:nth-of-type(1)::before {/* -- 事業会社ビジネスオーナー様の場合 */
  background: url('../image/index_experience_01_1.webp') center / calc(270 / 750 * 100vw) no-repeat;
}
#experience > ol > li:nth-of-type(2)::before {/* -- 開発企業様の場合 */
  background: url('../image/index_experience_01_2.webp') center / calc(270 / 750 * 100vw) no-repeat;
}
#experience > ol > li > h4 {
  width: calc(600 / 750 * 100vw);
  margin: 0 auto; padding: 0 0 calc(50 / 750 * 100vw);
  font-weight: 700;
  font-size: calc(30 / 750 * 100vw); line-height: 1;
  color: hsl(0, 0%, 0%);
  border-bottom: max(calc(1 / 750 * 100vw), 1px) solid hsl(240, 2%, 90%);
}
#experience > ol > li > h4::before {
  content: '#UseCase'counter(counter);
  display: block;
  margin: 0 0 calc(21 / 750 * 100vw);
  font-weight: 900;
  font-size: calc(24 / 750 * 100vw); line-height: 1;
  color: hsl(229, 56%, 34%);
}
#experience > ol > li > h5 {
  width: calc(600 / 750 * 100vw);
  box-sizing: border-box;
  padding: 0 0 0 calc(60 / 750 * 100vw);
  font-weight: 700;
  font-size: calc(24 / 750 * 100vw); line-height: calc(48 / 750 * 100vw);
}
#experience > ol > li > h5:nth-of-type(1) {/* -- よくある課題 */
  margin: calc(25 / 750 * 100vw) auto 0;
  color: hsl(229, 56%, 34%);
  background: url('../image/index_experience_02_1.svg') left center / calc(48 / 750 * 100vw) no-repeat;
}
#experience > ol > li > h5:nth-of-type(2) {/* -- ドクターQAができること */
  margin: calc(35 / 750 * 100vw) auto 0;
  color: hsl(25, 90%, 56%);
  background: url('../image/index_experience_02_2.svg') left center / calc(48 / 750 * 100vw) no-repeat;
}
#experience > ol > li > ul {
  display: flex;
  flex-wrap: wrap;
  gap: calc(6 / 750 * 100vw);
  width: calc(600 / 750 * 100vw);
  margin: calc(10 / 750 * 100vw) auto 0;
}
#experience > ol > li > ul > li {
  padding: 0 0 0 calc(30 / 750 * 100vw);
  font-weight: 400;
  font-size: calc(22 / 750 * 100vw); line-height: calc(30 / 750 * 100vw);
  color: hsl(0, 0%, 0%);
}
#experience > ol > li > ul:nth-of-type(1) > li {/* -- よくある課題 */
  background: url('../image/index_experience_03_1.svg') calc(2 / 750 * 100vw) calc(8 / 750 * 100vw) / calc(17 / 750 * 100vw) no-repeat;
}
#experience > ol > li > ul:nth-of-type(2) > li {/* -- ドクターQAができること */
  background: url('../image/index_experience_03_2.svg') left calc(6 / 750 * 100vw) / calc(22 / 750 * 100vw) no-repeat;
}
#experience > ol > li > div {
  display: grid;
  width: calc(640 / 750 * 100vw);
  box-sizing: border-box;
  margin: calc(69 / 750 * 100vw) auto 0; padding: calc(14 / 750 * 100vw) 0 calc(10 / 750 * 100vw);
  background: hsl(25, 90%, 56%);
  border-radius: calc(9 / 750 * 100vw);
}
#experience > ol > li > div > h5 {
  width: calc(620 / 750 * 100vw);
  box-sizing: border-box;
  position: relative;
  padding: 0 0 0 calc(107 / 750 * 100vw);
  font-weight: 700;
  font-size: calc(40 / 750 * 100vw); line-height: 1;
  color: hsl(0, 0%, 100%);
}
#experience > ol > li > div > h5::before {
  content: '';
  display: block;
  width: calc(69 / 750 * 100vw); height: calc(102 / 750 * 100vw);
  position: absolute;
  inset: calc(-48 / 750 * 100vw) auto auto calc(8 / 750 * 100vw);
  background: url('../image/index_experience_04.svg') center / calc(69 / 750 * 100vw) no-repeat;
}
#experience > ol > li > div > h5 > br {
  display: none;
}
#experience > ol > li > div > ul {
  display: flex;
  flex-wrap: wrap;
  gap: calc(6 / 750 * 100vw);
  width: calc(620 / 750 * 100vw);
  box-sizing: border-box;
  margin: calc(21 / 750 * 100vw) auto 0; padding: calc(15 / 750 * 100vw) 0 calc(17 / 750 * 100vw) calc(27 / 750 * 100vw);
  background: hsl(0, 0%, 100%);
}
#experience > ol > li > div > ul > li {
  padding: 0 0 0 calc(26 / 750 * 100vw);
  font-weight: 400;
  font-size: calc(22 / 750 * 100vw); line-height: calc(30 / 750 * 100vw);
  color: hsl(0, 0%, 0%);
  background: url('../image/index_experience_05.svg') left calc(7 / 750 * 100vw) / calc(20 / 750 * 100vw) no-repeat;
}
#experience > ol > li > div > ul > li > em {
  font-weight: 700;
  color: hsl(25, 90%, 56%);
}



#servicepack {
  width: 100%;
  margin: calc(50 / 750 * 100vw) 0 0; padding: calc(72 / 750 * 100vw) 0 calc(70 / 750 * 100vw);
  background: url('../image/index_servicepack_01_1_sp.svg') left calc(12 / 750 * 100vw) / calc(400 / 750 * 100vw) no-repeat,
    url('../image/index_servicepack_01_2_sp.svg') right bottom / calc(172 / 750 * 100vw) no-repeat,
    linear-gradient(to right, hsl(219, 100%, 70%), hsl(219, 100%, 60%), hsl(219, 100%, 70%));
}

#servicepack > h3 {
  font-weight: 900;
  font-size: calc(50 / 750 * 100vw); line-height: 1;
  text-align: center;
  color: hsl(0, 0%, 100%);
}

#servicepack > ul {
  display: flex;
  flex-wrap: wrap;
  gap: calc(30 / 750 * 100vw);
  width: calc(570 / 750 * 100vw);
  margin: calc(52 / 750 * 100vw) auto 0;
}
#servicepack > ul > li {
  width: 100%;
  box-sizing: border-box;
  padding: calc(44 / 750 * 100vw) 0 calc(33 / 750 * 100vw);
  background: hsl(0, 0%, 100%);
}
#servicepack > ul > li > hgroup {
  width: 100%;
  position: relative;
  margin: 0 auto;
}
#servicepack > ul > li > hgroup::before {
  content: '';
  display: block;
  position: absolute;
}
#servicepack > ul > li:nth-of-type(1) > hgroup::before {/* -- 品質診断支援 */
  width: calc(89 / 750 * 100vw); height: calc(100 / 750 * 100vw);
  inset: calc(-3 / 750 * 100vw) auto auto calc(65 / 750 * 100vw);
  background: url('../image/index_servicepack_02_1.svg') center / calc(89 / 750 * 100vw) no-repeat;
}
#servicepack > ul > li:nth-of-type(2) > hgroup::before {/* -- PMO/QMO支援 */
  width: calc(90 / 750 * 100vw); height: calc(92 / 750 * 100vw);
  inset: calc(2 / 750 * 100vw) auto auto calc(54 / 750 * 100vw);
  background: url('../image/index_servicepack_02_2.svg') center / calc(90 / 750 * 100vw) no-repeat;
}
#servicepack > ul > li > hgroup > p {
  font-weight: 700;
  font-size: calc(24 / 750 * 100vw); line-height: 1;
  color: hsl(25, 90%, 56%);
}
#servicepack > ul > li:nth-of-type(1) > hgroup > p {/* -- まずは、即効性ある打ち手から */
  padding: 0 0 0 calc(175 / 750 * 100vw);
}
#servicepack > ul > li:nth-of-type(2) > hgroup > p {/* -- 仕組み化×定着までをプロと伴走 */
  padding: 0 0 0 calc(157 / 750 * 100vw);
}
#servicepack > ul > li > hgroup > h4 {
  margin: calc(10 / 750 * 100vw) 0 0;
  font-weight: 900;
  font-size: calc(50 / 750 * 100vw); line-height: 1;
  color: hsl(25, 90%, 56%);
}
#servicepack > ul > li:nth-of-type(1) > hgroup > h4 {/* -- 品質診断支援 */
  padding: 0 0 0 calc(192 / 750 * 100vw);
}
#servicepack > ul > li:nth-of-type(2) > hgroup > h4 {/* -- PMO/QMO支援 */
  padding: 0 0 0 calc(157 / 750 * 100vw);
}
#servicepack > ul > li > p {
  margin: calc(32 / 750 * 100vw) 0 0;
  font-weight: 500;
  font-size: calc(24 / 750 * 100vw); line-height: calc(36 / 750 * 100vw);
  text-align: center;
  color: hsl(0, 0%, 0%);
}



#contact {
  width: 100%;
  padding: calc(120 / 750 * 100vw) 0 0;
}

#contact > hgroup {
  width: 100%;
  position: relative;
  padding: calc(215 / 750 * 100vw) 0 0;
  background: url('../image/index_contact_01_sp.svg') calc(50% + 10 / 750 * 100vw) top / calc(165 / 750 * 100vw) no-repeat;
}
#contact > hgroup > ul {
  width: 100%; height: 100%;
  position: absolute;
  inset: 0 auto auto 0;
}
#contact > hgroup > ul > li {
  position: absolute;
}
#contact > hgroup > ul > li:nth-of-type(1) {/* -- 開発に追われて課題の洗い出しができない */
  width: calc(163 / 750 * 100vw);
  inset: calc(34 / 750 * 100vw) auto auto calc(50% - 254 / 750 * 100vw);
}
#contact > hgroup > ul > li:nth-of-type(2) {/* -- 開発に追われて課題の洗い出しができない */
  width: calc(158 / 750 * 100vw);
  inset: calc(39 / 750 * 100vw) auto auto calc(50% + 104 / 750 * 100vw);
}
#contact > hgroup > ul > li img {
  width: 100%; height: auto;
}
#contact > hgroup > h3 {
  margin: 0 auto;
  font-weight: 900;
  font-size: calc(40 / 750 * 100vw); line-height: calc(65 / 750 * 100vw);
  letter-spacing: calc(50em / 1000);
  text-align: center;
  color: hsl(0, 0%, 25%);
}
#contact > hgroup > h3 > em {
  font-size: calc(48 / 750 * 100vw);
  color: hsl(229, 56%, 34%);
}

#contact > menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(50 / 750 * 100vw);
  width: 100%;
  margin: calc(79 / 750 * 100vw) auto 0; padding:calc(61 / 750 * 100vw) 0 calc(70 / 750 * 100vw);
  background: hsl(210, 17%, 98%);
}
#contact > menu > li {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(24 / 750 * 100vw);
}
#contact > menu > li > p {
  font-weight: 700;
  font-size: calc(31 / 750 * 100vw); line-height: calc(47 / 750 * 100vw);
  text-align: center;
  color: hsl(25, 90%, 56%);
}
#contact > menu > li > p > em {
  font-weight: 900;
  font-size: calc(39 / 750 * 100vw);
}
#contact > menu > li > a {
  display: flex;
  justify-content: center; align-items: center;
  gap: calc(26 / 750 * 100vw);
  width: calc(543 / 750 * 100vw); height: calc(132 / 750 * 100vw);
  box-sizing: border-box;
  font-weight: 700;
  font-size: calc(37 / 750 * 100vw); line-height: 1;
  text-decoration: none;
  border-radius: calc(132 / 2 / 750 * 100vw);
}
#contact > menu > li:nth-of-type(1) > a {/* -- 資料ダウンロード */
  color: hsl(0, 0%, 100%);
  background: hsl(25, 90%, 56%);
}
#contact > menu > li:nth-of-type(1) > a::before {
  content: '';
  display: inline-block;
  width: calc(52 / 750 * 100vw); height: calc(44 / 750 * 100vw);
  background: url('../image/index_cover_05_1.svg') center / calc(52 / 750 * 100vw) no-repeat;
}
#contact > menu > li:nth-of-type(2) > a {/* -- お問い合わせ */
  color: hsl(25, 90%, 56%);
  background: hsl(0, 0%, 100%);
  border: calc(4 / 750 * 100vw) solid hsl(25, 90%, 56%);
}
#contact > menu > li:nth-of-type(2) > a::before {
  content: '';
  display: inline-block;
  width: calc(53 / 750 * 100vw); height: calc(42 / 750 * 100vw);
  background: url('../image/index_cover_05_2.svg') center / calc(53 / 750 * 100vw) no-repeat;
}



footer {
  width: 100%;
  padding: calc(53 / 750 * 100vw) 0 0;
  background: hsl(0, 0%, 17%);
  border-top: max(calc(1 / 750 * 100vw), 1px) solid hsl(0, 0%, 59%);
}

footer > dl {
  width: calc(676 / 750 * 100vw);
  margin: 0 auto;
}
footer > dl > dt {
  margin: calc(27 / 750 * 100vw) 0 0;
  font-weight: 700;
  font-size: calc(22 / 750 * 100vw); line-height: calc(36 / 750 * 100vw);
  color: hsl(0, 0%, 100%);
}
footer > dl > dd {
  margin: calc(7 / 750 * 100vw) 0 0;
  font-weight: 400;
  font-size: calc(22 / 750 * 100vw); line-height: calc(36 / 750 * 100vw);
  color: hsl(0, 0%, 100%);
}

footer > menu {
  display: flex;
  gap: calc(46 / 750 * 100vw);
  width: calc(676 / 750 * 100vw);
  margin: calc(63 / 750 * 100vw) auto 0;
}
footer > menu > li {
  font-weight: 400;
  font-size: calc(22 / 750 * 100vw); line-height: 1;
}
footer > menu > li > a {
  text-decoration: none;
  color: hsl(0, 0%, 100%);
}

footer > small {
  display: block;
  width: 100%;
  margin: calc(47 / 750 * 100vw) 0 0; padding: calc(42 / 750 * 100vw) 0 calc(32 / 750 * 100vw);
  font-weight: 300;
  font-size: calc(18 / 750 * 100vw); line-height: 1;
  text-align: center;
  color: hsl(0, 0%, 70%);
  border-top: max(calc(1 / 750 * 100vw), 1px) solid hsl(0, 0%, 29%);
}





@media (min-width:767px) {

body {
  min-width: 1260px;
}

header {
  grid-template: auto / 137px auto 350px;
  height: 83px;
  padding: 0 40px 0 46px;
  box-shadow: 0 0 5px hsla(0, 0%, 0%, 0.3);
}

header > h1 {
  width: 69px;
}

header > p {
  display: block;
  font-weight: 400;
  font-size: 13px; line-height: 24px;
  color: hsl(0 , 0%, 27%);
}
header > p > em {
  font-weight: 700;
  font-size: 15px; line-height: 24px;
}

header > menu {
  gap: 10px;
}
header > menu > li > a {
  justify-content: center; align-items: center;
  height: 45px;
  font-weight: 700;
  font-size: 15px; line-height: 1;
  text-indent: 0;
  text-decoration: none;
  border-radius: calc(45px / 2);
  box-shadow: 0 3px 8px hsla(25, 90%, 56%, 0.3);
  transform-origin: center;
  transition: transform 0.2s ease-out;
}
header > menu > li > a:hover {
  transform: scale(1.07);
}
header > menu > li:nth-of-type(1) > a {/* -- 資料ダウンロード */
  width: 160px;
  color: hsl(0, 0%, 100%);
  background: hsl(25, 90%, 56%);
}
header > menu > li:nth-of-type(2) > a {/* -- お問い合わせ */
  width: 136px;
  color: hsl(25, 90%, 56%);
  background: hsl(0, 0%, 100%);
  border: 2px solid hsl(25, 90%, 56%);
}



#cover {
  overflow: hidden visible;
  position: relative;
  padding: 71px 0 26px;
  background: url('../image/index_cover_02_pc.webp') right top / calc(765 / 1920 * 100vw) no-repeat,
    url('../image/index_cover_01.svg') left top / calc(364 / 1920 * 100vw) no-repeat,
    linear-gradient(hsl(219, 100%, 63%), hsl(0, 0%, 100%) calc(607 / 781 * 100%)),
    hsl(0, 0%, 100%);
}

#cover > hgroup {
  width: 1720px;
  box-sizing: border-box;
  margin: 0 auto; padding: 0 10px;
}
#cover > hgroup > p {
  white-space: nowrap;
}
#cover > hgroup > p:nth-of-type(1) {/* -- 品質の“症状”を診断し、改善策を明確にする。 */
  width: fit-content;
  padding: 0 0 0 22px;
  font-size: 48px; line-height: 82px;
  background: hsl(0 , 0%, 100%);
}
#cover > hgroup > p:nth-of-type(1)::before {
  display: none;
}
#cover > hgroup > p:nth-of-type(1) > em {
  font-size: 58px;
}
#cover > hgroup > p:nth-of-type(2) {/* -- ソフトウェアテストのプロによる品質診断サービス */
  margin:9px 0 0; padding: 0 22px;
  font-size: 48px; line-height: 82px;
}
#cover > hgroup > p br {
  display: none;
}
#cover > hgroup > h2 {
  width: 790px;
  margin: 72px 0 0;
}

#cover > ul {
  gap: 35px;
  width: 324px;
  position: absolute;
  inset: 305px auto auto max(calc(50% - 27px), 831px);
  margin: 0;
}
#cover > ul > li {
  width: 324px;
}

#cover > menu {
  gap: 30px;
  width: 850px;
  margin: 85px 0 0 max(calc(50% - 712px), 156px);
}
#cover > menu > li > a {
  gap: 19px;
  width: 410px; height: 100px;
  font-size: 28px;
  border-radius: calc(100px / 2);
  transform-origin: center;
  transition: transform 0.2s ease-out;
}
#cover > menu > li > a:hover {
  transform: scale(1.07);
}
#cover > menu > li:nth-of-type(1) > a::before {/* -- 資料ダウンロード */
  width: 39px; height: 34px;
  background: url('../image/index_cover_05_1.svg') center / 39px no-repeat;
}
#cover > menu > li:nth-of-type(2) > a {/* -- お問い合わせ */
  border: 4px solid hsl(25, 90%, 56%);
}
#cover > menu > li:nth-of-type(2) > a::before {
  width: 40px; height: 32px;
  background: url('../image/index_cover_05_2.svg') center / 40px no-repeat;
}



#issue {
  padding: 140px 0 0;
}

#issue > h3 {
  font-size: 24px; line-height: 32px;
}
#issue > h3 > em {
  font-size: 36px; line-height: 61px;
}
#issue > h3 > em::before {
  width: 19px; height: 19px;
  inset: -2px auto auto -17px;
  background: url('../image/index_issue_01.svg') center / 19px no-repeat;
}

#issue > ul {
  gap: 58px 12px;
  width: 1150px;
  margin: 35px auto 0;
}
#issue > ul > li {
  width: 368px; height: 97px;
  padding: 10px 0;
  font-size: 20px; line-height: 32px;
  border: 3px solid hsl(220, 100%, 20%);
  border-radius: calc(97px / 2);
}
#issue > ul > li::before {
  width: 25px; height: 20px;
  inset: auto auto -20px calc(50% - 25px / 2);
}
#issue > ul > li::after {
  width: 25px; height: 20px;
  inset: auto auto calc(-20px + 4px) calc(50% - 25px / 2);
}
#issue > ul > li:nth-of-type(1) {/* -- 不具合が繰り返し発生しているが、 */
  margin: 0 5px 0 180px;
}
#issue > ul > li:nth-of-type(2) {/* -- 開発スピードを優先するあまり、 */
  margin: 0 180px 0 5px;
}
#issue > ul > li:nth-of-type(5) {/* -- 「どこから改善すべきか」課題は */
  width: 385px;
}

#issue > p {
  width: 1200px;
  margin: 50px auto 0;
  font-size: 36px;
}



#solution {
  width: 1060px;
  margin: 183px auto 0; padding: 59px 0 63px;
}
#solution::before {
  width: 19px; height: 431px;
  inset: 23px auto auto -19px;
  clip-path: polygon(0% calc(2 / 431 * 100%), 100% 0%, 100% 100%);
}
#solution::after {
  width: 25px; height: 568px;
  inset: auto -25px 21px auto;
  clip-path: polygon(0% 0%, 100% calc((568 - 2) / 568 * 100%), 0% 100%);
}

#solution > p:nth-of-type(1) {/* -- そこで！ */
  width: 295px;
  inset: -134px auto auto calc(50% - 160px);
}
#solution > p:nth-of-type(1)::before {
  width: 496px; height: 22px;
  inset: 112px auto auto 175px;
  clip-path: polygon(0% 100%, calc(495 / 496 * 100%) 0%, 100% 100%);
}

#solution > h3 {
  width: 1060px;
  font-size: 28px; line-height: 45px;
}
#solution > h3::before {
  width: 303px; height: 350px;
  inset: -140px auto auto -57px;
  background: url('../image/index_solution_02.svg') center / 303px no-repeat;
}
#solution > h3 > em {
  font-size: 40px; line-height: 52px;
}
#solution > h3 > em::before {
  width: 569px; height: 32px;
  inset: auto auto -6px -36px;
  background: url('../image/index_solution_03.svg') center / 569px no-repeat;
}

#solution > p:nth-of-type(2) {/* -- 近年、アプリケーション開発の現場では、 */
  width: 800px;
  margin: 39px auto 0; padding: 32px 0;
  font-size: 20px; line-height: 32px;
  border: solid 10px hsl(25, 90%, 56%);
  border-radius: 18px;
}
#solution > p:nth-of-type(2)::before {
  width: 72px; height: 101px;
  inset: auto auto -107px 7px;
  background: url('../image/index_solution_04_pc.svg') center / 72px no-repeat;
}
#solution > p:nth-of-type(2) > br:nth-of-type(2) {/* -- 様変更への<br>対応が求め */
  display: none;
}
#solution > p:nth-of-type(2) > br:nth-of-type(4) {/* -- する中で、<br>テストや品 */
  display: none;
}
#solution > p:nth-of-type(2) > br:nth-of-type(6) {/* -- うケースも<br>少なくあり */
  display: none;
}

#solution > p:nth-of-type(3) {/* -- このような現場のお客様の声から */
  margin: 43px auto 0;
  font-size: 40px; line-height: 54px;
}

#solution > p:nth-of-type(4) {/* -- ドクターQA by PTW */
  width: 531px;
  margin: 41px auto 0;
}

#solution > p:nth-of-type(5) {/* -- 「問題の根本原因が分からない」「改善の優先度を決められない」といったニーズから、 */
  margin: 42px auto 0;
  font-size: 20px; line-height: 36px;
}
#solution > p:nth-of-type(5) > em {
  font-size: 28px; line-height: 39px;
}
#solution > p:nth-of-type(5) > br:nth-of-type(1) {/* -- からない」<br>「改善の優 */
  display: none;
}
#solution > p:nth-of-type(5) > em > br:nth-of-type(1) {/* -- 三者視点で<br>整理・特定 */
  display: none;
}
#solution > p:nth-of-type(5) > em > br:nth-of-type(2) {/* -- ・特定し、<br>改善の方向 */
  display: inline;
}

#solution > div {
  width: 206px;
  inset: auto -58px -36px auto;
}
#solution > div::before {
  width: 543px; height: 24px;
  inset: auto auto 12px -888px;
  clip-path: polygon(0% 0%, 100% 0%, calc(2 / 543 * 100%) 100%);
}



#feature {
  margin: 36px 0 0; padding: 134px 0 0;
}

#feature > h3 {
  width: 1200px; height: 137px;
  font-size: 50px;
  border: 4px solid hsl(25, 90%, 56%);
}
#feature > h3::before {
  width: 25px; height: 33px;
  inset: auto auto -33px calc(50% - (25px / 2 - 4px));
}
#feature > h3::after {
  width: 25px; height: 33px;
  inset: auto auto -33px calc(50% - 25px / 2);
}

#feature > p:nth-of-type(1) {/* -- 開発の上流～下流に現場に赴き、第三者視点根本原因を特定。 */
  margin: 66px auto 0;
  font-size: 30px; line-height: 52px;
}
#feature > p:nth-of-type(1) > em {
  font-size: 40px; line-height: 60px;
}
#feature > p:nth-of-type(1) > br:nth-of-type(1) {/* -- 場に赴き、<br>第三者視点 */
  display: none;
}

#feature > ol {
  gap: 10px;
  width: 1060px;
  margin: 39px auto 0;
}
#feature > ol > li {
  grid-template: auto / 97px auto;
  width: 1060px;
  padding: 29px 0 25px 167px;
  border-radius: 9px;
  box-shadow: 0 0 6px hsla(0, 0%, 0%, 0.3);
}
#feature > ol > li:nth-of-type(1) {/* -- Point1 */
  background: url('../image/index_feature_01_1.svg') 33px center / 64px no-repeat,
    linear-gradient(to right, hsl(25, 90%, 56%) calc(128 / 1060 * 100%), hsl(0, 0%, 100%) calc(128 / 1060 * 100%)),
    hsl(0, 0%, 100%);
}
#feature > ol > li:nth-of-type(2) {/* -- Point2 */
  background: url('../image/index_feature_01_2.svg') 31px center / 70px no-repeat,
    linear-gradient(to right, hsl(25, 90%, 56%) calc(128 / 1060 * 100%), hsl(0, 0%, 100%) calc(128 / 1060 * 100%)),
    hsl(0, 0%, 100%);
}
#feature > ol > li:nth-of-type(3) {/* -- Point3 */
  background: url('../image/index_feature_01_3.svg') 26px center / 76px no-repeat,
    linear-gradient(to right, hsl(25, 90%, 56%) calc(128 / 1060 * 100%), hsl(0, 0%, 100%) calc(128 / 1060 * 100%)),
    hsl(0, 0%, 100%);
}
#feature > ol > li:nth-of-type(4) {/* -- Point4 */
  background: url('../image/index_feature_01_4.svg') 44px center / 41px no-repeat,
    linear-gradient(to right, hsl(25, 90%, 56%) calc(128 / 1060 * 100%), hsl(0, 0%, 100%) calc(128 / 1060 * 100%)),
    hsl(0, 0%, 100%);
}
#feature > ol > li:nth-of-type(5) {/* -- Point5 */
  background: url('../image/index_feature_01_5.svg') 29px center / 70px no-repeat,
    linear-gradient(to right, hsl(25, 90%, 56%) calc(128 / 1060 * 100%), hsl(0, 0%, 100%) calc(128 / 1060 * 100%)),
    hsl(0, 0%, 100%);
}
#feature > ol > li > p:nth-of-type(1) {/* -- Point */
  grid-row: 1 / 2; grid-column: 1 / 2;
  height: 30px;
  position: relative;
  font-size: 20px;
}
#feature > ol > li > p:nth-of-type(1)::before {
  content: '';
  width: 2px; height: 22px;
  position: absolute;
  inset: calc(50% - 22px / 2) 0 auto auto; 
  background: hsl(0, 0%, 25%);
}
#feature > ol > li > p:nth-of-type(1)::after {
  font-size: 30px;
}
#feature > ol > li > h4 {
  grid-row: 1 / 2; grid-column: 2 / 3;
  margin: 0 0 0 20px;
  font-size: 26px; line-height: 30px;
}
#feature > ol > li > p:nth-of-type(2) {/* -- 説明 */
  grid-row: 2 / 3; grid-column: 1 / 3;
  margin: 23px 0 0;
  font-size: 20px; line-height: 30px;
}
#feature > ol > li > p:nth-of-type(2) > br {
  display: inline;
}

#feature > p:nth-of-type(2) {/* -- 品質課題の“現在地”を正しく捉えることが、改善の起点です。 */
  margin: 49px auto 0;
  font-size: 30px; line-height: 40px;
}
#feature > p:nth-of-type(2) > em {
  font-size: 40px;
}
#feature > p:nth-of-type(2) > br {
  display: none;
}

#feature > div {
  margin: 69px 0 0; padding: 60px 0 71px;
  background: url('../image/index_feature_02_1_pc.svg') left top / 406px no-repeat,
    url('../image/index_feature_02_2_pc.svg') right bottom / 405px no-repeat,
    linear-gradient(to right, hsl(219, 100%, 74%), hsl(219, 0%, 100%), hsl(219, 100%, 74%));
}
#feature > div > h4 {
  font-size: 30px; line-height: 40px;
}
#feature > div > h4 > span {
  line-height: 59px;
}
#feature > div > h4 > span > em {
  font-size: 40px;
}
#feature > div > h4 > span > em > small {
  font-size: 30px;
}
#feature > div > h4 > span > br:nth-of-type(1) {/* -- 成果物）と<br>プロジェク */
  display: none;
}
#feature > div > h4 > br:nth-of-type(3) {/* -- が向上する<br>仕組みづく */
  display: none;
}

#feature > div > p:nth-of-type(1) {/* -- ポールトゥウィンが蓄積してきた品質保証（QA）の専門知見をもとに、 */
  margin: 32px auto 0;
  font-size: 20px; line-height: 32px;
}
#feature > div > p:nth-of-type(1) > br:nth-of-type(1) {/* -- （QA）の<br>専門知見を */
  display: none;
}
#feature > div > p:nth-of-type(1) > br:nth-of-type(3) {/* -- 処方箋」の<br>ステップで */
  display: none;
}
#feature > div > p:nth-of-type(1) > br:nth-of-type(5) {/* -- 一気通貫で<br>支援し、持 */
  display: none;
}

#feature > div > p:nth-of-type(2) {/* -- グラフ */
  width: 832px;
  margin: 47px auto 0;
}
#feature > div > p:nth-of-type(2) > img {
  width: 100%; height: auto;
}



#flow {
  padding: 170px 0 0;
}

#flow > h3 {
  width: 1200px; height: 137px;
  font-size: 50px;
  border: 4px solid hsl(25, 90%, 56%);
}
#flow > h3::before {
  width: 25px; height: 33px;
  inset: auto auto -33px calc(50% - (25px / 2 - 4px));
}
#flow > h3::after {
  width: 25px; height: 33px;
  inset: auto auto -33px calc(50% - 25px / 2);
}

#flow > ol {
  gap: 20px;
  width: 1060px;
  margin: 78px auto 0;
}
#flow > ol > li {
  width: 1060px;
  padding: 24px 0 26px 220px;
  border-radius: 9px;
  box-shadow: 0 0 6px hsla(0, 0%, 0%, 0.3);
}
#flow > ol > li:nth-of-type(1)::after {/* -- 問診 */
  width: 159px; height: 107px;
  inset: 67px 37px auto auto;
  background: url('../image/index_flow_01_1.webp') center / 159px no-repeat;
}
#flow > ol > li:nth-of-type(2)::after {/* -- 診察 */
  width: 166px; height: 148px;
  inset: 46px 32px auto auto;
  background: url('../image/index_flow_01_2.webp') center / 166px no-repeat;
}
#flow > ol > li:nth-of-type(3)::after {/* -- 診断 */
  width: 168px; height: 157px;
  inset: 37px 31px auto auto;
  background: url('../image/index_flow_01_3.webp') center / 168px no-repeat;
}
#flow > ol > li:nth-of-type(4)::after {/* -- 処方箋 */
  width: 94px; height: 168px;
  inset: 31px 70px auto auto;
  background: url('../image/index_flow_01_4.webp') center / 94px no-repeat;
}
#flow > ol > li > hgroup {
  gap: 5px;
  width: 167px; height: calc(100% - 7px * 2);
  inset: 7px auto auto 9px;
  border-radius: 9px;
}
#flow > ol > li > hgroup::before {
  width: 41px; height: 21px;
  inset: auto auto -21px calc(50% - 41px / 2);
}
#flow > ol > li:last-of-type > hgroup::before {
  display: none;
}
#flow > ol > li > hgroup > p {
  font-size: 18px; line-height: 30px;
}
#flow > ol > li > hgroup > p::after {
  font-size: 30px;
}
#flow > ol > li > hgroup > h4 {
  font-size: 30px;
}
#flow > ol > li > p:nth-of-type(1) {/* -- オレンジ字 */
  font-size: 26px; line-height: 36px;
}
#flow > ol > li > p:nth-of-type(2) {/* -- 黒字 */
  margin: 17px 0 0; padding: 0 230px 0 0;
  font-size: 20px; line-height: 30px;
}

#flow > div {
  width: 100%;
  margin: -50px 0 0; padding: 112px 0 64px;
  background: url('../image/index_flow_02_1_pc.svg') left top / 438px no-repeat,
    url('../image/index_flow_02_2_pc.svg') right bottom / 433px no-repeat,
    linear-gradient(to right, hsl(219, 100%, 77%), hsl(219, 100%, 60%), hsl(219, 100%, 77%));
}
#flow > div > h4 {
  font-size: 40px; line-height: 60px;
}
#flow > div > h4 > br:nth-of-type(2) {/* -- ート”では<br>ありません */
  display: none;
}
#flow > div > p {
  margin: 33px auto 0;
  font-size: 20px; line-height: 30px;
}
#flow > div > p > br:nth-of-type(2) {/* -- の全体像と<br>“本当の原 */
  display: none;
}
#flow > div > p > br:nth-of-type(4) {/* -- まう前に、<br>まずは現状 */
  display: none;
}



#experience {
  width: 100%;
  padding: 170px 0 0;
}

#experience > h3 {
  width: 1200px; height: 137px;
  font-size: 50px;
  border: 4px solid hsl(25, 90%, 56%);
}
#experience > h3::before {
  width: 25px; height: 33px;
  inset: auto auto -33px calc(50% - (25px / 2 - 4px));
}
#experience > h3::after {
  width: 25px; height: 33px;
  inset: auto auto -33px calc(50% - 25px / 2);
}

#experience > ol {
  gap: 50px;
  width: 100%;
  margin: 79px auto 0;
}
#experience > ol > li {
  width: calc(50% + 600px);
  grid-template: auto / 0 576px 576px 0;
}
#experience > ol > li::before {
  width: 270px; height: 271px;
}
#experience > ol > li:nth-of-type(1) {/* -- 事業会社ビジネスオーナー様の場合 */
  padding: 55px 24px 20px calc(50% - 576px);
  border-radius: 0 9px 9px 0;
}
#experience > ol > li:nth-of-type(1)::before {
  inset: -44px 28px auto auto;
  background: url('../image/index_experience_01_1.webp') center / 270px no-repeat;
}
#experience > ol > li:nth-of-type(2) {/* -- 開発企業様の場合 */
  margin: 0 0 0 auto; padding: 55px 384px 20px 24px;
  border-radius: 9px 0 0 9px;
}
#experience > ol > li:nth-of-type(2)::before {
  inset: -44px auto auto 909px;
  background: url('../image/index_experience_01_2.webp') center / 270px no-repeat;
}
#experience > ol > li > h4 {
  grid-row: 1 / 2; grid-column: 2 / 4;
  width: 1152px;
  margin: 0; padding: 0 0 55px 24px;
  font-size: 30px;
  border-bottom: 1px solid hsl(240, 2%, 90%);
}
#experience > ol > li > h4::before {
  margin: 0 0 22px;
  font-size: 20px;
}
#experience > ol > li > h5 {
  width: 530px;
  padding: 0 0 0 62px;
  font-size: 24px; line-height: 48px;
}
#experience > ol > li > h5:nth-of-type(1) {/* -- よくある課題 */
  grid-row: 2 / 3; grid-column: 2 / 3;
  margin: 40px 0 0 46px;
  background: url('../image/index_experience_02_1.svg') left center / 48px no-repeat;
}
#experience > ol > li > h5:nth-of-type(2) {/* -- ドクターQAができること */
  grid-row: 2 / 3; grid-column: 3 / 4;
  margin: 40px 0 0 0;
  background: url('../image/index_experience_02_2.svg') left center / 48px no-repeat;
}
#experience > ol > li > ul {
  gap: 10px;
  width: 530px;
}
#experience > ol > li > ul > li {
  padding: 0 13px 0 31px;
  font-size: 20px; line-height: 26px;
}
#experience > ol > li > ul:nth-of-type(1) {/* -- よくある課題 */
  margin: 12px 0 0 46px;
  grid-row: 3 / 4; grid-column: 2 / 3;
}
#experience > ol > li > ul:nth-of-type(1) > li {
  background: url('../image/index_experience_03_1.svg') 3px 6px / 16px no-repeat;
}
#experience > ol > li > ul:nth-of-type(2) {/* -- ドクターQAができること */
  margin: 12px 0 0 0;
  grid-row: 3 / 4; grid-column: 3 / 4;
}
#experience > ol > li > ul:nth-of-type(2) > li {
  background: url('../image/index_experience_03_2.svg') left 4px / 22px no-repeat;
}
#experience > ol > li > div {
  grid-row: 4 / 5; grid-column: 2 / 4;
  grid-template: auto / 218px auto;
  width: 1060px;
  box-sizing: border-box;
  margin: 51px auto 0; padding: 10px 0 10px;
  border-radius: 7px;
}
#experience > ol > li > div > h5 {
  grid-row: 1 / 2; grid-column: 1 / 2;
  width: 218px;
  padding: 59px 0 0;
  font-size: 24px; line-height: 34px;
  text-align: center;
}
#experience > ol > li > div > h5::before {
  width: 69px; height: 102px;
  inset: -34px auto auto 74px;
  background: url('../image/index_experience_04.svg') center / 69px no-repeat;
}
#experience > ol > li > div > h5 > em {
  font-size: 40px; line-height: 54px;
}
#experience > ol > li > div > h5 > br {
  display: inline;
}
#experience > ol > li > div > ul {
  grid-row: 1 / 2; grid-column: 2 / 3;
  gap: 6px;
  width: 833px;
  margin: 0; padding: 12px 0 14px 21px;
  background: hsl(0, 0%, 100%);
}
#experience > ol > li > div > ul > li {
  padding: 0 15px 0 24px;
  font-size: 20px; line-height: 30px;
  background: url('../image/index_experience_05.svg') left 6px / 19px no-repeat;
}



#servicepack {
  margin: 170px 0 0; padding: 70px 0;
  background: url('../image/index_servicepack_01_1_pc.svg') left top / 495px no-repeat,
    url('../image/index_servicepack_01_2_pc.svg') right bottom / 494px no-repeat,
    linear-gradient(to right, hsl(219, 100%, 77%), hsl(219, 100%, 60%), hsl(219, 100%, 77%));
}

#servicepack > h3 {
  font-size: 50px;
}

#servicepack > ul {
  gap: 60px;
  width: 1200px;
  margin: 52px auto 0;
}
#servicepack > ul > li {
  width: 570px;
  padding: 44px 0 33px;
}
#servicepack > ul > li:nth-of-type(1) > hgroup::before {/* -- 品質診断支援 */
  width: 89px; height: 100px;
  inset: -3px auto auto 65px;
  background: url('../image/index_servicepack_02_1.svg') center / 89px no-repeat;
}
#servicepack > ul > li:nth-of-type(2) > hgroup::before {/* -- PMO/QMO支援 */
  width: 90px; height: 92px;
  inset: 2px auto auto 54px;
  background: url('../image/index_servicepack_02_2.svg') center / 90px no-repeat;
}
#servicepack > ul > li > hgroup > p {
  font-size: 24px;
}
#servicepack > ul > li:nth-of-type(1) > hgroup > p {/* -- まずは、即効性ある打ち手から */
  padding: 0 0 0 176px;
}
#servicepack > ul > li:nth-of-type(2) > hgroup > p {/* -- 仕組み化×定着までをプロと伴走 */
  padding: 0 0 0 159px;
}
#servicepack > ul > li > hgroup > h4 {
  margin: 19px 0 0;
  font-size: 50px;
}
#servicepack > ul > li:nth-of-type(1) > hgroup > h4 {/* -- 品質診断支援 */
  padding: 0 0 0 192px;
}
#servicepack > ul > li:nth-of-type(2) > hgroup > h4 {/* -- PMO/QMO支援 */
  padding: 0 0 0 159px;
}
#servicepack > ul > li > p {
  margin: 33px 0 0;
  font-size: 24px; line-height: 36px;
}



#contact {
  width: 100%;
  padding: 169px 0 0;
}

#contact > hgroup {
  width: 1212px;
  margin: 0 auto; padding: 96px 0 37px;
  background: url('../image/index_contact_01_pc.svg') left bottom / 240px no-repeat;
}
#contact > hgroup > ul > li:nth-of-type(1) {/* -- 開発に追われて課題の洗い出しができない */
  width: 184px;
  inset: 0 auto auto 920px;
}
#contact > hgroup > ul > li:nth-of-type(2) {/* -- 開発に追われて課題の洗い出しができない */
  width: 176px;
  inset: 130px auto auto 1028px;
}
#contact > hgroup > h3 {
  font-size: 50px; line-height: 80px;
}
#contact > hgroup > h3 > em {
  font-size: 60px; line-height: 100px;
}

#contact > menu {
  gap: 0;
  width: 100%;
  margin: 0; padding: 57px 0 85px;
}
#contact > menu > li {
  justify-content: center;
  gap: 15px;
  width: 500px;
}
#contact > menu > li > p {
  font-size: 24px; line-height: 36px;
}
#contact > menu > li > p > em {
  font-size: 30px; line-height: 44px;
}
#contact > menu > li > a {
  gap: 19px;
  width: 410px; height: 100px;
  font-size: 28px;
  border-radius: calc(100px / 2);
  transform-origin: center;
  transition: transform 0.2s ease-out;
}
#contact > menu > li > a:hover {
  transform: scale(1.07);
}
#contact > menu > li:nth-of-type(1) > a::before {/* -- 資料ダウンロード */
  width: 39px; height: 34px;
  background: url('../image/index_cover_05_1.svg') center / 39px no-repeat;
}
#contact > menu > li:nth-of-type(2) > a {/* -- お問い合わせ */
  border: 4px solid hsl(25, 90%, 56%);
}
#contact > menu > li:nth-of-type(2) > a::before {
  width: 39px; height: 34px;
  background: url('../image/index_cover_05_2.svg') center / 39px no-repeat;
}



footer {
  padding: 36px 0 0;
  border-top: none;
}

footer > dl {
  display: flex;
  flex-wrap: wrap;
  width: min(calc(100% - 80px), 1360px);
  margin: 0 auto;
}
footer > dl > dt {
  width: calc(140 / 1360 * 100%);
  margin: 8px 0 0;
  font-size: 14px; line-height: 25px;
}
footer > dl > dd {
  width: calc(1220 / 1360 * 100%);
  margin: 8px 0 0;
  font-size: 14px; line-height: 25px;
}

footer > menu {
  gap: 34px;
  width: min(calc(100% - 80px), 1360px);
  margin: 33px auto 0;
}
footer > menu > li {
  font-size: 14px; line-height: 1;
}
footer > menu > li > a {
  transition: color 0.2s;
}
footer > menu > li > a:hover {
  color: hsl(25, 90%, 56%);
  text-decoration: underline;
}

footer > small {
  margin: 20px 0 0; padding: 23px 0;
  font-size: 12px;
  border-top: 1px solid hsl(0, 0%, 29%);
}

}/* -- /@media (min-width:767px) */