/*
Theme Name: Full Frame child
Template: full-frame
Description: Full Frame子テーマ
Version: 2.7.1
*/
body {
	letter-spacing: 1.5px;
}
.site {
	padding-top: 100px;
}
.sb {
	padding: 3rem;
}
#fixed-header .wrapper {
	width: 100%;
	background-color: #FFFFFF;
}
.mobile-menu-anchor a.genericon-menu {
	color: #000000 !important;
}
#llc_header h4 {
	margin-bottom: 0;
	padding: 1.5rem;
	background-color: #4484CE;
	color: #FFFFFF;
}
#sm_text {
	font-size: 12px;
}
#right_text {
	float: right;
}
.nav-primary .menu .current-menu-item > a,
.nav-primary .menu .currnet_page_item > a {
	color: #000000;
}
#fixed-header li {
	position: relative;
}
#fixed-header li:before {
	content: "";/*疑似要素の中身を指定*/
	position: absolute;/*絶対位置指定*/
	background: #000000;/*線の色指定*/
	width: 1px;/*線の幅指定*/
	height: 45%;/*線の高さ指定*/
	top: 25%;
}
#fixed-header li:last-of-type:after {
	content: "";/*疑似要素の中身を指定*/
	position: absolute;/*絶対位置指定*/
	background: #000000;/*線の色指定*/
	width: 1px;/*線の幅指定*/
	height: 45%;/*線の高さ指定*/
	top: 25%;
	right: 0;
}
.entry-header {
	display: none;
}
#header-toggle {
	display: none;
}
.no-sidebar.content-width #main,
#content .wrapper,
.hentry {
	width: 100%;
	padding: 0;
}
@media screen and (max-width: 990px) {
	#content .wrapper {
		padding: 0 !important;
	}
	.hentry {
		padding: 0 !important;
	}
}

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

.main_top_content,
.top_element {
	position: absolute;
}

.main_top .main_img {
	width: 100%;
	height: 100%;
}
.main_top .main_top_content {
	top: 20%;
}
.main_top img {
	width: 100%;
}
.top_element {
	width: 90%;
	margin: 5rem auto 0;
	bottom: 5%;
	left: 0;
	right: 0;
	background-color: rgba(255, 255, 255, 0.5);
}

.main_top_content {
	width: 100%;
}
.main_top_content .en_title {
	font-size: 3vw;
	font-family: MV Boli;
	color: #FFFFFF;
	margin-left: 5%;
	background-color: rgba(68, 132, 206, 0.7);
	border-radius: 36% 107% 116% 40%/ 45% 65% 90% 100%;
	width: 25%;
	padding-left: 3vw;
	padding-top: 1vw;
}
.main_top_content .top_subtitle {
	font-size: 2vw;
	background-color: rgba(255, 255, 255, 0.7);
}
.top_information #top_info_title {
	font-size: 2.5vw;
	font-weight: bold;
	margin-bottom: 0;
	text-align: center;
	/*background-color: rgba(245, 160, 80, 0.6);*/
	margin-top: 5%;
}
.main_top_content .top_information {
	margin-left: auto;
	margin-right: 10%;
}
.top_information #bt {
	font-size: 4vw;
}
.top_information #top_info_text {
	font-size: 1.1vw;
	width: 19vw;
	margin: 0 auto;
	/*background-color: rgba(245, 160, 80, 0.6);*/
	border-radius: 36% ;
}
.mainarea .main_top .main_top_content,
.top_element .top_3 {
	display: flex;
}

.top_3 {
	justify-content: space-between;
	width: 80%;
	margin: 2rem auto;
}

.top_3 #necessary_items,
.top_3 #recruitment_items {
	width: 28%;
}
.top_3 #application_to_input {
	width: 40%;
}

.top_3 #necessary_items,
.top_3 #application_to_input,
.top_3 #recruitment_items {
	text-align: center;
	height: 4vw;
	background-color: #4484CE;
}

.top_3 #necessary_items a,
.top_3 #application_to_input a,
.top_3 #recruitment_items a {
	text-align: center;
	display: block;
	height: 100%;
	font-size: 2vw;
	line-height: 2;
	text-decoration: none;
	color: #FFFFFF;
}
.top_3 #necessary_items:hover,
.top_3 #application_to_input:hover,
.top_3 #recruitment_items:hover {
	background-color: rgba(68, 132, 206, 0.7);
}
#web_input {
	width: 80%;
	margin: 4rem auto 3rem;
	height: 5.5vw;
	background-color: #F9CF00;
}
#web_input:hover {
	background-color: rgba(249, 207, 0, 0.6);
}
#web_input a {
	display: block;
	text-decoration: none;
	color: #FFFFFF;
	text-align: center;
	font-size: 3vw;
	line-height: 2;
}
#arrow {
	float: right;
}

.main_middle_title {
	width: 100%;
}

.main_middle_title h3 {
	font-size: 5vw;
	font-weight: bold;
	text-align: center;
	margin-bottom: -20px;
	font-family: MV Boli;
	color: #4484CE;
}
.main_middle_title h3 span {
	font-size: 7vw;
	background-color: #4484CE;
	border-radius: 50%;
	width: 10vw;
	height: 10vw;
	margin: 0 5rem;
	display: inline-block;
	text-align: center;
	line-height: 1.5;
	font-weight: normal;
	font-family: initial;
	color: #FFFFFF;
}

.point_1_title {
	background-image: url(../../themes/full-frame-child/images/gallery/ac1.jpg);
	background-size: cover;
	background-position: center 5%;
}
.point_2_title {
	background-image: url(../../themes/full-frame-child/images/gallery/ac2.jpg);
	background-size: cover;
	background-position: center 60%;
}
.point_3_title {
	background-image: url(../../themes/full-frame-child/images/gallery/ac3.jpg);
	background-size: cover;
	background-position: center 75%;
}

.main_middle #title_block {
	width: 30%;
	text-align: center;
	margin-left: auto;
	padding-top: 5rem;
	padding-bottom: 5rem;
	background-color: rgba(208, 208, 208, 0.7);
}

.main_middle #title_en {
	font-size: 2.5vw;
	color: #4484CE;
	font-weight: bold;
}
.main_middle #title_sub {
	font-size: 1.5vw;
}

#llc_point_1,
#llc_point_2,
#llc_point_3,
#llc_faq,
#wpcf7-f13-p2-o1 {
	padding-top: 110px;
	margin-top: -110px;
}

.point_1 input,
.point_2 input,
.point_3 input,
.faq input {
	display: none;
}

.point_1 .ac_main,
.point_2 .ac_main,
.point_3 .ac_main,
.faq .ac_main {
	height: 0;
	opacity: 0;
	transition: 0.5s;
	display: none;
}
.point_1 .ac_main #close,
.point_2 .ac_main #close,
.point_3 .ac_main #close {
	background-color: #F9CF00;
}
.point_1 .ac_main #vision_image_area,
.point_2 .ac_main #vision_image_area,
.point_3 .ac_main #vision_image_area {
	line-height: 0;
}
.point_1 .ac_main img,
.point_2 .ac_main img,
.point_3 .ac_main img {
	width: 100%;
}

.point_1 input:checked + .l-accordion-switch + .ac_main,
.point_2 input:checked + .l-accordion-switch + .ac_main,
.point_3 input:checked + .l-accordion-switch + .ac_main,
.faq input:checked + .l-accordion-switch + .ac_main {
	display: block;
	height: auto;
	opacity: 1;
}
.faq input:checked + .l-accordion-switch + .ac_main .faq_main {
	width: 80%;
	margin: 0 auto;
}

.point_1 .l-accordion-switch,
.point_2 .l-accordion-switch,
.point_3 .l-accordion-switch,
.faq .l-accordion-switch {
	position: relative;
	display: block;
	font-weight: bold;
	padding: 8px;
	cursor: pointer;
	text-align: center;
	font-size: 1.5vw;
}
.point_1 .l-accordion-switch,
.point_2 .l-accordion-switch,
.point_3 .l-accordion-switch {
	background-color: #F19F4D;
	color: #FFFFFF;
}
.point_1 .l-accordion-switch #title_number,
.point_2 .l-accordion-switch #title_number,
.point_3 .l-accordion-switch #title_number {
	display: grid;
	width: 7vw;
	height: 7vw;
	align-items: center;
	border-radius: 100px;
	background-color: #4484CE;
	font-size: 3vw;
	position: absolute;
	bottom: 130%;
}
#point_1_under_text {
	font-size: 1.2vw;
	width: 65%;
	margin: 0 auto;
}
#point_1_under_text a {
	float: right;
}
#point_2_under_text {
	padding-top: 3rem;
	padding-bottom: 2rem;
}
@media screen and (min-width: 768px) {
	#point_2_under_text #under_block {
		display: flex;
	}
	#point_2_under_text #under_block #text_block {
		width: 70%;
	}
	#point_2_under_text #under_block #point_2_under_image {
		width: 25%;
	}
}
#point_2_under_text #under_block #point_2_under_image p {
	font-size: 11px;
}
#point_2_under_text #under_block #text_block #text_1 {
	font-size: 1vw;
	padding-left: 2rem;
	padding-top: 3rem;
	width: 65%;
	margin-left: auto;
	margin-right: auto;
}
#point_2_under_text #under_block #text_block #text_2 {
	font-size: 1vw;
	padding-left: 1rem;
	width: 65%;
	margin-left: auto;
	margin-right: auto;
}
#point_2_under_text #point_2_last_text {
	padding-top: 3rem;
	font-size: 1.4vw;
	text-align: center;
}

.point_3 .under_ac3 {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
.faq .faq_title{
	background: url(../full-frame-child/images/gallery/ac3.jpg);
	background-size: cover;
	background-position: center 50%;
}
.faq h2 {
	font-size: 3.5vw;
	text-align: center;
	color: #000000;
	padding: 5vw;
	background-color: rgba(255, 255, 255, 0.6);
	margin-bottom: 0;
}
.faq .l-accordion-switch {
	border: 3px solid #000000;
}
.faq .l-accordion-switch #question_title {
	font-size: 1vw
}

.faq .ac_main .qa_section {
	margin: 5rem 0;
}

.faq #q,
.faq #a {
	display: flex;
	align-items: center;
	margin-top: 1rem;
	margin-bottom: 1rem;
}
.faq #q p,
.faq #a p {
	margin-bottom: 0;
}
.faq #q #q_img,
.faq #a #a_img {
	width: 40px;
	height: 35px;
	margin-right: 2rem;
}

.point_1 .l-accordion-switch #title_number,
.point_2 .l-accordion-switch #title_number,
.point_3 .l-accordion-switch #title_number,
.faq .l-accordion-switch #title_number {
	float: left;
}

.point_3 #ac_main_inblock {
	padding: 20px;
}
@media screen and (min-width: 768px) {
	.company_block {
		display: flex;
		width: 95%;
		margin: 5rem auto;
		font-weight: bold;
		justify-content: center;
	}
	.company_block .contact {
		border: 3px solid #000000;
		display: flex;
		align-items: center;
		width: 100%;
		height: 60px;
		text-align: center;
		margin-bottom: 2rem;
	}
	.company_block .company_tel {
		font-size: 30px;
		display: flex;
		align-items: center;
	}
}
.company_block .add_tel_block {
	margin-left: -6rem;
	margin-right: 5rem;
}
.company_block .add_tel_block .company_address {
	margin-bottom: 2rem;
}
.company_block #address2 {
	text-align: right;
}
.company_block .contact a {
	text-decoration: none !important;
	color: #000000;
	display: grid;
	align-content: center;
	width: 100%;
	height: 100%;
}
.company_block .bussiness_hours {
	text-align: center;
}
/**fadeアニメーション**/
.ac_main{
	animation: fadeIn 0.8s ease normal;
}
@keyframes fadeIn { /*animation-nameで設定した値を書く*/
	0% {opacity: 0} /*アニメーション開始時は不透明度0%*/
	100% {opacity: 1} /*アニメーション終了時は不透明度100%*/
}

@media screen and (min-width: 768px) {
	.wpcf7 {
		width: 35%;
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (max-width: 767px) {
	.wpcf7 {
		width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
}

#site-generator {
	background-color: #4484CE;
	color: #FFFFFF;
}
.copyright {
	text-align: center;
}

input[type="tel"] {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	max-width: 100%;
}

input[type="tel"]:focus {
	color: #111;
}

input[type="tel"] {
	padding: 5px 10px;
}

/*--------------------------------------------------------------
17. Form Zoom Fix
--------------------------------------------------------------*/
@media screen and (-webkit-min-device-pixel-ratio:0) {
	input[type="tel"] {
 		font-size: 16px;
  	}
}