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

/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

パソコン、スマートフォン（iPhone,Android) 共通

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

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

basic

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

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap&subset=japanese');
@import url('https://fonts.googleapis.com/css?family=Oswald');

@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 500;
}

@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}

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

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

html{
    -moz-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body{
	color:#333333;
	font-weight: 400;
}

.svg_symbol{display: none;}


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

shortcodes

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

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

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

/* margin
---------------------------------------------- */
.mb_none{margin-bottom: 0 !important;}

/* ページトップボタン
---------------------------------------------- */
.pagetop {
  position: fixed;
  right: 20px;
  bottom: 39px;
  width: 88px;
  height: 99px;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s;
  z-index: 1;
  cursor: pointer;
}

@media screen and (orientation: portrait) and (max-width: 767px) {
  .pagetop {
    right: 5px;
    bottom: 25px;
    width: 66px;
    height: 74.25px;
    z-index: 2;
  }
}
.pagetop.show {
  opacity: 1;
  pointer-events: auto;
}
.pagetop.no-transition {
  transition: none;
}
.pagetop .plane {
  position: relative;
  width: 88px;
  height: 99px;
  pointer-events: none;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .pagetop .plane {
    width: 66px;
    height: 74.25px;
  }
}
.pagetop .plane-inner {
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.pagetop .plane-substance {
  position: relative;
  width: 100%;
}
.pagetop .plane-silhouette {
  position: absolute;
  width: 100%;
  bottom: 0;
  right: 0;
  opacity: 0;
  transition: opacity 0.3s, right 0.3s;
}
.pagetop .text {
  text-align: center;
  font-family: "Quicksand", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  padding-top: 5px;
  color: #43638b;
  position: relative;
  transition: color 0.3s;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .pagetop .text {
    font-size: 10.5px;
    padding-top: 4px;
  }
}
.pagetop .runway {
  position: absolute;
  width: 326px;
  height: 326px;
  transform: scale(0);
  transition: transform 0.3s;
  border-radius: 326px;
  overflow: hidden;
  left: -119px;
  top: -113.5px;
  pointer-events: none;
}
@media screen and (orientation: portrait) and (max-width: 767px) {
  .pagetop .runway {
    width: 244.5px;
    height: 244.5px;
    border-radius: 244.5px;
    left: -89.25px;
    top: -85.125px;
  }
}
.pagetop .runway img {
  width: 100%;
}
.pagetop:hover .plane-silhouette {
  right: -5px;
  opacity: 1;
}
@media screen and (max-width: 1200px) {
  .pagetop:hover .plane-silhouette {
    right: -0.5rem;
  }
}
@media screen and (max-width: 1024px) {
  .pagetop:hover .plane-silhouette {
    opacity: 0;
  }
}
.pagetop:hover .text {
  color: #FFF;
}
@media screen and (max-width: 1024px) {
  .pagetop:hover .text {
    color: #43638B;
  }
}
.pagetop:hover .runway {
  transform: scale(1);
}
@media screen and (max-width: 1024px) {
  .pagetop:hover .runway {
    transform: scale(0);
  }
}
.pagetop:hover .runway img {
  animation: runway 2s linear 0s infinite reverse forwards;
}
@keyframes runway {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(0, -50%, 0);
  }
}
.pagetop.anim-start {
  pointer-events: none;
  opacity: 1;
}
.pagetop.anim-start .plane-substance {
  animation: plane 2.4s ease-in-out 0s 1 normal forwards;
}
.pagetop.anim-start .plane-silhouette {
  right: -5px;
  opacity: 1;
  animation: plane_silhouette 2.4s ease-in-out 0s 1 normal forwards;
}
@media screen and (max-width: 1200px) {
  .pagetop.anim-start .plane-silhouette {
    right: -0.5rem;
  }
}
.pagetop.anim-start .text {
  display: none;
}
.pagetop.anim-start .runway {
  transition: none;
  animation: runway_scale 2.4s ease 0s 1 normal forwards;
}
@media screen and (max-width: 1024px) {
  .pagetop.anim-start .runway {
    animation: runway_scale_sp 2.4s ease 0s 1 normal forwards;
  }
}
.pagetop.anim-start .runway img {
  animation: runway_stop 1s cubic-bezier(0.55, 0.06, 0.68, 0.19) 1s 1 reverse forwards;
}

@keyframes plane {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(2) translate3d(-33%, -100%, 0);
  }
  63% {
    transform: scale(1);
  }
  85% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes plane_silhouette {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(0.5) translate3d(100%, 0, 0);
    opacity: 0.5;
  }
  63% {
    transform: scale(1);
  }
  85% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes runway_scale {
  0% {
    transform: scale(1);
  }
  20% {
    transform: scale(0);
  }
  38% {
    transform: scale(0);
  }
  85% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes runway_scale_sp {
  0% {
    transform: scale(0);
  }
  38% {
    transform: scale(0);
  }
  85% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes runway_stop {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(0, -50%, 0);
  }
}


@media print, screen and (min-width:768px){ /* 表示領域が768px以上の場合に適用するスタイル */
	/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	PC

	_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

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

	common

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

	body{
		font-size: 15px;
		font-size: 1.5rem;
		line-height: 1.8;
	}

	.pc_br{display: block;}

	/* レイアウト
	---------------------------------------------- */
	#wrap_all{
		position: relative;
		min-width: 1200px;
		overflow: hidden;
	}

	.wrap_type01{
		width: 1100px;
		margin: 0 auto 100px;
		padding-top: 90px;
	}

	/*--ストライプ--*/
	.wrap_stripe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		pointer-events: none;
	}
	.wrap_stripe .stripe{
		position: relative;
		width: 100%;
		height: 100%;
	}
	.wrap_stripe .stripe .stripe_inner{
		position: absolute;
		height: 100%;
		width: 100%;
		display: flex;
	}
	.wrap_stripe .stripe .stripe_inner span{
		height: 100%;
		width: 10%;
		border-right: 1px solid #fff;
		font-size: 0;
		opacity: 0.07;
	}

	/*--404ページ--*/	
	.wrap_404{
		text-align: center;
        padding-top: 100px;
		margin-bottom: 200px;
	}

	.ttl_404{
		font-size: 5rem;
		font-weight: bold;
		margin-bottom: 12px;
	}

	.txt_404{margin-bottom: 30px;}

	/* 見出し
	---------------------------------------------- */
	.heading01{
		color: #202020;
		font-size: 4rem;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 0.075em;
		text-align: center;
		margin-bottom: 50px;
		z-index: 1;
	}

	.heading01 span{
		display: block;
		font-size: 7.2rem;
		font-family: 'Oswald';
		opacity: 0.1;
		margin-bottom: 30px;
	}

	.heading02{
		font-size: 4rem;
		font-weight: bold;
		margin-bottom: 45px;
	}

	.heading02 span{
		display: block;
		color: #000;
		font-size: 20rem;
		font-family: 'Oswald';
		line-height: 1;
		letter-spacing: 0.015em;
		white-space: nowrap;
		margin-bottom: 10px;
		opacity: 0.05;
	}

	/* リンク
	---------------------------------------------- */
	.link01{
		color: #333;
		text-decoration: underline !important;
	}

	.link01:hover{text-decoration: none !important;}
	
	.link_tel01{
		color: #333;
		pointer-events: none;
	}

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

	.type01 th{
		width: 192px;
		font-weight: bold;
		text-align: center;
		border-bottom: 2px solid #BEBEBE;
	}

	.type01 th,
	.type01 td{
		font-size: 1.7rem;
		padding: 15px 0;
	}

	.type01 td{border-bottom: 2px solid #DBDBDB;}

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

	.type02 tr{border-bottom: 1px solid #DDD;}

	.type02 th,
	.type02 td{
		font-size: 1.7rem;
		padding: 15px 0;
	}

	.type02 th{font-weight: bold;}
	
	/* フォーム関連
	---------------------------------------------- */
	.form{width: 100%;}

	.form th{
		width: 190px;
		font-size: 1.7rem;
		font-weight: bold;
		padding: 10px 0;
	}

	.form tr:last-child th{
		vertical-align: top;
		padding-top: 23px;
	}

	.form td{
		font-size: 1.7rem;
		word-break: break-all;
		padding: 10px 0;
	}

	.form input[type="text"],
	.form input[type="email"],
	.form input[type="tel"],
	.form select,
	.form textarea{
		display: block;
		font-size: 1.7rem;
		background: #F6F6F6;
		border: none;
		border-radius: 0;
		padding: 15px;
	}

	.form input:focus{outline: none;}
	.form input::-moz-focus-inner{border: 0;}
	.form input{
		width: 100%;
		-webkit-appearance: none;
	}

	.form textarea:focus{outline: none;}
	.form textarea::-moz-focus-inner{border: 0;}/* Firefox 点線消す */
	.form textarea{
		width: 100%;
		min-height: 200px;
		resize: vertical;
		-webkit-appearance: none;
	}

	/*--selectbox--*/
	.form select:focus{outline: none;}
	.form select::-moz-focus-inner{border: 0;}/* Firefox 点線消す */

	.wrap_select{
		position: relative;
		background: #F6F6F6;
		margin-right: 7px;
	}
	.wrap_select::after{
		content: "";
		display: block;
		width: 35px;
		height: 100%;
		background: url(../img/ico_arrow01.png) no-repeat center;
		background-size: 15px;
		position: absolute;
		top: 0;
		right: 0;
	}
	.wrap_select select{
		position: relative;
		padding-right: 35px;
		background: transparent;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		z-index: 1;
	}
	.wrap_select select::-ms-expand{display: none;}

	.date{display: flex;}

	.form .year,
	.form .month,
	.form .day{
		display: flex;
		align-items: center;
	}

	.form .year{margin-right: 12px;}
	.form .month{margin-right: 12px;}

	.form .year select{width: 120px;}
	.form .month select{width: 90px;}
	.form .day select{width: 90px;}

	.must{
		font-size: 1.2rem;
		color: #FF2626;
	}

	.ERR{color: #FF4C4C;}

	/*--ラジオボタン--*/
	.list_radio{
		display: flex;
		padding: 10px 0;
	}
	.list_radio li{margin-right: 17px;}
	.list_radio li:last-child{margin-right: 0;}

	.form input[type="radio"]{display: none;}
	.form input[type="radio"] + label{
		display: inline-block;
		background-image: url(../img/img_radio01.png);
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 21px;
		padding: 0 0 0 27px;
		line-height: 21px;
		cursor: pointer;
	}
	
	.form input[type="radio"]:checked+label{background-image:url(../img/img_radio01_on.png)}

	/*--ボタン--*/
	.btn_form{text-align: center;}

	.btn_form button{
		display: inline-block;
		width: 200px;
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 1;
		text-align: center;
		border: none;
		border-radius: 0;
		padding: 21px 0;
		cursor: pointer;
		outline: none;
		-webkit-appearance: none;
		margin-left: 20px;
		transition: color .2s, background .2s;
		background: #00A6DE;
		color: #FFF;
		border:none;
	}
	
	.btn_form button:hover{
		color: #00A6DE;
		background: #EEEEEE;
	}


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

	header

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

	#wrap_top{
		color: #333;
		font-size: 1.2rem;
		line-height: 1.2;
		padding: 3px 0 0;
		position: absolute;
		top: 0;
		left: 50px;
	}

	.wrap_top_inner .cloned{display: none;}

	#header{
		position: relative;
		background: #FFF;
		padding-left: 50px;
		z-index: 10;
	}

	.header_inner{
		width: 100%;
		height: 90px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.h_logo{
		width: 210px;
		margin-top: 10px;
	}

	.h_logo a{display: block;}

	.h_logo img{width: 100%;}
	
	.m_logo{display: none;}

	/*--768pxの切替時にtransition:allが効いてしまい一瞬スマホメニューが表示されてしまうためmain_menuをPC用とSP用に分けて回避しています--*/
	.main_menu.pc{display: block;}

	.main_menu.sp{display: none;}

	/* ナビ
	---------------------------------------------- */
	.nav_global ul{display: flex;}

	.nav_global ul li a{
		display: block;
		color: #333;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1;
		padding: 37px 32px;
	}

	.nav_global ul li.g05{margin-right: 30px;}

	.nav_global ul li.g06 a{
		color: #FFF;
		background: #01a6de;
		padding: 37px 42px;
		transition: color .2s, background .2s;
	}

	.nav_global ul li a:hover{opacity: .8;}

	.nav_global ul li.g06 a:hover{
		color: #01a6de;
		background: #FFF;
		opacity: 1;
	}

	.btn_menu,
	.btn_close{display: none;}


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

	footer

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

	#footer{
		color: #FFF;
		background: #00A6DE;
		padding: 110px 0 10px;
	}

	.footer_inner{
		width: 1100px;
		margin: 0 auto;
	}
	
	.f_inner{
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 140px;
	}

	.f_logo{width: 210px;}

	.f_logo a{display: block;}

	.f_logo img{width: 100%;}

	.f_bottom{
		font-size: 1.2rem;
		text-align: center;
		line-height: 1.2;
	}

	.f_bottom small{
		display: block;
		line-height: 1;
		margin-top: 5px;
	}

	/* ナビ
	---------------------------------------------- */
	.nav_footer ul{display: flex;}

	.nav_footer ul li a{
		display: block;
		color: #FFF;
		font-size: 1.6rem;
		border-right: 1px solid rgba(255,255,255,0.3);
		padding: 3px 32px;
	}

	.nav_footer ul li:last-child a{border-right: none;}

	.nav_footer ul li a:hover{opacity: 0.8;}


	/* reCAPTCHA v3　表示位置
	---------------------------------------------- */
	.grecaptcha-badge{
		bottom: 170px !important;
		z-index: 100;
	}


}/*--@media--*/


@media print{ /* 印刷時のみ */
	/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	PC

	_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

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

	common

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

	/* レイアウト
	---------------------------------------------- */
	#wrap_all{
		width: 1200px;
		transform: scale(0.8);
		transform-origin: 0 0;
	}


}/*--@media--*/


@media only screen and (max-width:767px){ /* 表示領域が767px以下の場合に適用するスタイル */
	/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

	スマートフォン（iPhone,Android)

	_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_*/

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

	common

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

	body{
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 1.6;
	}

	.sp_br{display: block;}

	/* レイアウト
	---------------------------------------------- */
	#wrap_all{
		position: relative;
		min-width: 320px;
		overflow: hidden;
	}

	.wrap_type01{padding: 50px 20px 80px;}

	/*--ストライプ--*/
	.wrap_stripe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding: 0 20px;
		pointer-events: none;
	}
	.wrap_stripe .stripe{
		position: relative;
		width: 100%;
		height: 100%;
	}
	.wrap_stripe .stripe .stripe_inner{
		position: absolute;
		height: 100%;
		width: 100%;
		display: flex;
	}
	.wrap_stripe .stripe .stripe_inner span{
		height: 100%;
		border-right: 1px solid #fff;
		font-size: 0;
		opacity: 0.07;
	}
	.wrap_stripe .stripe .stripe_inner span:nth-child(1){width: 0;}
	.wrap_stripe .stripe .stripe_inner span:nth-child(2),
	.wrap_stripe .stripe .stripe_inner span:nth-child(3){width: 50%;}
	.wrap_stripe .stripe .stripe_inner span:nth-child(4),
	.wrap_stripe .stripe .stripe_inner span:nth-child(5),
	.wrap_stripe .stripe .stripe_inner span:nth-child(6),
	.wrap_stripe .stripe .stripe_inner span:nth-child(7),
	.wrap_stripe .stripe .stripe_inner span:nth-child(8),
	.wrap_stripe .stripe .stripe_inner span:nth-child(9),
	.wrap_stripe .stripe .stripe_inner span:nth-child(10){display: none;}

	/*--404ページ--*/
	.wrap_404{
		text-align: center;
		padding: 100px 20px 0;
		margin-bottom: 100px;
	}

	.ttl_404{
		font-size: 3rem;
		font-weight: bold;
		margin-bottom: 12px;
	}

	.txt_404{margin-bottom: 30px;}

	/* 見出し
	---------------------------------------------- */
	.heading01{
		color: #202020;
		font-size: 2rem;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 0.075em;
		text-align: center;
		margin-bottom: 25px;
		z-index: 1;
	}

	.heading01 span{
		display: block;
		font-size: 5.5rem;
		font-family: 'Oswald';
		opacity: 0.1;
		margin-bottom: 15px;
	}

	.heading02{
		font-size: 2rem;
		font-weight: bold;
		margin-bottom: 20px;
		z-index: -1;
	}

	.heading02 span{
		display: block;
		color: #000;
		font-size: 8rem;
		font-family: 'Oswald';
		line-height: 1;
		letter-spacing: 0.015em;
		white-space: nowrap;
		margin-bottom: 10px;
		opacity: 0.05;
	}

	/* リンク
	---------------------------------------------- */
	.link01{
		color: #333;
		text-decoration: underline !important;
	}

	.link_tel01{color: #333;}

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

	.type01 th{
		font-weight: bold;
		padding: 12px 0 5px;
	}

	.type01 tr:first-child th{padding-top: 0;}

	.type01 th,
	.type01 td{display: block;}

	.type01 td{
		border-bottom: 2px solid #DBDBDB;
		padding: 0 15px 12px 0;
	}

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

	.type02 tr{border-bottom: 1px solid #DDD;}

	.type02 tr:last-child{border-bottom: none;}

	.type02 th,
	.type02 td{padding: 12px 0;}

	.type02 th{font-weight: bold;}

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

	.form th{
		font-weight: bold;
		padding: 10px 0 5px;
	}

	.form tr:first-child th{padding-top: 0;}

	.form th,
	.form td{display: block;}

	.form td{
		word-break: break-all;
		padding-bottom: 10px;
	}

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

	.form input[type="text"],
	.form input[type="email"],
	.form input[type="tel"],
	.form select,
	.form textarea{
		display: block;
		font-size: 1.6rem;
		background: #F6F6F6;
		border: none;
		border-radius: 0;
		padding: 10px;
	}

	.form input:focus{outline: none;}
	.form input::-moz-focus-inner{border: 0;}
	.form input{
		width: 100%;
		-webkit-appearance: none;
	}

	.form textarea:focus{outline: none;}
	.form textarea::-moz-focus-inner{border: 0;}/* Firefox 点線消す */
	.form textarea{
		width: 100%;
		min-height: 150px;
		resize: vertical;
		-webkit-appearance: none;
	}

	/*--selectbox--*/
	.form select:focus{outline: none;}
	.form select::-moz-focus-inner{border: 0;}/* Firefox 点線消す */

	.wrap_select{
		position: relative;
		background: #F6F6F6;
		margin-right: 4px;
	}
	.wrap_select::after{
		content: "";
		display: block;
		width: 35px;
		height: 100%;
		background: url(../img/ico_arrow01.png) no-repeat center;
		background-size: 11px;
		position: absolute;
		top: 0;
		right: 0;
	}
	.wrap_select select{
		position: relative;
		padding-right: 35px;
		background: transparent;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		z-index: 1;
	}
	.wrap_select select::-ms-expand{display: none;}

	.date{
		display: flex;
		flex-wrap: wrap;
	}

	.form .year,
	.form .month,
	.form .day{
		display: flex;
		align-items: center;
		margin: 5px 0;
	}

	.form .year{margin-right: 6px;}
	.form .month{margin-right: 6px;}

	.form .year select{width: 90px;}
	.form .month select{width: 60px;}
	.form .day select{width: 60px;}

	.must{
		font-size: 1.2rem;
		color: #FF2626;
	}

	.ERR{color: #FF4C4C;}

	/*--ラジオボタン--*/
	.list_radio{
		display: flex;
		padding: 10px 0;
	}
	.list_radio li{margin-right: 17px;}
	.list_radio li:last-child{margin-right: 0;}

	.form input[type="radio"]{display: none;}
	.form input[type="radio"] + label{
		display: inline-block;
		background-image: url(../img/img_radio01.png);
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 21px;
		padding: 0 0 0 27px;
		line-height: 21px;
		cursor: pointer;
	}
	.form input[type="radio"]:checked+label{background-image:url(../img/img_radio01_on.png)}

	/*--ボタン--*/
	.btn_form{text-align: center;}
	
	.btn_form button{
		border-radius: 0;
		display: inline-block;
		width: 178px;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1;
		text-align: center;
		padding: 21px 0;
		cursor: pointer;
		outline: none;
		-webkit-appearance: none;
		background: #00A6DE;
		color: #FFF;
		border:none;
	}


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

	header

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

	#wrap_top{
		position: relative;
		width: 100%;
		color: #7E8489;
		font-size: 1rem;
		line-height: 1.2;
	}

	.wrap_top_inner{
		display: flex;
		flex-wrap: nowrap;
    padding: 0;
	}

	.wrap_top_inner h1{white-space: nowrap;}

	#header{
		position: relative;
		background: #FFF;
		z-index: 10;
	}

	.header_inner{
    padding: 12px 0 10px 10px;
		z-index: 3;
	}

	.h_logo{width: 139px;}

	.h_logo a{display: block;}

	.h_logo img{width: 100%;}

	/*--768pxの切替時にtransition:allが効いてしまい一瞬スマホメニューが表示されてしまうためmain_menuをPC用とSP用に分けて回避しています--*/
	.main_menu.pc{display: none;}

	.main_menu.sp{display: block;}

	/* メニュー
	---------------------------------------------- */
	/*--メニューを開くボタン--*/
	.btn_menu{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 50px;
		height: 50px;
		position: fixed;
		top: 13px;
		right: 0;
		cursor: pointer;
		z-index: 102;
	}

	.btn_menu span,
	.btn_menu span::before,
	.btn_menu span::after{
		display: block;
		width: 27px;
		height: 3px;
		background: #002a4c;
		transition: all .5s;
	}

	.intersecting-company .btn_menu span,
	.intersecting-company .btn_menu span::before,
	.intersecting-company .btn_menu span::after{
    background: #00A6DE;
  }

	.btn_menu span{position: relative;}

	.btn_menu span::before,
	.btn_menu span::after{
		content: "";
		position: absolute;
	}

	.btn_menu span::before{margin-top: -8px;}
	.btn_menu span::after{margin-top: 8px;}

	.btn_menu.on span{background: transparent;}

	.btn_menu.on span::before,
	.btn_menu.on span::after{background: #FFF;}

	.btn_menu.on span::before{transform: translateY(7px) rotate(-315deg);}
	.btn_menu.on span::after{transform: translateY(-9px) rotate(315deg);}

	/* メニュー内
	---------------------------------------------- */
	.drawer{
		width: 100%;
		height: 100%;
		transition: opacity .5s;
		opacity: 0;
		pointer-events: none;
		position: fixed;
		top: 0;
		left: 0;
	}
	
	.drawer.open{
		opacity: 1;
		pointer-events: auto;
	}

	.drawer .drawer_inner{
		background: #00A6DE;
		width: 100%;
		height: 100%;
		padding: 95px 20px 80px;
		position: relative;
		z-index: 101;
		overflow-y: scroll;
		-webkit-overflow-scrolling:touch;
		overflow-scrolling:touch;
    overscroll-behavior: contain;
	}

	.m_logo{
		width: 139px;
		position: absolute;
		top: 24px;
		left: 10px;
		z-index: 1;
	}

	.m_logo a{display: block;}

	.m_logo a img{width: 100%;}

	/* ナビ
	---------------------------------------------- */
	.nav_global{
		max-width: 400px;
		margin: 0 auto;
	}

	.nav_global ul li{margin-bottom: 15px;}

	.nav_global ul li:last-child{margin-bottom: 0;}

	.nav_global ul li a{
		display: block;
		width: 100%;
		padding-top: 25.83%;
		background-position: right 0;
		background-repeat: no-repeat;
		background-size: contain;
	}

	.nav_global ul li.g01 a{background-image: url(../img/sp/nav_menu01.png);}
	.nav_global ul li.g02 a{background-image: url(../img/sp/nav_menu02.png);}
	.nav_global ul li.g03 a{background-image: url(../img/sp/nav_menu03.png);}
	.nav_global ul li.g04 a{background-image: url(../img/sp/nav_menu04.png);}
	.nav_global ul li.g05 a{background-image: url(../img/sp/nav_menu05.png);}
	.nav_global ul li.g06 a{background-image: url(../img/sp/nav_menu06.png);}

	.nav_global ul li a span{display: none;}


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

	footer

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

	#footer{color: #FFF;}

	.footer_inner{
		background: #00A6DE;
		padding: 50px 10px 10px;
	}
	
	.f_inner{margin-bottom: 25px;}
	
  .f_logo{
    padding-left: 15px;
  }
	.f_logo a{
		display: inline-block;
		width: 139px;
	}
	
	.f_logo a img{width: 100%;}
	
	.f_bottom{font-size: 1.1rem;}
	
	.f_bottom p:nth-child(1){margin-bottom: 5px;}

	/* ナビ
	---------------------------------------------- */
	.nav_footer{margin-bottom: 70px;}
	
	.nav_footer ul{
		display: flex;
		flex-wrap: wrap;
		width: 290px;
	}

	.nav_footer ul li{margin-bottom: 20px;}
	
	.nav_footer ul li a{
		display: block;
		color: #FFF;
		font-size: 1.4rem;
		font-weight: bold;
		border-right: 1px solid rgba(255,255,255,0.3);
		padding: 2px 15px;
		line-height: 1;
	}

	.nav_footer ul li:last-child a{border-right: none;}


	/* reCAPTCHA v3　表示位置
	---------------------------------------------- */
	.grecaptcha-badge{
		bottom: 70px !important;
		z-index: 9;
	}


}/*--@media--*/




