* {
    box-sizing: border-box;
}

.pc {display:block;}
.tb {display:none;}
.pctb {display:block;}
.tbmb {display:none;}
.mb {display:none;}

@media screen and (min-width:600px) and (max-width: 1024px) {
.pc {display:none;}
.tb {display:block;}
.pctb {display:block;}
.tbmb {display:block;}
.mb {display:none;}
}

@media screen and (max-width: 599px) {
.pc {display:none;}
.tb {display:none;}
.pctb {display:none;}
.tbmb {display:block;}
.mb {display:block;}
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;  
}

article, aside, dialog, figure, footer, header, hgroup, nav, section { 
  display:block; 
  margin:0;
  padding:0;
  padding:0;
}

ul,ol,li { 
	list-style: none; 
	zoom: normal;
	list-style-position:outside;
}

/* -----------------------------------
	style
 ----------------------------------- */

body {
  background: #FFFFFF;
  color: #333;
  font-size: 88%;
  font-family: Roboto, "Droid Sans", "Helvetica Neue", Helvetica, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  overflow-y: scroll;
  margin:0 auto;
  text-align:center;
}

body.top-back::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background-image:url(../img/top_back.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
}


body.eito2 { background: #FFF100;}
body.annex { background: #060606;}

a {
    color: #52330B;
    outline: none;
    text-decoration: underline;
}

a:hover {
    color: #E73656;
    text-decoration: none;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

/* -----------------------------------
	navi
 ----------------------------------- */

.info-nav {
    background:#D61E1A url(../img/top_back.webp) no-repeat center top;
    background-size:cover;
    width: 100%;
	padding: 3.5em 2em;
	text-align:center;
}

.no-back {
    background: none;
}

.annex-nav { 
	background: #070606;
	padding: 3.5em 2em;
    width: 100%;
}

.eito2-nav {
    background: #FFF100;
    padding: 3em 2em 3.5em 2em;
    width: 100%;
}
.info-nav h2 {
    width: 90%;
	margin: 0 auto 2em auto;
	text-align:center;
}

.annex-nav h2,
.eito2-nav h2 {
    width: 90%;
	margin: 0 auto 2em auto;
	text-align:center;
}

.info-nav h2 img {
    width: 100%;
    max-width: 1200px;
	height: auto;
}

.annex-nav h2 img,
.eito2-nav h2 img {
    width: 100%;
    max-width: 800px;
	height: auto;
}

ul.nav {
    width: 90%;
    max-width: 576px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
	margin: 0 auto;
	text-align:center;
}

ul.itemlist {
    width: 90%;
    max-width: 1200px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
	margin: 0 auto;
	text-align:center;
}

ul.nav li img,
ul.itemlist li img{
    width: 100%;
    max-width: 278px;
    height: auto;
    display: block;
}

@media screen and (max-width: 599px) {
 .info-nav { padding: 1.5em 1em 2em 1em;}
 .nav { gap: 14px;}
 .annex-nav { padding: 2em 1em;}
 .eito2-nav { padding: 1.5em 1em 2em 1em;}
 .info-nav h2 { width: 100%; margin: 0 auto 1.5em auto;}
.annex-nav h2,.eito2-nav h2 { margin: 0 auto 1.5em auto;}
 ul.itemlist { grid-template-columns: repeat(2, 1fr); gap: 14px;}
}

/* -----------------------------------
	contetns
 ----------------------------------- */

.wrapper {
  width: 100%;
}

.anchor{
  display: block;
  height: 0;
  padding-top: 90px;
  margin-top: -90px;
}

.wrap {
  width:90%;
  max-width: 1200px;
  margin:0 auto 2em auto;
  text-align:center;
}

h1 {
  width:100%;
  margin: 1.5em auto 1.8em auto;
  text-align: center;
}

.title h1{
  margin: 0.5em auto 0 auto;
}

h2 {
  width:100%;
  margin:0 auto;
  text-align:center;
}

h1 img,
h2 img,
.wrap p img {
  max-width:100%;
  height:auto;
}

@media screen and (max-width:1200px){
  .reel-wrap { width: 100%;}
}
@media screen and (max-width:599px){
  .wrap { max-width: 750px; margin: 0.8em auto;}
}

/* -----------------------------------
	top
 ----------------------------------- */

#top-title {
  background-image:url(../img/top_header_back.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size: contain;
  width: 100%;
}

section.title {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 0.5em;
  text-align:center;
}

ul.title-box {
  width: 94%;
  max-width: 966px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: end;
  margin: 1.5em auto 0 auto;
  text-align:center;
}

ul.title-box li.title_left { width: 47.31%;}
ul.title-box li.title_right { width: 49.59%;}

ul.title-box li img {
  width: 100%;
  height:auto;
}

/* -----------------------------------
	message
 ----------------------------------- */

#message {
  background:#034098 url(../img/staff/staff_back_02.webp) no-repeat center top;
  background-size:100% auto;
  padding-bottom:2.5em;
}

.staff-title{
  display:grid;
  gap: 20px;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 auto;
  width: 90%;
}

.staff_title_text p {
  color:#fff;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: clamp( 15px, calc( 8px + 0.75vw ), 21px );
  line-height: 1.8;
}

.staff_title_text p.highlight{
  color:#ffd400;
  font-size: clamp( 16px, calc( 9px + 0.75vw ), 21px );
  font-weight:bold;
  margin-top: 1em;
}

.staff-title_left img,
.staff-title_right img {
  max-width: 241px;
  height: auto;
}

.staff-title_left,
.staff-title_right {
  margin-top: -6em;
}

@media (min-width: 768px) {
  .staff-title {
    grid-template-columns: auto auto auto;
    grid-template-areas: "staff-title_left staff_title_text staff-title_right";
  }

  .staff-title_left { grid-area: staff-title_left; }
  .staff_title_text { grid-area: staff_title_text; }
  .staff-title_right { grid-area: staff-title_right; }
}

@media screen and (max-width:1200px){
.staff-title_left img,.staff-title_right img { width: 200px;}
}
@media screen and (max-width:864px){
  .staff-title_left img,.staff-title_right img { width: 180px;}
  .staff-title { 
	gap: 0px !important;
    grid-template-columns: auto auto auto;
    grid-template-areas: "staff-title_left staff_title_text staff-title_right";
  }
  .staff-title_left { grid-area: staff-title_left; }
  .staff_title_text { grid-area: staff_title_text; }
  .staff-title_right { grid-area: staff-title_right; }
}
@media (max-width: 767px) {
  .staff-title {
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
      "staff_title_text staff_title_text"
      "staff-title_left staff-title_right";
  }
  .staff-title_left { grid-area: staff-title_left; }
  .staff_title_text { grid-area: staff_title_text; width: 100%;}
  .staff-title_right { grid-area: staff-title_right; }
  .staff-title_left, .staff-title_right { margin-top: 1.5em;}
  .staff-title_left img, .staff-title_right img { width: 100%; max-width: 241px;}
}

br.space {
  display: none;
}

@media screen and (max-width: 1362px) {
  br.space { display: inline;}
}

#message h2 {
  color:#fff;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: clamp( 15px, calc( 4.5px + 1.625vw ), 24px );
  margin: 2em auto;
  text-align: center;
  align-items: center;
  display: flex;
  justify-content: center;
  width: 90%;
}
#message h2::before,
#message h2::after {
  content: "";
  height: 2px;
  max-width: 120px;
  width: 33%;
}
#message h2::before {
  background-image: linear-gradient(to right, transparent, #FFF);
  margin-right: 15px;
}
#message h2::after {
  background-image: linear-gradient(to left, transparent, #FFF);
  margin-left: 15px;
}

ul.manager {
  display: flex;
  flex-direction: row;
  column-gap: 20px;
  justify-content: space-between;
  width: 90%;
  margin: 0 auto;
}

ul.manager li {
  color: #FFF;
  display: flex;
  flex-direction: column;
  width: 20%;
}

ul.manager li p.photo {
  width: 60%;
  margin: 0 auto 0.6em auto;
  text-align: center;
}

ul.manager li p.photo img {
  display: inline-block;
  width: 100%;
  height: auto;
}

ul.manager li p.name {
  font-weight: 600;
  margin-bottom: 0.4em;
  text-align: center;
}

ul.manager li p.txt {
  font-size: 12px;
  line-height: 1.6;
  text-align: left;
}

ul.cution {
  width: 90%;
  max-width: 1200px;
  margin: 1.5em auto 2em auto;
  text-align: center;
  padding-bottom: 0.8em;
}

ul.cution li {
  color: #000;
  font-size: 92%;
  font-weight: 500;
  line-height:1.4;
  text-align:left;
}

ul.eito2-cution li { color: #000;}
ul.annex-cution li { color: #FFF;}
ul.cution li span.red { color:#ED1C24;}

@media screen and (max-width:599px){
 ul.manager { flex-direction: column;}
 ul.manager li { width: 100%; margin-bottom: 1.5em;}
 ul.manager li p.photo img { width: 150px;}
 ul.cution { margin: 2.5em auto 1em auto;}
 ul.eito2-cution, ul.annex-cution li { margin-bottom: 1.5em;}
 ul.eito2-cution { margin: 1.5em auto;}
 #message h2::before, #message h2::after { width: 10%;}
 .staff_title_text { margin-top: 1em;}
 .highlight { margin: 1em auto 0 auto;}
 .images{ margin-top: 1em;}
  ul.manager li p.txt { font-size: 13px;}
 #message h2::before { margin-right: 10px;}
 #message h2::after { margin-left: 10px;}
}

ul.staff2 {
  display: flex;
  justify-content: space-between;
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

ul.staff2 li {
  display: flex;
  flex-direction: column;
  width: calc(100% / 3);
}

.staff-box {
  display: flex;
  align-items: flex-start;
  gap: 24px;
}

.staff-box img {
  width: 150px;
  height: auto;
}

.staff2-img {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

.staff2-img img {
  width: 150px;
  height: auto;
}

.staff-box .text h3 {
  color: #FFF;
  margin: 0 0 8px;
}	 

.staff-box .text p {
  color: #FFF;
  font-size: 12px;
  line-height: 1.8;
  margin-bottom: 10px;
  text-align: left;
  -webkit-text-stroke: 4px #133B8B;
  text-stroke: 4px black;
  paint-order: stroke;
}

ul.staff2 .staff2-photo {
  display: block;
  margin-inline: auto;
  margin-top: auto;
  padding-bottom: 14px;
  text-align: left;
  width: 100%;
}

ul.staff2 .staff2-photo img {
  width: auto;
  max-height:152px;
}

ul.staff2 li.left {
  width: 36.46%;
}
ul.staff2 li.middle {
  width: 36.46%;
}
ul.staff2 li.right {
  width: 22.08%;
}

.staff2-img { 
  margin-bottom: 10px;
}

@media screen and (max-width: 846px){
 ul.staff2 li { width: calc(100% / 2);}
 .staff-box img, .staff2-img { width: 80px;}
 ul.staff2 { flex-direction: column;}
 ul.staff2 li { width: 100%; margin-bottom: 2em;}
 ul.staff2 li.left, ul.staff2 li.middle, ul.staff2 li.right { width: 100%;}
 ul.staff2 .staff2-photo { padding: 12px 0; text-align: center;}
 .staff-box { flex-direction: column; justify-content: center; margin: 0 auto; text-align:center; gap: 10px;}
 .staff-box img { margin: auto;}
 .staff-box img, .staff2-img { width: 150px;}
}

@media screen and (max-width:599px){
 #message {padding-bottom: 0;}
 ul.manager { flex-direction: column;}
 ul.manager li { width: 100%; margin-bottom: 2em;}
}

/* -----------------------------------
	info
 ----------------------------------- */

h1.infomation {
  width: 50%;
  max-width: 500px;
  margin:2.5em auto;
}

/* -----------------------------------
	footer
 ----------------------------------- */

footer {
  width: 100%;
  padding-top: 0.5em;
  background: #004094;
}

footer div {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0.5em 0 1em 0;
  text-align: center;
}

footer div img {
  display:inline-block;
  width: 100%;
  height:auto;
}

/*-----------------------------------------------
 __margin_padding
-----------------------------------------------*/

.mt0{ margin-top:0 !important;}
.mt05{ margin-top:5px !important;}
.mt10{ margin-top:10px !important;}
.mt15{ margin-top:15px !important;}
.mt20{ margin-top:20px !important;}
.mt25{ margin-top:25px !important;}
.mt30{ margin-top:30px !important;}
.mt40{ margin-top:40px !important;}

.mb0{ margin-bottom:0px !important;}
.mb05{ margin-bottom:5px !important;}
.mb08{ margin-bottom:8px !important;}
.mb10{ margin-bottom:10px !important;}
.mb12{ margin-bottom:12px !important;}
.mb15{ margin-bottom:15px !important;}
.mb20{ margin-bottom:20px !important;}
.mb30{ margin-bottom:30px !important;}
.mb40{ margin-bottom:40px !important;}

hr {
  background-image: url(../img/line.png);
  border: 0;
  height: 16px;
  margin:0;
}

.border {
  clear:both;
  float:left;
  width:100%;
  background:#888888;
  height: 2px;
  border: 0px none;
  margin-bottom:50px !important;
}

/*-----------------------------------------------
 __position
-----------------------------------------------*/

.indent { text-indent: -1em; padding-left: 1em;}
.center{ margin:0 auto; text-align:center;}
