/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
html {
    color: #222;
    font-size: 1em;
    line-height: 1.4;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}
img {
    width: auto;
    max-width: 100%;
    height: auto;
    margin: auto;
    /*display: block;    */
}
a:hover {
    opacity: 0.8;
}

a{
    text-decoration: none;
}
body {
    font-family: 'Noto Sans Japanese', sans-serif;
    font-size: 14px;  
    background: #FCE321;
    /*max-width: 1000px;*/
    /*width: 100%;*/
    /*margin: 0 auto;    */
}

.wrapper {
    width: 92vw;
    /*max-width: 920px;*/
    margin: 0 auto;
    position: relative;    
}


.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ===============
    ALL: IE Fixes
   =============== */

.ie7 .title {
    padding-top: 20px;
}

/* ===============
    Common
==== */
section {
    padding: 3.5vw;
}
.f08 {
    background-color: #FFF088;
}
.fff {
    background-color: #fff;
}
.fef6bc {
    background-color: #fef6bc;
}

.f36{
    font-size: 3.6vw;
}
.f42 {
    font-size: 4.2vw;
}

.mm_row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.menu {    
    width: 49.75vw;
}
.menu:nth-of-type(2n) {
    margin-left: 0.5vw;
}
.menu:nth-of-type(1), .menu:nth-of-type(2) {
    margin-bottom: 0.5vw;
}
.mm_row {
    border-bottom: solid 0.8vw #E61673;
}
.iine_pics {
    padding-top: 59vw;
}
.iipic {
    width: 45vw;
    display: inline-block;
    margin-right: 1vw;
    margin-bottom: 2vw;
}
.iipic:nth-of-type(2n) {
    margin-right: 0;
}
.foot_menu {
    display:  flex;
}

.fmenu:nth-of-type(2) {
    margin-left: 0.5vw;
}
.foot_carousel {
    height: 31vw;
}

footer {
    padding-top: 9vw;
}
.foot_logo {
    width: 39vw;
    margin: 0 auto 3.5vw;
}
.foot_addr {
    font-size: 3.6vw;
    margin-bottom: 4.6vw;
    text-align: center;
}
.foot_insta {
    width: 73vw;
    margin: 0 auto;
}
.foot_copy {
    margin: 7.5vw 0;
    font-size: 3vw;
    text-align: center;
}
.common_header_container {
    background: #fff;
    height: 8vw;
    border-bottom: solid 0.4vw #2B176F;
    z-index: 10;
}
.top_logo {
    width: 24vw;
    margin: auto;
    padding-top: 2vw;    
}
.top_entry {
    width: 8vw;
    position: absolute;
    right: 0;
    top: 0;
}
.top-border-red {
    border-top: solid 0.6vw #DA251D;
}
.slick-arrow {
    display: none !important;
}
/* ===============
    TOP
==== */
.movetop_area{
    position: relative;
}
.ent_area{
    position: absolute;
    left: 0;
    top: 0;
}
.main-bnr{
    position: absolute;
    top: 8vw;
    left: 40vw;
    z-index: 999;
}
.top_header_container {
    background: url(../img/top/topbg.png) repeat 0 0;
    background-size: contain;
}
.top_cach {
    text-align: center;
    width: 62vw;
    margin: 0 auto;
    padding: 4.5vw 0;
}
#iine {
    background: url(../img/top/iine_ttl.png) no-repeat 0 4vw;
    background-size: contain;
}
.s_insta {
    position: absolute;
    top: 1vw;
    right: 0;
    width: 29.8vw;
}
.iine_txt {
    text-align: center;
    font-size: 3.6vw;
    color: #000;    
    line-height: 1.8;
    padding: 8vw 0;
}
.iine_txt strong {
    background: #fff;
    opacity: 0.7;
}
#message {
    padding-bottom: 6vw;
}
#message h2 {
    text-align: right;    
}
#message h2 img {
    padding: 8vw 0 0 0;
    width: 77vw;
}
.message_ttl {
    width: 71vw;
    margin: 4vw auto 2vw;
}
.message_moview {
    width: 86vw;
    margin: 0 auto;
    padding-bottom: 8vw;
}
.go_viet {    
    width: 45vw;
    padding: 9vw 0 5vw;
    margin: 0 auto;
}
.heart {
    font-size: 3.6vw;
    text-align: center;
    background-image: url(../img/top/hear_bg.gif);
    background-repeat: no-repeat;
    background-position: center 100%;
    background-size: 9vw;
    color: #2B176F;
}
.heart .wrapper {
    padding: 3vw 0 8vw 0;
}
#konna {
    padding: 7.5vw 0;
    font-size: 3.8vw;
    text-align: center;
}
#konna strong {
    color: #2B176F;
}
#konna span {
    color: #2B176F;
    font-weight: bold;
    display: inline-block;
    background: url(../img/top/underline_bg.png) no-repeat 0 3vw;
    padding-bottom: 10px;
    background-size: contain;
}

/* ===============
    ENJOY
==== */
#enjoy1 {
    background: url(../img/enjoy/point1_ttl.png) no-repeat 0 5vw;
    background-size: contain;
    padding-top: 18vw;
    color: #171C61;
}
#enjoy2 {
    background: url(../img/enjoy/point2_ttl.png) no-repeat 0 5vw;
    background-size: contain;
    padding-top: 18vw;
    color: #171C61;
}
#enjoy3 {
    background: url(../img/enjoy/point3_ttl.png) no-repeat 0 5vw;
    background-size: contain;
    padding-top: 18vw;
    color: #171C61;
}
#enjoy4 {
    background-image: url(../img/enjoy/point4_ttl.png);
    background-repeat: no-repeat;
    background-position:  0 0;
    background-size: contain;
    padding-top: 18vw;
    margin-bottom: 0;
    padding-bottom: 8vw;
    color: #171C61;
}
.enjoy_head {
    font-size: 4.6vw;
    font-weight: bold;
    margin: 2vw auto 6vw;
    text-align: center;
}
.e1_txt {
    font-size: 3.5vw;
    margin-top: 4vw;
    padding-bottom: 8vw;
}
.e2_txt, .e3_txt {
    font-size: 4.6vw;
    font-weight: bold;
    text-align: center;
}
.e2_txt2, .e3_txt2 {
    font-size: 3.6vw;
    text-align: center;
    padding-bottom: 8vw;
}
.enjoy2_pics {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.e2p {
    width: 44vw;
    font-size: 3.2vw;
    position: relative;
    margin-bottom: 7vw;
}
.e2p:nth-of-type(2n) {
    margin-left: 1vw;
}
.e2p span {
    display: block;
    margin-left: 2vw;
}
.e2p_c {
    position: absolute;
    top: 0
    left: 0;
}
.e2p_p {
    padding-top: 2.5vw;
    padding-left: 2vw;
}
.e3p {
    display: flex;
    margin-bottom: 6vw;
}
.e3pi {
    width: 46vw;
    font-size: 3.2vw;    
    margin-right: 1vw;
}
.e3pi:nth-of-type(2) {
    margin-left: 1vw;
    margin-right: 0;
}

.e3pi strong {
    font-size: 3.6vw;
    font-weight: bold;
    display: block;
}
.bordered {
    border-bottom: solid 0.2vw #1F3866;
    margin: 4vw 0;
}
.white_bordered {
    border-bottom: solid 0.2vw #fff;
    margin: 4vw 0;
}
.e3_pics {
    padding-bottom: 7vw;
}
.e4_pics {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.e4pic {
    width: 50%;
}
.e4t {
    font-size: 3.6vw;
    margin: 2vw 0 4vw;
}
.e4ps1 {
    width: 92vw;
    margin-left: 1vw;
}
.e4ps {
    margin-bottom: 14vw;
}

/* ===============
    WORK
==== */
.move_you{
    text-align: center;
    margin-bottom: 8vw;
}
.move_you img{
    width: 67vw;
}
#bwork {
    color: #1F3866;
}
.sub_menu {
    display: flex;
    flex-wrap: wrap;
    margin-top: -4vw;    
}
.sm {
    width: 51vw;
}
.sm:nth-of-type(2n) {
    width: 48.9vw;
    margin-bottom: 0.1vw;
    margin-left: 0.1vw;
}
h2.job_ttl {
    background-color: #1D2088;
    padding: 2vw 0;
    text-align: center;
    margin-top: 0;
}
.job_ttl img {
    height: 12vw;
}
.job_ttl_txt {
    padding-bottom: 5vw;
}
.work_item {
    border-top: solid 0.1vw #1F3866;
    padding: 5.5vw 0;
}
.work_item h3 {
    font-size: 4.4vw;   
    width: 92vw;
    /*max-width: 920px;*/
    margin: 0 auto;
    position: relative;  
}
.wi_pic {
    text-align: center;
    width: 60vw;
    margin: 2.5vw auto;
}
.wi_txt {
    font-size: 3.6vw;
    width: 92vw;
    /*max-width: 920px;*/
    margin: 0 auto 6vw;
    position: relative; 
}
.iview_ttl {
    font-size: 4.6vw;
    font-weight: bold;
    margin-bottom: 4vw;
}
.iview_member{
    margin-bottom: 5vw;
}
.iview_mpic {
    width: 65vw;
    margin: 3vw auto;    
}
.iview_mname{
    font-size: 3.6vw;
    text-align: center;
}
.iview_txt {
    font-size: 3.6vw;
}
.readmore {
    text-align: center;
    margin-bottom: 8vw;
}
.readmore img {
    width: 18vw;
}
.hidden {
    display: none;
}
.iview_mov {
    background-color: #fdf190;
    padding: 8.5vw 9.5vw;
    margin-bottom: 10vw;
}
.imov_txt{
    font-size: 3.6vw;
    font-weight: bold;
    margin-bottom: 2vw;
}
.imov_yt {
    text-align: center;
}
.imov_yt iframe{
    width: 72vw;
    height: auto;
}
.video-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px; height: 0; overflow: hidden;
}

.video-container iframe,
.video-container object,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.sttl {
    font-size: 4.4vw;
    padding: 2vw 0;
}
.sppic {
    padding-top: 3vw;
}
.sptxt {
    padding-top: 3vw;
    font-size: 3.6vw;
    padding-bottom: 5vw;
}
.recruits {
    padding-top: 5vw;
}
.rec {
    margin-bottom: 2vw;
}
.rec_txt {
    font-size: 3.6vw;
    text-align: center;
    margin: 3vw 0;
}
/* ===============
    JOB
==== */
#boushu {
    color: #1F3866;
}
section#byoukou {
    padding: 1vw 0 0 0;

}
.youkou {
    border-bottom: solid 0.4vw #fff;
    padding: 4vw 0;
}
.youkou:last-of-type {
    border-bottom: none;
}
.wtitle {
    font-size: 3.6vw;
    float: left;
    width: 17vw;
    letter-spacing: 0.1em;
    text-align: right;
}
.wdetail {
    font-size: 3.6vw;
    float: right;
    width: 72vw;
    line-height: 1.4em;
    letter-spacing: 0.04em;
}
.bentry {
    margin: 8vw auto;
    width: 50vw;
}
.jgo img {
    width: 49vw;
    margin: 5.5vw auto;
}
.jgo {
    text-align: center;
}
.message {
    font-size: 5.4vw;
    text-align: center;
}
.message_ceo {
    text-align: center;
    font-size: 3.6vw;
    font-weight: bold;
    margin-bottom: 6vw;
}
.message_ceo img {
    width: 63vw;
}
.message_txt p {
    margin-bottom: 6vw;
    font-size: 3.6vw;
}
/* ===============
    ENTRY
==== */
#fentry {
    color: #1F3866;
}
.qa {
    margin-bottom: 6vw;
    font-size: 3.8vw;
}
.q {
    margin-bottom: 1vw;    
}
.qimage{
    display: inline-block;
    width: 9.5vw;
    margin-right: 2vw;
    vertical-align: top;
}
.qimage2{
    display: inline-block;
    width: 12.5vw;
    margin-right: 2vw;
    vertical-align: top;
}
.qtxt {
    display: inline-block;
}
.bentry_submit {
    text-align: center;
    font-size: 3.6vw;
    padding: 7vw 0;
}
.qtxt a {
    color: #f00;
    text-decoration: none;
}
.qa_submit {
    text-align: center;
    padding-bottom: 18vw;
}
.qa_submit input {
    width: 43vw;
    border: none;
}

input {
    border: solid 0.1vw #1F3866;
    background: #FCE321;
    margin-bottom: 2vw;
    resize: none;
    outline: none;
    padding: 0.5vw;
}
select.finput {
    background-color: #FCE321;
    padding: 5px;
    border: solid 1px #1F3866;
}
textarea {
    border: solid 0.1vw #1F3866;
    background: #FCE321;
    margin-bottom: 2vw;
    margin-top: 2vw;
    resize: none;
    outline: none;
    width: 70vw;
    height: 22vw;
}

.input-file-container {
  position: relative;
  width: 22vw;
} 
.input-file-trigger {
  display: block;
  transition: all .4s;
  cursor: pointer;
  background-image: url(../img/entry/tenpu_btn.gif);
  background-repeat: no-repeat;
  background-size: contain;
  width: 37vw;
  height: 9.8vw;
}
.input-file {
  position: absolute;
  top: 0; left: 0;
  width: 20vw;
  opacity: 0;
  padding: 2vw 0;
  cursor: pointer;
}
.input-file:hover + .input-file-trigger,
.input-file:focus + .input-file-trigger,
.input-file-trigger:hover,
.input-file-trigger:focus {
    opacity: 0.7;
}

.file-return {
  margin: 0;
}
.file-return:not(:empty) {
  margin: 1em 0;
}
.file-return {
  font-style: italic;
  font-size: .9em;
  font-weight: bold;
}
.file-return:not(:empty):before {
  content: "選択されたファイル: ";
  font-style: normal;
  font-weight: normal;
}

#entry_form {
    background-image: url(../img/youkou/go.png);
    background-repeat: no-repeat;
    background-position: 63vw 30vw;
    background-size: 33vw;
}
.input_90{
    width: 90vw;
}
.input_80{
    width: 80vw;
}
.sendcomplete {
    text-align: center;
    margin: 7vw;
    font-weight: bold;
}
.red{
    color: crimson;
}