html, body {
/*	margin: 0;*/
/*	padding: 0;*/
/*	height: 100%;*/
/*	width: 100%;*/
	font-family: "游ゴシック体", 'Yu Gothic', YuGothic, "游ゴシック Medium", "Yu Gothic Medium", Arial, sans-serif;
	font-size: 12px;
/*	font-weight: normal;*/
	line-height: 2.5;
/*	color: #333;*/
}

main {
    @media (min-width: 768px){
        margin: 0 50px;
    }
	height: auto;
	overflow-x: hidden;
	display: block;
}

a {
  color: inherit;
  text-decoration: none;
}
.fillLink{
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
/** フォント, 色 */
.aboutTitleFont{
	font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: normal;
	font-style: italic;
    @media (min-width: 768px){
        font-size: 28px;
        line-height: 2.5;
    }
    @media (max-width: 768px){
        font-size: 40px;
        line-height: 2.5;
    }
}
.aboutContentFont{
	font-size: 14px;
}
.bgGray{
	background: #f5f5f5;
}

/** ヘッダー */
.contentBox {
	width: 100%;
	height: auto;
}


.loginContentBox {
	width: 100%;
	min-height: 100px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
    @media (min-width: 768px) {
        flex-direction: row;
        padding: 30px 0;
    }
    @media (max-width: 768px) {
        flex-direction: column;
        padding: 5px 0;
    }
}
.headerLogo{
	width: 160px;
	height: auto;
	display: flex;
	padding: 10px 0;
}
.headerRight{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-grow: 9999;
	font-weight: bold;
	padding: 10px 0;
    @media (max-width: 768px) {
        flex-direction: column;
    }
}
.headerMenu{
	margin-right: 2em;
}
.headerLogin{
	width: 120px;
	height: 36px;
	border: 1px solid #333;
	display: flex;
	justify-content: center;
	align-items: center;
}
.headerLogoImg{
	width:100%;
	height: auto;
}
.headerLogoCover{
	width: 100%;
}

#newsframe{
    @media (min-width: 884px){
        height: 480px;
    }
    @media (max-width: 884px){
        height: 800px;
    }
}
/** main */
.mainContent{
	position: relative;
	margin: auto;
	width: 100%;
}
.mainBox{
    @media (min-width: 768px) {
        width: 75%;
        margin: auto;
    }
    @media (max-width: 768px) {
        width: 100%;
        margin: 10px;
    }
	position: relative;
}
.movieBottomBox{
	position: relative;
	width: 100%;
    @media (min-width: 884px){
        height: 510px;
    }
    @media (max-width: 884px){
        height: 800px;
    }
}
.movieBottomContent{
	display: flex;
	justify-content: center;
	align-items: flex-end;
	padding-top: 15px;
	padding-bottom: 5px;
	color: #716F70;
}
.movieBottomLine{
	height: 40px;
	margin-left: 50%;
	width: 1px;
	background: #333;
	display: block;
}

.entranceMenuBox{
	width: 100%;
	display: flex;
	position: relative;
	padding-bottom: 70px;
}

.entranceMenuContent{
	width: 50%;
	height: 200px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.entranceMenuLeft{
	background: #87ceeb;
}
.entranceMenuRight{
	background: #add8e6;
}
.entranceMenuMain{
	font-size: 20px;
	font-weight: bold;
}
.entranceMenuSub{
	font-size: 14px;
	font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.airshareAnimation{
	width: 100%;
	position: relative;
	display: flex;
	margin: auto;
}

/* .fadeInLeft{
	animation-iteration-count: 1;
	animation-duration: 3s;
	animation-name: slidein;
	position: absolute;
}

@keyframes slidein {
  from {
    margin-left: 100%;
  }

  to {
    margin-left: 0%;
  }
} */
.fadeInCenter{
	position: absolute;
	height: 100%;
	width: 100%;
	display: flex;
	justify-content: center;
}
.fadeInLeft{
	width: 50%;
}
.fadeInRight{
	width: 50%;
	margin-top: 10%;
	/* margin-top: 55px; */
}

/** fadeIn */
.fadeInAIR{
	text-align: right;	/** display:flexで揃えるとsafariでバグ */
}
.fadeInSHARE{

}
.fadeInAirplane{
	width: 12%;
}
.fadeInAirplane2{
	width: 80%;
	height: 100%;
	text-align: right;
	transform: skewY(-11deg);	/** ななめ（子のコンポーネントで戻す） */
	margin-top: 9.7%;
}
.fadeInAirplane3{
	width: 73%;
	margin-top: 7%;
	margin-left: 27%;
}
.fadeInFind{
	width: 50%;
	height: 29%;
	text-align: right;
}
.fadeInBEST{
	padding-left: 50%;
	width: 50%;
	height: 40%;
}
.fadeInFLIGHT{
	width: 100%;
}
.fadeInNew, .fadeInWORK{
	padding-left: 35%;
}
.fadeInSTYLE{
	padding-right: 35%;
}
.logoAIR{
	width: 60%;
	height: auto;
}
.logoSHARE{
	width: 120%;
	height: auto;
}
.logoAirplane{
	width:100%;
}
.logoAirplane2{
	height: 15%;
	transform: skewY(11deg);
}
.logoAirplane3{
	width: 12%;
}
.logoFind{
	height: 100%;
}
.logoBEST{
	height: 100%;
}
.logoFLIGHT{
	width: 100%;
}
.logoNew{
	width: 40%;
}
.logoWORK{
	width: 100%;
}
.logoSTYLE{
	width: 100%;
}
/** 文字 */
.aboutBox{
    @media (min-width: 768px) {
        margin-top: -5%;
        width: 50%;
    }
    @media (max-width: 768px) {
        margin-top: 10px;
        width: 100%;
    }
}
.howtoBox{
    @media (min-width: 768px) {
        margin-top: -5%;
    }
    @media (max-width: 768px) {
        margin-top: 0;
    }
}
.aboutTitle{

}
.aboutContent{
	padding-right: 5%;
}
.aboutParagraph{
	display: flex;
}
.aboutReadMore{
	width: 50%;
	height: 50px;
	margin-top: 15px;
	border: 2px solid #333;
	cursor: pointer;
	background-color: white;
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
}
.whiteMore{
	width: 80%;
	height: 50px;
	margin-top: 15px;
	border: 2px solid #fff;
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	line-height: 1;
}

.backgroundBox{
	width: 100%;
	position: relative;
}

.bgBox{
    @media (max-width: 768px) {
        display: none;
    }
	width: 75%;
	height: 100%;
	position: relative;
	margin: 0 auto;
}

.bpoIcon, .bpoIconResponsive{
	width: 75%;
	margin: auto;
	position: relative;
}
.bpoIconResponsive{
	display: none;
}

.how_to_use{

}

.poPanel{
	position: relative;
    @media (min-width: 768px){
        width: 75%;
        margin: auto;
    }
    @media (max-width: 768px){
        width: 100%;
    }
}

.photoPanel{
	z-index: 1;
	top: 0;
	left: 0;
    @media (min-width: 768px){
        position: absolute;
        width: 60%;
    }
    @media (max-width: 768px){
        position: relative;
        width: 70%;
        margin: 0 auto;
    }
}
.photoPilot{
	width: 100%;
}
.rightPanel{
    @media (min-width: 768px){
        padding-left: 50%;
    }
    @media (max-width: 768px){
        padding-left: 0%;
    }
}
.titlePanel{
	display: flex;
	justify-content: space-between;
	align-items: center;
    @media (min-width: 768px){
        padding-left: 25%;
        padding-right: 5%;
    }
    @media (max-width: 768px){
        padding: 0;
    }
}
.titleBox{
	margin: 0;
    @media (max-width: 768px){
        margin: 0 auto;
    }
}
.iconBox{
	flex-grow: 9999;
	justify-content: flex-end;
    @media (min-width: 768px){
        display: flex;
    }
    @media (max-width: 768px){
        display: none;
    }
}
.pilotIcon{
}
.blackPanel{
	background: #333;
	color: #fff;
	position: relative;
    font-size: 16px;
    @media (min-width: 768px){
        padding: 10% 10% 10% 25%;
    }
    @media (max-width: 768px){
        padding: 5% 10% 5% 10%;
        /*margin-top: calc(-70px + 35%);*/
    }
}
/* .blackPanel::before{
    content: "";
    display: block;
    padding-top: 65%;
} */

/** footer */
.footerContentBox{
	/* padding-top: 60px; */
	position: relative;
	margin: auto;
    @media (min-width: 768px){
        width: 75%;
    }
    @media (max-width: 768px){
        width: 100%;
    }
}
.bgBorder{
    @media (max-width: 768px) {
        display: none;
    }
    @media (min-width: 768px) {
        width: 1px;
        height: 100%;
        background: rgba(51, 51, 51, 0.1);
        position: absolute;
        display: block;
    }
}
.bgBorderCenter{
    @media (max-width: 768px) {
        display: none;
    }
    @media (min-width: 768px) {
        width: 1px;
        height: 100%;
        position: absolute;
        display: block;
        background: #333;
    }
}

.footerMenuBox{
	display: flex;
    @media (min-width: 768px){
        flex-direction: row;
    }
    @media (max-width: 768px){
        flex-direction: column;
    }
}
.footerMenuContetnt a {
    @media (max-width: 768px){
        display: block;
        text-align: center;
    }
}
.footerMenuContetnt{
	padding-left: 2em;
    @media (min-width: 768px){
        width: 25%;
        display: flex;
        flex-direction: column;
    }
    @media (max-width: 768px){
        width: 100%;
        margin-bottom: 10%;
        display: block;
        padding: 0;
    }
}

.footerTopBox{
	width: 100%;
	margin: auto;
	display: flex;
	justify-content: center;
	padding-right: 2em;
	box-sizing: border-box;
}

.footerTopIcon{
	width: 100%;
}

.addressBoxLeft, .addressBoxRight{
    @media (min-width: 768px){
        width: 50%;
    }
    @media (max-width: 768px){
        width: 100%;
    }
}
.addressBoxLeft{
	padding-left: 2em;
}
.addressBoxRightCover{
	position: relative;
    box-sizing:border-box;
	width: 100%;
}
.addressBoxRightCover::before{
    content: "";
    display: block;
    padding-top: 7%;
}

.snsIconBox{
	position: absolute;
	top: 0;
	height: 100%;
	width: 100%;
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
}
.snsIconContent{
	display: block;
	margin-right: 4%;
	min-height: 24px;
	height: 100%;
}
.snsIcon{
	height: 100%;
}

/** option.html */
.optionBox{
    @media (min-width: 768px){
        width: 100%;
        display: flex;
        justify-content: space-between;
        position: relative;
    }
    @media (max-width: 768px){
        display: block;
        width: 100%;
        position: relative;
    }
}
.optionContent{
	width: 48%;
	height: 100px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background: #87ceeb;
	color: #fff;
	font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	line-height: 1.5;
    @media (max-width: 768px){
        margin-bottom: 5%;
        width: 100%;
    }
}
.optionMain{
	font-size: 30px;
}
.optionSub{
	font-size: 14px;
}

.optionPageTop{
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.blueLine{
	margin-top: 40px;
	height: 50px;
	background: #6E95CC;
	width: 1px;
}

