@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600;700&display=swap');

html {
	height: 100%;
}

body {
	position: relative;
	height: 100%;
	margin: 0;
	font-family: "Noto Serif JP", "Hiragino Mincho ProN", YuMincho, serif;
	font-size: 1.6rem;
	font-weight: 300;
	color: #333;
}

body#bg-White {
	background-color: #FFF;
}

a,
a:visited,
a:hover {
	color: #1E50A2;
	text-decoration: underline;
	text-underline-offset: 4px;
}

p.doc {
	font-size: 1.6rem;
	line-height: 1.8;
	margin-top: 50px;
}

p.doc:first-child {
	margin-top: 0;
}

p.txt_white,
span.txt_white {
	color: #FFF;
}

.fw300 {
	font-weight: 300;
}

.fw400 {
	font-weight: 400;
}

.fw500 {
	font-weight: 500;
}

.fw600 {
	font-weight: 600;
}

.fw700 {
	font-weight: 700;
}

spacer.spacer30 {
	display: block;
	height: 30px;
}

spacer.spacer40 {
	display: block;
	height: 40px;
}

spacer.spacer50 {
	display: block;
	height: 50px;
}

.contents__wrap hr {
	display: block;
	border-top: 1px solid #999;
	margin: 80px 0;
}

a.jump_point {
	display: block;
	padding-top: 60px;
	margin-top: -60px;
}

div.container {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

section {
	position: relative;
}

section.bg__White {
	background-color: #FFF;
}

section.bg__frostyblue {
	background-color: #EAF6FF;
}

section.bg__bluesky1 {
	background-image: url('../images/common/Bg_bluesky1.jpg');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
}

section.bg__bluesky2 {
	background-image: url('../images/common/Bg_bluesky2.jpg');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
}

section.bg__sunrise {
	background-image: url('../images/common/Bg_sunrise.jpg');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
}

section>.inner {
	width: 100%;
	min-height: 550px;
}

#loading {
	position: fixed;
	top: 0;
	left: 0;
	background-color: #FFF;
	width: 100%;
	height: 100vh;
	transition: all 1s;
	z-index: 9999;
}

#loading .inner {
	position: relative;
	width: 100%;
	height: 100%;
}

#loading .inner .loader-wrapper {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.loaded {
	opacity: 0;
	visibility: hidden;
}

.loader {
	width: 45px;
	aspect-ratio: .75;
	--c: no-repeat linear-gradient(#000 0 0);
	background: 
	var(--c) 0%   100%,
	var(--c) 50%  100%,
	var(--c) 100% 100%;
	background-size: 20% 65%;
	animation: l5 1s infinite linear;
}

@keyframes l5 {
	20% {background-position: 0% 50% ,50% 100%,100% 100%}
	40% {background-position: 0% 0%  ,50% 50% ,100% 100%}
	60% {background-position: 0% 100%,50% 0%  ,100% 50% }
	80% {background-position: 0% 100%,50% 100%,100% 0%  }
}

#home {
	position: relative;
	height: 100vh;
}

#home .video-wrapper {
	position: relative;
	width: 100%;
	height: 100vh;
	overflow: hidden;
}

#home .video-wrapper video {
	position: absolute;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}

#home .video-wrapper h2.catch-copy {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: -webkit-max-content;
	height: -moz-max-content;
	height: max-content;
	text-align: center;
	margin: auto;
}

#home .video-wrapper h2.catch-copy span {
	font-size: calc(1.0rem + 4vw);
	color: #FFF;
	text-shadow: 1px 1px 20px #000;
}

#home .video-wrapper h2.catch-copy span {
	display: block;
	transition: 1s;
	opacity: 0;
	transform: translateY(20px);
}

#home .video-wrapper h2.catch-copy span:first-child {
	animation: catch_anime 1.4s forwards 2.5s;
}

#home .video-wrapper h2.catch-copy span:nth-child(2) {
	animation: catch_anime 1.4s forwards 3.5s;
}

#home .video-wrapper h2.catch-copy span:nth-child(3) {
	animation: catch_anime 1.4s forwards 4.5s;
}

#home .video-wrapper h2.catch-copy span:nth-child(4) {
	animation: catch_anime 1.4s forwards 5.5s;
}

@keyframes catch_anime {
	0% {
		transform: translateY(20px);
	}
	100% {
	opacity: 1;
		transform: translateY(0);
	}
}

#home .video-wrapper .scroll_wrap {
	position: absolute;
	bottom: 40px;
	left: 0;
	right: 0;
	width: 50px;
	height: 50px;
	margin: 0 auto;
}

#home .video-wrapper .scroll {
	position: relative;
	display: inline-block;
	background-color: #FFF;
	border-radius: 50%;
	width: 50px;
	height: 50px;
}

#home .video-wrapper .scroll span {
	position: absolute;
	left: 0;
	right: 0;
	top: 33%;
	border-bottom: 2px solid #333;
	border-left: 2px solid #333;
	width: 13px;
	height: 13px;
	margin: auto;
	transform: rotate(-45deg);
}

#home .video-wrapper .scroll::before {
	animation: scroll 2s infinite;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	border-radius: 50%;
	box-shadow: 0 0 0 0 rgba(255, 255, 255, .3);
	content: "";
	width: 50px;
	height: 50px;
	margin: auto;
	opacity: 0;
}

@keyframes scroll {
	0% {
		opacity: 0;
	}
	30% {
		opacity: 1;
	}
	60% {
		box-shadow: 0 0 0 20px rgba(255, 255, 255, .3);
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

.contents__wrap .contents_title {
	display: block;
	text-align: center;
}

a.back-button::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 20px;
	transform: rotate(45deg) translateY(-50%);
	width: 8px;
	height: 8px;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #555;
}

/* トルコ航空機による邦人救出 */

.contents__wrap .deco_wing {
	display: block;
	background-image: url('../images/common/deco_wing.png');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
	width: 70px;
	height: 70px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 25px;
}

.contents__wrap .contents_title h2.rescued_title {
	position: relative;
}

.contents__wrap .cp_block {
	margin: 0 auto;
}

.contents__wrap ul.rescue_imeline {
	position: relative;
 	width: 100%;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
	padding: 10px 0;
}

.contents__wrap ul.rescue_imeline:before {
	position: absolute;
	left: 50%;
	top: 0;
	content: '';
	display: block;
	width: 2px;
	height: 100%;
	margin-left: -3px;
	background: rgba(19, 19, 87 ,1);
	z-index: 5;
}

.contents__wrap ul.rescue_imeline li {
	padding: 16px 0;
}

.contents__wrap ul.rescue_imeline li:after {
	content: '';
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.contents__wrap ul.rescue_imeline li:nth-child(odd) .timeline_item {
	position: relative;
	width: calc(50% - 29px);
	float: left;
	text-align: right;
}

.contents__wrap ul.rescue_imeline li:nth-child(even) .timeline_item {
	position: relative;
	width: calc(50% - 29px);
	float: right;
}

.contents__wrap ul.rescue_imeline li .timeline_item .flag_cont {
	position: relative;
	display: inline-block;
	text-align: center;
}

.contents__wrap ul.rescue_imeline li:nth-child(odd) .timeline_item .flag_cont:before,
.contents__wrap ul.rescue_imeline li:nth-child(even) .timeline_item .flag_cont:before {
	position: absolute;
	top: 4px;
	right: -36px;
	content: ' ';
	display: block;
	width: 18px;
	height: 18px;
	margin-top: -3px;
	background: rgba(19, 19, 87 ,1);
	border-radius: 50%;
	z-index: 10;
}

.contents__wrap ul.rescue_imeline li:nth-child(even) .timeline_item .flag_cont:before {
	left: -41px;
}

.contents__wrap ul.rescue_imeline li:nth-child(odd) .timeline_item .flag:after {
	content: '';
	position: absolute;
	left: 100%;
	top: 50%;
	height: 0;
	width: 0;
	border: solid transparent;
	border-left-color: rgba(19, 19, 87 ,1);
	border-width: 8px;
	margin-top: -8px;
}

.contents__wrap ul.rescue_imeline li:nth-child(even) .timeline_item .flag:after {
	content: '';
	position: absolute;
	right: 100%;
	top: 50%;
	height: 0;
	width: 0;
	border: solid transparent;
	border-right-color: rgba(19, 19, 87 ,1);
	border-width: 8px;
	margin-top: -8px;
}

.contents__wrap ul.rescue_imeline li:nth-child(even) .timeline_item .time {
	text-align: left;
}

.contents__wrap ul.rescue_imeline li .timeline_item .desc {
	background: rgba(255, 255, 255, 1);
	border-radius: 5px;
	padding: 15px;
	margin-top: 30px;
	text-align: left;
	box-shadow: 1px 8px 13px rgba(0, 0 ,0, 0.15), 0 0 1px rgba(0, 0, 0, 0.15);
}

.contents__wrap ul.rescue_imeline li .timeline_item .desc p {
	font-size: 1.6rem;
	line-height: 1.8;
}

.contents__wrap ul.rescue_imeline li .timeline_item .desc b.emphasis {
	font-size: 1.6rem;
	font-weight: 700;
}

.contents__wrap ul.rescue_imeline li .timeline_item .desc strong.emphasis {
	font-size: 1.6rem;
	font-weight: 700;
	letter-spacing: 2px;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.contents__wrap p.importantThings {
	font-size: 2.2rem;
	line-height: 1.4;
	font-weight: 700;
}

/* 献花式 */

.contents__wrap .flowerOffering-image {
	width: 100%;
	max-width: 800px;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}

.contents__wrap .flowerOffering-image .photo {
	position: relative;
	width: 100%;
	padding-top: 60%;
	margin-top: 50px;
}

.contents__wrap .flowerOffering-image .photo img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.contents__wrap ul.organizingCommittee {
	width: 100%;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}

.contents__wrap ul.organizingCommittee li:first-child {
	margin-top: 0;
}

.contents__wrap ul.organizingCommittee li p {
	font-size: 1.6rem;
}

.contents__wrap ul.supporters {
	width: 100%;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}

.contents__wrap ul.supporters li:first-child {
	margin-top: 0;
}

.contents__wrap ul.supporters li p {
	font-size: 1.6rem;
}

/* 献花式動画 */

.video-contents {
	z-index: 1;
	position: relative;
	width: 100%;
	max-width: 800px;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}

.video-contents::before {
	content: "";
	display: block;
	padding-top: 56.25%;
}

.video-contents iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* 献花式参加者 */

ul.participants li p.participants_name-j {
	display: block;
	font-size: 2.0rem;
	font-weight: 600;
	letter-spacing: 3px;
}

ul.participants li span.jobtitle {
	font-size: 1.6rem;
	color: #888;
	letter-spacing: 0;
	padding-left: 17px;
}

ul.participants li p.participants_name-t {
	display: block;
	font-size: 1.4rem;
	line-height: 1.6;
	margin-top: 13px;
}

.contents__wrap .attendees-image {
	width: 100%;
	max-width: 800px;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}

.contents__wrap .attendees-image .photo {
	position: relative;
	width: 100%;
	padding-top: 50%;
}

.contents__wrap .attendees-image .photo img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* スピーチ */

.speech_list_in a p.link_arrow {
	position: absolute;
	display: block;
	bottom: 18px;
	right: 0;
	width: 112px;
	z-index: 99;
}

.speech_list_in a p.link_arrow span.arrow {
	display: block;
	position: relative;
	font-size: 1.4rem;
	color: #555;
	letter-spacing: 2px;
}

.speech_list_in a p.link_arrow span.arrow::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 20px;
	transform: rotate(45deg) translateY(-50%);
	width: 7px;
	height: 7px;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #555;
}

.contents__wrap p.signature {
	display: block;
	font-size: 1.6rem;
	line-height: 1.8;
	text-align: right;
	margin-top: 50px;
}

.contents__wrap .speech-image {
	width: 100%;
	max-width: 800px;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}

.contents__wrap .speech-image .photo00001 {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.contents__wrap .speech-image .photo00001 img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.contents__wrap .speech-image .photo00002 {
	position: relative;
	width: 100%;
	padding-top: 61.35%;
}

.contents__wrap .speech-image .photo00002 img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.contents__wrap .annotation {
	display: block;
	font-size: 1.4rem;
	color: #666;
	text-align: center;
	margin-top: 15px;
}

/* 駐日トルコ大使からのメッセージ */

.contents__wrap .x-post-image-turkiye {
	position: relative;
	width: 100%;
	max-width: 800px;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}

.contents__wrap .x-post-image-turkiye .photo {
	position: relative;
	width: 100%;
	padding-top: 95.8333%;
}

.contents__wrap .x-post-image-turkiye .photo img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.contents__wrap a.x-post--link {
	font-size: 1.6rem;
	line-height: 1.8;
	color: #FFF;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.contents__wrap a.x-post--link[href^="http"]:after,
.contents__wrap a.x-post--link[href^="//"]:after {
	margin: 0 0 0 7px;
	font-family: "Font Awesome 5 Free";
	content: '\f35d';
	font-weight: 600;
	color: #FFF;
}

.contents__wrap a.x-post--link[href^="https://www.rectus.co.jp/"]:after {
	margin: inherit;
	font-family: inherit;
	content: '';
	font-weight: inherit;
}

/* 資料集 */

.contents__wrap .data_collection_in h3.subheading span::before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	width: 45px;
	height: 1px;
	background-color: #2ca9e1;
}

.contents__wrap .data_collection_in h3.subheading span::before {
	left: 0;
}

.contents__wrap .data_collection_in ul {
	margin-top: 60px;
}

.contents__wrap .data_collection_in ul li {
	position:relative;
	font-size: 1.6rem;
	line-height: 1.6;
	padding-left: 15px;
	margin-top: 20px;
}

.contents__wrap .data_collection_in ul li:before{
	content:'';
	display:inline-block;
	position:absolute;
	left: 0px;
	top: 9px;
	width: 7px;
	height: 7px;
	border-bottom: solid 1px #333;
	border-right: solid 1px #333;
	transform:rotateZ(-45deg);
}

.contents__wrap .data_collection_in ul li:first-child {
	margin-top: 0;
}

.contents__wrap .data_collection_in ul a {
	display: block;
	font-size: 1.6rem;
	line-height: 1.6;
	color: #1E50A2;
	text-decoration: none;
}

.contents__wrap .data_collection_in ul li a[href^="http"]:after,
.contents__wrap .data_collection_in ul li a[href^="//"]:after {
	margin: 0 0 0 7px;
	font-family: "Font Awesome 5 Free";
	content: '\f35d';
	font-weight: 600;
}

.contents__wrap .data_collection_in ul li a[href^="https://www.rectus.co.jp/"]:after {
	margin: inherit;
	font-family: inherit;
	content: '';
	font-weight: inherit;
}

.contents__wrap .data_collection_in ul span.pdf {
	display: inline-block;
	background-image: url('../images/common/icon-pdf.png');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	width: 19px;
	height: 23px;
	margin-left: 6px;
	vertical-align: bottom;
}

/* 報道実績 */

ul.reportingRecord {
	margin-top: 50px;
}

ul.reportingRecord li {
	margin-top: 40px;
}

ul.reportingRecord li:first-child {
	margin-top: 0;
}

ul.reportingRecord li p.reporting {
	font-size: 1.6rem;
	line-height: 1.6;
}

ul.reportingRecord li p.reporting a[href^="http"]:after,
ul.reportingRecord li p.reporting a[href^="//"]:after {
	margin: 0 0 0 7px;
	font-family: "Font Awesome 5 Free";
	content: '\f35d';
	font-weight: 600;
}

ul.reportingRecord li p.reporting a[href^="https://www.rectus.co.jp/"]:after {
	margin: inherit;
	font-family: inherit;
	content: '';
	font-weight: inherit;
}

.contents__wrap .reportingRecord_date {
	font-size: 1.6rem;
	text-align: right;
	margin-top: 50px;
}

/* お問い合わせ */

#formWrap {
	position: relative;
	width:100%;
	margin-top: 50px;
}

.formTable {
	position: relative;
	margin-top: 20px;
}

.formTable:first-child {
	margin-top: 0;
}

.formTable .required {
	position: absolute;
	top: -10px;
	left: -14px;
	display: block;
	background-color: #DC143C;
	width: 34px;
	height: 34px;
	line-height: 34px;
	font-size: 1.2rem;
	color: #FFF;
	text-align: center;
	border-radius: 50%;
	z-index: 4;
}

.contact-wrapper .formTable .item p span {
	display: inline-block;
	font-size: 1.4rem;
	color: #999;
	padding-left: 4px;
}

.contact-wrapper .contactAgree .button__box input[type="submit"].submit_btn {
	display: block;
	position: relative;
	border-radius: 5px;
	width: 100%;
	font-size: 1.6rem;
	letter-spacing: 10px;
	text-align: center;
	text-decoration: none;
	padding: 15px 0;
}

.contact-wrapper .contactAgree .is-active {
	border: 1px solid #53606E;
	background-color: #53606E;
	background-image: url('../images/common/icon-arrow-right-white.png');
	background-size: 8px 15px ;
	background-repeat: no-repeat;
	background-position: center right 20px;
	color: #FFF;
	cursor: pointer;
}

.contact-wrapper .contactAgree .is-inactive {
	border: 1px solid #DDD;
	background-color: #DDD;
	color: #FFF;
}

.contact-wrapper .formTable .formBox input[type="text"],
.contact-wrapper .formTable .formBox input[type="email"] {
	border: 1px solid #F5F5F5;
	background-color: #F5F5F5;
	width: 100%;
	font-size: 1.6rem;
	padding: 10px;
}

.contact-wrapper .formTable .formBox textarea {
	resize: none;
	border: 1px solid #F5F5F5;
	background-color: #F5F5F5;
	width: 100%;
	height: 207px;
	font-size: 1.6rem;
	padding: 10px;
}

.contact-wrapper .formTable .formBox input[type="text"]:focus,
.contact-wrapper .formTable .formBox input[type="email"]:focus,
.contact-wrapper .formTable .formBox textarea:focus {
	border: 1px solid #F0F8FF;
	background-color: #F0F8FF;
}

.contact-wrapper .privacy-link-wrapper {
	display: block;
	text-align: center;
	margin-top: 30px;
}

.contact-wrapper .privacy-link-wrapper p {
	font-size: 1.4rem;
	line-height: 1.6;
}

.contact-wrapper .privacy-link-wrapper a {
	display: inline-block;
	font-size: 1.4rem;
	color: #1E50A2;
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 4px;
	padding: 0 3px;
}

.contact-wrapper .contactAgree input[type="checkbox"] {
	position: relative;
	width: 22px;
	height: 22px;
	border: 2px solid #AAA;
	background-color: #FFF;
	border-radius: 4px;
	vertical-align: -5px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.contact-wrapper .contactAgree input[type="checkbox"]:checked:before {
	position: absolute;
	top: 0;
	left: 4px;
	transform: rotate(50deg);
	width: 6px;
	height: 11px;
	border-right: 4px solid #DC143C;
	border-bottom: 4px solid #DC143C;
	content: '';
}

.thankyou_illust_wrapper {
	width: 100%;
	max-width: 800px;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}

.thankyou_illust_wrapper .illust {
	position: relative;
	width: 100%;
	padding-top: 42.625%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
}

.thankyou_illust_wrapper .illust img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

table.table_style {
	width:100%;
	border-collapse:collapse;
	margin-top: 40px;
}

table.table_style td,
table.table_style th {
	border: 1px solid #FFF;
	font-size: 1.6rem;
	padding: 10px;
}

table.table_style th {
	width: 30%;
	font-weight: 300;
	background:#EFEFEF;
	text-align: center;
}

#formWrap p.error_message {
	font-size: 2.0rem;
	color: #F00;
	text-align: center;
	margin-top: 50px;
}

#formWrap .error_item {
	display: block;
	width: 100%;
	text-align: center;
	padding: 50px 30px 0px 30px;
}

#formWrap .error_item p.error_messe {
	font-size: 1.6rem;
	color: #F00;
	text-align: center;
	margin-top: 10px;
}

#formWrap .error_item p.error_messe:first-child  {
	margin-top: 0;
}

#formWrap p.cautionary__note,
#formWrap p.completion__note {
	font-size: 1.6rem;
	line-height: 1.8;
	margin-top: 30px;
}

#formWrap .button__box {
	display: flex;
	flex-wrap: wrap;
	width: 320px;
	margin-top: 50px;
	margin-left: auto;
	margin-right: auto;
}

#formWrap ul.button__list input[type="submit"].submit_btn {
	display: block;
	position: relative;
	border: 1px solid #53606E;
	background-color: #53606E;
	background-image: url('../images/common/icon-arrow-right-white.png');
	background-size: 8px 15px ;
	background-repeat: no-repeat;
	background-position: center right 20px;
	border-radius: 5px;
	width: 100%;
	font-size: 1.6rem;
	color: #FFF;
	letter-spacing: 3px;
	text-align: center;
	text-decoration: none;
	padding: 15px 0;
	cursor: pointer;
}

#formWrap .button__box input[type="button"].backBtn,
#formWrap ul.button__list input[type="button"].backBtn {
	display: block;
	position: relative;
	border: 1px solid #555;
	background-color: #FFF;
	background-image: url('../images/common/icon-arrow-right-black.png');
	background-size: 8px 15px;
	background-repeat: no-repeat;
	background-position: center right 20px;
	border-radius: 5px;
	width: 100%;
	font-size: 1.6rem;
	color: #333;
	letter-spacing: 3px;
	text-align: center;
	text-decoration: none;
	padding: 15px 0;
	cursor: pointer;
}

#formWrap .button__box a.backBtn,
#formWrap ul.button__list li a.backBtn {
	display: block;
	position: relative;
	border: 1px solid #555;
	background-color: #FFF;
	background-image: url('../images/common/icon-arrow-right-black.png');
	background-size: 8px 15px;
	background-repeat: no-repeat;
	background-position: center right 20px;
	border-radius: 5px;
	width: 100%;
	font-size: 1.6rem;
	color: #333;
	letter-spacing: 3px;
	text-align: center;
	text-decoration: none;
	padding: 15px 0;
	cursor: pointer;
}

.contact-wrapper .contactAgree .agree-wrapper {
	display: inline-block;
	border: 1px solid #FFB2B2;
	background-color: #FFFAF9;
	padding: 20px;
}

/* プライバシーポリシー */

.privacy-policy {
	display: block;
	margin-top: 50px;
}

.privacy-policy h3.privacy-policy__item__title {
	font-size: 1.8rem;
	font-weight: 600;
	margin-top: 50px;
}

.privacy-policy h3.privacy-policy__item__title span {
	display: inline-block;
	font-size: 2.0rem;
	font-weight: 600;
	letter-spacing: 2px;
	padding-left: 7px;
}

.privacy-policy p.privacy-policy__item__doc {
	font-size: 1.6rem;
	line-height: 1.8;
	margin-top: 35px;
}

.privacy-policy ol.privacy-policy__item__list {
	list-style: decimal;
	margin-top: 35px;
	margin-left: 20px;
}

.privacy-policy ol.privacy-policy__item__list2 {
	list-style: decimal;
	margin-left: 40px;
}

.privacy-policy ol.privacy-policy__item__list li,
.privacy-policy ol.privacy-policy__item__list2 li {
	font-size: 1.6rem;
	line-height: 1.8;
}

.privacy-policy a.contact__button {
	display: block;
	position: relative;
	border: 1px solid #666;
	border-radius: 5px;
	width: 270px;
	font-size: 1.5rem;
	color: #666;
	text-align: center;
	text-decoration: none;
	letter-spacing: normal;
	padding: 12px;
	margin-top: 40px;
}

.privacy-policy a.contact__button::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 20px;
	transform: rotate(45deg) translateY(-50%);
	width: 8px;
	height: 8px;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #666;
}

.privacy-policy a.contact__button:hover {
	border: 1px solid #666;
	background-color: #666;
	color: #FFF;
}

/* フェードイン */

.scrollUp {
	transition: 1s ease-in-out;
	transform: translateY(30px);
	opacity: 0;
}

.scrollUp.on {
	transform: translateY(0);
	opacity: 1.0;
}

.scrollLeft {
	-webkit-transition: 1s ease-in-out;
	-moz-transition: 1s ease-in-out;
	-o-transition: 1s ease-in-out;
	transition: 1s ease-in-out;
	transform: translateX(-30px);
	opacity: 0;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
}

.scrollLeft.on {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	transform: translateX(0);
}

.scrollRight {
	-webkit-transition: 1s ease-in-out;
	-moz-transition: 1s ease-in-out;
	-o-transition: 1s ease-in-out;
	transition: 1s ease-in-out;
	transform: translateX(30px);
	opacity: 0;
	filter: alpha(opacity=0);
	-moz-opacity: 0;
}

.scrollRight.on {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	transform: translateX(0);
}

/* パンくずリスト */

ol.breadcrumb li {
	display: inline;
	font-size: 1.4rem;
	line-height: 1.4;
	color: #888;
}

ol.breadcrumb li:after {
	content: '>';
	padding: 0 10px;
	color: #888;
}

ol.breadcrumb li:last-child:after {
	content: '';
}

ol.breadcrumb li a {
	display: inline-block;
	color: #888;
	text-decoration: none;
}

ol.breadcrumb li a:hover {
	background-color: transparent;
	text-decoration: underline;
	text-underline-offset: 3px;
}

ol.breadcrumb li span {
	font-size: 1.4rem;
}

/* ヘッダー */

header#header {
	position: fixed;
	z-index: 8888;
	background-color: transparent;
	top: 0;
	left: 0;
	width: 100%;
	height: 60px;
	transition: .5s;
}

header#header.invert {
	position: fixed;
	top: 0;
	z-index: 8888;
	background-color: #FFF;
	width: 100%;
	height: 60px;
	transition: .5s;
}

header#header.is-show {
	top: 0;
}

.header__inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 0 20px;
}

.header__inner h1.logo-wing {
	display: block;
	width: 190px;
	height: 60px;
}

.header__inner h1.logo-wing img {
	width: 190px;
	height: 37px;
	margin-top: 10px;
}

.header__inner a.logo__link {
	display: block;
	background-color: transparent;
	width: 190px;
	height: 60px;
}

.header__inner a:hover.logo__link {
	background-color: transparent;
}

/* グローバルメニュー */

#drawer__button {
	position: relative;
	background-color: transparent;
	width: 40px;
	height: 40px;
	border: none;
	cursor: pointer;
	z-index: 9999;
}

#drawer__button > span {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 25px;
	height: 1px;
	background-color: #000;
	transform: translateX(-50%);
}

#drawer__button > span:first-child {
	transform: translate(-50%, calc(-50% - 0.5rem));
	transition: transform 0.3s ease;
}
    
#drawer__button > span:nth-child(2) {
	transform: translate(-50%, -50%);
	transition: opacity 0.3s ease;
}
    
#drawer__button > span:last-child {
	transform: translate(-50%, calc(-50% + 0.5rem));
	transition: transform 0.3s ease;
}

#drawer__button.active > span:first-child {
	background-color: #FFF;
	transform: translate(-50%, -50%) rotate(-45deg);
}

#drawer__button.active > span:nth-child(2) {
	opacity: 0;
}

#drawer__button.active > span:last-child {
	background-color: #FFF;
	transform: translate(-50%, -50%) rotate(45deg);
}

.drawer__nav {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: rgb(0 0 0 / 0.5);
	transition: opacity 0.5s ease;
	opacity: 0;
	visibility: hidden;
}

.drawer__nav.active {
	opacity: 1;
	visibility: visible;
}

.nav__common {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: rgb(0 0 0 / 0.5);
	transition: opacity 0.5s ease;
	opacity: 0;
	visibility: hidden;
}

.nav__common.active {
	opacity: 1;
	visibility: visible;
}

.drawer__nav__inner,
.nav__inner {
	position: relative;
	width: 100%;
	height: 100%;
	background-color: #5D6B79;
	padding: 4rem 1.5rem 1rem;
	margin: 0 0 0 auto;
	overflow: scroll;
	transform: translateX(100%);
	transition: transform 0.5s ease;
}

.drawer__nav.active .drawer__nav__inner,
.nav__common.active .nav__inner {
	transform: translateX(0);
}

.drawer__nav__menu,
.nav__menu {
	list-style: none;
	margin-left: 25px;
	margin-right: 25px;
}
 
.drawer__nav__link {
	display: block;
	font-size: 1.4rem;
	color: #FFF;
	text-decoration: none;
	padding: 15px 0;
}

.drawer__nav__link::before{
	content: '>';
	color: #FFF;
	padding-right: 10px;
}

.drawer__nav__link:hover {
	background-color: transparent;
	color: #FFF;
	text-decoration: none;
}

.drawer__nav__link:visited {
	color: #FFF;
	text-decoration: none;
}

body.active {
	position: relative;
	height: 100%;
}

.side {
	display: flex;
	align-items: center;
	justify-content: center;
	position: -webkit-sticky;
	position: sticky;
	top: 10px;
	width: 140px;
	height: 140px;
}
 
/* フッター */

#footer {
	position: relative;
	width: 100%;
	background-color: #93A0AD;
    margin-top: auto;
}
