@charset "utf-8";
html {
  scroll-behavior: smooth;
}
.color-back {
  display: block;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.chairo {
  background-color: #ebdac4;
}
.haiiro {
  background-color: #f9f9f9;
}
.midori {
  background-color: #e6eddb;
}

/*********************************
ヘッダーナビ
*********************************/

.header-utility{
	position: absolute;
	z-index: 2;
	top:10px;
	right:80px;
    display: flex;
}

.header-utility li{
    position: relative;
}

.header-utility li a{
	display: block;
    font-size: 85%;
	font-weight: bold;
	padding: 6px 18px;
	margin: 6px;
	background-color: #fff;
    border: 2px solid #222;
    border-radius: 24px;
    transition: all 0.3s;
}

.header-utility li a:hover{
	background-color: #ddd;
}

@media screen and (max-width:1100px) {
    
.header-utility {
    display: none;
}

}

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

.header-utility li a{
    font-size: 65%;
	padding: 6px 10px;
	margin: 3px;
}
	
}


/*********************************
飾り
*********************************/

.kazari-left{
    background: url("../img/flag_01.png") no-repeat left top;
    background-size:75px auto;
}

.kazari-right{
    background: url("../img/flag_02.png") no-repeat right top;
    background-size:75px auto;
}

@media (min-width: 1025px) {
.kazari-left{
    background: url("../img/flag_01.png") no-repeat left top;
    background-size:100px auto;
}

.kazari-right{
    background: url("../img/flag_02.png") no-repeat right top;
    background-size:100px auto;
}

}


  /*
.outlineContainer .outline01 img {
  box-shadow: 7px 6px #555; 
}

.outlineContainer .outline02 img {
  box-shadow: 7px 6px #555; 
}
　*/


/*********************************
スマートフォン
*********************************/

@media (max-width: 600px) {
  .outlineContainer {
    margin-left: auto;
    margin-right: auto;
    margin-top: 25px;
    margin-bottom: 25px;
  }
  .outline01 {
    display: flex;
    flex-flow: column;
    justify-content: center;
    width: 100%;
    margin-top: 15px;
  }
  _:lang(x) + _:-webkit-full-screen-document, .outline01 img {
    width: 95%;
    height: 95%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 25px;
  }
  .outline02 {
    display: flex;
    flex-flow: column;
    justify-content: center;
    width: 100%;
    margin-top: 15px;
  }
  _:lang(x) + _:-webkit-full-screen-document, .outline02 img {
    width: 95%;
    height: 95%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 25px;
  }
  .outlineText {
    margin-top: 25px;
    background-color: #fff;
    border: 4px solid #222;
    border-radius: 15px;
    padding: 25px 50px;
  }
  .outlineText h1 {
    text-align: left;
    font-size: 90%;
    margin-bottom: 25px;
  }

  .outlineText p {
    text-align: left;
    font-size: 75%;
    margin-bottom: 25px;
  }
  .outlineText li {
    text-align: left;
    font-size: 60%;
    margin-left: 25px;
  }
	
  .SmallText {
    font-size: 75%;
  }
	
  .color-back {
    padding-top: 20px;
    padding-bottom: 20px;
  }
	
}
/*********************************
タブレット
*********************************/
@media (min-width: 601px) and (max-width: 1024px) {
  .outline01 {
    display: flex;
    align-items: center;
  }
  .outline01 img {
    width: 55%;
    height: 55%;
    margin-right: 50px;
  }
  .outline02 {
    display: flex;
    flex-flow: row-reverse nowrap;
    align-items: center;
  }
  .outline02 img {
    width: 55%;
    height: 55%;
    margin-left: 50px;
  }
  .outlineText {
    background-color: #fff;
    border: 4px solid #222;
    border-radius: 15px;
    padding: 25px 50px;
  }
  .outlineText h1 {
    text-align: left;
    font-size: 110%;
    margin-bottom: 25px;
  }

  .outlineText p {
    text-align: left;
    font-size: 80%;
    margin-bottom: 25px;
  }
  .outlineText li {
    text-align: left;
    font-size: 60%;
    margin-left: 50px;
  }
	
  .SmallText {
    font-size: 75%;
  }
	
  /*概要説明部2*/
  .outlineContainer {
    margin-left: auto;
    margin-right: auto;
    width: 800px;
  }
  .color-back {
    margin-top: 75px;
    margin-bottom: 75px;
    padding-top: 75px;
    padding-bottom: 75px;
  }
	
}
/*********************************
パソコン
*********************************/
@media (min-width: 1025px) {
  .outline01 {
    display: flex;
    align-items: center;
  }
  .outline01 img {
    width: 55%;
    height: 55%;
    margin-right: 50px;
  }
  .outline02 {
    display: flex;
    flex-flow: row-reverse nowrap;
    align-items: center;
  }
  .outline02 img {
    width: 55%;
    height: 55%;
    margin-left: 50px;
  }
  .outlineText {
    background-color: #fff;
    border: 4px solid #222;
    border-radius: 15px;
    padding: 25px 50px;
  }
  .outlineText h1 {
    text-align: left;
    font-size: 160%;
    margin-top: 25px;
    margin-bottom: 25px;
  }

  .outlineText p {
    text-align: left;
    font-size: 95%;
    margin-bottom: 25px;
  }
  .outlineText li {
    text-align: left;
    font-size: 80%;
    margin-left: 50px;
  }

  .SmallText {
    font-size: 80%;
  }
	
	.outlineContainer {
    margin-left: auto;
    margin-right: auto;
    width: 1200px;
  }
  .color-back {
    margin-top: 100px;
    margin-bottom: 100px;
    padding-top: 100px;
    padding-bottom: 100px;
  }
	
}

/* スペース */
.mt20 {
  margin-top: 20px;
}
.mt25 {
  margin-top: 25px;
}
.mt50 {
  margin-top: 50px;
}
.mt75 {
  margin-top: 75px;
}
.mt100 {
  margin-top: 100px;
}
.mt125 {
  margin-top: 125px;
}
.mt150 {
  margin-top: 150px;
}
.mt200 {
  margin-top: 200px;
}
.mb20 {
  margin-bottom: 20px;
}
.mb25 {
  margin-bottom: 25px;
}
.mb50 {
  margin-bottom: 50px;
}
.mb75 {
  margin-bottom: 75px;
}
.mb100 {
  margin-bottom: 100px;
}
.mb125 {
  margin-bottom: 125px;
}
.mb150 {
  margin-bottom: 150px;
}
.mb200 {
  margin-bottom: 200px;
}
/* スペース */