/*
    apteq_original css
*/
@font-face {
  font-family: "Font Awesome 5 Free";
  font-weight: 400;
  font-style: normal;
  src: url("https://use.fontawesome.com/releases/v5.6.1/webfonts/fa-solid-900.woff2") format("woff2");
	font-display: swap;
}

/* common */
body {
    color: #222;
    font-family: "Gothic Medium BBB"/*"TBUDGothic R""Shin Go Regular"*/, Roboto, "Helvetica Neue", Arial, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, sans-serif;
    line-height: 1.7;
}
a, a:visited {
    color: #222;
}
a:hover {
    text-decoration: none;
    color: #777;
}
h4 {
    margin: 1rem auto;
}
.btn.btn-info {
    border: solid 3px #17a2b8;
    border-radius: 1.5rem;
}
.btn.btn-info:visited {
    color: #fff;
}
.btn.btn-info:hover {
    background-color: #fff;
    color: #17a2b8;
}
h1, h2, h3, h4, h5, h6 {
    font-family: "Midashi Go MB31";
}
h2 {
    font-size: 1.6rem;
}
@media  all and (min-width: 576px) {    /* col-sm- */

}
@media  all and (min-width: 768px) {    /* col-md- */
    h2 {
        font-size: 2rem;
    }  
}
@media  all and (min-width: 992px) {    /* col-lg- */
    
}

/* header */
.site-title {
	margin-bottom: 0.25rem;
    line-height: 1;
}
.site-title img {
	height: 25px;
}
.navbar-brand {
	padding: 0;
}
.navbar-toggler {
    border: none;
    color: #fff;
}
.navbar-light .navbar-toggler-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 109, 153, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
.navbar {
    padding: 0 0.5rem;
    background-color: #fff;
}
.navbar-brand {
    margin-right: 0.2rem;
}
.navbar-toggler {
	margin: 0.5rem -0.5rem auto auto;
}
#bs-navi {
    justify-content: flex-end;
}
#primary-menu {
    margin-left: 0;
}
.nav-item {
	padding: 0.5rem 0 0.5rem 0.5rem;
    border-bottom: 1px dotted #ddd;
}
#primary-menu li a, #primary-menu li a:visited {
	color: #006d99;
}
#primary-menu li a:hover {
	color: #777;
}

/* main */
.page {
    margin: 0;
}
#main {
	overflow: hidden;
    margin-top: 45px;
}
#main_slider .slide_img.card.slick-slide {
	border: none;
}
.slider_text.card-img-overlay {
	bottom: 0;
	top: auto;
	/*left: 1rem;*/
    padding: 1rem;
}
.slider_text.card-img-overlay figure {
    margin-bottom: 0;
}
.slider_text.card-img-overlay img {
	max-width: 90px;
}
.slider_text .text-white p {
    text-shadow: 1px 1px 2px #000, 0px 0px 1px #000;
    font-size: 1.2rem;
    font-family: "Shin Go Medium";
}
#main_slider .prevbtn, #main_slider .nextbtn {
	position: absolute;
	top: 45%;
    z-index: 1;
    color: #999;
    font-size: 1.5rem;
}
#main_slider .prevbtn {
    left: 0.5rem;
}
#main_slider .nextbtn {
    right: 0.5rem;
}
#main_slider .to_contact, #main_slider .tel_no {
	display: block;
	position: absolute;
	width: 3.4vw;
	height: 3.4vw;
	border-radius: 50%;
}
#main_slider .linkbtn_center .to_contact {
	bottom: 8.5%;
	left: 34%;
}
#main_slider .linkbtn_center .tel_no {
	bottom: 8.5%;
	left: 38%;
}
#main_slider .linkbtn_right .to_contact {
    bottom: 4.8%;
    right: 8.2%;
}
 #main_slider .linkbtn_right .tel_no {
	bottom: 4.8%;
    right: 4.2%;
}
#anchor_1, #anchor_2, #anchor_3, #anchor_4, #anchor_5, #anchor_6 {
	margin-top: -44px;
	padding-top: 44px;
}
.top_content {
    padding: 3rem 0;
}
.top_content:nth-of-type(odd) {
    /*background-color: aquamarine;*/
}
.top_content h2 span {
	font-size: 50%;
	display: block;
	letter-spacing: 2px;
    margin: 1rem auto 3rem;
    font-family: "Gothic Medium BBB";
}
#member {
	padding: 1rem 0;
}
#greeting {
	background-color: #006f9c;
	color: #fff;
	padding: 4rem 0;
}
#greeting h2 {
	margin-bottom: -1rem;
}
#greeting .wp-block-image {
	margin-bottom: -2rem;
}
#greeting p {
    line-height: 1.85;
}
#business p {
    line-height: 1.85;
}
#business .row {
	justify-content: center;
}
.business_inner {
    margin-bottom: 30px;
}
.business_img img {
	width: 100%;
    /*border-radius: 0.5rem 0.5rem 0 0;*/
}
.business_desc {
	min-height: 50px;
}
.business_desc h6 {
    padding: 0.5rem 0.2rem;
}
.business_inner a.btn {
    border-radius: 20px;
    letter-spacing: 2px;
}
.business_inner a.btn i {
    margin-right: 0.5rem;
}
#business .btn.btn-info {
    background-color: #006d99;
    border: solid 3px #006d99;
}
#business .btn.btn-info:hover {
    background-color: #fff;
    color: #006d99;
}
.carousel_item {
    margin: 0.5rem;
}
#carousel .prevbtn, #carousel .nextbtn {
	position: absolute;
	top: 45%;
	background-color: rgba(0,0,0,0.4);
	width: 24px;    
	border-radius: 50%;
    z-index: 1;
}
#carousel .prevbtn {
    left: 0.5rem;
    padding-left: 6px;
}
#carousel .nextbtn {
    right: 0.5rem;
    padding-left: 8px;
}
#carousel .prevbtn i, #carousel .nextbtn i {
    color: #fff;
}
.added_img {
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 10;
	background-color: rgba(0,0,0,0.4);
	display: flex;
	justify-content: center;
	align-items: center;
    padding: 2rem;
}
.added_img p::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f057";
	display: block;
	color: #fff;
	text-align: right;
	font-size: 1.5rem;
}
#company {
    background-color: #eee;
}
#company th {
	padding: 1rem 1rem 0.5rem;
    font-weight: normal;
	min-width: 130px;
}
#company th::after {
	width: 3rem;
	display: block;
	content: '';
	height: 0.5rem;
	background-color: #ccc;
}
#company td {
	padding: 0 1rem 1rem;
	font-size: 95%;
}
#company tr {
    display: flex;
    flex-direction: column;
}
.table-striped tbody tr:nth-of-type(2n+1) {
	background-color: #fff;
}
#contact {
    background-color : #ffffff;
	background-image:
        repeating-linear-gradient( to right, rgba(0,109,153,0.1) 0px 1px, transparent 1px 1px),
        repeating-linear-gradient( to bottom, rgba(0,109,153,0.1) 0px 1px, transparent 1px 2px);
    padding-bottom: 5rem;
}
#contact_btn {
    bottom: 0;
    text-align: right;
    margin-top: -85px;
    padding: 1rem;
}
#contact_btn img {
    width: 50px;
    height: auto;
    margin-left: 0.5rem;
}

/* footer */
#footer {
    background-color: #006d99;
    color: #fff;
    padding: 2rem 0 0.1rem;
    font-size: 90%;
}
#footer-menu {
	margin: auto 0 2rem;
    padding: 0;
    position: relative;
}
#footer-menu li {
	padding: 0.2rem 0;
    list-style: none;
    line-height: 1.2;
    font-size: 14px;
}
#footer-menu li a, #footer-menu li a:visited {
    color: #fff;
    text-decoration: none;
}
#footer-menu li a:hover {
    color: #777;
}
#footer-menu li a:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f0da";
    padding-right: 0.5rem;
}
#footer-menu .nav-item {
    border-bottom: none;
}

.sns img {
    margin: 1rem 0.5rem;
    max-width: 50px;
}
img.footer_logo {
    max-width: 200px;
    margin: 2rem auto;
}
.mail_address, .mail_address:visited, .tel_no, .tel_no:visited {
    color: #fff;    
}
.copyright {
    background-color: rgba(0, 0, 0, 0.1);
}

/* pages */
#main.pages {
	padding-bottom: 60px;
}
h1.entry-title {
    margin-top: 2em;
    font-size: 1.8rem;
	color: #006d99;
}
.sottakudoji {
    margin: 2em auto;
}


@media  all and (min-width: 576px) {    /* col-sm- */
    .top_content {
        padding: 4rem 0;
    }
    #greeting {
        padding: 5rem 0;
    }
    #company tr {
        display: table-row;
    }
    #company th, #company td {
        padding: 1rem;
    }
    #company th::after {
        display: none;
    }
    /* pages */
    h1.entry-title {
        font-size: 2.5rem;
    }
    .pages .container {
        max-width: 800px;
    }
}
@media all and (min-width: 768px) {    /* col-md- */
    /* header */
    .site-title img {
        height: 30px;
    }
    .nav-item {
        padding: 0.5rem 0.5rem;
        font-size: 16px;
        border-bottom: none;
        align-self: center;
    }
    /* main */
    .slider_text .text-white p {
        font-size: 2.5rem;
    }
    .slider_text p img {
        max-width: 150px;
    }
    .slider_text.card-img-overlay {
        left: 2rem;
    }
    .slider_text.card-img-overlay img {
        max-width: 150px;
    }
    #member {
        padding: 2rem 0;
    }
    #contact {
        padding-bottom: 5rem;
    }
    #contact_btn .to_call {
        display: none;
    }
    
    /* footer */
	#footer-menu {
		display: flex;
		justify-content: center;
	}
    #footer-menu li {
        display: inline-block;
        margin: 0 0.5rem;
    }
    a[href^="tel:"]{
        pointer-events: none;
    }
}
@media all and (min-width: 992px) {    /* col-lg- */
    /* header */
    .nav-item {
        padding: 0.5rem 0.8rem;
    }
    /* main */
    .strength_inner {
        height: 100%;
    }
    .added_img img {
        max-width: 800px;
    }
}
@media all and (min-width: 1200px) { 
    /* header */
    #header .container-md {
        max-width: 90%;
    }
}

/* move */
.move {
    transition: all 1s;
    transform: scale(0.2);
    opacity: 0;
}
.move.motion {
    transition: all 1s;
    transform: scale(1);
    opacity: 1;
}
#company.move, #contact.move, #access.move {
    transition: all 1s 0.1s;
    transform: scale(1);
}
.top_content h2.move {
    transform: translateX(-50%) scale(3);
}
.top_content h2.move.motion {
    transform: translateX(0) scale(1);
}
.slider_text {
    transition: all 1s;
    transform: translateY(200px);
    opacity: 0;
}
.slick-active .slider_text {
    transition: all 1s;
    transform:  translateY(0);
    opacity: 1;
}
@media all and (min-width: 768px) {    /* col-md- */

}

/* Contact Form7 */
.contact7 {
	max-width: 100%;
	box-sizing: border-box;
}
.contact7 dd {
	margin: 0 0 30px 0;
	background-color:
}
.contact7 dt {
	font-weight: normal;
    margin-bottom: 0.5rem;
}
.contact7 input {
    max-width: 100%;
}
/* 必須マーク */
.contact7 .must {
	background: #FF1A00;
}
/* 任意マーク */
.contact7 .optional {
	background: #999;
}
.contact7 .must, .contact7 .optional {
	color: #FFF;
	border-radius: 1rem;
	font-size: 12px;
	margin-left: 10px;
	padding: 2px 8px;
	letter-spacing: 1px;
}
.btn_contact7 {
	text-align: center;
}
.btn_contact7 input {
	width: 70%;
	background-color: #006d99;
	color: #FFF;
	font-size: 1.1em;
	letter-spacing: 0.2em;
	border: 3px solid #006d99;
    border-radius: 1rem;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;	
    padding: 0.5em;
}
.btn_contact7 input:hover {
	background-color: #FFF;
	color: #006d99;
    border-color: #006d99; 
}
@media screen and (min-width: 768px) {
    .contact7 dt {
        float: left;
        clear: left;
        width: 35%;
        padding: 5px 10px 5px 0;
    }
    .contact7 dd {
        margin-left: 35%;
    }
}

