﻿@charset "utf-8";
/* CSS Document */

/* Reset */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block;
}

body {
line-height: 1;
  -webkit-overflow-scrolling: auto;
  overflow-y: scroll;
}

ol, ul {
list-style: none;
}

a:focus {
outline: none;
}

main {
    top: 750px;
    position: relative;
    background-color: #ffffff !important;
}

.mainpic {
    position: fixed;
    top: 0px;
    z-index: -10;
}

blockquote, q {
quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
content: '';
content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 800px;
    margin: 2em auto;
}

body {
    -webkit-text-size-adjust: 100%;
    min-width: 1040px;
    z-index: 0;
    background-color: #282951;
}

a{
	text-decoration: none;
	color: #FFF;
	font-family:sans-serif;
}

p {
    font-family: sans-serif !important;
}
* { 
    margin: 0px; 
    padding: 0px; 
}

/* 共通パーツ設定
---------------------------------------------------------------------------*/
.clear{
	clear: both;
}

#pageTop {
  position: fixed;
  bottom: 20px;
  right: 120px;
}
 
#pageTop a {
    display: block;
    z-index: 999;
    padding: 8px 0 0 8px;
    border-radius: 30px;
    width: 75px;
    height: auto;
}

#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}



/* header
---------------------------------------------------------------------------*/
header {
    top: 0px;
    margin: 0 auto;
    z-index: 9999999999;
    top: 0;
    left: 0;
    width: 100%;
	padding-bottom: 0.2em;
}

.header_cont {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header_logo img {
	width: 55px;
    padding: 5px 50px;
}

.header_tel {
    justify-content: flex-end;
    letter-spacing: 0.2em;
    font-size: 0.8em;
    margin-top: -4em;
}

.header_tel p {
    padding: 1.15em 2em 0.5em 2em;
    background-color: #AC8D56;
    color: #2E3641;
}

.header_tel a {
    padding: 0.3em;
    font-size: 2em;
    font-weight: bold;
    color: #AC8D56;
}

li.nav_cont {
    margin: 0;
    padding: 2em 3em;
    font-family: sans-serif;
    font-weight: bold;
    font-size: 0.9em;
}

.nav_cont a {
    color: #FFF;
}

nav ul {
    justify-content: center;
}

.main_logo img {
    width: 50%;
    position: absolute;
    top: 38%;
    right: 0;
    left: 0;
    margin: auto;
}

.nav06 {
    background: #282951;
}

/* main
---------------------------------------------------------------------------*/

.mainpic_text {
    text-align: center;
    line-height: 1.2em;
    font-weight: inherit;
    color: #fff;
    font-family: serif;
    font-size: 3em;
    width: 700px;
    position: absolute;
    top: 13em;
    right: 0;
    left: 0;
    margin: auto;
    letter-spacing: 4px;
    opacity:0.9;
}

p.pic_text_jp {
    font-size: 65%;
}


.flex {
    display: flex;
}

.flex2 {
    display: flex;
    justify-content: space-evenly;
}

.flex_btn1 {
    display: flex;
    justify-content: center;
    align-items: center;
}

å
h2 {
    text-align: center;
    font-size: 2.5em;
    font-family:sans-serif;
}

span.h2_sub {
    font-size: 0.6em;
}

.about_us > .container > .topic_text {
    padding: 4em 0;
}

.back_gray {
    position: relative;
}

.about_us {
    padding-bottom: 150px;
    background-color: #fff;
    background-image: url(../img/vison_top.png);
}

.aboutus_cont {
    margin: 0 auto;
    text-align: center;
    padding-top: 90px;
}

.topic_text {
    font-size:2em;
    font-family: serif;
    text-align: center;
}

.section_list_cont a::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: black;
    opacity: 0.3;
}

.list_text p {
    position: absolute;
    right: 0;
    top: 50%;
    left: 0;
    text-align: center;
    color: white;
}

.list_up_cont {
    position: relative;
    width: 25%;
}

.list_up.flex {
    width: 100%;
}

.section_list_cont img {
    width: 100%;
    height: 230px;
    object-fit: cover;
}

.list_down_cont {
    position: relative;
    width: 25%;
}

.list_down.flex {
    width: 100%;
}

.news {
    padding-top: 5em;
}

.news_cont{
    justify-content: space-around;
    padding: 1.5em 0;
}

.conteiner {
    width: 1100px;
    margin: 0 auto;
}

/*メイン部分-----------------------------------------------*/
h2.bule_back {
    font-size: 40px;
    letter-spacing: 6px;
    color: #FFF;
    margin: 0 auto;
    background-color: #292951;
    position: relative;
    z-index: 100;
    width: 650px;
    text-align: center;
    padding: 10px 50px 10px;
    font-family: serif;
}

h2.bule_back2 {
    top: -35px;
}

h2.info_top {
    font-size: 45px;
    font-family: serif;
    padding-bottom: 18px;
    color: #282951;
}

.vison_bg {
    background-image: url(../img/vison_img.jpg);
    background-repeat: no-repeat;
    height: 550px;
    margin: 0 auto;
    width: 65%;
    background-size: cover;
    bottom: 500px;
    margin-bottom: -500px;
}

.vison_cont {
    background: #ffffff;
    display: inline-block;
    max-width: 650px;
    position: relative;
    text-align: center;
    box-shadow: 10px 10px 10px #4d4d4d4d;
    padding: 35px 40px;
    margin: 0 auto;
}

.vison_cont2 {
    padding: 30px 40px 10px 40px;
}

p.bule_bg {
    font-size: 19px;
    font-weight: 600;
    padding-bottom: 10px;
	color: #282951;
	line-height: 25px;
}

p.bule_bg span {
    font-size: 14px;
    font-weight: 100;
}

p.normal_text {
    font-size: 14px;
	line-height: 1.7;
	padding: 13px 0px;
}

p.back_bule_btn {
    background-color: #282951;
    display: inline;
    padding: 14px 55px;
}

.about_info {
    margin-bottom: 1em;
}

p.back_bule_btn a {
    color: #FFF;
    font-size: 13px;
}

.main_logo2 img {
    width: 27%;
    position: absolute;
    top: 17%;
    right: 0;
    left: 0;
    margin: auto;
}

/*サービス部分*/
.service_cont {
   padding: 50px 0;
}
h2.orange_text {
    text-align: center;
    font-size: 35px;
    color: #DD8D11;
    color: #1e4669;
    font-family: serif;
    font-weight: 600;
    letter-spacing: 5px;
    padding-bottom: 25px;
}

h2.orange_text span {
    font-size: 15px;
    color: #666666;
    font-weight: 200;
}

.service_inner {
    width: 230px;
    height: 250px;
}
.service_list {
    width: 100%;
    display: flex;
    justify-content: space-evenly;
}
.service_box p {
	text-align: center;
	padding-top: 10px;
}

p.service_name {
    font-size: 15px;
    font-weight: 600;
    padding: 30px 0 15px 0px;
    color: #1d4669;
}

.service_box p img {
    width: 100%;
    height: 150px;
    object-fit: cover;
}

p.about_service {
    font-size: 13px;
    line-height: 23px;
    padding: 9px 0px;
    font-weight: 500;
}

p.center_btn {
    padding: 4.5em 0;
    text-align: center;
}

p.center_btn a {
    color: #bd9901;
    font-size: 15px;
    font-weight: 800;
}
img.arrow_right {
    width: 23px;
    padding: 0 10px;
    margin-bottom: -2px;
}

/*実績部分*/
section.achievement_cont {

}

.achievement_list {
    width: 1100px;
    margin: 0 auto;
    padding: 50px 10px 10px;
    display: flex;
    justify-content: space-around;
}

.achievement_box {
    width: 350px;
}

h2.achievement_top {
    text-align: center;
    font-size: 45px;
    font-family: serif;
    color: #282951;
    padding-bottom: 15px;
}

.about_achievement2 {
    color: #dd8d12;
    text-align: center!important;
    margin: 0 0px;
    font-weight: 800;
}

p.about_achievement {
    font-size: 26px;
    text-align: center;
    font-weight: 700;
    line-height: 30px;
    letter-spacing: 5px;
    padding: 10px 0px;
    color: #000000;
    text-shadow: 0px 0px 15px #ffffff;
}

p.about_achievement img {
    width: 220px;
}

.our_vision2 {
    padding: 10em 0 1em 0;
}

.our_vision2 {
    text-align: center;
}

.our_vision2 p img {
    position: relative;
}

.vision2_cont p {
    background-color: #282951;
    display: inline-block;
    color: #FFF;
    padding: 45px 125px;
    font-size: 14px;
    line-height: 30px;
    position: relative;
	top: -150px;
	font-weight: 600;
	font-family: sans-serif;
}

/*お問い合わせ（TOP）部分*/
.contact_cont {
    background-image: url(../img/contact_back.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    text-align: center;
}

.contact_box {
    display: inline-block;
    text-align: center;
    justify-content: space-around;
    width: 900px;
    margin: 4em auto;
    font-family: serif;
    background: #fffffff5;
    padding: 45px;
}
.contact_inner h3 {
    font-size: 40px;
    color: #282951;
    letter-spacing: 5px;
    text-align: center;
    line-height: 35px;
}

.contact_bule{
	font-size: 32px;
    color: #1d517e!important;
    letter-spacing: 5px;
    text-align: center;
    line-height: 35px;
}

.contact_h3{
    font-size: 32px;
    color: #FFF;
    letter-spacing: 5px;
    text-align: center;
    line-height: 35px;
}

.contact_inner h3 span {
    font-size: 18px;
}

.contact_h3 span {
    font-size: 18px;
}


img.contact_arrow {
    width: 18px;
    margin: 4px 25px 0 0;
}

.contact_inner2 {
    align-items: center;
    background-color: #282951;
    padding: 0px 60px;
    border-radius: 0;
    width: 220px;
    margin: 1em auto 0;
    border: thick double #ffffff;
}

p.contact_p {
	color: #FFF;
    text-align: center;
}

.contact_inner2 p {
    margin: 10px 0;
}

h2.bule_text {
    text-align: center;
    font-size: 35px;
    color: #1d517e;
    line-height: 45px;
    padding-top: 3em;
    letter-spacing: 6px;
    font-family: serif;
}

h2.bule_text span {
    font-size: 15px;
    color: #000;
    font-weight: 200;
}


table.company_table {
    width: 750px;
    margin: 50px auto;
}

table.company_table tbody tr th {
    padding: 35px 0;
    width: 140px;
    text-align: inherit;
	color:#282951;
	font-family: sans-serif;
}

table.company_table 	{
	border-collapse:collapse
}
table.company_table tbody tr	{
		border-top:1px solid #1d517e1f;
		border-bottom:1px solid #1d517e1f;
		font-family: sans-serif;
	}
	
table.company_table tbody tr td {
		color: #9f9f9f;
		line-height: 30px;
        vertical-align: middle;
	}
	
section.about_company {
    padding-bottom: 5em;
		margin-top: 5em;
		background: white;
}
	
.main_logo.sp img {
    width: 100%;
		top: 330px;
}
/*セイルについて-----------------------------------------------*/		
.container_seile {
    width: 1050px;
    background: #f0f0f0;
    padding: 30px 0 25px 0;
		margin: 1.5em auto;
		    border-radius: 6px;
	}
p.detail_seile_img img {
		width: 300px;
		padding: 0 40px 0 0;
}
.service_detail2 {
    width: 650px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
	.container_seile_bottom{
		margin-bottom: 7em;
	}	
.text_orangeback {
color: #FFF;
    background: #ac8d57;
    font-weight: 700;
    font-size: 14px;
    display: block;
    padding: 10px 18px;
	}
h2.about_h2 {
    font-size: 25px;
    padding: 30px 20px;
		font-weight: 700;
		font-family: sans-serif;
}
.seile_about_text {
    padding: 0px 25px 15px 25px !Important;
	}
	
.service_cont3 {
    width: 950px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
/*会社概要-----------------------------------------------*/	
.map_cont {
    padding: 5em 0;
}
	
p.center_p {
    text-align: center;
    color: #545454;
    font-size: 16px;
		line-height: 23px;
		padding: 5px 0px;
	}

p.center_p2 {
    text-align: center;
    font-family: serif !important;
    color: #848484;
    font-weight: 600;
    font-size: 18px;
    line-height: 26px;
    padding: 20px 0px;
    margin: 1em auto 0;
    width: 1000px;
}

p.name_text {
    color: #FFF;
    text-align: right;
    padding: 30px 350px 50px;
	}

.building img {
    width: 50%;
    padding-top: 3em;
}
/*サービス内容-----------------------------------------------*/		
.top_cont {
    padding: 100px 0 0px 0;
}

.top_cont2{
    padding: 100px 0 70px 0;
    background: #f2f2f2;
}

.container_service1 {
    margin: 3em auto;
    width: 1050px;
    padding: 35px 0;
    border-style: dashed;
    border-radius: 6px;
}
	
.service_cont2 {
    width: 950px;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
	
p.number_bg {
    display: inline-block;
    padding: 18px 12px 5px 12px;
    color: #bd9901;
    font-weight: 800;
    font-size: 26px;
    letter-spacing: 2px;
}
	
p.text_bg {
    color: #19203f;
    font-weight: 800;
    font-size: 23px;
		letter-spacing: 2px;
		padding-bottom: 11px;
	}
	
h2.service_h2 {
    padding: 25px 0;
    color:#282951;
    font-weight: 700;
    font-size: 23px;
    letter-spacing: 3px;
	}
	
p.service_detail_p {
    color:#000;
    padding: 5px 12px;
    line-height: 23px;
    font-size: 15px;
    letter-spacing: 3px;
	}
	
.service_detail_img {
    width: 25%;
	}
p.service_detail_img img {
    width: 230px;
	}
	
.service_cont2_bottom {
    padding: 0px 60px;
	}
	
.service_cont2_bottom {
    margin: 25px 60px 0;
    border-radius: 6px;
    padding: 30px;
    background: #f0f0f0;
}
p.service_detail_p_2 {
    padding: 2px 15px;
    font-size: 14px;
		color: #545454;
		line-height: 20px;
    letter-spacing: 3px;
	}
p.service_detail_p_3 {
    padding: 6px 15px 35px;
    font-size: 14px;
    color: #545454;
    letter-spacing: 3px;
	}
.service_detail {
		width: 650px;
		    position: relative;
	}
.contact_cont_bottom {
    margin-top: 100px;
	}
/*問い合わせ部分*/	
form {
    width: 1100px;
    margin: 0 auto;
	}
table.formtable tbody tr th {
    color: #545454;
	text-align: initial;
		padding: 10px;
		width: 220px;
	}
table.formtable tbody tr td {
    padding-bottom: 10px;
	}
input[type="checkbox"] {
    margin: 5px 0;
}
input[type="text"] {
    width: 100%;
    height: 22px;
	}
	
textarea {
		width: 100%;
	}
label {
    color: #545454;
	}
textarea{
    vertical-align:top;
	}
span.hissu {
    padding: 5px 12px;
    background: #ff6d6d;
    color: #FFF;
    border-radius: 6px;
	}
input[type="submit"] {
    width: 150px!important;
    border-radius: 6px;
    height: 45px!important;
    font-size: 15px;
	}
input[type="reset"] {
    width: 150px!important;
    border-radius: 6px;
    height: 45px!important;
    font-size: 15px;    font-size: 15px;
	}
div#privacy_policy {
    width: 1100px;
    margin: 0 auto;
    padding: 7em 70px;
}
/*フッター部分*/	
footer {
    width: 100%;
    height: 340px;
    background-color: #282951;
    color: white;
    text-align: center;
}
ul.footer-menu li {
display: inline;
	}
	
p.f_logo img {
    width: 50px;
    padding: 40px 0 15px 0;
    margin: 0;
}
p.f_logo {
    margin: 0;
	}
	
.footer-menu {
    display: flex;
    justify-content: center;
    margin: 0 auto;
    padding: 10px 0;
	}
	
ul.footer-menu li a {
    color: #FFF;
	}
	
p.f_top {
    border-bottom: solid 1px;
    padding: 0 0 5px 0;
    width: 125px;
	}
	
p.f_bottom {
    font-size: 12px;
    margin: -7px 0px 0 0;
	}
	
p.copy_text {
    font-size: 13px;
	}

footer {
    background: #2E3641;
    padding-top: 1em;
    position: relative;
    z-index: 99;
    top: 740px;
}

.footer_bottom {
    padding: 1em 0;
    background: #2E3641;
}

.footer_bottom a {
    color: #FFF;
}

.footer_bottom p {
    text-align: center;
    color: #ac8d57;
}

.footer_bottom {
    padding: 1em 0;
    background: #2E3641;
    border-top: 2px solid #CFC389;
    margin-top: 1em;
}

.footer_cont nav {
    padding: 0 0 3em 0;
}
.footer_cont nav ul {
    justify-content: none;
}


.section_list_cont a:hover {
    opacity: 0.8;
    transform:scale(1.2,1.2);
}


.btn a:hover {
    background-color: #4b5869;
    color: #cac29c;
}

.news_image a:hover {
    opacity: 0.7;
}

.news_image img:hover{
    transform:scale(1.1,1.1);
}

nav a:hover {
    opacity: 0.7;
}

.footer_2{
    top: 550px;
}

.main_news {
    padding: 5em 0;
    width: 1000px;
    margin: 0 auto;
}

h2.tittle_blog {
    padding: 2em 0 0 0;
}

.main_news p {
    padding-bottom: 3em !important;
}

.page_nations {
    width: 1000px;
    margin: 0 auto;
    padding: 3em 0;
}

.next_post {
    text-align: end;
    margin-top: -1em;
}

.news_text {
    line-height: 1.5em;
}

.pankuzu_cont {
    display: none;
}

.news_wrap{
    padding: 4em 0;
}

a:hover {
    opacity: 0.7;
}

footer {
    width: 100%;
    height: 355px;
    background-color: #282951;
    color: white;
    text-align: center;
}
ul.footer-menu li {
		display: inline;
		 padding: 0 45px;
	}
	
p.f_logo img {
    width: 50px;
    padding: 40px 0 15px 0;
    margin: 0;
}
p.f_logo {
    margin: 0;
	}
	
.footer-menu {
    display: flex;
    justify-content: center;
    margin: 0 auto;
    padding: 10px 0;
	}
	
ul.footer-menu li a {
    color: #FFF;
	}
	
p.f_top {
    border-bottom: solid 1px;
    padding: 10px 0 ;
    width: 125px;
	}
	
p.f_bottom {
    font-size: 12px;
    margin: 10px 0px 0 0;
	}
	
p.copy_text {
    font-size: 13px;
}

.privacy_cont {
    text-align: center;
}

.thank_f {
    top: 70px;
}

/* タブレット（縦）
---------------------------------------------------------------------------*/
@media only screen and (max-width: 820px){
    body {
        -webkit-text-size-adjust: 100%;
        min-width: 820px;
        background-color: #ffffff;
    }

    li.nav_cont {
        margin: 0;
        padding: 2em 20px;
        font-family: sans-serif;
    }

    .main_logo img {
        width: 60%;
        position: absolute;
        top: 15%;
        right: 0;
        left: 0;
        margin: auto;
    }

    main {
        top: 330px;
        position: relative;
        background-color: #ffffff;
    }

    .vison_bg {
        width: 80%;
    }

    .vison_cont {
        top: 250px;
        left: 20%;
    }

    .conteiner {
        width: 750px;
        margin: 0 auto;
    }

    p.about_service {
        font-size: 10px;
        line-height: 18px;
    }

    .service_box p img {
        width: 90%;
    }

    .service_box {
        height: 250px;
    }

    p.service_name {
        font-size: 11px;
    }

    p.about_achievement img {
        width: 160px;
    }

    .building img {
        width: 80%;
        padding-top: 3em;
    }

    .achievement_list {
        width: 90%;
        margin: 0 auto;
        padding: 10px 10px 10px;
    }

    p.center_p2 {
        width: 100%;
    }

    .our_vision2 {
        padding: 5em 0 0em 0;
    }

    .our_vision2 p img {
        width: 100%;
    }

    .contact_box {
        width: 450px;
    margin: 0 auto;
    }

    .contact_cont {
        padding: 80px;
    }

    footer {
        top: 330px;
    }

    ul.footer-menu li {
        display: inline;
        padding: 0 15px;
    }

    .container_seile {
        width: 90%;
    }

    .service_cont3 {
        width: 90%;
    }

    .text_orangeback {
        display: inline-block;
    }

    .service_detail2 {
        display: block;
    }

    h2.about_h2 {
        font-size: 19px;
        padding: 15px 10px;
        font-weight: 700;
        font-family: sans-serif;
    }

    .container_service1 {
        width: 100%;
    }

    p.service_detail_img img {
        display: none;
    }

    .service_detail {
        width: 90%;
        margin: 0 auto;
        padding-bottom: 30px;
    }

    .service_cont2 {
        display: BLOCK;
    }

    .greeting_cont {
        width: 90%;
        margin: 0 auto;
    }

    form {
        width: 100%;
        margin: 0 auto;
    }

    div#privacy_policy {
        width: 100%;
        margin: 0 auto;
        padding: 5em 0;
    }
    .service_cont2 {
        width: 100%;
    }



}
/* タブレット（横）
---------------------------------------------------------------------------*/
@media only screen and (max-width: 1180px){
    main {
        top: 320px;
    }

    footer {
        top: 440px;
    }

    .vison_bg {
        width: 85%;
    }

    .main_logo2 img {
        width: 30%;
        position: absolute;
        top: 8%;
        right: 0;
        left: 0;
        margin: auto;
    }

    .vison_cont {
        left: 0%;
        top: 25px;
    }

    .achievement_list {
        width: 90%;
    }

    p.name_text {
        color: #FFF;
        text-align: right;
        padding: 30px 80px 50px;
    }
}