@charset "utf-8";
/* CSS Document */
/* ===================================================================
全体
=================================================================== */


.common_bg{
	background: url("images/sky_bg.png") top center;
	margin-top:0px!important;
		position: relative;
	background-size: cover;
}
#over_wrap{
	overflow: hidden;
	box-sizing: border-box;
}
a img{
	-webkit-transition: 0.3s linear;
	-o-transition: 0.3s linear;
	-ms-transition: 0.3s linear;
	-moz-transition: 0.3s linear;
	 transition: 0.3s linear;
}
a img:hover{
	opacity: .5;
}

/*-----------全頁共通2カラム--------------*/
@media (min-width: 769px){
	.left_con{
		float: left;
		width: 49%;
	}
	.right_con{
		float: right;
		width: 49%;

	}
}
/* ===================================================================
ヘッダー
=================================================================== */
header{
	
}
#header_con{
	background-color: #1ea5cc;
	height: 50px;
	position: relative;
}
h1{
    position: absolute;
    left: 0;
    right: 0;
	top:0;
    margin: auto;
	text-align: center;
}

@media (min-width: 1024px){
.global_left{
	position: absolute;
	top:15px;
	left: 8%;
}
	.global_right{
	position: absolute;
	top:15px;
	left:80%;
}

}
@media (min-width: 769px){
	#sp_navi{
		display: none;
	}
.global_right{
	position: absolute;
	top:15px;
	left:70%;
}
#global_navi li {
	display: inline-block;
	    margin-right: 10px;
}
#global_navi li a{
	text-decoration: none;
	color: #fff;
	font-size: 16px;
}
#global_navi li a:hover{
text-decoration: underline;
}
}

@media screen and (min-width:768px) and ( max-width:1024px) {
.global_left{
	position: absolute;
	top:15px;
	left: 2%;
}
}


@media (max-width: 768px){
		
	#global_navi{
		display: none;
	}
	
	#nav-toggle {
		
  position: fixed;
  top: 6px;
  right: 25px;
		height: 32px;
  cursor: pointer;
}
#nav-toggle > div {
  position: relative;
  width: 36px;
}
#nav-toggle span {
  width: 100%;
  height: 2px;
  left: 0;
  display: block;
  background: #ffffff;
  position: absolute;
  transition: top .5s ease, -webkit-transform .6s ease-in-out;
  transition: transform .6s ease-in-out, top .5s ease;
  transition: transform .6s ease-in-out, top .5s ease, -webkit-transform .6s ease-in-out;
}
#nav-toggle span:nth-child(1) {
  top: 0;
}
#nav-toggle span:nth-child(2) {
  top: 12px;
}
#nav-toggle span:nth-child(3) {
  top: 26px;
}
#nav-toggle:hover span:nth-child(1) {
  top: 4px;
}
#nav-toggle:hover span:nth-child(3) {
  top: 20px;
}

.open #nav-toggle span {
  background: #fff;
}
.open #nav-toggle span:nth-child(1) {
  top: 15px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.open #nav-toggle span:nth-child(2) {
  top: 15px;
  width: 0;
  left: 50%;
}
.open #nav-toggle span:nth-child(3) {
  top: 15px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/* z-index */
#nav-toggle {
  z-index: 1000;
	background-color: #1ea5cc;
    padding: 7px 5px 4px 5px;
}

#container {
  z-index: 900;
}

#sp_navi {
  background: #000;
  color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 990;
  text-align: center;
  display: flex;
  visibility: hidden;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 29px;
  opacity: 0;
  transition: opacity .6s ease, visibility .6s ease;
}

#sp_navi a {
  display: block;
  color: #fff;
  text-decoration: none;
  padding: 10px 0;
  transition: color .2s ease;
}
#sp_navi a:hover {
  color: #666;
}
#sp_navi ul {
  list-style: none;
}
#sp_navi ul li {
  opacity: 0;
  -webkit-transform: translateX(200px);
          transform: translateX(200px);
  transition: opacity .2s ease, -webkit-transform .6s ease;
  transition: transform .6s ease, opacity .2s ease;
  transition: transform .6s ease, opacity .2s ease, -webkit-transform .6s ease;
}
#sp_navi ul li:nth-child(2) {
  transition-delay: .15s;
}
#sp_navi ul li:nth-child(3) {
  transition-delay: .3s;
}
#sp_navi ul li:nth-child(4) {
  transition-delay: .45s;
}
#sp_naviul li:nth-child(5) {
  transition-delay: .6s;
}

/* open */
.open {
  overflow: hidden;
}
.open #sp_navi {
  visibility: visible;
  opacity: 1;
}
.open #sp_navi li {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  transition: opacity .9s ease, -webkit-transform 1s ease;
  transition: transform 1s ease, opacity .9s ease;
  transition: transform 1s ease, opacity .9s ease, -webkit-transform 1s ease;
}
	
	
	
	#sp_navi {
    background: #000;
    color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 990;
    text-align: center;
    display: flex;
    visibility: hidden;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 29px;
    opacity: 0;
    transition: opacity .6s ease, visibility .6s ease;
}
.open #sp_navi {
    visibility: visible;
    opacity: 1;
}
}

/*-----------メインビジュアル--------------*/
#main_visual img{
	width: 100%;
	height:auto; 
	max-width: 100%;	
}


@media (max-width: 1024px){
h1 img{
	width: 270px;
	height: auto;
	}
}

@media (max-width: 768px){
h1 img{
	width: 230px;
	height: auto;
	}
}
@media (max-width: 568px){
h1 img{
	width: 150px;
	height: auto;
	}
#global li a{
	font-size: 12px;
}
}
/* ===================================================================
メイン
=================================================================== */
#wrapper{
	padding: 0 10px;
	max-width: 1120px;
	margin: auto;
}
.sec1{
	margin-bottom: 50px;
}
#heading2_1{
	font-size: 32px;
	color: #5f3f01;
}
@media (max-width: 568px){
#heading2_1{
		font-size: 20px;
	}
	.heading2_2 img{
width: 200px;
		height: auto;
			
	}

}

#over_beige_box{
	position: relative;
	max-width: 800px;
	margin: auto;
}
#beige_box{
	background-color: #fff5d2;
	padding: 40px 90px;
	max-width: 700px;
	margin: 0 auto;
}
#beige_box p{
	font-size: 18px;
	line-height: 31px;
	color: #473200;
	margin-top: 20px;
}
#beige_box p span{
	color: #e64006;
}
@media (max-width: 768px){
	#beige_box{
	padding: 20px 10px;
	}
	#beige_box p{
	font-size: 14px;
	line-height: 22px;
		margin-top: 5px;
}
}
#circle01,#circle02,#circle03,#circle04{
		position: absolute;
}
#circle01{
	left: -150px;
	top:0;
}
#circle02{
	left: -120px;
	bottom:-80px;
}
#circle03{
	right: -150px;
	top: 10px;
}
#circle04{
	right: -90px;
	bottom: -80px;
}
@media (max-width: 768px){
	.circle{
	display: none;
}
}

dl{
	max-width: 960px;
	width: 100%;
	margin: 0 auto;
	clear: both;
}

dt {
    width: 15%;
    float: left;
    padding: 7px 6px 7px 3px;
	font-size: 20px;
	color: #fff;
	margin-bottom: 6px;
}
dt span{
		background-color: #8fc31f;
		padding: 8px 20px;
}
dd {
    margin: 0;
    padding: 6px 3px 6px;
    border-bottom: 2px #bfbfbf solid;
    color: #1E1E1E;
    font-size: 24px;
}
dd:last-child{
	border-bottom: none;
}
@media (max-width: 568px){
	dt{
		font-size: 16px;
		float: none;
		padding:8px 0 0px 0;
	}
	dt span{
		padding: 5px 10px;
}

	dd{
		font-size: 17px;
		padding: 0 0 0 5px;
	}
}

/*3カラム*/
#co3_con{
	padding: 20px 0;
}
.co3_box{
	float:left;
	width:31.333%;
	margin:5px 1%;
}
.co3_box img{
	width: 100%;
	height: auto;
		
}
@media (max-width: 568px){
	.co3_con{
	overflow: hidden;
	}
	.co3_box{
		width:48%;
	}
}

.center{
	text-align: center;
}
.box_label {
    position: relative;
    margin: 1em auto 10px;
    padding: 2em 1em;
    border: solid 3px #1ea5cc;
	max-width: 640px;
}
.box_label .box-title {
    position: absolute;
    display: inline-block;
    top: -45px;
    left: -3px;
    padding: 10px 30px;
    height: 25px;
    line-height: 25px;
    vertical-align: middle;
    font-size: 24px;
    background: #1ea5cc;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}

.box_label p {
	font-size: 27px;
	color: #017ca0;
	padding: 2px 0;
}

.box_label p span{
	font-size: 18px;
	color: #444;
}

/* ===================================================================
中沢追加
=================================================================== */

.colorbox {
    padding: 10px 30px;
	margin-bottom: 20px;
    vertical-align: middle;
    font-size: 24px;
    background: #1ea5cc;
    color: #ffffff;
    font-weight: bold;
}
.box_label2 {
    margin: 0.4em auto 10px;
    padding: 0.5em 1em;
    border: solid 3px #E54B72;
	max-width: 640px;
}

.box_label2 p {
	font-size: 24px;
	color: #E54B72;
	padding: 5px 0;
}

@media (max-width: 568px){
.box_label2 p{
		font-size: 0.9em;
	}
}


#group_writing2{
    margin: auto;
	max-width: 670px;
	color: #E54B72;
	font-size: 22px;
	font-weight: bold;
}

.resizeimage {
   max-width: 950px; /* 最大幅 */
   min-width: 400px; /* 最小幅 */
}
.resizeimage img { width: 100%; }


.resizeimage_s {
   max-width: 950px; /* 最大幅 */
   min-width: 400px; /* 最小幅 */
}
.resizeimage_S img { width: 60%; }

/*------------------ギャラリーページ　追加　2021------------------*/

h3 {
	font-size: 150%;
	margin-left: 0.3em;
	margin-top: 20px;
	margin-right: 1em;
  position: relative;
  padding: 0.5em 2em;
  background: #1FA3DF;
  color: white;
}

h3::before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px rgb(149, 158, 155);
}

.g-text {margin-top: 2em;margin-left: 2em;margin-right: 2em; font-size: 120%;color: #3A1A04}

.photo_block{margin-left: 20px;
}

.gallery ol ,li {
	font-family: YuGothic;
	font-size: small;
    color: #1e366a;
	text-decoration:underline;/*下線を引く*/
	margin-left: 3em;
}

/*------------------文字サイズ------------------*/
.f_size18{
	font-size: 18px;
	color: #5f3f01;
}
@media (max-width: 568px){
.f_size18{
		font-size: 0.8em;
	}
}

.f_size32{
		font-size: 14px;
	}
	
.f_size22 {
	font-size: 22px;
}
.f_size24 {
	font-size: 24px;
}
.pink {
	color: #E54B72;
}
.brown {
	color: #3A1A04;
}
/*-------------------------------中沢追加ここまで-----------------------------*/
#note_writing{
    margin: auto;
	max-width: 670px;
	padding-top: 5px;
}
#group_writing{
    margin: auto;
	max-width: 670px;
	color: #E54B72;
	font-size: 16px;
	font-weight: bold;
}
#group_writing span{
	font-size: 14px;
	display: block;
	font-weight: normal;
}
@media (max-width: 568px){
.box_label .box-title {
    top: -25px;
    left: -3px;
    padding: 5px 24px;
    height: 15px;
    line-height: 15px;
    vertical-align: middle;
    font-size: 16px;
    border-radius: 5px 5px 0 0;
}
.box_label p {
	font-size: 24px;
	color: #017ca0;
	padding: 0;
}
	.box_label p span{
	font-size: 14px;
}
#note_writing{
	font-size: 12px;
	}
}
.mar_top50{
	margin-top: 50px;
}
.mar_top30{
	margin-top: 30px;
}
.mar_top10{
	margin-top: 10px;
}
.imag100{
	max-width: 100%;
	height: auto;
}
.button01 {
    position: relative;
    display: inline-block;
    padding:18px 0;
    text-decoration: none;
	width: 320px;
    color: #FFF;
    background: #ffa800;/*背景色*/
    border-bottom: solid 6px #d27d00;/*少し濃い目の色に*/
	font-size: 28px;
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 4px 1px rgba(0, 0, 0, 0.19);
    font-weight: bold;
}

.button01:active {
    border-bottom: solid 1px #d09b0d;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
	  top: 4px!important;

}
@media (max-width: 568px){
.button01 {
	width: 260px;
    padding:10px 0;
	font-size: 20px;
	}
	
}
.common_wrap{
	background-color: #fff;
	width: 95%;
	margin:170px auto 100px;
	max-width: 1080px;
	padding: 30px 0 50px;
	z-index: 10;
}
.opaci70{
  background-color: rgba(255,255,255,0.7);

}
@media (max-width: 768px){
	.common_wrap{
	margin:70px auto 50px;
	}
}
@media (max-width: 568px){
		.common_wrap{
	margin:40px auto 40px;
	}

}
.sec2{
	max-width: 950px;
    width: 98%;
	margin: 20px auto;
}
.heading3{
	padding: 0.25em 0.5em;/*上下 左右の余白*/
  color: #07216a;/*文字色*/
  background: transparent;/*背景透明に*/
  border-left: solid 5px #07216a;/*左線*/
	font-size: 24px;
}

.tbl01{
	width: 100%;
	margin:0 auto;
	max-width: 700px;
	color: #473200;
}
.tbl01 tr{
	border-bottom: 1.5px solid #bfbfbf;

}
.tbl01 td{
	font-size: 20px;
	letter-spacing: 0.06em;
	padding-bottom: 10px;
	padding-top: 10px;
	padding-right: 20px;
}
.total_txt{
	font-size: 24px;
	font-weight: bold;
	letter-spacing: 0.06em;
	text-align: right;
	margin-right: 10px;
	color: #473200;
}
.tbl02{
	width: 100%;
	margin:0 auto;
	max-width: 700px;
	color: #473200;

}
.tbl02 td{
	font-size: 20px;
	padding: 2px 0;
}
.kifu_txt{
	font-size: 20px;
}
.tbl03{
  border-collapse:collapse;
  margin:0 auto;
	text-align: left;
	width: 80%;
	font-size: 18px;
}
.tbl03 td,.tbl03 th{
  border:1px solid #ccc;
  padding:10px;
}
.tbl03 th{
  background:#65b8d8;
}
.tbl03 td{
	background-color: #fff;
}

@media (max-width: 568px){
.scroll-table {
  overflow: auto;
  white-space: nowrap;
}
	
	.tbl01 td{
	font-size: 14px;
	padding: 7px auto;
}
.total_txt{
	font-size: 18px;
}
	.tbl02 td{
	font-size: 14px;
}
.kifu_txt{
	font-size: 14px;
}
	.heading3{
	padding: 0.13em 0.4em;/*上下 左右の余白*/
	font-size: 18px;
}
.tbl03{
	font-size: 80%;
	}

}

/*-----------トップページの「実績」用--------------*/
.tbl04 {
 width: 100%;
 margin: auto;
 max-width: 950px;
 font-size: 18px;
 color: #473200;
 border-collapse: collapse;
 border-spacing: 0;
}
.tbl04 th {
 padding: 10px;
 border-bottom: solid 4px #B3B0B0;
 color: #473200;
	text-align: left;
	 
}
.tbl04 td {
 padding: 10px;
 border-bottom: solid 1px #B3B0B0;
	text-align: left;
}
@media (max-width: 768px){
	.tbl04 {
	font-size: 14px;
}
}
/*-----------トップページの実績のためここまで--------------*/

/* =======================================
    4カラムメニュー
======================================= */
.four_block{
	overflow:hidden;
	display:table;
	    padding: 0px 5px;
}

.four_block_inner{
	margin:0 auto;
	float:left;
}
.four_block_inner img{
	width:100%;
	height:auto;
}
@media (min-width: 320px){
.four_block_inner{
      display: table-cell;
	width: 48%;
    margin: 0 1%;
}

}
@media (min-width: 569px){
.four_block_inner{
      display: table-cell;
	  width:32.33%;
	  margin: 0.25% 0.5%;
}
}
@media (min-width: 769px){
.four_block_inner{
      display: table-cell;
	  width: 24%;
      margin: 0.25% 0.5%;
}

}



#type1,#type2{
	
	padding:10px 20px;
	
}


.type1-img{width:340px;display:inline-block;}
.type1-img img{width:340px;}
.type1-text{display:inline-block;padding-left:10px;vertical-align:top;width:calc( 100% - 380px ) ;}



.type2-img{width:170px;display:inline-block;}
.type2-img img{width:170px;}
.type2-text{display:inline-block;padding-left:10px;vertical-align:top;width:calc( 100% - 200px ) ;}



@media (max-width: 769px){
	
	
	.type1-img{width:100%;text-align:center;display:block;clear:both;}
	
	.type1-img img{width:100%;text-align:center;}
	

	.type1-text{display:block;clear:both;width:100%;}
	
}	
/* ===================================================================
ギャラリーページ　追加　2021
=================================================================== */


h3 {
	font-size: 150%;
	margin-left: 0.3em;
	margin-top: 20px;
	margin-right: 1em;
  position: relative;
  padding: 0.5em 2em;
  background: #1FA3DF;
  color: white;
}

h3::before {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px rgb(149, 158, 155);
}

.g-text {margin-top: 2em;margin-left: 2em;margin-right: 2em; font-size: 120%;color: #3A1A04}

.photo_block{margin-left: 20px;
}

.gallery ol ,li {
	font-family: YuGothic;
	font-size: small;
    color: #1e366a;
	text-decoration:underline;/*下線を引く*/
	margin-left: 3em;
}


/* ===================================================================
フッター
=================================================================== */

footer{
	background-color: #1ea5cc;
	padding: 0 0 10px 10px;
	color: #fff;
	margin-top: 50px;
}
#foot_logo{
	padding-top: 10px;
}
#foot_logo img{
	width: 300px;
	height: auto;
}
@media (min-width: 769px){
footer small{
	line-height: 50px;
}
}
@media (max-width: 768px){
	
}
