@charset "UTF-8";

/*================================================
 *  
 ================================================*/
#teacher #h2_img {
	background-image: url(../img/teacher/h2.jpg);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
}

/*h3*/
.h3_teacher {
    text-align: center;
    padding-top: 30px;
    padding-bottom: 30px;
    margin: 0 auto;
}
.h3_teacher .heading03 {
	display: inline-block;
}

.bg_top {
  width: 100%;
  background: #f2f2f2;
  padding-bottom: 60px;
	padding-top: 50px;
}
.bg_top p{
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 2em;
  font-size: 16px;
  text-align: left;
}
.greeting {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  display: flex; 
  justify-content: center;
  text-align: left;
}
.greeting p{
}
/*================================================
 *  flexbox
 ================================================*/

/*中のコンテンツを横並び+中央寄せ+写真と文字の水平方向を中央に合わせる */

/*broken*/
.broken {
  margin-top: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 500px;
}
.broken .broken__texts {
  letter-spacing: 1px;
  padding: 10px;
  z-index: 2;
  max-width: 50%;
  position: absolute;
  right: 8%;
}
.broken .broken__textwrap{
  background:rgba(255,255,255,0.7);
  padding-top: 1em;
  padding-bottom: 1em;
  padding-left: 1.5em;
  margin-top: 40px;
}
.broken .broken__text {
  letter-spacing: 0px;
  font-size: 16px;
}
.broken .broken__imgs {
	width:50%;
	text-align: right;
	position: absolute;
	left:0%;
}
.broken .broken__photo {
  width: 100%;
  max-width: 500px;
  /*box-shadow: 30px 30px 0px 0 rgb(230, 230, 230);*/
}
/*broken2*/
.broken2 {
  margin-top: 140px;
  padding-bottom: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 500px;
  background: #f2f2f2;
}
.broken2 .broken__texts {
  letter-spacing: 1px;
  padding: 10px;
  z-index: 2;
  /*max-width: 50%;*/
  width: 50%;
  position: absolute;
  left: 8%;
  text-align: center;
}
.broken2 .broken__text {
  letter-spacing: 0px;
  font-size: 16px;
}
.broken2 .broken__imgs {
	width:50%;
	text-align: center;
	position: absolute;
	right:0%;
	top: -10%;
}
.broken2 .broken__photo_pc {
  width: 100%;
  max-width: 500px;
}
.broken2 .broken__photo_sp {
  display: none;
}
.broken__title {
}

/*pタグの一番上のみ上に余白を作る*/
.broken2 .broken__text:first-of-type {
  margin-top: 40px;
}




@media screen and (max-width: 1024px) {
	/* 1024px以下に適用されるCSS（タブレット用） */
	.broken .broken__texts, .broken2 .broken__texts {
		max-width: 65%;
	}
	.broken .broken__texts {
	  right: 0;
	}
	.broken2 .broken__texts {
	  left: 0	;
	}
	.broken .broken__imgs {
		width: 40%;
  		height: auto;
  		padding-left: 1em;
	}
	.broken2 .broken__imgs{
		width: 50%;
  		height: auto;
  		padding-left: 1em;
	}
}
@media screen and (max-width: 768px) {
	/* 768px以下に適用されるCSS（スマホ用） */
	.bg_top {
	  padding-bottom: 50px;
	}
	.bg_top p{
    margin-top: 30px;
	}
	.h3_teacher {
	    width: 90%;
	}
	.broken, .broken2 {
		flex-wrap: wrap;
		height: auto;
		margin-top: 30px;
	}
	.broken .broken__texts {
		max-width: initial;
		width: 100%;
		padding-left: 5%;
		padding-right: 5%;
		position: static;
  		left: auto;
  		right: auto;
  		margin-top: -80px;
	}
	.h3_teacher {
	    padding-top: 0px;
	    padding-bottom: 0px;
	}
	.broken2 .broken__texts {
		max-width: initial;
		width: 100%;
		padding-left: 5%;
		padding-right: 5%;
		position: static;
  		left: auto;
  		right: auto;
  		top: 100%;
	}

	.broken .broken__imgs {
		width:100%;
		text-align: center;
		position: static;
	}
	.broken2 .broken__imgs{
		width:100%;
		text-align: center;
		position: static;
  		padding-left: 0;
	}
	.broken .broken__photo {
		width: 60%;
  		height: auto;
	}
	.broken2 .broken__photo_pc {
	  display: none;
	}
	.broken2 .broken__photo_sp {
	  display: block;
	  width: 80%;
	  margin-left: auto;
	  margin-right: auto;
	}
}