@charset "UTF-8";
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document ========================================================================== */
/** 1. Correct the line height in all browsers. 2. Prevent adjustments of font size after orientation changes in iOS. */
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/* Sections ========================================================================== */
/** Remove the margin in all browsers. */
body { margin: 0; }

/** Correct the font size and margin on `h1` elements within `section` and `article` contexts in Chrome, Firefox, and Safari. */
h1 { font-size: 2em; margin: 0.67em 0; }

/* Grouping content ========================================================================== */
/** 1. Add the correct box sizing in Firefox. 2. Show the overflow in Edge and IE. */
hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/* Text-level semantics ========================================================================== */
/** Remove the gray background on active links in IE 10. */
a { background-color: transparent; }

/** 1. Remove the bottom border in Chrome 57- 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ text-decoration: underline dotted; /* 2 */ }

/** Add the correct font weight in Chrome, Edge, and Safari. */
b, strong { font-weight: bolder; }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/** Add the correct font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* Embedded content ========================================================================== */
/** Remove the border on images inside links in IE 10. */
img { border-style: none; }

/* Forms ========================================================================== */
/** 1. Change the font styles in all browsers. 2. Remove the margin in Firefox and Safari. */
button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }

/** Show the overflow in IE. 1. Show the overflow in Edge. */
button, input { /* 1 */ overflow: visible; }

/** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
button, select { /* 1 */ text-transform: none; }

/** Correct the inability to style clickable types in iOS and Safari. */
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }

/** Remove the inner border and padding in Firefox. */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

/** Restore the focus styles unset by the previous rule. */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

/** Correct the padding in Firefox. */
fieldset { padding: 0.35em 0.75em 0.625em; }

/** 1. Correct the text wrapping in Edge and IE. 2. Correct the color inheritance from `fieldset` elements in IE. 3. Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers. */
legend { box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }

/** Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress { vertical-align: baseline; }

/** Remove the default vertical scrollbar in IE 10+. */
textarea { overflow: auto; }

/** 1. Add the correct box sizing in IE 10. 2. Remove the padding in IE 10. */
[type="checkbox"], [type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

/** 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */
[type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }

/** Remove the inner padding in Chrome and Safari on macOS. */
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** 1. Correct the inability to style clickable types in iOS and Safari. 2. Change font properties to `inherit` in Safari. */
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

/* Interactive ========================================================================== */
/* Add the correct display in Edge, IE 10+, and Firefox. */
details { display: block; }

/* Add the correct display in all browsers. */
summary { display: list-item; }

/* Misc ========================================================================== */
/** Add the correct display in IE 10+. */
template { display: none; }

/** Add the correct display in IE 10. */
[hidden] { display: none; }

/*--Layout--*/
h1, h2, h3, h4, h5, h6 { font-size: 1em; font-weight: normal; }

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; }

body { position: relative; font-family: "Noto Sans JP", sans-serif; font-size: 1.5rem; line-height: 1.6; }
body * { box-sizing: border-box; }
@media (max-width: 960px) { body { font-size: 1rem; } }

img { max-width: 100%; display: block; }

ul, ol { list-style: none; }

a { color: #214cc5; text-decoration: none; transition: 0.4s; }
a:hover { color: #c00; }
a:hover img { opacity: 0.8; }

main { overflow: hidden; }

#catch { width: 1500px; margin: auto; position: relative; }
@media (max-width: 1500px) { #catch { width: auto; margin-right: 0; margin-left: 0; } }
#catch:before { content: ''; position: absolute; inset: 0; display: block; width: 100vw; height: 100%; margin: 0 calc(50% - 50vw); background: #8b8b8b; z-index: -1; }
#catch h1 { position: absolute; top: 20px; left: 20px; width: 220px; }
@media (max-width: 960px) { #catch h1 { width: 20vw; } }

.sec1 { position: relative; margin-bottom: 40px; }
.sec1 .__heading { background: #000000; position: relative; padding-bottom: 20px; }
.sec1 .__img { width: 1005px; margin: auto; }
@media (max-width: 1005px) { .sec1 .__img { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec1 .__body { width: 1370px; margin: auto; }
@media (max-width: 1370px) { .sec1 .__body { width: auto; margin-right: 0; margin-left: 0; } }
.sec1 .__body img { margin: 0px 0 40px auto; }
@media (max-width: 960px) { .sec1 .__body img { margin-top: 0; padding-left: 8px; } }
.sec1 .__text { width: 780px; margin: auto; }
@media (max-width: 780px) { .sec1 .__text { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec1 h2 { position: absolute; z-index: 1; inset: auto 0 30px; margin: auto; width: 1370px; margin: auto; }
@media (max-width: 1370px) { .sec1 h2 { width: auto; margin-right: 0; margin-left: 0; } }

.sec2 { width: 1370px; margin: auto; background: #E60012; padding: 40px 60px 140px; color: #fff; position: relative; }
@media (max-width: 1370px) { .sec2 { width: auto; margin-right: 0; margin-left: 0; } }
.sec2 h2 { font-size: 2.4rem; line-height: 1.4; font-family: "Noto Serif JP", serif; text-align: center; }
@media (max-width: 960px) { .sec2 { padding: 3rem 1rem 0; }
  .sec2 h2 { font-size: 1.5rem; }
  .sec2 h2 br { display: none; } }
.sec2 .__column { display: flex; margin: 40px 0 80px; }
.sec2 .__img { flex-shrink: 0; margin-left: 30px; }
.sec2 .__text { width: 100%; }
.sec2 .__column2 { display: flex; margin: 40px 0 0; }
.sec2 .__img2 { flex-shrink: 0; margin-right: 30px; }
.sec2 .__text2 { width: 100%; }
@media (max-width: 960px) { .sec2 .__column, .sec2 .__column2 { flex-direction: column; margin-bottom: 30px; }
  .sec2 .__img { margin-left: 0; margin-right: 0; margin-top: 30px; }
  .sec2 .__img2 { margin-right: 0; margin-bottom: 30px; } }
.sec2 .__team { position: absolute; inset: auto 0 -20px auto; }
@media (max-width: 960px) { .sec2 .__team { position: relative; bottom: -2vw; } }

/*
.sec3 { width: 1280px; margin: auto; margin-top: 80px; margin-bottom: 40px; }
@media (max-width: 1280px) { .sec3 { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec3 h2 { font-size: 2.4rem; line-height: 1.4; font-family: "Noto Serif JP", serif; text-align: center; margin-bottom: 80px; }
.sec3 h2 span { font-size: 2rem; }
.sec3 h3 { color: #E60012; font-size: 2.4rem; text-align: center; margin-bottom: 20px; }
.sec3 .__column { display: flex; flex-wrap: wrap; }
.sec3 .__column > * { width: calc( ( 100% - 30px * ( 3 - 1) ) / 3 ); }
.sec3 .__column > *:nth-child(n) { margin-right: 30px; }
.sec3 .__column > *:nth-child(3n) { margin-right: 0; }
@media (max-width: 960px) { .sec3 .__column { flex-direction: column; }
.sec3 .__column > *:nth-child(n) { width: 100%; margin-right: 0; } }
.sec3 .__column h4 { text-align: center; font-size: 1.6rem; }
@media (max-width: 960px) { .sec3 h2 { font-size: 1.5rem; margin-bottom: 30px; }
.sec3 h2 span { font-size: 1.5rem; }
.sec3 h2 br { display: none; }
.sec3 h3 { font-size: 1.25rem; margin-bottom: 10px; }
.sec3 .__column h4 { font-size: 1.125rem; } }
*/


.sec3 { width: 1280px; margin: auto; margin-top: 80px; margin-bottom: 40px; }

@media (max-width: 1280px) { 
	.sec3 { width: auto; margin-right: 10px; margin-left: 10px; } 
}

.sec3 h2 { color: #E60012; font-size: 2.4rem; text-align: center; margin-bottom: 20px; }
.sec3 .__column { display: flex; flex-wrap: wrap; }
.sec3 .__column > * { width: calc( ( 100% - 30px * ( 3 - 1) ) / 3 ); }
.sec3 .__column > *:nth-child(n) { margin-right: 30px; }
.sec3 .__column > *:nth-child(3n) { margin-right: 0; }

@media (max-width: 960px) { 
	.sec3 .__column { flex-direction: column; }
	.sec3 .__column > *:nth-child(n) { width: 100%; margin-right: 0; }
	.sec3 .__column li{ margin-bottom:2em; }
}

.sec3 .__column h3 { text-align: center; font-size: 1.6rem; }

@media (max-width: 960px) {
	.sec3 h2 { font-size: 1.5rem; margin-bottom: 10px; }
	.sec3 .__column h3 { font-size: 1.125rem; }
}



.arw1 { fill: #FFF100; margin-bottom: 20px; }

.sec4 { width: 1500px; margin: auto; margin-bottom: 60px; }
@media (max-width: 1500px) { .sec4 { width: auto; margin-right: 0; margin-left: 0; } }
.sec4 .__column { margin-bottom: 30px; display: flex; }
.sec4 .__column .__img { margin-right: 30px; flex-shrink: 0; }
@media (max-width: 960px) { .sec4 .__column { flex-direction: column; }
  .sec4 .__column .__img { margin-right: 0; margin-bottom: 30px; } }
.sec4 .__column2 { margin-bottom: 30px; display: flex; position: relative; }
.sec4 .__column2 .__img2 { margin-right: 30px; flex-shrink: 0; }
.sec4 .__column2 .__img2 img { margin-bottom: 10px; }
.sec4 .__column2 .__img2 p { font-size: 1rem; }
.sec4 .__column2 .__subimg1 { position: relative; z-index: 1; margin-left: 160px; }
.sec4 .__column2 .__subimg2, .sec4 .__column2 .__subimg3 { position: absolute; }
.sec4 .__column2 .__subimg2 { inset: auto auto 100px -80px; }
.sec4 .__column2 .__subimg3 { inset: auto 0 -50px 0; margin: auto; }
.sec4 .__column2 .__text2-2 { margin-top: 20px; margin-left: 240px; }
@media (max-width: 1280px) { .sec4 .__column2 .__pc { display: none; }
  .sec4 .__column2 .__sp { display: block; margin-top: 20px; }
  .sec4 .__column2 .__sp ul { display: flex; }
  .sec4 .__column2 .__sp ul > li:nth-child(1) { width: 50%; flex-shrink: 0; }
  .sec4 .__column2 .__sp p { font-size: 0.875rem; }
  .sec4 .__column2 .__subimg1, .sec4 .__column2 .__subimg2, .sec4 .__column2 .__subimg3 { position: relative; inset: 0; margin: 0; }
  .sec4 .__column2 .__subimg1 { width: 60%; height: auto; margin-bottom: 10px; }
  .sec4 .__column2 .__text2-2 { margin-left: 0; margin-top: 2em; } }
@media (max-width: 960px) { .sec4 .__column2 { flex-direction: column; }
  .sec4 .__column2 .__img2 { margin-right: 0; margin-bottom: 30px; } }

.sec4-1 { width: 1370px; margin: auto; background: #FFF100; padding: 60px 60px 20px; }
@media (max-width: 1370px) { .sec4-1 { width: auto; margin-right: 0; margin-left: 0; } }
.sec4-1 .sec4-hd img { background: #FFF100; }
@media (max-width: 960px) { .sec4-1 { padding-left: 10px; padding-right: 10px; } }

.sec4-hd { display: flex; width: 900px; margin: auto; align-items: center; border: solid 2px #fff; background: rgba(255, 255, 255, 0.4); margin-bottom: 30px; }
@media (max-width: 900px) { .sec4-hd { width: auto; margin-right: 0; margin-left: 0; } }
.sec4-hd img { width: 182px; flex-shrink: 0; border-right: solid 2px #fff; }
.sec4-hd h2 { font-size: 2.5rem; padding-left: 1em; }
@media (max-width: 960px) { .sec4-hd img { width: 30vw; }
  .sec4-hd h2 { font-size: 1.5rem; } }

.sec4-2 { position: relative; background: url("../_img/lp-bg-sec4-2.jpg") center top/1500px no-repeat #FFF100; margin-top: -200px; padding: 320px 10px 100px; z-index: -1; }
@media (max-width: 960px) { .sec4-2 { background-position: center top -400px; margin-top: 0; padding-top: 50px; } }
.sec4-2 .__column3 { height: 1000px; position: relative; }
.sec4-2 .__column3 .sec4-hd { margin: auto; background: rgba(255, 255, 255, 0.2); }
.sec4-2 .__column3 .sec4-hd h2 { color: #fff; }
.sec4-2 .__column3 p { width: 700px; margin: auto; font-size: 1.25rem; color: #fff; margin: 20px auto 40px; }
@media (max-width: 700px) { .sec4-2 .__column3 p { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec4-2 .__column3 > img { margin: auto; }
.sec4-2 .__column3 .arw2 { position: absolute; inset: auto 0 0; fill: #fff; }
@media (max-width: 960px) { .sec4-2 .__column3 { height: auto; }
  .sec4-2 .__column3 .arw2 { margin-top: 60px; position: relative; } }
.sec4-2 .__column4 { width: 1370px; margin: auto; background: #FAEE00; padding: 40px; }
@media (max-width: 1370px) { .sec4-2 .__column4 { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec4-2 .__column4 h3 { font-family: "Noto Serif JP", serif; text-align: center; }
.sec4-2 .__column4 .__hd1 { font-size: 2.2rem; margin-bottom: 1em; }
@media (max-width: 960px) { .sec4-2 .__column4 { padding: 1rem; }
  .sec4-2 .__column4 .__hd1 { font-size: 1.5rem; } }
.sec4-2 .__column4 .__text1 { width: 855px; margin: auto; margin-bottom: 40px; }
@media (max-width: 855px) { .sec4-2 .__column4 .__text1 { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec4-2 .__column4 .__hd2 { font-size: 3rem; }
.sec4-2 .__column4 .__hd2 span { font-size: 1.8rem; }
@media (max-width: 960px) { .sec4-2 .__column4 .__hd2 { font-size: 1.5rem; margin-bottom: 30px; }
  .sec4-2 .__column4 .__hd2 span { font-size: 1.5rem; } }
.sec4-2 .__column4 h4 { color: #E60012; font-size: 2rem; font-weight: bold; text-align: center; }
@media (max-width: 960px) { .sec4-2 .__column4 h4 { font-size: 1.5rem; margin-bottom: 20px; } }
.sec4-2 .__column4 .__survey { display: flex; align-items: center; width: 1080px; margin: auto; }
@media (max-width: 1080px) { .sec4-2 .__column4 .__survey { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec4-2 .__column4 .__graph { flex-shrink: 0; margin-right: -200px; z-index: 1; }
.sec4-2 .__column4 .__text2 { background: #F7E98C; border-radius: 5px; padding: 2rem 2rem 2em 220px; }
.sec4-2 .__column4 .__text2 h5 { font-weight: bold; font-size: 1.6rem; margin-bottom: 1em; }
.sec4-2 .__column4 .__text2 p { font-size: 1.4rem; }
.sec4-2 .__column4 .__text2 p + p { margin-top: 1em; }
.sec4-2 .__column4 .__text3 { width: 1080px; margin: auto; text-align: right; }
@media (max-width: 1080px) { .sec4-2 .__column4 .__text3 { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec4-2 .__column4 .__text3 p { display: inline-block; text-align: left; font-size: 0.9375rem; }
.sec4-2 .__column4 .__text4 { width: 855px; margin: auto; margin-top: 20px; margin-bottom: 40px; }
@media (max-width: 855px) { .sec4-2 .__column4 .__text4 { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec4-2 .__column4 .__hd3 { font-family: "Noto Serif JP", serif; font-size: 2.4rem; }
@media (max-width: 960px) { .sec4-2 .__column4 .__survey { flex-direction: column; }
  .sec4-2 .__column4 .__graph { margin-right: 0; }
  .sec4-2 .__column4 .__text2 { padding: 1em; }
  .sec4-2 .__column4 .__text2 h5, .sec4-2 .__column4 .__text2 p { font-size: 1rem; }
  .sec4-2 .__column4 .__text3 { text-align: center; }
  .sec4-2 .__column4 .__text3 p { font-size: 0.875rem; text-align: center; }
  .sec4-2 .__column4 .__hd3 { font-size: 1.5rem; }
  .sec4-2 .__column4 .__hd3 br { display: none; } }
.sec4-2 .__column5 > img { margin-left: auto; margin-right: 65px; margin-bottom: 100px; }
.sec4-2 .__column5 .__img { position: relative; width: 1370px; margin: auto; }
@media (max-width: 1370px) { .sec4-2 .__column5 .__img { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec4-2 .__column5 .__img2 { position: absolute; inset: -50px 0 auto; margin: auto; }

.arw3 { fill: #E60012; margin-top: -30px; }

.sec5 { width: 1500px; margin: auto; background: url("../_img/lp-bg-sec5.jpg") center top/1500px no-repeat; padding-bottom: 40px; }
@media (max-width: 1500px) { .sec5 { width: auto; margin-right: 0; margin-left: 0; } }
.sec5 > img { margin-left: auto; margin-bottom: 40px; }
.sec5 .__imgset { width: 1370px; margin: auto; position: relative; }
@media (max-width: 1370px) { .sec5 .__imgset { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec5 .__triangle { position: absolute; inset: 0; margin: auto; }
.sec5 h2 { font-size: 2.5rem; color: #fff; text-align: center; margin-bottom: 20px; }
.sec5 p { color: #fff; text-align: center; }
@media (max-width: 960px) { .sec5 { background-size: cover; }
  .sec5 .__imgset { margin-bottom: 30px; }
  .sec5 .__triangle { position: relative; margin: 20px auto; width: auto; }
  .sec5 h2 { font-size: 1.5rem; } }

.sec6 { width: 1500px; margin: auto; background: url("../_img/lp-bg-sec6.jpg") center top/1500px no-repeat; padding: 50px 50px 0 20px; }
@media (max-width: 1500px) { .sec6 { width: auto; margin-right: 0; margin-left: 0; } }
.sec6 .__industry { display: flex; }
.sec6 .__graph { flex-shrink: 0; margin-right: 40px; }
.sec6 .__text { width: 100%; }
.sec6 .__text h2, .sec6 .__text p { color: #fff; }
.sec6 .__text h2 { font-size: 2.5rem; margin: 20px 0 50px; }
@media (max-width: 960px) { .sec6 { background-image: url("../_img/lp-bg-sec6-sp.jpg"); background-size: cover; padding: 40px 20px; }
  .sec6 .__text h2 { font-size: 1.5rem; }
  .sec6 .__industry { flex-direction: column-reverse; }
  .sec6 .__graph { margin-right: 0; margin-top: 60px; } }

.arw4 { fill: #FFF100; }

.sec7 { width: 1500px; margin: auto; background: #000000; padding-top: 50px; position: relative; }
@media (max-width: 1500px) { .sec7 { width: auto; margin-right: 0; margin-left: 0; } }
.sec7 .__img { width: 1048px; margin: auto; }
.sec7 .__hd1, .sec7 .__hd2 { position: absolute; margin: auto; }
.sec7 .__hd1 { inset: 20px 0 auto; z-index: 1; }
.sec7 .__hd2 { inset: auto auto 50px 50px; z-index: 1; }
@media (max-width: 960px) { .sec7 { background: #000; padding: 15vw 0; }
  .sec7 .__hd2 { left: 0; bottom: 0; } }

.sec8 { width: 1370px; margin: auto; background: #E60012; color: #fff; padding: 40px; margin-bottom: 40px; }
@media (max-width: 1370px) { .sec8 { width: auto; margin-right: 0; margin-left: 0; } }
.sec8 h2 { font-size: 2.5rem; font-family: "Noto Serif JP", serif; text-align: center; margin-bottom: 40px; }
.sec8 h2 span { font-size: 2rem; }
@media (max-width: 960px) { .sec8 h2 { font-size: 1.5rem; }
  .sec8 h2 span { font-size: 1.5rem; } }
.sec8 .__column { display: flex; }
.sec8 .__text { width: 100%; }
.sec8 .__text img { margin-top: 30px; }
.sec8 .__img { width: 550px; flex-shrink: 0; margin-left: 50px; display: flex; flex-direction: column; }
.sec8 .__img h3 { margin-top: auto; font-size: 2rem; font-family: "Noto Serif JP", serif; }
.sec8 .__sign { margin-top: -140px; }
.sec8 .__fight { max-width: 600px; }
.sec8 .__result { width: 1140px; margin: auto; margin-top: 20px; background: #fff; color: #000000; padding: 60px 100px; }
@media (max-width: 1140px) { .sec8 .__result { width: auto; margin-right: 0; margin-left: 0; } }
.sec8 .__result table th, .sec8 .__result table td { padding: 0.5rem; font-weight: normal; vertical-align: top; }
.sec8 .__result p { margin: 0.5rem; }
@media (max-width: 960px) { .sec8 { padding: 20px; }
  .sec8 .__column { flex-direction: column; }
  .sec8 .__img { width: auto; margin-left: 0; margin-top: 20px; }
  .sec8 .__fight { max-width: 100%; }
  .sec8 .__result { padding: 20px; }
  .sec8 .__result table th { white-space: nowrap; } }

.arw5 { fill: #172A88; transform: translateY(-60px); }

.sec9 { width: 1370px; margin: auto; background: #ACC7E8; padding: 40px 40px 80px; }
@media (max-width: 1370px) { .sec9 { width: auto; margin-right: 0; margin-left: 0; } }
.sec9 h2 { font-size: 2.5rem; text-align: center; margin-bottom: 40px; }
@media (max-width: 960px) { .sec9 { padding-left: 0; padding-right: 0; }
  .sec9 h2 { font-size: 1.5rem; } }
.sec9 .__column { display: flex; align-items: center; margin-bottom: 50px; }
.sec9 .__column .__img { flex-shrink: 0; margin-right: 40px; }
.sec9 .__column .__hd { width: 100%; }
.sec9 .__column .__hd img { margin-bottom: 30px; }
.sec9 .__column .__hd p { font-size: 2.4rem; font-family: "Noto Serif JP", serif; }
@media (max-width: 1280px) { .sec9 .__column { flex-direction: column; align-items: flex-start; }
  .sec9 .__column .__img { margin-right: 0; margin-bottom: 40px; } }
@media (max-width: 960px) { .sec9 .__column { padding-left: 10px; padding-right: 10px; }
  .sec9 .__column .__img { margin-bottom: 20px; }
  .sec9 .__column .__pc { display: none; }
  .sec9 .__column .__sp { display: block; font-size: 1.5rem; font-family: "Noto Serif JP", serif; margin-bottom: 10px; } }
.sec9 .__goals { width: 1052px; margin: auto; background: #429BC8; padding: 20px 60px; margin-bottom: 50px; }
@media (max-width: 1052px) { .sec9 .__goals { width: auto; margin-right: 0; margin-left: 0; } }
.sec9 .arw6 { fill: #FFF100; transform: translateY(50px); }
.sec9 h3 { margin-bottom: 40px; }
.sec9 .__column2 { display: flex; }
.sec9 .__img2 { margin-left: 20px; flex-shrink: 0; }
.sec9 .__text, .sec9 .__text2 { color: #fff; }
.sec9 .__imgset { width: 1180px; margin: auto; display: flex; transform: translateX(-220px); justify-content: space-between; margin: 40px 0; }
@media (max-width: 1180px) { .sec9 .__imgset { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec9 .__imgset > img { flex-shrink: 0; flex-grow: 0; }
@media (max-width: 1370px) { .sec9 .__imgset { transform: translateX(0); width: auto; }
  .sec9 .__imgset > img { flex-shrink: 1; width: 100%; height: auto; margin: 10px; } }
@media (max-width: 960px) { .sec9 .__goals { padding: 20px; }
  .sec9 .__column2 { flex-direction: column; }
  .sec9 .__img2 { margin-left: 0; margin-top: 20px; }
  .sec9 .__imgset { flex-direction: column; margin-left: 0; margin-right: 0; }
  .sec9 .__imgset > img { width: auto; } }
.sec9 .__hd2 { width: 1052px; margin: auto; display: flex; align-items: center; }
@media (max-width: 1052px) { .sec9 .__hd2 { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec9 .__hd2 img { flex-shrink: 0; margin-right: 40px; }
.sec9 .__hd2 p { font-size: 2rem; font-family: "Noto Serif JP", serif; }
@media (max-width: 960px) { .sec9 .__hd2 { flex-direction: column; margin-bottom: 40px; }
  .sec9 .__hd2 img { margin-right: 0; margin-bottom: 20px; }
  .sec9 .__hd2 p { font-size: 1.5rem; } }
.sec9 .__column3 { width: 1052px; margin: auto; display: flex; align-items: center; }
@media (max-width: 1052px) { .sec9 .__column3 { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec9 .__text3 strong { color: #E60012; font-weight: normal; }
.sec9 .__text3 p + p { margin-top: 1em; }
.sec9 .__img3 { flex-shrink: 0; margin-left: 20px; }
@media (max-width: 960px) { .sec9 .__column3 { flex-direction: column; margin-bottom: 40px; }
  .sec9 .__img3 { margin-left: 0; margin-top: 20px; } }

.sec10 { width: 1370px; margin: auto; background: #EFEFEF; padding: 40px; margin-top: 40px; position: relative; z-index: 1; }
@media (max-width: 1370px) { .sec10 { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec10 h2 { font-size: 2.5rem; text-align: center; margin-bottom: 40px; }
.sec10 ul { display: flex; flex-wrap: wrap; justify-content: center; }
.sec10 ul > li { width: 510px; margin: 20px; display: flex; flex-direction: column; }
.sec10 ul h3 { font-size: 2rem; text-align: center; margin-bottom: 10px; }
.sec10 ul p { margin-bottom: 1em; }
.sec10 ul img { margin-top: auto; }
@media (max-width: 1280px) { .sec10 ul > li { width: 46%; margin: 20px 1%; } }
@media (max-width: 960px) { .sec10 h2 { font-size: 1.5rem; }
  .sec10 ul { flex-direction: column; }
  .sec10 ul > li { width: 100%; margin: 0 0 20px; }
  .sec10 ul h3 { font-size: 1.25rem; }
  .sec10 ul p { text-align: center; }
  .sec10 ul img { margin: auto; } }

.sec11 { background: url("../_img/lp-bg-sec11.jpg") center bottom/1500px no-repeat #FFF100; width: 1500px; margin: auto; height: 1200px; margin-top: -250px; padding-top: 300px; position: relative; }
@media (max-width: 1500px) { .sec11 { width: auto; margin-right: 0; margin-left: 0; } }
.sec11 .__column { width: 1240px; margin: auto; margin-left: auto; margin-right: 50px; display: flex; }
@media (max-width: 1240px) { .sec11 .__column { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec11 h2 { color: #fff; font-size: 2.2rem; margin-bottom: 20px; }
.sec11 p { color: #fff; }
.sec11 .__img { flex-shrink: 0; margin-left: 10px; }
.sec11 .__btn { position: absolute; inset: auto 0 40px; margin: auto; width: 835px; margin: auto; }
@media (max-width: 835px) { .sec11 .__btn { width: auto; margin-right: 10px; margin-left: 10px; } }
.sec11 .__btn a { display: flex; align-items: center; justify-content: center; width: 100%; height: 130px; background: #C30D23; border-radius: 65px; color: #fff; font-size: 2rem; }
.sec11 .__btn a:hover{ opacity: 0.8; }
.sec11 .__btn a img { margin-left: 20px; }
.sec11 .__btn p { text-align: center; }
@media (max-width: 960px) { .sec11 .__column { flex-direction: column; margin-top: 20px; }
  .sec11 h2 { font-size: 1.5rem; }
  .sec11 .__img { margin-top: 20px; margin-right: 0; }
  .sec11 .__btn a { height: 15vw; border-radius: 7.5vw; font-size: 1.5rem; }
  .sec11 .__btn a img { width: 40px; } }

.sec12 { width: 1500px; margin: auto; background: #FFF100; padding: 100px 0; }
@media (max-width: 1500px) { .sec12 { width: auto; margin-right: 0; margin-left: 0; } }
.sec12 h2 { font-size: 2.5rem; text-align: center; margin-bottom: 50px; }
@media (max-width: 960px) { .sec12 { padding-bottom: 0; } }

/* CSS */
.sponsors1 {
	width: 1075px;
	margin: auto;
	height: auto;
	min-height: 650px;
	background: url("../_img/top6.jpg") center/cover no-repeat;
	position: relative;
	margin-bottom: 30px;
	padding-bottom: 20px;
}
.sponsors1 a {
	display: inline-block;
}
.sponsors1 img {
	vertical-align: top;
}
.sponsors1 ul {
	position: absolute;
	top: 20px;
	width: 100%;
	background: rgba(255, 255, 255, 0.5);
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
/* はざまのバナー用特別スタイル */
.sponsors1 ul li:first-child {
	width: 100%;
	padding: 20px 50px;
	text-align: center;
}
/* はざま以外のバナー用スタイル（2列表示） */
.sponsors1 ul li:not(:first-child):not(:last-child) {
	width: 48%;
	padding: 20px 50px;
	text-align: center;
}
/* 最後のバナーが1つの場合（中央揃え） */
.sponsors1 ul li:last-child:nth-child(odd) {
	width: 48%;
	padding: 20px 50px;
	text-align: center;
	margin: 0 auto;
}
/* 最後のバナーが2つ目の場合（2列表示を維持） */
.sponsors1 ul li:last-child:nth-child(even) {
	width: 48%;
	padding: 20px 50px;
	text-align: center;
}
/* レスポンシブ対応 */
@media (max-width: 1075px) {
	.sponsors1 {
		width: auto;
		margin-right: 0;
		margin-left: 0;
		min-height:90vw;
	}
	.sponsors1 ul {
		padding: 1.8vw;
		justify-content: space-around;
	}
	.sponsors1 ul li:first-child {
		width: 90%;
		padding: 1.8vw 0;
	}
	.sponsors1 ul li:not(:first-child) {
		width: 40%;
		padding: 1.8vw 0;
		margin:1.5em 0;
	}
	/* レスポンシブ時の中央揃え */
	.sponsors1 ul li:last-child:nth-child(odd) {
		width: 40%;
	}

	/* はざま以外のバナー用スタイル（2列表示） */
	.sponsors1 ul li:not(:first-child):not(:last-child) {
		padding: 5px 10px;
	}

	/* 最後のバナーが1つの場合（中央揃え） */
	.sponsors1 ul li:last-child:nth-child(odd) {
		padding: 5px 10px;
	}
	/* 最後のバナーが2つ目の場合（2列表示を維持） */
	.sponsors1 ul li:last-child:nth-child(even) {
		padding: 5px 10px;
	}
}
@media (max-width: 960px) {
	.sponsors1 ul {
		top: 0;
	}
	
	.sponsors1 ul .item {
		padding: 5px 10px;
	}
}


/*
.sponsors2 { width: 1075px; margin: auto; background: #fff; position: relative; z-index: 2; }
@media (max-width: 1075px) { .sponsors2 { width: auto; margin-right: 0; margin-left: 0; } }
.sponsors2 ul { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }
.sponsors2 ul > li { margin: 20px; height: 100px; max-width: 375px; }
.sponsors2 ul > li a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.sponsors2 ul > li img { height: 100px; width: auto; vertical-align: middle; }
@media (max-width: 960px) { .sponsors2 ul > li { margin: 10px; height: 40px; max-width: 45vw; }
  .sponsors2 ul > li a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
  .sponsors2 ul > li img { height: 40px; width: auto; vertical-align: middle; } }
*/


.sponsors2 ul {
	list-style: none;
	margin: 0;
	padding: 0 10px;
	display: grid;
	/* PC等の大きな画面では複数列表示する（例として5列） */
	grid-template-columns: repeat(5, 1fr);
	gap: 0.5em;
}

.sponsors2 ul li img {
	padding:2px;
	width: 100%;
	/* 正方形の枠にする */
	aspect-ratio: 16 / 6;
	/* 画像全体が枠内に収まるように表示 */
	object-fit: contain;
	/* 余白が目立つ場合は背景色を指定（例：白） */
	background-color: #fff;
	display: block;
}

/* スマホ表示の場合は2列にする */
@media screen and (max-width: 768px) {
	.sponsors2 ul {
		padding:0 5px;
		grid-template-columns: repeat(3, 1fr);
	}
}


#pagetop { border: none; width: 53px; height: 128px; border-radius: 0; background: url("../_img/lp-pagetop.svg") center/cover transparent; box-shadow: none; position: fixed; bottom: 20px; right: 20px; }
#pagetop:hover { background-color: transparent !important; }

footer { background: #FAEE00; padding: 40px 0; width: 1500px; margin: auto; }
@media (max-width: 1500px) { footer { width: auto; margin-right: 0; margin-left: 0; } }
footer .footer-info { width: 1370px; margin: auto; display: flex; justify-content: space-between; align-items: flex-end; }
@media (max-width: 1370px) { footer .footer-info { width: auto; margin-right: 10px; margin-left: 10px; } }
footer .footer-links > li:nth-child(2) { margin: 10px 0; }
footer .footer-links li > ul { display: flex; align-items: center; }
footer .footer-links li > ul > li { width: 56px; margin-right: 20px; }
footer .footer-links a { color: #000000; font-weight: bold; }
@media (max-width: 960px) { footer .footer-info { flex-direction: column; align-items: center; }
  footer .footer-links { margin-top: 40px; } }

/*--CPU--*/
.d8-flex-bs { display: flex; width: 100%; }
.d8-flex-bs .d8-flex-img { flex-shrink: 0; }
.d8-flex-bs .d8-flex-text { width: 100%; }
@media (max-width: 960px) { .d8-flex-bs { flex-wrap: wrap; } }

.arw { width: 100px; margin-left: auto; margin-right: auto; display: block; }
@media (max-width: 960px) { .arw { width: 15vw; } }

.__sp { display: none; }

.u-mg0 { margin: 0px !important; }

.u-mt0 { margin-top: 0px !important; }

.u-mr0 { margin-right: 0px !important; }

.u-mb0 { margin-bottom: 0px !important; }

.u-ml0 { margin-left: 0px !important; }

.u-pd0 { padding: 0px !important; }

.u-pt0 { padding-top: 0px !important; }

.u-pr0 { padding-right: 0px !important; }

.u-pb0 { padding-bottom: 0px !important; }

.u-pl0 { padding-left: 0px !important; }

.u-mg10 { margin: 10px !important; }

.u-mt10 { margin-top: 10px !important; }

.u-mr10 { margin-right: 10px !important; }

.u-mb10 { margin-bottom: 10px !important; }

.u-ml10 { margin-left: 10px !important; }

.u-pd10 { padding: 10px !important; }

.u-pt10 { padding-top: 10px !important; }

.u-pr10 { padding-right: 10px !important; }

.u-pb10 { padding-bottom: 10px !important; }

.u-pl10 { padding-left: 10px !important; }

.u-mg20 { margin: 20px !important; }

.u-mt20 { margin-top: 20px !important; }

.u-mr20 { margin-right: 20px !important; }

.u-mb20 { margin-bottom: 20px !important; }

.u-ml20 { margin-left: 20px !important; }

.u-pd20 { padding: 20px !important; }

.u-pt20 { padding-top: 20px !important; }

.u-pr20 { padding-right: 20px !important; }

.u-pb20 { padding-bottom: 20px !important; }

.u-pl20 { padding-left: 20px !important; }

.u-mg30 { margin: 30px !important; }

.u-mt30 { margin-top: 30px !important; }

.u-mr30 { margin-right: 30px !important; }

.u-mb30 { margin-bottom: 30px !important; }

.u-ml30 { margin-left: 30px !important; }

.u-pd30 { padding: 30px !important; }

.u-pt30 { padding-top: 30px !important; }

.u-pr30 { padding-right: 30px !important; }

.u-pb30 { padding-bottom: 30px !important; }

.u-pl30 { padding-left: 30px !important; }

.u-mg40 { margin: 40px !important; }

.u-mt40 { margin-top: 40px !important; }

.u-mr40 { margin-right: 40px !important; }

.u-mb40 { margin-bottom: 40px !important; }

.u-ml40 { margin-left: 40px !important; }

.u-pd40 { padding: 40px !important; }

.u-pt40 { padding-top: 40px !important; }

.u-pr40 { padding-right: 40px !important; }

.u-pb40 { padding-bottom: 40px !important; }

.u-pl40 { padding-left: 40px !important; }

.u-mg50 { margin: 50px !important; }

.u-mt50 { margin-top: 50px !important; }

.u-mr50 { margin-right: 50px !important; }

.u-mb50 { margin-bottom: 50px !important; }

.u-ml50 { margin-left: 50px !important; }

.u-pd50 { padding: 50px !important; }

.u-pt50 { padding-top: 50px !important; }

.u-pr50 { padding-right: 50px !important; }

.u-pb50 { padding-bottom: 50px !important; }

.u-pl50 { padding-left: 50px !important; }

.u-fs-xxsmall { font-size: 0.75rem; }

.u-fs-xsmall { font-size: 0.875rem; }

.u-fs-small { font-size: 0.9375rem; }

.u-fs-normal { font-size: 1rem; }

.u-fs-large { font-size: 1.125rem; }

.u-fs-xlarge { font-size: 1.25rem; }

.u-fs-xxlarge { font-size: 1.5rem; }

.u-fs-xxxlarge { font-size: 1.75rem; }

.u-fc-text { color: #000000; }

.u-fc-strong { color: #FFF100; }

.u-fc-coution { color: #ACC7E8; }

.u-fc-hover { color: #c00; }

.u-ls-disc { list-style-type: disc !important; padding-left: 1.5em !important; }

.u-ls-circle { list-style-type: circle !important; padding-left: 1.5em !important; }

.u-ls-square { list-style-type: square !important; padding-left: 1.5em !important; }

.u-ls-decimal { list-style-type: decimal !important; padding-left: 1.5em !important; }

.u-ls-ur { list-style-type: upper-roman !important; padding-left: 1.5em !important; }

.u-ls-none { list-style-type: none !important; padding-left: 1.5em !important; }

.u-ls-play li:before { font-family: 'FontAwesome'; margin-right: 0.5em; content: ""; }

.u-ls-cog li:before { font-family: 'FontAwesome'; margin-right: 0.5em; content: ""; }

.u-require { padding: 2px 5px; background: #c20f17; color: #fff; border-radius: 4px; margin: 0 4px; }

a.u-btn { background-color: #fff; color: #2a71b9; border: solid 1px #2a71b9; border-radius: 4px; display: inline-block; padding: 0.3em 1em; text-decoration: none; }

.u-fb { font-weight: bold; }

.u-tr { text-align: right; }

.u-tc { text-align: center; }

.u-tl { text-align: left; }

.u-w100 { width: 100% !important; }

/*# sourceMappingURL=d8_style.css.map */

#catch::before {
  background: #000;
}

.sec4 .__column2 .__subimg3 {
  bottom: -70px;
}

.sec4 {
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .sec3 {
  margin-bottom: 0;
  }
  .sec4-2 {
  padding-bottom: 0;
  }
}
.sec4 .__column5 {
  display: flex;
  justify-content: space-between;
}
.sec4 .__column5 > div {
  width: 40%;
}
.sec4 .__column5 > div:nth-child(1) {
  font-size: 1rem;
}
.sec4 .__column5 > div:nth-child(2) {
  text-align: center;
  margin-top: -1.6em;
}
@media (max-width: 768px) {
  .sec4 .__column5 {
  flex-direction: column;
  }
  .sec4 .__column5 > div {
  width: 100%;
  }
  .sec4 .__column5 > div:nth-child(1) {
  margin-bottom: 20px;
  }
  .sec4 .__column5 > div:nth-child(2) {
  margin-top: 0;
  }
}

.sec4 .__column4 .__flex, .sec4 .__column4 .__flex2 {
  display: flex;
}
.sec4 .__column4 .arw3 {
  margin: 40px auto;
}
@media (max-width: 768px) {
  .sec4 .__column4 .arw3 {
  margin: 20px auto;
  }
}
.sec4 .__column4 .__flex {
  padding-right: 200px;
  justify-content: space-between;
}
.sec4 .__column4 .__flex > div {
  width: 48%;
}
.sec4 .__column4 .__flex > div > div:nth-child(1) {
  height: 300px;
  overflow: hidden;
  margin-bottom: 20px;
}
.sec4 .__column4 .__flex > div > div:nth-child(1) img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 1500px) {
  .sec4 .__column4 .__flex {
  padding-right: 15vw;
  }
}
@media (max-width: 768px) {
  .sec4 .__column4 .__flex {
  padding-right: 0;
  flex-direction: column;
  }
  .sec4 .__column4 .__flex > div {
  width: 100%;
  margin-bottom: 30px;
  }
}
.sec4 .__column4 .__flex2 {
  position: relative;
  justify-content: space-between;
  /*.__needs{
  position: absolute;
  width: 50%;
  bottom: 0;

  img{
    width: 100%;
  }
  }*/
}
.sec4 .__column4 .__flex2 > div {
  position: relative;
  z-index: 1;
  width: 48%;
}
.sec4 .__column4 .__flex2 > div:nth-child(1) img {
  margin-top: 10px;
  width: 100%;
}
@media (max-width: 768px) {
  .sec4 .__column4 .__flex2 {
  flex-direction: column-reverse;
  padding-right: 15vw;
  }
  .sec4 .__column4 .__flex2 > div:not(.__needs) {
  position: relative;
  z-index: 1;
  width: 100%;
  }
  .sec4 .__column4 .__flex2 > div:not(.__needs):nth-child(1) {
  margin-top: 20px;
  padding-bottom: 50px;
  }
}
.sec4 .__column4 .__wholebody {
  position: absolute;
  bottom: 100px;
  right: -10px;
  z-index: 2;
  width: 323px;
}
@media (max-width: 1500px) {
  .sec4 .__column4 .__wholebody {
  width: 25vw;
  }
}

.sec5 {
  background-image: none;
  padding-bottom: 0;
}
.sec5 h2 {
  background: #fff;
  color: #000;
  padding: 80px 0 20px;
  margin-bottom: 0;
}
.sec5 .__2025img {
  position: relative;
  overflow: hidden;
  padding: 20px 20px 80px;
}
@media (max-width: 768px) {
  .sec5 .__2025img {
  padding-bottom: 20px;
  }
}
.sec5 .__2025img .__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
}
.sec5 .__2025img .__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sec5 .__2025img .__img {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  margin: auto;
}

.sec6 {
  padding-bottom: 180px;
  background-size: cover;
}

.sec8 {
  margin-top: -80px;
}
.sec8 h2 {
  font-family: "Lato", "Noto Sans JP", sans-serif;
}
.sec8 .__list {
  display: flex;
  flex-wrap: wrap;
}
.sec8 .__list > div {
  width: calc(50% - 30px);
  margin: 15px;
  background: #fff;
  padding: 10px 10px 30px;
  color: #000;
}
.sec8 .__list > div .__img {
  width: 100%;
  height: 300px;
  margin: 0;
}
.sec8 .__list > div .__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 768px) {
  .sec8 .__list {
  flex-direction: column;
  }
  .sec8 .__list > div {
  width: auto;
  }
}
.sec8 .__category {
  display: flex;
  flex-wrap: wrap;
}
.sec8 .__category > li {
  width: calc(50% - 5px);
  border: solid 1px #f00;
  font-size: 75%;
  color: #f00;
  text-align: center;
  margin: 10px 0 0;
  border-radius: 10px;
}
.sec8 .__category > li:nth-child(2n-1) {
  margin-right: 10px;
}
@media (max-width: 768px) {
  .sec8 .__category {
  flex-direction: column;
  }
  .sec8 .__category > li {
  width: 100%;
  }
}
.sec8 h3 {
  font-weight: bold;
  margin: 20px;
}
.sec8 .__logo {
  height: 60px;
  margin-bottom: 20px;
}
.sec8 .__logo img {
  height: 100%;
  width: auto;
}