@charset "utf-8";

header {
  top:                        0;
  background-color:           white;
  position:                   fixed;
  width:                      100%;
  height:                     90px;
  z-index:                    100;
}

/*----- ヘッダー：設定（ロゴ＆社名 -----*/
.logo img {
  float:                      left;
  height:                     60px;
  display:                    block;
  margin:                     23px 0px 0px 10px;
}

.logo p {
  float:                      left;
  font-size:                  17px;
  font-weight:                bold;
  letter-spacing:             0em;
  height:                     40px;
  margin:                     40px 0px 0px 10px;
  color:                      black;
  text-decoration:            none;
}

.logo::after {
  content:                    "";
  display:                    block;
  clear:                      both;
}

/* Menu */
/* チェックボックス：表示設定（非表示） */
.menu-hidden {
  display:                    none;
}

/* メニューボタン：表示設定 */
#menu-btn {
  display:                    block;
  width:                      35px;
  height:                     35px;
  position:                   fixed;
  top:                        50px;
  right:                      20px;
  z-index:                    100;
  background:                 white url(../icon/bars_24.svg) center center no-repeat;
}

/* 透かし部分：表示設定 */
#menu-black {
  display:                    none;
  position:                   fixed;
  z-index:                    90;
  bottom:                     0;
  left:                       0;
  width:                      100%;
  height:                     90vh;
  background:                 rgba(255,255,255,0.5);
}

/* チェックボックス「ON」メニューボタン：動作設定 */
#menu-input:checked ~ #menu-btn {
  background: white url(../icon/cross_24.svg) center center no-repeat;
}

/* チェックボックス「ON」透かし部分：動作設定 */
#menu-input:checked ~ #menu-black {
  display:                    block;
}

/* チェックボックス「ON」メニュー：動作設定 */
#menu-input:checked ~ .menu {
  right:                      -10px;
}

.menu {
  position:                       fixed;
  top:                            74px;
  right:                          -100%;
  padding-top:                     30px;
  padding-left:                   0;
  display:                        -webkit-box;
  display:                        -ms-flexbox;
  display:                        flex;
  -webkit-box-orient:             vertical;
  -webkit-box-direction:          normal;
      -ms-flex-direction:         column;
          flex-direction:         column;
  border-radius:                  12px;
  background:                     -o-linear-gradient(135deg, white, pink, red,crimson,  crimson, crimson);
  background:                     linear-gradient(315deg, white, pink, red,crimson,  crimson, crimson);  
  opacity:                        0.8;
  z-index:                        100;
  width:                          180px;
  height:                         90vh;
  -webkit-transition:             0.3s;
  -o-transition:                  0.3s;
  transition:                     0.3s;
  -webkit-filter:                 drop-shadow(-10px -5px 10px rgba(0, 0, 0,0.5));
          filter:                 drop-shadow(-10px -5px 10px rgba(0, 0, 0,0.5));
}

#menu1 {
  padding-bottom:                 5px; 
}

.menu li {
  text-align:                     center;
  display:                        block;
  list-style:                     none;
  width:                          180px;
  padding:                        5px 0px 0px 0px;
  background-color:               ;
  opacity:                        0.9;
}

.sub-menu {
  padding-left:                   0px;
}

.sub-menu li {
  display:                        block;
  list-style:                     none;
  width:                          180px;
  height:                         0px;
  padding:                        0px 0px 0px 0px;
  overflow:                       hidden;
  list-style:                     none;
  -webkit-transition:             height 0.4s;
  -o-transition:                  height 0.4s;
  transition:                     height 0.4s;
}

.menu li:hover {
  background-color:               red;
}

.menu li:hover > .sub-menu li {
  display:                        block;
  padding:                        5px 0px 5px 0px;
  height:                         30px;  
}

.sub-menu li:hover {
  background-color:               darkorange;
  height:                         30px;
}

.menu a {
  display:                        block;
  font-size:                      11px;
  font-weight:                    bold;
  font-family:                    "Helvetica Neue",
                                  Arial,
                                  "Hiragino Kaku Gothic ProN",
                                  "Hiragino Sans",
                                  Meiryo,
                                  sans-serif;   
  text-decoration:                none;
  color:                          white;
}

.menu a::first-line {
  font-size:                      14px;
  text-decoration:                underline;
}


/* ページ内移動：トップ移動設定 */
#page_top {
  width:                      40px;
  height:                     40px;
  position:                   fixed;
  right:                      20px;
  bottom:                     50px;
  background:                 crimson;
  opacity:                    0.6;
  border-radius:              50%;
}

#page_top a {
  position:                   relative;
  display:                    block;
  width:                      40px;
  height:                     40px;
  text-decoration:            none;
}

#page_top a::before{
  font-family:                'Font Awesome 5 Free';
  font-weight:                900;
  content:                    '\f102';
  font-size:                  25px;
  color:                      #fff;
  position:                   absolute;
  width:                      25px;
  height:                     25px;
  top:                        -5px;
  bottom:                     0;
  right:                      0;
  left:                       0;
  margin:                     auto;
  text-align:                 center;
}

/*----- Page内リンク -----*/
a.anchor-recruit {
  display:                    block;
  padding-top:                90px;
  margin-top:                 -90px;
}

a.anchor-interview {
  display:                    block;
  padding-top:                90px;
  margin-top:                 -90px;
}

a.anchor-partner {
  display:                    block;
  padding-top:                80px;
  margin-top:                 -80px;
}


/*----- TOP セクション -----*/
.top_top {
  height:                     60vw;
  width:                      100%;
  background-image:           url(../images/hr.jpg);
  background-size:            cover;
}

#line {
  position:                   absolute;
  padding:                    125px 0px 5px 20px;
  border-radius:              40px;
  border-style:               none;
  width:                      100%;
  background:                 linear-gradient(90deg, crimson, red, orangered, white);
  opacity:                    0.8;  
}

#title {
  position:                   absolute;
  display:                    inline-block;
  padding:                    85px 0px 5px 10px;
  font-size:                  12px;
  width:                      180px;
  letter-spacing:             0em;
  color:                      white;
  text-align:                 center;
}

#title::first-line {
  font-size:                  16px;
  letter-spacing:             -0.05em;
  text-decoration:            underline;
}

/*----- SECTION 共通 -----*/
body {
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
}

section {
  width:                      100%;
  padding:                    20px 0px 10px 0px;
}
section:nth-of-type(1) { background-color: white; }
section:nth-of-type(2) { background-color: floralwhite; }
section:nth-of-type(3) { background-color: white; }
section:nth-of-type(4) { background-color: floralwhite; }

.section-inner {
  width:                      90%;
  margin:                     0 auto;
}

h2 {
  margin-top:                 0px;
  font-size:                  18px;
  font-weight:                bold;
  margin-bottom:              0px;
  color:                      black;
  text-align:                 center;
  letter-spacing:             0.1em;
}

hr {
  margin:                     0px auto 0px auto;
  border-color:               crimson;
  border-radius:              10px;
  border-width:               2px;
  border-style:               solid;
  width:                      140px;
}

h3 {
  margin-top:                 0px;
  font-size:                  16px;
  font-weight:                bold;
  text-align:                 center;
  letter-spacing:             0.2em;
}

p {
  font-size:                  13px;
  letter-spacing:             0.1em;
  text-align:                 center;
  margin-bottom:              20px;
}

.section-inner {
  width:                      90%;
  max-width:                  720px;
}

/*----- 個別設定：recruitセクション -----*/

.div_recruit-title h2 {
  font-size:                  18px;
  font-weight:                bold;
  letter-spacing:             0;  
}

.div_recruit-title hr {
  border-width:               2px;
  width:                      120px;
}

.div_recruit-title h3 {
   font-size:                 16px;
  letter-spacing:             0.1em;
  font-weight:                bold; 
}

.div_recruit-title p {
  font-size:                  13px;
}

.div_recruit-item {
  width:                      100%;
  height:                     130px;
  margin:                     35px auto;
  background-color:           white;
  border-color:               black;
  border-style:               solid;
  border-width:               1px;
  border-radius:              10px;
}

.div_recruit-item img {
  padding:                    20px 0px 0px 15px;
  width:                      35px;
  float:                      left;
}

.div_recruit-item h4 {
  font-size:                  14px;
  line-height:                1.7em;
  padding:                    10px 0px 5px 0px;
  margin:                     5px 0px 0px 60px;
  text-decoration:            none;
  color:                      black;
}

.div_recruit-item p {
  text-align:                 left;
  padding:                    0px 10px 0px 20px;
  letter-spacing:             0.1em;
  line-height:                1.5em;
  font-size:                  14px;
  text-decoration:            none;
  color:                      black;
}


/*----- 個別設定：Interviewセクション -----*/
.div_interview-title h2 {
  font-size:                  18px;
  font-weight:                bold;
  letter-spacing:             0;
}

.div_interview-title hr {
  border-width:               2px;
  width:                      260px;
}

.div_interview-title h3 {
  font-size:                  16px;
  letter-spacing:             0.1em;
  font-weight:                bold;
}

.div_interview-title p {
  font-size:                  13px;
}

#jinji {
  height:                     380px;
}

#eigyo {
  height:                     380px;
}

#se {
  height:                     380px;
}

.div_interview-item-title {
  margin-top:                 40px;
}

.div_interview-item-title h3{
  font-size:                  16px;
  text-align:                 left;
  text-decoration:            none;
  letter-spacing:             0;
  color:                      black;
  font-weight:                bold;
  margin-bottom:              0px;
}

.div_interview-item-title hr {
  margin-top:                 0px;
  border-width:               0.1px;
  width:                      100%; 
}

.div_interview-item-contents {
  margin-top:                 10px;
}

.div_interview-item-contents h3 {
  margin:                     0px 0px 5px 5px;
  font-size:                  15px;
  text-align:                 left;
  text-decoration:            none;
  letter-spacing:             0;
  color:                      crimson;
}

.div_interview-item-contents p {
  margin-top:                 0px;
  text-align:                 left;
  line-height:                1.8;
  letter-spacing:             0.1em;
  font-size:                  14px;
}

#interview-img-l1 {
  background-image:           url(../images/mitamura.jpg);
  background-repeat:          no-repeat;
  background-size:            cover;
  width:                      350px;
  height:                     220px;
  margin-right:               1em;
  margin-bottom:              0.5em;
  float:                      left;
}

#interview-img-l2 {
  background-image:           url(../images/kawashima.jpg);
  background-repeat:          no-repeat;
  background-size:            cover;
  width:                      350px;
  height:                     220px;
  margin-right:               1em;
  margin-bottom:              0.5em;
  float:                      left;
}

#interview-img-r1 {
  background-image:           url(../images/kajita.jpg);
  background-repeat:          no-repeat;
  background-size:            cover;
  width:                      350px;
  height:                     220px;
  margin-left:                1em;
  margin-bottom:              0.5em;
  float:                      right;
}

#interview-img-r2 {
  background-image:           url(../images/komori.jpg);
  background-repeat:          no-repeat;
  background-size:            cover;
  width:                      350px;
  height:                     220px;
  margin-left:                1em;
  margin-bottom:              0.5em;
  float:                      right;
}

/*----- 個別設定：Partnerセクション -----*/
.div_partner-title h2 {
  font-size:                  18px;
  font-weight:                bold;
  letter-spacing:             0;
}

.div_partner-title hr {
  border-width:               2px;
  width:                      170px;
}

.div_partner-title h3 {
  font-size:                  16px;
  letter-spacing:             0.1em;
  font-weight:                bold;
}

.div_partner-title p {
  font-size:                  13px;
}

.div_partner-item-title h3 {
  font-size:                  15px;
  text-align:                 left;
  text-decoration:            none;
  letter-spacing:             0;
  color:                      black;
  font-weight:                bold;
  margin-bottom:              0px;
}

.div_partner-item-title hr {
  margin-top:                 0px;
  border-width:               0.1px;
  width:                      100%;   
}

.div_partner-item-contents {
  margin-top:                 10px;
}

.div_partner-item-contents h3 {
  margin:                     0px 0px 5px 5px;
  letter-spacing:             0;
  font-size:                  15px;
  text-align:                 left;
  text-decoration:            none;
  color:                      crimson;
}

.div_partner-item-contents p {
  margin-top:                 0px;
  text-align:                 left;
  line-height:                1.8;
  letter-spacing:             0.1em;
  font-size:                  14px;
}

#partner-question {
  font-weight:                bold;
  letter-spacing:             0;
}

#partner-img-r1 {
  background-image:           url(../images/career.jpg);
  background-repeat:          no-repeat;
  background-size:            cover;
  width:                      380px;
  height:                     250px;
  margin-left:                1em;
  margin-bottom:              0.5em;
  float:                      right;
}


/*----- Footer セクション -----*/
.foot-area {
  margin-top:                 -20px;
  color:                      #fff;
  text-align:                 center;
  background-color:           gray;
  font-size:                  14px;
}

.inner p {
  padding:                    20px 0px 0px 0px;
  text-align:                 center;
}

.text-phone,
.text-phone a {
  color:                      #fff;
  font-size:                  13px;
  font-weight:                700;
  letter-spacing:             0.1em;
  margin-bottom:              20px;
}

.foot-area_copy {
  color:                      #ccc;
  font-size:                  13px;
  display:                    inline-block;
  width:                      100%;
  padding:                    10px;
  background-color:           #333;
}

