@charset "UTF-8";

/*
 * サイト共通用のCSSです。
 *
 */
/* 連続 br でIE6が改行しないバグ対策　CSS:letter-spacing の影響
----------------------------------------------- */
br {
  letter-spacing: normal;
}

/* フロート回り込み解除
----------------------------------------------- */
.clear {
  clear: both;
  display: none;
  font-size: 0px;
  line-height: 0%;
  height: 0px
}

/* float対策：背景色表示用
----------------------------------------------- */
.clearfix:after {
  display: block;
  clear: both;
  height: 0px;
  line-height: 0px;
  visibility: hidden;
  content: ".";
}

.clearfix {
  display: block;
  /* for IE8 */
}

.both {
  clear: both;
}

.hidden {
  display: none;
}

/* yui 上書き
----------------------------------------------- */
html,
body {
  /*height: 100%;*/
  /*背景画像を100%にする時に使用する*/
  overflow-x: hidden;
}

body {}

ol, ul, dl {
  margin: 0px;
}

li {
  list-style-type: none;
}

h1, h2, h3 {
  margin: 0px;
}

/* 基本サイト構造 (空白のままにすること)
----------------------------------------------- */
/* body */
body {}

/* container */
#container {}

/* container_inner */
#container_inner {}

/* header_wrapper */
#header_wrapper {}

/* header */
#header {}

/* main_nav */
#main_nav {}

/* breadcrumb */
#breadcrumb {}

/* contents_wrapper */
#contents_wrapper {}

/* footer_wrapper */
#footer_wrapper {}

/* footer */
#footer {}

/* -----------------------------------------------
 *
 *
 * ここから下を変更すること
 *
 *
----------------------------------------------- */
/* a リンク
----------------------------------------------- */
a {
  text-decoration: none;
}

a:link {}

a:visited {}


/* ボタン
----------------------------------------------- */
/* form
---------------------------------------------- */
/* -----------------------------------------------
 * メイン
----------------------------------------------- */
/*body { margin:0; padding:0; font-size:1.5rem; font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; overflow-x:hidden; }*/
body {
  margin: 0;
  font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
  margin: 0;
  padding: 0;
  width: 100%;
  font-size: 13px;
  color: #5F5F52;
}

blockquote, body, dd, div, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, input, li, ol, p, pre, td, textarea, th, ul {
  margin: 0;
  padding: 0;
  font-weight: 500
}

/* html */
html {}

/*.container { width: 1300px; margin: 0 auto; }*/
.container { max-width: 1300px; width: 98%; margin: 0 auto; }


.tb { display: none; }
.sp { display: none; }
.sp_only { display: none; }
.pc { display: block; }

@media screen and (max-width:1250px){

}


@media screen and (max-width:1100px){
  .container { width: 90%; margin: 0 auto; }

}

@media screen and (max-width:768px){
  .pc { display: none; }
  .sp { display: block; }
  .tb { display: block; }
}


@media screen and (max-width:479px){
  .tb { display: none; }
  .sp_only { display: block; }
}

/* flex
----------------------------------------------- */
.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  height: auto;
}
.flex img {
  align-self:flex-start;
}

.flex-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.flex_just-c {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.flex_just-b {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.flex_just-a {
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.flex_align-c {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center ;
}
.flex_align-b {
  -webkit-box-align: baseline;
	-ms-flex-align: baseline;
	align-items: baseline;
}


@media screen and (max-width:768px){
  .flex_direction-row-r {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .flex_direction-col-r {
    -webkit-box-orient: vertical;
  	-webkit-box-direction: reverse;
  	-ms-flex-direction: column-reverse;
  	flex-direction: column-reverse;
  }
}



/* pagetop
----------------------------------------------- */
#page_top { display: none; z-index: 100; position: fixed; bottom: 5%; right: 2%; }
#page_top img { width:50px; }


@media screen and (max-width:479px){
  #page_top img { width:35px; }
}

/* 共通
----------------------------------------------- */
h2 { position: relative; letter-spacing: 3px; color: #B49200; /*font-size: 1.8rem;*/ font-size: 1.5vw; font-weight: bold; margin-bottom: 30px; }
h2:before {
    content: url("../images/kyumeikai_title_icon.png");
    margin-right: 20px;
    vertical-align: bottom;
}
h3 { font-size: 1.2rem; font-weight: bold; color: #5F5F52; margin-bottom: 20px;}
p { font-size: 1rem; line-height: 35px; text-align: justify; }
.gold { color: #B49200; }
.right { text-align: right; }
.center { text-align: center; }
.vertical { -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-size: 2vw; line-height: 4vw; letter-spacing: 5px; }
.mincyo { font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }

.half_box { width: 45%;}
.half_box img { width: 100%; }


/* ボタン */
.btn {}
.btn a {}


@media screen and (max-width:1250px){

}


@media screen and (max-width:1100px){
  p { line-height: 30px; }
  .half_box { width: 48%; }


}

@media screen and (max-width:768px){
  h2 { font-size: 1.2rem; text-align: center; margin-bottom: 30px; }
  p { font-size: 0.8rem; line-height: 25px; }
  .half_box { width: 100%; margin-bottom: 50px; }

}

@media screen and (max-width:479px){
  h2 { font-size: 1rem; margin-bottom: 15px; }
  h3 { font-size: 0.9rem; }
  .vertical { writing-mode: horizontal-tb; font-size: 4vw; line-height: 6vw; }
  .half_box { width: 100%; margin-bottom: 30px; }
  .half_text { width: 100%; margin-bottom: 30px; }
}


/* -----------------------------------------------

	 header

----------------------------------------------- */
header { width: 100%; z-index: 9999; }
header .header_inner { width: 100%; z-index: 100; padding: 1% 2%; }
header .header_inner .header_contact ul li { border-right: 1px solid #fff; padding: 0 20px; filter: drop-shadow(2px 2px 2px #313140); }
header .header_inner .header_contact ul li:last-child { border-right: none; }
header .header_inner .header_contact ul li a { color: #fff; font-weight: bold; text-decoration: none; vertical-align: middle; letter-spacing: 2px; }
header .header_inner .header_contact ul li a img { margin-right: 10px; }



#smh_menu { display: none; }


@media screen and (max-width:1250px){

}


@media screen and (max-width:1100px){


}

@media screen and (max-width:768px){
  header { position: fixed; top: 0; left: 0; transition: 0.3s ease-in-out; }
  header .header_logo img {}
  header .header_contact { display: none; }
  .transform { background-color: #5f5f52; transition: 0.3s ease-in-out; }

  #about, #activities, #overview, #contact { margin-top: -65px; padding-top: 65px; }

  #smh_menu {
    display: block;
    position: relative;
    z-index: 9999;
  }

  .drawer-nav ul {
    background: #5f5f52;
    padding: 0 10px;
    height: 100%;
    padding-top: 25px;
  }

  .drawer-nav ul li {
    margin-right: 0px;
    float: none;
    display: block;
    padding: 1rem;
    text-decoration: none;
    color: #fff;
    border-bottom: 1px solid #B49200;
  }

  .drawer-nav ul li a {
    color: #fff;
    font-size: 0.9rem;
  }


  .drawer-nav ul ul.drawer_sub li {
    border-bottom: none;
    font-size: 0.8rem;
    margin-left: 20px;
  }

  .drawer-nav ul ul.drawer_sub li a {
    color: #fff;
  }
}


}


@media screen and (max-width:479px){
  #about, #activities, #overview, #contact { margin-top: -58px; padding-top: 58px; }
}




/* -----------------------------------------------

	 top_section

----------------------------------------------- */
.top_section { width: 100%; margin: 0 auto; }
.top_section .main_img { position: relative; text-align: center; z-index: -1; margin-top: -90px; }
.top_section .main_img img.bg { width: 100%; }
.top_section .main_img h1 { position: absolute; bottom: 15%; right: 12%; opacity: 0.65; }
.top_section .main_img h1 img { width: 15vw; }
.top_section .main_text { text-align: left; position: absolute; top: 50%; right: 25%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
.top_section .main_text p { color: #fff; }
.top_section .main_copyright { position: absolute; left: 2%; bottom: 12%; }
.top_section .main_copyright p { color: #B39200; font-weight: bold; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-size: 0.7vw; }
.main_name { position: absolute; top: -3%; left: 10%; }
.main_name p { font-size: 5vw; color: #fff; letter-spacing: 3px; font-weight: normal; }



@media screen and (max-width:1250px){

}


@media screen and (max-width:1100px){


}

@media screen and (max-width:768px){
  .top_section { margin: 0; }
  .top_section .main_text { top: 65%; }

}


@media screen and (max-width:479px){
  .top_section .main_text h1 { margin:0 auto 20px; }
  .top_section .main_text h1 img { width: 95%; }
  .top_section .main_copyright { display: none; }

}




/* -----------------------------------------------

	 s1

----------------------------------------------- */
.s1 { position: relative; padding: 180px 0; background-image: url(../images/kyumeikai_s1_bg.jpg); background-repeat: no-repeat; background-size: cover; background-position: center; }
.s1 .s1_l { width: 30%; }
.s1 .s1_r { width: 65%; }
.s1 .s1_r p { width: 80%; }
.s1 .s1_r p.right { margin-top: 50px; }

@media screen and (max-width:1250px){

}


@media screen and (max-width:1100px){
  .s1 { padding: 100px 0; }

}

@media screen and (max-width:768px){
  .s1 { padding: 50px 0; }

}


@media screen and (max-width:479px){
  .s1 { background-image: url(../images/kyumeikai_s1_bg_sp.jpg); }
  .s1 .s1_l { width: 100%; margin-bottom: 30px; }
  .s1 .s1_l .vertical { font-size: 5.5vw; line-height: 8vw; }
  .s1 .s1_r { width: 100%; }
  .s1 .s1_r p { width: 100%; }
}






/* -----------------------------------------------

	 s2

----------------------------------------------- */
.s2 .s2_l { width: 20%; }
.s2 .s2_c { width: 60%; position: relative; background-color: #fff; text-align: center; }
.s2 .s2_c img {
  position: absolute;
  top: -5vw;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 8vw;
}
.s2 .s2_c > p { width: 40vw; margin: 0 auto; /*padding: 8% 0 5%;*/ padding: 5vw 0 3vw; }
.s2 .s2_c .promise { width: 40vw; margin: 0 auto; /*padding: 8% 0;*/ padding: 5vw 0; }
.s2 .s2_c .promise .promise_text { padding: 40px 0; border-top: 1px solid #B49200; border-bottom: 1px solid #B49200; }
.s2 .s2_c .promise .promise_text p { text-align: center; font-weight: bold; }
.s2 .s2_r { width: 20%; }
.s2 .s2_l img, .s2 .s2_r img { width: 100%; margin: 0; }


@media screen and (max-width:1250px){
  .s2 .s2_c > p { width: 50vw; padding: 5vw 0 3vw; }
  .s2 .s2_c .promise { width: 50vw; padding: 3vw 0; }
  .s2 .s2_c .promise .promise_text { padding: 20px 0; }

}


@media screen and (max-width:1100px){
  .

}

@media screen and (max-width:768px){


}


@media screen and (max-width:479px){
  .s2 .s2_l, .s2 .s2_r { -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; }
  .s2 .s2_l, .s2 .s2_r { width: 100%; }
  .s2 .s2_l img, .s2 .s2_r img { width: 33.3333333%; }
  .s2 .s2_c { width: 100%; }
  .s2 .s2_c img { width: 20vw; }
  .s2 .s2_c > p { width: 90%; padding: 20vw 0 5vw; }
  .s2 .s2_c .promise { width: 90%; padding: 3vw 0 5vw; }


}






/* -----------------------------------------------

	 s3

----------------------------------------------- */
.s3 { padding: 100px 0; background-color: #EDEDE8; }
.s3 .s3_box { padding: 50px; box-shadow: 1px 1px 10px #D8D8CD; background-color: #EDEDE8; margin-bottom: 50px; }
.s3 .s3_box .s3_box_text { width: 60%; }
.s3 .s3_box .s3_box_text h3 span { margin-right: 10px; }
.s3 .s3_box .s3_box_img { width: 32%; }
.s3 .s3_box .s3_box_img img { width: 100%; }
.s3 .s3_box .s3_box_img table tr th { padding: 20px 15px; text-align: left; background-color: #fff; border-top: 1px solid #5F5F52; border-left: 1px solid #5F5F52;}
.s3 .s3_box .s3_box_img table tr th.brown { background-color: #5F5F52; }
.s3 .s3_box .s3_box_img table tr td { padding: 20px 15px; font-size: 1rem; text-align: center; background-color: #fff; border-top: 1px solid #5F5F52; border-left: 1px solid #5F5F52; }
.s3 .s3_box .s3_box_img table tr td.bg { background-color:#D1B94C; }
.s3 .s3_box .s3_box_img .table_title { color: #fff; font-size: 0.9rem; font-weight: bold; }
.s3 .s3_box .s3_box_img .border_r { border-right: 1px solid #5F5F52; }
.s3 .s3_box .s3_box_img .border_dot { border-left: 1px dashed #5F5F52; }
.s3 .s3_box .s3_box_img .border_b { border-bottom: 1px solid #5F5F52; }
.s3 .bg_gold { background-color: #B49200; color: #fff; }
.s3 .bg_gold h3 { color: #fff; }
.s3 .bg_gold .btn a { font-size: 1rem; padding: 20px 50px; background-color: #fff; color: #5F5F52; text-align: center; transition: 0.5s; }
.s3 .bg_gold .btn a:hover { background-color: #5F5F52; color: #fff;}
.s3 .bg_gold .s3_box_text { width: 65%; }
.s3 .bg_gold .s3_box_img { width: 30%; }

@media screen and (max-width:1250px){

}


@media screen and (max-width:1100px){
  .s3 { padding: 50px 0 20px; }
  .s3 .bg_gold .btn a { padding: 20px 35px; }

}

@media screen and (max-width:768px){
  .s3 .s3_box { padding: 30px; }
  .s3 .s3_box .s3_box_text { width:100%; margin-bottom: 30px; }
  .s3 .s3_box .s3_box_img { width: 60%; margin: 0 auto; }
  .s3 .bg_gold .btn { margin: 20px 0; }
  .s3 .bg_gold .s3_box_img { margin: 0; margin-right: auto; margin-bottom: 30px; }
}


@media screen and (max-width:479px){
  .s3 .s3_box { padding: 20px; }
  .s3 .s3_box .s3_box_img { width: 100%; }
  .s3 .s3_box .s3_box_img table tr th, .s3 .s3_box .s3_box_img table tr td { padding: 10px; }
  .s3 .s3_box .s3_box_img .table_title { font-size: 0.8rem; }
  .s3 .bg_gold .btn a { font-size: 0.9rem; padding: 15px 35px; }

}







/* -----------------------------------------------

	 s4

----------------------------------------------- */
.s4 { padding: 100px 0 250px; background-image: url(../images/kyumeikai_s4_bg.jpg); background-repeat: no-repeat; background-size: cover; background-position: center bottom; }
.s4 dl:nth-of-type(2n) { background-color: #fff; }
.s4 dl dt, .s4 dl dd { padding: 15px 10px; font-size: 1rem; text-align: left; line-height: 23px;}
.s4 dl dt { width: 25%; }
.s4 dl dd { width: 75%; }



@media screen and (max-width:1250px){

}


@media screen and (max-width:1100px){


}

@media screen and (max-width:768px){
  .s4 { padding: 50px 0 130px; }

}


@media screen and (max-width:479px){
  .s4 dl dt, .s4 dl dd { padding: 10px 5px; font-size: 0.8rem; }

}






/* -----------------------------------------------

	 s5

----------------------------------------------- */
.s5 { padding: 100px 0; background-color: #EDEDE8; }
.s5 .contact_box { width: 45%; margin: 5.5% 2.5% 2.5%; background-color: #fff; padding: 20px 40px; }
.s5 .contact_box .contact_box_icon { width: 20%; }
.s5 .contact_box .contact_box_icon img { width: 100%; }
.s5 .contact_box .contact_box_text { width: 75%; }
.s5 .contact_box .contact_box_text h3 { color: #B39200; }
.s5 .contact_box .contact_box_text p { color: #B39200; }
.s5 .contact_box .contact_box_text p a { color: #B39200; font-size: 1.3rem; font-weight: bold; }
.s5 .contact_box .contact_box_text .btn { margin: 25px 0 0; }
.s5 .contact_box .contact_box_text .btn a { color: #B39200; font-size: 1.1rem; font-weight: bold; border: 1px solid #B39200; padding: 7px 40px; transition: 0.5s; }
.s5 .contact_box .contact_box_text .btn a:hover { background-color: #B39200; color: #fff; }



@media screen and (max-width:1250px){

}


@media screen and (max-width:1100px){
  .s5 { padding: 50px 0; }
  .s5 .contact_box { padding: 20px 15px; }
  .s5 .contact_box .contact_box_icon { width: 10%; }
  .s5 .contact_box .contact_box_text { width: 85%; }
  .s5 .contact_box .contact_box_text p a { font-size: 1.1rem; }

}

@media screen and (max-width:768px){
  .s5 .contact_box { width: 80%; margin: 30px auto 0; padding: 15px 30px; }
  .s5 .contact_box .contact_box_icon { width: 15%; }
  .s5 .contact_box .contact_box_text { width: 75%; }
}


@media screen and (max-width:479px){
  .s5 .contact_box { width: 100%; }
  .s5 .contact_box .contact_box_text .btn { margin: 25px 0 10px; }
  .s5 .contact_box .contact_box_text .btn a { font-size: 0.9rem; }


}






/* -----------------------------------------------

	 footer

----------------------------------------------- */
footer { position: relative; background-image:url(../images/kyumeikai_footer_bg.jpg); background-repeat: no-repeat; background-size: cover; background-position: center; }
footer .footer_bg { padding: 100px 0 50px; text-align: center; }
footer .copyright { background-color: #444444; padding: 10px 0; }
footer .copyright p { font-size: 1rem; letter-spacing: 2px; color: #fff; text-align: center; }

@media screen and (max-width:1250px){

}


@media screen and (max-width:1100px){


}

@media screen and (max-width:768px){

}


@media screen and (max-width:479px){
  footer .footer_bg { padding: 50px 0 20px; }
  footer .footer_bg img { width: 35%; }
  footer .copyright p { font-size: 0.6rem; line-height: 20px; }
}






/* -----------------------------------------------

	 contact

----------------------------------------------- */
.contact  { padding: 100px 0; }
.contact .contact_inner { margin-bottom: 150px; }
.contact .contact_inner .contact_tel_area  { width: 70%; margin: 30px auto; }
.contact .contact_inner .contact_tel_area p { font-size: 1.8rem; line-height: 50px; }
.contact .contact_inner .contact_tel_area .contact_l { width: 40%; text-align: right; }
.contact .contact_inner .contact_tel_area .contact_l p { text-align: right; }
.contact .contact_inner .contact_tel_area .contact_r { width: 45%; }
.contact .contact_inner .contact_tel_area .contact_r p a { color: #5F5F52; transition: 0.3s; }

.contact .top_btn { margin: 80px auto; }
.contact .top_btn a { color: #B39200; font-size: 1.1rem; font-weight: bold; border: 1px solid #B39200; padding: 15px 60px; transition: 0.3s; }
.contact .top_btn a:hover { color: #fff; background-color: #B39200; transition: 0.3s; }

@media screen and (max-width:1250px){

}


@media screen and (max-width:1100px){


}

@media screen and (max-width:768px){
  .contact  { padding: 50px 0; }
  .contact .contact_inner { margin-bottom: 100px; }
  .contact .contact_inner .contact_tel_area  { width: 100%; }
  .contact .contact_inner .contact_tel_area p { font-size: 1.5rem; line-height: 40px; }
}


@media screen and (max-width:479px){
  .contact .contact_inner { margin-bottom: 80px; }
  .contact .contact_inner .contact_tel_area p { font-size: 1.3rem; line-height: 40px; text-align: center !important; }
  .contact .contact_inner .contact_tel_area .contact_l { width: 100%; }
  .contact .contact_inner .contact_tel_area .contact_r { width: 100%; }

}
