@charset "utf-8";
/* Copyright 2018 FSFIELD All Rights Reserved. */

/* ------------------------------------------------------------

basic

------------------------------------------------------------ */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url('https://fonts.googleapis.com/css?family=Oswald');

*{font-family:Noto Sans JP, Yu Gothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}

body{
	font-size:14px;
	font-size:1.4rem;/*-14px-*/
	line-height:1.8;
	color:#333333;
}

/* ------------------------------------------------------------

shortcodes

------------------------------------------------------------ */

/* width
---------------------------------------------- */
.w100per{width:100% !important;}

/* height
---------------------------------------------- */
.h120{height: 120px;}

/* clear
---------------------------------------------- */
.overflow_clear{
	overflow:hidden;
	height:100%;
}

/* text-align
---------------------------------------------- */
.align_right{text-align:right !important;}
.align_left{text-align:left !important;}
.align_center{text-align:center !important;}
.center{margin:0 auto !important;}
.left{float:left !important;}
.right{float:right !important;}

/* font
---------------------------------------------- */
.normal{font-weight:normal !important;}
.bold{font-weight:bold !important;}
.italic{font-style: italic !important;}

.f11rem{font-size: 1.1rem !important;}
.f12rem{font-size: 1.2rem !important;}
.f13rem{font-size: 1.3rem !important;}
.f14rem{font-size: 1.4rem !important;}

/* indent
---------------------------------------------- */
.indent-1{
	text-indent: -1em;
	padding-left: 1em;
}

/* line-height
---------------------------------------------- */
.lh_14{line-height: 1.4 !important;}
.lh_22{line-height: 2.2 !important;}

/* color
---------------------------------------------- */
.gray01{color: #999999 !important;}
.blue01{color: #9FB7C0 !important;}

/* vertical-align
---------------------------------------------- */
.valign_top{vertical-align:top !important;}
.valign_middle{vertical-align:middle !important;}
.valign_btm{vertical-align:bottom !important;}

/* visibility
---------------------------------------------- */
.hidden{visibility:hidden !important;}
.visible{visibility:visible !important;}

/* none
---------------------------------------------- */
.none{display:none !important;}

/* margin
---------------------------------------------- */
.mr_none{margin-right:0px !important;}
.mr_05{margin-right:5px !important;}
.mr_10{margin-right:10px !important;}
.mr_15{margin-right:15px !important;}
.mr_20{margin-right:20px !important;}
.mr_25{margin-right:25px !important;}
.mr_30{margin-right:30px !important;}
.mr_35{margin-right:35px !important;}
.mr_40{margin-right:40px !important;}
.mr_45{margin-right:45px !important;}
.mr_50{margin-right:50px !important;}

.ml_none{margin-left:0px !important;}
.ml_05{margin-left:5px !important;}
.ml_10{margin-left:10px !important;}
.ml_15{margin-left:15px !important;}
.ml_20{margin-left:20px !important;}
.ml_25{margin-left:25px !important;}
.ml_30{margin-left:30px !important;}
.ml_35{margin-left:35px !important;}
.ml_40{margin-left:40px !important;}
.ml_45{margin-left:45px !important;}
.ml_50{margin-left:50px !important;}

.mt_none{margin-top:0px !important;}
.mt_05{margin-top:5px !important;}
.mt_10{margin-top:10px !important;}
.mt_15{margin-top:15px !important;}
.mt_20{margin-top:20px !important;}
.mt_25{margin-top:25px !important;}
.mt_30{margin-top:30px !important;}
.mt_35{margin-top:35px !important;}
.mt_40{margin-top:40px !important;}
.mt_45{margin-top:45px !important;}
.mt_50{margin-top:50px !important;}
.mt_60{margin-top:60px !important;}

.mb_none{margin-bottom:0px !important;}
.mb_05{margin-bottom:5px !important;}
.mb_10{margin-bottom:10px !important;}
.mb_15{margin-bottom:15px !important;}
.mb_20{margin-bottom:20px !important;}
.mb_25{margin-bottom:25px !important;}
.mb_30{margin-bottom:30px !important;}
.mb_35{margin-bottom:35px !important;}
.mb_40{margin-bottom:40px !important;}
.mb_45{margin-bottom:45px !important;}
.mb_50{margin-bottom:50px !important;}
.mb_55{margin-bottom:55px !important;}
.mb_60{margin-bottom:60px !important;}
.mb_65{margin-bottom:65px !important;}
.mb_70{margin-bottom:70px !important;}
.mb_75{margin-bottom:75px !important;}
.mb_80{margin-bottom:80px !important;}
.mb_85{margin-bottom:85px !important;}
.mb_90{margin-bottom:90px !important;}
.mb_95{margin-bottom:95px !important;}
.mb_100{margin-bottom:100px !important;}

/* padding
---------------------------------------------- */
.pb_25{padding-bottom: 25px !important;}

.pd_side25{padding: 0 25px !important;}


/* ------------------------------------------------------------

common

------------------------------------------------------------ */

#wrap_all{overflow: hidden;}

.wrap_type01{padding: 40px 25px 60px;}

.wrap_type02{padding: 40px 0 90px;}

.wrap_type03{padding: 40px 25px 50px;}

.wrap_type04{padding: 40px 25px 15px;}

.wrap_type05{padding: 35px 25px 50px;}

/*--404ページ--*/
.wrap_404{padding: 55px 25px;}

.ttl_404{
	font-size:2.1rem;
	line-height:1.2;
	font-weight:bold;
	padding-bottom:8px;
	margin-bottom:25px;
	border-bottom:2px solid #CEC8C8;
	position:relative;
}

.ttl_404::before{
	content:"";
	display:block;
	width:30%;
	position:absolute;
	bottom:-2px;
	border-bottom:2px solid #119BD6;
}

/*--link--*/
.link01{
	color: #009FE6;
	padding-bottom: 2px;
	border-bottom: 1px dotted #009FE8;
}

.link02{color: #009FE6;}

.link03{
	color: #333;
	text-decoration: underline;
}

/* intention
---------------------------------------------- */
.intention{
	width: 100%;
	margin: 0 auto;
	padding: 10.9vw 30px 12.5vw;
	text-align: center;
	position: relative;
	z-index: 0;
}

.intention h2{
	position: absolute;
	top: 8.8vw;
	left: 0;
	right: 0;
	z-index: 1;
	line-height: 1;
}

.intention h2 img{
	width: 15.9vw;
	height: 7vw;
}

.intention_inner{
	border: 5px solid #DDF5F9;
	width: 62.5vw;
	height: 84.3vw;
	margin: 0 auto;
	position: relative;
}

.intention .txt01{
	position: absolute;
	left: 0;
	right: 0;
}

.intention .txt02{
	font-size: 4vw;
	line-height: 2.2;
	position: absolute;
	left: 0;
	right: 0;
}

/* テーブル
---------------------------------------------- */
/*--type01--*/
.type01{width: 100%;}

.type01 tr:first-child{border-top: 1px solid #EAEAEA;}

.type01 th{
	border-top: 1px solid #EAEAEA;
	font-weight: bold;
	padding-top: 10px;
}

.type01 td{
	padding-bottom: 10px;
	border-bottom: 1px solid #EAEAEA;
}

/*--type02--*/
.type02{width: 100%;}

.type02 th{
	background: #EEF9FB;
	padding: 8px 10px;
}

.type02 td{
	padding: 15px 10px;
	line-height: 1.4;
}

/* ナビ
---------------------------------------------- */
/*--wrap_nav01--*/
.wrap_nav01{
	background:url(../img/bg01.jpg) repeat 0 0;
	background-size: 77px;
	padding: 40px 25px 55px;
}

.wrap_nav01 nav .nav{margin-bottom: 25px;}

.wrap_nav01 nav .nav:last-of-type{margin-bottom: 0;}

.wrap_nav01 nav .btn{margin-bottom: 10px;}

/*--wrap_nav02--*/
.wrap_nav02{
	background:url(../img/bg01.jpg) repeat 0 0;
	background-size: 77px;
	padding: 30px 0 25px;
}

.wrap_nav02 nav ul{
	display: table;
	width: 100%;
}

.wrap_nav02 nav ul li{
	display: table-cell;
	vertical-align: middle;
	width: 50%;
	text-align: center;
	line-height: 1.2;
}

.wrap_nav02 nav ul li:nth-child(1){
	background: url(../img/bg_bdr02.png) no-repeat right center;
	background-size: 1px;
}

.wrap_nav02 nav ul li a{
	display: block;
	min-height: 20px;
	color: #333;
}

/* ボタン
---------------------------------------------- */
.btn_index01{
	text-align: center;
	margin-bottom: 25px;
}

.btn_index01 img{width: 180px;}

/* 記事
---------------------------------------------- */
.article{border-bottom: 1px solid #EAEAEA;}

.article:first-child{border-top: 1px solid #EAEAEA;}

.article a{
	background: url(../img/ico_arrow02.png) no-repeat right center;
	background-size: 9px;
	display: block;
	padding: 13px 35px 13px 0;
	color: #333;
	font-size: 1.3rem;
	line-height: 1.4;
}

.article a time{
	display: block;
	color: #999999;
	font-size: 1.3rem;
	line-height: 1.2;
	margin-bottom: 7px;
}

/* フォーム関連
---------------------------------------------- */
.form01{width:100%;}

.form01 th{
	font-weight: bold;
	padding-bottom: 5px;
	display: block;
}

.form01 td{
	padding-bottom: 17px;
	display: block;
}

.form01 tr:last-child td{padding-bottom: 0;}

#postal01,
#postal02{
	width: 31vw;
	padding: 10px;
}

input[type=text],
input[type=email],
input[type=tel],
textarea{
	border:1px solid #DDDDDD;
	border-radius: 3px;
	-webkit-appearance: none; /*--safariの影なくす--*/
	padding:12px;
}

textarea{
	display:block;
	border-radius: 0;
	-webkit-appearance: none; /*--safariの影なくす--*/
	font-size:1.4rem
}

input[type=checkbox]{
	margin-right:5px;
	vertical-align:baseline;
}

label{display:inline-block;}

.must,
.ERR{color:#FF4C4C;}

/*--内容確認--*/
button.submit{
	background: none;
	border: 3px solid #009FE8;
	font-size: 1.5rem;
	font-weight: bold;
	color: #009FE8;
	width: 270px;
	height: 55px;
	border-radius: 0;
	opacity: .5;
	pointer-events: none;
}

button.submit.active{
	pointer-events: auto;
	opacity: 1;
}

button.submit:hover{
	background-color: #009FE8;
	color: #FFF;
	transition: all .3s;
}

/*ラジオボタン*/
.wrap-radio{
	display: flex;
	flex-direction: column;
	gap: 10px;
}

input[type=radio]{display:none;}

input[type=radio]+label{
	background:url(../img/img_radio01.png) no-repeat 0 0.2em;
	background-size: 22px;
	padding:0 0 0 30px;
	line-height:27px;
}

input[type=radio]:checked+label{
	background:url(../img/img_radio01_on.png) no-repeat 0 0.2em;
	background-size: 22px;
}
input[type=radio]+label:hover{color:#999;}

/*チェックボックス*/
input[type=checkbox]{display:none;}

input[type=checkbox]+label{
	display:inline-block;
	background:url(../img/img_checkbox01.jpg) no-repeat 0 0;
	background-size: 22px;
	padding:0 0 0 30px;
	line-height:22px;
}

input[type=checkbox]:checked+label{
	background:url(../img/img_checkbox01_on.jpg) no-repeat 0 0;
	background-size: 22px;
}

/* wordpress wp_contents
---------------------------------------------- */
div.wp_contents{
	overflow:hidden;
	margin-bottom:40px;
}

div.wp_contents strong{font-weight: bold;}
div.wp_contents del{text-decoration:line-through;}

div.wp_contents p{margin-bottom:1.5em;}
div.wp_contents p:last-of-type{margin-bottom:0;}

div.wp_contents a{
	color:#009FE8;
	text-decoration:underline;
}

div.wp_contents img{
	max-width:100%;
	height:auto;
}

img.cl{
	width:1px !important;
	height:1px !important;
}

div.wp_contents .alignleft{float:left;}
div.wp_contents .alignright{float:right;}
div.wp_contents .aligncenter{
	display:block;
	margin:auto;
}

/* wordpress ページネーション
---------------------------------------------- */
div.wp-pagenavi{
	display: table;
	width: 100%;
	margin-top: 30px;
}

div.wp-pagenavi span,
div.wp-pagenavi a{display: none;}

div.wp-pagenavi a:last-child{border-right: none !important;}

div.wp-pagenavi a.previouspostslink,
div.wp-pagenavi a.nextpostslink{
	display: table-cell;
	vertical-align: middle;
	width: 50%;
	height: 45px;
	color: #263948;
	font-weight: bold;
}

div.wp-pagenavi a.previouspostslink{
	background: url(../img/ico_arrow07.png) no-repeat left center;
	background-size: 21px;
	padding-left: 60px;
	border-right: 1px solid #EAEAEA;
}

div.wp-pagenavi a.nextpostslink{
	background: url(../img/ico_arrow08.png) no-repeat right center;
	background-size: 21px;
	padding-right: 60px;
	text-align: right;
}

.first,
.last,
.pages,
.extend{display:none !important;}

/* wordpress ページナビ
---------------------------------------------- */
.pagenavi{
	border-top:1px solid #EAEAEA;
	border-bottom: 1px solid #EAEAEA;
	padding: 30px 0;
	margin-bottom: 15px;
}

.pagenavi ul{
	display: table;
	width: 100%;
}

.pagenavi ul li{
	display: table-cell;
	vertical-align: middle;
	width: 50%;
	color: #263948;
	font-weight: bold;
}

.pagenavi ul li.prev{border-right: 1px solid #EAEAEA;}

.pagenavi ul li.prev a{
	background: url(../img/ico_arrow07.png) no-repeat left center;
	background-size: 21px;
	padding-left: 50px;
	display: inline-block;
	color: #263947;
	height: 45px;
	line-height: 45px;
}

.pagenavi ul li.next{text-align: right;}

.pagenavi ul li.next a{
	background: url(../img/ico_arrow08.png) no-repeat right center;
	background-size: 21px;
	padding-right: 50px;
	display: inline-block;
	color: #263947;
	height: 45px;
	line-height: 45px;
}

/*--一覧へボタン--*/
.btn_list{
	text-align: center;
	font-size: 1.3rem;
}

.btn_list a{
	display: block;
	color: #263947;
	font-weight: bold;
	padding: 10px 0 10px;
}

.btn_list a span{
	padding-bottom: 3px;
	border-bottom: 1px dotted #263947;
}

/* wordpress 引用
---------------------------------------------- */
blockquote{
  display:inline-block;
  padding:10px 27px 0 27px;
  position: relative;
  color:#999;
}

blockquote::before{
  content: "\201C"; /*Unicode for Left Double Quote*/

  /*フォント*/
  font-family: Georgia, serif;
  font-size: 30px;
  font-weight: bold;

  /*ポジショニング*/
  position: absolute;
  left: 10px;
  top:0;
}

blockquote::after{
  content: "\201D"; /*Unicode for Right Double Quote*/

  /*フォント*/
  font-family: Georgia, serif;
  font-size: 30px;
  font-weight: bold;

  /*ポジショニング*/
  position: absolute;
  right: 10px;
  top:0;
}

/* ------------------------------------------------------------

header

------------------------------------------------------------ */

#header{
	background: #FFF;
	width: 100%;
	height: 50px;
	position: relative;
}

/* ロゴ
---------------------------------------------- */
#h_logo img{height: 50px;}

/* SNS
---------------------------------------------- */
.nav_h_sns{
	position: absolute;
	top:0;
	right: 50px;
}

.nav_h_sns ul{
	display: flex;
	flex-wrap: wrap;
}

.nav_h_sns li a{
	display: block;
	width: 50px;
	height: 50px;
}

.nav_h_sns li a img{height: 50px;}

/* メニューボタン
---------------------------------------------- */
.nav_open{
	position: fixed;
	top:0;
	right: 0;
	z-index: 100;
}

.nav_open img{height: 50px;}

/* 閉じるボタン
---------------------------------------------- */
.nav_close{
    position: absolute;
    top: 0;
    right: 0;
}

.nav_close img{height: 50px;}

/* ナビ
---------------------------------------------- */
.nav_main{
	background: #1C3242;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 0;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	transition: all .5s ease;
	z-index: 100;
}

.nav_main.open{
	height: 100%;
	padding-top: 50px;
}

.nav_menu li{border-bottom: 1px solid #29465B;}

.nav_menu li:first-child{border-top: 1px solid #29465B;}

.nav_menu li a{
	background: url(../img/ico_arrow03.png) no-repeat right 25px center;
	background-size: 9px;
	display: block;
	padding: 15px 25px;
	color: #FFF;
}

.nav_sub{
	background: #162937;
	font-size: 1.3rem;
}

.nav_sub li{border-bottom: 1px solid #233D50;}

.nav_sub li:first-child{border-top: none;}
.nav_sub li:last-child{border-bottom: none;}

.nav_sub li a{
	background: url(../img/ico_arrow03.png) no-repeat right 15px center;
	background-size: 9px;
	color: #83A3B8;
	padding: 15px 10px;
}

.wrap_nav_sub{padding: 0 25px 25px;}

/* 採用情報ボタン
---------------------------------------------- */
#h_recruit{
	background: #21394A url(../img/ico_arrow03.png) no-repeat right 25px center;
	background-size: 9px;
}

#h_recruit a{
	display: block;
	height: 42vw;
	text-align: center;
}

#h_recruit a img{height: 100%;}


/* ------------------------------------------------------------

footer

------------------------------------------------------------ */

#footer{background: #1C3242;}

#footer_inner{padding: 40px 25px 100px;}

#small{
	color: #83A3B8;
	text-align: center;
	font-size: 1rem;
	line-height: 1.2;
}

/* ナビ
---------------------------------------------- */
.nav_footer{
	margin-bottom: 30px;
	font-size: 1.3rem;
}

.nav_footer ul{
	display:-webkit-flex;/*--safari用--*/
	display:flex;
	-webkit-flex-wrap:wrap;/*--safari用--*/
	flex-wrap:wrap;
	-webkit-justify-content:space-between;/*--safari用--*/
	justify-content:space-between;
}

.nav_footer ul li{width: calc((100vw - 70px) / 2);}

.nav_footer ul li a{
	display: block;
	padding: 10px 0;
	color: #FFF;
}

/* SNS
---------------------------------------------- */
.nav_f_sns{margin-bottom: 35px;}

.nav_f_sns ul{
	text-align: center;
	letter-spacing: -0.4em;
}

.nav_f_sns ul li{
	display: inline-block;
	width: 50px;
	height: 50px;
	letter-spacing: normal;
}

.nav_f_sns ul li a{display: block;}

.nav_f_sns ul li a img{width: 50px;}


/* 採用情報
---------------------------------------------- */
#f_recruit{
	width: 100%;
	text-align: center;
	background: #fff;
}

#f_recruit .recruit,
#f_recruit .athlete{
	padding: 50px 0;
	position: relative;
}

#f_recruit a{
	display: block;
	position: relative;
	width: 100%;
	height: 300px;
	color: #333;
	transition: opacity .3s;
	padding-top: 50px;
}

#f_recruit a:hover{
	opacity: 0.7;
}

#f_recruit .recruit::before{
	content: "";
    display: block;
    width: 100%;
    height: 100px;
    position: absolute;
    top: 0;
    left: 0;
	background: url(/img/home/bg_news_top01.jpg) no-repeat center top;
	background-size: cover;
}

#f_recruit .recruit::after{
	content: "";
    display: block;
	width: 100%;
    height: 100px;
    position: absolute;
    bottom: 0;
    left: 0;
	background: url(/img/home/bg_news_btm01.jpg) no-repeat center bottom;
	background-size: cover;
}

#f_recruit img{
	vertical-align: middle;
	max-width: 80%;
	height: auto;
}

/* アスリート支援
---------------------------------------------- */
#f_recruit .athlete::before{
	content: "";
    display: block;
    width: 100%;
    height: 100px;
    position: absolute;
	top: 0;
    left: 0;
	background: url(/img/home/bg_blog_top01.jpg) no-repeat center top;
	background-size: cover;
}

#f_recruit .athlete::after{
	content: "";
    display: block;
    width: 100%;
    height: 100px;
    position: absolute;
	bottom: 0;
    left: 0;
	background: url(/img/home/bg_blog_btm01.jpg) no-repeat center bottom;
	background-size: cover;
}
/* 個人情報保護方針
---------------------------------------------- */
#f_privacy{
	text-align: center;
	font-size: 1.3rem;
	margin-bottom: 20px;
}

#f_privacy a{color: #FFF;}


